`(12) Patent Application Publication (10) Pub. No.: US 2003/0081011 A1
`(43) Pub. Date:
`May 1, 2003
`Sheldon et al.
`
`US 20030081011A1
`
`(54) COMPUTER SYSTEM WITH ENHANCED
`USER INTERFACE FOR IMAGES
`(76) Inventors: Michael G. Sheldon, Seattle, WA (US);
`Franc Camara, Redmond, WA (US);
`Todd Ouzts, Redmond, WA (US);
`Chris Guzak, Kirkland, WA (US);
`Rajesh Ganesan, Redmond, WA (US)
`Correspondence Address:
`SCOTT B. STROHM
`SHOOK, HARDY & BACON L.L.P.
`1200 Main Street
`Kansas City, MO 64105-2118 (US)
`Appl. No.:
`10/185,327
`Jun. 28, 2002
`Related U.S. Application Data
`(60) Provisional application No. 60/335,737, filed on Oct.
`31, 2001.
`
`(21)
`(22)
`
`Filed:
`
`Publication Classification
`
`(51) Int. Cl. ................................................... G09G 5/00
`(52) U.S. Cl. .............................................................. 345/838
`
`(57)
`
`ABSTRACT
`
`A computer System and method are presented that enhance
`a user experience when Viewing images displayed on the
`computer. The System includes a user interface for the
`computer that displays a number of thumbnail images that
`are representations of image files existing on the computer.
`The thumbnail images are arranged in alignment with one
`another, Such as at the bottom of a viewing window. An
`enlarged preview image is positioned adjacent the thumbnail
`image. The preview image corresponds to a Selected one of
`the thumbnail images. A control is displayed in the window
`that enables the user to iterate through the thumbnail images
`in at least one direction. AS the user iterates through the
`thumbnail images, the enlarged preview image changes
`correspondingly.
`
`
`
`(RAM) i32 TTT
`
`PROCESSING
`UNET
`
`120
`
`190
`
`VIDEO
`INTERFACE
`
`OUTPUT
`PERPHERAL
`INTERFACE
`
`OTHER PROGRAM
`MODULES
`136
`
`121
`
`60
`
`N 10
`
`19
`
`MONITOR
`195 \
`196
`
`PRINTER
`
`SPEAKERSN-97
`
`USER
`REMOVABLE
`MON-REMOVABLE
`INPUT
`NON-VOL. MEMORY NON-VO, MEMORY
`NERFACE
`INTERFACE
`INTERFACE
`in
`140
`E-150-E
`-------------as------------ WPW
`1 141 N 151
`155
`N
`
`S.
`
`72
`
`PROGRAM
`DATA
`
`Y
`1
`
`SYSTEM | PROGRAMS
`144
`45
`
`a
`N \
`w 152
`PROG
`RAM
`DATA
`
`MODULES
`146
`
`
`
`6 e
`
`56
`
`.
`MOUSE
`
`
`
`
`
`
`
`NETwork-LOCAL AREANETWORK
`INTERFACE
`
`
`
`17O
`
`ES
`ES
`KEYBOARD
`
`180
`
`162
`
`181-5
`
`Apple Inc.
`Exhibit 1011
`Page 001
`
`
`
`Patent Application Publication
`
`US 2003/0081011 A1
`
`| 6 |||
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Apple Inc.
`Exhibit 1011
`Page 002
`
`
`
`Patent Application Publication May 1, 2003 Sheet 2 of 14
`
`US 2003/0081011 A1
`
`as a season --- suscan nanos eas a
`
`a-- a
`
`218
`
`
`
`
`
`
`
`
`
`INVOKE
`SCHEDULED
`
`PERIOD
`LAPSED2
`
`ARE THERE
`UNUSED
`SHORTCUTS?
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`SEEO
`
`u
`
`222
`
`DOES USER
`HAVE
`ADMINISTRATIV
`
`SPRIVILEGE
`
`INTRODUCE
`USER TO
`PROCESS.
`
`RECOMMEND
`SHORTCUTS
`TO CLEAN.
`
`ASK USER TO
`sHis TO
`CLEAN.
`
`236
`
`238
`
`CLEAN
`DESKTOP
`SHORTCUTS.
`
`
`
`
`
`
`
`CONFIRM USER
`SELECTIONS
`
`FIG. 2.
`
`ace
`
`Apple Inc.
`Exhibit 1011
`Page 003
`
`
`
`Patent Application Publication May 1, 2003 Sheet 3 of 14
`
`US 2003/0081011 A1
`
`Picture Tasks
`
`SPECIFIC TASKS
`
`Music Tasks
`
`TASKS
`
`Video Tasks
`
`Folder Tasks
`
`File Tasks
`
`GENERALTASKS
`
`FG. 3A
`
`Apple Inc.
`Exhibit 1011
`Page 004
`
`
`
`Patent Application Publication
`
`May 1, 2003
`
`Sheet 4 0f 14
`
`US 2003/0081011 A1
`
`
`
`fleomwflmmfim.{EM2firmAmmmm:
`
`
`
`
`
`mnaznufifié8%*3EA$2....m.
`
`
`
`a.:.pm.,momme
`
`.goammg“m3avg.g
`
`
`
`mcmgHutuSEQ@.
`
`
`
`
`
`Pmmcfimm«EMflCMEwuomfiu&fiWfiufifi...
`
`..,Him,
`
`mom
`
`
`
`
`
`
`
`
`
`
`
`
`
`mom
`
`ONm
`
`
`
`
`
`
`
`
`
`mFm
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`mm.6.”—
`
`
`
`Sum
`
`N5
`
`Apple Inc.
`Exhibit 1011
`
`Page 005
`
`Fomcan
`
`
`
`
`
`.uEuE“353$wmfimdmmvQ
`
`
`
`mtg“,mwmam.,wfivfixwm,.wgmmmzaim:WE,
`
`
`
`
`
`
`
`Apple Inc.
`Exhibit 1011
`Page 005
`
`
`
`
`
`
`
`
`Patent Application Publication May 1, 2003 Sheet 5 of 14
`
`US 2003/0081011 A1
`
`
`
`400
`
`MONTORING
`COMPONENT
`
`COMMUNICATIO
`N COMPONENT
`
`402
`
`404
`
`REGISTER
`FOR SHELL
`CHANGE
`NOTIFICATION
`
`
`
`
`
`
`
`408
`
`NOACTION
`
`N
`
`
`
`
`
`
`
`406
`
`HAS APP
`BEEN
`NSTALLED?
`
`412
`
`No ACTIONACTION
`
`N
`
`
`
`
`
`
`
`Y
`
`410
`
`HORT-CU
`NEW TO
`COMPUTERT
`
`414
`
`Y
`
`NSTRUCT
`COMMUNICATION
`COMPONENT TO
`EXECUTE
`
`FIG. 4.
`
`NSTRUCTIO
`GIVEN TO
`EXECUTEP
`
`N
`
`418
`
`46
`
`H
`ESEP
`
`
`
`Y
`
`NOACTION
`
`N
`
`420
`
`422
`
`COMNCATE
`INSTALLATION
`TO USER.
`
`424
`
`
`
`NEW APP
`ALREADY
`USED?
`
`
`
`Y
`
`REMOVE
`HIGHLIGHTS
`
`426
`
`N
`
`428
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`DIRECT USER TO
`APPLICATION
`
`430
`
`Apple Inc.
`Exhibit 1011
`Page 006
`
`
`
`Patent Application Publication
`
`May 1, 2003 Sheet 6 of 14
`
`US 2003/0081011 A1
`
`
`
`
`
`009 ==Z09
`
`(~~929
`
`Apple Inc.
`Exhibit 1011
`Page 007
`
`
`
`Patent Application Publication
`
`May 1, 2003 Sheet 7 of 14
`
`US 2003/0081011 A1
`
`
`
`909 • -909 ~
`
`
`
`(LNHW'NOO) NOILCHVO
`
`Apple Inc.
`Exhibit 1011
`Page 008
`
`
`
`Patent Application Publication
`
`May 1, 2003 Sheet 8 of 14
`
`US 2003/0081011 A1
`
`
`
`929
`
`:
`
`8 #729
`
`829
`
`Apple Inc.
`Exhibit 1011
`Page 009
`
`
`
`Patent Application Publication May 1, 2003 Sheet 9 of 14
`
`US 2003/0081011 A1
`
`602
`
`File Selected by User
`
`
`
`604
`
`App. available
`to open file
`
`Launch Web browser
`
`Display Web page in user's
`language
`
`
`
`
`
`610
`
`
`
`614
`
`
`
`
`
`
`
`
`
`Display
`alternatives
`
`App. available
`On SerWer
`2
`
`FIG. 6A
`
`Display list of
`links to App. or
`Vendor site
`
`Apple Inc.
`Exhibit 1011
`Page 010
`
`
`
`Patent Application Publication
`
`US 2003/0081011 A1
`
`
`
`‘OOSSV ET|-
`
`
`
`OOSSW LEN’
`
`099
`
`
`
`089HO-H SE HOH\/ES SO
`
`
`
`299HESNWOH8 NEdO
`
`"BEITETO
`
`
`
`#799HEAHES O L TH?I CINES
`
`
`
`X!NIT S LOETES HEST)
`
`OZ9
`
`LNBITO879ETI-I SEHONñVT HEST)
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`0/9
`
`Apple Inc.
`Exhibit 1011
`Page 011
`
`
`
`Patent Application Publication
`
`May 1, 2003 Sheet 11 of 14
`
`US 2003/0081011 A1
`
`
`
`SYSTEM MODAL
`OPERATION?
`
`NO ACTION
`
`702
`
`7O6
`
`
`
`
`
`
`
`
`
`710
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`700
`
`
`
`
`
`CREATE
`BLANKET
`WINDOW
`
`CREATE
`SYSTEM
`MODAL.
`WINDOW
`
`COPY VIDEO
`BUFFER
`INCREMENT
`
`708
`
`72
`
`EXECUTE
`MESSAGE
`
`ADVANCE
`TIMER
`
`
`
`END
`GRAYING
`LOOP
`
`704
`
`
`
`
`
`
`
`
`
`
`
`
`
`GRAYING
`LOOP.
`
`726
`
`GRAYING
`LOOP
`
`REMOVE
`INCREMENT
`OF COLOR
`
`
`
`
`
`
`
`DESRED
`LEVEL OF
`GRAY?
`
`730
`
`STOP
`GRAYING
`
`732
`
`734
`
`MONITOR FOR
`MODAL
`MESSAGE.
`
`FIG. 7.
`
`Apple Inc.
`Exhibit 1011
`Page 012
`
`
`
`Patent Application Publication May 1, 2003 Sheet 12 of 14 US 2003/0081011 A1
`
`Y
`
`802
`800
`"INBOX-MICROSOFT OUTLOOK
`804
`FIG. 8A.
`
`802
`800
`ÉNBox MICROSOFT OUT. . .
`804
`806
`FIG. 8B.
`
`802
`
`800
`
`
`
`INBOX - MICROSOFT OUTLO
`
`FIG.8D."
`
`
`
`DETERMINE
`LENGTH OF
`DISPLAY FIELD
`
`808
`
`DETERMINE
`NUMBER OF
`CHARACTERS TO 810
`FADE
`
`DETERMINE
`GRADENT
`METHOD
`
`812
`
`DETERMINE
`GRADIENT FADE 814
`
`
`
`APPLY
`GRADIENTFADE
`AND DISPLAY
`TEXT
`
`is
`
`FIG. 8C.
`
`Apple Inc.
`Exhibit 1011
`Page 013
`
`
`
`Patent Application Publication May 1, 2003 Sheet 13 of 14 US 2003/0081011 A1
`
`
`
`SOURCE IMAGE
`
`DESATURATE THE SOURCE IMAGE
`
`ALPHABLEND THE DESTINATION
`
`FIG. 9
`
`Apple Inc.
`Exhibit 1011
`Page 014
`
`
`
`Patent Application Publication
`
`May 1, 2003 Sheet 14 of 14
`
`US 2003/0081011 A1
`
`110
`
`144
`
`O 1000
`
`FIG. 1 OA.
`
`ACTIVELY
`MONITOR FOR
`PRESENCE OF
`COMPUTER USER
`
`1002
`
`1004
`
`SUSER STILL
`PRESENT?
`
`
`
`
`
`1006
`
`
`
`DO NOT INITIATE
`BACKGROUND
`TASKS
`
`O08
`
`INITIATE
`BACKGROUND
`TASKS
`
`FIG. 1 OB.
`
`OO
`
`
`
`HAS USER
`RETURNED?
`
`1 O2
`
`CONTINUE
`MONITORING
`
`SUSPEND
`BACKGROUND
`TASKS
`
`1 O14
`
`Apple Inc.
`Exhibit 1011
`Page 015
`
`
`
`US 2003/0081011 A1
`
`May 1, 2003
`
`COMPUTER SYSTEM WITH ENHANCED USER
`INTERFACE FOR IMAGES
`
`STATEMENT REGARDING
`FEDERALLY SPONSORED RESEARCH OR
`DEVELOPMENT
`
`0001. None.
`CROSS-REFERENCE TO RELATED
`APPLICATIONS
`0002. This application claims the benefit of U.S. Provi
`sional Application Serial No. 60/335,737, filed Oct. 31,
`2001.
`
`TECHNICAL FIELD
`0003. In general, the present invention relates to com
`puter Software, and more particularly, to features of a
`computer Software program designed to enhance the user
`experience pertaining to image files and the handling
`thereof.
`
`BACKGROUND OF THE INVENTION
`0004 Personal computers (PCs) typically include hard
`ware devices Such as a processor and a memory for imple
`menting various Software programs, a principal one being a
`central operating environment. In turn, the operating envi
`ronment, or operating System, Supports the variety of other
`Software applications Such as a word processing program or
`a spreadsheet program. AS computerS have evolved, the
`operating Systems have also evolved.
`0005 Some operating systems include a graphical user
`interface (GUI), described generally as a graphical operating
`System, which displayS Various information to the user as a
`combination of pictures and text that the user can manipu
`late. Generally, the graphical operating Systems may display
`on the Screen a work area known as a desktop. The desktop
`is an on-screen work area that uses icons and menus to
`simulate the top of a desk. The intent of the desktop is to
`make a computer easier to use by enabling users to move
`pictures or objects and to start and Stop tasks in much the
`Same way as they would if they were working on a physical
`desktop. AS users add application programs to the Storage
`area of the computer, they may create what is known as a
`desktop shortcut. This action merely adds an icon to the
`desktop that may be double-clicked by the user to initiate the
`application, a text or data file, or a Web page. AS users
`personalize the desktop by using it as a Space for their
`Shortcuts, the desktop can become cluttered with Shortcuts
`that are unused for long periods of time. The goal of
`personalization is thus lost as the desktop becomes filled
`with items that are irrelevant to the user on most occasions.
`It would be desirable to provide a method and system that
`assists users in identifying and cleaning-up the irrelevant
`and infrequently used shortcuts existing on a desktop,
`thereby effectively “re-personalizing” the desktop.
`0006 AS stated above, many personal computers utilize
`a graphical operating System. These graphical operating
`Systems are typically easier to use for the great majority of
`computer users. In Such a graphical operating environment,
`media is typically Stored in a hierarchical fashion and is
`organized with files of information or media stored within
`folders. AS each file or folder is Selected, a number of tasks
`
`are available to operate on the file in Some way. For
`example, when a file is Selected, the file may be moved,
`copied or deleted. Similarly, if a folder is selected, the folder
`may be copied, renamed or deleted. The number of tasks and
`the type of tasks available depend upon whether the item is
`a folder or a file and upon the type of item. AS another
`example, different tasks may be available for electronic
`music files than are available for electronic picture files. The
`tasks available are typically provided in a drop-down menu
`and may also be executed by a Series of known key-strokes.
`It has been found that with existing graphical operating
`Systems, however, many users have trouble managing files
`and folders on a daily basis. Some users fail to easily
`accomplish even the most basic of tasks, Such as moving a
`file to a removable disk. Part of the problem is that the
`relevant, available tasks or commands are buried within the
`drop-down menu that is not intuitive to the computer user.
`Computer users therefore have trouble discovering the
`needed commands and have difficulty in understanding how
`these commands relate to the Selection on the Screen. It
`would therefore be desirable to provide a system and method
`that allows computer users to more easily identify the tasks
`or commands available for a given Selection.
`0007. It is also the case within a graphical operating
`System that computer users may from time to time install
`new applications on the computer. For example, a computer
`user may install a new computer game onto the computer.
`The computer user may install a desktop icon as a shortcut
`to the newly installed application. It may also be the case,
`however, that the user does not create a desktop icon as a
`Shortcut, but merely installs the application into the hierar
`chical System. For example, the computer game may be
`installed within the directory within a “games' folder, that is
`itself within a “programs' folder. To access the newly
`installed game, the user must access the file System, then the
`programs folder, then the games folder, which will expose
`the newly installed game. This proceSS is less than intuitive
`and can obscure the newly installed application from the
`user, thereby causing frustration to the user and limiting the
`user's ability to properly utilize the newly installed appli
`cation. It would be desirable to provide a method and system
`designed to remove barriers between users and their newly
`installed applications.
`0008 AS stated above, one of the items stored on the
`computer may be a Series of electronic pictures. It is
`becoming increasingly more common for users to create and
`Store pictures on their computers. When using a prior art
`graphical operating System, the pictures created are Stored
`using the file and folder System. In other words, a Series of
`picture files appears, and the computer user may Select a
`particular file for full viewing on the Screen as well as any
`further processing. Moreover, the picture files may appear
`with an associated "thumbnail’ image, which is Small rep
`resentation of the picture file. When only a small number of
`pictures is contained within a folder, it would be desirable to
`View a larger representation of the picture file, as compared
`to the thumbnail view, without having to open the picture file
`itself.
`0009. When a user selects a file to open, the operating
`System will attempt to launch the underlying Software
`needed to open the file for processing. For example, if the
`user opens a text document file, the operating System will
`open the word processing Software associated with the text
`
`Apple Inc.
`Exhibit 1011
`Page 016
`
`
`
`US 2003/0081011 A1
`
`May 1, 2003
`
`document. Similarly, if the user attempts to open an email
`attachment, the operating System o: will look for the under
`lying Software needed to open the document. It may be the
`case, however, that the Software needed to open the file is not
`yet installed on the computer of the user. In this instance, the
`operating System will return a message informing the user
`that the attempt to open the file failed for the reason that the
`necessary Software was missing. This problem is Solved in
`the prior art only by a user locating, acquiring and installing
`the Software needed on the computer. This can be a time
`consuming task and can be difficult especially for novice
`computer users. Novice computer users are just as likely to
`abandon attempts to open the file. It would be desirable to
`have a computer System and method that automatically
`located the needed Software for a particular file, and that
`gave the computer user an option to acquire and install the
`located Software.
`0010. In prior art graphical operating environments, files
`and applications are opened into rectangular spaces on the
`Screen that are called windows. There can be one or more
`windows open on the display Screen, with one window being
`active at any given time. It is also the case that an operation
`may begin on the computer that must be completed before
`other operations can continue. These operations are typically
`called System modal operations. When a System modal
`operation is ongoing, a dialog window may appear inform
`ing the user that Such an operation is underway. For
`example, a user may select to shut down the computer,
`prompting a window to appear confirming that the user
`desires to shutdown or restart the computer. At this point the
`user may not attempt to work in other windows until the user
`finishes with the shut down window. It can be frustrating to
`computer users if they do not know that a System modal
`operation is underway, and the window that does appear
`does not always effectively convey this information. In other
`words, a user may continue to click in areas outside of the
`System modal information window to attempt to continue
`processing in other open windows. The user can become
`frustrated when he or she is not allowed to perform these
`tasks. It would be desirable to more effectively draw to the
`user's attention to a particular System modal dialog window
`So that the user is informed that the user must wait or
`complete the System prompted dialog prior to continuing
`any other operations.
`0.011
`In prior art graphical operating Systems, it is often
`the case that text is displayed within a rectangular window.
`It is also often the case that the text assigned to a particular
`area does not completely fit within the designated area. In
`these instances the prior art Systems simply truncate the text
`So that it will fit in the Space and provide an ellipses after the
`truncation. For example, a file name may be longer than the
`allotted Space for the file name underneath an icon. The file
`name will therefore change from FILNAMETOOLONG.01
`to FILENAM . . . The use of the ellipses also requires a
`certain amount of Space. This limits the amount of text that
`is provided to the user and does not convey as much
`information as possible to the user. It would be desirable to
`provide a method and System as an alternative to the use of
`the ellipses that both conveys to the user that an amount of
`text has been truncated and that conveys as much text as
`possible to the computer user.
`0012. The use of color in graphical operating systems has
`been popular for many years. In the past, however, lower
`
`color images were used, Such as Sixteen color images or 256
`color images. The use of lower color imageS is caused by the
`number of bits available. A sixteen color image requires four
`bits, while a two-hundred and fifty six color image requires
`eight bits. It is now possible to render “true color images,
`using approximately sixteen million colors, because better
`graphics cards are available and are being used.
`0013 In the prior art graphical operating Systems, there
`are many instances when a button is not available to the user
`for one reason or another. For example, the “cut” editing
`button may not be available to the user, because there has not
`been a Selection made of any material to cut. Similarly, until
`a Selection has been cut or copied, the “paste” button is not
`available to the user. Many other instances exist where
`buttons are available only at certain points in time, when
`prerequisite events have been Satisfied. To convey the
`unavailability to the user, the buttons that are unavailable are
`displayed in a "disabled State. In prior art graphical oper
`ating Systems, the button was disabled my taking the color
`out of the bitmap associated with the button, by turning the
`image into a two color, black and white image. The shape of
`the button is also used to make the button appear disabled.
`The black pixels define a transparency, i.e. what in the image
`is not rendered. The white pixels are rendered as the System
`defined “highlight” color, and then the white pixels are
`slightly offset in the system defined “shadow” color. This
`uses the shape of the button or other item to define it in a
`group of other elements, while showing it disabled. In a true
`color image, however, Shape is no longer used to define the
`object. As an example, an arrow in the non-true color
`environment is displayed as a single element that has a
`distinct arrow shape. In the true color environment, the
`arrow might be displayed inside of a circle. Thus, the shape
`of the button element would be a circle, not an arrow. If the
`prior art techniques for rendering a disabled appearance
`were used, the appearance of the arrow would be completely
`lost, and the user would see only a disabled circle. The
`computer user would then be very likely to become confused
`as to the function of the disabled button. It would therefore
`be desirable to provide a method and System capable of
`effectively rendering a true color element on a graphical
`operating System to convey that the element is disabled.
`0014.
`In more recent graphical operating Systems, there
`are many "idle-time” or background tasks whose execution
`is controlled by the operating System. For example, a disk
`layout optimizer may be executed as a background task. In
`the prior art operating Systems, the methods used to deter
`mine when Such background tasks are Scheduled are rela
`tively crude heuristics. AS Such, the background tasks will
`Sometimes not be Scheduled quickly enough, and will Some
`times be Scheduled too aggressively. In either instance, the
`Scheduling may interfere with the primary or foreground
`task of the user. It would thus be beneficial to provide a
`method and System that allowed background tasks to be
`more effectively Scheduled, Such that the tasks are executed
`as early as possible without interfering with the other work
`of the user.
`
`BRIEF DESCRIPTION OF THE SEVERAL
`VIEWS OF THE DRAWING
`0015 The present invention is described in detail below
`with reference to the attached drawing figures, wherein:
`
`Apple Inc.
`Exhibit 1011
`Page 017
`
`
`
`US 2003/0081011 A1
`
`May 1, 2003
`
`0016 FIG. 1 is a block diagram of a computing system
`environment Suitable for use in implementing the present
`invention;
`0017 FIG. 2 is a flow diagram for one feature of the
`present invention;
`0.018
`FIG. 3A is a schematic demonstrating the types of
`tasks,
`FIG. 3B is a partial screen shot representing one
`0.019
`feature of the present invention;
`0020 FIG. 3C is a partial screen shot representing one
`feature of the present invention;
`0021
`FIG. 4 is a flow diagram for one feature of the
`present invention;
`0022 FIG. 5A is a schematic representation of a user
`interface for one feature of the present invention;
`0023 FIG. 5B is a view similar to FIG. 5A showing a
`different layout;
`0024 FIG. 5C is a screen shot demonstrating one feature
`of the present invention;
`0025 FIG. 6A is a flow diagram for one feature of the
`present invention;
`0.026
`FIG. 6B is a flow diagram and block diagram for
`one feature of the present invention;
`0027 FIG. 7 is a flow diagram for one feature of the
`present invention;
`0028 FIG. 8A is a schematic representation of a display
`box with text;
`0029 FIG. 8B is a schematic representation of the prior
`art truncation method;
`0030 FIG. 8C is a flow diagram for the truncation
`feature of the present invention;
`0.031
`FIG. 8D is a schematic representation of the trun
`cation feature of the present invention;
`0032 FIG. 9 is a flow diagram for one feature of the
`present invention;
`0.033
`FIG. 10A is a schematic diagram of the hardware
`for one feature of the present invention; and
`0034 FIG. 10B is a flow diagram for one feature of the
`present invention.
`
`DETAILED DESCRIPTION OF THE
`INVENTION
`0035. The present invention provides a computer system
`with features designed to enhance the Overall experience of
`the user interacting with the computer System. Prior to a
`detailed explanation of each of the features, an exemplary
`operating environment for the present invention is described
`below.
`0036) Exemplary Operating Environment
`0037 FIG. 1 illustrates an example of a suitable com
`puting system environment 100 on which the invention may
`be implemented. The computing system environment 100 is
`only one example of a Suitable computing environment and
`is not intended to Suggest any limitation as to the Scope of
`
`use or functionality of the invention. Neither should the
`computing environment 100 be interpreted as having any
`dependency or requirement relating to any one or combina
`tion of components illustrated in the exemplary operating
`environment 100.
`0038. The invention may be described in the general
`context of computer-executable instructions, Such as pro
`gram modules, being executed by a computer. Generally,
`program modules include routines, programs, objects, com
`ponents, data Structures, etc. that perform particular tasks or
`implement particular abstract data types. Moreover, those
`skilled in the art will appreciate that the invention may be
`practiced with other computer System configurations,
`including hand-held devices, multiprocessor Systems,
`microprocessor-based or programmable consumer electron
`ics, minicomputers, mainframe computers, and the like. The
`invention may also be practiced in distributed computing
`environments where tasks are performed by remote proceSS
`ing devices that are linked through a communications net
`work. In a distributed computing environment, program
`modules may be located in both local and remote computer
`Storage media including memory Storage devices.
`0039. With reference to FIG. 1, an exemplary system 100
`for implementing the invention includes a general purpose
`computing device in the form of a computer 110 including
`a processing unit 120, a System memory 130, and a System
`buS 121 that couples various System components including
`the System memory to the processing unit 120.
`0040 Computer 110 typically includes a variety of com
`puter readable media. By way of example, and not limita
`tion, computer readable media may comprise computer
`Storage media and communication media. The System
`memory 130 includes computer storage media in the form of
`Volatile and/or nonvolatile memory Such as read only
`memory (ROM) 131 and random access memory (RAM)
`132. Abasic input/output system 133 (BIOS), containing the
`basic routines that help to transfer information between
`elements within computer 110, Such as during Start-up, is
`typically stored in ROM 131. RAM 132 typically contains
`data and/or program modules that are immediately acces
`Sible to and/or presently being operated on by processing
`unit 120. By way of example, and not limitation, FIG. 1
`illustrates operating System 134, application programs 135,
`other program modules 136, and program data 137.
`0041. The computer 110 may also include other remov
`able/nonremovable, Volatile/nonvolatile computer Storage
`media. By way of example only, FIG. 1 illustrates a hard
`disk drive 141 that reads from or writes to nonremovable,
`nonvolatile magnetic media, a magnetic disk drive 151 that
`reads from or writes to a removable, nonvolatile magnetic
`disk 152, and an optical disk drive 155 that reads from or
`writes to a removable, nonvolatile optical disk 156 Such as
`a CD ROM or other optical media. Other removable/non
`removable, Volatile/nonvolatile computer Storage media that
`can be used in the exemplary operating environment
`include, but are not limited to, magnetic tape cassettes, flash
`memory cards, digital versatile disks, digital Video tape,
`Solid state RAM, Solid state ROM, and the like. The hard
`disk drive 141 is typically connected to the system bus 121
`through an non-removable memory interface Such as inter
`face 140, and magnetic disk drive 151 and optical disk drive
`155 are typically connected to the system bus 121 by a
`removable memory interface, such as interface 150.
`
`Apple Inc.
`Exhibit 1011
`Page 018
`
`
`
`US 2003/0081011 A1
`
`May 1, 2003
`
`0042. The drives and their associated computer storage
`media discussed above and illustrated in FIG. 1, provide
`Storage of computer readable instructions, data Structures,
`program modules and other data for the computer 110. In
`FIG. 1, for example, hard disk drive 141 is illustrated as
`Storing operating System 144, application programs 145,
`other program modules 146, and program data 147. Note
`that these components can either be the same as or different
`from operating System 134, application programs 135, other
`program modules 136, and program data 137. Operating
`System 144, application programs 145, other program mod
`ules 146, and program data 147 are given different numbers
`here to illustrate that, at a minimum, they are different
`copies. A user may enter commands and information into the
`computer 110 through input devices such as a keyboard 162
`and pointing device 161, commonly referred to as a mouse,
`trackball or touch pad. Other input devices (not shown) may
`include a microphone, joystick, game pad, Satellite dish,
`Scanner, or the like. These and other input devices are often
`connected to the processing unit 120 through a user input
`interface 160 that is coupled to the system bus, but may be
`connected by other interface and bus structures, Such as a
`parallel port, game port or a universal Serial bus (USB). A
`monitor 191 or other type of display device is also connected
`to the System buS 121 via an interface, Such as a video
`interface 190. In addition to the monitor, computers may
`also include other peripheral output devices Such as Speakers
`197 and printer 196, which may be connected through a
`output peripheral interface 195.
`0043. The computer 110 in the present invention will
`operate in a networked environment using logical connec
`tions to one or more remote computers, Such as a remote
`computer 180. The remote computer 180 may be a personal
`computer, and typically includes many or all of the elements
`described above relative to the computer 110, although only
`a memory storage device 181 has been illustrated in FIG. 1.
`The logical connections depicted in FIG. 1 include a local
`area network (LAN) 171 and a wide area network (WAN)
`173, but may also include other networks.
`0044) When used in a LAN networking environment, the
`computer 110 is connected to the LAN 171 through a
`network interface or adapter 170. When used in a WAN
`networking environment, the computer 110 typically
`includes a modem 172 or other means for establishing
`communications over the WAN 173, Such as the Internet.
`The modem 172, which may be internal or external, may be
`connected to the System buS 121 via the user input interface
`160, or other appropriate mechanism. In a networked envi
`ronment, program modules depicted relative to the computer
`110, or portions thereof, may be stored in the remote
`memory Storage device. By way of example, and not limi
`tation, FIG. 1 illustrates remote application programs 185 as
`residing on memory device 181. It will be appreciated that
`the network connections shown are exemplary and other
`means of establishing a communications link between the
`computerS may be used.
`0.045 Although many other internal components of the
`computer 110 are not shown, those of ordinary skill in the art
`will appreciate that Such components and the interconnec
`tion are well known. Accordingly, additional details con
`cerning the internal construction of the computer 110 need
`not be disclosed in connection with the present invention.
`
`0046) System for Desktop Clean-Up
`0047 As stated above, the display in a graphical operat
`ing System often presents users with what is known as a
`desktop. AS users add application programs to the Storage
`area of the computer, they may create what is known as a
`desktop shortcut. This action adds an icon to the desktop that
`may be double-clicked by the user to initiate the application,
`a text or data file, or a Web page. AS users personalize the
`desktop by using it as a Space for their shortcuts, the desktop
`can become cluttered with Shortcuts that are unused for long
`periods of time. The goal of personalization is thus lost as
`the desktop becomes filled with items that are irrelevant to
`the user on most occasions.
`0048. A system is provided for cleaning the desktop of
`unused shortcuts, and is described with reference to FIG. 2.
`As seen in FIG. 2, the system for cleaning is labeled broadly
`as 200. System 200 may also be referred to as a wizard. A
`wizard is an interactive help utility that guides the user
`through each step of a particular task. System 200 includes
`a scheduler 202, a decision module 204, a notification
`System 206, a Selection interface 208 and a cleaning engine
`210. Scheduler 202 is used to schedule a task with the
`operating System on a regular basis, Such as once per day.
`This is an instruction to invoke the remainder of system 200
`on the basis Scheduled, So that in the example given the
`system 200 is invoked once per day. The decision module
`204 broadly determines whether some initial prerequisites
`have been Satisfied prior to notification of the user about any
`cleaning functions. The notification system 206 notifies th