[GH-ISSUE #1176] The app is totally inaccessible for screen reader software users #432

Open
opened 2026-10-13 20:21:18 +00:00 by bsakaguchi · 1 comment
Owner

Originally created by @All-Sided on GitHub (Oct 16, 2024).
Original GitHub issue: https://github.com/amnezia-vpn/amnezia-client/issues/1176

Both the Windows and Android apps are unusable for blind people, who rely on TTS in conjunction with software providing non-visual access to the content. On Windows, only the installer is partially accessible.

Steps to reproduce on Windows of any version:

  1. Download the latest version of Amnezia VPN app.
  2. Download NVDA programm from the official site.
  3. You can either install the executable file or run it temporarily. I'd rather install the program though, so it's easier to get back to extensive testing in the future.
  4. Get NVDA running.
  5. Launch Amnezia VPN app.
  6. Forget about the mouse or unplug it from the PC.
  7. Try navigating the app with the up and down, left and right arrows, and the Tab key.
    Once you've reached any element, try activating it either with the Enter or Space key. All these without using the mouse. Pay attention to NVDA's speech.
    You may notice only the button "Let's get started" gets announced. The rest are either unlabelled, or are unreachable by keyboard tabbing. The ones you are able to reach won't get activated by the Enter or Space keys.
    Expected behaviour, applies to navigating the whole app, not just the main screen:
    All the functional elements of the UI should be announced in the adequate and reasonably informative manner, E.G., "Settings", "Connect", etc.
    The property of each element should get announced, such as button, tab, link etc. E.G., "Tab Protocols", "Connect Button".
    All the elements should be reachable with keyboard tabbing, particularly with the Arrow keys, as well as the Tab key.
    You should be able to activate any of the elements with the Enter or Space key.
    Any additional text, such as feature description, should be reachable and readable by NVDA.

Steps to reproduce on any version of Android:

  1. On the Android phone, enable Talkback, AKA Android Accessibility Suite. The surest way of doing that is finding it in the accessibility or special function settings. Android phones have Talkback pre-installed by Google by default, no need to download any 3rd party software.
  2. In case this is not a Samsung device, you might run into Google TTS glitches not mentioned in the official documentation getting in the way. You can avoid them by either switching the phone to English U.S. before the testing, or manually installing the voice corresponding to the language your phone is currently set to.
  3. Run Amnezia VPN app.
  4. In the app window, try tapping twice against any element; swiping from left to right and right to left across the screen; simply touching the screen at any spot, meanwhile paying attention to the app's behaviour along with the TTS output.
    You may notice not a single element gets announced, nor are you able to activate a thing.
    Expected behaviour, applies to navigating the whole app, not just the main screen:
    All the functional UI elements should be announced in the adequate and reasonably informative manner, E.G., "Settings", "Connect", etc.
    The property of each element should get announced, such as button, tab, link etc. E.G., "Tab Protocols", "Connect Button".
    You should be able to both find and get Talkback to announce any functional element by swiping from left to right or right to left across the screen.
    Ideally, you also should be able to find any element by simply touching the screen, and get Talkback to announce it.
    You should be able to activate any element by tapping twice against it or any part of the screen, as long as the element is in the focus of Talkback.

Please, I ask you that you look into the issue, and make the apps fully accessible for screen reader users.

Originally created by @All-Sided on GitHub (Oct 16, 2024). Original GitHub issue: https://github.com/amnezia-vpn/amnezia-client/issues/1176 Both the Windows and Android apps are unusable for blind people, who rely on TTS in conjunction with software providing non-visual access to the content. On Windows, only the installer is partially accessible. Steps to reproduce on Windows of any version: 1. Download the latest version of Amnezia VPN app. 2. Download NVDA programm from the official [site](https://www.nvaccess.org/download/). 3. You can either install the executable file or run it temporarily. I'd rather install the program though, so it's easier to get back to extensive testing in the future. 4. Get NVDA running. 5. Launch Amnezia VPN app. 6. Forget about the mouse or unplug it from the PC. 7. Try navigating the app with the up and down, left and right arrows, and the Tab key. Once you've reached any element, try activating it either with the Enter or Space key. All these without using the mouse. Pay attention to NVDA's speech. You may notice only the button "Let's get started" gets announced. The rest are either unlabelled, or are unreachable by keyboard tabbing. The ones you are able to reach won't get activated by the Enter or Space keys. Expected behaviour, applies to navigating the whole app, not just the main screen: All the functional elements of the UI should be announced in the adequate and reasonably informative manner, E.G., "Settings", "Connect", etc. The property of each element should get announced, such as button, tab, link etc. E.G., "Tab Protocols", "Connect Button". All the elements should be reachable with keyboard tabbing, particularly with the Arrow keys, as well as the Tab key. You should be able to activate any of the elements with the Enter or Space key. Any additional text, such as feature description, should be reachable and readable by NVDA. Steps to reproduce on any version of Android: 1. On the Android phone, enable Talkback, AKA Android Accessibility Suite. The surest way of doing that is finding it in the accessibility or special function settings. Android phones have Talkback pre-installed by Google by default, no need to download any 3rd party software. 2. In case this is not a Samsung device, you might run into Google TTS glitches not mentioned in the official documentation getting in the way. You can avoid them by either switching the phone to English U.S. before the testing, or manually installing the voice corresponding to the language your phone is currently set to. 3. Run Amnezia VPN app. 4. In the app window, try tapping twice against any element; swiping from left to right and right to left across the screen; simply touching the screen at any spot, meanwhile paying attention to the app's behaviour along with the TTS output. You may notice not a single element gets announced, nor are you able to activate a thing. Expected behaviour, applies to navigating the whole app, not just the main screen: All the functional UI elements should be announced in the adequate and reasonably informative manner, E.G., "Settings", "Connect", etc. The property of each element should get announced, such as button, tab, link etc. E.G., "Tab Protocols", "Connect Button". You should be able to both find and get Talkback to announce any functional element by swiping from left to right or right to left across the screen. Ideally, you also should be able to find any element by simply touching the screen, and get Talkback to announce it. You should be able to activate any element by tapping twice against it or any part of the screen, as long as the element is in the focus of Talkback. Please, I ask you that you look into the issue, and make the apps fully accessible for screen reader users.
Author
Owner

@AlexExle commented on GitHub (Nov 7, 2025):

It's true, QT UI elemets are made completely without following of QT accessability guides I know several people who would prefer use Amnezia Premium but use different alternatives because Amnezia Client has been made without any accesability support.

<!-- gh-comment-id:3502729024 --> @AlexExle commented on GitHub (Nov 7, 2025): It's true, QT UI elemets are made completely without following of [QT accessability guides](https://doc.qt.io/qt-6/accessible.html) I know several people who would prefer use Amnezia Premium but use different alternatives because Amnezia Client has been made without any accesability support.
Sign in to join this conversation.
No labels
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
amnezia-vpn/amnezia-client#432
No description provided.