throbber
Applcam Presentsum Spaae61m1a
`
`ABSTRACT
`(57)
`Methods and systems are described for navigating between
`visual components. A first Visual component, of a first
`application in a plurality of applications, is detected in a first
`application region of a presentation space of a display
`device. A first navigation area is presented, in a first navi-
`gation region detennined based on the first application
`region, for navigating to a second visual component, of a
`second application in the plurality, in a second application
`region in the presentation space. A user input corresponding
`to the first navigation area is detected. In response to the
`detected user input, navigation information is sent to navi-
`gate to the second Visual component.
`
`US 9,423,923 B1
`(10) Patent No.:
`(12) United States Patent
`
`Morris *Aug. 23, 2016 (45) Date of Patent:
`
`
`U3009423923B1
`
`NAVIGATION METHODS, SYSTEMS, AND
`COlVlPU TER PROGRAM PRODUCTS
`
`(56)
`
`References Cited
`U.S. PATENT DOCUM:
`
`1/1996 Southgate
`11/1996 Mariani
`1/1998 Cohn
`12/1999 Brooks
`6/2000 Sheldon et al.
`7/2001 Matthews, In et all
`4/2004 Santoro et 31.
`7/2006 Lau
`9/2006 A ‘ da tal.
`8/2008 Szfiafls :t 31.
`6/2009 Holecek et a1.
`
`_
`3,487,143
`5,577,187
`5,712,995
`6,008,309
`6,072,486
`5,265,059 W
`6,724,403
`7,080,088
`B2
`7,114,129
`7 412 661 B2
`7,552,397
`
`AAAAA
`
`(Continued)
`OTHER PUBLIC ATIONS
`‘
`First Alliance “Security Camera Systems for Your Business or
`Home,” available at https://web.archive.org/web/20l00615200435/
`:///
`. ‘
`r
`/ )
`‘
`1
`.
`.
`.
`hgtpo)www taps com1(,,1_)\ R711 264, htrn (psoted on Jun 15,
`(Continued)
`
`Primary Exammer * T03“ V11
`(74) Attorney, Agent, or Firm 7 Patrick E. Caldwell, Esq;
`Th0 Caldwell Firm, LLC
`
`31 Claims, 13 Drawing Sheets
`
`Applicant: SITTING 1VIAN, LLC, Raleigh, NC
`US)
`(
`
`.
`_
`Inventor: Robert Paul Morris, Ralelgh, NC (US)
`
`Assignee: Cypress Lake Software, Inc.,
`Woodvfllea TX (US)
`.
`.
`.
`.
`Subject to any disclaimer, the term ofthis
`patent is extended or adjusted under 35
`
`.
`Nollce:
`
`U.S.C. 154(b) by 0 days.
`This patent is subject to a terminal dis—
`claimer.
`
`APPL No" 14/924,680
`.
`_
`Flled:
`Oct- 27’ 2013
`Related US. Application Data
`
`Continuation of application No. 14/ 173,806, filed on
`Feb. 5, 2014, which is a continuation—in—part of
`application No, 12/868,767, filed on Aug, 26a 2010’
`now Pat. No. 8,661,361, and a continuation-in-part of
`application No. 12/956,008, filed on Nov. 30, 2010,
`now Pat. No. 8,780,130, and a continuation—in—part of
`application NO- 12/955993: filed on NOV- 30,- 2010s
`now abandoned
`Int. Cl.
`
`(200601)
`(201301)
`(201301)
`(200601)
`
`G06F 3/01
`G06F 3/0481
`G06F 3/0484
`G06F 3/00
`U-S- Cl-
`CPC ------- -- G06F 3/0481 (2013-01); G06F 3/04842
`(201301)
`
`Field of Classification SeaI‘Ch
`None
`See application file for complete search history.
`
`Dlsplay Presentation Spacem
`
`,S1Ar1b
`
`1
`
`Second App EDA-Zn
`FmApp inn-J2
`Tools Hap
`Bookmarks
`File an Vlew
`Locamn
`Hltp Hmysure OcGT com
`
`sows
`-
`
`“
`ADD Mann
`FnkApp
`Sienna App
`T'Ilrd App ..
`
`Mam
`Task 1
`Task 2
`
`-
`-
`7
`
`MICROSOFT CORP. EX. 1001
`Page 1 of 30
`
`

`

