(12) United States Patent (10) Patent No.: US 7,673,255 B2 Schechter Et Al
Total Page:16
File Type:pdf, Size:1020Kb
USOO7673255B2 (12) United States Patent (10) Patent No.: US 7,673,255 B2 Schechter et al. (45) Date of Patent: Mar. 2, 2010 (54) INTERFACE AND SYSTEM FOR 6,724.403 B1 4/2004 Santoro et al. .............. 71.5/765 MANIPULATING THUMBNALS OF LIVE 7.346,855 B2 * 3/2008 Hellyar et al. .............. 715.783 WINDOWS IN A WINDOWMANAGER 2001/0028368 A1* 10, 2001 Swartz et al. ............... 345,835 (75) Inventors: Greg Schechter, Seattle, WA (US); 2002/0166122 A1* 11/2002 Kikinis et al. ................. 725/56 Jevan Saks, Redmond, WA (US); Chris Fortier, Kirkland, WA (US) (73) Assignee: Microsoft Corporation, Redmond, WA * cited by examiner (US) Primary Examiner William L. Bashore - Assistant Examiner Jordany Nufez (*)c Notice: subsists still (74) Attorney, Agent, or Firm—Birch, Stewart, Kolasch & U.S.C. 154(b) by 0 days. Birch, LLP. (21) Appl. No.: 11/111,983 (57) ABSTRACT (22) Filed: Apr. 22, 2005 The present invention provides an interface, system, or (65) Prior Publication Data method for displaying a window on a display in which a US 2006/02426O2A1 Oct. 26, 2006 thumbnail corresponding to an application window is capable • 1-ys of being modified based on modifications in the application (51) Int. Cl. window. The modifications of the thumbnail may be accom G06F 3/00 (2006.01) plished in real-time. Also, the present invention provides an G06F 3/4 (2006.01) interface, system, and method for displaying a window or a G06F 3/048 (2006.01) thumbnail on a display in which a Desktop Window Manager (52) U.S. Cl. ........................ 715/838; 715/835; 715/783 (DWM) registers a source window and a destination window (58) Field of Classification Search ................. 715/835, and/or may update or modify a thumbnail associated with the 715/838, 783 source window. Special effects may be applied to the thumb See application file for complete search history. nail. The present invention further provides a method for registering and/or modifying a thumbnail and its properties or (56) References Cited maintaining a list of thumbnail registrations. U.S. PATENT DOCUMENTS 5,307,086 A * 4, 1994 Griffin et al. ................ T15/808 29 Claims, 13 Drawing Sheets solitaire ODDDD 410 2. Media Player Calculator U.S. Patent Mar. 2, 2010 Sheet 1 of 13 US 7,673.255 B2 U.S. Patent Mar. 2, 2010 Sheet 2 of 13 US 7,673.255 B2 ?uêu63Sepoopuz ?ueuuô?S?poOpuZ Inter ?uêu60S?pOOpuZ face 1B ?ueuu63SepOOpuZ Inter face 1A U.S. Patent US 7,673.255 B2 ?ueuu63SepoOpuZ U.S. Patent Mar. 2, 2010 Sheet 4 of 13 US 7,673.255 B2 ?ueuu63SepoOis! ?uauu63SepOOpuZ ?uÐUu60S?pOOpuZ face2A U.S. Patent Mar. 2, 2010 Sheet 5 of 13 US 7,673.255 B2 Inter face2B ?uÐUu6?S?pOOpuZ Inter face2A ?ueuu6?S?pOOpuZ U.S. Patent Mar. 2, 2010 Sheet 6 of 13 US 7,673.255 B2 ?ueuoduuOOpuZ LIT(-)Je||duuOO ?uêuoduuOOjs], ?uêuoduuOOpuZ U.S. Patent Mar. 2, 2010 Sheet 8 of 13 US 7,673.255 B2 OZZ U.S. Patent US 7,673.255 B2 /09 ~-_ *• 009 909 U.S. Patent Mar. 2, 2010 Sheet 10 of 13 US 7,673.255 B2 U.S. Patent Mar. 2, 2010 Sheet 11 of 13 US 7,673.255 B2 |E. U.S. Patent Mar. 2, 2010 Sheet 12 of 13 US 7,673.255 B2 009 909 U.S. Patent Mar. 2, 2010 Sheet 13 of 13 US 7,673.255 B2 601 Register Cal to DWM registers 603 process/ID pair 6O7 Unre Re-issue top level gister thumbnail Window instruction Stream 608 US 7,673,255 B2 1. 2 INTERFACE AND SYSTEM FOR nails in a manner to provide flexibility in the display of MANIPULATING THUMBNALS OF LIVE thumbnails and thumbnail content. Also, there is a need in the WINDOWS IN A WINDOWMANAGER art for a programming interface and a method of implement ing the programming interface to effectively manage and FIELD OF THE INVENTION implement application windows and thumbnails and express ing the windows and thumbnails in a flexible fashion. Aspects of the present invention relate to thumbnails of windows and, in particular to an interface and system of SUMMARY OF THE INVENTION manipulation of thumbnails in a window manager. 10 Aspects of the present invention provide an interface, sys BACKGROUND OF THE INVENTION tem, or method for displaying a window on a display thereby addressing one or more issues described above. A dynamic Computer systems display a variety of windows into which thumbnail corresponding to an application window is also users may input data, manipulate data or activate procedures. provided in which modifications of content in an application If running more than one application simultaneously, several 15 window are reflected in the corresponding dynamic thumb windows may be displayed on the computer display, each nail. A modification of content of the application window window corresponding to an application. There may also be may further be reflected in the corresponding dynamic multiple windows for any one application. For example, if a thumbnail in real-time. user is entering text into a word processing program while also working in a spreadsheet program, there may be two BRIEF DESCRIPTION OF THE DRAWINGS windows open on the display. One of the windows is the word processing application window and the second window is the FIG. 1A illustrates an example of a system for implement spreadsheet program window. If the user is additionally view ing the invention which includes a general purpose comput ing a video on a media player application, there will be an ing device in the form of a computer. additional window corresponding to the media player appli 25 FIGS. 1B through 1M show a general-purpose computer cation. As the number of active applications increases, so environment Supporting one or more aspects of the present does the number of windows that are displayed on the com invention. puter display. FIG. 2A is a scene graph or display tree diagram illustrat A user who uses multiple applications simultaneously is ing an example of components of a display. often faced with a multitude of windows on the display caus 30 FIG. 2B demonstrates components of a sample display ing a cluttered desktop leading to confusion and frustration corresponding to FIG. 2A. from the clutter seen on the display. For example, there may FIG. 3A is a scene graph or display tree diagram illustrat be so many overlapping windows on the display that a user ing an example of components of a display of the present might have to waste time finding a desired window each time invention. the user wishes to complete a task in a different application. 35 FIG. 3B demonstrates the display corresponding to FIG. To alleviate this problem, the user may minimize windows or 3A. quit applications altogether in order to decrease clutter (and FIGS. 4A and 4B demonstrate one example of an applica the number of windows on the display). However, if windows tion of the present invention in providing thumbnails of appli are minimized, then the user no longer has immediate access cation windows. to the corresponding application. If an action needs to be 40 FIG. 5 illustrates another application of a thumbnail of the taken in a particular application in which the window has present invention in which thumbnails are displayed in an been minimized, the user must first locate the desired window ALT-TAB menu. and open the desired window after locating the window. This FIG. 6 is a flowchart illustrating an example of a process for process is very time-consuming. Likewise, if the user quits providing thumbnails. the application altogether to clear desktop clutter, then the 45 application is no longer active. In this case, the user must re-launch the application in order to complete the desired task DETAILED DESCRIPTION and waste even more time. Also, if the application performs This document is divided into sections to assist the reader. an ongoing function, that function is lost during the time the These sections include: Overview: General Purpose Com application was not active. 50 puter Environment; Thumbnails. Typically, when an application window is minimized, a It is noted that various connections are set forth between taskbar button may be displayed on a taskbar to indicate that elements in the following description. It is noted that these the application is active. Although the taskbar button may connections in general and, unless specified otherwise, may indicate that the application is active, there is often only an be director indirect and that this specification is not intended icon or a name of the application in the taskbar button. With 55 out additional information, the user would have to open the to be limiting in this respect. window to view the contents of the window. However, by opening and closing the window merely to check the contents Overview of the window (e.g., to ascertain the identity of the window), the user wastes time and effort which causes a loss of effi 60 A. Static Thumbnails ciency and productivity. This problem is compounded when In one approach, a thumbnail may be associated with the the number of active applications and number of windows application. With a thumbnail, a small version of the applica increase as the user must open and close many windows to tion window may be displayed to indicate the original content find the desired window. of the application window, allowing the user to identify Thus, there exists a need in the art for a system and method 65 approximate content of the window. However, these thumb for providing convenient programmatic access to manipulat nails may not provide updated content of the application ing window or application thumbnails and expressing thumb window.