Repository navigation
a11y: disabled textfield not announced as textfield #37162
Copy link
Copy link
Closed
Labels
P1High-priority issues at the top of the work listHigh-priority issues at the top of the work lista: accessibilityAccessibility, e.g. VoiceOver or TalkBack. (aka a11y)Accessibility, e.g. VoiceOver or TalkBack. (aka a11y)a: text inputEntering text in a text field or keyboard related problemsEntering text in a text field or keyboard related problemsc: API breakBackwards-incompatible API changesBackwards-incompatible API changesfound in release: 3.3Found to occur in 3.3Found to occur in 3.3found in release: 3.5Found to occur in 3.5Found to occur in 3.5frameworkflutter/packages/flutter repository. See also f: labels.flutter/packages/flutter repository. See also f: labels.has reproducible stepsThe issue has been confirmed reproducible and is ready to work onThe issue has been confirmed reproducible and is ready to work onp: material_uimaterial_ui package in flutter/packagesmaterial_ui package in flutter/packagesr: fixedIssue is closed as already fixed in a newer versionIssue is closed as already fixed in a newer version
Description
TextField(
enabled: false,
),On Android with TalkBack enabled this should be announced as a disabled editbox. It is currently not announced at all. (It looks like the TextField flag is missing from the semantics tree when the TextField is disabled).
I haven't tested on iOS (and I am not 100% of what the native behavior is there), but I assume it's also broken there.
/cc @dnfield for a11y
/cc @chunhtai @justinmc for TextFields
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
P1High-priority issues at the top of the work listHigh-priority issues at the top of the work lista: accessibilityAccessibility, e.g. VoiceOver or TalkBack. (aka a11y)Accessibility, e.g. VoiceOver or TalkBack. (aka a11y)a: text inputEntering text in a text field or keyboard related problemsEntering text in a text field or keyboard related problemsc: API breakBackwards-incompatible API changesBackwards-incompatible API changesfound in release: 3.3Found to occur in 3.3Found to occur in 3.3found in release: 3.5Found to occur in 3.5Found to occur in 3.5frameworkflutter/packages/flutter repository. See also f: labels.flutter/packages/flutter repository. See also f: labels.has reproducible stepsThe issue has been confirmed reproducible and is ready to work onThe issue has been confirmed reproducible and is ready to work onp: material_uimaterial_ui package in flutter/packagesmaterial_ui package in flutter/packagesr: fixedIssue is closed as already fixed in a newer versionIssue is closed as already fixed in a newer version
Activity
goderbauer commentedon Jul 29, 2019
TextField wraps an EditableText within an IgnorePointer:
flutter/packages/flutter/lib/src/material/text_field.dart
Line 1026 in 24f483c
RenderIgnorePointer has the following TODO:
flutter/packages/flutter/lib/src/rendering/proxy_box.dart
Lines 2975 to 2982 in 24f483c
Which is probably to blame here. When the textfield is disabled, IgnorePointer is enabled and all semantics from EditableText (like isTextField, etc) is no longer included in the tree.
justinmc commentedon Jul 29, 2019
I tried on iOS with VoiceOver enabled and you're right that it's also broken there. For an enabled CupertinoTextField, it's announced correctly as "text field", and for a disabled CupertinoTextField, it's not announced at all.
chunhtai commentedon Jul 29, 2019
Hi @justinmc @goderbauer and probably @Hixie,
Can you take a look at my prototype pr?
#37199
chunhtai commentedon Jul 30, 2019
design doc https://docs.google.com/document/d/1WuVBc58_wV6__ZCe1NgYsnvTJtSdOtVcwSzPwM_YT74/edit?usp=sharing
zoeyfan commentedon Jan 3, 2020
Is this still being actively worked on? If we have addressed it, please close the bug.
chunhtai commentedon Jan 4, 2020
No, I have a draft up, but I has been distracted due to other higher priority issues. This is currently sitting in my back log, and i don't think i can get to it in the near future. Has the priority of this issue shifted?
zoeyfan commentedon Jan 10, 2020
@chunhtai no change on priority. I am simply triaging old issues and noticed this one.
5 remaining items
TahaTesser commentedon Jul 16, 2020
flutter doctor -v
darshankawar commentedon Nov 9, 2022
Verified this on latest versions and confirmed the behavior is still replicable. Talkback / voiceover doesn't announce / read disabled textfield.
stable, master flutter doctor -v
kumar3863 commentedon Dec 23, 2022
Verified this on the latest versions and it is replicable but not fixed yet, for android it read disabled, and for iOS, it read dimmed not with the text field or edit box.
github-actions commentedon Apr 24, 2023
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.