throbber
Ex. GOOG 1105
`
`
`
`
`
`

`
`United States Patent [19J
`Finkelstein et al.
`
`111111
`
`1111111111111111111111111111111111111111111111111111111111111
`US006025841A
`[11] Patent Number:
`[45] Date of Patent:
`
`6,025,841
`*Feb.15,2000
`
`[54] METHOD FOR MANAGING
`SIMULTANEOUS DISPLAY OF MULTIPLE
`\\'INDOWS IN A GRAPHICAL USER
`INTERFACE
`
`[75]
`
`Inventors: Erich Soren Finkelstein, Redmond,
`Wash.; Samuel David Hobson, Palo
`Alto, Calif.; Adrian Klein; Benjamin
`Waldman, both of Seattle, Wash.
`
`[73]
`
`Assignee: Microsoft Corporation, Redmond,
`Wash.
`
`[ * ]
`
`Notice:
`
`This patent issued on a continued pros(cid:173)
`ecution application filed under 37 CFR
`1.53(d), and is subject to the twenty year
`patent term provisions of 35 U.S.C.
`154(a)(2).
`
`[21]
`
`Appl. No.: 08/892,771
`
`[22]
`
`Filed:
`
`Jul. 15, 1997
`
`[51]
`[52]
`
`[58]
`
`[56]
`
`Int. Cl.7
`........................................................ G06F 3/14
`U.S. Cl ........................... 345/342; 345/344; 345/346;
`345/356
`Field of Search ..................................... 345/340, 344,
`345/345, 342, 346, 336, 338, 356
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`5,469,540 11/1995 Powers, III eta!. ................... 345/336
`1/1996 Southgate ................................ 345/342
`5,487,143
`5,621,904
`4/1997 Elliott eta!. ............................ 345/342
`
`Primary Examiner-Raymond 1. Bayerl
`ltssistant Examiner-Cuong T Thai
`Attorney, Agent, or Firm-Jones & Askew, LLP
`
`[57]
`
`ABSTRACT
`
`A method for managing simultaneous di5play of multiple
`windows in a graphical user interface (GUI). A computer
`system v,rith a display and user interface input device dis(cid:173)
`plays a primary or container window on the display, com(cid:173)
`prising a predetermined region for displaying information
`and/or receiving user commands associated with a first
`computer process. The system displays a target window
`comprising a predetermined region for displaying informa(cid:173)
`tion and/or receiving user commands associated with a
`different computer process. The target window is typically
`displayed in a higher z-order relative to the primary window
`to maintain it on top. In response to a predetermined
`triggering condition, the target window is manipulated by
`movement, temporary disappearance, and/or size reduction,
`while maintaining the relative z-order of the target window
`relative to the primary window and away from a predeter(cid:173)
`mined avoidance region associated with the first computer
`process. The target window can be moved away a minimal
`distance, biased in a predetermined direction, or positioned
`at anchor points relative to the container window to avoid
`obscuring the avoidance region.
`
`4,783,648 11/1988 Hornma et a!. ......................... 345/340
`
`36 Claims, 21 Drawing Sheets
`
`lfolJ l!e a.r-e
`n.at .. ion ao
`l=La..~k~e~.-k,..l~J~~
`f~~~t i~J.~I!S..~
`JJOV,
`in all p
`
`l lla.r, te~tincr v~etber- tba.t not
`t(e are :met:.
`r c;an lo tit) endl;n::e.
`1:.0 d.ecUca~e a POt:l:·lon o! lc, as a
`that the nation might live.
`
`MoveAway - Selection
`
`Ex. GOOG 1105
`
`

`
`1 - -f !~..,
`
`\
`
`\
`
`\
`
`(x1 Y1)
`38
`iAvoiDANCEREGION I 1
`\
`V
`(AVOID)
`I
`1
`I
`\~ ______ (x2~~ <:;28
`I
`I
`I
`hY'
`I I
`TARGET
`1
`""~A
`1 WINDOW
`\
`11
`Thi~ i~ lt)2xt in a program. 1
`I
`~~"""t-:)
`A
`I
`--~-rJ
`· '<.._38'
`33
`38'~
`TARGET WINDOW I
`\p l .__ ! S-:
`I
`BOUNDARY
`--
`ag9 3j)
`\
`1
`\
`
`U.S. Patent
`
`Feb.15,2000
`
`Sheet 1 of 21
`
`6,025,841
`
`\
`
`30~
`
`\ CONTAINER (PRIMARY WINDOW)
`
`I
`I
`I
`I
`if
`
`42
`
`I
`
`I
`
`I
`
`I
`
`I
`
`I
`
`I
`
`I
`
`I
`
`I
`
`I
`
`I
`
`I
`I
`I
`I
`I
`I
`
`I
`
`I
`
`I
`1 22
`
`\
`
`\
`
`\
`\
`
`\
`
`\
`\
`
`\
`
`'
`
`" '
`'
`'
`'
`'
`
`200
`
`'
`'
`'
`
`PROGRAM.EXE
`MAIN
`(FOR PRIMARY
`WINDOW)
`
`API
`FMoveAway, FObscure
`
`TARGET
`(FOR TARGET
`WINDOW)
`
`20J
`
`FIG. 1
`
`Ex. GOOG 1105
`
`

