Repository navigation
Open
Labels
P2Important issues not at the top of the work listImportant issues not at the top of the work lista: accessibilityAccessibility, e.g. VoiceOver or TalkBack. (aka a11y)Accessibility, e.g. VoiceOver or TalkBack. (aka a11y)customer: huggsy (g3)f: focusFocus traversal, gaining or losing focusFocus traversal, gaining or losing focusplatform-webWeb applications specificallyWeb applications specificallyteam-webOwned by Web platform teamOwned by Web platform teamtriaged-webTriaged by Web platform teamTriaged by Web platform team
Description
Internal: b/292548400
Accessibility focus ring doesn't show up if there is no element on the page with autofocus set. (related issue: #118651) The used gets stuck, and they have to go outside of the web content and come back in order to get the focus ring to appear.
Steps to Reproduce
- Run sample code on Chrome on desktop
- Enable accessibility
- Navigate to the next element using VoiceOver shortcuts.
Expected results: The first element in the page gets focused.
Actual results: The accessibility ring doesn't show up. The user can't navigate using VoiceOver unless exit web content and come back.
Code sample
void main(){
runApp(const MyApp());
}
class MyApp extends StatefulWidget {
const MyApp({super.key});
@override
State<StatefulWidget> createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
@override
Widget build(BuildContext context) => MaterialApp(
home: Center(
child: Column(
children: [
TextButton(
onPressed: () {},
child: const Text('Text 1'),
),
TextButton(
onPressed: () {},
child: const Text('Text 2'),
),
TextButton(
onPressed: () {},
child: const Text('Text 3'),
),
TextButton(
onPressed: () {},
child: const Text('Text 4'),
),
TextButton(
onPressed: () {},
child: const Text('Text 5'),
),
TextButton(
onPressed: () {},
child: const Text('Text 6'),
),
],
),
),
);
}
Metadata
Metadata
Assignees
Labels
P2Important issues not at the top of the work listImportant issues not at the top of the work lista: accessibilityAccessibility, e.g. VoiceOver or TalkBack. (aka a11y)Accessibility, e.g. VoiceOver or TalkBack. (aka a11y)customer: huggsy (g3)f: focusFocus traversal, gaining or losing focusFocus traversal, gaining or losing focusplatform-webWeb applications specificallyWeb applications specificallyteam-webOwned by Web platform teamOwned by Web platform teamtriaged-webTriaged by Web platform teamTriaged by Web platform team
Activity
negarelion commentedon Jan 21, 2023
As my last contribution here:) :
The problem is that the placeholder element gets removed from the DOM before the semantic tree gets populated. It can be solved by setting a timer before calling
dispose()here,yjbanov commentedon Feb 7, 2023
Thank you so much for sharing the solution, @negarelion!
flutter-triage-bot commentedon Oct 9, 2023
This issue is assigned to @yjbanov but has had no recent status updates. Please consider unassigning this issue if it is not going to be addressed in the near future. This allows people to have a clearer picture of what work is actually planned. Thanks!
flutter-triage-bot commentedon Dec 28, 2023
This issue was assigned to @yjbanov but has had no status updates in a long time. To remove any ambiguity about whether the issue is being worked on, the assignee was removed.