# US 2012/0084721 A1 · Window stack modification in response to orientation change

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2012/0084721 A1
- Document ID: US20120084721A1
- Status: Published application
- Kind: A1
- Application number: 13/247,808
- Filed: 2011-09-28
- Published: 2012-04-05
- Earliest claimed: 2010-10-01
- Assignees: Imerj LLC
- Inventors: Martin Gimpl; Paul Edward Reeves; John Steven Visosky
- Web page: https://patentgrep.com/patent/US20120084721A1

## CPC

- G06F 3/0481: based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F 1/16: Constructional details or arrangements
- G06F 1/1616: {with folding flat displays, e.g. laptop computers or notebooks having a clamshell configuration, with body parts pivoting to an open position around an axis parallel to the plane they define in closed position}
- G06F 1/1632: {External expansion units, e.g. docking stations}
- G06F 1/1641: {the display being formed by a plurality of foldable display components (G06F1/1647 takes precedence)}
- G06F 1/1647: {including at least an additional display (G06F1/1692 takes precedence)}
- G06F 1/1677: {for detecting open or closed state or particular intermediate positions assumed by movable parts of the enclosure, e.g. detection of display lid position with respect to main body in a laptop, detection of opening of the cover of battery compartment}
- G06F 1/1694: {the I/O peripheral being a single or a set of motion sensors for pointer control or gesture input obtained by sensing movements of the portable computer}
- G06F 3/017: {Gesture based interaction, e.g. based on a set of recognized hand gestures (interaction based on gestures traced on a digitiser G06F3/04883)}
- G06F 3/0346: with detection of the device orientation or free movement in a three-dimensional [3D] space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
- G06F 3/041: Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
- G06F 3/0412: {Digitisers structurally integrated in a display}
- G06F 3/0416: {Control or interface arrangements specially adapted for digitisers}
- G06F 3/048: Interaction techniques based on graphical user interfaces [GUI]
- G06F 3/04812: Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
- G06F 3/04817: using icons (graphical or visual programming using iconic symbols G06F8/34)
- G06F 3/0482: Interaction with lists of selectable items, e.g. menus
- G06F 3/0483: Interaction with page-structured environments, e.g. book metaphor
- G06F 3/0484: for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F 3/04842: Selection of displayed objects or displayed text elements (G06F3/0482 takes precedence)
- G06F 3/04845: for image manipulation, e.g. dragging, rotation, expansion or change of colour
- G06F 3/04847: Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
- G06F 3/0486: Drag-and-drop
- G06F 3/0488: using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F 3/04883: for inputting data by handwriting, e.g. gesture or text
- G06F 3/04886: by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
- G06F 3/1423: {controlling a plurality of local displays, e.g. CRT and flat panel display}
- G06F 3/1446: {display composed of modules, e.g. video walls}
- G06T 3/02: Affine transformations (for image registration G06T3/147; for image mosaicing G06T3/4038)
- G06T 3/40: Scaling of whole images or parts thereof, e.g. expanding or contracting
- G09G 5/14: Display of multiple viewports
- H04L 12/1827: {Network arrangements for conference optimisation or adaptation}
- G06F 3/044: by capacitive means
- G06F 2200/1614: Image rotation following screen orientation, e.g. switching from landscape to portrait mode
- G06F 2200/1637: Sensing arrangement for detection of housing movement or orientation, e.g. for controlling scrolling or cursor movement on the display of an handheld computer
- G06F 2203/04803: Split screen, i.e. subdividing the display area or the window area into separate subareas
- G09G 2356/00: Detection of the display position w.r.t. other display screens
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G09G: ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION (arrangements for transferring data between digital computers and displays G06F3/14; static indicating arrangements comprising an association of a number of separate sources or light control cells G09F9/00; static indicating arrangements comprising integral associations of a number of light sources H01J, H01K, H10H, H05B33/12; scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission, details thereof H04N1/00)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A multi-screen user device and methods for controlling data displayed thereby are disclosed. Specifically, the control of data displayed by at least one of the multiple screens of the multi-screen user device is conditioned upon the relative orientation of the multiple screens, whether the device orientation is changed from a first state to a second state, and user input received.

## Claims

### Claim 1

