← Back to Patent Explorer
US5977973A Expired / Lapsed US ⏱️ 0.0 years remaining

Window linking

Assignee: Microsoft Technology Licensing LLC
•
Filing: 1997-05-14
•
Granted: 1999-11-02
•
Expires: 2017-05-14
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A window linking system is provided that links windows on a video display to reduced window clutter. When two windows are linked, the linked windows combine to form one larger window, known as an aggregate window, that is manipulated as a single window. By linking windows together, fewer individual windows are contained on the workspace of a video display, which reduces window clutter and which allows a user to more easily reorganize their workspace since fewer windows require manipulation. The window linking system implements window linking by using a container. A "container" is a screen object like a window to which another window, called a docking window, can be linked. The window linking system detects when a docking window is attempting to be linked with a container by determining whether the docking window is being dropped at the border of the container. If the docking window is being dropped at the border of the container, the window linking system links the docking window with the container, displaying both the container and the docking window adjacent to each other. After being linked, the linked windows form an aggregate window that is manipulated as a single window. As such, all resizing of the aggregate window, movement of the aggregate window, minimization of the aggregate window, and maximization of the aggregate window is applied to the aggregate window as a whole, including both the container and the docking window.

Inventors

  • 👤 David A. Sobeski
  • 👤 Philippe P. A. Nicolle

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-28 11:32
CPC Classifications
G; G09; G09G; G09G5/00; G09G5/14; G06; G06F; G06F3/00; G06F3/01; G06F3/048; G06F3/0481

Claims Analysis