`2013/0326401 Al’:< 12/2013
`
`van Os
`
`2014/0136979 A1
`2014/0245142 A1
`2015/0020101 A1
`2015/0040057 Al
`2015/0128059 A1
`2015/0227283 A1
`20I5/033157I AI’:<
`
`5/2014
`8/2014
`1/2015
`2/2015
`5/2015
`8/2015
`Il/2OIS
`
`............... .. G06F 3/0483
`715/802
`
`Morotomi
`Dresti et 31.
`Brown
`Smuga
`Bakhash
`Luna
`Chaudhri
`
`.......... .. G06F 3/04883
`715/830
`
`OTHER PUBLICATIONS
`
`GllB 27/329
`
`. G06F 3/04 82
`715/769
`
`
`
`Richard Leadbetter. “Digital Foundry vs. Halo: Reach beta,” avail—
`able at http1//wvwv.eurogamer.net/anicles/digitalfoundry—vs-halo—
`reach—beta—anicle7page:3 (posted on Jan. 5, 2010).
`Jason Fitzpatrick, “Split Screen Slices Your Chrome Window into
`Two Panes,"
`available
`at http://lifehackercom’SS11986/split-
`screen-slices-your-chrome-window-into-two-panes (posted on Apr.
`8, 2010).
`DonationCoder, “GridVlove,” available at https://web.archive.org/
`web/20 100208 1 828 l4/http:/figpaiva.dc1neinbers.corn/gridinove.
`htrnl (posted on Feb. 8, 2010).
`“100 open source gemsipart 2,” available at http://wwwtuxradar.
`corrv’content/ 100-open-source-gems-paIt-2 (posted on May 21,
`2009).
`homepage from “Splitview” website, available at https://web.ar-
`chive.org/’Web/200903 14055048/http://www. splitviewcorrv’ (posted
`Mar. 14, 2009).
`homepage from “Soulid Studio” website, available at https://web.
`arehive.org/web/20100515190349/http://www.soulidstudioxom/
`(posted May 15, 2010).
`“Divvy for Mac OS X,” available at https://Web.archiveorg/web/
`20100514104937/http://mizage.eom/divvy (posted on May 14,
`2010).
`Nurgo Software, “AquaSnap,” available at https://Web.arehive.org/
`web/20100330083810/http://Www.nurgo-software.com/products/
`aquasnap (posted on Mar. 30, 2010).
`hompage to “Winsplit Revolution,” available at https://Web.archive.
`org/web/2009100 102413 5/http: //'www.winsplit-revolution. corrv’
`(posted on Oct. 1, 2009),
`Google, “What is bug.n?,” available at https://web.3rchive.org/web/
`20l00326203241/http://code.google.com/p/bugn (posted on Mar.
`26, 2010).
`ZaneA, “l-lash l'WM,” available at https://web.3rchive.orgweb/
`201003032330 18/http://github.eom/ZaneNHashTWM (published
`Oct. 25, 2009).
`homepage to “MaxTo,” available at https://Web.archiveorg/web/
`20090522042853/http://www.maxto.net/ (posted May 22, 2009).
`0 flce Action Summary from U.S. Appl. l\ o. 14/924,677, dated 1-'eb.
`3, 2016.
`Oflce Action Summary in U.S. Appl. No. 12/868,767 dated Dec.
`31, 2012.
`O flce Action Summary in U.S. Appl. No. 12/868,767 dated Jul. 19,
`2013.
`O flee Action Summary in U.S. Appl. No. 12/868,767 dated Jan. 16,
`2014.
`O flee Action Summary in U.S. Appl. No. l4/173,806 dated Dec. 2,
`2015.
`0 flce Action Summary in U .8. Appl. No. l2/956,008, dated Jul. 31,
`2013.
`Oflce Action Summary in U.S. Appl. No. 12/956,008, dated Mar.
`27, 2014.
`O flce Action Summary in US. Appl. No. 14/331,096, dated Jan. 15,
`2016.
`O flee Action Summary in US. Appl. No. 14/924,706, dated Jan. 20,
`2016.
`Neowin, “VVindowSpace \72.0 Betaisnapping like in Windows 7,”
`available at http://Www.neowin.net/news/windowspace-v20—beta———
`snapping-like-in-windows-7 (posted Apr. 29, 2009).
`“Xerox
`Star,”
`available
`at
`https://web.3rchive.org/web/
`20100101040301/http://toastytech.com/guis/star.htm1 (posted on
`Jan 1, 2010),
`
`US 9,423,923 B1
`
`Page 2
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`8/2010
`4/2011
`8/2011
`4/2012
`8/2012
`9/20 I 2
`10/20 12
`12/20 12
`1/2013
`2/2013
`2/2013
`6/2013
`7/2013
`10/20 13
`I 2/20 I 3
`3/2014
`4/2014
`7/2014
`9/2014
`10/20 14
`1 1/20 14
`12/20 14
`I /20 I 5
`2/2015
`3/2015
`3/2015
`5/2015
`5/2015
`8/2015
`l/2003
`12/2004
`I /2005
`9/2005
`1/2006
`10/2006
`11/2006
`12/2006
`10/2007
`5/2008
`2/2009
`3/2009
`5/2009
`6/2009
`7/2009
`
`8/2009
`9/2009
`10/2009
`I 2/2009
`12/2009
`2/2010
`7/2010
`7/2010
`I I /20 I 0
`1 1/20 10
`12/20 10
`3/2011
`9/2011
`/2011
`10/20 1 l
`12/20 1 1
`1/2012
`l/2012
`2/2012
`3/2012
`4/2012
`4/20 I 2
`6/2012
`6/2012
`1 1/20 12
`2/2013
`3/2013
`3/2013
`8/2013
`
`Amadio et 31.
`Flynt et a1.
`Hart et 31.
`Zhang
`Williams et al.
`lshibashi
`Wang et a1.
`Holecek et a1.
`Matthews et 31.
`Kraut
`Singh et a1.
`Fyke et a1.
`Jarrett et al.
`Zaman et 31.
`Chiang et al.
`Rudolph et a1.
`Markiewiez el al.
`Morris
`Zaman et a1.
`Louch et 31.
`Donahue et al.
`Garside et 31.
`Leonard et al.
`Louch et al.
`Deutsch et 31.
`Kelly et 31.
`Louch et 31.
`Santoro et a1.
`Forstall et 31.
`Phillips et al.
`Weise et 31.
`Robertson et al.
`Matthews et al.
`Hui
`Rossi et 31.
`Marcos et a1.
`Marcos et a1.
`Ishibashi
`Karstens
`Rudolph et al.
`C110
`Yu
`Kawaguchi
`Lee .................... ..
`
`Matthews et al.
`Forstall et al.
`Arthursson
`Bollman et al.
`Kraut
`Marcos et a1.
`Chang
`Zhang
`Lyons et al.
`Shin et al.
`Wilairat
`Lee
`Ando
`Hunter et a1.
`Pinto et a1.
`Starr
`James
`Wagner
`Ohmori et al.
`Schlegel
`Gimpl et 31.
`Duai’re
`Klolzer
`Zaman et a1.
`Wong et al.
`Deutseh et a1.
`Zaman et a1.
`Zaman et 31.
`Lin
`
`B2
`B2
`B2
`B2
`
`SB
`
`2
`B2
`B2
`B2
`B2
`B2
`B2
`B2
`B2
`B2
`B2
`B2
`B2
`B2
`B2
`B2
`B2
`B2
`B2
`B2
`B2
`B2
`B2
`B2
`Al
`A1
`A I
`A1
`A1
`A1
`A1
`A1
`Al
`A1
`A I
`A1
`A1
`A1
`A1
`
`Al
`Al
`Al
`Al
`A1
`A1
`A1
`Al
`Al
`A1
`Al
`Al
`A1
`Al
`Al
`A1
`Al
`Al
`A1
`A1
`Al
`Al
`A1
`Al
`Al
`A1
`Al
`Al
`A1
`
`7,783,990
`7,933,632
`8,010,900
`8,166,411
`D665,405
`8,266,54I
`8,302,026
`8,341,541
`8,356,258
`8,379,058
`8,381,127
`8,457,692
`8,490,019
`8,560,959
`8,600,446
`8,667,415
`8,687,023
`8,780,130
`8,830,270
`8,869,027
`8,893,033
`8,922,575
`8,935,63I
`8,954,871
`8,990,733
`8,992,323
`9,032,318
`9,043,712
`9,104,294
`2003/0018609
`2004/0243938
`2005/0010876
`2005/0198584
`2006/0015246
`2006/0224992
`2006/0271853
`2006/0294470
`2007/0234221
`2008/0109753
`2009/0044I38
`2009/0070339
`2009/0138819
`2009/0164936
`2009/0193351
`
`2009/0199128
`2009/0228824
`2009/0254610
`2009/0300552
`2009/0303242
`2010/0037154
`2010/0169813
`2010/0169814
`20I0/028I372
`2010/0299597
`2010/0302172
`2011/0078733
`2011/0219330
`2011/0231878
`2011/0246904
`2011/0302528
`2012/0011437
`2012/0023453
`2012./0036443
`2012./0072867
`2012/0081302
`201 2/00847 I I
`2012./0154424
`2012/0167011
`2012/0304114
`2013/0047117
`2013./0063442
`2013/0063490
`2013./0198692
`
`MICROSOFT CORP. EX. 1001
`Page 2 of 30
`
`

`

