IP Library › Granted Patent US 11,294,529
Granted Patent B2
US 11,294,529 · App. 13/863,369 · Granted Apr 5, 2022

Application window divider control for window layout management

Inventors: Miron Vranjes (Seattle, WA); Jesse Clay Satterfield (Seattle, WA); Matthew Isaac Worley (Bellevue, WA); Chaitanya Sareen (Seattle, WA); Nils Anders Sundelin (Bothell, WA); Abhishek Malani (Redmond, WA); Alice Steinglass (Bellevue, WA); Robert James Jarrett (Seattle, WA)
Assignee: Microsoft Technology Licensing, LLC
G06F3/048G06F9/451
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,294,529
App. No.
13/863,369
Granted
Apr 5, 2022
Kind
B2
Abstract

An application window divider control is shared by a first application window and a second application window in a user interface. Based on a received directional instruction that moves the application window divider control along an axis of the user interface, placement of the first application window and the second application window may be positioned across a range of consistently spaced points along an axis of the user interface. Placement adjustment can also impact other application windows in the user interface. The application window divider control may also snap to provide “magnetic” points along the axis when certain conditions are satisfied.

Claims (58)

1. A method comprising:

presenting a first application window divider control shared by a first application window of a first application and an empty space of a user interface;

presenting a second application window divider control shared by the empty space and a second application window of a second different application in the user interface;

receiving a directional instruction that moves at least one of the first application window divider control or the second application window divider control to narrow the empty space to a minimum empty space width;

in response to receiving the directional instruction, snapping the first application window divider control and the second application window divider control into a single application window divider control; and

resizing the first application window and the second application window in response to the snapping of the first application window divider control and the second application window divider control into the single application window divider control based on the narrowed empty space.

2. The method of claim 1 wherein a minimum size condition is associated with the first application window and further comprising:

receiving another directional instruction that moves the single application window divider control along an axis of the user interface towards an end point;

in response to receiving the other directional instruction, resizing the first application window; and

in response to the resizing of the first application window satisfying the minimum size condition, removing the first application window from the user interface.

3. The method of claim 1 further comprising:

presenting a third application window of a third different application that does not share the single application window divider control shared by the first application window and the second application window, the third application window being placed between the first application window and an edge of the user interface;

presenting another application window divider control shared by the third application window and the first application window;

receiving another directional instruction that moves the other application window divider control along an axis of the user interface to adjust a size of the third application window;

in response to receiving the other directional instruction, adjusting placement of the first application window to satisfy a minimum size condition of the first application window; and

in response to the placement of the first application window satisfying the minimum size condition, adjusting placement of the third application window.

4. The method of claim 3 wherein another minimum size condition is associated with the third application window and further comprising:

removing the third application window from the user interface when the adjusting placement of the third application window decreases the placement of the third application window to satisfy the other minimum size condition of the third application window.

5. The method of claim 4 wherein the third application window is removed from the user interface with an animation that pushes the third application out of the user interface in the direction of the directional instruction applied to the application window divider control.

6. The method of claim 1 wherein snapping the application window divider control further comprises:

determining a speed of movement associated with the directional instruction that narrows the empty space; and

in response to the determined speed of movement satisfying a speed condition relative to the empty space, snapping the first application window divider control and the second application window divider control into the single application window divider control to satisfy the minimum empty space width.

7. The method of claim 1 wherein the snapping of the first application window divider control and the second application window divider control into the single application window divider control further comprises:

determining a distance associated with the directional instruction that narrows the empty space; and

in response to the determined distance satisfying a distance condition relative to the minimum empty space width, snapping the first application window divider control and the second application window divider control into the single application window divider control.

8. The method of claim 2 wherein the end point is dynamically calculated during the directional instruction.

9. One or more hardware computer memories storing computer-executable instructions for executing on a computer system a computer process, the computer process comprising:

presenting a first application window divider control shared by a first application window of a first application and an empty space of a user interface;

presenting a second application window divider control shared by the empty space and a second application window of a second different application in the user interface;

receiving a directional instruction that moves at least one of the first application window divider control or the second application window divider control to narrow the empty space to a minimum empty space width;

