-
-
Notifications
You must be signed in to change notification settings - Fork 442
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve LibreTube Screen Reader Accessibility #4685
Comments
I've already added some labels in #4472, it's probably a good idea to take another look once the new version is released. |
There has been a new release with the aforementioned changes. Please check which problems still exist and which ones need further improvements. |
More buttons have labels, but it's a little strange, because it says button unlabeled before the label. I'll try to produce a screen recording soon using my Pixel 7. |
If you guys are busy maybe I'll be able to take a crack to this problem after all is just adding strings to interface components right? Shall anyone instruct me in this issue? |
You should just look around the app using the screen reader and find any unlabled elements, once you find them just open the xml which contains the element and add the tag contentDescription to it, e.g. : In "fragment_library.xml" the fab has a tooltip text but not content description, just add the attribute like this: note that you should also be aware of the different supported languages If you need any more help just ask! |
I can take care of both english and spanish, but I rather not butcher any other. |
Wait I just realized that I have no talkback. How do I even start hearing the cues? |
Someone provide me the talback app please. I wasn't able to build it from source. |
Open Android studio and use the emulator
|
I'll try that later, thanks for the advice. |
Steps to reproduce
I'm totally blind and use this application with a device called the SensePlayer which is a blindness product from a company called HIMS that runs Android. I installed the app from F-Droid and it works very well. However, there are many unlabeled buttons that just say button unlabeled. Please add proper accessibility labels to the buttons so a screen reader user knows what they do. For example, instead of saying button, the screen reader would say rewind button.
You can test the app using any Android phone with the TalkBack screen reader installed. Go to Settings>Accessibility>TalkBack and turn it on. For basic navigation, swipe left or right to move to the previous or next control, and tap the screen twice with a finger to select the item that's focused. You can also touch controls to select them and then double tap to activate. If your device doesn't have TalkBack installed, download Android Accessibility Suite from Google Play. Improving the accessibility will make the app better for any Android device and screen reader that uses the standard Android accessibility APIs. Here's a page from Google that may help and of course, let me know if there's anything else I can do to help. I'm not a developer, but I'll do my best to provide any information you need. However, labeling buttons is one of the easiest things you can do to make the experience significantly better.
https://developer.android.com/guide/topics/ui/accessibility/testing
Expected behavior
When navigating through the controls using a screen reader, their purpose should be clearly indicated by labels. For example, rewind button, fast forward button, play button, etc.
Actual behavior
The app is usable, but it is confusing to hear button button button when navigating the interface. Close your eyes and try navigating. Hearing button button button isn't very helpful. The first question that comes to mind is what does that button do? Adding labels would go a long way to making the experience much more enjoyable for screen reader users.
LibreTube version
0.17.1
Android version
Android 11
Other details
You may want to start by examining the playback screen while a video is playing. The unlabeled buttons here are the most important, as it's very difficult to know what's going on and which button corresponds to which function.
Acknowledgements
The text was updated successfully, but these errors were encountered: