throbber
a2, United States Patent
`US 6,278,448 B1
`(10) Patent No.:
`Brownetal.
`(45) Date of Patent:
`*Aug. 21, 2001
`
`
`US006278448B1
`
`5,737,560 *
`(54) COMPOSITE WEB PAGE BUILT FROM ANY
`4/1998 Yohanan o....ccessesssecneeeeees 345/349
`5,877,765 *
`WEB CONTENT
`oe 345/349
`3/1999 Dickman et al.
`
`
`5,877,767 * 3/1999 Yohanan oo...eectceeeeee 345/357
`(75)
`Inventors: Christopher R. Brown, Seattle;
`oS :
`3)909 cumand nee
`” “O70.
`‘
`‘
`.
`3890,
`idana
`Michae}A.Schild,tssaquahs Sankar
`S914,714 *
`6/1999 BrOWN sennnnsenenense 345/339
`
`6,061,695 *
`?
`,
`5/2000 Slivka et al. wee 707/513
`7/2000 Dickman et al. eicscsenenene 345/329
`Flynn, North Bend; Edward Jason
`6,091,409 *
`Anderson, Duvall; Matthew C.
`Squires, Redmond, all of WA (US)
`
`
`
`* cited by examiner
`
`*)
`

`
`Notice:
`
`This patent issued on a continued pros-
`
`(73) Assignee: Microsoft Corporation, Redmond, WA
`(US)
`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).
`.
`4.
`.
`Subject to any disclaimer, the term ofthis
`patent is extended or adjusted under 35
`US.C. 154(b) by 0 days.
`
`Primary Examiner—Crescelle N. dela Torre
`(74) Attorney, Agent, or Firm—Christensen O’Connor
`Johnson & Kindness PLLC
`67)
`ABSTRACT
`A method of creating a composite desktop built from Web
`contentretrieved from one or more Websites is disclosed. A
`component on a Web pagecan be selected and positioned on
`the composite desktop. The componentcan be a static image
`or an active desktop componentproviding dynamic content.
`An entire Web page can also be selected and positioned as
`a component on the composite desktop. Components can be
`selected for the composite desktop using one of several
`mechanisms.Selection of a control on a Web page causes the
`(21) Appl. No.: 09/024,673
`selection of a corresponding component on the Web page. A
`.
`control panel utility allows the designation of a URL to
`(22) Filed
`Feb.17, 1998
`
`CSV) Tint C07eeeeccceccceeeeeescesnneesceesnneeeecnneeeeeee GO06F 3/00 select the corresponding Web page for inclusion as a com-
`
`(52) US. Ch. aecccsessssssee
`... 345/333; 345/348
`ponent on the composite desktop. Images from Web pages
`
`(58) Field of Search 0... 345/333, 334,
`and objects representing URLs can be dragged and dropped
`345/339, 342, 348; 707/501, 513, 530
`onto the composite desktop. Icons on a composite desktop
`are displayed in front of the composite desktop components.
`Auser can create multiple composite desktops and switch to
`a different desktop when desired.
`
`(56)
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`5,724,595 *
`
`3/1998 Gentner occ 707/501
`
`21 Claims, 8 Drawing Sheets
`
`
`
`
`
`
`
`|Microsoft Investor|
`My Computer
`
`Dow 8151.88 -37.61 S&P500 1008.78 -3.68 NASDAQ|
`[custom|update
`
`
`
`Build on home-buying]
`sa [<< [a >
`
`
`Network
`Neighborhood
`
`El
`File Manager
`
`
`oNMicrosoft
`
`sa)Internet
`
`304
`
`“NG
`
`Recycle Bin
`
`CD Player
`aa
`
`Outlook
`
`Explorer
`
`A
`
`306
`
`
`
`1
`
`SAMSUNG 1005
`
`IPR2024-00145
`Apple EX1005 Page 1
`
`

`

`U.S. Patent
`
`Aug. 21, 2001
`
`Sheet 1 of 8
`
`US 6,278,448 B1
`
`AYOMIIN
`
`FATANSIC
`dAING
`
`JILINDVW
`NSICGUVH
`
`AIOVINALNI
`FJOVANTAINI
`
` AJOVANAINI
`
`9SSF
`
`
`
`ualLdvav|oranvOJdIAWaldVav
`
`
`
`
`
`
`ONISSTDOUd
`
`1LINN
`
`
`
`
`
`
`
`
`
`IPR2024-00145
`Apple EX1005 Page 2
`
`

`

`U.S. Patent
`
`Aug. 21, 2001
`
`Sheet 2 of 8
`
`US 6,278,448 B1
`
`204
`
`HTML VIEWER
`
`212
`
`210
`
`ACTIVE
`DESKTOP
`
`DESKTOP.HTT
`FILE
`
`
`
`SHELL
`INTERFACE
`
`206
`
`714
`
`REGISTRY
`
`208
`
`o18
`
`CONTROL
`PANEL APPLET
`
`216
`
`
`
`APPLICATION
`PROGRAM
`
`202
`
`
`220
`
`
`SHELL UI CONTROL
`
`209
`
`Fig.2.
`
`IPR2024-00145
`Apple EX1005 Page 3
`
`

`

`U.S. Patent
`
`Aug. 21, 2001
`
`Sheet 3 of 8
`
`US 6,278,448 B1
`
`VES1 dasojdxg
`
`BOE
`
`POE
`
`DOE
`
`BOE
`
`FOE
`
`POE
`
`POE
`
`COE
`
`YOsos|py
`
`Oonng
`
`yawaqy|
`
`IPR2024-00145
`Apple EX1005 Page 4
`
`

`

`U.S. Patent
`
`Aug. 21, 2001
`
`Sheet 4 of 8
`
`US 6,278,448 B1
`
`d
`
`coe
`
`0ce
`
`POE
`
`POE
`
`POE
`
`bOE
`
`IPR2024-00145
`Apple EX1005 Page 5
`
`

`

`U.S. Patent
`
`Aug. 21, 2001
`
`Sheet 5 of 8
`
`US 6,278,448 B1
`
`dovjseqfe]
`Yosoiipl|snaimm|dOus|Laoddns|HOYWIS|SLONdOUd|LIOSOUDIW
`SM3Udo}ot)JOsaulj|peaysnjd10}saAUTWo.saJonbyDoIsaILOAey
`
`
`
`
`
`ANOAYUMpajepdnNOAsdaayJaxONJOISSAUTYOSOIIJAY[OODSIYL
`
`
`
`
`
`
` AlOISIH=SaJOARY=YoteasawioHysayoydoispiemiojyorg/Asa|fe3/Opal/al/Wi0doso]MMM//:dI34[el|[:ssaippV|sjauuey>
`
`
`
`
`
`
`
`
`
`aesBY@&®«=>djaSaiwoAeyOFMIAUPJaid
`
`
`4peojumMogaOJU]NpolgwBWOPJaojdxyJeuleqU]Zoe
`
`
`AlayjeydovjsagsAnoy8Kaan
`
`
`JIIO|AXJJWUIIIUTIYOSO.DIPY-AlayjeD
`
`
`
`
`
`uwMMM///:dyySuluadOased
`
`POF
`
`
`
`|J0}S9AU|YOsos9iyy]|
`
`
`
`“ANSAWoysaiioys
`
`
`
`
`
`AIO]IOISIAU]YOSOADIP
`
`
`
`
`
`O'pJatojdxqJousauysonpoid
`
`80F
`
`IPR2024-00145
`Apple EX1005 Page 6
`
`

