a data processing system and method providing for the sharing of inputs and outputs between a first assistive technology application and a second assistive technology application . an input / output manager in the first application is used to manage inputs to and outputs from the second application . an input method in the first application sends input to the second application . an output method in the first application receives output from the second application . a channel is formed between the input / output manager and the input and output methods to pass input and output that allows assistive technology applications to share user interface devices .