`
`U.S. Patent
`
`Feb.15,2000
`
`Sheet 2 of 21
`
`6,025,841
`
`INITIALIZE
`PRIMARY WINDOW
`
`INITIALIZE
`TARGET WINDOW
`
`201
`
`202
`
`200
`
`/
`
`500
`
`FMoveAway
`
`600
`
`CALL
`FObscure
`
`1100
`
`EXECUTE
`TARGETWINDOW 1--.....,..
`COMMAND
`
`EXECUTE
`PRIMARY WINDOW
`COMMAND
`
`FIG.2
`
`MAIN FLOW DIAGRAM
`
`Ex. GOOG 1105
`
`

`
`U.S. Patent
`
`Feb.15,2000
`
`Sheet 3 of 21
`
`6,025,841
`
`(0, 0)
`
`30
`
`ANCHOR N0.2
`
`CONTAINER (PRIMARY WINDOW)
`
`62
`
`32
`TARGET
`WINDOW
`
`60
`
`ANCHOR N0.1
`
`MAIN ANCHOR (ANCHOR NO. 3)
`
`FIG. 3A MINIMAL BIASED MOVE- BEFORE
`
`ANCHOR N0.2
`
`CONTAINER
`(PRIMARY WINDOW)
`
`F+------ -:
`Tl
`I I
`T1
`D1:
`
`I
`
`I
`
`32
`TARGET
`WINDOW
`
`60
`
`CONTAINER (PRIMARY WINDOW)
`
`ANCHOR N0.1
`
`MAIN ANCHOR (ANCHOR NO. 3)
`
`FIG. 38
`
`MINIMAL BIASED MOVE - COMPUTE MOVE
`D2 < D4 < 1 .5D1 < 1 .5D3 --> Choose D2
`
`Ex. GOOG 1105
`
`

`
`U.S. Patent
`
`Feb.15,2000
`
`Sheet 4 of 21
`
`6,025,841
`
`30
`
`ANCHOR N0.2
`
`CONTAINER (PRIMARY WINDOW)
`38'"'\
`~--------------l ________ ,
`AVOIDANCE REGION
`
`I
`I
`I 32
`I
`----- -~--
`I
`
`-
`
`I
`
`33
`
`TARGET
`I WINDOW
`------------------+ --- _,
`I ----------
`MAIN ANCHOR {ANCHOR NO. 3}
`
`ANCHOR NO.1
`
`FIG. 4A
`
`MINIMAL BIASED MOVE - MINIMIZE OVERLAP - BEFORE
`
`ANCHOR NO.2
`
`CONTAINER (PRIMARY WINDOW)
`38 '"'\
`32c
`~-----L ________ _
`I AVOIDANCE REGION
`MINIMIZED
`I
`OVERLAP_-jj
`I
`I
`I
`I 70b
`I
`OVERLAP
`I
`REGION
`
`TARGET
`WINDOW
`
`I
`I
`I
`
`32a
`
`ANCHOR NO. 1
`
`MAIN ANCHOR (ANCHOR NO. 3)
`
`FIG. 48 MINIMAL BIASED MOVE- MINIMIZE OVERLAP- AFTER
`
`Ex. GOOG 1105
`
`

`
`U.S. Patent
`
`Feb.15,2000
`
`Sheet 5 of 21
`
`6,025,841
`
`(OPTIONAL)
`SET MoveCount =
`numberOfMoves/Delta Time;
`ANCHOR=
`NumberOfAnchors
`
`DETERMINE OVERLAP
`OF TARGET WINDOW
`WITH AVOIDANCE
`REGION AT ANCHOR
`
`ANCHOR--
`
`500
`
`)
`
`(FIG. 58)
`
`(FIG. 50)
`
`(FIG. 5C)
`
`FIG. 5A
`
`FMoveAway (RECT *prcAvoid, RECT *prcContainer)
`
`Ex. GOOG 1105
`
`

`
`U.S. Patent
`
`Feb.15,2000
`
`Sheet 6 of 21
`
`6,025,841
`
`CONTINUED FMoveAway (RECT *prcAvoid, RECT *prcContainer)
`
`{FROM FIG. 5A}
`
`Avoid = &{*prcAvoid);
`Container= &(*prcContainer);
`ANCHOR = 3
`
`DETERMINE MINIMAL
`DISPLACEMENT-
`CALCULATE D1, D2, 03, D4;
`CHOOSE MINIMUM OF
`1.5*01' 02, 1.5*D3, D4
`
`530
`
`532
`
`NO
`
`537
`
`YES
`
`COMPUTE
`OVERLAP OF
`NewTargetWindow
`WITH Avoid
`
`(FIG. 50}
`
`SAVE
`OVERLAP(ANCHOR)
`
`(FIG. 5C)
`
`FIG. 58
`
`Ex. GOOG 1105
`
`

`
`U.S. Patent
`
`Feb.15,2000
`
`Sheet 7 of 21
`
`6,025,841
`
`CONTINUED FMoveAway (RECT *prcAvoid, RECT *prcContainer)
`
`(FIG. 50)
`
`550
`
`552
`
`COMPUTE
`OVERLAP OF
`NewTargetWindow
`WITH Avoid AT ANCHOR
`
`SAVE
`OVERLAP(ANCHOR)
`
`NO
`
`IDENTIFY ANCHOR
`WITH MINIMUM
`OVERLAP
`
`FIG. 5C
`
`Ex. GOOG 1105
`
`

`
`U.S. Patent
`
`Feb.15,2000
`
`Sheet 8 of 21
`
`6,025,841
`
`GET SHOW STATE
`
`DRAW
`NewTargetWindow
`INTO DISPLAY MEMORY
`IN LOWER Z-ORDER
`THAN Container
`
`FIG. 5D REDRAW TARGET
`
`Ex. GOOG 1105
`
`