`

`U.S. Patent
`
`Aug. 21, 2001
`
`Sheet 6 of 8
`
`US 6,278,448 B1
`
` G81]_auoz
`IYOylewapely]pueaedS|fe
`PpoyepdySIVSHRISJudeIvaTepus[eypojyoojago|Yeasais|(3649S)
`
`
`
`UNLTonoig})payepdy)SoNSHeSJUo}egIvaJUpusje,eWaLasoreiqn
`
`
`
`
`AOWAOMAVWAGVAL|=]
`
`
`owe!|[]LJLJLEd
`
`
`
`J9IO[AXJJOUIIIU]YOSOIIpP-88eqVWOPY
`CNVLN@LVdSa
`.[$994Old|“OHSOLd94}UOMON
`
`ado}48PiO
`
`
`L66]t0quladagYGono1y}819Aqojuy
`7AO3O}dsN"-MMM//:0NY[alll:ssaippY|jaysowoaeyODMIAUPZaly
`
`
`
`
`L661-___»epuraus
`
`
`
`SULIOJPeOojUMOG
`
`OldInNoqyv
`
`
`
`
`
`
`
`sjuajzegYoieas
`
`bedApeM
`
`IPR2024-00145
`Apple EX1005 Page 7
`
`

`

`Aug. 21, 2001
`
`Sheet 7 of 8
`
`US 6,278,448 B1
`
`U.S. Patent ‘9‘OLZ09
`
`
`
`JUEMNOAWaydoysSaqeBANIY942JO(TY)UOHeIO]ayadAL
`
`"YWAOJYDIeISO}BSMOIGYIIJD“AO*a3e9190}
`
`
`
`
`
`:U01Ne907
`
`
`
`Ws}]dovjsagsANDYMON
`
`IPR2024-00145
`Apple EX1005 Page 8
`
`

`

