Repository navigation
Focus-based navigation #1608
Description
Activity
- addedc: new featureNothing broken; request for a new capabilityNothing broken; request for a new capabilityframeworkflutter/packages/flutter repository. See also f: labels.flutter/packages/flutter repository. See also f: labels.
on Feb 4, 2016 See also parts of http://developer.android.com/guide/topics/ui/accessibility/apps.html
- addeda: accessibilityAccessibility, e.g. VoiceOver or TalkBack. (aka a11y)Accessibility, e.g. VoiceOver or TalkBack. (aka a11y)
on Jan 26, 2017 - modified the milestones: This milestone has been deleted, This milestone has been deleted
on Jan 26, 2017 - addedp: material_uimaterial_ui package in flutter/packagesmaterial_ui package in flutter/packages
on Jan 17, 2018 Is focus order the same as the traversal order? If so, we can simply reuse the semantics tree to handle focus traversal, with an additional focus state. Although I am concerned we would end up with two different concepts of focus.
cc @jslavitz
We can't use the semantics tree, it's not created if semantics are disabled.
Turning on semantics when we detect tab navigation seems reasonable to me. The information needed to do focus based navigation is the same.
12 remaining items
This has re-landed in #42278
on web , tab not focus next textfield
Reacted by shaiwals, andynvt and L LinseTab focus also seems to not work on macOS builds on v1.15.4-pre.83
Android with external keyboard : When I press tab on the keyboard, it sometime jumps to the next field, sometime add a tab spacing in the field, and sometime add a tab spacing in the field and jump to the next field.
@SimonAmpleman, yes, this is a known issue that will be addressed. See #33521 for progress. Unfortunately, to fix this problem, it's a pretty big change. What's happening is because of two problems: there's no synchronous key handling, so we can't stop propagation of key events when an action handles them (and so the text field eventually gets them too), and there's not one source of truth for the state of a text edit, so editing updates are racy. These will both be addressed. I can't give an exact timeline, but they are a priority.
- Thank you for your detailed reply. Awesome news ! Your team rocks, after so many years of mobile software development, I am totally blown away by what you have created ! Good day!…On Fri, Feb 28, 2020 at 11:14 AM Greg Spencer ***@***.***> wrote: @SimonAmpleman <https://github.com/SimonAmpleman>, yes, this is a known issue that will be addressed. See #33521 <#33521> for progress. Unfortunately, to fix this problem, it's a pretty big change. What's happening is because of two problems: there's no synchronous key handling, so we can't stop propagation of key events when an action handles them (and so the text field eventually gets them too), and there's not one source of truth for the state of a text edit, so editing updates are racy. These will both be addressed. I can't give an exact timeline, but they are a priority. — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#1608?email_source=notifications&email_token=AAIC2ETHHPIGKQ56I7PKLCDRFEZ5HA5CNFSM4B2OTNDKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOENJBYXQ#issuecomment-592583774>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AAIC2EWFJAFHF5A4GYBBI4DRFEZ5HANCNFSM4B2OTNDA> .
Am I right in thinking that this adds best-guess automatic tab ordering? There doesn't seem to be any way to specify the tab order manually. I guess that's decent for simple apps but it can give pretty weird results:
flutter_tabs.mp4
We need a way to specify the tab order manually. Is there an issue for this already or should I open one?
@Timmmm No, we already have that. Check out FocusTraversalGroup and OrderedTraversalPolicy.
Reacted by Tim HuttFocusTraversalGroupworked perfectly and is very elegant and easy to use (like most things in Flutter). Nice one!This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of
flutter doctor -vand a minimal reproduction of the issue.- locked as resolved and limited conversation to collaborators
on Aug 4, 2021
We should implement next/prev (tab) and direction (d-pad) navigation of focusable controls, and ensure that everything is keyboard-accessible.
From http://developer.android.com/guide/topics/ui/accessibility/checklist.html: