% Registration The New X Input System % % [2]Register/Submit Proposal James Gettys (jim.gettys@hp.com) % % Content A New X Window System Input System The X Window System, for historical reasons, has presumed a static configuration of screens and input devices such as keyboards, mice, joysticks, etc, configured by a file (the dread \texttt{xorg.conf} or \texttt{XF86Config} file), under control of a single individual. But USB input devices are now hot-pluggable, and users justifiably expect that they should be able to plug them into a running system and have them ``just work,'' without requiring rebooting the Linux/UNIX kernel or restarting the X server, having laboriously hand-edited an X server configuration file. Instead, the X server must move to a model where it is told what to do by external agents, and do so in a dynamic fashion, in response to a user's action. Additonally, projectors and other large displays, calling out to be used by more than one person at a time, are becoming econonomical. Input devices themselves must be able to be network devices, and the X server become a multi-user server, if this vision is to become a reality. The issues faced break down into the following categories: \begin{itemize} \item fundamental X architectural issues \item XInput extension protocol issues \item Integration with the desktop environment \item X server implementation infrastructure issues \item Security and authentication \item Device discovery, authentication and association \end{itemize} Hotplug of display screens present similar challenges, but such hardware is either rare (PCMCIA/CARDBUS displays) or not yet widely deployed (e.g.\ PCI-e), it is out of the scope of this paper.