`Microsoft, “Microsoft Web Apps: Office Goes to the Web,” avail-
`able at http://news.mierosoft.corrv2009/09/17/mierosoft-web-apps—
`olIice-goes-lo-the-Web/ (posted on Sep. 17, 2009).
`Microsoft, “Microsoft Office 2010 Hits Major Milestone and Enters
`Technical Preview,” available at http://news.microsoft.com/2009/
`07/13/1nicrosoft-oflice-20lO-hits-ngor-milestone-and—enters-tech-
`nical-preview/ (posted on Jul. 13. 2009.
`Ina Fried, “Next version of Ofliee heads to the browser,” available
`at
`http://www.cnet.com/news/next-version-of-office-heads-to-the-
`browser/ (posted on Apr. 9, 2009).
`Sarah Perez, “Microsoft Office W'eb Applications: Your Burning
`Questions Answered," available at https://ehannel9.msdn.com/
`blogs/coolstulT/nuerosoft-olflce-web-applications-your-burning-
`questions-answered (posted on Nov. 10, 2008).
`Steven Sinofsky, “Designing Aero Snap,” Mar. 17. 2009. https://
`blogs.msdn.microsofi.corm’e7/2009/03/17/designing-aero-snap/
`#comments (last accesed Mar. 25. 2016).
`Gina Trapani, “Snap Any Window to Half the Screen Size in
`Windows 7,” Nov. 5, 2008, http://lifehacker.eom/5077728/snap—
`any-Window-lo-half-the-screen-size-in-Windows-7 (last accessed
`Mar. 25, 2016).
`Seth Rosenblatt, “First Look: Touch-screen features in Windows 7,”
`Jul. 17, 2009, http:wawcnetcom/videos/touch-screen-teatures-
`in-windows-7/ (last accessed Mar. 25. 2016.
`Use Aero Snap with Internet Explorer 9 Tabs in Windows 7,
`available
`at
`http://www.howtogeek.com/howto/29090/use-aero-
`snap-with-ie-9-tabs-in-windows-7/ (posted Sep. 16, 2010).
`Microsoft Developer Network, “Object Binding Sample,” Jul. 15,
`2010, http://msdn.microsoft.com/en-us/library/8e36eeyx%28v:vs.
`90%29.aspx, last accessed Mar 20, 2014.
`Microsoft Developer Network, “Object Binding in Visual Studio,”
`2010,
`http://msdanicrosoft.com[’en-us/library/ms2338l 5(‘v:vs.
`100).aspx, last accessed Mar. 20, 2014.
`
`* cited by examiner
`
`Warren Teitelman, “Ten Years of Window SystemsiA Retrospec-
`tive
`View,"
`available
`at
`https://web .archive. org/web/
`20100316102701/http:/'/www.Chilton-computing.org.uk/inf/litera-
`ture/b00ks/Wm/p004.htm (posted on Mar. 10, 2010).
`“Window tiling history,” available at https://web.archiveorg/web/
`20100330011025/http1//mnemonikk.org/talks/tiling-wmen.htrnl
`(posted on Mar. 30. 2010).
`“Comparison of tiling window managers,” available at https://wiki.
`archlinux .org/ind ex p11p7title:Comparisoniofitilingiwindowi
`managers&oldid:112641 (posted on Jul. 26, 2010).
`Jim Allehin, “The Sounds of Windows Vista," available at https://
`web.arehive.org/web/20061110152317/http://windowsvistablog.
`com/blogs/windowsvista/archive/2006/11/09/the-sounds-of-win-
`dows-vista.aspx (posted on Nov. 9, 2006).
`Long Zheng, “From Microsoft patent to Windows reality: “X-ray
`browsing". circa 2005; Aero Peek. circa 2008," available at http://
`wwwistartedsomething.corrv'20081 13 0/from-microsoft-patent-to-
`windows-reality-x-ray-browsing-aero-peek/ (posted on Nov. 30,
`2008).
`Steven Sinofsky, “Touching Windows 7," available at http://blogs.
`msdn.cony'b/e7/archive/2009/03/25/touching-windows-7.aspx
`(posted on Mar. 25, 2009).
`Kiriaty and Goldshtein, “Inside Windows 77Inlroducing the
`Taskbar APIs.” available at https://msdn.mierosoft.eorrven—us/
`magazine/dd942846aspx (posted Jul. 2009).
`Ina Fried, “Vista won’t show fancy side to pirates," available at
`http:/'/\va.cnet.eom/news/vista-wont-show-fancy-side-to-pirates/
`(posted Apr. 14, 2006).
`Klint Finley, “Microsoft Rolls 011 0 ice Web Apps.” available at
`http //readwrite.conv’2010/06/0 8/microsofi-roll s-out-office-web
`(posted on Jun. 8, 2010).
`Microsoft, “Microsoft to Extend 0 ice to the Browser,” available at
`hllp://news.microsoflcom/2008/10/28/microsoft-to-extend-oflice-
`to-the—browser/ (posted on Oct. 28, 2008).
`
`
`
`
`
`US 9,423,923 B1
`Page 3
`
`(56)
`
`References Cited
`OTHER PUBLICATIONS
`
`
`
`
`MICROSOFT CORP. EX. 1001
`Page 3 of 30
`
`

`

`a925059:0
`
`cozzomxm.
`
`Eek—BL.
`
`#6sz
`
`E9562
`
`momtBE
`
`353mv<
`
`EBwEwa
`
`Emvcoomw
`
`a9365
`
`bcm3:933350
`
`flmEEm>mg3w
`
`awcozmo=gg<
`
`9:980
`
`a5656
`
`J
`
`U.S. Patent
`
`Aug. 23, 2016
`
`Sheet 1 of 13
`
`US 9,423,923 B1
`
`amo_>wn_SQE
`
`$250Sac.
`
`a55m?
`
`59:0
`
`83mm.
`
`a5:52
`
`-cosoEBE
`
`96809.;
`
`aE:
`
`3%.852:
`
`a39:22
`
`a29:223%_§:_>
`
`dmUoZBoSmD
`
`N FE
`
`mEcEScm
`
`MICROSOFT CORP. EX. 1001
`Page 4 of 30
`
`

`

`U.S. Patent
`
`Aug. 23, 2016
`
`Sheet 2 of 13
`
`US 9,423,923 B1
`
`in a first application region of a presentation space of a
`Detect,
`display device, a first visual component, ofa first operating
`application in a plurality of operating applications
`
`Detect a user input corresponding to the first navigation control
`
`Send, in response to detecting the user input, navigation information
`
`Present a first navigation control, in a first navigation region
`determined based on the first application region, for navigating to a
`second visual component, of a second application in the plurality, in a
`second application region in the presentation space
`
`to navigate to the second visual component
`
`MICROSOFT CORP. EX. 1001
`Page 5 of 30
`
`

`

`Navigation
`Element Handler
`
`fl
`
`Application
`Navigator fl
`
`Navigation
`
`U.S. Patent
`
`Aug. 23, 2016
`
`Sheet 3 of 13
`
`US 9,423,923 B1
`
`.
`PS Monitor &
`
`Director fl
`
`MICROSOFT CORP. EX. 1001
`Page 6 of 30
`
`

`

`U.S. Patent
`
`Aug. 23, 2016
`
`Sheet 4 of 13
`
`US 9,423,923 B1
`
`Execution Environment 4013
`
`Graphics Subsystem
`439a
`
`GUI Subsystem
`437a
`
`Input
`Dnver
`441a
`
`Presentation Controller 435a
`
`Navigation
`Element
`
`Application 403a
`
`Ul Element
`
`Handler
`433a
`
`Network Stack 411a
`
`Handler406a .
`
`Navigation
`Director 408a
`
`Application
`Navigator 4048
`
`_
`PS Monitor 402a
`
`Application Protocol Component 413a
`
`MICROSOFT CORP. EX. 1001
`Page 7 of 30
`
`

`

`U.S. Patent
`
`Aug. 23, 2016
`
`Sheet 5 of 13
`
`US 9,423,923 B1
`
`Graphics Subsystem
`439b
`
`GUI Subsystem
`437b
`
`Presentation Controller 435b
`
`Execution Environment m
`
`Browser 403p
`
`Ul element
`handler
`433b
`
`Network Stack 4 1b
`
`Navigation
`Element Handler
`406b
`
`: Network Application
`Agent 405b
`
`Navigation
`Director
`408b
`
`Content
`Handler
`431 b
`
`Application
`Navigator 404b
`
`PS Monitor 402b
`
`Content Manager
`415p
`
`Application Protocol Component 4’13b
`
`MICROSOFT CORP. EX. 1001
`Page 8 of 30
`
`

`

`U.S. Patent
`
`Aug. 23, 2016
`
`Sheet 6 of 13
`
`US 9,423,923 B1
`
`Graphics Subsystem 439C
`
`GUI Subsystem 437C
`
`.
`PS Monitor 4020
`
`Application
`Navigator 4040
`
`Navigation
`Director
`4080
`
`Navigation
`Element Handler
`406C
`
`Execution Environment fl
`
`Input Driver
`441C
`
`Network Stack 411C
`
`Presentation Controller
`435c1
`
`First Application 403-10
`
`Presentation Controller
`435c2
`
`Second Application 403-20
`
`Ul Element
`Handler
`43301
`
`UI Element
`Handler
`
`43362
`
`Application Protocol Component 4130
`
`MICROSOFT CORP. EX. 1001
`Page 9 of 30
`
`

`

`U.S. Patent
`
`Aug. 23, 2016
`
`Sheet 7 of 13
`
`US 9,423,923 B1
`
`Network Stack 411d
`
`Application Protocol Component 413d
`
`Network Application Platform 409d
`
`Controller 417d
`
`View Subsystem 429d
`
`Navigation
`Director
`408d
`
`PS Monitor 402d
`
`Execution Environment 401d
`
`Navigation
`Element
`Handler 406d
`
`Application
`Navigator 404d
`
`Model Subsystem 419d
`
`Network Application 4 3d
`
`Template Engine
`423d
`
`Template
`Database 425d
`
`Template
`fl
`
`Model Database
`421d
`
`MICROSOFT CORP. EX. 1001
`Page 10 of 30
`
`

`

`User Node
`
`&
`
`Network
`
`&
`
`U.S. Patent
`
`Aug. 23, 2016
`
`Sheet 8 of 13
`
`US 9,423,923 B1
`
`fl
`
`Application
`Provider Node
`
`MICROSOFT CORP. EX. 1001
`Page 11 of 30
`
`

`

`US 9,423,923 B1
`
`//
`
`616_3a
`
`U.S. Patent
`
`Aug. 23, 2016
`
`Sheet 9 of 13
`
`Display Presentation Space 602a
`// 616-13,,” 616'2a/,/“ 514—2a
`
`Third App
`
`MICROSOFT CORP. EX. 1001
`Page 12 of 30
`
`

`

`U.S. Patent
`
`Aug. 23,2016
`
`Sheet 10 of 13
`
`US 9,423,923 B1
`
`Display Presentation Space 02b
`
`Second App 604-2b
`
`‘614-1b
`
`i
`
`i
`
`/
`
`Bookmarks
`
`Tools
`
`Help
`
`608-1b
`
`Location
`
`Http://mysite.OoOT.com
`
`609-1 b
`
`First App 604-1b
`File
`Edit View
`
`Application Presentation Space 610-1b
`
`MICROSOFT CORP. EX. 1001
`Page 13 of 30
`
`

`

`Edit View
`
`Bookmarks
`_
`Http://mySIte.OoOT.com
`
`Tools
`
`Application Presentation Space 610-1c
`
`U.S. Patent
`
`Aug. 23,2016
`
`Sheet 11 of 13
`
`US 9,423,923 B1
`
`Display Presentation Space 6020
`
`/// 614-1c
`
`First App 604-1C
`
`Help
`
`608-1c
`09-10
`
`6
`
`+ First App
`- Second App
`File
`|—Maln
`|
`l- Tab 1 _ _
`I
`‘_ Tab 2
`Location
`— Third App
`
`Application Presentation Space 610-20
`
`MICROSOFT CORP. EX. 1001
`Page 14 of 30
`
`

`

`U.S. Patent
`
`Aug. 23,2016
`
`Sheet 12 of 13
`
`US 9,423,923 B1
`
`Display Presentation Space 02d
`
`Second App 604-2d
`
`+ First App
`- Second App
`|
`- Main
`|
`|- "ab 1
`|
`|- "ab 2
`- Third App
`
`
`
`MICROSOFT CORP. EX. 1001
`Page 15 of 30
`
`

`

`U.S. Patent
`
`Aug. 23,2016
`
`Sheet 13 of 13
`
`US 9,423,923 B1
`
`Display Presentation Space 602a
`
`First App 604-1e
`
`File
`
`Edit View
`
`Bookmarks
`
`Tools
`
`Help
`
`ActiveApps
`
`Location
`
`Http://mysite.OoOTicom
`
`App
`
`616-2e
`
`616-3e /'
`
`second App -
`ThirdApp
`/
`
`MICROSOFT CORP. EX. 1001
`Page 16 of 30
`
`

`

`for purposes of
`
`invention will
`Objects and advantages of the present
`become apparent to those skilled in the art upon reading this
`description in conjunction with the accompanying drawings,
`in which like reference numerals have been used to desig-
`nate like or analogous elements, and in which:
`FIG. 1 is a block diagram illustrating an exemplary
`hardware device included in and/or otherwise providing an
`execution environment in which the subject matter may be
`implemented;
`FIG. 2 is a flow diagram illustrating a me hod for navi-
`’ gating between visual components according to an aspect of
`the suoject matter described herein;
`FIG. 3 is a block diagram illustrating an arrangement of
`cornponen s
`for navigating Jetween visua
`cornponen s
`aceorcing to another aswect of the su jject matter described
`herein;
`FIG. 4a is a block diagram illustrating an arrangement of
`cornponen s
`for navigating Jetween visua
`cornponen s
`aceorcing to another as sect of the suaject matter described
`herein;
`FIG. 4b is a block diagram illustrating an arrangement of
`cornponen s
`for navigating oetween visua
`cornponen s
`accorcing to another as sect of the su Jject matter described
`herein;
`FIG. 4c is a block diagram illustrating an arrangement of
`cornponen s
`for navigating oetween visua
`cornponen s
`accorcing to another as sect of the su Jject matter described
`herein;
`FIG. 40! is a block diagram illustrating an arrangement of
`cornponen s
`for navigating oetween visua
`cornponen s
`accorcing to another as sect of the su jject matter described
`herein;
`FIG. 5 is a network diagram illustrating an exemplary
`sys em for navigating between visual components according
`to another aspect of the subject matter described herein;
`FIG. 6a is a diagram illustra ing a user interface presented
`via a display according to another aspect of the subject
`mater described herein;
`FIG. 6b is a diagram illustra ing a user interface presented
`via a display according to another aspect of the subject
`mater described herein;
`FIG. 6C' is a diagram illustra ing a user interface presented
`via a display according to another aspect of the subject
`mater described herein;
`FIG. 6d is a diagram illustra ing a user interface presented
`via a display according to another aspect of the subject
`ma ter described herein; and
`FIG. 6e is a diagram illustra ing a user interface presented
`via a display according to another aspect of the subject
`mater described herein.
`
`US 9,423,923 B1
`
`2
`region, for navigating to a second visual component, of a
`second application in the plurality, in a second application
`region in the presentation space. A user input corresponding
`to the first navigation area is detected. In response to the
`detected user input, navigation information is sent to navi—
`gate to the second visual component.
`
`
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`1
`NAVIGATION METHODS, SYSTEMS, AND
`COMPUTER PROGRAM PRODL CTS
`
`RELATED APPLICATIONS
`
`
`
`
`
`The present application is continuation o , and claims
`priority to US. patent application Ser. No. 14/173,806, titled
`“METHODS, SYSTEMS, AND CONTPUTER PROGRAM
`PRODUCTS FOR NAVIGATING BETWHN VISUAL
`
`COMPONENTS," filed Feb. 5, 2014; which, in turn, is a
`continuation-in-part of, and claims priority to US. patent
`application Ser. No, 12/868,767, titled “METHODS, SYS-
`TEMS, AND COMPUTER PROGRAM PRODUCTS FOR
`NAVIGATING BETW4 4N VISUAL COMPONENTS,”
`filed on Aug. 26, 2010, now issued as US. Pat. No.
`8,661,361; US. patent application Ser. No. 12/956,008,
`titled “VETHODS, SYSTEMS, AND COMPUTER PRO-
`
`GRAM PRODUCTS FOR BINDING ATTRIBUTES
`BETWe 4N VISUAL COMPONENTS," filed on Nov. 30,
`2010, now issued as US. Pat. No. 8,780,130; and US.
`patent application Ser, No, 12/955,993, titled “METHODS,
`SYSTEMS, AND COMPUTER )ROGRAM PRODUCTS
`FOR AUTOMATICALLY SCROLDING ITEMS IN A
`SELECTION CONTROL,” filed on Nov. 30, 2010, all of
`which are incorporated herein by reference in their entirety '
`for all purposes.
`
`
`
`
`
`
`
`
`
`
`
`
`BACKG RO U ND
`
`Cluttered desktops on desktop, notebook, and handheld
`devices are common. Navigating among visual components
`of various applications requires locating a desired visual
`component in the clutter and/or interoperating with a stan-
`dard user interface element such as a task bar and/or
`application menu of a desktop that remains in a single
`location and requires the same types of inputs and user
`movements for each application and/or visual component to
`be located. This may require a user to repeat a similar and/or
`same set of movements over and over. Further, a task bar or
`other standard application navigation user interface may be
`located in a location that is convenient for some applications
`but inconvenient for others for a user. This creates a lot of
`input overhead in cases where switching between applica-
`tions is frequent. Input to bring an application into focus is
`essentially non-productive input, as it is not related to any of
`the tasks performed by the applications a user is interacting
`with.
`Accordingly, there exists a need for methods, systems,
`and computer program products for navigating between
`visual components.
`
`SUMMARY
`
`The following presents a simplified summary of the
`disclosure in order to provide a basic understanding to the '
`reader. This summary is not an extensive overview of the
`disclosure and it does not identify key/critical elements of
`the invention or delineate the scope of the invention. Its sole
`purpose is to present some concepts disclosed herein in a
`simplified form as a prelude to the more detailed description
`that is presented later.
`Methods and systems are described for navigating
`between visual components. A first visual component, of a
`first application in a plurality of applications, is detected in
`a first application region of a presentation space of a display
`device. A first navigation area is presented, in a first navi-
`gation region determined based on the first application
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`DETAILED DESCRIPTION
`
`One or more aspects of the disclosure are described with
`reference to the drawings, wherein like reference numerals
`are generally utilized to refer to like elements throughout,
`and wherein the various structures are not necessarily drawn
`to scale.
`In the following description,
`
`MICROSOFT CORP. EX. 1001
`Page 17 of 30
`
`

`

