Reading with a screen reader
Reading with a screen reader
Activating screen reader support
Thorium automatically detects assistive technology, but, since 3.3, users must explicitly activate screen reader support by ticking the checkbox in the application settings (this is a global preference for the main library window as well as all reader windows).
In the previous versions, this support was automatically activated. We had to modify this feature because third-party applications can request the same privileges as assistive technology at the level of the operating system, which in turn causes Thorium to incorrectly detect screen readers.
Thorium adapts its behavior when screen reader support is enabled:
- Text input fields for bookshelf searches require explicit validation (e.g., pressing Enter or clicking the search button) to trigger the search, instead of the default instantaneous “search as you type” behavior.
- In the reader window, the presentation of EPUB HTML documents is forced to “scroll” mode instead of the default “paginated” view, in order to avoid issues with CSS columns.
- Webviews are fully refreshed during navigation because some screen readers do not support Thorium’s optimized HTML rendering.
- The automatic estimation of the user’s reading location (i.e. position inside the text) based on how far the HTML content is scrolled inside the visible viewport is disabled. This is necessary because screen readers do not consistently move into view the actively-spoken text.
Annotating & bookmarking
Based on the feedback we have received so far, it looks like it is very difficult for screen reader users to select an actual range of characters. Such assistive technology allows users to select text inside the screen reader’s virtual buffer, so the application isn’t aware that the user is reading at a particular location and is selecting text there.
Consequently, screen reader users prefer to use the bookmarking feature which anchors a simple, optionally-labelled bookmark to a coarse reading location (there is an icon button in the top toolbar, but the
In Thorium, currently the bookmark label editor supports multiple lines of text input, which makes it possible to annotate coarse document locations. This can therefore be perceived as a replacement for the actual annotator, but there is no import/export of bookmarks data.
More feedback is welcome through our discussion tracker there:Message to Thorium screen reader users… #2867.
Using bookmarks with NVDA
Windows screen readers use a virtual buffer for reading. To place a bookmark where you are currently reading press the key combination NVDA + Enter, and NVDA will say “activate “. This synchronizes the virtual buffer with the current real location so Thorium can deduce the object on which the cursor is located. Then use Ctrl + B to place a bookmark. A sound notification will inform you of the number of bookmarks in the current publication.
External resources for screen reader use in Thorium
Keystrokes common to NVDA and JAWS
(contribution from Prashant Verma, DAISY Consortium)
For reading text, navigating in tables, navigating in the browser window, the insertion key can be replaced by the modifier key of the screen reader (e.g. the Caps Lock key).
Quick keys for navigation
The screen reader must be in navigation or virtual cursor mode.
| Action | Command |
|---|---|
| Next title | H |
| Next table | T |
| Next chart | G |
| Next list | L |
| Next form field | F |
| List of elements | INSERT + F7 (works regardless of cursor mode) |
Use the above keys with the Shift key to move to the previous item.
Text
| Action | Command |
|---|---|
| Previous character | ← |
| Next character | → |
| Previous word | Ctrl + ← |
| Say Next word | Ctrl + → |
| Previous line | ↑ |
| Next line | ↓ |
| Previous sentence | Alt + ↑ (Jaws only) |
| Next sentence | Alt + ↓ (Jaws only) |
| Read all | INSERT + ↓ |
| Announce Font | INSERT + F |
Tables
| Action | Command |
|---|---|
| Cell to the right | Alt + Ctrl + → |
| Cell to the left | Alt + Ctrl + ← |
| Cell below | Alt + Ctrl + ↓ |
| Cell above | Alt + Ctrl + ↑ |