`U.S. Patent
`
`Aug. 21, 2001
`
`Sheet 8 of 8
`
`US 6,278,448 B1
`
`START
`
`
`
`
`
`RECEIVE COMMAND
`
`Y/
`
`
`
`
`"MODIFY"
`
`
`
`"UPDATE
`COMMAND
` "ADD"
`
`WALLPAPER"
`
`
`COMMAND
`
`COMMAND
`
`
`"DELETE"
` 706
`qe
`COMMAND
`710
`
`
`
`
`
`
`
`STORE NEW
`DELETE
`MODIFY
`UPDATE
`COMPONENT
`COMPONENT
`COMPONENT
`WALLPAPER
`
`
`
`
`
`DATA IN
`DATA FROM
`DATA IN
`DATA IN
`
`
`
`
`
`REGISTRY
`REGISTRY
`REGISTRY
`
`
`
`
`
`
`REGISTRY
`
`
`GENERATE HTML
`INSTRUCTIONS
`
`
`
`REFRESH DESKTOP
`
`714
`
`716
`
`Fig. 7.
`
`IPR2024-00145
`Apple EX1005 Page 9
`
`

`

`US 6,278,448 B1
`
`1
`COMPOSITE WEB PAGE BUILT FROM ANY
`WEB CONTENT
`
`FIELD OF THE INVENTION
`
`The present invention relates to the field of user interface
`desktops and,
`in particular,
`to methods and systems for
`incorporating content into such a desktop.
`BACKGROUND OF THE INVENTION
`
`With the advent of the Internet, it is now the case that
`personal computers have access to a much larger number
`and variety of resources (e.g. Web pages) than they currently
`do today on Local Area Networks. Since GUI desktops are
`typically designed to give the computer user a set of ‘entry
`points’ to all of the resources they care about, it is compel-
`ling to enhance the GUI desktop so that it can serve entry
`points to a much wider variety of resources, particularly
`those found on the World Wide Web.
`
`Prior art GUI desktops have represented such ‘entry
`points’ with icons, each of which typicallyfits a strict form
`factor(e.g., 32x32 pixels and a line or twooftext). This type
`of representation does not scale well
`to the variety of
`resources on the World Wide Web,sinceit is limited in size,
`strict in form factor, and static (unchanging). The invention
`described here is designed to provide a way for a GUI
`desktop to more adequately provide ‘entry points’ to Internet
`resources (primarily, HTML-based Web pages); these ‘entry
`points’ scale better to Web pages because: a) they can be any
`size (customizable by user OR by the Web author); b) the
`representationis not strict, and so, for instance, instead of a
`static icon the entry point can be used to show a ‘preview’
`of the Web pages they point to; and c) the representationis
`not static but can instead change over time to reflect the
`changing nature of the resource (e.g. Web page).
`In short, it is the intent of the current invention to enhance
`the GUI desktop by introducing a ‘new breed’of entry points
`(or “shortcuts”) to Internet resources, as an addition to the
`icon entry points that exist in prior art desktops.
`It is now common for computer operating systems to
`employ a graphical user interface (GUI) to convey informa-
`tion to, and receive commands from, users. An example of
`an operating system that provides a graphical user interface
`is the Windows95 operating system, produced by Microsoft
`Corporation of Redmond, Wash.
`The graphical user interface of Windows 95, and other
`operating systems, is based on a desktop metaphor. More
`specifically, the GUI creates a graphical environment that
`simulates working at a desk. The graphical elements dis-
`played on the computer desktop are analogous to objects
`placed on the top of a user’s desk.
`The desktop of a GUI is a screen display containing icons
`representing programs,files, and resources available to the
`user. The desktop acts as a launching point for running
`application programs, opening documentsorfiles, and ini-
`tiating operating system services. In a typical GUI,
`the
`desktop always remains as a full screen backgrounddisplay,
`and all visible windows and icons overlay the desktop as
`would paper documents and other items on top of an actual
`desk.
`
`Icons placed on a desktop are static graphic images, and
`typically represent computer programs, files, or operating
`system services “Activation” of an icon may cause the
`operating system to invoke an associated program and
`optionally an associated file or data set.
`Windowsin a GUIcan typically be resized, moved around
`the display, and stacked so as to overlay each other. Win-
`
`2
`dowstypically have a top-to-bottom order in which they are
`displayed, with top windowsat a particular location on the
`screen overlaying any other window at the same location.
`In recent years there has been a proliferation of computers
`connected to a global network known asthe Internet. A
`“client” computer connected to the Internet can download
`digital information from “server” computers connected to
`the Internet. Client application software executing on client
`computers typically accept commands from a user and
`obtain data and services by sending requests to server
`applications running on server computers connected to the
`Internet.
`
`Client computers access data on the World Wide Web,
`often referred to as “the Web.” The World Wide Web is an
`information service on the Internet providing documents and
`links between documents. The World Wide Web is made up
`of numerous websites around the world that maintain and
`
`distribute Web documents. Web documents maybein one of
`a number of formats,
`including the Hyper Text Markup
`Language (HTML). An HTML document can contain text,
`graphics, audio clips, and videoclips, as well as metadata or
`commandsproviding formatting information. HTML docu-
`ments also include embedded “links,” referred to as
`“hyperlinks,” that reference other data or documents located
`on the local computer or network server computers. An
`intranet is a local area network containing at least one Web
`server and multiple client computers operating in a manner
`similar to the World Wide Web.
`
`A Webbrowseris a client application or operating system
`utility that communicates with server computers using one
`or more protocols, including the Hyper Text Transfer Pro-
`tocol (HTTP). Web browsers receive Web documents from
`the network and present them to a user. Internet Explorer,
`available from Microsoft Corporation, is an example of a
`popular Web browser.
`In addition to data and metadata, HTML documents can
`contain embedded software components containing program
`code that perform a wide variety of operations, such as
`manipulating data, updating the displayed data, and playing
`audio or videoclips. ActiveX is a specification developed by
`Microsoft Corporation for creating software components
`that can be embedded into an HTML document.
`It is desirable to have a mechanism that allows a user to
`
`specify Web “content” from one or more Web pages, to be
`positioned on the user’s desktop. Preferably, the Web con-
`tent includes both static images and active images, where the
`active images may include animation, or occasional updates
`of the displayed content. A preferred mechanism allows a
`user to set up more than one desktop, and to switch between
`desktops as desired.
`SUMMARYOF THE INVENTION
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`In accordance with this invention, a system and a
`computer-based method of creating a composite desktop
`built from Web contentretrieved from one or more Websites
`
`60
`
`65
`
`are provided. The method includes selecting one or more
`components of Web pagesto be positioned on the composite
`desktop. Preferably, the component is either a static image,
`an active desktop component, or an entire Web page.
`Preferably, desktop components are displayed behind icons.
`Each component has an associated section of hypertext
`markup languageinstructions, and is displayed on the com-
`posite desktop in the same mannerasit is displayed on a
`Web page.
`In accordance with other aspects of the invention, a user
`specifies each componentthat is to be placed on the com-
`10
`
`IPR2024-00145
`Apple EX1005 Page 10
`
`