responsive to receiving the directional instruction, snapping the first application window divider control and the second application window divider control into a single application window divider control; and

resizing the first application window and the second application window in response to the snapping of the first application window divider control and the second application window divider control into the single application window divider control based on the narrowed empty space.

10. The one or more hardware computer memories of claim 9 wherein a minimum size condition is associated with the first application window and the computer process further comprises:

receiving another directional instruction that moves the single application window divider control along an axis of the user interface towards an end point;

in response to receiving the other directional instruction, resizing the first application window; and

in response to the resizing of the first application window satisfying the minimum size condition, removing the first application window from the user interface.

11. The one or more hardware computer memories of claim 9 wherein the computer process further comprises:

presenting a third application window of a third different application that does not share the single application window divider control shared by the first application window and the second application window, the third application window being placed between the first application window and an edge of the user interface;

presenting another application window divider control shared by the third application window and the first application window;

receiving another directional instruction that moves the other application window divider control along an axis of the user interface to adjust a size of the third application window;

in response to receiving the other directional instruction, adjusting placement of the first application window to satisfy a minimum size condition of the first application window; and

in response to the placement of the first application window satisfying the minimum size condition, adjusting placement of the third application window.

12. The one or more hardware computer memories of claim 11 wherein another minimum size condition is associated with the third application window and the computer process further comprises:

removing the third application window from the user interface when the adjusting placement of the third application window decreases the placement of the third application window to satisfy the other minimum size condition of the third application window.

13. The one or more hardware computer memories of claim 12 wherein the third application window is removed from the user interface with an animation that pushes the third application out of the user interface in the direction of the directional instruction applied to the application window divider control.

14. The one or more hardware computer memories of claim 9 wherein snapping the application window divider control further comprises:

determining a speed of movement associated with the directional instruction that narrows the empty space; and

in response to the determined speed of movement satisfying a speed condition relative to the empty space, snapping the first application window divider control and the second application window divider control into the single application window divider control to satisfy the minimum empty space width.

15. The one or more hardware computer memories of claim 14 wherein the snapping of the first application window divider control and the second application window divider control into the single application window divider control further comprises:

determining a distance associated with the directional instruction that narrows the empty space; and

in response to the determined distance satisfying a distance condition relative to the minimum empty space width, snapping the first application window divider control and the second application window divider control into the single application window divider control.

16. The one or more hardware computer memories of claim 10 wherein the end point is dynamically calculated during the directional instruction.

17. A system comprising:

a computing device presenting a user interface; and

a window management system of an operating system of the computing device, the window management system including a first application window divider control shared by a first application window of a first application and an empty space of the user interface, and a second application window divider control shared by the empty space and a second application window of a second different application in the user interface, the window management system configured to receive a directional instruction applied to a first application window divider control that moves the first application window divider control along an axis of the user interface to narrow the empty space to a minimum empty space width, in response to receiving the directional instruction, snap the first application window divider control and the second application window divider control into a single application window divider control displayed between the first application window and the second application window, the window management system further configured to resize the first application window and the second application window in response to the snapping of the first application window divider control and the second application window divider control into the single application window divider control based on the narrowed empty space.

18. The system of claim 17 wherein the first application window includes a minimum size condition, the window management system further configured to remove the first application window from the user interface in response to the resized first application window satisfying the minimum size condition.

19. The system of claim 17 wherein the window management system is further configured to present a third application window that does not share the first application window divider control, the third application window being placed between the first application window and an edge of the user interface, and present a second application window divider control between the third application window and the first application window.

20. The system of claim 17 wherein the window management system is further configured to determine a speed associated with the directional instruction, and in response to the determined speed satisfying a speed condition, snap the first application window divider control to the snapping point along the axis.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 9, 2015
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 039025/0454 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 16, 2013
From: VRANJES, MIRON; SATTERFIELD, JESSE CLAY; WORLEY, MATTHEW ISAAC; SAREEN, CHAITANYA; SUNDELIN, NILS ANDERS; MALANI, ABHISHEK; STEINGLASS, ALICE; JARRETT, ROBERT JAMES
To: MICROSOFT CORPORATION
Reel/Frame 030218/0794 →
Continuity (1)
Related Publication 20140310646A1 · Oct 16, 2014