GithubHelp home page GithubHelp logo

appt-org / screenreader-android Goto Github PK

View Code? Open in Web Editor NEW
8.0 3.0 3.0 25.31 MB

ScreenReader app for Android

Home Page: https://screenreader.app

Kotlin 100.00%
accessibility android screenreader talkback

screenreader-android's Issues

Update shortcut documentation for recent releases?

The app currently provides instructions for setting up a TalkBack shortcut via the Accessibility shortcuts settings:

https://github.com/appt-org/screenreader-android/blob/main/app%2Fsrc%2Fmain%2Fres%2Fvalues%2Fstrings.xml#L58-L61

While those instructions do still work, recent Android releases have dedicated TalkBack settings that may provide clearer explanations and additional options.

If the user instead goes to Settings > Accessibility > TalkBack > TalkBack shortcut, they'll find not only a switch to enable/disable a shortcut, but they can tap on the setting item to view a dedicated menu listing all of the shortcut assignment options.

For sighted users only using TalkBack for testing purposes, placing the shortcut on the navigation bar ("Accessibility button") may be more convenient than assigning a hardware button shortcut.

Perhaps the app should either recommend that option, instead of the volume keys, or at least note that there are several options for what shortcut to assign?

Text editing lessons need updating

The lessons on selecting, copying, and pasting text seem to be somewhat out of date with recent TalkBack releases.

There's no longer an "Editing options" item in the TalkBack context menu. Instead, there's an "Actions" item which holds text editing options, but that item is contextual so it won't always be present.

(I found this somewhat confusing, as it meant that if I had only focused the text control, "Actions" wasn't one of the menu options. I had to make sure I was editing the text inside the control -- the edit cursor was enabled -- in order to have the "Actions" option in the TalkBack menu.)

Fix review pop-up

Hi Jan Jaap, ik heb de app vorige week met 6 studenten gebruikt (2 op iOS en 4 Android) en ze klaagden allemaal dat de app na élke stap vraagt of je een positieve review wil achterlaten, ook als ze de app nog maar een minuut hadden gebruikt. Het heeft ze niet aangemoedigd om een review achter te laten 
De app zelf is wel heel erg fijn om met studenten te gebruiken!

Detecting gestures when TalkBack is enabled

In the current version of the app (v1.0.2) the app cannot yet detect gestures when TalkBack is enabled.

One of the techniques is intercepting motion events, which works for basic gesture detection. But for advanced gestures, such as angular gestures, e.g. open the context menu, the motion events are not passed to the app.

An idea I had to overcome this, was to implement an AccessibilityService. This way, you can override the onGesture method and broadcast the gesture to the app. The implementation can be found in the ScreenReaderService file.

There are some problems with this implementation:

First: it requires users to enable the service through the accessibility settings of their device. This is a complex series of steps. I have tested this with users, and for most it was too difficult and/or scary to do.

Secondly: there are potential bugs which cause the device to "brick". This can happen because the ScreenReaderService receives all the gestures, but doesn't perform any actions upon receiving them. The service should de-activate itself when the gesture training is inactive, but this doesn't work with 100% confidence on all Android devices.

For the second issue, I looked into the new setGestureDetectionPassthrough method which was added in Android API 30. It looked promising, but I did not manage to get it to work. I did not notice different behavior compared to not setting a passthrough region.

I hope others have more idea's to recognize gestures when TalkBack is active.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.