Apple Inc. v. Samsung Electronics Co. Ltd. et al

Filing 1074

Administrative Motion to File Under Seal filed by Samsung Electronics America, Inc.(a New York corporation), Samsung Electronics Co. Ltd., Samsung Telecommunications America, LLC(a Delaware limited liability company). (Attachments: #1 Proposed Order Granting Motion to Seal, #2 Declaration of Trevor Darrell in Support of Samsung's Motion to Strike Expert Testimony Based on Undisclosed Facts and Theories, #3 Exhibit A to Darrell Declaration, #4 Exhibit B to Darrell Declaration, #5 Exhibit C to Darrell Declaration, #6 Exhibit D to Darrell Declaration, #7 Exhibit E to Darrell Declaration)(Maroulis, Victoria) (Filed on 6/8/2012)

Download PDF
EXHIBIT C r r ! V THE C^ITE» WEITES OFAMEKIOi UNITED STATES DEPARTMENT OF COMMERCE United States Patent and Trademark Office April 26, 2011 THIS IS TO CERTIFY THAT ANNEXED HERETO IS A TRUE COPY FROM THE RECORDS OF THIS OFFICE OF: U.S. PATENT: 7,853,891 ISSUE DATE: December 14, 2010 By Authority of the Under Secretary of Commerce for Intellectual Property and Director of the United States PsrfeiH and Trademark Office EXHIBIT N O . l i f t i o - ^ h Andrea Ignacio, CSR 9830 APLNDC00025433 iiiiiiiiiiiiffiiiiiiiiiiii US007853891B2 (i2) United States Patent (io) Patent No.: (54) METHOD A N D APPARATUS FOR DISPLAYING A WINDOW FOR A USER INTERFACE (75) Inventors: Imran Chaudhri, San Francisco, CA (US); Bas Ordlng, San Francisco, CA (US) (73) (* ) Notice: 5,940,517 5,999,191 6,008,809 6,072,489 6,246,407 6,249,826 6,252,595 6,307,545 6,336,131 6,409,603 6,429,883 6,600,500 Assignee: Apple Inc., Cupertino, CA (US) Subject to any disclaimer, the term of this patent is extended or adjusted under 35 U.S.C. 154(b) by 247 days. (21) Filed: Dec. 14,2010 A 8/1999 Shinanda et al. A 12/1999 Frank et al. 12/1999 Brooks A 6/2000 Gough et al. A 6/2001 Wilks et al. B1 B l * 6/2001 6/2001 Birmingham et al, B1 10/2001 Conrad et al. Bl Bl * 1/2002 Wolfe Bl 6/2002 Nishino et al. Bl 8/2002 Plow et al. B l * 7/2003 710/19 ,... 709/203 715/795 Appl.No.: 12/012,384 (22) US 7,853,891 B2 (45) Date of Patent: Chaudhri et al. (Continued) Feb. 1 , 2 0 0 8 (65) Primary Examiner—Tadeese Hailu (74) Attorney, Agent, or Firm—Brian Druce + Quigg LLP Prior Publication Data US 2008/0222554 A1 Sep. 11, 2008 (57) Related U.S. Application Data (63) (51) (52) (58) Continuation of application No. 11/635,847, filed on Dec. 8, 2006, which is a continuation of application No. 10/193,573, filed on Jul. 10, 2002, now Pat. No. 7,343,566. Int. CI. G06F17/00 U.S.CL (2006.01) 715/781; 715/768; 715/788; 715/795; 719/318; 345/629 Field of Classification Search 715/768, 715/781,788,795; 719/318; 345/629 See application file for complete search history. (56) References Cited U.S. PATENT DOCUMENTS 5,191,620 5,333,272 5,831,615 5,838,318 5,892,511 5,929,854 A A A A A A 3/1993 7/1994 11/1998 11/1998 4/1999 7/1999 Lee Capek et al. Drews et al. Porter et al. Gelsinger et al. Ross K. McKnight; Novak ABSTRACT Methods and apparatuses to display windows. In more than one embodiments of the invention, a window is closed automatically (e.g., after a timer expires, or when a condition or criterion is met, or a system input is received) without user input. In some examples, the window is translucent so that the portion of another window, when present, is visible under the window. In some examples, the image of the window is faded out before the window is closed and destroyed. In some examples, the window does not close in response to any input from a user input device. In some examples, the window is repositioned (or hidden) automatically when another translucent window is displayed. The degree of translucency, the speed for fading out, the discrete levels of translucency for fading out, the time to expire, and/or other parameters for controlling the display of the window may be set by the user or adjusted by the system (or application software programs) automatically according to system conditions or other criteria. 75 Claims, 21 Drawing Sheets ©0© Nans ^JVMBOMP» fwswa Date Sin Jfl KB 1:20 P M «/IMO 520 A M CODV provided by USPTO from the P1RS Imaae Database on 04/25/2011 APLNDC00025434 US 7,853,891 B2 !2 U.S. PATENT DOCUMENTS 6,654,036 6,670,970 6,720,982 6,828,989 6,907,447 7,046,254 7,068,266 11/2003 Jones B1 12/2003 Bonuraetal. B1 4/2004 Sakagucii B1 B2* 12/2004 Cortright B1 * 6/2005 Cooperman et al. B2 5/2006 Brownetal. B1 6/2006 Ruelle 715/769 709/203 7,155,729 7,342,594 2002/0191028 2003/0001899 2003/0016253 2003/0043197 2003/0051228 2003/0145060 B1 B1 Al Al Al Al Al Al 12/2006 3/2008 12/2.002 1/2003 1/2003 3/2003 3/2003 7/2003 Andrew et al. Ort et al. Senechalle et al. Partanen et al. Aoki et al. Kremer et al. Martinez et al. Martin * cited by examiner CODV provided by USPTO from the PIRS Imaae Database on 04/25/2011 APLNDC00025435 U.S. Patent Dec. 14,2010 Sheet 1 of 21 US 7,853,891 B2 104 Fig. 1 CODV Drovided bv USJPTO from the PIRS Imaae Database on 04/25/2011 APLNDC00025436 U.S. Patent Dec. 14,2010 Sheet 2 of 21 US 7,853,891 B2 207 209 Fig. 2 P r i • o r• i A r v t v CoDvDrovidedbv USJPTO from the PIRS Imaae Database on 04/25/2011 APLNDC00025437 U.S. Patent Dec. 14,2010 Sheet 3 of 21 US 7,853,891 B2 Fig. 3 Prior Art CODV Drovided bv USJPTO from the PIRS Imaae Database on 04/25/2011 APLNDC00025438 U.S. Patent Dec. 14,2010 Sheet 4 of 21 US 7,853,891 B2 227 J Fig. 4 Prior Art CoDv Drovided bv USJPTO from the PIRS Imaae Database on 04/25/2011 APLNDC00025439 U.S. Patent Dec. 14,2010 Sheet 5 of 21 US 7,853,891 B2 Fig, 5 Prior Art CODV Drovided bv USJPTO from the PIRS Imaae Database on 04/25/2011 APLNDC00025440 U.S. Patent Dec. 14,2010 Sheet 6 of 21 US 7,853,891 B2 Fig. 6 Prior Art CoDv Drovided bv USJPTO from the PIRS Imaae Database on 04/25/2011 APLNDC00025441 U.S. Patent Dec. 14,2010 Sheet 7 of 21 US 7,853,891 B2 I Fig. 7 CoDv Drovided bv USJPTO from the PIRS Imaae Database on 04/25/2011 APLNDC00025442 U.S. Patent Dec. 14,2010 ©0© Folder A Date Name 301 P I Favorite I Video Clips 4/15/02 5:20 AM P I Images Size 3/15/02 1:20 PM ) 303 US 7,853,891 B2 Sheet 8 of 21 3/25/02 10:20 PM \ Temp . . ... 2QtitKJVOOOO y 321 Fig. 8 CoDvDrovidedbvUSJPTO from the PIRS Imaae Database on 04/25/2011 APLNDC00025443 U.S. Patent ©o© Folder A Name 303 US 7,853,891 B2 Sheet 9 of 21 Dec. 14,2010 Size Date 3/15/02 1:20 PM I Favorite \ 301 Video Clips \ P I Images 4/15/02 5:20 AM 3/25/02 10:20 PM • > •* 'ïiTÛ ' :tjiKì 11 Fig. 9 CODvDrovidedbvUSJPTO from the PIRS Imaae Database on 04/25/2011 U.S. Patent Dec. 14,2010 Sheet 10 of 21 US 7,853,891 B2 301 \ 341 Fig. 10 CoDv Drovided bv USJPTO from the PIRS Imaae Database on 04/25/2011 APLNDC00025445 U.S. Patent Dec. 14,2010 ©oe Sheet 11 of 21 Folder A Date Name Favorite 303 301 \ \ Size 3/15/02 1:20 PM f 3 ""] Video Clips 4/15/02 5:20 AM f 3 " ] Images 3/25/02 10:20 PM a ?" 351 I'r fiHrZVfK l'Zïfitf Ili 361 Fig. 11 CODV provided fmaae Database on 04/25/2011 ÄPLNDC00025446 U.S. Patent Dec. 14,2010 Sheet 12 of 21 US 7,853,891 B2 1* Display a user interface window (e.g., a translucent window which when displayed on top of a portion of a second window allows the user to see the portion of the second window through the translucent window) Automatically close the user interface window (e.g., fade out an image of the window and destroy the window) without user input (e.g., after a timer expired, or after a determination that a system status is changed or a condition is met, or after receiving input that is not associated with any user input device) 401 403 Fig. 12 CoDv Drovided bv USJPTO from the PIRS Imaae Database on 04/25/2011 APLNDC00025447 U.S. Patent Dec. 14,2010 Sheet 13 of 21 US 7,853,891 B2 Fig. 13 COpy provided bv USPTO from the PIRS Imaae Databaseon0 4 / 2 5 / 2 0 1 1 APLNDC00025448 U.S. Patent Dec. 14,2010 Sheet 14 of 21 US 7,853,891 B2 Fig. 14 CoDv Drovided bv USJPTO from the PIRS Imaae Database on 04/25/2011 APLNDC00025449 U.S. Patent Dec. 14,2010 I Sheet 15 of 21 US 7,853,891 B2 441 Combine the image of a translucent window and the portion of the image of window under the translucent window to generate a combined image for the translucent window and the window under the translucent window 443 1 Display the combined im age on the screen for the translucent window and the \vindow under the translucent wirwtow yes yes Fig. 15 CoDv Drovided bv USJPTO from the PIRS Imaae Database on 04/25/2011 APLNDC00025450 Fig, 18 CODV provided bv USPTOfrom the PIRS Imaae Database on 04/25/2011 _ _ ^ „ APLNDC00025451 Fig 17 Copy provided bv USPTO from the PIRS Image Database on 04/25/2011 APLNDC00025452 Fig. 18 CODV nrnvided bv USPTO from the PIRS imana PatahaRft nn M19EI9M1 APLNDC00025453 U.S. Patent Dec. 14,2010 Sheet 19 of 21 US 7,853,891 B2 Fig, 19 Copy provided by USPTO from the PIRS Image Database on 04/25/2011 APLNDÒ00025454 U.S. Patent Dec. 14,2010 Sheet 20 of 21 US 7,853,891 B2 Rg, 20 Copy provided by USPTO from the PIRS Image Database on 04/25/2011 L: APLNDC00025455 U.S. Patent Dec. 14,2010 Sheet 21 of 21 US 7,853,891 B2 $01 Fig. 21 Copy provided bv USPTO from the PIRS Imaae Database on 04/25/2011 APLNDC00025456 US 7,853,891 B2 1 The invention relates to graphical user interfaces, and more particularly to such interfaces with windows. A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever. Copyright Apple Computer, Inc., 2002. The progress of the operation is indicated by progress bar 229 and an animation showing that the document is going from one folder to another. Windows 221 and 231 in FIGS. 4 and 5 show two snap shots of the animation. A user may drag title bar 223 (e.g., pressing down and holding a button of a mouse and moving the mouse while holding down the button) to drag the window from one location on a screen to another; and the user can click on the title bar to bring the window to the top level when the window is partially covered by another window (e.g., when window 241 is partially covered by window 243, as shown in FIG. 6). When the copy operation completes, the progress window closes automatically. Traditional windows typically provide strong user interactions, which may cause distractions. For example, a user waits for window 201 to disappear to view window 210 in FIG. 2; the user manipulates a cursor control device (e.g., a mouse, a track ball, or a touch pad) to view or dismiss flash help window 213 in FIG. 3; and, the user interaction is provided to relocate the progress window or change the window displaying hierarchy to see the progress of window 241 in FIG. 6. BACKGROUND OF THE INVENTION SUMMARY OF THE INVENTION METHOD AND APPARATUS FOR DISPLAYING A WINDOW FOR A USER INTERFACE Hie present application is a continuation of co-pending U.S. application Ser. No. 1 y«s,847, filed Dec. 8,2006, which is a continuation of U.S. application Ser. No. 10/193,573, filed Jul. 10, 2002 now U.S. Pat. No. 7,343,566. FIELD OF THE INVENTION Many digital processing systems use window-based graphical user interfaces for users to interact with software programs. Images of windows are displayed on a display device to show the user the states of the software programs; and user input devices (e.g., a keyboard and a mouse) are used to accept user inputs. In addition to user input devices, a digital processing system may have other devices (e.g., sensors) for accepting system inputs, such as phone line status, power supply status, storage disk usage status, communication connection status, execution status of software programs, and others that are not directly related to user inputs (signals associated with user input devices). FIGS. 2-6 illustrate examples of traditional windows. FIG. 2 shows a typical window 210 that has title bar 203 and buttons 205, 207 and 209 for minimizing, maximizing, and closing the window. The title bar and the buttons on the title bar can be used to manipulating the position and size of the window. For example, title bar 203 may be clicked (e.g., pressing a button of a mouse while the cursor is on the title bar) to bring the window to the top level of the window displaying hierarchy so that if there are any other windows displayed at the same location of window 210, these windows will be hidden under window 210. When a user starts an application program, a window (e.g., window 201) may be displayed to show the license/copyright information while the components of the software program are being loaded. After the components of the software program are fully loaded, the license/copyright window is closed automatically so that the user can start to use the software program without interference from the license/copyright window. FIG. 3 shows task bar 211 with flash help window 213. When the user pauses cursor 215 at a location of the task bar for a short period of time, flash help window 213 appears. If the user does not move the cursor for another short period of time while window 213 is displayed, flash window 213 disappears. If the user moves cursor 215 slightly (e.g., using a mouse, a track ball, or a touch pad) and pauses the cursor 215 again, flash help window may appear again. FIGS. 4-6 show a window that displays the progress of copying a file. When a file is copied from one location to another location, window 221 is displayed to indicate the progress. Button 227 is provided for canceling the copy operation; and button 225 is for closing the progress window. Methods and apparatuses to display windows are described 25 here. There are many different embodiments which are described here. Some of these embodiments are summarized in this section. In more than one embodiment of the invention, a window is closed automatically (e.g., after a timer expires, or when a 30 condition or criterion is met, or system input is received) without user input. In some examples, the window is translucent so that the portion of another window, when present, is visible under the window. In some examples, the image of the window is faded out before the window is closed and 35 destroyed. In a further example, the level of translucency, the speed for fading out, the discrete levels of translucency for fading out, the time to expire, and/or other parameters for controlling the display of the window may be set by the user or adjusted by the system (or application software programs) 40 automatically according to system conditions or other criteria. In one embodiment of the invention, a method to display a user interface window for a digital processing system includes: displaying a first window in response to receiving a 45 first input from a user input device (e.g., a keyboard, mouse, trackball, touch pad, touch screen, joy stick, button, or others) of the digital processing system which is capable of displaying at least a portion of a second window under the first window; starting a timer; and closing the first window in 50 response to a determination that the timer expired. The first window does not close in response to any input from a user input device of the digital processing system. In one example according to this embodiment, the first window is translucent; the portion of the second window is visible while under the 55 first window; and the first window is at a top level in a window displaying hierarchy. In one example, an image of the first window is faded out on the screen before the first window is destroyed to close the first window. In one example, the second window, if displayed, closes in response to an input 60 from a user input device of the digital processing system; and the first window does not respond to any input from a user input device of the digital processing system. In one example, the first window is repositioned in response to a third window (e.g., an alert window or a translucent window) being dis65 played; in another example, the first window is hidden in response to a third window being displayed at a location where the first window is displayed. In one example, the first COPV provided by USPTO from the PIRS imaae Database on 04/25/2011 APLNDC00025457 US 7,853,,891 B2 3 window is repositioned on a display in response to a second input for the first window (e.g., an input indicating that a third window is displayed, or an input from a user input device of the digital processing system to reposition the window, such as dragging and dropping the window); and a position of the first window in a window displaying hierarchy can be adjusted in response to a third input (e.g., bringing another window in front of the first window). In one example, the first window is displayed at a position on a display of the digital processing system that is independent of a position of a cursor on the display (e.g., a position centered horizontally on the display); and the timer is restarted in response to receiving a second input for the first window (e.g., from a user input device of the digital processing system). In another embodiment of the invention, a method to display a user interface window for a digital processing system includes: displaying a first translucent window such that if a portion of a second window is displayed on the digital processing system under the first window, the portion of the second window is visible under the first window; and closing the first window without user input. In one example according to this embodiment, a timer is started so that when the timer expires the first window is closed (e.g., fading out an image of the first window and destroy the first window). In another example, the first window is closed in response to an input that is not associated with a user input device of the digital processing system. In a further example, the first window is closed in response to a determination that a system condition is met (e.g., a system status is changed, or other criteria). In a farther embodiment of the invention, a method to display a user interface window for a digital processing system includes: displaying a first window in response to receiving a first input that is not associated with a user input device of the digital processing system; starting a timer; and closing the first window in response to a determination that the timer expired (e.g., fading out an image of the first window; and destroying the first window). In one example, the first window does not close in response to any input from a user input device of the digital processing system (e.g., the first window does not respond to any input from a user input device of the digital processing system); and the first window is translucent such that a portion of a second window is visible when displayed under the first window. In one example, the first window is repositioned on a display without user input (e.g., in response to a third window being displayed). In another example, the timer is restarted in response to receiving a second input for the first window; and the second input is received from a user input device of the digital processing system. The present invention includes apparatuses which perform these methods, including data processing systems which perform these methods and computer readable media which when executed on data processing systems cause the systems to perform these methods. 4 FIGS. 7-11 illustrate example scenarios of displaying a window according to one embodiment of the present invention. FIG. 12 shows a flow diagram of a method to display a 5 window according to one embodiment of the present invention. FIG. 13 shows a flow diagram of a method to close a window according to one embodiment of the present invention. 10 FIG. 14 shows a detailed flow diagram of a method to control a translucent window according to one embodiment of the present invention. FIG. 15 shows a method to display a translucent window according to one embodiment of the present invention. FIGS. 16-21 show example screen images of windows 15 displayed according to one embodiment of the present invention. DETAILED DESCRIPTION 20 The following description and drawings are illustrative of the invention and are not to be construed as limiting the invention. Numerous specific details are described to provide a thorough understanding of the present invention. However, 25 in certain instances, well known or conventional details are not described in order to avoid obscuring the description of the present invention. Many of the methods of the present invention may be performed with a digital processing system, such as a con3 0 ventional, general purpose computer system. Special purpose computers which are designed or programmed to perform only one function may also be used. FIG. 1 shows one example of a typical computer system which may be used with the present invention. Note that while 3 5 FIG. 1 illustrates various components of a computer system, it is not intended to represent any particular architecture or manner of interconnecting the components as such details are not germane to the present invention. It will also be appreciated that network computers and other data processing sys4 0 tems which have fewer components or perhaps more components may also be used with the present invention. The computer system of FIG. 1 may, for example, be an Apple Macintosh computer. As shown in FIG. 1, the computer system 101, which is a 45 form of a data processing system, includes a bus 102 which is coupled to a microprocessor 103 and a ROM 107 and volatile RAM 105 and a non-volatile memory 106. The microprocessor 103, which may be, for example, a G3 or G4 microprocessor from Motorola, Inc. or IBM is coupled to cache 50 memory 104 as shown in the example of FIG. 1. The bus 102 interconnects these various components together and also interconnects these components 103,107,105, and 106 to a display controller and display device 108 and to peripheral devices such as input/output (I/O) devices which may be 55 mice, keyboards, modems, network interfaces, printers, scanOther features of the present invention will be apparent ners, video cameras and other devices which are well known from the accompanying drawings and from the detailed in the art. Typically, the input/output devices 110 are coupled description which follow. to the system through input/output controllers 109. The volatile RAM 105 is typically implemented as dynamic RAM BRIEF DESCRIPTION OF THE DRAWINGS 60 (DRAM) which requires power continual ly in order to refresh or maintain the data in the memory. The non-volatile memory The present invention is illustrated by way of example and 106 is typically a magnetic hard drive or a magnetic optical not limitation in the figures of the accompanying drawings in drive or an optical drive or a DVD RAM or other type of which like references indicate similar elements. memory systems which maintain data even after power is FIG. 1 shows a block diagram example of a data processing 6 5 removed from the system. Typically, the non-volatile memory system which may be used with the present invention. will also be a random access memory although this is not required. While FIG. 1 shows that the non-volatile memory is FIGS. 2-6 illustrate examples of traditional windows. Copy provided by USPTO from the P1RS imacte Database on 04/25/2011 APLNDC00025458 7 8 US 7,8i53,891 B2 a local device coupled directly to the rest of the components in the data processing system, it will be appreciated that the present invention may utilize a non-volatile memory which is remote from the system, such as a network storage device which is coupled to the data processing system through a network interface such as a modem or Ethernet interface. The bus 102 may include one or more buses connected to each other through various bridges, controllers and/or adapters as is well known in the art. In one embodiment the I/O controller 109 includes a USB (Universal Serial Bus) adapter for controlling USB peripherals, and/or an IEEE-1394 bus adapter for controlling IEEE-1394 peripherals. It will be apparent from this description that aspects of the present invention may be embodied, at least in part, in software. That is, the techniques may be carried out in a computer system or other data processing system in response to its processor, such as a microprocessor, executing sequences of instructions contained in a memory, such as ROM 107, volatile RAM 105, non-volatile memory 106, cache 104 or a remote storage device. In various embodiments, hardwired circuitry may be used in combination with software instructions to implement the present invention. Thus, the techniques are not limited to any specific combination of hardware circuitry and software nor to any particular source for the instructions executed by the data processing system. In addition, throughout this description, various functions and operations are described as being performed by or caused by software code to simplify description. However, those skilled in the art will recognize what is meant by such expressions is that the functions result from execution of the code by a processor, such as the microprocessor 103. A machine readable media can be used to store software and data which when executed by a data processing system causes the system to perform various methods of the present invention. This executable software and data may be stored in various places including for example ROM 107, volatile RAM 105, non-volatile memory 106 and/or cache 104 as shown in FIG, 1. Portions of this software and/or data may be stored in any one of these storage devices. Thus, a machine readable media includes any mechanism that provides (i.e., stores and/or transmits) information in a form accessible by a machine (e.g., a computer, network device, personal digital assistant, manufacturing tool, any device with a set of one or more processors, etc.). For example, a machine readable media includes recordable/nonrecordable media (e.g., read only memory (ROM); random access memory (RAM); magnetic disk storage media; optical storage media; flash memory devices; etc.), as well as electrical, optical, acoustical or other forms of propagated signals (e.g., carrier waves, infrared signals, digital signals, etc.); etc. At least one embodiment of the present invention seeks to display a window with reduced distractions so that a user can focus on more important windows. FIGS. 7-11 illustrate example scenarios of displaying a window according to one embodiment of the present invention. Traditional window 303 is shown in FIG. 7. Window 303 contains control buttons 311, 313 and 315 for closing, minimizing and maximizing the window. Window 303 also has title bar 310, which may be used to relocate the window on screen 301. Consider a scenario where the battery power of the system is lower than a threshold. After the system detects such a system status change, window 321 may be displayed near the center of screen 301, as shown in FIG. 8. Window 321 is translucent so that regular window 303 is still visible under window 321. Once window 321 is displayed on the screen, a timer is started to control the closing of the window. When the timer expires, window 321 is automatically closed without 5 io 15 20 25 30 35 40 45 50 55 60 65 any user input. Thus, window 321 displays the message of low battery power to the user without forcing the user to provide inputs to dismiss the message window. Since window 321 is translucent and transient, the portion of window 303 that is under window 321 is still visible. Thus, the user can continue working with window 303 (or other window) without having to provide additional input to get message window 321 out of the way. In one embodiment of the present invention, translucent window 321 is always displayed at the top level of the window displaying hierarchy so that the translucent window is always visible when displayed, This eliminates the need for the user to change the window displaying hierarchy to bring up the translucent window when another traditional window is brought up to the top of the window displaying hierarchy (e.g., by creating a new window or accidentally changing the hierarchy). In another embodiment of the present invention, the user can change the position of the translucent window in the hierarchy so that if the user desires the translucent window may be sent to a background position. In one embodiment of the present invention, the image of window 321 is faded out when the timer expires, which is illustrated by the images of windows 321, 331, and 341 in FIGS. 8,9 and 10. After the image of window 321 is faded out, window 321 is destroyed. In another embodiment of the present invention, a translucent message window starts to fade out when a status change is detected. For example, a message window is displayed when the system detects the ringing signal on a phone line. When the system detects that the ringing signal is no longer present on the phone line, the image of the message window is faded out; and the message window is destroyed. Similarly, a translucent progress window for showing the progress of copying a file can be faded out and destroyed after the copy process ends. In one example, message window 361 as shown in FIG. 11 is displayed whenanew message arrives. When the user starts to open an application to view the new message, message window 361 is closed automatically so that the user does not have to provide input to dismiss the message window or wait for the message window to fade out. In one embodiment of the present invention, the image of window 321 gradually sets in when the window is first displayed. In another embodiment of the present invention, window 321 in FIG. 8 is automatically relocated or moved (e.g., in an animation fashion) to a different location so that the image of window 321 does not obscure the display of any particular portion of windows 303 for an extended period of timed. For example, window 321 may be automatically moved across the screen horizontally from the left hand side of screen 301 to the right hand side of screen 301 (or near the center of screen 321 in a circular motion). In one embodiment of the present invention, the system detects (or manages) all the translucent windows so that when a second translucent window is displayed before the first translucent window is closed, the first translucent window is repositioned so that the second translucent window can be easily seen on the screen without interference with each other. For example, after battery low window 321 is displayed as in FIG. 8, the system may detect a new message arrived for the user. Thus, translucent window 361 is displayed as in FIG. 11 to inform the user about the new message. At the same time, window 351 is automatically moved to a position as seen in FIG. 11 so that both translucent windows 351 and 361 can be easily seen on the screen. Alternatively, the first translucent window (e.g., window 351) is hidden so that only the second window (e.g., window 361) is displayed. The timer of the first window is stopped while being hidden until the second win- Copy provided by USPTO from the PIRS Image Database on 04/27/2011 APLNDC00025459 US 7,8i 53,891 B2 7 8 dow is automatically closed. In a further embodiment of the present invention, the window system tracks the translucent windows to automatically schedule the sequence and the screen positions of the display of the translucent windows according to the importance of the windows, the time to close (or estimated time to close), and/or other conditions. FIGS. 8-11 show an example of translucent windows that are initiated by a system without any input associated with user input devices (e.g., a keyboard, mouse, track ball, touch pad, touch screen, joy stick, button, or other criteria). In one embodiment of the present invention, these translucent windows do not consume any user input; and no user input can be provided to these windows to close these windows, which close automatically when certain conditions are met (e.g., the expiration of a timer, the change in system status, and others). In one alternative embodiment of the present invention, these windows accept predetermined inputs (e.g., special function keys, such as the escape key "ESC" for closing) so that a user has the option to directly control the display of these translucent windows. the art from this description that some methods of the present invention can be implemented for windows that are not translucent. FIG. 12 shows a flow diagram of a method to display a window according to one embodiment of the present invention. Operation 401 displays a user interface window (e.g., a translucent window which when displayed on top of a portion of a second window allows the user to see the portion of the second window through the translucent window); and operation403 automatically closes the user interface window (e.g., fade out an image of the window and destroy the window) without user input (e.g., after a timer expired, or after a determination that a system status is changed or a condition is met, or after receiving input that is not associated with any user input device). FIG. 13 shows a flow diagram of a method to close a window according to one embodiment of the present invention. Operation 411 displays a first window in response to an input (e.g., an input from a user input device, or an input that is not associated with any user input device, such as an input trigged by a system event, a change in system status, ringing signals on a phone line, or inputs initiated by the operating system). Operation 413 starts a timer. Operation 415 closes the first window when the timer expires (e.g., fade out an image of the first window and destroy the first window). FIG. 14 shows a detailed flow diagram of a method to control a translucent window according to one embodiment of the present invention. After operation 421 receives an input (e.g., a user input from a user input device, such as a keyboard, a mouse, a track ball, a touch pad, a touch screen, a joy sticker, a button, or others) from a digital processing system, operation 423 displays a first translucent window on a display device (e.g., a LCD display, a CRT monitor, a touch screen, or others) of the digital processing system (e.g., on top of a portion of a second window), where the first window does not close in response to any input from a user input device of the digital processing system. Operation 425 starts a timer. When operation 427 determines that an input (e.g., a user input or a system input) for the first window is received, operation 431 restarts the timer; and operation 433 processes die input (alternatively, the timer may be stopped and restarted after the input is processed). When operation 429 determines that a second translucent window is displayed, operation 435 repositions (or hides) the first translucent window. When one of a number of translucent windows is closed, the remaining translucent window(s) may be repositioned (or displayed if hidden). Operation 437 closes the first translucent window when the timer expires (e.g., by fading out an image of the first window and destroying the first window). FIG. 15 shows a method to display a translucent window according to one embodiment of the present invention. Operation 441 combines the image of a translucent window and the portion of the image of window under the translucent window to generate a combined image for the translucent window and the window under the translucent window. Operation 443 displays the combined image on the screen for the translucent window and the window under the translucent window. If operation 445 determines that the translucent window is updated or operation 447 determines that the window under the translucent window is updated, operation 441 is performed to update the corresponding portion of the screen image. In a buffered window system, the images of the translucent window and the window under the translucent window are generated separately; and the window system combines the images of the windows to display the translucent window and the window under it. In a non-buffered window system, the translucent window may generate the image of the trans- A user may initiate a translucent window through an input associated with a user input device. For example, a user may use a special function key to adjust volume (or contrast, or brightness). In response to the special function key, a translucent window is displayed to show the current volume level (or contrast, or brightness). In one embodiment of the present invention, the window system (or an application program) automatically determines a location for displaying the translucent volume window (e.g., independent from the location of a cursor on the screen). When the volume window receives an input from the function key for adjust volume, the timer for the translucent volume window is restarted. After the user stops adjusting the volume for a predetermined amount of time, the timer expires; and the volume control window is faded out and closed automatically. In one embodiment of the present invention, the volume window is not translucent. In one embodiment of the present invention, the translucent window initiated by an input associated with a user input device does not close in response to any input from a user input device (e.g., the window does not have a button for closing the window, nor takes a short cut key for closing the window); the window closes only automatically. When the window does not close in response to any input from a user input device, the window may still respond to system inputs, such as a request from the operating system to close the window (e.g., when the user starts to shut down a computer system). In one embodiment of the present invention, a message window initiated by a user only di splays a message to the user without consuming any input from user input devices. 5 io 15 20 25 30 35 40 45 50 In one embodiment of the present invention, when a translucent window accepts user input, the translucent window consumes only predetermined inputs for user input devices; other inputs are forwarded to normal windows as if the translucent window does not exist. For example, if a cursor related 55 event (e.g., a click) is not accepted by the translucent window, the input is considered for the window that is just under the translucent window so that the user can interact with the window under the translucent window as if the translucent window does not exist. If the translucent window does not 60 consume a keyboard input, the keyboard input is forwarded to the window that has the keyboard focus (which is typically indicated by a highlighted title bar). Thus, the presence of the translucent window has minimum distractions for the user working on regular windows. 65 FIGS. 7-11 illustrate one embodiment of the present invention with translucent windows. It is apparent to one skilled in Copy provided by USPTO from the PIRS Image Database on 04/25/2011 APLNDC00025460 US 7,853,891 B2 9 10 lucent window on top of the other window using the image of the window under it. For example, the translucent window obtains the image of the window under it after the window under it draws on the frame buffer; then, the translucent window generates a combined image to update the corresponding portion of the screen. FIGS. 16-21 show example screen images of windows displayed according to one embodiment of the present invention. When a user starts to adjust the volume level (e.g., pressing on a function key for increasing or decreasing volume, or selecting an item from a system control menu with a cursor control device, such as a mouse or a touch pad), translucent volume window 511 appears on screen 501. Since window 511 is translucent, the portion of window 503 under window 511 is still visible. In one embodiment of the present invention, when window 511 is initially loaded, the background of volume window 511 has a high degree of transparency; and the content of window 511 has a low degree of transparency (or no transparency). Therefore, the user can easily see the content of window 511 when the user is supposed to focus on window 511. As the user provides input to adjust the volume level, window 511 remains in a state with a high degree of transparency for the background and a low degree of transparency for the content. For example, when the user decreases the volume level (e.g., pressing a function key, or an array key), the volume level is decreased as indicated by window 521 in FIG. 17. When the user further decreases the volume level to mute the speakers, window 531 changes an icon to indicate that the speakers are muted, as shown in FIG. 18. When the user starts to adjust the brightness of the momtor, translucent brightness window 541 appears, as shown in FIG. 19, while the volume window is hidden (or destroyed, or converted into the brightness window by redrawing the icon and the level bar). If the user stops providing input for the brightness window for an amount of time (e.g., a predetermined amount of time, a randomly selected amount of time, a time period determined according to a system condition or other criteria, a time period calculated on the fly, or a time period specified by a user) window 541 starts to fade away and be destroyed, as shown in FIGS. 20 and 21. In one embodiment of the present invention, when a translucent window starts to fade away, the degree of transparency of the content in the translucent window is increased to allow the user to see better the window under the translucent window, as illustrated by window 551 in FIG. 20. Thus, the degree of transparency of the window can be adjusted during the life cycle of the window to lead the focus point of the user. Further, a user may specify the degree of transparency of the window (e.g., as a preference parameter). The image of die window may fade out smoothly in an animation; or the image of the window may fade out in a number of discrete steps. The degree of translucency, the speed for fading out, the discrete levels of translucency for fading out, the time to expire, and/or other parameters for controlling the display of the window may be set by the user or adjusted by the system (or application software programs) automatically according to system conditions or other criteria. For example, the system (or application programs) may adjust the time to expire according to the number of translucent windows displayed concurrently on the screen; or the system (or an application program) may adjust the initial degree of translucency according to the color pattern at the location where the translucent window is displayed. In the foregoing specification, the invention has been described with reference to specific exemplary embodiments thereof. It will be evident that various modifications may be made thereto without departing from the broader spirit and scope of the invention as set forth in the following claims. The specification and drawings are, accordingly, to be regarded in an illustrative sense rather than a restrictive sense, What is claimed is: 1. A method to display a user interface window for a digital processing system, the method comprising: displaying a first window in response to receiving a first input from a user input device of the digital processing system which is capable of displaying at least a portion of a second window concurrently with the first window on a screen; starting a timer; and closingthe first window in response to a determination that the timer expired; wherein the first window does not close in response to any input from a user input device of the digital processing system, wherein the first window has been displayed independently from a position of a cursor on the screen, 2. A method as in claim 1 wherein the first window is translucent; and the portion of the second window is visible while under the first window. 3. A method as in claim 2 wherein the first window is at a top level in a window displaying hierarchy, 4. A method as in claim 2 wherein a degree of translucency of the first window is adjustable. 5. A method as in claim 1 wherein said closing the first window comprises: fading out an image of the first window. 6. A method as in claim 1 wherein the second window, if displayed, does close in response to an input from auser input device of the digital processing system. 7. A method as in claim 6 wherein the first window does not respond to any input from a user input device of the digital processing system. 8. A method as in claim 1 further comprising; repositioning the first window in response to a third window being displayed, 9. A method as in claim 1 further comprising: hiding the first window in response to a third window being displayed at a location where the first window is displayed. 10. A method as in claim 1 further comprising: repositioning the first window on a display in response to a second input for the first window. 11. A method as in claim 10 wherein the second input indicates that a third window is displayed. 12. A method as in claim 10 wherein the second input is received from a user input device of the digital processing system. 13. A method as in claim 10 further comprising: adjusting a position of the first window in a window displaying hierarchy in response to a third input. 14. A method as in claim 1 further comprising: determining a position on a display of the digital processing system independent of a position of a cursor on the display; wherein the first window is displayed at the position. 15. A method as in claim 14 wherein the position is centered horizontally on the display. 16. A method as in claim 1 further comprising: restarting the timer in response to receiving a second input for the first window. 17. A method as in claim 16 wherein the second input is received from a user input device of the digital processing system. 18. A method as in claim 16 wherein the first window is created by a first application and the second window is cre- 5 io 15 20 25 30 35 40 45 50 55 60 65 Copy provided by USPTO from the PIRS Imaae Database on 04/25/2011 US 7,853,891 B2 11 12 ated by a second application, wherein the first application is 31. A media as in claim 26 wherein the second window, if different from the second application. displayed, does close in response to an input from a user input 19. A method as in claim 1 wherein the user input device is device of the digital processing system, one of: 32. A media as in claim 31 wherein the first window does a) a keyboard; 5 not respond to any input from a user input device of the digital b) a mouse; processing system. c) a track ball; 33. A media as in claim 26 wherein the method further d) a touch pad; comprises: e) a touch screen; repositioning the first window in response to a third winf) a joy stick; and 10 dow being displayed, g) a button. 34. A media as in claim 26 wherein the method further 20. A method to display a user interface window for a comprises: digital processing system, the method comprising: hiding the first window in response to a third window being displaying a first window, the first window being transludisplayed at a location where the first window is discent, at least a portion of a second window being capable 15 played. of being displayed on the digital processing system 35. A media as in claim 26 wherein the method further under the first window, the portion of the second wincomprises: dow, when present, being visible under the first window repositioning the first window on a display in response to a on a screen; and second input for the first window, closing the first window without user input, wherein the 20 36. A media as in claim 35 wherein the second input indifirst window has been displayed independent from a cates that a third window is displayed, position of a cursor on the screen. 37. A media as in claim 35 wherein the second input is 21. A method as in claim 20 further comprising: received from a user input device of the digital processing starting a timer; system. wherein said closing the first window is in response to 25 38. A media as in claim 35 wherein the method further expiration of the timer. comprises: 22. A method as in claim 20 further comprising: adjusting a position of the first window in a window disreceiving an input, the input not associated with a user playing hierarchy in response to a third input. input device of the digital processing system; 39. A media as in claim 26 wherein the method further 30 wherein said closing the first window is in response to the comprises: input. determining a position on a display of the digital process23. A method as in claim 20 further comprising: ing system independent of a position of a cursor on the determining whether or not a condition is met; display; wherein said closing the first window is in response to a wherein the first window is displayed at the position, 35 determination that the condition is met. 40. A media as in claim 39 wherein the position is centered 24. A method as in claim 20 wherein said closing the first horizontally on the display. window comprises: 41, A media as in claim 26 wherein the method further fading out an image of the first window. comprises: 25. A method as in claim 20 wherein a degree of translurestarting the timer in response to receiving a second input cency of the first window is adjustable. for the first window. 26. A machine readable media containing executable com42. A media as in claim 41 wherein the second input is puter program instructions which when executed by a digital received from a user input device of the digital processing processing system cause said system to perform a method to system. display a user interface window, the method comprising: 43. A machine readable media as in claim 41 wherein the 45 displaying a first window in response to receiving a first first window is created by a first application and the second input from a user input device of the digital processing window is created by a second application, wherein the first system which is capable of displaying at least a portion application is different from the second application, of a second window concurrently with the first window 44. A media as in claim 26 wherein the user input device is on a screen; 5 0 one of: starting a timer; and a) a keyboard; closing the first window in response to a determination that b) a mouse; the timer expired; c) a track ball; wherein the first window does not close in response to any d) a touch pad; input from a user input device of the digital processing 5 5 e) a touch screen; system, wherein the first window has been displayed f) a joy stick; and independently from a position of a cursor on the screen. g) a button. 27. A media as in claim 26 wherein the first window is 45. A machine readable media containing executable corntranslucent; and the portion of the second window is visible p u ter program instructions which when executed by a digital while under the first window. 6 0 processing system cause said system to perform a method to 28. A media as in claim 27 wherein the first window is at a display a user interface window, the method comprising: top level in a window displaying hierarchy. displaying a first window, the first window being translu29. A media as in claim 27 wherein a degree of translucent, at least a portion of a second window being capable cency of the first window is adjustable. of being displayed on the digital processing system 30. A media as in claim 26 wherein said closing the first 65 under the first window, the portion of the second winwindow comprises: dow, when present, being visible under the first window fading out an image of the first window. on a screen; and Copy provided by USPTO from the P1RS Image Database on 04/25/2011 APLNDC00025462 US 7,8: >3,891 B2 13 14 closing the first window without user input, wherein the first window has been displayed independent from a position of a cursor on the screen, 46. A media as in claim 45 wherein the méthod further comprises: starting a timer; wherein said closing the first window is in response to expiration of the timer. 47. A media as in claim 45 wherein the method further comprises: receiving an input, the input not associated with a user input device of the digital processing system; wherein said closing the first window is in response to the input. 48. A media as in claim 45 wherein the method further comprises: determining whether or not a condition is met; wherein said closing the first window is in response to a determination that the condition is met. 49. A media as in claim 45 wherein said closing the first window comprises: fading out an image of the first window. 50. A media as in claim 45 wherein a degree of translucency of the first window is adjustable. 51. A digital processing system to display a user interface window, the system comprising: means for displaying a first window in response to receiving a first input from a user input device of the digital processing system which is capable of displaying at least a portion of a second window concurrently with the first window on a screen; means for starting a timer; and means for closing the first window in response to a determination that the timer expired; wherein the first window does not close in response to any input from a user input device of the digital processing system, wherein the first window has been displayed independently from a position of a cursor on the screen, 52. A digital processing system as in claim 51 wherein the first window is translucent; and the portion of the second window is visible while under the first window. 53. A digital processing system as in claim 52 wherein the first window is at a top level in a window displaying hierarchy. 54. A digital processing system as in claim 52 wherein a degree of translucency of the first window is adjustable. 55. A digital processing system as in claim 51 wherein said means for closing the first window comprises: means for fading out an image of the first window. 56. A digital processing system as in claim 51 wherein the second window, if displayed, does close in response to an input from a user input device of the digital processing system. 57. A digital processing system as in claim 56 wherein the first window does not respond to any input from a user input device of the digital processing system. 58. A digital processing system as in claim 51 further comprising: means for repositioning the first window in response to a third window being displayed. 59. A digital processing system as in claim 51 further comprising: means for hiding the first window in response to a third window being displayed at a location where the first window is displayed. 60. A digital processing system as in claim 51 further comprising: means for repositioning the first window on a display in response to a second input for the first window. 61, A digital processing system as in claim 60 wherein the second input indicates that a third window is displayed. 62. A digital processing system as in claim 60 wherein the second input is received from a user input device of the digital processing system. 63. A digital processing system as in claim 60 further comprising: means for adjusting a position of the first window in a window displaying hierarchy in response to a third input. 64. A digital processing system as in claim 51 further comprising: means for determining a position on a display of the digital processing system independent of a position of a cursor on the display; wherein the first window is displayed at the position. 65. A digital processing system as in claim 64 wherein the position is centered horizontally on the display. 66. A digital processing system as in claim 51 further comprising: means for restarting the timer in response to receiving a second input for the first window, 67. A digital processing system as in claim 66 wherein the second input is received from a user input device of the digital processing system. 68. A digital processing system as in claim 66 wherein the first window is created by a first application and the second window is created by a second application, wherein the first application is different from the second application. 69. A digital processing system as in claim 51 wherein the user input device is one of: a) a keyboard; b) a mouse; c) a track ball; d) a touch pad; e) a touch screen; f) a joy stick; and g) a button. 70. A digital processing system to display a user interface window, the system comprising: means for displaying a first window, the first window being translucent, at least a portion of a second window being capable of being displayed on the digital processing system under the first window, the portion of the second window, when present, being visible under the first window on a screen; and means for closing the first window without user input, wherein the first window has been displayed independent from a position of a cursor on the screen. 71. A digital processing system as in claim 70 further comprising: means for starting a timer; wherein the first window is closed in response to expiration of the timer. 72. A digital processing system as in claim 70 further comprising: means for receiving an input, the input not associated with a user input device of the digital processing system; wherein the first window is closed in response to the input. 5 10 i5 20 25 30 35 40 45 so 55 65 Copy provided by USPTO from the PIRS Image Database on 04/25/2011 APLNDC00025463 1 US 7,853,891 B2 15 16 73. A digital processing system as in claim 70 further amprising: 74. A digital processing system as in claim 70 wherein said means for closing the first window comprises: means for fading out an image of the first window. 75. A digital processing system as in claim 70 wherein a degree of translucency of the first window is adjustable. means for determining whether or not a condition is met; wherein the first window is closed in response to a determination that the condition is met. Copy provided by USPTO from the PIRS Image Database on 04/25/2011 APLNDC00025464

Disclaimer: Justia Dockets & Filings provides public litigation records from the federal appellate and district courts. These filings and docket sheets should not be considered findings of fact or liability, nor do they necessarily reflect the view of Justia.


Why Is My Information Online?