`

`US 6,278,448 B1
`
`3
`posite desktop. The mechanism of the invention stores
`information pertaining to the selection in a system registry,
`and inserts associated hypertext markup language instruc-
`tions in a file corresponding to the composite desktop. The
`hypertext markup language instructions are used to display
`each component on the composite desktop.
`In accordance with still other aspects of the invention, an
`icon window includes icons displayed on the composite
`desktop, organized as a transparent window or a complex
`regional window made up of discontiguous regions. Each
`region includes a portion of an icon or an entire icon. The
`icon windowis displayed as a layer in front of the desktop
`components and the desktop background, so that the icons
`appear in front of the desktop components.
`In accordance with yet still other aspects of the invention,
`an application programming interface (API) is provided to
`allow computer programs, controls, or utilities modify the
`composite desktop. Specifically,
`the API allows desktop
`components to be added to or deleted from the composite
`desktop, and allows desktop components to be modified.
`The APIalso allows the background wallpaper to be modi-
`fied.
`
`In accordance with further aspects of the invention, a user
`is provided with alternative ways of modifying the compos-
`ite desktop. A componentinstallation control embeddedin a
`Web pageinstalls a corresponding component from the Web
`page to the composite desktop. Alternatively, a control panel
`utility allows a user to specify a URL corresponding to a
`desired composite desktop component for inclusion on the
`composite desktop. Auser may also drag and drop an image
`or a URL from a Web page onto the composite desktop to
`add a new component.
`As will be readily appreciated from the foregoing
`description, a system and method for creating a composite
`desktop from Web content provides a way of displaying
`composite desktop components on a desktop in a readily
`available manner. The invention allows a composite desktop
`to display images from any Web page in front of a back-
`ground wallpaper. The invention further allows the display
`of active components that regularly update their display
`according to preprogrammed mechanisms, such asretriev-
`ing new data from a Website. By providing several mecha-
`nismsfor selecting and positioning desktop components,the
`invention allows a user to easily configure a desired com-
`posite desktop. The invention further allowsa user to create
`multiple composite desktops, and switch between the com-
`posite desktops when desired.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`The foregoing aspects and many ofthe attendant advan-
`tages of this invention will become morereadily appreciated
`as the same becomesbetter understood by reference to the
`following detailed description, when taken in conjunction
`with the accompanying drawings, wherein:
`FIG. 1 is a block diagram of a general purpose computer
`system for implementing the present invention;
`FIG. 2 is a block diagram illustrating an architecture of
`the present invention;
`FIG. 3A is a pictorial representation of a user interface
`desktop, created in accordance with the present invention;
`FIG. 3B illustrates the layers used to create the user
`interface desktop of FIG. 3A;
`FIG. 4 is a pictorial representation of a Web page for
`providing content
`to a desktop in accordance with the
`present invention;
`
`10
`
`15
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`4
`FIG. 5 is pictorial representation of a Web page for
`providing content
`to a desktop in accordance with the
`present invention;
`FIG. 6 illustrates a dialog window for creating a desktop
`component, in accordance with the present invention; and
`FIG. 7 is a flow diagram illustrating a process of updating
`a composite desktop, in accordance with the present inven-
`tion.
`
`DETAILED DESCRIPTION OF THE
`PREFERRED EMBODIMENT
`
`The present invention provides a mechanism for creating
`or customizing a user interface composite desktop byselect-
`ing various components and adding them to a desktop. The
`composite desktop is implemented as a Web page, and the
`creation of the composite desktop includes building a com-
`posite Web page made up of one or more components
`selected and retrieved from one or more locations. The
`locations may include Web pages, local storage media, or
`remote computers. A component can be a static graphic
`object, or an active component that modifies its content or
`interacts with a user. Examples of active components
`include Web pages and ActiveX controls. The invention
`includes an application programming interface (API) for
`modifying the user interface desktop contents. The invention
`further includes a control object that is included in a Web
`page for allowing a user to select content from the Web page
`for insertion onto the desktop, and a control panel pro-
`grammed for installing an entire Web page as a desktop
`component.
`In accordance with the present invention, an operating
`system user interface shell program executes on a computer,
`preferably a general purpose personal computer. FIG. 1 and
`the following discussion are intended to provide a brief,
`general description of a suitable computing environmentin
`which the invention may be implemented. Although not
`required,
`the invention will be described in the general
`context of computer-executable instructions, such as pro-
`gram modules, being executed by a personal computer.
`Generally, program modules include routines, programs,
`objects, components, data structures, etc. that perform par-
`ticular 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
`electronics, network PCs, minicomputers, mainframe
`computers,and the like. The invention mayalso be practiced
`in distributed computing environments where tasks are
`performed by remote processing devices that are linked
`through a communications network. In a distributed com-
`puting environment, program modules may be located in
`both local and remote memory storage devices.
`With reference to FIG. 1, an exemplary system for imple-
`menting the invention includes a general purpose computing
`device in the form of a conventional personal computer 20,
`including a processing unit 21, a system memory 22, and a
`system bus 23 that couples various system components
`including the system memoryto the processing unit 21. The
`system bus 23 may be any of several types of bus structures
`including a memory bus or memory controller, a peripheral
`bus, and a local bus using any of a variety of bus architec-
`tures. The system memory includes read only memory
`(ROM) 24 and random access memory (RAM) 25. A basic
`input/output system 26 (BIOS), containing the basic routines
`that helps to transfer information between elements within
`11
`
`IPR2024-00145
`Apple EX1005 Page 11
`
`

