You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[SR] World map pins can't be activated by screen readers (semantics tap action dropped) #7591
Describe the bug
Map pin dots/mid pins name themselves to assistive tech (Semantics(button: true, label: "Activity: <title>") in lib/routes/world/world_map_state_dot.dart) but cannot be activated: the excludeSemantics: true on that node drops the inner GestureDetector's tap action, so a screen-reader double-tap (or any synthetic semantics tap) no-ops. Found while diagnosing #7530 — a Playwright semantics click on a pin did nothing while a real pointer click at the same coordinates worked.
The large card wraps the other way around (GestureDetector outside, Semantics inside) and works. The fix is likely to give the pin's semantics node its own onTap (or restructure so the gesture's semantics survive), keeping the single-announcement behavior
TO TEST
After implementation, include a list of changes to be looked over
With VoiceOver/TalkBack on, focus a map pin dot: it announces "Activity: <title>" once
Double-tap to activate it: the activity opens (narrow: the half-open sheet; wide: the left panel)
With the screen reader, move into the map's "Activities" group: it lists one entry per visible pin (not an empty group), and stepping through them reads each activity's name
While stepping through them, watch the focus highlight: it draws around the visible pin itself — the small dot's touch circle, the whole teardrop pin, or the whole large card — not a box floating elsewhere on the map
With the screen reader OFF, click and drag the map, and click a pin with the mouse: everything behaves as before (the invisible screen-reader layer must not swallow mouse input)
Environment
Where was the bug encountered?
Staging
Production
OS and/or Browser: all (found on local web via synthetic semantics tap)
TESTING PLATFORMS
Filled in by the developer whose PR closes this issue — not by the issue author.
Which platforms to pick: .github/instructions/qa-labeling.instructions.md
Evaluated — I have determined which platforms this needs testing on
Activity
fix(a11y): make world map pins activatable by screen readers (#7594)
Kelrap commentedon Aug 27, 2026
Entering the activities list doesn't seem to be possible at all with screen reader
Screen.Recording.2026-08-27.at.12.13.06.mov
fix(a11y): mirror map pin semantics outside the excluded map subtree (C…
fix(a11y): mirror map pin semantics outside the excluded map subtree (C…
fix(a11y): make mirrored map pins transparent to native pointer hit-t…