-
Notifications
You must be signed in to change notification settings - Fork 29.8k
Description
On Linux, TextField has some accessibility issues.
Steps to reproduce
- Run the sample code below
- Start Orca screenreader, on systems where it's preinstalled usually by Super+alt+S, or simply by launching orca
- In the application window, try to type something in the TextField
- Navigate around the field using arrow keys
Expected behavior
When navigating character by character (by left and right arrow keys), Orca should read the currently focused-one.
Up/Down arrow keys (navigation by lines) should cause Orca to read the focused line.
Actual behavior
Orca reports "blank" for almost any kind of movement, except navigation by words (Ctrl+Left & Ctrl+Right), which surprisingly works as it should.
Environment
Ubuntu Mate 22.04 64-bit
Orca 43.1
Sample code
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
void main() => runApp(
MaterialApp(
home: Column(
children: <Widget>[
TextField(
decoration: InputDecoration(
labelText: 'Input some text',
),
),
ElevatedButton(
child: const Text('Close'),
onPressed: () => SystemNavigator.pop(),
),
],
)
),
);
Flutter doctor -v output
[✓] Flutter (Channel master, 3.5.0-2.0.pre.23, on Ubuntu 22.04.1 LTS 5.15.0-48-generic, locale sk_SK.UTF-8)
• Flutter version 3.5.0-2.0.pre.23 on channel master at /home/username/snap/flutter/common/flutter
• Upstream repository https://github.com/flutter/flutter.git
• Framework revision be86a91 (76 minutes ago), 2022-10-06 09:35:08 -0700
• Engine revision e724340
• Dart version 2.19.0 (build 2.19.0-283.0.dev)
• DevTools version 2.18.0
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
• Android SDK at /home/username/Android/Sdk
• Platform android-31, build-tools 30.0.3
• ANDROID_SDK_ROOT = /home/username/Android/Sdk
• Java binary at: /usr/lib/jvm/java-11-openjdk-amd64/bin/java
• Java version OpenJDK Runtime Environment (build 11.0.16+8-post-Ubuntu-0ubuntu122.04)
• All Android licenses accepted.
[✗] Chrome - develop for the web (Cannot find Chrome executable at google-chrome)
! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.
[✓] Linux toolchain - develop for Linux desktop
• clang version 6.0.0-1ubuntu2 (tags/RELEASE_600/final)
• cmake version 3.10.2
• ninja version 1.8.2
• pkg-config version 0.29.1
[!] Android Studio (not installed)
• Android Studio not found; download from https://developer.android.com/studio/index.html
(or visit https://flutter.dev/docs/get-started/install/linux#android-setup for detailed instructions).
[✓] Connected device (1 available)
• Linux (desktop) • linux • linux-x64 • Ubuntu 22.04.1 LTS 5.15.0-48-generic
[✓] HTTP Host Availability
• All required HTTP hosts are available
! Doctor found issues in 2 categories.