Patent ID: 7620901
Filing Date: 2009-11-17
Classification: G06F

Abstract:
1. In a computing environment, the computing environment comprising a plurality of user input devices, a method for processing inputs from different user input devices across multiple application instances of one or more applications displayed on single display of a user interface, comprising the steps of: receiving a first user input from a first user input device, the first user input device being associated with a first application instance by subscription of the first application to the first user input device; simultaneous to receiving the first user input from the first user input device, receiving a different second user input from a separate second user input device, the second user input device being associated with a separate second application instance by subscription of the second application to the second user input device; determining that the first user input corresponds to the first application instance by determining that first user input was received from the first user input device and by evaluating a first subscription request received from the first application instance subscribing to input received from the first user input device; routing the first user input to a first input event processing thread associated with the first application instance, wherein the first input event processing thread runs in parallel to a first main event processing thread of the first application instance; determining a first user input event from the first user input; rendering the determined first user input event on a user interface of the first application instance; determining that the second user input corresponds to the second application instance by determining that the second user input was received from the second user input device and by evaluating a second subscription request received from the second application instance subscribing to input received from the second user input device; routing the second user input to a second input event processing thread associated with the second application instance, wherein the second input event processing thread runs in parallel to a second main event processing thread of the second application instance; determining a second user input event from the second user input; and rendering the determined second user input event on a user interface of the second application instance.