`US 9,423,923 Bl
`
`
`
`4
`FIG. 1 illustrates virtual processor memory 118 spanning
`at least part of physical processor memory 106 and at least
`part of persistent secondary storage 108. Virtual memory
`addresses in a memory address space may be mapped to
`physical memory addresses identifying locations in physical
`processor memory 106. An address space for identifying
`locations in a virtual processor memory is referred to as a
`virtual memory address space; its addresses are referred to
`as Virtual memory addresses; and its processor memory is
`known as a virtual processor memory or virtual memory.
`The term “processor memory” may refer to physical pro—
`cessor memory 106 and/or virtual processor memory 118
`depending on the context in which the term is used.
`Physical processor memory 106 may include various
`types of memory technologies. Exemplary memory tech—
`nologies include static random access memory (SRAM)
`and/or dynamic RAM (DRAM) including variants such as
`dual data rate synchronous DRAM (DDR SDRAM), error
`correcting code synchronous DRAM (ECC SDRAM), and/
`‘ or RAMBUS DRAM (RDRAM). Physical processor
`memory 106 may include volatile memory as illustrated in
`the previous
`sentence and/or may include nonvolatile
`memory such as nonvolatile flash RAM (NVRAIVI) and/or
`ROM.
`Persistent secondary storage 108 may include one or more
`flash memory storage devices, one or more hard disk drives,
`one or more magnetic disk drives, and/or one or more optical
`disk drives. Persistent
`secondary storage may include
`removable media. The drives and their associated computer—
`readable storage media provide volatile and/or nonvolatile
`storage for computer-readable instructions, data structures,
`program components, and other data for execution environ-
`ment 102.
`Execution environment 102 may include software com-
`ponents stored in persistent secondary storage 108,
`in
`remote storage accessible via a network, and/or in a proces-
`sor memory. FIG. 1 illustrates execution environment 102
`including operating system 120. one or more applications
`122, and other program code and/or data components illus-
`trated by other libraries and subsystems 124. In an aspect,
`some or all software components may be stored in locations
`accessible to IPU 104 in a shared memory address space
`shared by the software components. The software compo-
`nents accessed via the shared memory address space are
`stored in a shared processor memory defined by the shared
`memory address space. In another aspect, a first software
`component may be stored in one or more locations accessed
`by IPU 104 in a first address space and a second software
`component may be stored in one or more locations accessed
`by IPU 104 in a second address space. The first software
`component is stored in a first processor memory defined by
`the first address space and the second software component is
`stored in a second processor memory defined by the second
`address space.
`instructions
`typically include
`Software
`components
`executed by IPU 104 in a computing context referred to as
`a “process”. A process may include one or more “threads”.
`A “thread” includes a sequence of instructions executed by
`IPU 104 in a computing sub-context of a process. The terms
`“thread” and “process” may be used interchangeably herein
`when a process includes only one thread.
`Execution environment 102 may receive user-provided
`information via one or more input devices illustrated by
`input device 128. Input device 128 provides input informa-
`tion to other components in execution environment 102 via
`input device adapter 110. Execution environment 102 may
`include an input device adapter for a keyboard, a touch
`
`3
`explanation, numerous specific details are set forth in order
`to provide a thorough understanding of one or more aspects
`of the disclosure. It may be evident, however, to one skilled
`in the art that one or more aspects of the disclosure may be
`practiced with a lesser degree of these specific details. In
`other instances, well—known structures and devices are
`shown in block diagram form in order to facilitate describing
`one or more aspects of the disclosure.
`An exemplary device included in an execution environ-
`ment that may be configured according to the subject matter
`is illustrated in FIG. 1. An execution enviromnent includes
`an arrangement of hardware and, optionally, software that
`may be further configured to include an arrangement of
`components for performing a method of the subject matter
`described herein. An execution environment includes and/or
`is otherwise provided by one or more devices. An execution
`environment may include a virtual execution environment
`including software components operating in a host execution
`environment. Exemplary devices included in or otherwise
`providing suitable execution environments for configuring
`according to the subject matter include personal computers,
`notebook computers,
`tablet computers, servers, handheld
`and other mobile devices, multiprocessor devices, distrib—
`uted devices, consumer electronic devices, routers. commu-
`nication servers, and/or other network-enabled devices.
`Those skilled in the art will understand that the components
`illustrated in FIG. 1 are exemplary and may vary by par—
`ticular execution environment.
`FIG. 1 illustrates hardware device 100 included in execu-
`tion environment 102. FIG. 1 illustrates that execution
`environment 102 includes instruction-processing unit (IPU)
`104, such as one or more microprocessors; physical proces—
`sor memory 106 including storage locations identified by
`addresses in a physical memory address space of IPU 104;
`persistent secondary storage 108, such as one or more hard
`drives and/or flash storage media; input device adapter 110,
`such as a key or keypad hardware, a keyboard adapter,
`and/or a mouse adapter; output device adapter 112, such as
`a display or audio adapter for presenting information to a
`user; a network interface component, illustrated by network
`interface adapter 114, for commtmicating Via a network such
`as a LAN and/or WAN; and a communication mechanism
`that couples elements 104-114, illustrated as bus 116. Ele-
`ments 104-114 may be operatively coupled by various
`means. Bus 116 may comprise any type of bus architecture,
`including a memory bus, a peripheral bus, a local bus, and/or
`a switching fabric.
`IPU 104 is an instruction execution machine, apparatus,
`or device. Exemplary IPUs include one or more micropro-
`cessors, digital signal processors (DSPs), graphics process—
`ing units, application-specific integrated circuits (ASICs),
`and/or field programmable gate arrays (FPGAs). In the
`description of the subject matter herein, the terms “IPU” and
`“processor” are used interchangeably. IPU 104 may access
`machine code instructions and data via one or more memory
`address spaces in addition to the physical memory address
`space. A memory address space includes addresses identi-
`fying locations in a processor memory. The addresses in a
`memory address space are included in defining a processor
`memory.
`IPU 104 may have more than one processor
`memory. Thus, IPU 104 may have more than one memory
`address space. IPU 104 may access a location in a processor
`memory by processing an address identifying the location.
`The processed address may be in an operand of a machine
`code instruction and/or may be identified in a register or
`other portion of IPU 104.
`
`,
`
`MICROSOFT CORP. EX. 1001
`Page 18 of 30
`
`

`

