Features & FAQ
Documenting accessibility support and features.
Feature Support Overview
Current status of features in Hangar compared to the full AT Protocol capability set.
| Category |
Implemented |
Partial |
Not Implemented |
| Auth & session |
3 |
0
|
3 |
| Feeds & timeline |
5 |
0
|
6 |
| Posts |
3 |
0
|
5 |
| Engagement |
4 |
0
|
0 |
| Threads |
1 |
0
|
2 |
| Profiles |
1 |
1 |
5 |
| Social graph |
0 |
0
|
9 |
| Notifications |
2 |
0
|
4 |
| Direct Messages |
1 |
1 |
10 |
| Totals |
22 |
3 |
71 |
Roadmap
We are prioritizing the features most users expect from a client that are already supported by the API:
- Follow / Unfollow — profile data already tracks relationship state, just needs the
write calls
- Rich text (facets) — Mentions, links, and hashtags aren't currently interactive
- Image & video upload — Compose dialog is currently text-only
- Delete own post
- Block / Mute users — Essential moderation controls
- Send DM — Conversation list renders but messages can't be sent yet
- View conversation messages — Code exists but no UI yet
- Mark notifications read
- Unread notification count — For sidebar badge
- Followers / Following lists
Visual Accessibility
Theme-Aware Colors
All UI colors use Adwaita's semantic CSS variables (@accent_color,
@window_bg_color, etc.), so Hangar automatically adapts to your system theme including dark
mode, high-contrast, and custom accent colors. No hardcoded colors are used.
Underlined Links
Links in post content are always underlined, ensuring they are identifiable without relying on color
alone (WCAG 1.4.1).
Non-Color State Indicators
Like and repost buttons use filled icon styles (not just color) to indicate active state, so the
difference is visible regardless of color perception.
Focus Ring Visibility
All interactive elements — including post action buttons (reply, like, repost, menu) and avatar buttons —
display a visible focus ring when navigated to via keyboard (2px solid accent-colored outline).
Minimum Target Sizes
Post action buttons have a minimum 36x36px hit area (WCAG 2.5.5 enhanced target size).
Adjustable Post Text Size
A slider in Settings > Display lets you scale post text from 0.8x to 1.2x of the default size. A live
preview shows the effect before you leave settings.
Reduced Motion
- System preference respected: Hangar honors the
prefers-reduced-motion
system setting automatically via CSS, disabling all animations and transitions.
- In-app toggle: A "Reduce Motion" toggle in Settings > Accessibility lets you
disable animations independently of the system setting. This is useful when you want reduced motion
in Hangar but not system-wide.
Screen Reader Support
Accessible Roles & Labels
All interactive elements have appropriate WAI-ARIA roles and descriptive accessible labels exposed via
GTK4's AT-SPI interface. This includes:
- Navigation sidebar (role: navigation, labeled "Main navigation")
- Navigation items (each labeled with their destination name)
- Compose button (labeled "Compose new post")
- Account menu (labeled "Account menu")
- Post action buttons (reply, like, repost, more options — each with descriptive tooltips and labels)
Action Button Tooltips
Reply, like, repost, and menu buttons on every post have descriptive tooltip text that screen readers can
announce, so icon-only buttons are never unlabeled.
Toast & Error Announcements
Toast notifications use Libadwaita's built-in AT-SPI announcement support. Error messages are announced
to assistive technology.
Keyboard Accessibility
Standard GTK Navigation
- Tab / Shift+Tab for focus traversal between UI elements
- Arrow keys within lists (sidebar navigation, post lists)
- Enter to activate focused buttons and open focused posts
- Escape to close dialogs and popovers
- F5 / Ctrl+R to refresh the timeline
Planned Accessibility Features
The following accessibility features are planned but not yet implemented.
- Extended text size range: Up to 1.5x–2.0x for low-vision users (WCAG 1.4.4)
- Keyboard shortcuts:
- Ctrl+N (compose)
- Alt+1–7 (navigation)
- Ctrl+K (search)
- Ctrl+? (shortcuts reference)
- Single-key post shortcuts: J/K to navigate, L to like, R to reply, T to repost
- Image alt text: Surfaced to screen readers and via ALT badge overlay
- "Require alt text" setting: Block posting images without descriptions
- Full composite screen reader labels: On posts (author, time, text, counts)
- PostRow keyboard focus and activation
- Focus management on page transitions
- Orca screen reader testing pass