SLEEP STATE FOR HIDDEN WINDOWS
Systems and methods are provides for changing a user interface for a multi-screen device. The user interface can change based on the movement of a window. The system can receive a user interface event that modifies the display of windows in the user interface. Upon receiving the user interface event, the system determines if a window has been covered or uncovered. If a window has been covered, the window is placed in a sleep state. If a window is uncovered, the window is activated from a sleep state. A sleep state is a window state where an application associated with the window does not receive user interface inputs and/or does not render the window.
1 . A computer readable medium, having stored thereon, computer-executable instructions executable by a processor, the computer-executable instructions causing the processor to execute a method for changing a user interface for a device, the computer-executable instructions comprising:
instructions to receive an user interface event;
instructions to determine if a window is covered by the user interface event; and
if a window is covered by the user interface event, instructions to place any covered window into an inactive state.
2 . The computer readable medium as defined in claim 1 , further comprising:
instructions to determine if a window is uncovered by the user interface event; and
if a window is uncovered by the user interface event, instructions to place any uncovered window into an active state.
3 . The computer readable medium as defined in claim 2 , wherein the user interface event is a movement of a window.
4 . The computer readable medium as defined in claim 3 , wherein the new position in the window stack can be associated with at least one of two displays of the dual screen device.
5 . The computer readable medium as defined in claim 1 , further comprising:
instructions to execute a timer; and
instructions to wait until the timer expires before placing a window into an active or inactive state.
6 . The computer readable medium as defined in claim 5 , wherein two or more user interface events occur before the timer expires.
7 . The computer readable medium as defined in claim 5 , further comprising altering a logical data structure in response to placing a window in an inactive or active state.
8 . The computer readable medium as defined in claim 7 , wherein the logical data structure comprises one or more of:
a window identifier adapted to identify the window in relation to other windows in the user interface;
a display identifier adapted to identify which of one or more displays of a multi-screen screen device the window is associated; and
an active indicator adapted to identify whether the window is active or inactive.
9 . The computer readable medium as defined in claim 8 , wherein the active indicator is set when a window is uncovered.
10 . The computer readable medium as defined in claim 9 , wherein the active indicator is eliminated when a window is covered.
11 . A device comprising:
a user interface comprising at least two displays disposed on at least one screen;
a memory;
a processor in communication with the memory and each of the two displays, the processor operable to:
receive an movement of a first window in the user interface, wherein the movement of the first window covers a second window;
determine that the second window was covered by the first window; and
place the second window into an inactive state.
12 . The computer readable medium as defined in claim 11 , wherein the first window is moved from a second display to a first display.
13 . The computer readable medium as defined in claim 12 , wherein the second window was displayed and active on the first display before the first window was moved.
14 . The computer readable medium as defined in claim 13 , wherein the processor is further operable to:
determine that a third window was uncovered by the movement of the first window; and
place the third window into an active state.
15 . The computer readable medium as defined in claim 14 , wherein, after the first window is moved, the third window is displayed and active on the second display.
16 . A method for changing a user interface, the method comprising:
receiving an user interface event, wherein the user event causes at least one of covers a first window or uncovers a second window;
determining that the first window is covered or that the second window is uncovered; and
placing the first window into an inactive state or the second window into an active state.
17 . The method defined in claim 16 , further comprising, in response to placing the first window into the inactive state or placing the second window into an active state, changing a logic data structure associated with one of the first window or the second window.
18 . The method defined in claim 16 , wherein the logic data structure comprises:
a window identifier adapted to identify the window in relation to other windows in the user interface;
a display identifier adapted to identify which of one or more displays of a multi-screen screen device the window is associated; and
an active indicator adapted to identify whether the window is active or inactive.
19 . The method defined in claim 16 , wherein the user interface includes at least one other inactive window.
20 . The method defined in claim 16 , wherein the user event is one of a movement of a window, an opening of a window, revealing a desktop, or closing a window.