User input routing with remote control application sharing
First Claim
Patent Images
1. A method for sharing control of a shared application, the method comprising:
- executing one or more unshared applications in a graphic user interface environment on a client system;
displaying the unshared applications on the client system;
receiving a data packet from a host system, the data packet containing information built from a call to the graphic user interface environment on the host system for displaying the shared application, the shared application selected by a host user using the host system;
displaying the shared application in a shared rectangle on the client system based on information contained in the data packet;
displaying a client cursor outside of the shared rectangle and a host cursor inside of the shared rectangle if the client cursor position is outside of the shared rectangle;
displaying only the client cursor inside of the shared rectangle if the client cursor position is inside of the shared rectangle;
accepting client mouse input events on the client system;
determining if the client mouse input events are for the shared application; and
transmitting the client mouse input events determined to be for the shared application to the host system for execution as if the host user had made the mouse inputs on the host system.
0 Assignments
0 Petitions
Accused Products
Abstract
A method for sharing control of a shared application with a client user. The method comprising transmitting a mouse capture indication to a client system if a host system detects a mouse capture event for the shared application, and transmitting a mouse release capture indication to the client system if the host system detects a mouse release event for the shared application.
-
Citations
20 Claims
-
1. A method for sharing control of a shared application, the method comprising:
-
executing one or more unshared applications in a graphic user interface environment on a client system;
displaying the unshared applications on the client system;
receiving a data packet from a host system, the data packet containing information built from a call to the graphic user interface environment on the host system for displaying the shared application, the shared application selected by a host user using the host system;
displaying the shared application in a shared rectangle on the client system based on information contained in the data packet;
displaying a client cursor outside of the shared rectangle and a host cursor inside of the shared rectangle if the client cursor position is outside of the shared rectangle;
displaying only the client cursor inside of the shared rectangle if the client cursor position is inside of the shared rectangle;
accepting client mouse input events on the client system;
determining if the client mouse input events are for the shared application; and
transmitting the client mouse input events determined to be for the shared application to the host system for execution as if the host user had made the mouse inputs on the host system. - View Dependent Claims (2, 3)
receiving a mouse capture indication from the host system if the host system detects a mouse capture event for the shared application;
receiving a mouse release capture indication from the host system if the host system detects a mouse release event for the shared application;
scrolling the shared application in the shared rectangle, if a client cursor is captured, when the client cursor reaches an edge of the shared rectangle;
resizing the shared rectangle, if the client cursor is captured, when the client cursor reaches the edge of the shared rectangle and the shared application in the shared rectangle is fully scrolled in that direction; and
restoring the size of the shared rectangle if the client cursor is released.
-
-
3. The method of claim 1 further comprising:
-
receiving a covered portion packet from the host system indicating portions of the shared application that are covered by unshared applications on the host system; and
displaying the portions of the shared application on the client system indicated as covered on the host system in a manner readable but different from the portions of the shared application not indicated as covered.
-
-
4. A computer program embodied in a computer-readable medium, the computer program including a process for sharing control of a shared application, the computer program comprising instructions for:
-
executing one or more unshared applications in a graphic user interface environment on a client system;
displaying the unshared applications on the client system;
receiving a data packet from a host system, the data packet containing information built from a call to the graphic user interface environment on the host system for displaying the shared application, the shared application selected by a host user using the host system;
displaying the shared application in a shared rectangle on the client system based on information contained in the data packet;
displaying a client cursor outside of the shared rectangle and a host cursor inside of the shared rectangle if the client cursor position is outside of the shared rectangle;
displaying only the client cursor inside of the shared rectangle if the client cursor position is inside of the shared rectangle;
accepting client mouse input events on the client system;
determining if the client mouse input events are for the shared application; and
transmitting the client mouse input events determined to be for the shared application to the host system for execution as if the host user had made the mouse inputs on the host system. - View Dependent Claims (5, 6, 7)
receiving a mouse capture indication from the host system if the host system detects a mouse capture event for the shared application;
receiving a mouse release capture indication from the host system if the host system detects a mouse release event for the shared application;
scrolling the shared application in the shared rectangle, if a client cursor is captured, when the client cursor reaches an edge of the shared rectangle;
resizing the shared rectangle, if the client cursor is captured, when the client cursor reaches the edge of the shared rectangle and the shared application in the shared rectangle is fully scrolled in that direction; and
restoring the size of the shared rectangle if the client cursor is released.
-
-
6. The computer program of claim 4 further comprising instructions for:
-
receiving a covered portion packet from the host system indicating portions of the shared application window that are covered by unshared applications on the host system; and
displaying the portions of the shared application window on the client system indicated as covered on the host system in a manner readable but different from the portions of the shared application window not indicated as covered.
-
-
7. The computer program of claim 4 wherein the computer-readable media is a computer data signal embodied in a carrier wave.
-
8. A client computer system for sharing control of a shared application, the client computer system executing instructions comprising:
-
executing one or more unshared applications in a graphic user interface environment on a client system;
displaying the unshared applications on the client system;
receiving a data packet from a host system, the data packet containing information built from a call to the graphic user interface environment on the host system for displaying the shared application, the shared application selected by a host user using the host system;
displaying the shared application in a shared rectangle on the client system based on information contained in the data packet;
displaying a client cursor outside of the shared rectangle and a host cursor inside of the shared rectangle if the client cursor position is outside of the shared rectangle;
displaying only the client cursor inside of the shared rectangle if the client cursor position is inside of the shared rectangle;
accepting client mouse input events on the client system;
determining if the client mouse input events are for the shared application; and
transmitting the client mouse input events determined to be for the shared application to the host system for execution as if the host user had made the mouse inputs on the host system. - View Dependent Claims (9, 10)
receiving a mouse capture indication from the host system if the host system detects a mouse capture event for the shared application;
receiving a mouse release capture indication from the host system if the host system detects a mouse release event for the shared application;
scrolling the shared application in the shared rectangle, if a client cursor is captured, when the client cursor reaches an edge of the shared rectangle;
resizing the shared rectangle, if the client cursor is captured, when the client cursor reaches the edge of the shared rectangle and the shared application in the shared rectangle is fully scrolled in that direction; and
restoring the size of the shared rectangle if the client cursor is released.
-
-
10. The client computer system of claim 8 further executing instructions comprising:
-
receiving a covered portion packet from the host system indicating portions of the shared application window that are covered by unshared applications on the host system; and
displaying the portions of the shared application window on the client system indicated as covered on the host system in a manner readable but different from the portions of the shared application window not indicated as covered.
-
-
11. A method for sharing control of a shared application, the method comprising:
-
executing one or more unshared applications in a graphic user interface environment on a client system;
displaying the unshared applications on the client system;
receiving a data packet from a host system, the data packet containing information built from a call to the graphic user interface environment on the host system for displaying the shared application, the shared application selected by a host user using the host system;
displaying the shared application in a shared rectangle on the client system based on information contained in the data packet;
accepting client mouse input events on the client system;
determining if the client mouse input events are for the shared application;
transmitting the client mouse input events determined to be for the shared application to the host system for execution as if the host user had made the mouse inputs on the host system;
receiving a mouse capture indication from the host system if the host system detects a mouse capture event for the shared application;
receiving a mouse release capture indication from the host system if the host system detects a mouse release event for the shared application;
scrolling the shared application in the shared rectangle, if a client cursor is captured, when the client cursor reaches an edge of the shared rectangle;
resizing the shared rectangle, if the client cursor is captured, when the client cursor reaches the edge of the shared rectangle and the shared application in the shared rectangle is fully scrolled in that direction; and
restoring the size of the shared rectangle if the client cursor is released. - View Dependent Claims (12, 13)
displaying a client cursor outside of the shared rectangle and a host cursor inside of the shared rectangle if the client cursor position is outside of the shared rectangle; and
displaying only the client cursor inside of the shared rectangle if the client cursor position is inside of the shared rectangle.
-
-
13. The method of claim 11 further comprising:
-
receiving a covered portion packet from the host system indicating portions of the shared application that are covered by unshared applications on the host system; and
displaying the portions of the shared application on the client system indicated as covered on the host system in a manner readable but different from the portions of the shared application not indicated as covered.
-
-
14. A computer program embodied in a computer-readable medium, the computer program including a process for sharing control of a shared application, the computer program comprising instructions for:
-
executing one or more unshared applications in a graphic user interface environment on a client system;
displaying the unshared applications on the client system;
receiving a data packet from a host system, the data packet containing information built from a call to the graphic user interface environment on the host system for displaying the shared application, the shared application selected by a host user using the host system;
displaying the shared application in a shared rectangle on the client system based on information contained in the data packet;
accepting client mouse input events on the client system;
determining if the client mouse input events are for the shared application;
transmitting the client mouse input events determined to be for the shared application to the host system for execution as if the host user had made the mouse inputs on the host system;
receiving a mouse capture indication from the host system if the host system detects a mouse capture event for the shared application;
receiving a mouse release capture indication from the host system if the host system detects a mouse release event for the shared application;
scrolling the shared application in the shared rectangle, if a client cursor is captured, when the client cursor reaches an edge of the shared rectangle;
resizing the shared rectangle, if the client cursor is captured, when the client cursor reaches the edge of the shared rectangle and the shared application in the shared rectangle is fully scrolled in that direction; and
restoring the size of the shared rectangle if the client cursor is released. - View Dependent Claims (15, 16, 17)
displaying a client cursor outside of the shared rectangle and a host cursor inside of the shared rectangle if the client cursor position is outside of the shared rectangle; and
displaying only the client cursor inside of the shared rectangle if the client cursor position is inside of the shared rectangle.
-
-
16. The computer program of claim 14 further comprising instructions for:
-
receiving a covered portion packet from the host system indicating portions of the shared application window that are covered by unshared applications on the host system; and
displaying the portions of the shared application window on the client system indicated as covered on the host system in a manner readable but different from the portions of the shared application window not indicated as covered.
-
-
17. The computer program of claim 14 wherein the computer-readable media is a computer data signal embodied in a carrier wave.
-
18. A client computer system for sharing control of a shared application, the client computer system executing instructions comprising:
-
executing one or more unshared applications in a graphic user interface environment on a client system;
displaying the unshared applications on the client system;
receiving a data packet from a host system, the data packet containing information built from a call to the graphic user interface environment on the host system for displaying the shared application, the shared application selected by a host user using the host system;
displaying the shared application in a shared rectangle on the client system based on information contained in the data packet;
accepting client mouse input events on the client system;
determining if the client mouse input events are for the shared application;
transmitting the client mouse input events determined to be for the shared application to the host system for execution as if the host user had made the mouse inputs on the host system;
receiving a mouse capture indication from the host system if the host system detects a mouse capture event for the shared application;
receiving a mouse release capture indication from the host system if the host system detects a mouse release event for the shared application;
scrolling the shared application in the shared rectangle, if a client cursor is captured, when the client cursor reaches an edge of the shared rectangle;
resizing the shared rectangle, if the client cursor is captured, when the client cursor reaches the edge of the shared rectangle and the shared application in the shared rectangle is fully scrolled in that direction; and
restoring the size of the shared rectangle if the client cursor is released. - View Dependent Claims (19, 20)
displaying a client cursor outside of the shared rectangle and a host cursor inside of the shared rectangle if the client cursor position is outside of the shared rectangle; and
displaying only the client cursor inside of the shared rectangle if the client cursor position is inside of the shared rectangle.
-
-
20. The client computer system of claim 18 further executing instructions comprising:
-
receiving a covered portion packet from the host system indicating portions of the shared application window that are covered by unshared applications on the host system; and
displaying the portions of the shared application window on the client system indicated as covered on the host system in a manner readable but different from the portions of the shared application window not indicated as covered.
-
Specification