Total Claims: 50
Claim 1
Independent Claim 117 words
A method in a computer system having a video display for displaying information, comprising the steps of: displaying a plurality of separate windows on the video display, each window having edge, wherein each separate window is manipulated independently of other separate windows; evaluating the relative dimensions of the edges of two of the plurality of separate windows; if the relative dimensions do not conform to a predetermined criterion, resizing at least one of the two of the plurality of windows to conform the dimensions along the edge to the predetermined criterion; and linking the two of the plurality of separate windows at their respective edges to form an aggregate window that is manipulated as a single window.
Claim 2
Independent Claim 117 words
A method in a computer system having a video display for displaying information, comprising the steps of: displaying a plurality of separate windows on the video display, each window having edge, wherein each separate window is manipulated independently of other separate windows; evaluating the relative dimensions of the edges of two of the plurality of separate windows; if the relative dimensions do not conform to a predetermined criterion, resizing at least one of the two of the plurality of windows to conform the dimensions along the edge to the predetermined criterion; and linking the two of the plurality of separate windows at their respective edges to form an aggregate window that is manipulated as a single window.
Claim 3
Dependent Claim 16 words
The method of claim 1 wherein the step of linking is performed responsive to user input.
Claim 4
Dependent Claim 103 words
The method of claim 2, further including the steps of receiving first input indicating that a first of the two separate windows has been selected, receiving second input indicating that the first of the two separate windows has been moved over a second of the two separate windows, and receiving third input indicating that the first of the two separate windows has been dropped on the second of the two separate windows after being moved over the second of the two separate windows, and wherein the step of linking is performed responsive to the dropping of the first of the two separate windows.
Claim 5
Dependent Claim 66 words
The method of claim 3 wherein the second of the two separate windows has a plurality of edges, wherein the step of receiving third input includes dropping the first of the two separate windows at one of the edges and wherein the step of linking includes displaying the first of the two separate windows at the one edge of the second of the two separate windows.
Claim 6
Dependent Claim 42 words
The method of claim 1 wherein the second of the two separate windows covers an area of the video display, and wherein the step of linking includes displaying both the first and the second of the two separate windows within the area.
Claim 7
Dependent Claim 88 words
The method of claim 5 wherein the first of the two separate windows has a size, wherein the second of the two separate windows has a size, and wherein the step of displaying both the first and the second of the two separate windows within the area includes displaying both the first and the second of the two separate windows such that a ratio of the size of the first of the two separate windows to the size of the second of the two separate windows is maintained.
Claim 8
Dependent Claim 32 words
The method of claim 1, further including the step of unlinking the aggregate window to form the two separate windows such that the two separate windows are manipulated independently of each other.
Claim 9
Dependent Claim 26 words
The method of claim 1, further including the step of receiving input to manipulate the aggregate window and manipulating the aggregate window as a single window.
Claim 10
Dependent Claim 36 words
The method of claim 8 wherein the step of receiving input includes the step of receiving input indicating a request to resize the aggregate window and wherein the step of manipulating includes resizing the aggregate window.
Claim 11
Dependent Claim 84 words
The method of claim 9 wherein the aggregate window covers an area of the video display, wherein the first of the two separate windows is located in a first portion of the area, wherein the second of the two separate windows is located in a second portion of the area, and wherein the step of resizing the aggregate window includes resizing the aggregate window such that a ratio of a size of the first portion to a size of the second portion remains constant.
Claim 12
Dependent Claim 36 words
The method of claim 8 wherein the step of receiving input includes the step of receiving input indicating a request to move the aggregate window and wherein the step of manipulating includes moving the aggregate window.
Claim 13
Dependent Claim 33 words
The method of claim 8 wherein the step of receiving input includes receiving input indicating a request to minimize the aggregate window, and wherein the step of manipulating includes minimizing the aggregate window.
Claim 14
Dependent Claim 25 words
The method of claim 12, further including the steps of receiving input indicating a request to maximize the aggregate window, and maximizing the aggregate window.
Claim 15
Dependent Claim 28 words
The method of claim 1 wherein the step of linking includes displaying the first of the two separate windows adjacent to the second of the two separate windows.
Claim 16
Dependent Claim 26 words
The method of claim 14 wherein the step of displaying includes displaying a splitter bar between the first and the second of the two separate windows.
Claim 17
Dependent Claim 25 words
The method of claim 15, further including the steps of receiving input indicating a request to move the splitter bar and moving the splitter bar.
Claim 18
Dependent Claim 24 words
The method of claim 1 wherein the step of displaying includes the step of displaying a third window that contains the two separate windows.
Claim 19
Dependent Claim 19 words
The method of claim 1 wherein the step of linking includes displaying a title bar for the aggregate window.
Claim 20
Dependent Claim 46 words
The method of claim 1, further including the steps of displaying a third separate window and linking the third separate window to the aggregate window such that the first separate window, the second separate window, and the third separate window are manipulated as a single window.
Claim 21
Dependent Claim 191 words
A computer-readable medium containing instructions for controlling a computer system to perform a method, the computer system having a video display for displaying information to a user, the method comprising the steps of: displaying two separate windows on the video display, each window having an edge, wherein in each separate window is manipulated independently of the other separate windows; receiving an indication to move a first of the separate windows; moving the first window in response to receiving the indication; determining when the first window is over a second of the separate windows; receiving an indication that the first window has been dropped when it is determined that the fist window is over the second window; evaluating the relative dimensions of the edges of the first and second windows; if the relative dimensions do not conform to a predetermined criterion, resizing at least one of the windows to conform the dimensions along the edge to the predetermined criterion; and linking the first window and the second window along their respective edges to form an aggregate window such that the first window and the second window are manipulated as a single window.
Claim 22
Dependent Claim 191 words
A computer-readable medium containing instructions for controlling a computer system to perform a method, the computer system having a video display for displaying information to a user, the method comprising the steps of: displaying two separate windows on the video display, each window having an edge, wherein in each separate window is manipulated independently of the other separate windows; receiving an indication to move a first of the separate windows; moving the first window in response to receiving the indication; determining when the first window is over a second of the separate windows; receiving an indication that the first window has been dropped when it is determined that the fist window is over the second window; evaluating the relative dimensions of the edges of the first and second windows; if the relative dimensions do not conform to a predetermined criterion, resizing at least one of the windows to conform the dimensions along the edge to the predetermined criterion; and linking the first window and the second window along their respective edges to form an aggregate window such that the first window and the second window are manipulated as a single window.
Claim 23
Dependent Claim 22 words
The computer-readable medium of claim 20 wherein the step of displaying includes displaying a third window that contains the two separate windows.
Claim 24
Dependent Claim 27 words
The computer-readable medium of claim 20, further including the step of receiving input to manipulate the aggregate window and manipulating the aggregate window as a single window.
Claim 25
Dependent Claim 32 words
The computer-readable medium of claim 22 wherein the step of receiving input includes receiving an indication to resize the aggregate window and wherein the step of manipulating includes resizing the aggregate window.
Claim 26
Dependent Claim 32 words
The computer-readable medium of claim 22 wherein the step of receiving input includes receiving an indication to move the aggregate window and wherein the step of manipulating includes moving the aggregate window.
Claim 27
Dependent Claim 21 words
The computer-readable medium of claim 20 wherein the step of linking includes displaying the first window adjacent to the second window.
Claim 28
Dependent Claim 20 words
The computer-readable medium of claim 20 wherein the step of linking includes displaying a title bar for the aggregate window.
Claim 29
Dependent Claim 24 words
The computer-readable medium of claim 20, further including the step of unlinking the aggregate window to separate the first window and the second window.
Claim 30
Dependent Claim 60 words
The computer-readable medium of claim 27 wherein the first window has a title bar and wherein the step of unlinking the aggregate window includes receiving an unlink indication that the title bar has been selected and is being dragged away from the aggregate window and wherein the unlinking of the aggregate window is responsive to the receiving the unlink indication.
Claim 31
Dependent Claim 46 words
The computer-readable medium of claim 20 wherein the computer system has a plurality of programs and wherein the step of displaying two separate windows includes displaying the first window by a first of the programs and displaying the second window by a second of the programs.
Claim 32
Independent Claim 272 words
A method in a computer system having a video display for displaying information and an application program for displaying plurality of windows on the video display, the method performed by a docking manager of the application program comprising the steps of: displaying windows on the video display that receive messages reflecting user input, each widow having an edge, a plurality of the windows being container windows and a plurality of the windows being docking windows, wherein a docking window is able to be linked to a container window; determining which among the displayed windows are the container windows; determining which among the displayed windows are docking windows; subclassing the container windows and the docking windows such that the docking manager receives messages destined for both the container windows and the docking windows; receiving a message indicating that a docking window is moving; while the docking window is moving; receiving a message indicating that the docking window is located over a container window; and while the docking window is located over the container window, receiving a message indicating that the docking window has been dropped; evaluating the relative dimensions of the edges of the docking and container window; if the relative dimensions do not conform to a predetermined criterion, resizing at least one of the docking and container windows to conform the dimensions along the edge to the predetermined criterion; and linking the docking window to the container window along their respective edges to form an aggregate window such that the aggregate window is manipulated as a single window responsive to the receiving the message indicating that the docking window has been dropped.
Claim 33
Independent Claim 272 words
A method in a computer system having a video display for displaying information and an application program for displaying plurality of windows on the video display, the method performed by a docking manager of the application program comprising the steps of: displaying windows on the video display that receive messages reflecting user input, each widow having an edge, a plurality of the windows being container windows and a plurality of the windows being docking windows, wherein a docking window is able to be linked to a container window; determining which among the displayed windows are the container windows; determining which among the displayed windows are docking windows; subclassing the container windows and the docking windows such that the docking manager receives messages destined for both the container windows and the docking windows; receiving a message indicating that a docking window is moving; while the docking window is moving; receiving a message indicating that the docking window is located over a container window; and while the docking window is located over the container window, receiving a message indicating that the docking window has been dropped; evaluating the relative dimensions of the edges of the docking and container window; if the relative dimensions do not conform to a predetermined criterion, resizing at least one of the docking and container windows to conform the dimensions along the edge to the predetermined criterion; and linking the docking window to the container window along their respective edges to form an aggregate window such that the aggregate window is manipulated as a single window responsive to the receiving the message indicating that the docking window has been dropped.
Claim 34
Dependent Claim 59 words
The method of claim 30 wherein each container window has a plurality of quadrants, wherein the step of receiving a message indicating that the docking window has been dropped includes determining a quadrant on which the docking window has been dropped, and wherein the step of linking the docking window includes displaying the docking window at the determined quadrant.
Claim 35
Dependent Claim 31 words
The method of claim 30, further including the steps of receiving a message indicating a request to resize the aggregate window after linking the docking window, and resizing the aggregate window.
Claim 36
Dependent Claim 33 words
The method of claim 32 wherein the step of receiving a message indicating a request to resize the aggregate window includes drawing a tentative indication of the aggregate window after the resizing occurs.
Claim 37
Dependent Claim 31 words
The method of claim 30, further including the steps of receiving a message indicating a request to move the aggregate window after linking the docking window, and moving the aggregate window.
Claim 38
Dependent Claim 36 words
The method of claim 34 wherein the step of receiving a message indicating a request to move the aggregate window includes drawing a tentative indication of a location of the aggregate window after the moving occurs.
Claim 39
Dependent Claim 18 words
The method of claim 30, further including the step of unlinking the docking window from the container window.
Claim 40
Dependent Claim 30 words
The method of claim 30 wherein the step of displaying windows on the video display includes displaying the windows as part of a parent window that contains the displayed windows.
Claim 41
Dependent Claim 135 words
A computer system, comprising: a video display for displaying information; an input device for receiving input from a user; a memory containing a program for separately displaying two windows, each window having as edge, on the video display, for receiving first input from the user via the input device, for evaluating the relative dimensions of the edges of the two windows, for resizing the edge of at least one of the two windows to conform the dimensions along the edge to a predetermined criterion, for linking the two windows to form an aggregate window in response to receiving the first input, for receiving second input requesting manipulation of the aggregate window, and for manipulating the aggregate window as a single window in response to receiving the second input; and a processor for running the program.
Claim 42
Dependent Claim 135 words
A computer system, comprising: a video display for displaying information; an input device for receiving input from a user; a memory containing a program for separately displaying two windows, each window having as edge, on the video display, for receiving first input from the user via the input device, for evaluating the relative dimensions of the edges of the two windows, for resizing the edge of at least one of the two windows to conform the dimensions along the edge to a predetermined criterion, for linking the two windows to form an aggregate window in response to receiving the first input, for receiving second input requesting manipulation of the aggregate window, and for manipulating the aggregate window as a single window in response to receiving the second input; and a processor for running the program.
Claim 43
Dependent Claim 13 words
The computer system of claim 38 wherein the program is an application program.
Claim 44
Dependent Claim 13 words
The computer system of claim 38 wherein the program is an operating system.
Claim 45
Dependent Claim 22 words
The computer system of claim 38 wherein the program displays the two windows adjacent to each other after linking the two windows.
Claim 46
Dependent Claim 17 words
The computer system of claim 41 wherein the program displays a splitter bar between the two windows.
Claim 47
Dependent Claim 17 words
The computer system of claim 38 wherein the program displays a title bar for the aggregate window.
Claim 48
Dependent Claim 18 words
The computer system of claim 38 wherein the two windows are displayed as part of a parent window.
Claim 49
Dependent Claim 131 words
A computer-readable medium containing instructions for controlling a computer system to perform a method, the computer system having a video display for displaying information, the method comprising the steps of: displaying a plurality of separate windows on the video display, each window having an edge, wherein each separate window is manipulated independently of other separate windows; evaluating the relative dimension of the edges of two of the plurality of separate window; if the relative dimension do not conform to a predetermined criterion, resizing at least one of the two of the plurality of windows to conform the dimensions along the edge to the predetermined criterion; and linking the two of the plurality of separate windows along their respective edges to form an aggregate window that is manipulated as a single window.
Claim 50
Dependent Claim 131 words
A computer-readable medium containing instructions for controlling a computer system to perform a method, the computer system having a video display for displaying information, the method comprising the steps of: displaying a plurality of separate windows on the video display, each window having an edge, wherein each separate window is manipulated independently of other separate windows; evaluating the relative dimension of the edges of two of the plurality of separate window; if the relative dimension do not conform to a predetermined criterion, resizing at least one of the two of the plurality of windows to conform the dimensions along the edge to the predetermined criterion; and linking the two of the plurality of separate windows along their respective edges to form an aggregate window that is manipulated as a single window.

References Cited (Backward Citations)

US5404439A Cited
US5564004A Cited
US5801699A Cited
US5805166A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-11-01 2003-05-03 2003-11-02 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-11-01 2007-05-03 2007-11-02 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-11-01 2011-05-03 2011-11-02 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag