IP Library Granted Patent US 8,555,193
Granted Patent B2
US 8,555,193 · App. 12/321,595 · Granted Oct 8, 2013

System for intelligent automated layout and management of interactive windows

Inventors: Can Sar (Stanford, CA); Jesse Young (Belmont, CA); Tristan Harris (San Francisco, CA)
Assignee: Google Inc.
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 8,555,193
App. No.
12/321,595
Granted
Oct 8, 2013
Kind
B2
Abstract

The present invention relates to the automated layout and scrolling of windows.

Claims (39)

1. A method of transforming an appearance of a display of a computer that includes at least one or a plurality of windows displayed in a scrollable viewport, the method of transforming based upon a user commanding the computer to add a new window or to remove an existing window and comprising the steps of:

providing a layout manager that is executed by a processor of the computer and contains a plurality of instructions to cause the computer to automatically arrange placement of the one or a plurality of windows within a representation of an extensible display area of the scrollable viewport stored in a memory wherein a subset of the representation corresponds to a viewable area corresponding to a visually perceptible viewable area of the display associated with the computer, and an extension area corresponds to a non-viewable area of the representation, wherein the layout manager:

creates a log of the one or the plurality of windows and a scrolled offset of the viewable area, and

monitors which one of the one or the plurality of windows is an active window, such that any portion of the one active window that is within the visually perceptible viewable area is displayed and other ones of the plurality of windows that are not the one active window are displayed as background windows that are spatially oriented around or behind the one active window, wherein some of the background windows have portions within the visually perceptible viewable area that are behind the active window and are occluded and also portions within the visually perceptible viewable area that are around the active window and are not occluded;

in response to the user commanding the computer to add the new window, the layout manager automatically

designating the new window as the active window,

positioning the new window within the representation of the scrollable viewport, wherein one or more locations within the representation are reserved as non-occluding locations where no new windows are placed, wherein the positioned new window does not occlude the reserved locations, and wherein the positioned new window occludes at least portions of one or more windows in locations within the representation that are not reserved as non-occluding, and

automatically scrolling the representation so that a portion of the new window is within the visually perceptible viewable area; and

in response to the user commanding the computer to remove the existing window, the layout manager automatically

determining an immediately previous active window and designating the immediately previous active window as the active window, and automatically scrolling the representation so that a portion of the immediately previous active window is within the visually perceptible viewable area.

2. The method according to claim 1 , further including the step of the layout manager automatically causing an increase in a size of the representation of the extensible display area stored in the memory in response to the user commanding the computer to add the new window.

3. The method according to claim 1 wherein the new window is clustered around the previous active window in response to the user commanding the computer to add the new window so as to minimize scrolling.

4. The method according to claim 3 wherein the new window is opened in a same scrolling direction that is maintained by the layout manager.

5. The method according to claim 3 wherein the new window and the previous active window are oriented to maximize visibility of the new window and the previous active window.

6. The method according to claim 1 wherein the automatically placing by the layout manager comprises:

penalizing, by the layout manager, certain window placements in deciding placement of the new window in response to the user commanding the computer to add the new window.

7. The method according to claim 6 wherein the penalizing user placements weights a plurality of window positions adjacent the active window when deciding the placement of the new window, and selects a new window position based upon a greatest weight attributed to one of the plurality of window positions.

8. The method according to claim 1 wherein the layout manager only performs vertical scrolling when adding the new window and when removing the existing window.

9. The method according to claim 8 wherein the vertical scrolling is performed gradually.

10. The method according to claim 1 wherein the layout manager does not resize any of the plurality of windows when adding the new window and when removing the existing window.

11. The method according to claim 1 wherein the automatic scrolling causes at least some of the plurality of windows that are not the active window to be further moved from the visually perceptible viewable area on the representation.

12. The method according to claim 1 wherein the new window is placed entirely within the visually perceptible viewable area.

13. The method according to claim 1 wherein the immediately previous active window is scrolled to entirely within the visually perceptible viewable area only if the other plurality of windows are not further removed from the visually perceptible area.

14. The method of claim 1 , wherein the representation includes a webpage with one or more reserved locations and one or more not reserved locations for the new window, and

wherein the new window is positioned within the representation to occlude one of the not reserved locations and positioned not to occlude any of the one or more reserved locations.

15. The method of claim 1 , wherein the scrollable viewport is a browser window.

16. The method of claim 1 , wherein the scrollable viewport is an application window.

17. The method of claim 1 , wherein at least one of the reserved locations includes a portion of the representation configured to display an advertisement.

18. A system for transforming an appearance of a display of a computer that includes at least one or a plurality of windows displayed in a scrollable viewport in response to a user command to add a new window or to remove an existing window, the system comprising:

a memory storing a representation of an extensible display area of the scrollable viewport, wherein a subset of the representation corresponds to a viewable area corresponding to a visually perceptible viewable area of the display associated with the computer, and an extension area corresponds to a non-viewable area of the representation;

a processor configured to execute a layout manager causing a placement of the one or a plurality of windows within the representation, wherein the layout manager, upon the execution, is configured to:

create a log of the one or the plurality of windows and a scrolled offset of the viewable area, and

monitor which one of the one or the plurality of windows is an active window, such that any portion of the one active window that is within the visually perceptible viewable area is displayed and other ones of the plurality of windows that are not the one active window are displayed as background windows that are spatially oriented around or behind the one active window, wherein some of the background windows have portions within the visually perceptible viewable area that are behind the active window and are occluded and also portions within the visually perceptible viewable area that are around the active window and are not occluded;

wherein the layout manager, in response to the user command to add the new window, is configured to:

automatically designate the new window as the active window,

positioning the new window within the representation of the scrollable viewport, wherein one or more locations within the representation are reserved as non-occluding locations where no new windows are placed, wherein the positioned new window does not occlude the reserved locations, and wherein the positioned new window occludes at least portions of one or more windows in locations within the representation that are not reserved as non-occluding, and

automatically scroll the representation so that a portion of the new window is within the visually perceptible viewable area; and

wherein the layout manager, in response to the user command to remove the existing window, is configured to:

automatically determine an immediately previous active window and designate the immediately previous active window as the active window, and automatically scroll the representation so that a portion of the immediately previous active window is within the visually perceptible viewable area.

Assignments (3)
CHANGE OF NAME Recorded Oct 2, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044101/0299 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 18, 2012
From: APTURE, INC.
To: GOOGLE INC.
Reel/Frame 027550/0959 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 20, 2009
From: SAR, CAN; YOUNG, JESSE; HARRIS, TRISTAN
To: APTURE, INC.
Reel/Frame 022571/0854 →
Continuity (2)
Provisional Application 61011635 · Jan 17, 2008
Related Publication 20100011316A1 · Jan 14, 2010