# Accessibility and VPAT for WND Terminal

Source: https://wndsoftware.com/accessibility

### Every screen from the keyboard, with a screen reader, or zoomed in

WND Terminal works from the keyboard, with a screen reader, at large text sizes and in high-contrast colors. Every change is checked against WCAG 2.1 A and AA rules, and the VPAT 2.5 report is published.

WCAG 2.1 AA checks in every build
VPAT 2.5 INT
Section 508
EN 301 549
Modern view for screen readers
WND Terminal shows each host screen two ways. The classic screen is the host’s screen as it is, and Modern view (Ctrl+Shift+M) shows the same live screen as a form with real text boxes, labels, headings and buttons. Everything works from the keyboard, Ctrl+F6 takes the keyboard off the host’s screen, the host’s text zooms up to 64 pixels, and WND Terminal’s own text meets 4.5 to 1 contrast. Most of this applies to the desktop app on Windows, macOS and Linux and to WND Terminal in a browser, which have the same interface.


### What people get

On a small screen, swipe the table to read all columns.


| Need | What WND Terminal does |
| --- | --- |
| Keyboard only | Every command is in the search palette (Ctrl+K). Ctrl+F6 moves from the host’s screen to the tabs and toolbar. Dialogs keep the keyboard and close with Escape. |
| Screen reader | Buttons, menus, dialogs and settings have names and roles. In Modern view a host screen is read as a form, with each field’s label and the host’s messages as they arrive. |
| Low vision | Screen text up to 64 pixels, the operating system’s scaling on the desktop, zoom to 400 % in a browser, and the interface doesn’t scroll sideways. |
| Color | Dark, light, or matching the computer. Modern, Classic or Light screen colors. Input fields can be shaded so they don’t depend on the host’s colors. |
| Motion | The blinking cursor can be turned off, and nothing blinks when the computer asks for reduced motion. |
| Other languages | Translated screens mark each text with its language, so a screen reader uses the right voice. |

Most of this applies to the desktop app on Windows, macOS and Linux and to WND Terminal in a browser, which have the same interface.


### The two ways to see a screen

The classic screen  is the host’s screen as it is: 24 rows of 80 characters (or 27 x 132, 62 x 160 and so on), drawn as text. Keys go to the host exactly as typed, as on any 3270 or 5250 terminal.

Modern view  (Ctrl+Shift+M, ⌘⇧M on a Mac) shows the same live screen as a form. Each input field is a real text box with its label, the screen’s title is a heading, menu choices and function keys are buttons, a list is a table with column headings, and the host’s messages are announced. If you use a screen reader, Modern view is the better way to work. See the screen reader section below.


### The keyboard


#### On the host’s screen

On the classic screen the keyboard belongs to the host. Tab and Shift+Tab move between the host’s fields, as people who use mainframes expect.

On a small screen, swipe the table to read all columns.


| Keys | What they do |
| --- | --- |
| Enter, right Ctrl | Enter |
| F1 to F12, Shift+F1 to F12 | PF1 to PF24 (F1 to F24 on IBM i) |
| Tab, Shift+Tab | Next field, previous field |
| Page Down, Page Up | PF8 and PF7 on a mainframe, Roll Up and Roll Down on IBM i |
| Escape | Reset on a mainframe. Attention on IBM i, or Reset while an error code shows |
| Pause or Ctrl+L | Clear (mainframe) |
| Alt+1, Alt+2, Alt+3 | PA1, PA2, PA3 (mainframe) |
| End | Erase to the end of the field |
| Insert | Insert mode on and off |
| Ctrl+Enter, keypad Enter | Field Exit (IBM i) |
| Ctrl+F9 | Cursor Select, the light pen at the cursor |

Your organization may give you a keyboard map from your old emulator (Keyboard maps in the search palette), which changes some of these.

Ctrl+F6 takes the keyboard off the host’s screen , to the row of session tabs. From there, Tab goes on to the toolbar, and the arrow keys move between tabs. Enter shows a tab, and Delete closes it. Clicking the screen, or Ctrl+1 to Ctrl+9, goes back to a session.


#### Everywhere

On a small screen, swipe the table to read all columns.


| Keys | What they do |
| --- | --- |
| Ctrl+K | Search: every command, session and saved connection, by name |
| Ctrl+F6 | The keyboard to the session tabs and toolbar |
| Ctrl+T, Ctrl+W | New tab, close the tab |
| Ctrl+Tab, Ctrl+Shift+Tab | Next tab, previous tab |
| Ctrl+1 to Ctrl+9 | Go to that tab |
| Ctrl+\ | Two sessions side by side |
| Ctrl+Shift+M | Modern view and the classic screen |
| Ctrl+E | Explain this screen |
| Ctrl+Shift+E | Ask WND |
| Ctrl+Shift+H | Send to the help desk |
| Ctrl+C, Ctrl+Shift+C | Copy, copy the list as a table |
| Ctrl+P | Print the screen |
| Ctrl+ +, Ctrl+ −, Ctrl+0 | Bigger screen text, smaller, fit the window |

On a Mac, ⌘ takes the place of Ctrl, except in Ctrl+W, Ctrl+Tab and Ctrl+F6. In a browser, where Ctrl+T and Ctrl+W belong to the browser, use Alt+T and Alt+W, and Alt+Page Down and Alt+Page Up for the next and previous tab.

Every command has a name in the search palette, so anything you would do with the mouse can be found there by typing a few words.


#### In Modern view

