Using XTrap to help people with manual disabilities.
	The problem
		Wide range of situations
			One button at a time
			One handed operation
			Mouseless operation
		Mouse based GUIs pose a particular problem
			Existing 2d pointer devices unusable hands-free
			Drag operations especially troublesome, requiring
			considerable coordination
	The analysis
		Must provide mechanisms to
			Replace mouse
			provide locking modifier/buttons
		Must allow for customization
			To adapt to different needs
			To adapt to different uses
		Must provide system which is transparent to applications.
		Must provide system which requires minimal intervention in X
		server.
	Existing X solutions
		Motif provides for mouseless operation
		Translations provide a wide range of customization
	Why existing X solutions are not complete
		Many operations require the mouse
		Don't want to customize each application
	What X trap is
		An extension designed to provide acces to the internal
		workings of the X server
		In partiular, provides layer between real input device and
		input event handling code.
	Why X trap is useful for this work
		trap/generate events transparent to aplications.
			Trap events before processing; avoids
			device grabs; generated events are
			equivalent to real events and cause grab code
			to be invoked.
		Avoid server grabs
	The Macintosh system EasyAccess
		What it does
			Mouse emulation with keyboard
			Locking modifiers
			Locking mouse button
			Application transparent
		Some complaints
			Simplistic pointer positioning; very difficult to
				use accurately.
	A more usable system
		Provide customization of interaction mode
		Provide semantic information about the screen:
			Use EditRes protocol when available.
				Application specific interaction
				Widget specifc interaction
			Use window geometry as well.
				Application specific interaction.
			Provide actions like:
				Move to emacs window
				Move to next window to the right
				When in Command widget, movement is
				interpreted to leave widget for next widget
				in specified direction
	The configuration language
	A sample configuation script
	Changes required in XTrap implementation
		input generation below input redirection.
		Compute additional event fields
	Some suggested changes in XTrap spec
		TrapContexts - avoid per-client state
		Explicitly specify DeviceEvents vs GeneratedEvents
		Configurable per-event gating
