5
5
describes some tasks that a system administrator needs to perform to enable
6
6
accessible login and to facilitate the use of the assistive technologies that
7
7
are available in the GNOME Desktop.</para>
8
<sect1 id="sysadmin-27">
9
<title>Configuring the Desktop for Accessible Login</title>
11
<primary>accessible login feature</primary>
13
<para>The GNOME Desktop includes an Accessible
14
Login feature. The Accessible Login feature enables users to: </para>
17
<para>Log in to the desktop even if the user cannot easily use the
18
screen, mouse, or keyboard in the usual way.</para>
21
<para>Launch assistive technologies at login time by associating
22
a user action with an assistive technology application. The user can perform
23
the user action from the standard keyboard, or from a keyboard, pointing device,
24
or switch device that is attached to the USB or PS/2 mouse port. These user
25
actions are called gestures.</para>
28
<para>Change the visual appearance of the login dialog before the
29
user logs in, for example, to use a high contrast theme for better visibility. </para>
32
<sect2 id="sysadmin-34">
33
<title>To Enable Accessible Login</title>
35
<primary>GDM</primary>
37
<para>To enable the Accessible
38
Login feature for the GNOME
39
Desktop, you must configure the desktop to use the GNOME Display Manager
40
(GDM) as the login manager. GDM is the default login manager on Linux systems
41
but not on Solaris systems, therefore the instructions to enable Accessible
42
Login differ depending on the platform you are using. </para>
43
<sect3 id="sysadmin-38">
44
<title>To Enable and Configure GDM on Solaris Systems</title>
45
<para>To enable and configure GDM as the login manager on Solaris systems,
46
perform the following steps:</para>
49
<para>Log in as the <literal>root</literal> user.</para>
52
<para>Open the file <filename>/etc/X11/gdm/gdm.conf</filename>.</para>
55
<para>Search the file for the following line: </para>
57
<literal>#AddGtkModules=false</literal>
59
<para>and replace the line with the following:</para>
61
<literal>AddGtkModules=true</literal>
63
<para>This step enables the GtkModules.</para>
66
<para>Search the file for the following line: </para>
68
<literal>#GtkModulesList=gail:atk-bridge:dwellmouselistener:keymouselistener</literal>
70
<para>and delete the <literal>#</literal> from the start of the line so that
71
the line reads:</para>
73
<literal>GtkModulesList=gail:atk-bridge:dwellmouselistener:keymouselistener</literal>
76
<para>The above lines must be displayed as single lines in the <filename>gdm.conf</filename> file without line breaks. The formatting of this guide
77
may display the lines over two lines.</para>
79
<para>This step loads all of the GtkModules to enable assistive technologies
80
such as <application>On-Screen Keyboard</application> and <application>Screen
81
Reader and Magnifier</application>. You can edit the line above further to
82
load only the GtkModules that you require to support the user base. For example: </para>
85
<para>If you need to use the <application>Screen Reader and Magnifier</application>, include <literal>gail</literal> and <literal>atk-bridge</literal>.</para>
88
<para>If you need to use a pointing device without buttons or switches,
89
include <literal>gail</literal>, <literal>atk-bridge</literal>, and<literal>dwellmouselistener</literal>. </para>
92
<para>If you use pointing devices with switches, alternative physical
93
keyboards, or switch and button devices, include <literal>keymouselistener</literal>.</para>
96
<para><application>On-Screen Keyboard</application> can operate
97
without <literal>gail</literal> and <literal>atk-bridge</literal> but with
98
a reduced feature set. </para>
101
<para>For optimum accessibility, include <literal>gail</literal> and <literal>atk-bridge</literal>.</para>
104
<para>Save the <filename>/etc/X11/gdm/gdm.conf</filename> file.</para>
107
<para>Enter the following command to stop the <application>dtlogin</application> manager:</para>
109
<command>/usr/dt/bin/dtconfig -d</command>
113
<para>Enter the following commands to configure GDM as the login
116
<command>svccfg import /var/svc/manifest/application/gdm2-login.xml</command>
119
<command>svcadm enable application/gdm2-login</command>
122
<para>If you make any changes to the <filename>/etc/X11/gdm/gdm.conf</filename> file after you enable GDM, you can execute the following command
123
to restart GDM and activate the changes:</para>
125
<command>gdm-restart</command>
130
<para>Edit the file <filename>/etc/passwd</filename> to append the
131
following to the end of the <literal>gdm</literal> line:</para>
133
<literal>:/etc/X11/gdm/home</literal>
137
<para>Create the <literal>/etc/X11/gdm/home</literal> directory
138
and assign ownership of the directory to the <literal>gdm</literal> user.</para>
141
<para>Restart your system.</para>
145
<sect3 id="sysadmin-39">
146
<title>To Configure GDM on Linux Systems</title>
147
<para>To configure GDM on Linux systems, perform the following steps:</para>
150
<para>Log in as the <literal>root</literal> user.</para>
153
<para>Open the file <filename>/etc/X11/gdm/gdm.conf</filename>.</para>
156
<para>Search the file for the following line: </para>
158
<literal>#AddGtkModules=false</literal>
160
<para>and replace the line with the following:</para>
162
<literal>AddGtkModules=true</literal>
164
<para>This step enables the GtkModules.</para>
167
<para>Search the file for the following line: </para>
169
<literal>#GtkModulesList=gail:atk-bridge:dwellmouselistener:keymouselistener</literal>
171
<para>and delete the <literal>#</literal> from the start of the line so that
172
the line reads:</para>
174
<literal>GtkModulesList=gail:atk-bridge:dwellmouselistener:keymouselistener</literal>
177
<para>The above lines must be displayed as single lines in the <filename>gdm.conf</filename> file without line breaks. The formatting of this guide
178
may display the lines over two lines.</para>
180
<para>This step loads all of the GtkModules to enable assistive technologies
181
such as <application>On-Screen Keyboard</application> and <application>Screen
182
Reader and Magnifier</application>. You can edit the line above further to
183
load only the GtkModules that you require to support the user base. For example: </para>
186
<para>If you need to use the <application>Screen Reader and Magnifier</application>, include <literal>gail</literal> and <literal>atk-bridge</literal>.</para>
189
<para>If you need to use a pointing device without buttons or switches,
190
include <literal>gail</literal>, <literal>atk-bridge</literal>, and <literal>dwellmouselistener</literal>. </para>
193
<para>If you use pointing devices with switches, alternative physical
194
keyboards, or switch and button devices, include <literal>keymouselistener</literal>.</para>
197
<para><application>On-Screen Keyboard</application> can operate
198
without <literal>gail</literal> and <literal>atk-bridge</literal> but with
199
a reduced feature set. </para>
202
<para>For optimum accessibility, include <literal>gail</literal> and <literal>atk-bridge</literal>.</para>
205
<para>Save the <filename>/etc/X11/gdm/gdm.conf</filename> file.</para>
207
<para>If you make any changes to the <filename>/etc/X11/gdm/gdm.conf</filename> file after you enable GDM, you can execute the following command
208
to restart GDM and activate the changes:</para>
210
<command>gdm-restart</command>
215
<para>Edit the file <filename>/etc/group</filename> and append the
216
following to the <literal>audio</literal> line:</para>
218
<literal>,gdm</literal>
220
<para>This step ensures that speech works with GDM.</para>
223
<para>Restart your system.</para>
228
<sect2 id="sysadmin-29">
229
<title>To Start Assistive Technologies at Login</title>
231
<primary>gestures</primary>
233
<para>If you load the <literal>keymouselistener</literal> and <literal>dwellmouselistener</literal> GtkModules
234
in the GDM configuration file, you can assign user actions to launch specific
235
assistive technologies at login time. These user actions are called gestures.
236
The gesture associations are contained in the following GDM configuration
241
<filename>/etc/X11/gdm/modules/AccessKeyMouseEvents</filename>
246
<filename>/etc/X11/gdm/modules/AccessDwellMouseEvents</filename>
251
<para>If you modify these files, you must restart your system before
252
the changes take effect.</para>
254
<para>The following sections contain examples of the gestures that you can
255
add to the GDM configuration files.</para>
257
<para>The gestures must be contained in a single line in the <filename>AccessKeyMouseEvents</filename> file without line breaks. The formatting of
258
this guide might display the examples in the following sections over two lines. </para>
260
<sect3 id="sysadmin-30">
261
<title>To Start Screen Reader Using a Keyboard Shortcut</title>
262
<para>Edit the <filename>AccessKeyMouseEvents</filename> file to associate
263
keyboard shortcuts with assistive technologies. For example, the following
264
line enables you to press-and-hold <keycombo><keycap>Ctrl</keycap><keycap>S</keycap></keycombo>
265
for one second to start <application>Screen Reader and Magnifier</application>
266
in speech and Braille mode:</para>
268
<emphasis>Solaris:</emphasis>
271
<literal><Control>s 1 1000 10000 /usr/sfw/bin/srcore --login --disable-magnifier
272
--enable-speech --enable-braille</literal>
275
<emphasis>Linux:</emphasis>
278
<literal><Control>s 1 1000 10000 srcore --login --disable-magnifier
279
--enable-speech --enable-braille</literal>
282
<sect3 id="sysadmin-41">
283
<title>To Start Magnifier Using a Keyboard Shortcut</title>
284
<para>Edit the <filename>AccessKeyMouseEvents</filename> file to associate
285
keyboard shortcuts with assistive technologies. For example, the following
286
line enables you to press-and-hold <keycombo><keycap>Ctrl</keycap><keycap>M</keycap></keycombo>
287
for one second to start <application>Screen Reader and Magnifier</application>
288
in magnifier mode:</para>
290
<emphasis>Solaris:</emphasis>
293
<literal><Control>m 1 1000 10000 /usr/sfw/bin/srcore --login --enable-magnifier
294
--disable-speech</literal>
297
<emphasis>Linux:</emphasis>
300
<literal><Control>m 1 1000 10000 srcore --login --enable-magnifier
301
--disable-speech</literal>
304
<sect3 id="sysadmin-31">
305
<title>To Start On-Screen Keyboard Using a Switch or Button Gesture</title>
306
<para>Edit the <filename>AccessKeyMouseEvents</filename> file to associate
307
switch, key, or button gestures with assistive technologies. Since the primary
308
input device for many <application>On-Screen Keyboard</application> users
309
is a switch or button, this is a good way to enable users to start <application>On-Screen Keyboard</application> at login time. </para>
310
<para>If there is a tendency for a user to start an application unintentionally,
311
you can associate the gestures with multiple switch presses or minimum durations.
312
For example, the following line starts <application>On-Screen Keyboard</application>
313
in inverse scanning mode when the user presses the switch that is defined
314
as Switch 2 three times within two seconds, for a minimum of 100 milliseconds
315
for each press:</para>
317
<emphasis>Solaris:</emphasis>
320
<literal><Switch2>3 100 2000 /usr/sfw/bin/gok --login --accessmethod=inversescanning
321
--scan-action=switch1 --select-action=switch2</literal>
324
<emphasis>Linux:</emphasis>
327
<literal><Switch2>3 100 2000 gok --login --accessmethod=inversescanning
328
--scan-action=switch1 --select-action=switch2</literal>
330
<para>Users who use single switches may prefer to start <application>On-Screen
331
Keyboard</application> in automatic scanning mode. The following line starts <application>On-Screen Keyboard</application> in automatic scanning mode when the user
332
presses the switch on an alternative access device for more than four seconds:</para>
334
<emphasis>Solaris:</emphasis>
337
<literal><Switch>1 4000 5000 /usr/sfw/bin/gok --login --accessmethod=automaticscanning
338
--scan-action=switch1 --select-action=switch1</literal>
341
<emphasis>Linux:</emphasis>
344
<literal><Switch>1 4000 5000 gok --login --accessmethod=automaticscanning
345
--scan-action=switch1 --select-action=switch1</literal>
347
<para>For information about the <application>On-Screen Keyboard</application>
348
operating modes, see the online Help for <application>On-Screen Keyboard</application>.</para>
350
<sect3 id="sysadmin-32">
351
<title>To Start On-Screen Keyboard Using a Motion-only Gesture</title>
352
<para>You can define gestures that involve only the motion of a pointing device
353
such as a mouse, or an alternative pointing device, such as a head pointer
354
or trackball. The syntax of the gesture does not change depending on whether
355
you are using a mouse or an alternative pointing device. Edit the <filename>AccessKeyMouseEvents</filename> file to associate motion gestures with assistive
357
<para>If the <literal>dwellmouselistener</literal> GtkModule is loaded, alternative
358
pointing devices are temporarily latched to the core pointer. This means that
359
if the user moves the alternative pointing device, the onscreen pointer moves.</para>
360
<para>For example, the following line starts <application>On-Screen Keyboard</application> in dwell mode when the user moves the onscreen pointer from
361
inside the login dialog through the top edge, back into the dialog through
362
the top edge, out of the dialog through the left edge, back into the dialog
363
through the left edge, and similarly through the bottom and right edges of
364
the dialog in a cross pattern:</para>
366
<emphasis>Solaris:</emphasis>
369
<literal>TTLLBBRR O 10000 /usr/sfw/bin/gok --login --access-method=dwellselection
370
--input-device=MOUSE[3]</literal>
373
<emphasis>Linux:</emphasis>
376
<literal>TTLLBBRR O 10000 gok --login --access-method=dwellselection
377
--input-device=MOUSE[3]</literal>
379
<para>Note that the <literal>--input-device</literal> parameter specified
380
in the gesture must match the name of the extended user input device, such
381
as a head pointer or trackball, as specified in <filename>/etc/X11/XF86Config</filename>.</para>
384
<sect2 id="sysadmin-33">
385
<title>Additional Requirements for Accessible Login</title>
386
<para>To enable the Accessible Login feature to use alternative pointing devices
387
and switch devices such as sip-and-puff switches, wheelchair-mounted switches,
388
or trackballs, you might need to modify your X server system configuration
389
to recognize these devices. You can use most devices that emulate mouse buttons
390
with the Accessible Login feature and <application>On-Screen Keyboard</application>,
391
including USB single switches and mouse-like pointing devices.</para>
393
<para>You should not configure an alternative input device to control
394
the primary onscreen pointer. This might result in undesirable behavior or
395
cause situations from which the user of the alternate input device cannot
396
recover without using the primary keyboard or mouse. To prevent this problem,
397
please remove any occurrences of the attributes <literal>SendCore</literal>
398
or <literal>AlwaysCore</literal> from any of <literal>InputDevice</literal>
399
lines in the X Server configuration file.</para>
403
<sect1 id="sysadmin-7">
404
<title>Configuring the Java Environment for Accessibility on Solaris Systems</title>
406
<primary>Java environment, configuring</primary>
408
<para>To configure the Java environment on Solaris systems for accessibility, perform
409
the following steps:</para>
412
<para>Log in as the <literal>root</literal> user to the base directory
413
of the Java SDK installation. </para>
416
<para>Enter the following command:</para>
418
<command>cd jre/lib</command>
422
<para>Enter the following command:</para>
424
<command>ln -s /usr/share/jar/accessibility.properties</command>
428
<para>Enter the following command:</para>
430
<command>cd ext</command>
434
<para>Enter the following command: </para>
436
<command>ln -s /usr/share/jar/gnome-java-bridge.jar</command>
441
<sect1 id="sysadmin-55">
442
<title>Enabling XKB on Solaris Systems</title>
444
<primary>XKB</primary>
446
<para>If you are using the desktop
447
for the Solaris operating system on a SPARC platform, you must enable XKB
448
on your system before you can use the <application>AccessX</application> preference
449
tool, <application>Screen Reader and Magnifier</application>, or <application>On-Screen Keyboard</application>. </para>
451
<para>XKB is not currently supported on Sun Ray systems.</para>
453
<para>To enable XKB on a non-Sun Ray Solaris system, perform the following
457
<para>Log in as the <literal>root</literal> user.</para>
460
<para>Check if the path and file <filename>/etc/dt/config/Xservers</filename> exists on your system.</para>
463
<para>If the <filename>/etc/dt/config</filename> directory does
464
not exist, enter the following command:</para>
466
<command>mkdir -p /etc/dt/config</command>
470
<para>If the <filename>Xservers</filename> file is not present,
471
enter the following command:</para>
473
<command>cp /usr/dt/config/Xservers /etc/dt/config/Xservers</command>
477
<para>Open the <filename>Xservers</filename> file in a text editor
478
and scroll to the end of the file. </para>
481
<para>Append the following to the command line at the end of the
484
<userinput>+kb</userinput>
488
<para>Save and close the <filename>Xservers</filename> file.</para>
491
<para>Enter the following command at a command line:</para>
493
<command>pkill -HUP dtlogin</command>
497
<para>Open the <filename>/etc/X11/gdm/gdm.conf</filename> file in
498
a text editor.</para>
501
<para>Scroll towards the end of the file until you see the line <literal>[server - standard]</literal>.</para>
504
<para>Edit the <literal>command</literal> line in this section to
505
append the following to the end of the line:</para>
507
<command>+accessx +kb</command>
511
<para>Save and close the <filename>gdm.conf</filename> file.</para>
514
<para>Log out of your session and log in again.</para>
517
<para>To verify if XKB is running, execute the following command: </para>
519
<command>xdpyinfo</command>
521
<para>then search for XKEYBOARD in the extensions list.</para>
525
8
<sect1 id="sysadmin-6">
526
9
<title>Enabling Full Screen Magnification</title>