A method of modifying a window stack in response to an orientation change of a multi-screen device, the method comprising:
determining that the multi-screen device has rotated from a first orientation to a second orientation;
determining a relative size and orientation of at least one window in a window stack stored on the multi-screen device based on the rotation of the multi-screen device; and
controlling the display of the at least one window stored in the window stack based on the determined relative size and orientation of the at least one window in the window stack.

### Claim 2 (depends on 1)

The method of claim 1, wherein a first screen is determined to be above a second screen.

### Claim 3 (depends on 1)

The method of claim 1, wherein a first screen is determined to be below a second screen.

### Claim 4 (depends on 1)

The method of claim 1, wherein the rotation of the multi-screen device is determined, at least in part, based on data received from an accelerometer.

### Claim 5 (depends on 1)

The method of claim 1, further comprising:
receiving a directional user gesture input on at least one of a first screen and a second screen to control a movement of the at least one window that is adjacent to the at least one of the first screen and second screen, wherein the directional user gesture input has both a direction and length; and
responding to the directional user gesture input with a command that moves the at least one window based, at least in part, on the direction of the directional user gesture input.

### Claim 6 (depends on 5)

The method of claim 5, further comprising moving the at least one window based, at least in part, on the length of the directional user gesture input.

### Claim 7 (depends on 1)

The method of claim 1, wherein the first orientation presents the first screen in a portrait state and the second orientation presents the first screen in a landscape state.

### Claim 8

A non-transitory computer-readable medium having stored thereon instructions that cause a computing system to execute a method, the instructions comprising:
instructions configured to determine that the multi-screen device has rotated from a first orientation to a second orientation;
instructions configured to determine a relative size and orientation of at least one window in a window stack stored on the multi-screen device based on the based on the rotation of the multi-screen device; and
instructions configured to control the display of the at least one window stored in the window stack based on the determined relative size and orientation of the at least one window in the window stack.

### Claim 9 (depends on 8)

The computer-readable medium of claim 8 further comprising:
instructions configured to receive a directional user gesture input on at least one of a first screen and a second screen to control a movement of the at least one window that is adjacent to the at least one of the first screen and second screen, wherein the directional user gesture input has both a direction and length; and
instructions configured to respond to the directional user gesture input with a command that moves the at least one window based, at least in part, on the direction of the directional user gesture input.

### Claim 10 (depends on 8)

The computer-readable medium of claim 8, wherein the window stack is a logical arrangement of active and inactive windows for a multi-screen device.

### Claim 11 (depends on 8)

The computer-readable medium of claim 8, wherein an active window is displayed on at least one of a first screen and a second screen of the multi-screen device.

### Claim 12 (depends on 8)

The computer-readable medium of claim 8, wherein the relative size and orientation of the window stack can be associated with at least one of a first screen and a second screen of the multi-screen device.

### Claim 13 (depends on 8)

The computer-readable medium as defined in claim 8, wherein the window stack is composed of a plurality of stacks and wherein a first screen is associated with a first stack in the plurality of stacks and a second screen is associated with a second stack in the plurality of stacks.

### Claim 14 (depends on 8)

The computer-readable medium of claim 8, wherein a first screen is determined to be above a second screen.

### Claim 15 (depends on 8)

The computer-readable medium of claim 8, wherein a first screen is determined to be below a second screen.

### Claim 16 (depends on 8)

The computer-readable medium of claim 8, wherein the rotation of the multi-screen device is determined, at least in part, based on data received from an accelerometer.

### Claim 17 (depends on 9)

The computer-readable medium of claim 9, further comprising moving the at least one window based, at least in part, on the length of the directional user gesture input.

### Claim 18 (depends on 8)

A multi-screen user device, comprising:
a first screen including a first display area;
a second screen including a second display area;
a user gesture input area configured to receive physical input;
a first sensor configured to produce a first signal indicative of a relative orientation of a first screen to a second screen; and
the computer-readable medium of claim 8.

### Claim 19 (depends on 18)

The device of claim 18, wherein the at least one of the first display area and second display area include the user gesture input area.

### Claim 20 (depends on 18)

The device of claim 18, wherein the first screen is determined to be above the second screen, based at least partially on the first signal.