`

`US 6,278,448 B1
`
`5
`the personal computer 20, such as during start-up, is stored
`in ROM 24. The personal computer 20 further includes a
`hard disk drive 27 for reading from and writing to a hard
`disk, not shown, a magnetic disk drive 28 for reading from
`or writing to a removable magnetic disk 29, and an optical
`disk drive 30 for reading from or writing to a removable
`optical disk 31 such as a CD ROM orother optical media.
`The hard disk drive 27, magnetic disk drive 28, and optical
`disk drive 30 are connected to the system bus 23 by a hard
`disk drive interface 32, a magnetic disk drive interface 33,
`and an optical drive interface 34, respectively. The drives
`and their associated computer-readable media provide non-
`volatile storage of computer readable instructions, data
`structures, program modules and other data for the personal
`computer 20. Although the exemplary environment
`described herein employs a hard disk, a removable magnetic
`disk 29 and a removable optical disk 31,
`it should be
`appreciated by those skilled in the art that other types of
`computer-readable media which canstore data that is acces-
`sible by a computer, such as magnetic cassettes,
`flash
`memory cards, digital versatile disks, Bernoulli cartridges,
`random access memories (RAMs), read only memories
`(ROM), and the like, may also be used in the exemplary
`operating environment.
`Anumberof program modules may be stored on the hard
`disk, magnetic disk 29, optical disk 31, ROM 24 or RAM 25,
`including an operating system 35, one or more application
`programs 36, other program modules 37, and program data
`38. A user may enter commands and information into the
`personal computer 20 through input devices such as a
`keyboard 40 and pointing device 42. 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 21
`through a serial port interface 46 that is coupled to the
`system bus, but may be connected by other interfaces, such
`as a parallel port, game port or a universal serial bus (USB).
`A monitor 47 or other type of display device is also
`connected to the system bus 23 via an interface, such as a
`video adapter 48. One or more speakers 57 are also con-
`nected to the system bus 23 via an interface, such as an audio
`adapter 56. In addition to the monitor and speakers, personal
`computers typically include other peripheral output devices
`(not shown), such as printers.
`The personal computer 20 operates in a networked envi-
`ronment using logical connections to one or more remote
`computers, such as remote computers 49 and 60. Each
`remote computer 49 or 60 may be another personal
`computer, a server, a router, a network PC, a peer device or
`other common network node, and typically includes many or
`all of the elements described above relative to the personal
`computer 20, although only a memory storage device 50 or
`61 has been illustrated in FIG. 1. The logical connections
`depicted in FIG. 1 include a local area network (LAN) 51
`and a wide area network (WAN) 52, Such networking
`environments are commonplace in offices, enterprise-wide
`computer networks,intranets and the Internet. As depicted in
`FIG. 1,
`the remote computer 60 communicates with the
`personal computer 20 via the local area network 51. The
`remote computer 49 communicates with the personal com-
`puter 20 via the wide area network 52.
`When used in a LAN networking environment, the per-
`sonal computer 20 is connected to the local network 51
`through a network interface or adapter 53. When used in a
`WAN networking environment, the personal computer 20
`typically includes a modem 54 or other meansfor establish-
`ing communications over the wide area network 52, such as
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`the Internet. The modem 54, which may be internal or
`external, is connected to the system bus 23 viathe serial port
`interface 46. In a networked environment, program modules
`depicted relative to the personal computer 20, or portions
`thereof, may be stored in the remote memorystorage device.
`It will be appreciated that the network connections shown
`are exemplary and other meansof establishing a communi-
`cations link between the computers may be used.
`FIG. 2 illustrates the architecture of one actual embodi-
`ment of the invention. As depicted in FIG. 2, a system 202
`for manipulating and viewing a composite desktop 204
`includes a composite desktop shell 206 as the core object
`controlling the composite desktop.
`In the actual
`embodiment,
`the composite desktop shell 206 is imple-
`mented as a component object model (COM)object. COM
`is a standard protocol that software objects employ when
`communicating with other objects. An object that employs
`the COM protocol is referred to as a COM object. The
`composite desktop shell 206 manages the updating of com-
`posite desktop information in a registry 208. A registry is a
`mechanism for storing program data, and preferably
`includes one or more files on a persistent storage medium
`and associated code for accessing the data. The registry 208
`operates as a database of information pertaining to one or
`more application programs that execute on the personal
`computer 20 (FIG. 1). The Windows 95 operating system
`provides a system registry that is employed by multiple
`application programsto store configuration information for
`subsequentretrieval. In one actual embodiment,the registry
`208 is the system registry provided by Windows 95. The
`composite desktop shell 206 adds, deletes and modifies
`registry 208 data pertaining to the composite desktop 204.
`The composite desktop 204 uses the composite desktop
`information stored in the registry 208 to generate hypertext
`markup language (HTML)
`instructions, and stores the
`instructions in an HTMLfile, referred to as the desktop-htt
`file 210. The desktop.htt file 210 contains the HTMLinstruc-
`tions necessary to display the composite desktop 204. An
`HTMLviewer 212 reads the desktop.htt file 210, interprets
`the instructions, and generates a composite desktop display.
`The composite desktop shell 206 provides an interface,
`referred to as the shell interface 214 to allow manipulation
`of the composite desktop 204. In one actual embodiment, the
`shell interface is a COM application programminginterface
`(APD, which is described in further detail below. The API
`allows a program component to manipulate the composite
`desktop.
`The invention includes three mechanisms for manipulat-
`ing the composite desktop by using the shell interface 214:
`an application program, a control panel applet, and a pro-
`gram control. In one mechanism, an application program
`216 can add, delete, or modify components on the composite
`desktop 204. The application program 216 can be one of a
`variety of application programs or program components
`capable of communicating with the shell interface 214.
`The invention also provides a control panel applet 218,
`which is an auxiliary program to the system control panel.
`The system control panel is a part of an operating system,
`such as the Windows 95 operating system, and is used to
`configure a variety of system elements. The control panel
`applet 218 uses the shell interface 214 to manipulate the
`composite desktop. The functions and usage of the control
`panel applet are described in further detail below.
`The invention further provides a program control, referred
`to as a shell user interface control 220, which also uses the
`shell interface 214 to manipulate the composite desktop 204.
`12
`
`IPR2024-00145
`Apple EX1005 Page 12
`
`

