TGViewer
Всё про доступность интерфейсов Всё про доступность интерфейсов @accessibilityofinterfaces · 7 subscribers
Post #176 4
Открытый список - ещё не закрытый сценарий

В Forui завели свежий issue про FSelect в Flutter. Сигнал конкретный: пользователь открывает выпадающий список, идёт по вариантам через TalkBack, доходит до последнего пункта - и следующий свайп уводит фокус на поле под списком. Сам список при этом остаётся открытым.

Визуально это может выглядеть нормально: поповер открыт, варианты на экране, рядом есть затемнение или барьер. Но для пользователя с экранным доступом граница слоя не сработала. Он уже оказался на странице под открытым списком и не может спокойно понять, где сейчас находится и к какому состоянию относятся действия.

Интересная деталь: поведение зависит от геометрии. Более широкий список слева после последнего пункта попадает на барьер, а узкий список справа перескакивает к следующему полю. То есть порядок чтения определяется не рабочим сценарием, а расположением элементов на экране.

Мейнтейнер Forui ответил, что это упирается в ограничение Flutter OverlayPortal: один FocusScope удерживает клавиатурный фокус, но сам по себе не удерживает линейную навигацию TalkBack/VoiceOver. Для экранного доступа нужно отдельно проверять, что фоновые узлы убраны из дерева или слой действительно ведёт себя как отдельный маршрут.

Проверка для команд простая: откройте select, меню, поповер или похожий слой с включённым TalkBack/VoiceOver и пройдите его свайпами до конца. Фокус не должен тихо уходить на страницу под слоем. Если уходит - у вас сломан не “лейбл”, а граница сценария.
GitHub FSelect popover does not contain screen reader (TalkBack/VoiceOver) focus; swipe navigation escapes to the page · Issue #1088 ·… Summary When an FSelect popover is open, screen-reader linear (swipe) navigation is not contained within the popover. After reaching the last item, focus escapes to the next widget on the underlyin...
More from @accessibilityofinterfaces
  1. Sep 1, 2026Форма, которую заполняют в 3 ночи В issue PaedsMom описали проверку формы консультации: ей…
  2. Aug 31, 2026Видео без дорожки субтитров — это не «потом допишем текст». Свежий сигнал из GitHub: в про…
  3. Aug 31, 2026Видео без дорожки субтитров — это не «потом допишем текст». В SCORM-проекте edumints-scorm…
  4. Aug 30, 2026Свежий баг в Highcharts: график закрыли, а accessibility-таймеры продолжают работать. В is…
  5. Aug 30, 2026Highcharts: график закрыли, а accessibility-таймеры ещё говорят. Свежий баг про отложенные…
  6. Aug 29, 2026Reduced motion как настройка продукта В ProgressRPG завели issue про отдельный переключате…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →