`
`(12) United States Patent
`Holecek et al.
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 8,341,541 B2
`Dec. 25, 2012
`
`(54) SYSTEMAND METHOD FOR VISUALLY
`BROWSING OF OPEN WINDOWS
`
`(75) Inventors: Ales Holecek, Bellevue, WA (US);
`Charles W. Stabb, Seattle, WA (US);
`Hist ESEM Stay
`(US); Jeffrey W. Pettiross, Seattle,
`(US); Mark R. Ligameri, Snohomish,
`WA (US); Kanwal VedBrat, Seattle, WA
`(US); Donald J. Lindsay, Mountain
`View, CA (US)
`s
`(73) Assignee: Microsoft Corporation, Redmond, WA
`(US)
`
`(*) Notice:
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 510 days.
`(21) Appl. No.: 11/036,611
`
`(22) Filed:
`
`Jan. 18, 2005
`
`(65)
`
`Prior Publication Data
`US 2006/01 6 1861 A1
`Jul. 20, 2006
`
`(51) Int. Cl.
`(2006.01)
`G6F 3/48
`(52) U.S. Cl. ........ 715/782; 715/757; 715/759; 715/766;
`715/767; 715/781: 715/790; 715/793; 715/794;
`715/796; 715/800; 715/802; 715/836; 715/852
`(58) Field of Classification Search .................. 715/766,
`715/782, 757, 759, 790, 800, 802, 794, 836,
`715/852, 781, 793, 796, 767
`See application file for complete search history.
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`3, 1987 Lucash et al.
`4,651,146 A
`3, 1987 Cheselka et al.
`4,653,020 A
`
`3. Fin ld
`23: A
`OO
`5,463,726 A 10/1995 Price
`5.499,334 A
`3, 1996 Staab
`5,515,494. A *
`5/1996 Lentz ............................ 71.5/797
`5,546,528 A
`8, 1996 Johnston
`5,651,107 A
`7/1997 Frank et al.
`5,668,962 A
`9, 1997 Kitami
`5,754,809 A *
`5/1998 Gandre ......................... 71.5/782
`5,758,110 A
`5/1998 Boss et al.
`5,841,435 A 11/1998 Dauerer et al.
`5,874,960 A
`2/1999 Mairs et al.
`5,880,733 A * 3/1999 Horvitz et al. ................ 715,850
`5,889,517 A
`3, 1999 Ueda
`5,892,511 A * 4/1999 Gelsinger et al. ............. 715,794
`5,898.433 A * 4/1999 Hijikata ........................ 71.5/782
`5,920,316 A
`7/1999 Oran et al.
`5,929,854 A * 7/1999 Ross ............................. 715.783
`(Continued)
`OTHER PUBLICATIONS
`The TaskGallery, http://research.microsoft.com/ui/TaskGallery.
`(Continued)
`Primary Examiner — Doon Chow
`Assistant Examiner — Linh KPham
`(74) Attorney, Agent, or Firm — Shook, Hardy & Bacon
`LLP
`
`ABSTRACT
`(57)
`A method referred to as visual window browsing allows a user
`to browse through windows on their desktop. Aspects of the
`invention include responsive to a command, moving open
`windows to form a visual stack with the topmost window in
`the stack being in focus. Responsive to a browse the windows
`in the visual stack can be browsed, where the topmost window
`moves to the bottom of the visual stack and the other windows
`move higher in the Stack, with the second highest window
`becoming the topmost window and being in focus. Successive
`browse commands causes this behavior to repeat allowing a
`user to cycle through each of the open windows.
`
`20 Claims, 12 Drawing Sheets
`
`
`
`208
`
`201
`
`SAMSUNG
`EXHIBIT 1006 - PAGE 1
`
`
`
`US 8,341,541 B2
`Page 2
`
`
`
`715,794
`715,788
`
`2004/021264.0 A1 10, 2004 Mann et al.
`U.S. PATENT DOCUMENTS
`2004/0255254 A1* 12/2004 Weingartet al. .............. T15,804
`2004/0261038 A1* 12/2004 Ording et al. ................. 715/792
`5,949,432 A
`9/1999 Gough et al.
`ck
`6,008,809 A 12/1999 Brooks
`2004/0261039 A1* 12/2004 Pagan ........................... 71.5/797
`ck
`6,031,530 A * 2/2000 Trueblood .................... 71.5/791
`2005/0022139 A1
`1/2005 Gettman et al. .............. 715,850
`6,040.833 A * 3, 2000 Henshaw
`715,794
`2005/0086612 A1* 4/2005 Gettman et al. .............. T15,848
`w w
`6,043,818. A * 3/2000 Nakano et al. .
`715,851
`2005/009 1597 A1
`4/2005 Ackley
`ck
`6,072,488 A * 6/2000 McFarland.
`715,799
`2005/O125742 A1
`6/2005 Grotjohn et al. .............. 71.5/799
`6,075,531 A * 6/2000 DeStefano .................... 715,788
`2005, 0132299 A1
`6/2005 Jones et al.
`6.108,714. A
`8, 2000 K.
`1
`2005/0188326 A1* 8, 2005 Ikeda ............................ 715,788
`6.160.554 A
`12/2000 Aga et al.
`2005/0204306 A1* 9, 2005 Kawahara et al. ............ 71.5/782
`6.166736 A
`12/2000 H aSC
`2005/0210388 A1
`9, 2005 Matsumoto
`J. ww.
`ugh
`6,184,883 B1* 2/2001 Bates et al.
`2005/0210410 A1
`9, 2005 Ohwa
`71.5/851
`2005/0210416 A1* 9, 2005 MacLaurin etal
`6.215.490 B1 * 4/2001 Kaply ...
`.
`.
`.
`.
`.
`.
`.
`.
`.
`.
`6,229.542 B1* 5, 2001 Miller ........................... 71.5/782
`2005/0223334 A1* 10/2005 Guido et al. .................. 715,794
`4. 4-1
`6,239,798 B1
`5/2001 Ludolph et al.
`2005/0235209 A1 10, 2005 Morita et al.
`6,272.484 B1
`8, 2001 Marti
`1
`2005/0278650 A1* 12/2005 Sims et al. .................... 71.5/778
`4
`4
`artin et al.
`2005/0278654 A1* 12, 2005 S
`715,790
`6,275,227 B1 * 8/2001 DeStefano ................. 369/30.01
`IS ... . . . . . . . . .
`6,313,855 B1 * 1 1/2001 Shuping et al. ............... 71.5/854
`2005/0289482 A1* 12/2005 Anthony et al.
`T15,851
`63.21209 B1
`11/2001 P
`li
`2/2006 Masselle et al.
`2006/0041846 A1
`... 715,793
`- 4 J.
`asquali
`2006, O107229 A1* 5, 2006 Matth
`tal
`71.5/782
`6,344,863 B1* 2/2002 Capelli et al. ................. 715,781
`aWS a
`6.4.11.292 B1* 6, 2002 Cook et al. .................... 345/419
`2006/O123353 A1* 6/2006 Matthews et al. ...
`715/779
`6.429.855 B2
`8, 2002 Pab
`2006/0161861 A1* 7/2006 Holecek et al. ............... 71.5/782
`6429883 B1
`8/2002 E" al
`OTHER PUBLICATIONS
`6,486,895 B1* 11/2002 Robertson et al. ... 71.5/776
`6,549,218 B1
`4/2003 Gershony et al.
`“Project Looking Glass' Sun Microsystems, Nov. 8, 2004, 9 pages,
`6,577.330 B1* 6/2003 Tsuda et al. .................. 71.5/782
`6,590,593 B1* 7/2003 Robertson et al. ............ 71.5/782
`http://www.S. Sun.com/software/looking glass/.
`s
`& 8
`r
`6,590,594 B2
`7/2003 Bates et al.
`Exposé Find the window you need. Now.” Apple-Mac OS
`6,597,358 B2* 7/2003 Miller ........................... 345/427
`X-Features—Exposé, Nov. 2, 2004, 2 pages, http://www.apple.
`6,628,310 B1* 9/2003 Hiura et al. .
`715/776
`com/macoSX/features/expose?.
`6,636,246 B1 * 10/2003 Gallo et al. ................... 715/805
`“Microsoft PowerToys for Windows XP. Features described as “All
`6,686,938 B1
`2/2004 JobS et al.
`Tab Replacement.” date unknown, printed from website, http://www.
`6,710,788 B1* 3/2004 Freach et al. ................. 71.5/778
`microsoft.com/windowSXp/downloads/powertoys/xppowertoys.
`29: R 3. Sigh
`mspx.
`6,781,611 B1
`8/2004 Richard
`IronBytes, AltSwitch, Oct. 2004, Webarchive: http://web.archive.
`715,788
`6,822,662 B1 * 1 1/2004 Cook et al. ..
`org/web/2004 1014013718/www.ironbytes.com/index.html.
`715,234
`6,874,123 B1* 3/2005 DeStefano .
`Shareup. AltSwitchReview, Sep. 2004. http://www.shareup.com/
`715,790
`6,915.489 B2 * 7/2005 Gargi .......
`AltSwitch-download-2 1278.html.
`6,922,815 B2 * 7/2005 Rosen ........................... 71.5/782
`SoftSea, AltSwitchReview, Oct. 2004, http://www.softsea.com/re
`3. R 1939. SG al 1
`view. AltSwitch.html
`6,996,783 B2 * 2/2006 Brown et al. ................. 71.5700
`Mozilla,” printed from Internet on Aug. 12, 2009, http://www.
`7,028,264 B2
`4/2006 Santoro et al.
`mozilla.org/products/firefox/tabbed-browsing.html, 3 pages.
`7,047,500 B2
`5, 2006 Roelofs
`“Opera Software.” printed from Internet on Aug. 12, 2009, http://
`7,069,518 B2 * 6/2006 Card et al. .................... 71.5/776
`www.opera.com/features/index.dml, 8 pages.
`7,103,850 B1* 9/2006 Engstrometal. ...
`715/778
`2.91. R : 1939. St. t al. .
`7:6 “Safari. The fastest browser on the Mac—the best browser on any
`J.
`W.
`OW ca. ......
`latform'. printed from Internet on Aug. 12, 2009. http://www.apple.
`7,159,189 B2 *
`1/2007 Weingartet al. ............ 715/799 strum interneton Aug. 12, 2009. http
`apple
`RE39,610 E *
`5/2007 McFarland .................... 715,794
`T.250.955 B1
`7/2007
`NAS al.
`Shneiderman, Ben, "Treemaps for space-constrained visualization of
`7,296,242 B2 * 1 1/2007 Agata et al. ................... 71.5/793
`hierarchies.” Dec. 26, 1998, (updated May 18, 2004), 10 pages,
`7.386.801 B1* 6/2008 Horvitz et al. ................ 715,764
`printed from the internet on Aug. 12, 2009, http://www.cs.umd.edu/
`7,426,697 B2
`9, 2008 Holecek
`hcil/treemap-history/.
`7,439,975 B2 * 10/2008 Hsu ............................... 345/426
`TDB-ACC-No: NA 930219 Disclosure Tile: Left-Shift and Right
`7,478,326 B2
`1/2009 Holecek
`Shift Buttons for a Standard Window.
`7,506,267 B2 * 3/2009 Baxter et al. .................. 27, Final Office Action for U.S. Appl. No. 11/036,610. Mail Date Jun. 13,
`7,519,907 B2 * 4/2009 Cohen et al. .................. 71.5/723
`2008.
`E. E. S. End
`so
`Final Office Action for U.S. Appl. No. 11/036,614. Mail Date Feb.26,
`7,747,965 B2
`6/2010 Holecek
`2008.
`2001/0028368 A1 10, 2001 Swartz et al.
`Final Office Action for U.S. Appl. No. 11/036,615. Mail Date Aug.
`2001/0035882 A1 1 1/2001 Stoakley et al.
`19, 2008.
`2002/009 1739 A1* 7, 2002 Ferlitsch et al. .............. 707 526
`Non-Final Office Action for U.S. Appl. No. 11/036,612. Mail Date
`2002fO130904 A1
`9, 2002 Becker et al.
`Jun. 24, 2009.
`2002/0171682 A1 11/2002 Frank et al.
`Advisory Action mailed Jun. 9, 2008 re U.S. Appl. No. 11/036,614.
`2003/01 17440 A1* 6/2003 Hellyar et al. ................ 345,767
`Advisory Action mailed Sep. 23, 2008 re U.S. Appl. No. 11/036,612.
`2003. O142108 A1
`7/2003 Brown et al.
`Final Office Action mailed Feb. 7, 2007 re U.S. Appl. No.
`2003. O142109 A1
`7/2003 Brown et al.
`11,036,610
`2003/0.142136 A1* 7/2003 Carter et al. .................. 345,782
`2003. O142138 A1* 7, 2003 Brown et al.
`345,797
`Fallie Action mailed Jul. 10, 2008 re U.S. Appl. No.
`2003. O142140 A1
`7/2003 Brown et al.
`Microsoft Research. “The Task Gallery. Jul. 28, 2005, 3 pg.S. web
`2003/0164862 A1
`9, 2003 Cadiz et al.
`is
`y,
`3 OgS,
`contact dcramicrosoft.com,
`2003/0179237 A1* 9, 2003 Nelson et al. ................. 345/765
`2003/0210270 A1 11, 2003 COW et al.
`Microsoft Windows XP 2002, Microsoft Corp. Professional Version
`2004/0004632 A1* 1/2004 Knight et al. ................. 345,711
`2002, screen shots 1-5—from OA of Jun. 24, 2009.
`2004/0066408 A1
`4/2004 Meyers et al.
`“Mozilla, printed from Interneton Nov. 4, 2004. http://www.mozila.
`2004/0174396 A1
`9, 2004 JobS et al.
`org/products/firefox/tabbed-browsing.html, 3 pages.
`
`-- sys-
`
`a
`
`ca.
`
`SAMSUNG
`EXHIBIT 1006 - PAGE 2
`
`
`
`US 8,341,541 B2
`Page 3
`
`Non-final Office Action mailed Aug. 24, 2006 re U.S. Appl. No.
`11/036,610.
`Non-Final Office Action mailed Jul. 24, 2007 re U.S. Appl. No.
`11/036,614.
`Non-Final Office Action mailed Nov. 1, 2007 re U.S. Appl.
`11/036,610.
`Non-Final Office Action mailed Dec. 11, 2007 re U.S. Appl. No.
`11/036,612.
`Non-Final Office Action mailed Dec. 5, 2008 re U.S. Appl. No.
`11/036,612.
`Notice of Allowance mailed Jul. 9, 2008 re U.S. Appl. No.
`11/036,614.
`Notice of Allowance mailed Nov. 3, 2008 re U.S. Appl. No.
`11/036,610.
`Notice of Allowance mailed Jan. 7, 2010 re U.S. Appl. No.
`11/036,612.
`“New release WinPLOSION V.2”, printed from Internet on Nov. 2,
`2004.
`Notice of Allowance mailed Mar. 3, 2009 re U.S. Appl. No.
`11/036,615.
`Notice of Allowance mailed Aug. 25, 2008 re U.S. Appl. No.
`11/036,610.
`
`Office Action mailed Jun. 24, 2009 re U.S. Appl. No. 11/036,612.
`Project Looking Glass Sun Microsystems, Nov. 8, 2004, 9 pages,
`http://www.S. Sun.com/software/looking glass/.
`“Safari. The fastest browser on the Mac—the best browser on any
`platform”, printed from Internet on Nov. 4, 2004, http://www.apple.
`com/safari?, 3 pages.
`SoftSea, AltSwitchReview, Oct. 2004 (http://www.softsea.com/re
`view/AltSwitch.html).
`T-J Fan, “Left-Shift and Right Shift Buttons for Standard Windows.”
`Jun. 1993, 4pgs, vol. 36, Publication No. 6A, IBM Technical Dis
`closure Bulletin.
`WinGlance, Jul. 2004, http://winglance.usablelabs-com.garchive.
`org/.
`Notice of Allowance in U.S. Appl. No. 11/036,612 mailed Apr. 15,
`2010.
`Office Action in U.S. Appl. No. 11/036,610 mailed Aug. 24, 2006.
`Notice of Allowance in U.S. Appl. No. 11/036,610 mailed Nov. 3,
`2008.
`
`* cited by examiner
`
`SAMSUNG
`EXHIBIT 1006 - PAGE 3
`
`
`
`U.S. Patent
`
`Sheet 1 of 12
`
`US 8,341,541 B2
`
`18! L - ~~99
`
`SETTACJOW
`
`
`
`
`
`
`
`
`
`0Z).
`
`$ |
`
`SAMSUNG
`EXHIBIT 1006 - PAGE 4
`
`
`
`U.S. Patent
`
`US 8,341,541 B2
`
`
`
`
`
`
`
`
`
`
`
`_LNEWSDES ECHOO |S|.
`
`SAMSUNG
`EXHIBIT 1006 - PAGE 5
`
`
`
`U.S. Patent
`
`Dec. 25, 2012
`
`Sheet 3 of 12
`
`US 8,341,541 B2
`
`
`
`
`
`EGIOO CINZ
`
`_LNEWSDES
`
`EC]OO ONZ
`
`_LNEWSDES
`
`·
`
`
`
`·LNEW5) ES ECJOO |S|.
`
`
`
`|NEWS) ES ECJOO CINZ
`
`EGJOO LS |
`
`
`
`
`
`SAMSUNG
`EXHIBIT 1006 - PAGE 6
`
`
`
`U.S. Patent
`
`Dec. 25, 2012
`
`Sheet 4 of 12
`
`US 8,341,541 B2
`
`
`
`_LNEWSDES
`
`EC]OO LS ||
`
`
`
`EGIOO CIR-19
`
`_LNEVNSDES
`
`
`
`EC]OO CINZ
`
`LNEWSDES
`
`TERFACE2B
`N
`
`
`
`
`
`_LNEWSDES ECJOO CINZ
`
`SAMSUNG
`EXHIBIT 1006 - PAGE 7
`
`
`
`U.S. Patent
`
`Dec. 25, 2012
`
`Sheet 5 of 12
`
`US 8,341,541 B2
`
`
`
`
`
`
`
`| NEWSDES EC]OO CJNZ
`
`| || ~
`
`
`
`
`
`| NEWSDES EIGIOO |S|.
`
`TERFACE2B
`N
`
`
`
`
`
`
`
`
`
`|NEWSDES
`
`EGJOO LS|
`
`EC]OO ONZ
`
`|NEWSDES
`
`SAMSUNG
`EXHIBIT 1006 - PAGE 8
`
`
`
`U.S. Patent
`
`Dec. 25, 2012
`
`Sheet 6 of 12
`
`US 8,341,541 B2
`
`eufsafen
`
`
`
`juauodwoy)CNZ
`
`
`
` WESAYNDIA—YAdNWOODLIP(——
`
`LNANOdWODGNZ
`cl2eoepea
`LIacevo,
`
`
`SAMSUNG
`EXHIBIT 1006 - PAGE 9
`
`SAMSUNG
`EXHIBIT 1006 - PAGE 9
`
`
`
`
`
`U.S. Patent
`
`US 8,341,541 B2
`
`ZOZ^_
`
`00Z
`
`
`
`SAMSUNG
`EXHIBIT 1006 - PAGE 10
`
`
`
`U.S. Patent
`
`US 8,341,541 B2
`
`
`
`| enII wopu.M |
`
`
`
`SAMSUNG
`EXHIBIT 1006 - PAGE 11
`
`
`
`U.S. Patent
`U.S. Patent
`
`Dec, 25, 2012
`
`Sheet 9 of 12
`
`US 8,341,541 B2
`US 8,341,541 B2
`
`c0¢c
`
`vOd
`
`
`
`cinsormem@|LyOOosy}
`
`oBumopuM@®{
`
`PALLMOpUIANi
`Bay“opinlt
`.BLmopwinn{
`
`JeOl
`OZ "SO|-
`
`902
`
`ZOZ
`c0Z
`
`cL?
`
`O12
`
`SAMSUNG
`EXHIBIT 1006 - PAGE 12
`
`SAMSUNG
`EXHIBIT 1006 - PAGE 12
`
`
`
`U.S. Patent
`U.S. Patent
`
`Dec. 25, 2012
`
`Sheet 10 of 12
`
`US 8,341,541 B2
`US 8,341,541 B2
`
`LOc
`
`€Sls
`
`902
`
`
`
`aAOAoDeeZe
`
`
`cO0C
`
`CL?e
`
`Ole
`
`802
`
`SAMSUNG
`EXHIBIT 1006 - PAGE 13
`
`SAMSUNG
`EXHIBIT 1006 - PAGE 13
`
`
`
`U.S. Patent
`
`Dec. 25, 2012
`
`Sheet 11 of 12
`
`US 8,341,541 B2
`
`401
`
`402
`
`403
`
`Receive Command to initiate
`visual window browsing
`
`Determine Z-ordering of
`windows for browsing
`
`Display windows in visual
`stack representing Z
`ordering with topmost
`window in focus
`
`
`
`407
`
`405
`
`409
`
`
`
`
`
`
`
`
`
`
`
`Preview Contents of
`specific window?
`
`Reveal additional Content
`for specified window
`
`
`
`
`
`BOWSe to another
`window
`
`
`
`Determine next Window to
`be in focus
`
`41-1
`
`End browsing and move
`windows to their position
`prior to initiating visual
`browsing keeping the same
`window in focus
`
`415
`
`413
`
`Move next Window to be
`in focus to top of stack,
`move window last in focus
`to bottom of Stack and
`move other windows up in
`Stack
`
`FIG. 4
`
`SAMSUNG
`EXHIBIT 1006 - PAGE 14
`
`
`
`U.S. Patent
`
`Dec. 25, 2012
`
`Sheet 12 of 12
`
`US 8,341,541 B2
`
`
`
`201
`
`FIG. 5
`
`SAMSUNG
`EXHIBIT 1006 - PAGE 15
`
`
`
`US 8,341,541 B2
`
`10
`
`15
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`SUMMARY OF THE INVENTION
`
`There is therefore a need for a method to allow users to
`quickly scan through open windows one at a time. According
`to one aspect of the invention, open windows can be presented
`in a visual stack representing a Z-ordering of the windows. In
`response, to a browse command, windows can be navigated
`through where each input causes the window at the top of the
`visual stack to move to the bottom of the stack and the remain
`
`1.
`SYSTEMAND METHOD FOR VISUALLY
`BROWSING OF OPEN WINDOWS
`
`FIELD OF THE INVENTION
`
`Aspects of the present invention are directed generally to
`window arrangements in an operating system. More particu
`larly, aspects of the present invention are directed to a method
`and system for configuring the open windows in a user inter
`face that will allow a user to readily browse multiple win
`dows.
`
`BACKGROUND OF THE INVENTION
`
`As the use of computers in both the workforce and personal
`life has increased, so has the desire to allow for easier use of
`them. Many operating systems today utilize a windows based
`configuration of application programs. Information is dis
`played on a display screen in what appears to be several sheets
`of paper.
`When multiple windows are open at the same time, switch
`ing quickly to the desired window can be difficult. For
`example, the desired window may be partially or fully
`occluded by other open windows. Also, the desired window
`may be minimized or hidden.
`Window selection interfaces have been proposed to mini
`mize the necessity to sort through the various open windows.
`Current versions of the Windows brand operating system by
`Microsoft Corporation include the Alt-Tab key combination,
`Task List and Taskbar, which when selected presents a list of
`open windows in a representation different from the primary
`window. Similar user interfaces exist in MAC OS X brand
`operating system by Apple Computing, Inc. of Cupertino,
`Calif. including Apple-Tab and the Dock in which a list of
`windows in are provided in a representation different from the
`primary window. Each of the aforementioned user interfaces
`restate or reformulate the open windows into a type of list.
`These interfaces however, do not allow the user to view con
`tent of a window without the window being selected.
`Recently, Apple Computing, Inc. introduced Exposé in the
`MAC OS X brand operating system. Exposé provides a user
`with the ability to display all open windows as thumbnails on
`the desktop. In operation, when the user types the F9 key,
`Exposétiles all the open windows. Namely, Exposé scales the
`windows down to a size such that all the open windows are
`displayed in a non-overlapping form. In another aspect,
`Exposé provides a user with the ability to display view all
`open windows in a particular application in a non-overlap
`ping manner. Specifically, when the user types the F10 key,
`Exposé tiles all of the open windows for the current applica
`tionina non-overlapping form while fading to a gray all of the
`open windows associated with other applications.
`While Exposé allows the user to view open windows simul
`taneously, multiple windows are tiled on the screen, which
`can still lead to some confusion. It would be helpful to provide
`an interface which allows a user to Scan quickly through open
`windows, one at a time.
`
`2
`ing windows to move up in the Stack with the window previ
`ously second in the visual stack being in focus. Successive
`browse commands causes this behavior to repeat allowing a
`user to cycle through each of the open windows.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`The foregoing Summary of the invention, as well as the
`following detailed description of illustrative embodiments, is
`better understood when read in conjunction with the accom
`panying drawings, which are included by way of example,
`and not by way of limitation with regard to the claimed
`invention.
`FIG. 1A illustrates a schematic diagram of a general-pur
`pose digital computing environment in which certain aspects
`of the present invention may be implemented;
`FIGS. 1B through 1M show a general-purpose computer
`environment Supporting one or more aspects of the present
`invention;
`FIGS. 2A-2C illustrate a sequence of display screens to
`describe visual window browsing in accordance with at least
`one aspect of the present invention;
`FIG. 3 illustrates a display screen showing visual window
`browsing in accordance with another aspect of the present
`invention; and
`FIG. 4 is a flowchart of an illustrative example of a method
`for performing visual window browsing inaccordance with at
`least one aspect of the present invention.
`FIG. 5 is an illustrative display Screen showing a configu
`ration according to another aspect of the present invention.
`
`DETAILED DESCRIPTION OF ILLUSTRATIVE
`EMBODIMENTS
`
`In the following description of various illustrative embodi
`ments, reference is made to the accompanying drawings,
`which form a part hereof, and in which is shown, by way of
`illustration, various embodiments in which the invention may
`be practiced. It is to be understood that other embodiments
`may be utilized and structural and functional modifications
`may be made without departing from the scope of the present
`invention.
`FIG. 1 illustrates an example of a suitable computing sys
`tem environment 100 on which the invention may be imple
`mented. The computing system environment 100 is only one
`example of a Suitable computing environment and is not
`intended to Suggest any limitation as to the scope of use or
`functionality of the invention. Neither should the computing
`system environment 100 be interpreted as having any depen
`dency nor requirement relating to any one or combination of
`components illustrated in the exemplary computing system
`environment 100.
`The invention is operational with numerous other general
`purpose or special purpose computing system environments
`or configurations. Examples of well known computing sys
`tems, environments, and/or configurations that may be suit
`able for use with the invention include, but are not limited to,
`personal computers, server computers, hand-held or laptop
`devices, multiprocessor systems, microprocessor-based sys
`tems, set top boxes, programmable consumer electronics,
`network PCs, minicomputers, mainframe computers, distrib
`uted computing environments that include any of the above
`systems or devices, and the like.
`The invention may be described in the general context of
`computer-executable instructions, such as program modules,
`being executed by a computer. Generally, program modules
`include routines, programs, objects, components, data struc
`
`SAMSUNG
`EXHIBIT 1006 - PAGE 16
`
`
`
`3
`tures, etc. that perform particular tasks or implement particu
`lar abstract data types. The invention may also be practiced in
`distributed computing environments where tasks are per
`formed by remote processing devices that are linked through
`a communications network. In a distributed computing envi
`ronment, program modules may be located in both local and
`remote computer storage media including memory storage
`devices.
`With reference to FIG. 1A, an exemplary system for imple
`10
`menting the invention includes a general-purpose computing
`device in the form of a computer 110. Components of com
`puter 110 may include, but are not limited to, a processing
`unit 120, a system memory 130, and a system bus 121 that
`couples various system components including the system
`memory to the processing unit 120. The system bus 121 may
`be any of several types of bus structures including a memory
`bus or memory controller, a peripheral bus, and a local bus
`using any of a variety of bus architectures. By way of
`example, and not limitation, Such architectures include Indus
`try Standard Architecture (ISA) bus, Micro Channel Archi
`tecture (MCA) bus, Enhanced ISA (EISA) bus, Video Elec
`tronics Standards Association (VESA) local bus, and
`Peripheral Component Interconnect (PCI) bus also known as
`Mezzanine bus.
`Computer 110 typically includes a variety of computer
`readable media. Computer readable media can be any avail
`able media that can be accessed by computer 110 and includes
`both volatile and nonvolatile media, removable and non-re
`30
`movable media. By way of example, and not limitation, com
`puter readable media may comprise computer storage media
`and communication media. Computer storage media includes
`volatile and nonvolatile, removable and non-removable
`media implemented in any method or technology for storage
`of information Such as computer readable instructions, data
`structures, program modules or other data. Computer storage
`media includes, but is not limited to, random access memory
`(RAM), read only memory (ROM), electronically erasable
`programmable read only memory (EEPROM), flash memory
`or other memory technology, CD-ROM, digital versatile
`disks (DVD) or other optical disk storage, magnetic cassettes,
`magnetic tape, magnetic disk storage or other magnetic Stor
`age devices, or any other medium which can be used to store
`the desired information and which can accessed by computer
`110. Communication media typically embodies computer
`readable instructions, data structures, program modules or
`other data in a modulated data signal Such as a carrier wave or
`other transport mechanism and includes any information
`delivery media. The term “modulated data signal means a
`signal that has one or more of its characteristics set or changed
`in Such a manner as to encode information in the signal. By
`way of example, and not limitation, communication media
`includes wired media such as a wired network or direct-wired
`connection, and wireless media Such as acoustic, RF, infrared
`and other wireless media. Combinations of the any of the
`above should also be included within the scope of computer
`readable media.
`The system memory 130 includes computer storage media
`in the form of volatile and/or nonvolatile memory such as
`ROM 131 and RAM 132. A basic input/output system 133
`(BIOS), containing the basic routines that help to transfer
`information between elements within computer 110, such as
`during start-up, is typically stored in ROM 131. RAM 132
`typically contains data and/or program modules that are
`immediately accessible to and/or presently being operated on
`by processing unit 120. By way of example, and not limita
`
`50
`
`35
`
`40
`
`45
`
`55
`
`60
`
`65
`
`US 8,341,541 B2
`
`15
`
`25
`
`4
`tion, FIG. 1A illustrates operating system 134, application
`programs 135, other program modules 136, and program data
`137.
`The computer 110 may also include other removable/non
`removable, Volatile/nonvolatile computer storage media. By
`way of example only, FIG. 1A illustrates a hard disk drive 141
`that reads from or writes to non-removable, nonvolatile mag
`netic media, a magnetic disk drive 151 that reads from or
`writes to a removable, nonvolatile magnetic disk 152, and an
`optical disc drive 155that reads from or writes to a removable,
`nonvolatile optical disc 156 such as a CD ROM or other
`optical media. Other removable/non-removable, volatile/
`nonvolatile computer storage media that can be used in the
`exemplary operating environment include, but are not limited
`to, magnetic tape cassettes, flash memory cards, digital ver
`satile disks, digital video tape, solid state RAM, solid state
`ROM, and the like. The hard disk drive 141 is typically
`connected to the system bus 121 through a non-removable
`memory interface Such as interface 140, and magnetic disk
`drive 151 and optical disc drive 155 are typically connected to
`the system bus 121 by a removable memory interface, such as
`interface 150.
`The drives and their associated computer storage media
`discussed above and illustrated in FIG.1A, provide storage of
`computer readable instructions, data structures, program
`modules and other data for the computer 110. In FIG. 1A, for
`example, hard disk drive 141 is illustrated as storing operating
`system 144, application programs 145, other program mod
`ules 146, and program data 147. Note that these components
`can either be the same as or different from operating system
`134, application programs 135, other program modules 136,
`and program data 137. Operating system 144, application
`programs 145, other program modules 146, and program data
`147 are given different numbers here to illustrate that, at a
`minimum, they are different copies. A user may enter com
`mands and information into the computer 110 through input
`devices Such as a digital camera 163, a keyboard 162, and
`pointing device 161, commonly referred to as a mouse, track
`ball or touch pad. Other input devices (not shown) may
`include a pen, stylus and tablet, microphone, joystick, game
`pad, satellite dish, Scanner, or the like. These and other input
`devices are often connected to the processing unit 120
`through a user input interface 160 that is coupled to the
`system bus 121, but may be connected by other interface and
`bus structures. Such as a parallel port, game port or a universal
`serial bus (USB). A monitor 191 or other type of display
`device is also connected to the system bus 121 via an inter
`face, such as a video interface 190. In addition to the monitor,
`computers may also include other peripheral output devices
`such as speakers 197 and printer 196, which may be con
`nected through an output peripheral interface 195.
`The computer 110 may operate in a networked environ
`ment using logical connections to one or more remote com
`puters, such as a remote computer 180. The remote computer
`180 may be a personal computer, a server, a router, a network
`PC, a peer device or other common network node, and typi
`cally includes many or all of the elements described above
`relative to the computer 110, although only a memory storage
`device 181 has been illustrated in FIG. 1A. The logical con
`nections depicted in FIG. 1A include a local area network
`(LAN) 171 and a wide area network (WAN) 173, but may also
`include other networks. Such networking environments are
`commonplace in offices, enterprise-wide computer networks,
`intranets and the Internet.
`When used in a LAN networking environment, the com
`puter 110 is connected to the LAN 171 through a network
`interface or adapter 170. When used in a WAN networking
`
`SAMSUNG
`EXHIBIT 1006 - PAGE 17
`
`
`
`5
`environment, the computer 110 typically includes a modem
`172 or other means for establishing communications over the
`WAN 173, such as the Internet. The modem 172, which may
`be internal or external, may be connected to the system bus
`121 via the user input interface 160, or other appropriate
`mechanism. In a networked environment, program modules
`depicted relative to the computer 110, or portions thereof,
`may be stored in the remote memory storage device. By way
`of example, and not limitation, FIG. 1A illustrates remote
`application programs 185 as residing on memory device 181.
`It will be appreciated that the network connections shown are
`exemplary and other means of establishing a communications
`link between the computers may be used.
`It will be appreciated that the network connections shown
`are exemplary and other means of establishing a communi
`cations link between the computers can be used. The exist
`ence of any of various well-known protocols such as TCP/IP.
`Ethernet, FTP, HTTP and the like is presumed, and the system
`can be operated in a client-server configuration to permit a
`user to retrieve web pages from a web-based server. Any of
`various conventional web browsers can be used to display and
`manipulate data on web pages.
`A programming interface (or more simply, interface) may
`be viewed as any mechanism, process, protocol for enabling
`one or more segment(s) of code to communicate with or
`access the functionality provided by one or more other seg
`ment(s) of code. Alternatively, a programming interface may
`be viewed as one or more mechanism(s), method(s), function
`call(s), module(s), object(s), etc. of a component of a system
`capable of communicative coupling to one or more mecha
`nism(s), method(s), function call(s), module(s), etc. of other
`component(s). The term “segment of code” in the preceding
`sentence is intended to include one or more instructions or
`lines of code, and includes, e.g., code modules, objects, Sub
`routines, functions, and so on, regardless of the terminology
`35
`applied or whether the code segments are separately com
`piled, or whether the code segments are provided as source,
`intermediate, or object code, whether the code segments are
`utilized in a runtime system or process, or whether they are
`located on the same or different machines or distributed
`across multiple machines, or whether the functionality rep
`resented by the segments of code are implemented wholly in
`software, wholly in hardware, or a combination of hardware
`and Software.
`Notionally, a programming interface may be viewed
`generically, as shown in FIG. 1B or FIG. 1C. FIG. 1B illus
`trates an interface Interface1 as a conduit through which first
`and second code segments communicate. FIG. 1C illustrates
`an interface as comprising interface objects I1 and I2 (which
`may or may not be part of the first and second code segments),
`which enable first and second code segments of a system to
`communicate via medium M. In the view of FIG.1C, one may
`consider interface objects I1 and I2 as separate interfaces of
`the same systemandone may also consider that objects I1 and
`I2 plus medium M comprise the interface. Although FIGS. 1B
`and 1C show bi-directional flow and interfaces on each side of
`the flow, certain implementations may only have information
`flow in one direction (or no information flow as descr