`
`U.S. Patent
`
`Feb.15,2000
`
`Sheet 9 of 21
`
`6,025,841
`
`FObscure (int x, int y)
`
`GET
`SHOW STATE
`
`601
`
`600
`
`)
`
`YES
`
`SET SHOW STATE
`=HIDE
`(NOT VISIBLE)
`
`SET SHOW STATE
`=VISIBLE
`
`FIG. 6
`
`TARGET WINDOW OBSCURE (DISAPPEAR)
`
`Ex. GOOG 1105
`
`

`
`U.S. Patent
`
`Feb.15,2000
`
`Sheet 10 of 21
`
`6,025,841
`
`f!'our !!!cere
`uerJ"
`are
`
`forth, upon thi~
`t.b.e propo!5tt.1oll.
`
`endut:e.
`J)Ol:'tlon or tt, 0::1 o
`~4~J;:&JJ~~'"~,g:~ or
`~g51~~J-~.~.RJ~f(g>_ ror t.h!:tse Yl:lo cUed here, 1:1\Sir:. ;;ne nacton mitJIYt 11ve.
`in ~ll prar;oriet::r do.
`:meo.-;r,
`
`But, ~n o lo~~t: ~en~e, Ye con net cted1cate
`not hallOY, thlB orounn -- The b~~~ men, livincr and dead, vho stru
`:!a.t: Bbove out: tJOOr pmre:r t.: o Glid or: •je't-:r:ac"t;. The w
`hGtve !:1611 La ~Jed 1 c.,
`long cemewbe:t: vh!'lt -.:>e ~Say here; xhile it can c.=r
`
`FIG. 7A
`
`!i.Qt:.1on a o con
`~~~~~~e_._.lJ:~J~S!
`E~~,t i,~.J:'J·~~-~.
`in all p
`TH!!f)l,
`
`~ar. t~~tlncr vnethe~ that notion,
`lie are l'Jiet:.
`enliutce.
`pon1on o! 1c, as a
`nation might live.
`
`FIG. 78
`
`MoveAway- Selection
`
`Ex. GOOG 1105
`
`

`
`U.S. Patent
`
`Feb. 15,2000
`
`Sheet 11 of 21
`
`6,025,841
`
`FIG. BA
`
`FIG. BB
`
`MoveAway- Manual Relocation of IP
`
`Ex. GOOG 1105
`
`

