Method for providing multiple mouse inputs in a remote desktop session
First Claim
1. A method for providing multiple, human-interface, input pointer devices in a remote desktop session between a client computing device and a host computer, the client computing device and the host computer being connected by a network, comprising:
- providing a projector as said client computing device, said projector being a client projector configured to execute a client-side application to establish said remote desktop session with said host computer, said client projector having said multiple input pointer devices as distinct projector input pointer devices, said projector assigning a different ID to each projector input pointer device and capturing and associating raw input data generated by each projector input pointer device with its respective ID;
providing said host computer, said host computer being configured to execute a serving function in said remote desktop session with said client projector;
establishing a remote desktop session between the client projector and the host computer over said network, said remote desktop session establishing a remote desktop communication channel with said client projector characterized by the following limitations;
(a) said host computer transferring control of an application running on said host computer to said client projector,(b) said host computer having a graphic desktop, and as part of said remote desktop session, said host computer transfers its graphic desktop to said client projector for display by said client projector,(c) the remote desktop session between said host computer and client projector is a private one-to-one session between the host computer and the client projector and the graphic desktop is transferred only to said client projector during said remote desktop session,(d) said remote desktop session providing for only a single input pointer device for said client projector and being configured to treat any remote-desktop input-pointer signals received over said remote desktop communication channel as a single unified input pointer device irrespective of whether said remote-desktop input-pointer signals were generated by multiple distinct input pointer devices;
establishing a remote desktop services virtual channel between the host computer and the client projector;
wherein said client projector sends captured raw input data generated by each respective projector input pointer device with its associated ID to said host computer over said remote desktop services virtual channel;
wherein the host computer includes a multi-input receiver module that receives the raw input data and associated IDs from the client projector over said remote desktop services virtual channel, and a virtual device interface module couple to the multi-input receiver module, wherein the virtual device interface module creates and discards virtual input-pointer devices having unique virtual device IDs without the use of input drivers and in accordance with the received raw input data and associated IDs;
intercepting raw input function calls from said application running on the host computer to an operating system of the host computer, said raw input function calls requiring operating-system-supplied raw input information of individual hardware input pointer devices connected to said host computer, said operating-system-supplied input-information being supplied by said operating system of the host computer; and
augmenting said operating-system-supplied input information with raw input data and corresponding virtual IDs of said respective, individual virtual input-pointer devices to make the virtual input-pointer devices appear as if they were locally connected to said host device while being maintained private to said remote desktop session between the client projector and the host computer;
returning to said application, as part of responses to said raw input function calls, the augmented operating-system-supplied input information.
2 Assignments
0 Petitions
Accused Products
Abstract
A computer (host), which is communicating with an interactive whiteboard projector (client) through a remote desktop connection, launches third-party applications supporting multiple mice (i.e. drawing pens) and provides these applications with virtual mouse device and input event signals for each pen device connected on the projector. The applications will behave as if the host system were configured with multiple installed mice, though no added driver or physical connected hardware is present.
-
Citations
16 Claims
-
1. A method for providing multiple, human-interface, input pointer devices in a remote desktop session between a client computing device and a host computer, the client computing device and the host computer being connected by a network, comprising:
-
providing a projector as said client computing device, said projector being a client projector configured to execute a client-side application to establish said remote desktop session with said host computer, said client projector having said multiple input pointer devices as distinct projector input pointer devices, said projector assigning a different ID to each projector input pointer device and capturing and associating raw input data generated by each projector input pointer device with its respective ID; providing said host computer, said host computer being configured to execute a serving function in said remote desktop session with said client projector; establishing a remote desktop session between the client projector and the host computer over said network, said remote desktop session establishing a remote desktop communication channel with said client projector characterized by the following limitations; (a) said host computer transferring control of an application running on said host computer to said client projector, (b) said host computer having a graphic desktop, and as part of said remote desktop session, said host computer transfers its graphic desktop to said client projector for display by said client projector, (c) the remote desktop session between said host computer and client projector is a private one-to-one session between the host computer and the client projector and the graphic desktop is transferred only to said client projector during said remote desktop session, (d) said remote desktop session providing for only a single input pointer device for said client projector and being configured to treat any remote-desktop input-pointer signals received over said remote desktop communication channel as a single unified input pointer device irrespective of whether said remote-desktop input-pointer signals were generated by multiple distinct input pointer devices; establishing a remote desktop services virtual channel between the host computer and the client projector; wherein said client projector sends captured raw input data generated by each respective projector input pointer device with its associated ID to said host computer over said remote desktop services virtual channel; wherein the host computer includes a multi-input receiver module that receives the raw input data and associated IDs from the client projector over said remote desktop services virtual channel, and a virtual device interface module couple to the multi-input receiver module, wherein the virtual device interface module creates and discards virtual input-pointer devices having unique virtual device IDs without the use of input drivers and in accordance with the received raw input data and associated IDs; intercepting raw input function calls from said application running on the host computer to an operating system of the host computer, said raw input function calls requiring operating-system-supplied raw input information of individual hardware input pointer devices connected to said host computer, said operating-system-supplied input-information being supplied by said operating system of the host computer; and augmenting said operating-system-supplied input information with raw input data and corresponding virtual IDs of said respective, individual virtual input-pointer devices to make the virtual input-pointer devices appear as if they were locally connected to said host device while being maintained private to said remote desktop session between the client projector and the host computer; returning to said application, as part of responses to said raw input function calls, the augmented operating-system-supplied input information. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 16)
-
-
11. A system for providing multiple, human interface, input pointer devices in a remote desktop session between a client projector and a host computer, the client projector and the host computer being connected by a network, comprising:
-
wherein said client projector has said multiple, human-interface, input pointer devices as distinct projector input pointer devices, assigns a different ID to each projector input pointer device, and captures and associates raw input data generated by each projector input pointer device with its respective ID; in the client projector, a processor that establishes a remote desktop session between the client projector and the host computer, wherein said remote desktop session establishes a remote desktop communication channel characterized by the following limitations; (a) said host computer transfers control of an application running on said host computer to said client projector, (b) said host computer has a graphic desktop, and as part of said remote desktop session, said host computer transfers its graphic desktop to said client projector for display by said client projector, (c) the remote desktop communication channel between said host computer and client projector is private with only the client projector having access to the graphic desktop that the host computer transferred to it, and (d) said remote desktop session provides for only a single input pointer device for said client projector and is configured to treat any remote-desktop input-pointer signals received over said remote desktop communication channel as a single unified input pointer device irrespective of whether said remote-desktop input-pointer signals were generated by multiple distinct input pointer devices; establishes a remote desktop services virtual channel between the client projector and the host computer; wherein said client projector sends captured raw input data generated by each respective projector input pointer device with its associated ID to said host computer over said remote desktop services virtual channel; wherein the host computer includes a multi-input receiver module that receives the raw input data and associated IDs from the client projector over said remote desktop services virtual channel, and a virtual device interface module coupled to the multi-input receiver module, wherein the virtual device interface module creates and discards virtual input-pointer devices having unique virtual device IDs without the use of input drivers and in accordance with the received raw input data and associated IDs; in the host computer, a processor that intercepts raw input function calls from said application running on the host computer to an operating system of the host computer, said raw input function calls requiring operating-system-supplied raw input information of individual hardware input pointer devices connected to said host computer, said operating-system-supplied input-information being supplied by said operating system of the host computer; augmenting said operating-system-supplied input information with raw input data and corresponding virtual IDs of said respective, individual virtual input-pointer devices to make the virtual input-pointer devices appear as if they were locally connected to said host device while being maintained private to said remote desktop session between the client projector and the host computer; returning to said application, as part of responses to said raw input function calls, the augmented operating-system-supplied input information. - View Dependent Claims (12, 13, 14, 15)
-
Specification