`

`US 6,278,448 B1
`
`7
`The shell user interface control 220 is typically embedded
`within a Web page 222 and associated with a corresponding
`component on the Web page. Selection of the shell user
`interface control 220 causes the control
`to invoke the
`composite desktop shell 206 by using the shell interface 214,
`in order to add the corresponding component to the com-
`posite desktop. These operations are discussed in further
`detail below.
`
`FIG. 3A illustrates an exemplary desktop, referred to as a
`composite desktop 302, produced and displayed on a moni-
`tor 47 (FIG. 1) of a personal computer 20 in accordance with
`the present
`invention. In one actual embodiment of the
`invention,
`the HTML viewer 212 (FIG. 2) displays the
`composite desktop 302 according to the HTML commands
`within the DESKTOP.HTTfile. The contents of a DESK-
`TOP.HTT file is described in further detail below. As
`depicted in FIG. 3, a set of icons 304 is also displayed on the
`monitor 47. Each icon corresponds to a program file, a
`program, or a resource that is invoked when a user selects
`and activates the icon.
`
`10
`
`15
`
`20
`
`The composite desktop 302 includes one or more desktop
`components. A desktop componentis a distinct geometric
`region that displays a single piece of Web-based content.
`Desktop components can be positioned at any location on a
`composite desktop, and can be resized if desired. Desktop
`components can be layered on top of other desktop compo-
`nents. The exemplary desktop 302 depicted in FIG. 3A
`includesa static desktop component 306, an “active” desk-
`top component 308, and a “Web page” desktop component
`310. As depicted, the static desktop component 306 corre-
`sponds to a graphic image retrieved from the personal
`computer 20 or from a remote computer 49 or 60 (FIG. 1).
`The graphic image may be selected from a Web page. The
`invention allows a user to select any graphic image from a
`Web page for insertion onto the composite desktop 302.
`The active desktop component 308 corresponds to a
`componentretrieved locally or from a remote computer. The
`remote computer may be accessed via a local area network
`or a wide area network. The component may be selected
`from a Web page, within which the componentis embedded.
`The process of selecting components embedded within Web
`pages for inclusion in a composite desktop is explained in
`further detail below. The Web page desktop component 310
`corresponds to an entire Web page that was selected for
`inclusion within the composite desktop 302. The process of
`selecting Web pagesfor inclusion as desktop components on
`a composite desktop is described in further detail below.
`FIG. 3B illustrates the layers that comprise the composite
`desktop 302 of FIG. 3A. As depicted in FIG. 3B, an icon
`layer 320, comprising the icons 304,is the topmost layer of
`the composite desktop 302. Behind the icon layer, an HTML
`layer comprises two sublayers: a desktop components sub-
`layer 322 and a background layer 330. The background
`sublayer 330, also knownas the “wallpaper,” is behind the
`desktop components sublayer 322. The desktop components
`sublayer 322 includes the desktop components, a windowed
`component manipulation control 326 and a windowless
`component manipulation control 328. These controls are
`normally not visible, and are used to move and resize
`desktop components. The use of the windowed component
`manipulation control 326 and the windowless component
`manipulation control 328 is explained in further detail
`below. The HTMLviewer 212 (FIG. 2) displays the HTML
`layer on the composite desktop 302.
`In one actual embodiment, the icons 304 are displayed in
`front of the desktop components by creating two windows,
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`8
`one corresponding to the icon layer 320, and one corre-
`sponding to the HTMLlayer. The window corresponding to
`the icon layeris referred to as the icon window.A transparent
`window or a complex regional window comprising all of the
`regions within each icon is created to make the icon window.
`The regions of the window may be discontiguous. By
`keeping the icon window “in front of” the HTML window,
`icons are always painted in front of desktop components and
`the composite desktop background.
`
`The invention includes an application programminginter-
`face (API) for modifying the composite desktop contents. In
`particular, the API is used to modify the desktop components
`and the background sublayer. This allows a computer pro-
`gram to modify the HTML layer during its execution.
`Followingis a listing of an API in one actual embodimentof
`the invention.
`
`DECLARE_INTERFACE_(IActiveDesktop, Unknown)
`
`
`
`// TUnknown methods
`STDMETHOD(QuerylInterface)(THIS_REFIID riid, void ** ppv) PURE;
`STDMETHOD_(ULONG, AddRef) (THIS) PURE;
`STDMETHOD_(ULONG,Release) (THIS) PURE;
`// TActiveDesktop methods
`STDMETHOD(ApplyChanges)(THIS_DWORD dwFlags) PURE;
`STDMETHOD(GetWallpaper)(THIS_LPWSTR pwszWallpaper, UINT
`cchWallpaper,
`DWORD dwReserved) PURE;
`STDMETHOD(SetWallpaper)(THIS_LPCWSTR
`pwszWallpaper, DWORD dwReserved) PURE;
`STDMETHOD(GetWallpaperOptions)(THIS_LPWALLPAPEROPT
`pwpo, DWORD dwReserved) PURE;
`STDMETHOD(SetWallpaperOptions)(THIS_LPCWALLPAPEROPT
`pwpo, DWORD dwReserved) PURE;
`STDMETHOD(GetPattern)(THIS_LPWSTR pwsZPattern,
`UINT cchPattern, DWORD dwReserved) PURE;
`STDMETHOD(SetPattern)(THIS_LPCWSTR pwsZPattern, DWORD
`dwReserved) PURE;
`STDMETHOD(GetDesktopItemOptions)(THIS__
`LPCOMPONENTSO

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