`
`U.S. Patent
`
`Feb.15,2000
`
`Sheet 12 of 21
`
`6,025,841
`
`.
`
`•
`
`.
`
`I • . • L ••• I • • • z .
`
`:in all :propriety do.
`
`901
`
`iii a Iarget: sense, 1o.1e cen DO(. ded1C6l1:-e -- r:.re can no1.
`'-!11---tDut: ....
`consecra~e -- ~e can no~ nallo~, ~his ~~ound -- The brave
`¥ have b~llo~d it- 1
`~n, liv~Dg ~~d d~~d,
`. The -.,arld vill
`far obave our poor po
`1::1 tr..le :not.e, not: 1on11
`lfh1lc: 1t
`c~n nevet: !orgeG Vhar.:.
`
`~l;"IJ~~Jl.,...t;.:A.~.,JJ;Y~~-~~!:_. .• J;.,~sLJMJ""'l.IJJ:l,J~~M~~ .... ~Mw!t~l.lQJ.h .... :::.;;:
`~-~&!;: ••. ~.§: •• ~~~~-~!~~}J'~S-~.9.l;'f~ ..• r;:A~~~!=~,~~~~-g~&J,.!r~.»-9-~.MY.ft. .. ~~~~».
`.~~":'!~~.4~·-·-~~~;~,.1.~~~~~~~~.~'!!-.ll,~~?\.Y-!:~}l:!:.,A~~.k~f:.~~,.Ja.f
`t~c~.~-9.E~tmat:!:SL!=-)~~~~ s~;.~1:w~!.~~;::,~ ,J.e i?I,_.t~_s5';U~
`
`FIG. 9A
`
`Dfl [lie Edit Dew tnsert Fm"mat Iools Ji.ble ~ 1::1$
`r;:&J[g]
`"JI D ~ Iiiii ~ 1]. ~ I ~ ~ • 4111'1 ~ nt ~ , . . . 11UIB ;; I f!l
`
`rr~y~ ~D ~ll prap~iety do.
`
`,
`901
`INe~ 'tex~ c"i'u;e;-un~-"OEO~t, J.no lOt"IJ~ ""ien:;e:- w:c con
`I tlor.:. ded1cace -- -oe can nor.. consecrat-e -- \:le can not. hallow
`._..u..__, ellis araWLI1 -- ne ln:ave JoenJ 11v1na and dead, iibo
`rtc:uggi'ed" b.ec:er b'~~.ve
`to ~d cr detrac:t.
`r~uibet: vhe.t: ye
`t.:bey d H1 here .
`
`FIG. 98
`
`MoveAway - Line Wrap
`
`Ex. GOOG 1105
`
`

`
`U.S. Patent
`
`Feb.15,2000
`
`Sheet 13 of 21
`
`6,025,841
`
`_ _Faoter
`
`FIG. 10A
`
`32'
`
`_rox~-------------------------------------------------
`
`~1001'
`
`1
`
`FIG. 108
`
`MoveAway - Insert Page Number
`
`Ex. GOOG 1105
`
`

`
`U.S. Patent
`
`Feb.15,2000
`
`Sheet 14 of 21
`
`6,025,841
`
`30
`
`~!it (ile ~dit !"- ! - t ~mat !cols. l!_ble ytinduw !_!elp
`
`\J II~D ~ ~ I .s ~ ~ I ~. ~. ~ ~. .. . , ~ ~ I.~~ I& I,[!). "
`
`. t;j~fE1
`
`Tro.n~ crlpt: or t: be ""lf..l&:.QJ.M COllY" or t:.b.e fihC&Jr~9:.I.-I I!.!idreo::~ ; ....
`::->>~
`;:-;·<;
`loroutlb't t:or-r:h, u~:~:'j
`ta tne propij~~j
`
`Four score and seven
`IJ.eoc nat.ion,
`are ~~~ated equal"
`
`:Nm.r ve are et'lr,1Q!Jel1 in
`ti.GC ion so cotJ.Ce 1 vect,
`· ate a
`;b~r;t;le. field of th-..'t
`,....,,..,' r~·•.,_~ ,...,_"-""""~'"•'•,.,.,..,.,.--.
`s:s~~-~:.1~SLRL~::;_ f~:~r tho=e 1rno died here, t~t. the
`rr.oy, 1.n all propriety de.
`
`r
`
`32
`,:.;::<
`'t:.E'!S't ln!1 orhecher tb:':d
`e:n.dure.
`IJelJ~{i
`portion of ;~;:;:~
`D'!lt· ioD rnigh:[;~~i
`~:'~3: j
`~J:iJ
`
`noc decU:::ac.e -- ve can noc. co:nsecra.:e -- 0.1e can not.
`iO
`thi;:: g.r:oWJ.d -- The: b~~ :men~ lhn.ng aDd de:-!lld1
`rsba
`he~:e, have hallol:!ed :it, far above our poor pouer ;.
`f"'
`
`..
`
`!:?"
`
`t~.;..,
`
`. l/.1
`
`/It 1'
`
`tn l
`
`Cd 1
`
`FIG. 11A
`
`FIG. 118
`
`MoveAway - View Header and Footer
`
`Ex. GOOG 1105
`
`

`
`U.S. Patent
`
`Feb.15,2000
`
`Sheet 15 of 21
`
`6,025,841
`
`30
`
`n!'A [lie ~ lllew I.nsert flltfllat Iools ~j W'jDIIDw 1:1$
`GJ:m~
`lilil • 4f ~-. · o -I& •I H11 sm Iii I oo
`~ m Ia Cl ~ l
`
`Tre.~c r i pt a:f the "'!'licola_Y, Copy"' o:f t:t..e: Qa!;_~,Y,;:'~~:;_s .iddre:-'!1!1
`
`Jout: s~ot:e and aeven ye9La ag:o out: !at;het:a brOIAQ'bt:. :!01:1:-h, Jt~i
`
`ne\J nac. ion r conceived. in 1:1berC9r and ded.ic a ted r:,o the prot:~'}
`'lt.t:e Cl: 1:~t.ed etp.HI.l ••
`:;:;:;;;
`'~M
`Uo'tl ve ~r:e entJ~qed ln o areot t;::tx~L uar, te~t,1no;r 'tlt.v::tbet: tt'.:'~"4
`l!~~~I:!
`:nat-ion so conr~e l'iled., and. so d.ed.l.c at:.eo:t, can lotl..;t eru1ure.
`~~~~~!~ .... £;i,~t';! 1:1£ tha.t \mt:. 1Je co.n: tc dedic~t.e a pot:t icm of ~::~
`!"~~~~1-~~.e,l=~ for t.bc::se vho
`n~ticn miqt;;~:~~;
`'',',""~
`:may, in all p~:oprt.e:ty Clo.
`~~~:~
`~-:; ~ :~
`
`lie\.1 telt:L causes line 1JI:Qp
`nDt dedi~ate -- ~e can not c
`th1~ gr:ound -- The br~ve ~n.
`bo.lloned
`r.ror ld
`
`FIG. 12A
`
`1205
`
`Loolbars
`7out: seq
`B.uler
`ne10 Dati
`are crea,iJ !!cxL.nlenl Milip
`
`FIG. 128 MoveAway- lnsertNiew Annotation
`
`Ex. GOOG 1105
`
`

`
`U.S. Patent
`
`Feb.15,2000
`
`Sheet 16 of 21
`
`6,025,841
`
`Paoe !'Vllbers...
`Dale allll T..-ne.(cid:173)
`~oText
`
`Footnote..
`C:.<dlicm ...
`Cross-[da-ence...
`1~51 and T l!lblec ...
`
`!!_lchll'e
`Ner.1 'texr.:. c a.u:iE Te:!it IIOI.j
`file_
`not. ~clic:at.e :
`thi3 ground ·•
`-
`.
`jJ))ert ...
`
`FIG. 13A
`
`flllOlnote .and £nooote
`
`I) £1
`
`1310
`
`Faw: score all(
`tv.~t :LOll.~ C:i
`C!r:-eote:cl
`
`€·[~~}
`Ct.r<h:lte
`
`6:1 ttr.rn cf p.sg~
`End cf 00--unert
`
`ۥ
`!:!JI:a~4urrber
`0 Q,Jsloo! m:rk:
`
`FIG. 138
`
`MoveAway - Insert/View Footnote
`
`Ex. GOOG 1105
`
`

`
`U.S. Patent
`
`Feb.15,2000
`
`Sheet 17 of 21
`
`6,025,841
`
`30
`
`r.;]l].[g)
`~
`'
`
`fcUJ:: !Scare and ~even year:~ ago cur :father!!! br:ought
`neTI ~-.~'t ::1on,
`c:=a nc;e :t.vl!:d 1.:n. J.1.be
`i;jre t'!rea'te~ equi;jl"
`J.
`No~ ~e are enqe~ed iD ~ gre~t
`IH!Lt-iDD =o CQD.CII!i"o":d.•
`I:Uld. Z'::tl
`&E:!:.'t.t'7:.0
`•• :tJ;.~.L4 0£ t: ha.t.
`!'l"ar -
`fie
`[.~2J:.lB9: . .J! .. l@~~ tor-
`t bo::~::: vrho d
`. ·····-·····-····-··· .. ·-... · .:Til fd'~;;l.
`
`--~;.,._wP ~-
`~-,~---q~~~~-~~-~·-C"--'•·~· • 0
`
`FIG. 13C MoveAway- Insert/View Footnote (cont)
`
`Ex. GOOG 1105
`
`

`
`U.S. Patent
`
`Feb.15,2000
`
`Sheet 18 of 21
`
`6,025,841
`
`Four ~ccu::e and ~even yeac:s ago cur :fathers brought
`nev nat~on, ~on~eLved ~n Libert~, end ded1~dted to
`a~e created equal"
`
`t-e~:~~itl!,;l tthether
`:Nou r.1e ~e enq!SJ;led i:D ~ a:~:e«t civil tt.eo.r.
`:Dation ~a conceived, ~ =c dedicated, ~~n long
`~-~-!~~a.~ti~J...!! of thdt.
`cledic~:~te a
`£!;.2..ti..JN~Jl.JA!& tor: t
`~ay, in all vrov~ie~~
`
`32
`
`=enl:le 1
`Ncu l;.e)(t l:'a•..l.!l'e5 line
`-- ue cen not
`not ded::.cfltc -- t~e cen
`t.tll.;:! Qr•:>lJ.t:ld -- Ttl.e :br11ve l!!I:D r 11 V 1 UIJ ~:nd rtec_ct, ~hO
`sr:.t:ll!dQled llece, nave nallotied 1~, l':Str above our )Jooc po1o.1er
`t.a a.lld or: Clecracr.:.. The vorlcl 1J1ll lit.tcle ti.m;e, nor lo:na
`
`FIG. 14A
`
`Aqnrnertl::
`
`tmmur2)
`o-.d~ta:bn - - - - - - - - - - - - - - - - - - - - -
`!:_eft:
`
`&gl-t:
`
`s~:rn --------------------------------------
`li!iL~JS
`aefora:
`fB
`loP~
`
`o ' ,.zx:'~<et>-~o.~'".__..,~._ lN.-,._<_,.~~"~{. ""'~Vf>~·-,~~":""~-'o:; _,,_~·--~-_., :f>..cz,,,, __ ;i_
`
`~=r::~\:~:,*~~E:$:,~:a.
`rtlllrtalf: fiiDin& tit am.:: ,JIIIIl"'M: 'tf~l ,DiaMilt "t:lCIUlat 1t.X
`'A,;.---..- ?'\.-,...,..,,_..~ ~1,.,.,.....,.._ """'-~¥<~"-'."'"'<'. ¥""'""7"C-'' ~.{ ·'!>'r ,-o<; """'~...,..;'- '7.?: .. ~,,.- 'v-tt .. ;_-n,J.'(cid:173)
`%-t O.""i~ "'""".("o~-"""·~.:"'ii(.-"'""'f ....... ~<;N1\~'Ji.'.'t-"4.i>Vk,;_'+;!!.'"l.'-f\("-:<Tt ""+""'>,:_"'-S"-~
`;'-,.~t.
`~;.-'--""'"! A""'"""'--M--d>.*"-"''-i''~~'
`
`32'
`
`FIG. 148
`
`MoveAway - Dialog Display
`
`Ex. GOOG 1105
`
`

`
`U.S. Patent
`
`Feb.15,2000
`
`Sheet 19 of 21
`
`6,025,841
`
`30
`
`l'lorr ve ~re engo.ger:i 1 n ~ gt:e~t !:!:tv:t L 1:11u·,
`n.::'<Clat:t
`~~::. conc~lved, ond. ~o a~~~~~~~~~~~~
`~~r; .. :.:J,..§!,.~-~Kk~ o! 't-tliOn ~ar. lie
`~~;l.H.~ . .;oJ ... I!S:!:=. !or t;;hose w-bo d
`J.D all pro pz: iet "{ do.
`ffil!'l'h
`
`Ner..r 1: e:x 1:: c l!IU!'!I'"'"' 1:1 ne 'l:lt:Op
`l:le ~an not.
`noc de.:U~e.c.e -- ~e can not. conae-crac.e
`r:.n1s ~Srou:n.d -- The llt:G!'.re :ri!E'tl, 1ivina: and aeadJ Ybo
`:!'ti:WJ"tlle!o:i net:e, biS.VO: b!S.llt:t\leo:i it:, feu; '=ibovo: C·W: J;ll;:;;or
`t.o add or detract. The uo~::ld 'llJ.ll little not.e. nor long
`
`FIG. 15A
`
`··- -----~· .
`--
`. ~
`Ul M1crD2Qft Wmd · fi e:t!IJ'S: text dm:
`
`. .
`
`.. - .. -
`
`~---~--- ~- -·-
`
`.
`
`l!lfiJ £I.
`
`!
`
`Fow: :!'core !!lnd 3ev>::n. year~S ago ow: :f'!llt.herz=: b:z::ougbt.
`nerr notion, conceived in liberty, and clcdicoted to
`
`::: ::e::tt e:::~: in a :~~03
`
`O!!lt:;l.on ~So con.co::ivedr
`'!lla.d 15
`~~~-!=;-lr;_,.._,..~t.l:;!!)};:! of that 'kl~S.r.
`-~!l:-~!:J1~9,.._PJ.~~ :!!or th0-:!51!: Yll
`roa~, 1n all ~ropriety do.
`
`c1v11 )]flC( :s~~~r;r r..rher:.ber
`
`o:ric-;tecl~~;;:;llong enduce.
`cpme to ded:.cft.e a port J.on c £
`tbd here, t:her;:. the
`I
`I
`I
`~~ tQt
`li.cll! l.I:'~JI •• B~otrf-- J
`:tletf text CIS.\l:l'e!Z!
`not dedicat.~ -- ~e c~n not con!~~
`l;q_-_t __ -Mte __ - - - - - - - - (cid:173)
`t.l:.i~ ground -- The breve rren,
`:!ltt:'UIJ'!J leel b.et:e r ha.vc: ha.llOl:l~d A [unl. ..
`aer:.rac~. The ~orld Eli f. olll'ao!JI'aph_
`i=: llull!.!ts and ~ertno­
`......._~ ............................. """""""......,_._ __ _,_~:J Draw Table
`
`lrt(cid:173)
`
`FIG. 158
`
`Obscure - Drag Operation
`
`Ex. GOOG 1105
`
`

`
`U.S. Patent
`
`Feb.15,2000
`
`Sheet 20 of 21
`
`6,025,841
`
`30
`
`1601
`
`Tr~T•!!I•:::'r::tpt. a£ t.be tt}i~"?Pll!l.~ Copy 11 of the G~~U~bu~ A.ddt:"e::r!5
`U1t.:ti a pl~t.ure inse~c.ed
`
`and ~ev-en 'loreor .:~ ago our :tc.t:r.er::r brought
`in l ibet: t,;
`eu:od cled icl!>.t.e:d to
`
`FIG. 16A
`
`ifMjeunon Word - Gett.n tewtdoe
`M!!aEk
`
`'
`
`•
`
`'
`
`I
`
`1601'
`
`Tr:64tl3cnrn:; o:r ~.:.he "~.lxQ.l~JI: covv-'" o:r c.he &.~~§~~~~ Address
`~ith a picture io~erted
`
`0
`
`D
`
`I
`
`---1
`I
`
`32'
`
`: u
`~~J
`__ 1605
`r
`
`D
`
`crour:: ;"H.:or~ rtncl. ~~r::D yeo.r~ OIJ'O OUt:~Ot.h~r!'l l:!I'O!loJht torth, UJ)Otl
`m:'l:l n>J.t.icn, ccncei~d in l:iberty, NLd di::dicl!l.ted to cbe pt:opo::sit
`;_.._ ........... ~...~~~, . ...,-4 .. ~~(D~!~L1r=~-~'"'l""~.~"'-~~~~.,.,~-. .-_ "---.. -__ --~~~Y-~~-~~ti~?~~~f~i~~~~j;~;~~~~~£6:?~- ~--
`lJiS
`f((C TI'It:
`ln :l
`Co! j
`sec 1
`IJ l
`llC 1.3"
`!!.Kf t~ -~'i
`
`FIG. 168
`
`Disappear - Resize Operation
`
`Ex. GOOG 1105
`
`

`
`U.S. Patent
`
`Feb.15,2000
`
`Sheet 21 of 21
`
`6,025,841
`
` ~)
`
`.
`
`.
`
`U:
`
`:ron.!i, upon ;~:n
`the ~u:cpo~it~;:\:
`
`;•,-",""'
`
`Four score al:ld seven vears aQja our rat:.Jje t:s br o'~C"hr.
`n~u nation, conceiv~d in lihert~, and dedic~ted to
`ore created equol"
`
`No~ ooe are efigaged in a
`na.c.10J:l. SO COl:lCe ived r Eil:ld SO
`~,1;;!.17-vL~J~ of tl-.ot 'IL'Iat:. kJe
`,r;g~S;.J._~XI~R.l.~S.~, !or t-hose Yllo
`~~y, in oll propriety do.
`
`FIG. 17A
`
`!t.<;;!O our £at-herl!ll bcou.gbt;
`E"'our !!'COrt: ~w.i !!'~n ye:e\I::!!'
`nev n~tlon, conce1ve~ 1n 11bertv, dUd d~d1coted to
`32'
`(.rhet.her
`ew.iu.c-e. Ue are
`:portion o::t it,
`Dl!l.t. i OD might.
`
`~lo'!J' ve are encraaen 1 n a qr
`~tion ~o ~onct:~ved, and ~o
`~~.:tJL.;:J.~~~ oi tnat 'lilar. lJe
`~x~~.R~~. for t.h.o;::e lfho
`~v, 1n all proprler.y tto.
`
`•. But, l:n o lo.rqer ~etl=re, r:re co.n
`Nev t:r::::n:; C!l'U::!eo: 11ne l.1t:'OJI
`not dedic;at,e -- '11: c:an not. co=ecr;at.e -- lfe CI!UI. Dat. b.allov,
`t.hi:!!! grcu.nd -- Th~ bc-l!!We CTen, li,ring and del'!!d,
`~:tho
`s~.r-uqgled bet:e, have halloved 1~-.. !&r above our Imor
`:::''1,.':-.,......,.",1cM'"'i'.d~>-
`detract. Tb.e ~orld li'J.ll litclll!: not
`not: 1'-',·,.vcc.v/,·,
`p'* 1
`
`£e: l
`
`l (t
`
`N: l'
`
`lnl
`
`FIG. 178 Reduce
`
`Ex. GOOG 1105
`
`

`
`6,025,841
`
`1
`METHOD FOR MANAGING
`SIMULTANEOUS DISPLAY OF MULTIPLE
`WINDOWS IN A GRAPHICAL USER
`INTERFACE
`
`TECHNICAL FIELD
`
`2
`selected \vindow on top of all other windows at all times.
`Typically, these are displays associated with computer func(cid:173)
`tions for which the user may wish quick access to provide a
`command or to observe the progress of a task in progress.
`s Examples include the display of a help function, a file
`download status indicating window, a video window, an
`audio control panel window, or any other type of windows
`that the user wishes to maintain in a highly accessible state.
`To help users arrange information on the desktop in a
`more stable and persistent fashion without necessarily hid(cid:173)
`ing any valuable information, many modern computer sys(cid:173)
`tems provide a GUI wherein windows can be moved across
`the desktop, just like pieces of paper can be repositioned on
`a physical desktop. In addition, modern GUI windows
`15 typically carry several controls that allow the user to resize
`the display area of the window-if the window is too large
`to fit on the desktop "as is", the user can shrink it to fit the
`available space or to assume a more desirable size. By
`adjusting the sizes and positions of various windows, a user
`20 can often arrange his or her desktop to show several different
`types of contents at the same time.
`Even though this approach to resizing and repositioning
`windows allows some degree of control over ready access to
`desired windows, users in modern computer systems are
`25 finding that they have more information to work with than
`they are able to fit on a desktop at one time. Modern
`integrated application suites such as OFFICE 97-which
`provides a word processing, spreadsheet, electronic mail,
`Internet browsing, database, and other types of application
`30 programs-provide myriad possibilities for information dis(cid:173)
`play; users are beginning to create content in one application
`program that is linked or embedded into another application
`program, thereby necessitating management of multiple
`windows. Present day display technology does not provide
`enough display screen "real estate" to display all that can be
`displayed.
`The WINDOWS 95 task bar is an example of a known
`solution to this problem. The WINDOWS 95 task bar is a
`small strip-like window that is displayed at the bottom most
`position on the desktop and used to control the visibility of
`other windows on the screen. The task bar provides minia(cid:173)
`ture representations of the active windows, which them(cid:173)
`selves may be completely ''buried" by other information or
`windows on the desktop. In order to avoid covering up the
`windows itself, the task bar can be set to appear only when
`the user's cursor hovers near the lower edge of the screen.
`When the user moves the pointer away from the task bar, it
`disappears again to display more of the desktop.
`All of these known methods of managing window
`positions, sizes, and displays, require the user to explicitly
`decide where on the desktop a window should appear,
`however. Whenever a user encounters a situation in which
`one window obscures another, he or she must rectify the
`problem by moving a window or changing one of the two
`windows.
`Accordingly, there is a need for an improved method and
`system for managing the simultaneous display of multiple
`windows in a graphical user interface. An acceptable solu(cid:173)
`tion would preferably address the shortcomings in prior art
`systems wherein a user must employ multiple step opera-
`tions such as manually locate a selected window for display,
`navigate through a list of active windows, resizing and
`reposition windows so as to reveal a desired window, access
`65 a desired window through a task bar, etc. Preferably, the
`solution would allow the user to select a particular window
`to be maintained in the highest display position (highest
`
`The present invention relates generally to the field of
`computer systems, and more specifically relates to methods
`and systems for providing continuous, automatic adjustment
`to window size and position based on analysis of a user's 10
`interaction with a computer system.
`
`BACKGROUND OF THE INVENTION
`
`35
`
`Modem Graphical User Interfaces (GUis) for computer
`systems present information to users inside content frames
`or "\vindows". This presentation mechanism is employed in
`programs operative under the Microsoft WINDOWS 95
`operating system available from Microsoft Corporation,
`Redmond, Washington, as well as in content display mecha(cid:173)
`nisms such as the Macintosh operating system available
`from Apple Computer, Inc., the X-Windows computing
`environment, etc.
`In such GUis, each window presents information of a
`particular type. For example, one window may display a
`letter in progress, while another shows the status of an
`electronic mailbox, while a third \vindow lists the contents
`of a user's hard drive. Windows are often displayed on a
`user's computer display screen in an area metaphorically
`referred to as the "desktop". Just as pieces of paper on a real
`desk top can overlap one another, windows on a computer
`desktop are dra\vn in a "z-order" that specifies which
`windows are drawn on top of other windows. The window
`with the highest z-order is the topmost displayed window,
`and may obscure portions of underlying windows with lower
`z-order.
`A particular problem encountered in conventional GUis is
`the management of multiple windows so that the right
`content is available to the user when he or she wants to see
`it. For example, if a window containing a listing of files (e.g., 40
`the WINDOWS 95 Explorer) is overlapping the user's letter,
`the user will be unable to work on the letter without first
`adjusting the display or changing the z-order of the windows
`on the desktop so that the letter is no longer obscured by the
`file listing window. Similarly, if the user later decides to 45
`access electronic mail, he or she needs to first make sure that
`neither the letter nor the file listing window obscures the
`electronic mailbox.
`The conventional solution to the problem of z-order
`display is to allow the user to change the z-order of windows 50
`on the desktop so that a desired and selected window
`overlaps all other windows. In most GUis, clicking on any
`visible part of a window with a mouse pointer will bring it
`in front of all other windows on the desktop by assigning to
`it the highest z-order in the paint order of \Vindow display. 55
`Although this lets the user view the window he or she needs
`for a particular task, it generally obscures other information
`on the desktop. Furthermore, if no part of the desired
`·window is visible because the desired window is completely
`covered by a larger window, then the user must resort to 60
`other commands, e.g., via clicking on the desired window in
`the WINDOWS 95 task bar, navigating to the desired
`window via the WINDOWS 95 Explorer, or by clicking on
`an icon which causes display of the available windows for
`selection by pointing v,rith the mouse.
`Furthermore, there are situations in modem computer
`systems where a user may wish to maintain the display of a
`
`Ex. GOOG 1105
`
`

`
`6,025,841
`
`3
`z-order) so as to be consistently available, yet behave in such
`a fashion that the display of the topmost window does not
`interfere \Vith the user's interactions with a selected under(cid:173)
`lying window.
`
`SUMMARY OF THE INVENTION
`
`4
`More particularly described, the present invention pro(cid:173)
`vides improvements to a computer system graphical user
`interface including a display and a user interface input
`device, in the form of a method for displaying a target
`5 window relative to a primary window. In the preferred
`method, a primary window is displayed on the display, the
`primary window comprising a predetermined region for
`displaying information and/or receiving user commands. A
`target window is also displayed, the target window com(cid:173)
`prising a predetermined region for displaying information
`10 and/or receiving user commands, the target window being
`displayed in a higher z-order relative to the primary window.
`A container area is defined on the display, the container
`area comprising a predetermined area within which the
`target window is allowed to move. A plurality of predeter-
`15 mined anchor points are defined on the display, each anchor
`point defining a different predetermined fixed location on the
`display.
`In response to a user operation with the user interface
`input device relative to the display, an avoidance region is
`20 defined in the container area, the avoidance region compris(cid:173)
`ing a predetermined region defined by a user avoidance
`region defining operation within which the target region
`should not be displayed. In response to a predetermined
`trigger condition associated with the user avoidance region
`25 defining operation, a move count comprising the number of
`times that the target window has been moved within a
`predetermined time period is determined.
`In response to the move count exceeding a predetermined
`30 value, a determination is made whether a redraw of the target
`window at a location associated with a selected one of the
`plurality of anchor points would result in display of the
`target window without overlapping the avoidance region. In
`response to a determination that a redraw of the target
`35 window at a location associated with one of the plurality of
`anchor points would result in display of the target window
`without overlapping the avoidance region, the target win(cid:173)
`dow is redrawn at a location associated with the selected
`anchor point.
`However, in response to (1) a determination that a redraw
`of the target window at a location associated with one of the
`plurality of anchor points would result in display of the
`target window overlapping the avoidance region, or (2) a
`determination that the move count does not exceed the
`predetermined value, a determination is then made whether
`the target window can be redrawn displaced a predetermined
`minimal distance away from the avoidance region.
`In response to a determination that the target window can
`be redrawn displaced a predetermined minimal distance
`away from the avoidance region without overlapping the
`avoidance region, the target window is redrawn at a location
`displaced a predetermined minimal distance away from the
`avoidance region along a line toward a second selected
`anchor point. However, in response to a determination that
`the target window cannot be redrawn displaced a predeter(cid:173)
`mined minimal distance away from the avoidance region
`without overlapping the avoidance region, the amount of
`overlap of the target window with the avoidance region at
`each of the plurality of anchor points is determined.
`Finally, the method involves steps for selecting the par(cid:173)
`ticular anchor point that results in minimized overlap of the
`target window with the avoidance region, and redrawing the
`target window at a location as.<;ociated with the particular
`anchor point that results in minimized overlap of the target
`window with the avoidance region.
`Accordingly, it is an object of the present invention to
`provide a system and methods for managing the simulta-
`
`The present invention provides a solution to the problem
`of maintaining a selected window in the topmost display
`position without interfering with an active underlying win(cid:173)
`dow. Briefly described, the present invention provides
`continuous, automatic adjustments to window size and posi(cid:173)
`tion of a selected topmost window (or other selected
`window) based on analysis of a user's interactions with the
`computer. A selected "target" window that is obscuring
`useful content in another window is automatically moved to
`reveal the content in the underlying window in response to
`a triggering condition that indicates that the user desires to
`access information underlying the target window. The user
`need not interrupt his or her work to explicitly adjust
`window size or position, adjust the z-order of windows,
`reselect a particular window with a task bar, etc.
`More particularly described, a system constructed in
`accordance with the present invention monitors a user's
`interaction with a computer system to determine whether a
`target window-which is preferably selected to be the
`topmost display order and can be any type of window-may
`be obscuring the content of an underlying or "primary"
`window with which the user is working. The system deter(cid:173)
`mines that the target window is "in the way", i.e. obscuring
`content in an underlying window, by detecting a triggering
`condition provided to the primary window through the user
`interface controls such as a mouse, keyboard, etc. In
`response to the triggering condition, a new location for the
`target window is computed and the target window is redrawn
`in that position. Typically, the redrawn target window moves
`in a predetermined direction in a sufficient amount to move
`out of the way. In some cases, the target window is tempo(cid:173)
`rarilv hidden instead of moved. Furthermore, the system
`moditors the user's interactions with the target window and
`is operative to reduce the size of the target window when the 40
`user has not used the content or accessed the target window
`for a predetermined period of time.
`The present invention provides at least three different
`ways to keep a target window from obscuring the content of
`an underlying window:
`1. Move Away. The system is operative to move the target
`window to a different location on the display screen to "get
`out of the way" of the area that the user has indicated in the
`primary or underlying window. When moving the target 50
`window, the system defines a quadrilateral content area
`which is to be avoided, as well as a larger rectangular area
`outside of which the target window should not be moved
`(called the "container"). The target window is automatically
`moved in accordance with a decision process described in 55
`detail herein.
`2. Disappear. The target window "disappears" momen(cid:173)
`tarily while the user executes an action and reappears once
`the action is completed. Typical actions that cause the target
`window to disappear in the present invention rather than 60
`move away are those in which the user is dragging an object
`to a point in the content area of the primary window that is
`obscured by the target window.
`3.

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