Robust display management in a multiple monitor environment
First Claim
1. In a computer system that includes (a) an operating system with (i) a graphical user interface (GUI), (ii) a user subsystem which together with the GUI provides for managing a plurality of applications, (iii) a graphical device interface for routing GUI information relating to said applications such as a cursor or an application window for display, (iv) first and second device drivers for receiving GUI information routed from the graphical device interface, and (v) a forking display driver interposed between said user subsystem and said graphical display interface on the one hand, and said first and second device drivers on the other, and (b) at least two monitors each having an actual monitor space which, when connected, combine to define a virtual monitor space for displaying GUI information, a method for allocating the display of graphical user information such as a cursor position or an application window, entirely on only one or the other of the two separate actual monitor spaces, the method comprising the steps of:
- dynamically inserting the forking display driver in the event that a second monitor is connected to the system, so that the system does not require re-initialization to use the forking display driver;
comparing a position of the object within said virtual monitor space so as to determine the relationship of said position to each of the actual monitor spaces;
choosing one of the two actual monitor spaces based on the results derived from said comparing step;
displaying the entire object only within the chosen actual monitor space of one of the monitors; and
the forking display driver also dynamically removing itself in the event the second monitor is disconnected from the system.
3 Assignments
0 Petitions
Accused Products
Abstract
A computer system includes an operating system with a graphical user interface (GUI), a user subsystem which together with the GUI provides for managing a plurality of applications, a graphical device interface for routing GUI information relating to the applications, such as a cursor or an application window, first and second device drivers for receiving GUI information routed from the graphical device interface and a forking display driver. The forking display driver is used for implementing a method which allocates the display of the graphical user information such as the cursor position or application window on only one monitor, where two or more monitors arc controlled by the operating system in a manner so as to define a virtual monitor space that is formed by the combined monitor space of each of the separate monitors.
191 Citations
26 Claims
-
1. In a computer system that includes (a) an operating system with (i) a graphical user interface (GUI), (ii) a user subsystem which together with the GUI provides for managing a plurality of applications, (iii) a graphical device interface for routing GUI information relating to said applications such as a cursor or an application window for display, (iv) first and second device drivers for receiving GUI information routed from the graphical device interface, and (v) a forking display driver interposed between said user subsystem and said graphical display interface on the one hand, and said first and second device drivers on the other, and (b) at least two monitors each having an actual monitor space which, when connected, combine to define a virtual monitor space for displaying GUI information, a method for allocating the display of graphical user information such as a cursor position or an application window, entirely on only one or the other of the two separate actual monitor spaces, the method comprising the steps of:
-
dynamically inserting the forking display driver in the event that a second monitor is connected to the system, so that the system does not require re-initialization to use the forking display driver; comparing a position of the object within said virtual monitor space so as to determine the relationship of said position to each of the actual monitor spaces; choosing one of the two actual monitor spaces based on the results derived from said comparing step; displaying the entire object only within the chosen actual monitor space of one of the monitors; and the forking display driver also dynamically removing itself in the event the second monitor is disconnected from the system. - View Dependent Claims (3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
2. In a computer system that includes (a) an operating system with (i) a graphical user interface (GUI), (ii) a user subsystem which together with the GUI provides for managing a plurality of applications, (iii) a graphical device interface for routing GUI information relating to said applications such as a cursor or an application window for display, (iv) first and second device drivers for receiving GUI information routed from the graphical device interface, and (v) a forking display driver interposed between said user subsystem and said graphical display interface on the one hand, and said first and second device drivers on the other, and (b) at least two monitors each having an actual monitor space which is different in size from one another and which, when connected, combine to define a virtual monitor space for displaying GUI information, a method for allocating the display of graphical user information such as a cursor position or an application window, entirely on only one or the other of the two separate actual monitor spaces, the method comprising the steps of:
-
dynamically inserting the forking display driver in the event that a second monitor is connected to the system, so that the system does not require re-initialization to use the forking display driver; comparing a position of the object within said virtual monitor space so as to determine the relationship of said position to each of the actual monitor spaces which are different in size, and determining whether the position of the object is at least partially within a null space that results from the different sizes of the monitors; choosing one of the two actual monitor spaces based on the results derived from said comparing step; displaying the entire object only within the chosen actual monitor space of one of the monitors; and the forking display driver also dynamically removing itself in the event the second monitor is disconnected from the system.
-
-
23. In a computer system that includes (a) an operating system with (i) a graphical user interface (GUI), (ii) a user subsystem which together with the GUI provides for managing a plurality of applications, (iii) a graphical device interface for routing GUI information relating to said applications such as a cursor or an application window for display, (iv) first and second device drivers for receiving GUI information routed from the graphical device interface, and (v) a forking display driver interposed between said user subsystem and said graphical display interface on the one hand, and said first and second device drivers on the other, and (b) at least two monitors each having an actual monitor space which, when connected, combine to define a virtual monitor space for displaying GUI information, a computer program product for implementing on said computer system a method for allocating the display of graphical user information such as a cursor position or an application window, entirely on only one or the other of the two separate actual monitor spaces, the computer program product comprising:
-
a computer readable medium for carrying computer program code means for implementing said method; and wherein said computer program code means comprises; computer program code means for dynamically inserting the forking display driver in the event that a second monitor is connected to the system, so that the system does not require re-initialization to use the forking display driver; computer program code means for comparing a position of the object within said virtual monitor space so as to determine the relationship of said position to each of the actual monitor spaces; computer program code means for choosing one of the two actual monitor spaces based on the results derived from said comparing step; computer program code means for displaying the entire object only within the chosen actual monitor space of one of the monitors; and computer program code means dynamically removing the forking display driver in the event the second monitor is disconnected from the system.
-
-
24. A computer system for allocating the display of graphical user information (GUI) in the form of an object relating to a plurality of applications running on the computer system, such as a cursor position or an application window, entirely on only one or the other of at least two separate monitor spaces, the computer system comprising:
-
an operating system that includes a graphical user interface (GUI) and a user subsystem which together provide for managing a plurality of applications, a graphical device interface for routing GUI information relating to said applications such as a cursor or an application window for display on one of the monitors, and first and second device drivers for receiving GUI information routed from the graphical device interface; at least two monitors, and wherein each monitor includes a monitor space which, when connected, combine to define a virtual monitor space for displaying GUI information; and wherein said operating system comprises a forking display driver interposed between said user subsystem and said graphical display interface on the one hand, and said first and second device drivers on the other, and wherein said forking display driver includes program code means for performing the steps of; dynamically inserting the forking display driver in the event that a second monitor is connected to the system, so that the system does not require re-initialization to use the forking display driver; comparing a position of the object within said virtual monitor space so as to determine the relationship of said position to each of the separate monitor spaces; choosing one of the two monitor spaces based on the results derived from said comparing step; displaying the entire object only within the chosen monitor space; and dynamically removing the forking display driver in the event the second monitor is disconnected from the system.
-
-
25. In a computer system that (a) an operating system with (i) a graphical user interface (GUI), (ii) a user subsystem which together with the GUI provides for managing a plurality of applications, (iii) a graphical device interface for routing GUI information relating to said applications such as a cursor or an application window for display, (iv) first and second device drivers for receiving GUI information routed from the graphical device interface, and (v) a forking display driver interposed between said user subsystem and said graphical display interface on the one hand, and said first and second device drivers on the other, and (b) at least two monitors each having an actual monitor space which is different in size from one another and which, when connected, combine to define a virtual monitor space for displaying GUI information, a computer program product for implementing on said computer system a method for allocating the display of graphical user information such as a cursor position or an application window, entirely on only one or the other of the two separate actual monitor spaces, the computer program product comprising:
-
a computer readable medium for carrying computer program code means for implementing said method; and wherein said computer program code means comprises; computer program code means for dynamically inserting the forking display driver in the event that a second monitor is connected to the system, so that the system does not require re-initialization to use the forking display driver; computer program code means for comparing a position of the object within said virtual monitor space so as to determine the relationship of said position to each of the actual monitor spaces which are different in size, and determining whether the position of the object is at least partially within a null space that results from the different sizes of the monitors; computer program code means for choosing one of the two actual monitor spaces based on the results derived from said comparing step; computer program code means for displaying the entire object only within the chosen actual monitor space of one of the monitors; and computer program code means dynamically removing the forking display driver in the event the second monitor is disconnected from the system.
-
-
26. A computer system for allocating the display of graphical user information (GUI) in the form of an object relating to a plurality of applications running on the computer system, such as a cursor position or an application window, entirely on only one or the other of at least two separate monitor spaces, the computer system comprising:
-
an operating system that includes a graphical user interface (GUI) and a user subsystem which together provide for managing a plurality of applications, a graphical device interface for routing GUI information relating to said applications such as a cursor or an application window for display on one of the monitors, and first and second device drivers for receiving GUI information routed from the graphical device interface; at least two monitors, and wherein each monitor includes a monitor space which is different in size from one another and which, when connected, combine to define a virtual monitor space for displaying GUI information; and wherein said operating system comprises a forking display driver interposed between said user subsystem and said graphical display interface on the one hand, and said first and second device drivers on the other, and wherein said forking display driver includes program code means for performing the steps of; dynamically inserting the forking display driver in the event that a second monitor is connected to the system, so that the system does not require re-initialization to use the forking display driver; comparing a position of the object within said virtual monitor space so as to determine the relationship of said position to each of the separate monitor spaces which are different in size, and determining whether the position of the object is at least partially within a null space that results from the different sizes of the monitors; choosing one of the two monitor spaces based on the results derived from said comparing step; displaying the entire object only within the chosen monitor space; and dynamically removing the forking display driver in the event the second monitor is disconnected from the system.
-
Specification