`US 9,423,923 B1
`
`~
`
`,
`
`may provide services to one or more network applications.
`
`6
`to the method illustrated in FIG. 2. FIG. 3 illustrates a
`system, adapted for operation in an execution enviromnent,
`such as execution environment 102 in FIG. 1, for performing
`the method illustrated in FIG. 2. The system illustrated
`includes a presentation space (PS) monitor component 302,
`an application navigator component 304, a navigation ele—
`ment handler component 306, and a navigation director
`component 308. The execution environment includes an
`instruction-processing unit, such as IPU 104, for processing
`an instruction in at
`least one of the presentation space
`monitor component 302, the application navigator compo-
`nent 304,
`the navigation element handler component 306,
`and the navigation director component 308. Some or all of
`the exemplary components illustrated in FIG. 3 may be
`adapted for performing the method illustrated in FIG. 2 in a
`number of execution environments. FIGS. 4a-d include
`block diagrams illustrating the components of FIG. 3 and/or
`analogs of the components of FIG. 3 adapted for operation
`in various execution environments 401 including and/or
`otherwise provided by one or more nodes.
`FIG. 1 illustrates components of an exemplary device that
`may at least partially provide and/or otherwise be included
`in an execution environment. The components illustrated in
`FIGS. 4a-d may be included in or otherwise combined with
`the components ofFIG. 1 to create a variety of arrangements
`of

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket