This short document explains how to use the ListTbl scripts for navigating ListView controls with JAWS in any application.
This document is laid out for easy navigation using JAWS HTML heading navigation commands: H will move through all headings, 2 through major sections, and 3 and 4 through any subsections or subsubsections.
These scripts make standard HTML table navigation commands (Ctrl+Alt with arrows, Home, End, etc.) apply to ListView controls, such as can be found in Windows Explorer. This facilitates scanning down columns other than column 1 without having to type numerous or difficult key sequences. There are also a few added commands for clicking cells and column headers without having to use the JAWS cursor. In JAWS 13 and later, the Table Layer commands also work on supported controls.
To install these scripts on a new system:
The primary feature of these scripts is to make the standard JAWS table navigation commands work in ListView controls. This works in all supported JAWS keyboard layouts and uses the same keystrokes in each as appear in HTML environments. In JAWS 13 and later, the Table Layer commands also work on supported controls.
In addition to the standard table navigation commands though, these scripts add a few commands for left-clicking and right-clicking "cells" and column headers in ListViews. These added commands work only in ListView controls and do not carry over to HTML environments. The following table lists the available functions with the commands for each supported keyboard layout:
|Function||Common/Desktop Layout||Laptop and Classic Laptop Layouts||Kinesis Layout||Table Layer||Description|
|Left-click cell||Ctrl+Alt+NumPad /||Ctrl+Alt+8||Ctrl+Alt+I||NumPad /||Left-clicks the current cell in the ListView.|
|Right-click cell||Ctrl+Alt+NumPad *||Ctrl+Alt+9||Ctrl+Alt+O||NumPad *||Right-clicks the current cell in the ListView.|
|Left-click header||Ctrl+Shift+Alt+NumPad /||Ctrl+Shift+Alt+8||Ctrl+Shift+Alt+I||Shift+NumPad /||Left-clicks the column header above the current cell in the ListView.|
|Right-click cell||Ctrl+Shift+Alt+NumPad *||Ctrl+Shift+Alt+9||Ctrl+Shift+Alt+O||Shift+NumPad *||Right-clicks the column header above the current cell in the ListView.|
Note: Though standard JAWS Table Layer commands do not exit the Table Layer, the above Table Layer commands will do so. This is because clicking cells and headers usually causes new or reorganized screens to appear, whereas the standard JAWS Table Layer commands simply navigate among cells. As a side effect, it will be necessary to use commands outside of the Table Layer in order to double-click cells.
In the following examples, the Common/Desktop layout is assumed. For other layouts or the Table Layer, substitute appropriate keystrokes as necessary.
|Read each cell in the current ListView row with its header.||Use Ctrl+Alt+Right to move one cell at a time to the right across the row, Ctrl+Alt+Left to move left, and Ctrl+Alt+NumPad 5 to announce the current cell with header and position information.. The normal JAWS ListView commands for reading cells (JAWSKey+Ctrl+1-9/0) also work here but do not provide a means for examining more than the first ten columns of a wide list.|
|Find the largest file in a Windows Explorer file list||Either use Ctrl+Alt+Left/Right to move to the Size
column and then scan through sizes manually with
|Find out which process is using the most CPU time (Windows 7 and older).||In the Processes tab of the Task Manager, sort the list by CPU, just as was done for Size in the previous example; then check the top row. The same approach also works for finding the process that is consuming the most memory. Beware, though, that this list is very dynamic when sorted by CPU or memory usage and can reorder frequently as process resource utilization changes.|
|Add or remove columns in Windows Explorer file lists (Windows 7 and older)||From any row, type Ctrl+Shift+Alt+NumPad * to right-click a column header. In the Context menu that appears, column names appear, checked if displayed and not checked if not displayed. Press Enter on a checked column to remove it or on an unchecked column to add it.|
These scripts are a very delayed assembly of ideas first formed into code in September of 2004. I am unable to recall when and where I first released the base code for this system to the public, but a version of it appears inside an open-sourced VA project file apparently published on or before August 7, 2010 (according to Subversion logs) as part of the WorldVistA project. (this version turned up in my Google search for listtbl jaws on January 13, 2014.) I believe a version named listtbl.jsl reached an early incarnation of the JAWSScripts mailing list in 2004 or 2005 as well.