In this paper, we present a framework to use an arbitrary number of mouse and keyboard input devices controlling Swing based Java applications. These devices can be distributed amongst any number of host computers on a network. We use this framework to provide independent input devices to a number of users on different host computers. These users can then work collaboratively on applications. A major limitation for current real-time groupware is that contemporary graphic environments do not support more than one system cursor and keyboard. The Transparent Input Device Layer (TIDL) is a framework we have developed that provides an easy-to-use API for Java applications to gain support for multiple independent input devices. We have also created a wrapper application to retrofit legacy applications with support for multiple distributed input devices at runtime. This support can be injected without altering or recompiling the application’s source code. TIDL allows multiple devices to wo...
Peter Hutterer, Benjamin Close, Bruce H. Thomas