IP Library › Granted Patent US 12,293,070
Granted Patent B2
US 12,293,070 · App. 18/485,869 · Granted May 6, 2025

Just-in-time snap layouts

Inventors: Eric Papamarcos (Sammamish, WA); Robert Disano (Seattle, WA); Stacy Carson (Seattle, WA); Albert Yih (Seattle, WA); Benjamin B. Stolovitz (Seattle, WA); Howard Hughes (Port Orchard, WA); Selena Feng (Chicago, IL); Bret Anderson (Seattle, WA)
Assignee: Microsoft Technology Licensing, LLC
G06F3/0486G06F3/0482
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 12,293,070
App. No.
18/485,869
Granted
May 6, 2025
Kind
B2
Abstract

Systems and methods for reconfiguring application windows in a display. An example method includes displaying a first application window and a second application window; receiving a drag input for moving the first application window; based on the drag input entering an invocation region, displaying a layout menu with a plurality of display layouts, each of the display layouts including one or more snap zones; receiving a hover of the first application window over a particular snap zone of a particular display layout of the plurality of display layouts; based on the hover of the first application window over the particular snap zone, displaying a zone-indicator pane corresponding to the particular snap zone; receiving a drop input of the first application window over the particular snap zone; and in response to the drop input, resizing and repositioning the first application window according the particular snap zone.

Claims (56)

1. A system for reconfiguring application windows in a display, the system comprising:

a display;

a processor; and

a computer-readable medium comprising instructions that, when executed by the processor, cause the processor to control the system to perform operations comprising:

displaying, on the display, an application window having a title bar and a content area;

receiving an input selecting the title bar of the application window;

receiving a drag input for moving the application window;

based on the drag input entering an invocation region, displaying a layout menu with a plurality of display layouts, each of the display layouts including one or more snap zones;

receiving a drop input of the application window over a particular snap zone of a particular display layout of the plurality of display layouts; and

in response to the drop input, repositioning the application window according to the particular snap zone.

2. The system of claim 1 , wherein the invocation region is an invocation-threshold distance from a border of the display.

3. The system of claim 1 , wherein the application window is also resized according to the particular snap zone.

4. The system of claim 1 , wherein the operations further comprise:

displaying the repositioned application window;

displaying, concurrently with the application window, a pending-zone indicator corresponding to another snap zone of the particular display layout;

displaying, within the pending-zone indicator, a representation of a second application window;

receiving a selection of the representation of the second application window; and

in response to receiving the selection, displaying the second application window according to the pending-zone indicator.

5. The system of claim 4 , wherein the representation of the second application window includes a display of a title segment including a title of the second application window.

6. The system of claim 1 , wherein the operations further comprise:

accessing display characteristics for the display; and

generating the plurality of display layouts based on the display characteristics.

7. The system of claim 6 , wherein a quantity of display layouts in the plurality of display layouts is based on the display characteristics.

8. The system of claim 6 , wherein arrangements of the one or more snap zones in the plurality of display layouts are based on the display characteristics.

9. The system of claim 6 , wherein the display characteristics include a display orientation.

10. The system of claim 1 , wherein the operations further comprise:

determining application characteristics for an application of the application window; and

generating the plurality of display layouts based on the application characteristics.

11. A method for reconfiguring application windows in a display, the method comprising:

displaying an application window;

receiving a drag input for moving the application window;

based on the drag input entering an invocation region, displaying a layout menu with a plurality of display layouts, each of the display layouts including one or more snap zones;

receiving a hover of the application window over a particular snap zone of a particular display layout of the plurality of display layouts; and

based on the hover of the application window over the particular snap zone, displaying a zone-indicator pane corresponding to the particular snap zone.

12. The method of claim 11 , wherein the invocation region is between a border of the display and an invocation-threshold distance from the border of the display.

13. The method of claim 11 , wherein the invocation region is a region outside a radius threshold from where the drag input begins.

14. The method of claim 11 , further comprising:

accessing display characteristics for the display; and

generating the plurality of display layouts based on the display characteristics.

15. The method of claim 14 , wherein a quantity of display layouts in the plurality of display layouts is based on the display characteristics.

16. The method of claim 14 , further comprising:

receiving a drop input of the application window over the particular snap zone; and

in response to the drop input, resizing and repositioning the application window according the particular snap zone.

17. A method for reconfiguring application windows in a display, the method comprising:

displaying an application window in a desktop extended across multiple displays including a first display and a second display;

receiving a first input for moving the application window into an invocation region of the first display;

based on the first input, displaying a first layout menu with a first plurality of display layouts, each of the display layouts including one or more snap zones, wherein the first plurality of display layouts are based on display characteristics of the first display;

receiving a second input for moving the application window into an invocation region of the second display; and

based on the second input, displaying a second layout menu with a second plurality of display layouts, each of the display layouts including one or more snap zones, wherein the second plurality of display layouts are based on display characteristics of the second display.

18. The method of claim 17 , wherein the first plurality of display layouts are different than the second plurality of display layouts.

19. The method of claim 17 , wherein the first display is smaller than the second display, and the second plurality of display layouts has a larger quantity of display layouts than the first plurality of display layouts.

20. The method of claim 17 , further comprising:

based on a hover of the application window over a particular snap zone of a display layout of the second plurality of display layouts, displaying, in the second display, a zone-indicator pane corresponding to the particular snap zone;

receiving a drop input of the application window over the particular snap zone;

in response to the drop input, resizing and repositioning the application window according to the particular snap zone; and

displaying the resized, repositioned application window in the second display.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2023
From: PAPAMARCOS, ERIC; DISANO, ROBERT; CARSON, STACY; YIH, ALBERT; STOLOVITZ, BENJAMIN B.; HUGHES, HOWARD; FENG, SELENA; ANDERSON, BRET
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 065207/0678 →
Continuity (3)
Continuation 17804806 · May 31, 2022
Provisional Application 63308310 · Feb 9, 2022
Related Publication 20240036722A1 · Feb 1, 2024
References Cited (13)
US 9928230B1 · Jain · 2018 [cited by examiner]
US 11210112B1 · Tan · 2021 [cited by examiner]
US 20100313165A1 · Louch · 2010 [cited by examiner]
US 20120081364A1 · Yamaji · 2012 [cited by examiner]
US 20140089831A1 · Kim et al. · 2014 [cited by applicant]
US 20140096046A1 · Zhong · 2014 [cited by examiner]
US 20160364122A1 · Shimomura · 2016 [cited by examiner]
US 20170329499A1 · Rauschenbach · 2017 [cited by examiner]
US 20180341647A1 · Hiraishi · 2018 [cited by examiner]
US 20240411418A1 · Papamarcos · 2024 [cited by applicant]
Final Office Action mailed on Dec. 29, 2023, in U.S. Appl. No. 17/123,052, 40 pages. [cited by applicant]
Notice of Allowance mailed on May 22, 2024, in U.S. Appl. No. 17/123,052, 15 pages. [cited by applicant]
Communication pursuant to Article 94(3) Received in European Patent Application No. 21827736.6, mailed on Nov. 13, 2024, 6 pages. [cited by applicant]