Tab and Shift+Tab move between fields and buttons in screen order. Typing goes into the real field on the host. Enter sends the screen, the function keys work as on the classic screen, and each function key is also a button. Ctrl+Shift+L shows a translated screen in the host’s own words and back (see [Screens in your language](https://wndsoftware.com/docs/translation)).


#### In dialogs

When a dialog opens, the keyboard goes into it. Tab and Shift+Tab stay inside it while it’s open. Escape closes it, and the keyboard goes back to where it was.


### Screen readers

WND Terminal’s interface reaches screen readers through the operating system’s accessibility interface, as any app built on the system’s web view does: NVDA, JAWS and Narrator on Windows, VoiceOver on the Mac and Orca on Linux, and the browser’s own in WND Terminal in a browser. WND Terminal’s buttons, menus, dialogs and settings all have names and roles a screen reader can announce.

In Modern view , a screen reader hears a host screen as a form: the title as a heading, each field with its label (and "required" when the host requires it), hints such as "(YYYY-MM-DD)" after a field, menu choices as buttons, lists as tables with column headings, and the host’s messages as they arrive. Error messages are announced at once, other messages when the reader is free.

On the classic screen , the screen is one area that passes keys to the host (an application region, so the screen reader doesn’t take the keys for itself). When the host answers and the keyboard is free again, the screen’s first line and the line the cursor is on are read out, with any keyboard error. To read the rest of the screen, switch the screen reader to its reading mode (NVDA+Space in NVDA, for example) and read it line by line. The host’s screen doesn’t say which text is the label for which field, so the classic screen can’t announce fields by their labels. Modern view works that out.

The status line (connected, encrypted, ready, waiting for the host) is announced when it changes.

When a screen is shown in another language, each translated text carries its language, so the screen reader reads it with the right voice.


### Text size and zoom

- The host’s screen.  Ctrl+ + and Ctrl+ − make the screen’s text bigger and smaller (up to 64 pixels). Ctrl+0 fits the screen to the window again. Display settings has the same, under Text size. A screen too big for the window scrolls.
- Everything else  follows the operating system’s display scaling on the desktop (Windows display scale, macOS and Linux text size). In a browser, the browser’s zoom works up to 400 %. In a narrow window, or zoomed to 200 % and more, the toolbar keeps its icons, the session tabs move to a row of their own, and dialogs taller than the window scroll. Nothing scrolls sideways.
- Modern view  fits the window, with labels above their fields when the window is narrow.


### Colors and motion

- Appearance  is dark, light, or matching the computer, in Display settings.
- Screen colors : Modern, Classic (the IBM 3279 colors) or Light (dark text on white). Auto follows the appearance.
- Shade input fields  shows where you can type on the classic screen without relying on the host’s colors.
- WND Terminal’s own text meets a contrast of 4.5 to 1 in dark and light, and the borders of text fields 3 to 1. The host’s screen uses the colors its application asks for, drawn in the chosen screen colors. On the screens we checked they meet 4.5 to 1 too, but a host application can choose colors that don’t.
- Blinking cursor  can be turned off. When the computer asks for reduced motion, the cursor and the host’s blinking text don’t blink.


### Phones and tablets

The touch layout puts a key bar (Enter, PF keys, Tab and the rest) above the phone’s keyboard. Large touch targets  makes keys, buttons and tabs bigger. A pinch zooms the screen, and Bigger and Smaller text in the search palette do the same without a gesture. Both orientations work.


### How it’s checked

Every change to WND Terminal is checked by an automated test in its build. It runs axe-core’s WCAG 2.1 A and AA rules over 30 screens of the interface (the connect page, mainframe and IBM i screens, Modern view, a translated screen, the search palette and every main dialog and dashboard), in dark and light. Then it checks what axe can’t see. Dialogs must take the keyboard, keep it and close with Escape. Ctrl+F6 must leave the host’s screen, the session tabs must work from the keyboard, translated text must carry its language, and nothing may scroll sideways at 200 % and 400 % zoom. A serious or critical finding fails the build.


### The VPAT 2.5 report

The accessibility conformance report covers WCAG 2.1 A and AA, the Revised Section 508 standards and EN 301 549, for the desktop app and WND Terminal in a browser.

[Read the VPAT](https://wndsoftware.com/docs/vpat)
It says how WND Terminal was evaluated and where it falls short. Testing with screen readers, a keyboard-only walkthrough of the desktop app on each operating system, Windows contrast themes and text spacing in every dialog are planned. Where a criterion depends on them, the level is no higher than Partially Supports.


### Questions about accessibility


#### Is there a VPAT for WND Terminal?

Yes. The VPAT 2.5 INT report covers WCAG 2.1 A and AA, the Revised Section 508 standards and EN 301 549, for the desktop app and WND Terminal in a browser.


#### Which screen readers does it work with?

WND Terminal’s interface reaches NVDA, JAWS and Narrator on Windows, VoiceOver on the Mac and Orca on Linux through the operating system’s accessibility interface. Modern view is the better way to work with one. Testing with each screen reader is planned, and the VPAT says where that matters.


#### Can the keyboard get stuck on the host screen?

No. Ctrl+F6 takes the keyboard off the host’s screen to the session tabs and toolbar, and every change to WND Terminal is checked for it.


#### How is accessibility checked?

An automated test runs axe-core’s WCAG 2.1 A and AA rules over 30 screens in dark and light on every change, plus scripted checks of dialogs, Ctrl+F6, the tabs, language marking and zoom. A serious or critical finding fails the build.


### Works well with

[Modern view The same live screen as a clean form Learn more →](https://wndsoftware.com/modern-view)
[VPAT 2.5 The accessibility conformance report Learn more →](https://wndsoftware.com/docs/vpat)
[Screens in your language Translated screens in Modern view Learn more →](https://wndsoftware.com/docs/translation)
