`
`Exhibit D
`
`
`
`
`
`
`
`
`
`
`
`Case 1:20-cv-00351-UNA Document 1-4 Filed 03/11/20 Page 2 of 16 PageID #: 127
`
`(12) United States Patent
`Shaver et al.
`
`USOO696.6038B1
`(10) Patent No.:
`US 6,966,038 B1
`(45) Date of Patent:
`Nov. 15, 2005
`
`(54) SYSTEM AND METHOD FOR IMPROVED
`NAVIGATION USING BOOKMARKS FOR
`MOVEMENT BETWEEN LOCATIONS INA
`WINDOWS ENVIRONMENT
`(75) Inventors: Robert Shaver, Watertown, MA (US);
`Douglas Walter Conmy, Nashua, NH
`(US)
`(73) Assignee: International Business Machines
`Corporation, Armonk, NY (US)
`Subject to any disclaimer, the term of this
`patent is extended O adjusted under 35
`U.S.C. 154(b) by 557 days.
`
`(*) Notice:
`
`(21) Appl. No.: 09/337,539
`1-1.
`(22) Filed:
`Jun. 22, 1999
`Related U.S. Application Data
`(60) Provisional application No. 60/112.203, filed on Dec. 14,
`1998.
`(51) Int. Cl." .................................................. G06F 3/00
`(52) U.S. CI.
`715/854; 715/762; 715/835;
`s
`(58) Field of Search ................................. 345/854, 738,
`345/739; 707/5011; 709/217; 715/854,
`738, 739, 762, 835, 781, 716
`References Cited
`U.S. PATENT DOCUMENTS
`
`- - - - - - - - - - - - - - - - - - - - - - -
`
`s 715/7s. 715/71 6
`
`(56)
`
`4,813,013 A 3/1989 Dunn ......................... 364/900
`5,146,556 A 9/1992 Hullot et al. ............... 395/159
`5,204,947 A 4/1993 Bernstein et al. ........... 395/157
`5,241,655 A 8/1993 Mineki et al. .............. 395/156
`5,297.253 A
`3/1994 Meisel ....................... 395/160
`5,301,348 A 4/1994 Jaaskelainen ............... 395/800
`5,371,844 A 12/1994 Andrew et al. ............. 395/155
`5,375,200 A 12/1994 Dugan et al. ............... 395/159
`5,404,442 A 4/1995 Foster et al. ................ 395/159
`5,420,976 A 5/1995 Schell et al................. 395/159
`5,430,839 A 7/1995 Jagannathan et al. ....... 395/159
`
`
`
`5,463,726. A 10/1995 Price .......................... 395/155
`5,463,727 A 10/1995 Wiggins et al........ ... 395/156
`5,469,540 A 11/1995 Powers, III et al. ........ 395/158
`5,497.455 A 3/1996 Suga et al. ...
`... 395/159
`5,500.936 A 3/1996 Allen et al. ....
`... 395/156
`E. A : W. et al. ....
`- - - S.E.
`5555,370 A
`9/1996 Lietal...
`... 395/161
`5,588,105. A 12/1996 Foster et al. ...
`... 395/326
`5,594,857 A 1/1997 King et al. .......
`... 395/352
`5,600,779 A
`2/1997 N. et al. ....
`... 395/340
`5,602,981 A 2/1997 Hargrove ..........
`... 395/352
`5,617,526 A 4/1997 Oran et al. ................. 395/326
`5,621,880 A
`4/1997 Johnson ...................... 345/700
`5,623,589 A 4/1997 Needham et al.
`- - - 395/160
`5,644,737 A 7/1997 Tuniman et al. ......
`... 395/352
`5,657,049 A 8/1997 Ludolph et al. ..
`... 345/145
`5,708,787 A
`1/1998 Nakano et al. ............. 395/352
`5,731,813 A 3/1998 O’Rourke et al. .......... 345/349
`5,734,380 A 3/1998 Adams et al. ....
`... 345/340
`5,745,109 A 4/1998 Nakano et al. ............. 345/340
`5,748.927 A 5/1998 Stein et al. .......
`... 395/333
`5757.371 A
`5/1998 Oran et al. .
`... 345/348
`2 -
`a e a
`(Continued)
`
`Assistant Examiner Mylinh Tran
`
`Primary Examiner Heather R. Herndon
`(74) Attorney, Agent, or Firm- Pillsbury Winthrop Shaw
`Pittman LLP
`
`ABSTRACT
`(57)
`A System and method for providing a bookmark Section
`within each program GUI. The bookmark Section contains
`one or more Selectable portions that enable a user to Select
`one or more bookmarks corresponding to programs, files
`within programs, views within programs or files, or any
`other graphical presentation that is accessible within the
`System. The user Selects a bookmark and proceeds directly
`to the desired location in the System corresponding to that
`bookmark with a single Step. The user may create book
`marks So that locations within the System may be quickly
`accessed.
`
`30 Claims, 7 Drawing Sheets
`
`2
`
`
`
`Case 1:20-cv-00351-UNA Document 1-4 Filed 03/11/20 Page 3 of 16 PageID #: 128
`
`US 6,966,038 B1
`Page 2
`
`U.S. PATENT DOCUMENTS
`
`5,796.404 A 8/1998 Gentner ...................... 345/352
`5,815,152 A 9/1998 Collier et al. ............... 395/348
`5,825,357. A 10/1998 Malamud et al. ........... 345/340
`5,841,435 A 11/1998 Dauerer et al. ............. 345/339
`5,854,630 A 12/1998 Nielsen ...................... 345/352
`5,864.815 A 1/1999 Rozak et al. ............... 704/275
`
`2/2000 Rosin et al. ................ 345/327
`6,028,600 A
`6,069,628 A 5/2000 Farry et al. ................. 345/348
`6,072,485 A 6/2000 Barnes et al. ............... 345/339
`6,147,684 A 11/2000 Nielsen et al.
`345/344
`6,184,886 B1
`2/2001 Bates et al. ................. 345/357
`6,246,406 B1
`6/2001 Nielsen et al. .............. 345/340
`* cited by examiner
`
`
`
`
`
`Case 1:20-cv-00351-UNA Document 1-4 Filed 03/11/20 Page 4 of 16 PageID #: 129
`
`U.S. Patent
`
`Nov. 15, 2005
`
`Sheet 1 of 7
`
`US 6,966,038 B1
`
`
`
`
`
`Case 1:20-cv-00351-UNA Document 1-4 Filed 03/11/20 Page 5 of 16 PageID #: 130
`
`U.S. Patent
`
`US 6,966,038 B1
`
`
`
`
`
`Case 1:20-cv-00351-UNA Document 1-4 Filed 03/11/20 Page 6 of 16 PageID #: 131
`
`U.S. Patent
`
`Nov. 15, 2005
`
`Sheet 3 of 7
`
`US 6,966,038 B1
`
`
`
`O
`
`Program Control
`Module
`
`Window Selection
`Module
`
`Window initiation
`Module
`
`Window Presentation
`Module
`
`Window Creation
`Module
`
`Bookmark Presentation
`lege
`
`Bookmark Selection
`Module
`
`Wisdow Selection
`Display
`Presentation Module
`
`Bookmark Creation
`logs
`
`Bookmark Execution
`Module
`o
`
`16
`
`2
`
`4.
`
`18
`
`120
`
`
`
`Case 1:20-cv-00351-UNA Document 1-4 Filed 03/11/20 Page 7 of 16 PageID #: 132
`
`U.S. Patent
`
`Nov. 15, 2005
`
`Sheet 4 of 7
`
`US 6,966,038 B1
`
`200
`
`
`
`
`
`Open Program
`
`Open Window
`
`Present Window Sollection
`Display
`Corresponding to the
`Opened Window on Gl
`
`Modify other Selectable
`Graphical
`Displays to Show inactive
`State
`
`tlaer Activity
`Selection
`
`Window Selection
`Display Sefeeted
`
`Closed
`
`Perform Window Activity
`
`Present Window
`Corresponding to
`Selected Graphical Display
`
`Close Window to be Closed
`
`s
`
`Rerusovo Window Selection
`splay
`Corresponding to Closed Window
`from G
`
`Present Aother Window if
`any others Exist
`
`Fig. 4
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Case 1:20-cv-00351-UNA Document 1-4 Filed 03/11/20 Page 8 of 16 PageID #: 133
`
`U.S. Patent
`
`US 6,966,038 B1
`
`s
`
`
`
`
`
`
`
`
`
`20€
`
`
`
`Case 1:20-cv-00351-UNA Document 1-4 Filed 03/11/20 Page 9 of 16 PageID #: 134
`Case 1:20-cv-00351-UNA Document 1-4 Filed 03/11/20 Page 9 of 16 PageID #: 134
`
`US. Patent
`
`Nov. 15, 2005
`
`Sheet 6 0f 7
`
`US 6,966,038 B1
`
`Bookmark Creation Request
`
`Determine Program and Operation
`
`28uma
`
`Cmto Bookmark Dmbnu Entry w
`
`Cram Bookmuk Button On GUI \J
`
`IIIIIIIII-Il.I..-III-IDI'I'IIII-IIIIIII‘ll-3.1!"--.I'II'IIIll-lIla‘ulcnl'anl‘ll'll'nl'l‘nli(.ll.nnllllll
`
`
`
`
`
`
`Case 1:20-cv-00351-UNA Document 1-4 Filed 03/11/20 Page 10 of 16 PageID #: 135
`Case 1:20-cv-00351-UNA Document 1-4 Filed 03/11/20 Page 10 of 16 PageID #: 135
`
`US. Patent
`
`Nov. 15, 2005
`
`Sheet 7 0f 7
`
`US 6,966,038 B1
`
`=1r—---_-—--—-——-~---_—F__------.._-—-__—__--_-——--—--_~—__-.—_.—..—_.—-_-_-
`
`smet Bookmark Bum
`
`37’
`
`Dan-mine Prognm and Operation
`
`374
`
`3"
`
`Opon Program and File
`
`—--------_—_—---------—_.—__-_-_-_--_.._-_-- ........................
`
`
`
`Case 1:20-cv-00351-UNA Document 1-4 Filed 03/11/20 Page 11 of 16 PageID #: 136
`
`US 6,966,038 B1
`
`1
`SYSTEMAND METHOD FOR IMPROVED
`NAVIGATION USING BOOKMARKS FOR
`MOVEMENT BETWEEN LOCATIONS IN A
`WINDOWS ENVIRONMENT
`
`RELATED APPLICATIONS
`This application claims priority based on U.S. Provisional
`Patent Application Ser. No. 60/112,203, entitled “System
`and Method For Improved Navigation In a Windowing
`Environment With Window Tabs and Bookmarks, filed
`Dec. 15, 1998. This application is also related to U.S. Pat.
`No. 6,489,975, entitled, “System and Method for Improved
`Navigation Between Open Windows. In An Application
`Program Using Window Tabs,” which issued Dec. 3, 2002.
`
`15
`
`FIELD OF THE INVENTION
`The invention relates to a System and method for present
`ing a graphical user interface that improves navigation
`within a computer System by using bookmarks to enable the
`user to move to any location within the computer System.
`
`BACKGROUND OF THE INVENTION
`Graphical user interfaces (GUI) enable users to navigate
`among various options, programs, and features available by
`a System and have become a Standard feature for computer
`Systems. Some Systems may enable a user to open and
`operate multiple different programs simultaneously, with
`each program having a GUI that enables users to Select
`features and functions in that program. In order to move
`between multiple open programs GUIs, an operating sys
`tem GUI may be provided that has a task bar containing
`icons that may be Selected to activate a different open
`program. A different icon may be presented in the taskbar
`for each program that is opened by the System. Additional
`icons may also be presented in the taskbar.
`These systems do not provide a mechanism within a GUI
`for easily opening other programs or files within particular
`programs. To open a program, these Systems require the user
`to either (1) utilize a start menu and enter the name of the
`program or file to be opened (which requires the user to
`remember the name of the file for the program or browse
`through a number of files) or (2) minimize all currently
`displayed program GUIs to reveal a desktop on which
`various icons may be presented that, when Selected, open a
`particular program that is available on the System. To open
`a file within a particular program, a user repeats these Steps,
`opens the desired program GUI, and then, after the desired
`program GUI has been opened, the user proceeds with
`various Steps within that program to open a desired file.
`For example, if a user has a word processing GUI opened
`and desires to read a particular electronic mail message, the
`user must first open an electronic mail program and then
`open the desired message within that program. If the elec
`tronic mail program is already active, the user must still
`Select the icon from the task bar for the electronic mail
`program and then open the desired file. This requires per
`forming Several Steps for each action.
`Other current Systems may present a plurality of available
`programs Superimposed within a program window. For
`example, a plurality of Selectable icons may be presented
`near the top of the program GUI. The user may open one of
`these programs by Selecting the icon presented at the top. To
`open a particular file within that program, the user must still
`open the program from one of the Superimposed icons and
`then open the file within the program.
`
`25
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`Further, within each program a user may open multiple
`files or have multiple windows opened at the same time
`within that program's GUI. To navigate between various
`open windows, the program GUI may provide a menu bar
`with pull-down menus that provide a variety of selectable
`functions. One of the pull-down menus may comprise a
`listing of the opened windows within the program. The user
`may thereby activate a different window by selecting from
`the list of windows presented in the pull-down menu.
`Some current Systems also permit the user to have mul
`tiple windows presented within a program GUI window at
`the same time. The user may Select the size of each window
`and may have the windows tiled or cascaded, for example.
`Additionally, Some Systems enable a user to minimize each
`window within a program window. Accordingly, multiple
`icons corresponding to each opened window within a pro
`gram window may be presented within the program window.
`The user may then select the window to be maximized by
`Selecting the icon corresponding to the program window.
`These current Systems therefore do not provide an easy way
`to move between open windows within a program GUI.
`Other drawbacks also exist with existing Systems.
`SUMMARY OF THE INVENTION
`Accordingly, it is an object of the present invention to
`overcome these and other drawbacks of current Systems.
`One object of the present invention is to provide a System,
`method, and computer readable medium that facilitates
`navigation to any portion of a computer System.
`Another object of the present invention is to provide a
`System, method, and computer readable medium that
`enables a user to quickly acceSS any portion of a computer
`System through the use of bookmarkS.
`According to another embodiment of the present
`invention, a System and method are provided for providing
`a bookmark section within each program GUI. The book
`mark Section may contain one or more Selectable portions
`that enable a user to Select one or more bookmarks corre
`sponding to programs, files within programs, views within
`programs or files, or any other graphical presentation that is
`accessible within the System. The user may thereby simply
`Select a bookmark and proceed directly to the desired
`location in the System corresponding to that bookmark with
`a single Step. Further, the user may create bookmarks So that
`locations within the System may be quickly accessed. For
`example, if a particular word processing file within a word
`processing program is frequently updated, the user may
`desire to bookmark the file So that the user can open that file
`by Simply Selecting the corresponding bookmark.
`This system may be realized by the provision of a
`plurality of modules including a bookmark Selection module
`that enables a user to Select a bookmark presented in the
`GUI. A bookmark execution module responds to the book
`mark Selection module to present the location corresponding
`to the Selected bookmark. A bookmark database is provided
`that contains entries for each bookmark on the System, each
`entry containing an identification of the bookmark and the
`link associated with that bookmark. A bookmark creation
`module enables a user to create a bookmark to a location
`within the computer System. The bookmark presentation
`module responds by presenting the bookmark button that has
`been created.
`Other objects, features and advantages of the present
`invention will be apparent from reviewing the detailed
`description and drawings of the present invention Set forth
`herein.
`
`
`
`Case 1:20-cv-00351-UNA Document 1-4 Filed 03/11/20 Page 12 of 16 PageID #: 137
`
`US 6,966,038 B1
`
`3
`BRIEF DESCRIPTION OF THE DRAWINGS
`FIG. 1 is an example of a program GUI according to an
`embodiment of the present invention.
`FIG. 2 is another example of a program GUI according to
`an embodiment of the present invention.
`FIG. 3 depicts a block diagram of a System according to
`an embodiment of the present invention.
`FIG. 4 depicts a flow diagram of a method of operation of
`Selectable graphical displays for windows according to an
`embodiment of the present invention.
`FIG. 5 depicts a bookmark database according to an
`embodiment of the present invention.
`FIG. 6 depicts a method of creating a bookmark according
`to an embodiment of the present invention.
`FIG. 7 depicts a method of selecting a bookmark accord
`ing to an embodiment of the present invention.
`DETAILED DESCRIPTION OF THE PRESENT
`INVENTION
`According to one embodiment of the present invention, a
`System, method and computer readable medium is provided
`for facilitating navigation within a computer System. FIG. 1
`depicts one embodiment of a system GUI 10 according to
`one embodiment of the present invention. GUI 10 may
`comprise Several features for improved navigation including
`a window bar 33 with one or more window selection
`displays 34 and one or more bookmark buttons 60.
`Specifically, a window bar 33 may comprise one or more
`window Selection displayS 34, each of which may corre
`spond to an open window within GUI 10. In one example,
`a window selection display 34 may be presented within
`window bar 33 for each window opened within GUI 10.
`Window selection display 34 may be selectable by a user
`through any known mechanism for Selecting portions within
`a GUI, including a mouse, keyboard, touch Screen, Voice
`response, computer pen, motion detector or any other like
`mechanism.
`According to one embodiment, only one window may be
`active within GUI 10. The active window may comprise the
`window in which editing may be performed or from which
`information may be printed, for example. According to this
`embodiment, by Selecting a window Selection display 34, the
`window corresponding to that window Selection display 34
`may become active.
`GUI 10 may also comprise an opened window area 32, as
`shown in the embodiment of FIG. 1, in which an opened
`window may be displayed. Selection of a window selection
`display 34 may cause the window corresponding thereto to
`be presented within opened window area 32. Accordingly, a
`user may navigate between a plurality of opened windows
`within GUI 10 by selecting the window selection display 34
`corresponding to the desired window. For example, by
`Selecting window Selection display 34a, as depicted in FIG.
`1, Window 1 corresponding to window selection display 34a
`may be presented in opened window area 32, as depicted in
`FIG. 2.
`According to one embodiment of the present invention,
`window Selection display 34 corresponding to the window
`presented in opened window area 32 may be displayed
`differently than the other window selection displays 34. Any
`method for distinguishing between display portions of a GUI
`may be used including colors, size, shape, tinting, flashing,
`rotating, Scrolling, lining, highlighting, or any other method.
`Further, the window Selection display 34 corresponding to
`
`15
`
`25
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`4
`the opened window may comprise a kill box 36 associated
`therewith. By selecting kill box 36, the window with which
`it corresponds may be closed. For example, kill box 36 may
`be selected by moving pointer 38 over the kill box and
`activating pointer 38 through an external device, Such as a
`keyboard or mouse. Similarly, pointer 38 may be used to
`select window selection displays 34.
`According to another embodiment, kill box 36 may be
`presented with a window selection display 34 when pointer
`38 is moved near or over that window selection display 34.
`Accordingly, even if a window is not presented in opened
`window area 32, the user may close that window by moving
`pointer 38 over the window selection display 34 correspond
`ing to that window and selecting kill box 36 presented for
`that window.
`According to another embodiment of the present
`invention, multiple window Selection displayS 34 may have
`kill boxes 36 presented therewith within GUI 10. Also, all of
`the window selection displays 34 may have kill boxes 36.
`Further, to assist in navigating, GUI 10 may also comprise
`a navigation bar 40 comprising, for example, one or more of
`the following navigation buttons: an administration button
`42, a designer module initiation button 44, a backward
`button 46, a forward button 48, a stop button 50, a refresh
`button 52, a search button 54 and a home button 56.
`Operation of these buttons may be according to known
`methods of using Such buttons. Additional uses of these
`buttons is described in greater detail below. Further, admin
`istration button 42 may also be implemented as a bookmark,
`as those bookmarks are described below.
`Forward and backward navigation buttons 46 and 48 may
`also be used to navigate between windows within opened
`window area 32. Selecting backward navigation button 46
`presents each window opened in reverse order. Similarly,
`Selecting forward navigation button 48 presents each opened
`window in the order it was presented. Forward and back
`ward navigation buttons 46 and 48 may also be selected
`Successively to present each window that was previously
`active until the final or original window is presented. Other
`navigation buttons may also be used.
`According to another embodiment of the present
`invention, GUI 10 may also comprise a bookmark bar 58.
`Bookmark bar 58 may comprise one or more bookmark
`buttons 60. According to this embodiment, bookmark but
`tons 60 may comprise Selectable graphical presentations that
`contain a presentation area containing graphics depicting
`what bookmark button 60 represents. According to one
`embodiment of the present invention, bookmark buttons 60
`may correspond to a link to a portion of a System. The links
`may refer to a program, View, page, file within a program,
`View within a file within a program, action, or any other
`linkable portion of a computer System. Accordingly, the user
`may be able to open a view within a file within a program
`by selecting bookmark button 60 in GUI 10. By enabling a
`user to create bookmarks to anything within the System,
`navigation within the System is vastly improved. Bookmark
`buttons 60 may be replaced with any other user selectable
`mechanism within a GUI, Such as a pull-down menu or the
`like. Further, bookmark buttons 60 may be created in
`bookmark folders which allow the user to organize the
`bookmarks. Accordingly, a depiction of the folder may
`appear within bookmark bar 58. The user may then activate
`a bookmark button 60 by selecting the folder and then
`Selecting the bookmark button or other Selectable portion
`depicted within the bookmark folder.
`GUI 10 may also comprise other features. Specifically,
`GUI 10 may comprise a taskbar 12 comprising one or more
`
`
`
`Case 1:20-cv-00351-UNA Document 1-4 Filed 03/11/20 Page 13 of 16 PageID #: 138
`
`US 6,966,038 B1
`
`15
`
`6
`window Selection display 34 is Selected, the corresponding
`window may be activated and/or presented.
`Window selection display presentation module 108 may
`be responsible for displaying the window Selection displayS
`34 in GUI 10. Window selection display presentation mod
`ule 108 may also be responsible for presenting the window
`Selection displayS 34 in Such a way to distinguish between
`window Selection display 34 corresponding to the active or
`presented window and other window selection displays 34.
`Window selection module 110 may be responsible for
`receiving selection of window selection displays 34. Win
`dow selection module 110 may cooperate with an external
`mechanism that enables a user to Select a graphical display
`within a GUI, Such as a mouse, keyboard, etc. Upon Selec
`tion of window selection display 34, window selection
`module 110 may call window presentation module 112 and
`window selection display presentation module 108 to
`present the selected window and modify the display of the
`window selection displays 34 within GUI 10. Window
`presentation module 112 may present a window within
`opened window area 32 of GUI 10.
`Operation of modules 102-112 may be understood in
`greater detail as described below with respect to FIG. 4. FIG.
`4 is a block diagram of a method 200 according to one
`embodiment of the present invention. In Step 202, a program
`is opened by program control module 102. A user may then
`open a window in Step 204 through program control module
`102, window initiation module 104, and window creation
`module 106. When a window is opened, in step 206, a
`window selection display 34 may be presented in GUI 10 by
`window selection display presentation module 108. Next, in
`Step 208, if other window Selection displays 34 are present
`in GUI 10, those window selection displays 34 may be
`modified to be distinguishable from window selection dis
`play 34 corresponding to the now-opened window. Window
`selection display presentation module 108 may perform this
`function.
`Then, in step 210, system 100 waits for one of several
`activities by the user. If the user performs one of a plurality
`of window activities, step 212 allows the window activity to
`be performed and returns to step 210. Window activities may
`comprise any activity that may be performed with respect to
`an open window within a program. The activity may com
`prise editing, modifying, displaying, printing, Sizing,
`shifting, highlighting, etc.
`If, in Step 210, the System receives a user Selection of a
`window selection display 34 through window selection
`module 110, the System presents the window corresponding
`to that window selection display 34 in step 214. Window
`presentation module 112 may be responsible for presenting
`the correct window. After Step 214, the System may also
`perform step 208, as described above, to correctly display
`the current windows.
`If, in Step 210, the System receives an instruction to close
`a window, then in Step 216, the window that was requested
`to be closed is closed by window presentation module 112.
`Then, in step 218, the window selection display 34 corre
`sponding to the closed window is also removed from GUI 10
`by window selection display presentation module 108. Then,
`in step 220, if another window is still open within the
`program, then another window is presented in opened win
`dow area 32 by window presentation module 112. According
`to one embodiment, the window Selected may be the last
`opened window, the previously displayed window, or a
`random window. Any method for Selection between a plu
`rality of windows may be used to determine the window to
`present. The system then performs step 208.
`
`25
`
`S
`icons for Selecting open programs in System 10. Taskbar 12
`may comprise an initiation icon 14, a plurality of opened
`program icons 16 and a time icon 18. Task bar 12 may
`operate according to known methods of operation of task
`bars.
`GUI 10 may also comprise a program header 20 which
`has one or more window control icons 22 within that header.
`Program header 20 may display the name of the program
`that is operating on the System. GUI 10 may also comprise
`a file menu bar 24 comprising one or more file names 26.
`Each file name 26 may represent a pull-down menu accord
`ing to known methods.
`GUI 10 may also comprise a toolbar 28 having one or
`more tool icons 30. Tool icons 30 may be selected by a user
`to perform one or more functions within the program
`displayed in GUI 10. Specifically, GUI 10 may comprise a
`taskbar 12 comprising one or more icons for Selecting open
`programs in System 10. Task bar 12 may comprise an
`initiation icon 14, a plurality of opened program icons 16
`and a time icon 18. Taskbar 12 may operate according to
`known methods of operation of task bars.
`GUI 10 may also comprise a program header 20 which
`has one or more window control icons 22 within that header.
`Program header 20 may display the name of the program
`that is operating on the System. GUI 10 may also comprise
`a file menu bar 24 comprising one or more file names 26.
`Each file name 26 may represent a pull-down menu accord
`ing to known methods.
`GUI 10 may also comprise a toolbar 28 having one or
`more tool icons 30. Tool icons 30 may be selected by a user
`to perform one or more functions within the program
`displayed in GUI 10.
`According to one embodiment of the present invention, a
`system 100, as shown in FIG. 3, may be provided for
`35
`realizing the features described above. System 100 may
`comprise, for example, one or more of the following mod
`ules: program control module 102, window initiation mod
`ule 104, window creation module 106, window selection
`display presentation module 108, window selection module
`110, window presentation module 112, bookmark presenta
`tion module 114, bookmark creation module 116, bookmark
`Selection module 118, and bookmark execution module 120.
`System 100 may comprise a portion of a personal
`computer, a network computer, a notebook computer, a
`portable electronic device, a mainframe computer System or
`any other computer System. It should also be understood that
`although Several modules in FIG. 3 are depicted as being
`within system 100, such modules may also be part of a
`different system as well.
`According to one embodiment, program control module
`102 may control one or more programs within system 100
`and presenting GUIs, such as GUI 10. GUI 10 may therefore
`be controlled by program control module 102. Window
`initiation module 104 may receive instructions to create a
`new window within GUI 10 through a menu, selection of a
`taskbar button, Selection of a tool bar button, or Some other
`mechanism, for example. Window initiation module 104
`may cooperate with an external device permitting a user to
`utilize one of these initiation mechanisms.
`Window creation module 106 may respond to an initiation
`instruction through window initiation module 104. Window
`creation module 106 opens a new window and presenting
`that window within GUI 10 and also creates a new window
`Selection display 34 corresponding to the new window. The
`correspondence between the window Selection display 34
`and the window may be Stored in a database So that when
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`
`
`Case 1:20-cv-00351-UNA Document 1-4 Filed 03/11/20 Page 14 of 16 PageID #: 139
`
`US 6,966,038 B1
`
`7
`If, in Step 210, a user desires to open a new window, then
`steps 204, 206, and 208 may be performed, as described
`above. This cycle may continue until, in Step 210, the user
`decides to close the program or exit the System, for example.
`According to another embodiment of the present
`invention, system 100 may also present bookmarks in GUI
`10. Accordingly, bookmark presentation module 114 may be
`provided to present bookmarks within GUI 10. Predeter
`mined bookmarks may be provided by the system. For
`example, bookmarks for a home page within the program, a
`mail program, a headlines page, an electronic calendar
`program, an address book program, a “to-do' list, a database
`replication program, “favorites” of the user, databases, cre
`ating a new file, an Internet browser, etc., may be provided
`by the program. Additionally, bookmarks for pages available
`on the World Wide Web or other Internet location may also
`be provided. For example, bookmarks Stored in a browser
`application may also be displayed within these bookmarkS.
`BookmarkS may comprise links to any file, View, or page
`within the computer System including a view from a pro
`gram operating on the computer System, execution of a
`program on the computer System, a file on a Server to which
`the computer System is connected, and even multiple loca
`tions to retrieve multiple files. The bookmark may also
`comprise a link to content outside the computer System, Such
`as information accessible through a packet-Switched net
`work Such as the Internet and the World Wide Web.
`Some or all of these predetermined bookmarks may be
`presented by bookmark presentation module 114. AS
`depicted in FIG. 1, bookmark presentation module 114 may
`present bookmark buttons 60 along one side of opened
`window area 32 or in any other location.
`Bookmark presentation module 114 may present a graphi
`cal display within bookmark button 60 that indicates what
`the bookmark represents. For example, a house may be
`depicted for a home page, a newspaper may be depicted for
`a Subscription, and a calendar may be depicted for a calendar
`program. Bookmark buttons 60 may also be presented with
`words to indicate what the bookmark represents.
`Additionally, various levels of bookmarks may be provided
`by bookmark presentation module 114.
`Specifically, a button may be selected and then bookmark
`presentation module 114 may present additional Selections.
`The additional Selections may be in the form of a menu, a
`pull-down Screen or a pop-up listing of additional buttons
`that may be selected or other mode of selection. Multiple
`levels of additional selections may also be provided by
`bookmark presentation module 114.
`A bookmark creation module 116 may also be provided
`that enables a user to create a bookmark. Bookmark creation
`module 116 may create a bookmark database 300, as, for
`example, depicted in FIG. 5. For each bookmark created,
`bookmark database 300 may comprise a bookmark name
`entry 302, a program entry 304, and an operations entry 306.
`Program entry 304 may contain linking information, Such as
`the name of the program. Operations entry 306 may contain
`additional linking information, Such as the location within a
`program that the bookmark represents, Such as a desired
`view, file, or other portion of the system. Other database
`formats may also be used for Storing the links that corre
`spond to bookmark button 60 presented in the GUI 10.
`A bookmark selection module 118 may also be provided.
`Bookmark selection module 118 enables a user to select a
`bookmark button 60 presented in GUI 10. Bookmark selec
`tion module 118 may cooperate with an external devi