<<

US 2008O184159A1 (19) United States (12) Patent Application Publication (10) Pub. No.: US 2008/0184159 A1 Selig (43) Pub. Date: Jul. 31, 2008

(54) /SIDEBAR BROWSER EXTENSION Publication Classification (75)75) InventorInventor: is,Rov A. Selig,eig, F11llsborough,Hillsborough, NJ (51) Int.G06F Cl. 3/048 (2006.01)

Correspondence Address: (52) U.S. Cl...... T15/781 Kraguljac & Kalnay, LLC 4700 Rockside Road, Summit One, Suite 510 (57) ABSTRACT Independence, OH 44131 Methods and other embodiments associated with a web browser extension are described. One example browser (73) Assignee: Oracle International Corp, extension includes a toolbar logic to provide a toolbar. The Redwood Shores, CA (US) toolbar may include, for example, a set of elements displayed in connection with a browser (21) Appl. No.: 11/978,921 . The browser extension may also include a sidebar 1-1. logic to provide a sidebar. The browser extension may also (22) Filed: Oct. 30, 2007 include a coordination logic to coordinate the presentation O O and functionality of a combination of the toolbar and the Related U.S. Application Data sidebar to be provided to a browser. The presentation and (60) Provisional application No. 60/898.294, filed on Jan. functionality may be based, at least in part, on a selectable 30, 2007. presentation mode and a selectable attachment mode.

1500

W Presence Catagory:Co. Email Phonel Chat Work Peyush Agarwal

23 & hao Nguyon

Developer Center & Dec 13, 2006 6:34:03 PM

Extension Miocles

Arrange ) Dedicate Wow Viewport 0. Floating Sidebar Demo Vignettes Sidebar Horizontal Toolbar 1510 Signons Sidebar 8 Vertical Toolbar

Toolkit Vertical Toolbar Only

Check Authentication State Hidden Patent Application Publication Jul. 31, 2008 Sheet 1 of 16 US 2008/O184159 A1

Toolbar 160

Sidebar Browser Display Window 170 150

Client Device 12

Browser Browser Logic Extension 110 100

Server Device 140

Enterprise Application 130

Figure 1 Patent Application Publication Jul. 31, 2008 Sheet 2 of 16 US 2008/O184159 A1

210

stage)

catagoycontact emanemail Phone catedcraft g

s

WWakist Content

WNews News Content

W Files Online Content Patent Application Publication Jul. 31, 2008 Sheet 3 of 16 US 2008/O184159 A1

300

(3)CNN.com - Breaking NeWS, U.S. World, Weather, Entertainment File Edit View Go Bookmarks Tools Help {O v C. v 6 (3) ( (S) ?GS Getting Started NLatest Headlines Virtually There - itine. Oracle Boost te from opening a popup window.

Floating Sidebar 32 Sidebar & Horizontal Toolbar Sidebar & Vertical Toolbar MemberCenter:eelee Sign in R Vertical Toolbar Only OCNN.com Hidden

s' Figure 3 Patent Application Publication Jul. 31, 2008 Sheet 4 of 16 US 2008/O184159 A1

410

E.

Catagory contact Email Phonecha f

PayushAgarwal Thaonguyon Roy Salig ds widerady stetra

Content

42 W news Content

project.xls toolkit-sidebar.xus

Figure 4 430 Patent Application Publication Jul. 31, 2008 Sheet 5 of 16 US 2008/O184159 A1

510 500

9 CNN.com . Breaking Moon, U.S., World, Weathar, Entertainment & Video News. Manila Fire e G. E. y gov d veg (8) ?erieners D. Georetidar errorester

Getting Stated latest Hesires

52O

Figure 5 Patent Application Publication Jul. 31, 2008 Sheet 6 of 16 US 2008/O184159 A1

600

) CNN.com - Branding Nina, US, World, Worther, Entertainment Video Nora-ala Frua File Edie yew history aeolorers Tools help

S. X

sang W Presence Content

W Worklist Content

WNews Content

Content

630 Figure 6 Patent Application Publication Jul. 31, 2008 Sheet 7 of 16 US 2008/O184159 A1

700

CNN.com - Breaking Nowo, US, World, Weather, Entertainment videoNowe - loan Frofo

Search Gv. p WPresence Content

&

W Worklist Content 8

GP

W Files Online Patent Application Publication Jul. 31, 2008 Sheet 8 of 16 US 2008/O184159 A1

BOO

9) CNN.com-Breaking Nowa, Us, World Weather, Entertainment a VideoNors-Modla Firefox File edit view History Bookmarks Tools help O

Figure 8 Patent Application Publication Jul. 31, 2008 Sheet 9 of 16 US 2008/O184159 A1

-1 900 Start

910 Receive Identifier

920 Receive Mode Signal

930 Initialize Toolber

940 Initialize Sidebar

950 Relate Toolbar and Sidebar

960 Provide Toolbar-Sidebar Combination

End

Figure 9 Patent Application Publication Jul. 31, 2008 Sheet 10 of 16 US 2008/O184159 A1

or sooooooooooooooooo.: Toolbar 1060 | Sidebar 1070 Browser Display Window

Client Device 1020

Browser Browser

Logic Extension 1010 1000

Server Device 1040

Enterprise Application 1030

Figure 10 Patent Application Publication Jul. 31, 2008 Sheet 11 of 16 US 2008/O184159 A1

1100

(3)Arnazon.com: Online Shopping for Electronics, Apparel, Compute File Edit View History Bookmarks Tools Help < * > Y (g (8) ? elhttplow.amazon.com

X Presence

X Worklist

X News

W Files Online Publishared PrivatescratchPad Project.Filename t My Project logo.gif mainmenu-1.png 112 A. project.doc project.ppt project.xls toolkit-sidebar.xul -UXDSG Enterpris...

Figure 11 Patent Application Publication Jul. 31, 2008 Sheet 12 of 16 US 2008/O184159 A1

1200

(3) Amazon.corn: Online Shopping for Electronics, Apparel, Computs File Edit view History Bookmarks Tools Help K. v D v G (8) ?elhttp:lwamazon.com

Content

122 Publishared PrivatescratchPad Project/Filename Size My Project logo i.gif mainmenu-1.png project.doc project.ppt project.xls toolkit-sidebar.xu UXDSG Enterpris... Patent Application Publication Jul. 31, 2008 Sheet 13 of 16 US 2008/O184159 A1

Browser Extension

Toolbar Logic Sidebar Logic 1310 1320

Coordination Logic 1330

Figure 13 Patent Application Publication Jul. 31, 2008 Sheet 14 of 16 US 2008/O184159 A1

1414

Process

Computer

1402

P Browser OCCSSO Extension Logic

141 0 1408

I/O Interfaces

Network 1420 Devices

Figure 14 Patent Application Publication Jul. 31, 2008 Sheet 15 of 16 US 2008/O184159 A1

1500

Oracle Browser for Ronda shiera E

s ess Work Peyush Agarwal X & Thao Nguyon (d o (d

8 Explore the Embedded & Developer Center Dec 13, 2006 6:34:03 PM Extension Modes d orgleBoost A opions Dedicated Window Viewport Floating Sidebar Demo Vignettes Sidebar HorizontaToolbar 1510 Sign ons Sidebar & Vertical Toolbar

Toolkit Vertical Toolbar Only

Check Authentication State Hidden

Figure 15 Patent Application Publication Jul. 31, 2008 Sheet 16 of 16 US 2008/O184159 A1

1600

Options x

Generalof Privacy ContentS ETabs DownloadsA AdvancedG.I.

Figure 16 US 2008/O 184159 A1 Jul. 31, 2008

TOOLBARASIDEBAR BROWSEREXTENSION with a browser. Once installed, package components may be operably connected to a browser and/or browser object(s) CROSS REFERENCE TO RELATED using the XUL overlay feature. Though added to a browser, APPLICATIONS browser extension code may remain separate and removable. An extension may reside in a browser and/or client device 0001. This application claims the benefit of U.S. Provi rather than being part of a web page transmitted by a web sional Application Ser. No. 60/898.294 filed Jan. 30, 2007, service (e.g., enterprise application) to the browser and/or which is incorporated by reference herein in its entirety. client. Thus, conventional systems may employ functionality COPYRIGHT NOTICE (e.g., XUL) to facilitate enhancing web browsers via web browser extensions. 0002. A portion of the disclosure of this patent document contains material that is subject to copyright protection. The BRIEF DESCRIPTION OF THE DRAWINGS copyright owner has no objection to the facsimile reproduc tion by anyone of the patent document or the patent disclo 0006 The accompanying drawings, which are incorpo sure, as it appears in the Patent and Trademark Office patent rated in and constitute a part of the specification, illustrate file or records, but otherwise reserves all copyright rights various example systems, methods, and other example whatsoever. embodiments of various aspects of the invention. It will be appreciated that the illustrated element boundaries (e.g., BACKGROUND boxes, groups of boxes, or other shapes) in the figures repre sent one example of the boundaries. One of ordinary skill in 0003 Conventional web browsers may have provided a the art will appreciate that one element may be designed as Sub-optimal experience for some enterprise applications with multiple elements or that multiple elements may be designed respect to how, when, and where content in and/or sidebars was displayed and/or arranged. Limitations associ as one element. An element shown as an internal component ated with this type of management may have lead to issues of another element may be implemented as an external com with intelligent use of available display real estate. This real ponent and vice versa. Furthermore, elements may not be estate may have been better employed in displaying output drawn to Scale. associated with an enterprise application than with standard 0007 FIG. 1 illustrates a browser display window with an browser functionality. An enterprise application may include associated toolbar and Sidebar being managed by a browser software hosted on an application server that provides ser extension interacting with a browser logic. vices to users belonging to an enterprise. These users may 0008 FIG. 2 illustrates a browser window associated with have an enhanced enterprise application experience by inter a multi-mode toolbarfsidebar combination. acting with specific browser chrome and/or specific enter 0009 FIG. 3 is a simulated screen shot of a browser win prise application content in specific ways. However, a con dow that includes a user interface element associated with ventional web browser may have required applications, selecting a mode for a polymorphic toolbar/sidebar combi including enterprise applications, to deliver content and func nation. tionality in a browser window using only certain techniques 0010 FIG. 4 is a simulated screen shot of a dedicated (e.g., hypertext markup language (HTML)), and may also window instance of a polymorphic toolbar/sidebar combina have controlled the nature, quantity, and location of available tion. chrome. While providing an open, generic, global approach 0011 FIG. 5 is a simulated screen shot of a floating sidebar to content delivery and chrome management, this require instance of a polymorphic toolbar/sidebar combination. ment may have limited the richness of possible interactions 0012 FIG. 6 is a simulated screen shot of a sidebar and between web browsers and enterprise applications. horizontal toolbar instance of a polymorphic toolbar/sidebar 0004. A web browser extension is a code package that can combination. be installed into a browser and/or client device (e.g., com 0013 FIG. 7 is a simulated screen shot of a sidebar and puter) running a browser. The extension may add a new fea vertical toolbar instance of a polymorphic toolbar/sidebar ture to a browser, extend an existing functionality, modify a combination. visual theme, and so on. This browser may employ an exten 0014 FIG. 8 is a simulated screenshot of a vertical toolbar sible markup language (XML) user-interface language only instance of a polymorphic toolbar/sidebar combination. (XUL, pronounced Zuul) to describe and Support application 0015 FIG. 9 illustrates an example method associated user interfaces. XUL provides an overlay functionality that with providing a polymorphic toolbar/sidebar combination. facilitates merging user interfaces from different Sources into 0016 FIG. 10 illustrates an example browser extension one user interface (UI). For example, UI from a browser and associated with toolbar/sidebar replication associated with a browser extension(s) may be merged. Recall that a browser sidebar hiding. extension may provide additional functionality for a browser. This functionality may include, for example, additional UI 0017 FIG. 11 is a simulated screenshot of a sidebar asso features that facilitate customizing a browser UI. ciated with toolbar/sidebar replication. 0005. The collective UI adornment for a browser (e.g., 0018 FIG. 12 is a simulated screenshot of a toolbar asso border, menus, frames, buttons, ) may be referred to ciated with toolbar/sidebar replication. as “browser chrome' or just "chrome'. A browser extension 0019 FIG. 13 illustrates an example browser extension. may interact with the browser chrome. A browser extension 0020 FIG. 14 illustrates an example computing device in may include a XUL file(s), JavaScript, a style sheet(s), an which example systems and/or methods may operate. image(s), and so on. This set of items may be loaded into a 0021 FIG. 15 is a simulated screen shot of user interface single package (e.g., Zip file). The package may be loaded elements associated with selecting a display mode for a poly into, unwrapped by, and installed on a client device associated morphic toolbar/sidebar combination. US 2008/O 184159 A1 Jul. 31, 2008

0022 FIG.16 is a simulated screen shot of a user interface computer-readable medium include, but are not limited to, a element associated with selecting a display mode for a poly floppy disk, a flexible disk, a hard disk, a magnetic tape, other morphic toolbar/sidebar combination. magnetic medium, other optical medium, a RAM (random access memory), a ROM (read only memory), and other DETAILED DESCRIPTION media from which a computer, a processor or other electronic device can read. 0023. In one embodiment, a browser extension provides a 0028 “Logic', as used herein, includes but is not limited multi-mode (e.g., polymorphic) user interface (UI) including to hardware, firmware, Software in execution, and/or combi a combination toolbar/sidebar. The browser extension may be nations thereof to perform a function(s) or an action(s), and/or embodied as software and delivered as part of an Enterprise to cause a function or action from another logic, method, Web Browser Extension or as part of a separate toolbar/ and/or system. Logic may include a software controlled sidebar extension. Once installed on a client device, the microprocessor, discrete logic (e.g., application specific inte browser extension may logically and/or physically become grated circuit (ASIC)), an analog circuit, a digital circuit, a part of a browser and thus the multi-mode UI functionality programmed logic device, a memory device containing may become part of the browser functionality. The multi instructions, and so on. Logic may include one or more gates, mode toolbar/sidebar extension may display and operate combinations of gates, or other circuit components. Where (e.g., control) a toolbar/sidebar combination associated with multiple logical logics are described, it may be possible to a web browser in a number of selectable modes. The select incorporate the multiple logical logics into one physical logic. able modes may include a dedicated mode, floating and Similarly, where a single logical logic is described, it may be embedded modes, combinations of horizontal and vertical possible to distribute that single logical logic between mul modes, a hidden mode, and so on. A user may select a mode tiple physical logics. using an access point (e.g., bookmark, item, option 0029. An "operable connection’, or a connection by panel). The mode may be remembered between sessions and which entities are “operably connected, is one in which may be automatically applied to related windows that are signals, physical communications, and/or logical communi Subsequently displayed. In one example, a toolbar may pro cations may be sent and/or received. Typically, an operable vide temporary visual access to data present in a hidden connection includes a physical interface, an electrical inter sidebar. face, and/or a data interface, but it is to be noted that an operable connection may include differing combinations of Definitions these or other types of connections sufficient to allow oper 0024. The following includes definitions of selected terms able control. For example, two entities can be operably con employed herein. The definitions include various examples nected by being able to communicate signals to each other and/or forms of components that fall within the scope of a directly or through one or more intermediate entities (e.g., term and that may be used for implementation. The examples processor, operating system, logic, software). Logical and/or are not intended to be limiting. Both singular and plural forms physical communication channels can be used to create an of terms may be within the definitions. operable connection. 0025. As used in this application, the term “computer 0030 "Signal', as used herein, includes but is not limited component” refers to a computer-related entity, either hard to one or more electrical or optical signals, analog or digital ware, firmware, Software in execution, and/or a combination signals, data, one or more computer or processor instructions, thereof. For example, a computer component can be, but is messages, a bit or bit stream, or other means that can be not limited to being, a process running on a processor, a received, transmitted and/or detected. processor, an object, an executable, a thread of execution, a 0031 “Software', as used herein, includes but is not lim program, and a computer. One or more computer components ited to, one or more computer or processor instructions that can reside within a process and/or thread of execution and a can be read, interpreted, compiled, and/or executed and that computer component can be localized on one computer and/ cause a computer, processor, or other electronic device to or distributed between two or more computers. perform functions, actions and/or behave in a desired manner. 0026 “Computer communication', as used herein, refers The instructions may be embodied in various forms (e.g., to a communication between two or more computing devices routines, modules, methods, threads, programs) including (e.g., computer, personal digital assistant, cellular telephone, separate applications or code from libraries (e.g., dynami network device) and can be, for example, a network transfer, cally linked library (DLL)). Software may also be imple a file transfer, an applet transfer, an email, a hypertext transfer mented in a variety of executable and/or loadable forms protocol (HTTP) transfer, and so on. A computer communi including, but not limited to, a stand-alone program, a func cation can occur across, for example, a wireless system (e.g., tion call (local and/or remote), a servelet, an applet, instruc IEEE 802.11), an Ethernet system (e.g., IEEE 802.3), a token tions stored in a memory, part of an operating system or other ring system (e.g., IEEE 802.5), a local area network (LAN), a types of executable instructions. It will be appreciated that wide area network (WAN), a point-to-point system, a circuit computer-readable and/or executable instructions can be Switching system, a packet Switching system, and so on. located in one logic and/or distributed between two or more 0027 “Computer-readable medium', as used herein, communicating, co-operating, and/or parallel processing log refers to a medium that participates in directly or indirectly ics and thus may be loaded and/or executed in serial, parallel, providing signals, instructions and/or data. A computer-read massively parallel and other manners. able medium may take forms, including, but not limited to, 0032. “User', as used herein, includes but is not limited to non-volatile media and volatile media. Non-volatile media one or more persons, Software components, computers or may include, for example, optical or magnetic disks, and so other devices, or combinations of these. on. Volatile media may include, for example, semiconductor 0033 FIG. 1 illustrates a browser extension 100 interact memories, dynamic memory, and so on. Common forms of a ing with a browser logic 110 running on a client device 120. US 2008/O 184159 A1 Jul. 31, 2008

The client device 120 may interact with a server device 140 tions of horizontal and Vertical modes, a hidden mode, and so running an enterprise application 130. The client device 120 on. These modes are described in greater detail below in may display output produced by the browser logic 110 and/or connection with FIGS. 3 through 8. by the browser extension 100 in a browser display window 0037 FIG. 2 is a simulated screen shot of a browser win 150. The browser display window 150 may interact with a dow 200 associated with a toolbarfsidebar combination. A toolbar 160 and a sidebar 170. Conventionally, toolbars and toolbar 210 is arranged at the top of window 200 and a sidebar sidebars may have been independent things between which 220 is arranged along the side of window 200. Window 200 little, if any, cooperation existed. Browser extension 100 may displays data in a display area 230 (e.g., window pane). UI manage toolbar 160 and sidebar 170 collectively to create a elements in toolbar 210 may be related to browser window polymorphic toolbar/sidebar (PTS) combination. This PTS 200, sidebar 220, and/or information in pane 230. UI ele combination may be presented in different modes to provide ments and data in sidebar 220 may be related to browser synergies not present in conventional independent systems. window 200 and/or information in pane 230. In the context of 0034 Client device 120 may include a browser logic 110 an enterprise, information in pane 230 may be associated with that provides a base amount of browser functionality. Client a web-based enterprise application(s). Toolbar 210 and side device 120 may also include a browser extension 100 to bar 220 may facilitate navigating through data in pane 230, provide additional functionality to browser logic 110. While selecting data to be displayed in pane 230, controlling how browser extension 100 is illustrated separate from browser data is displayed in pane 230, taking actions on data in pane logic 110, it is to be appreciated that these logics may, in some 230, and so on. The arrangement of toolbar 210 at the top of examples, reside in a single logic. Output from the browser window 200 and of Sidebar 230 at the side of window 200 is logic 110 and the browser extension 100 may be merged onto just one possible arrangement. Different users and different the browser display window 150. Additionally, toolbar 160 applications may configure a window with different arrange and sidebar 170 may be collectively managed to facilitate ments (e.g., attached, embedded, free-floating, horizontal, intelligent use of available display real estate associated with vertical) as described below. browser display window 150. 0038 FIG. 3 is a simulated screen shot of a browser win 0035 Toolbar 160 may display, for example, buttons that dow 300 that includes a user interface element associated control the operation of browser logic 110 and/or of enter with selecting a mode for a polymorphic toolbar/sidebarcom prise application 130. These buttons may be associated with bination. Window 300 includes a toolbar 310 from which a generic actions including, for example, starting an applica menu 320 has been activated. Menu 320 displays options for tion, terminating an application, opening a file, formatting different modes for arranging a combination toolbar/sidebar Some data, moving data (e.g., cut/paste) and so on. However, associated with a browser extension logic as described herein. these buttons may also be associated with actions specific to The modes include a dedicated window mode, a floating enterprise application 130. The specific actions would be sidebar mode, a sidebar and horizontal toolbar mode, a side related to the specific functionality provided by enterprise bar and vertical toolbar mode, a vertical toolbar mode, and a application 130. Sidebar 170 may display, for example, data hidden mode. While six modes are discussed in this example, associated with browser logic 110 and/or enterprise applica it is to be appreciated that in different examples a greater tion 130. The data may include generic data including, for and/or lesser number of modes may be available. Similarly, example, an application name, a window name, time of day, while a menu 320 is illustrated, it is to be appreciated that and other information. However, the data may also include other graphical user interface elements may be associated data specific to enterprise application 130. This data may be with selecting a mode. For example, FIG. 15 illustrates a arranged collectively and/or separated into different window sidebar 1500 from which a menu 1510 may be accessed. panes. Since toolbar 160 and sidebar 170 may both display Menu 1510 may be a sub-menu in another menu 1520 that is information specific to enterprise application 130, browser available on a toolbar 1530. Additionally, FIG. 16 illustrates extension 100 may collectively manage toolbar 160 and side an options panel 1600 that may be presented when a UI bar 170 to establish and maintain relationships between element (e.g., ) is activated to select a mode. Options related information. For example, a first button on toolbar 160 panel 1600 may allow a user to select a default extension may control whether certain application specific data is dis mode that may then be applied in Subsequent sessions and for played in sidebar 170 and a second button on toolbar 160 may Subsequently instantiated windows. control the appearance of that data on sidebar 170. A third 0039 FIG. 4 is a simulated screen shot of a dedicated button on toolbar 160 may be used to force an update of window instance of a polymorphic toolbar/sidebar combina application specific data displayed on sidebar 170 while a tion. FIG. 4 illustrates a window 400 having a toolbar 410, a fourth button may allow a user to cycle through application sidebar 420, and a display area 430. The display area 430 specific data displayed on sidebar 170. While four buttons and displays output from a content provider (e.g., enterprise four actions are described, it is to be appreciated that a greater application) with which window 400 is interacting. This out and/or lesser number of UI elements may be employed to put may be, for example, web site content. In a dedicated provide a greater and/or lesser number of various actions window instance, a toolbar/sidebar browser extension con associated with interactions between toolbar 160, sidebar trols browser window 400 to hide native browser chrome and 170, and enterprise application 130. to display custom chrome associated with, for example, the 0036 Not all users will interact with an enterprise appli enterprise application(s) with which window 400 is interact cation 130 in the same way. Additionally, not all enterprise ing. Thus, in one example, toolbar 410 may not include stan applications will be suited to being interacted within the same dard browser chrome but may include enterprise application way. Therefore browser extension 100 may provide different specific chrome while in another example toolbar 410 may modes for displaying toolbar 160 and sidebar 170. As have a Subset of some standard browser elements grafted onto described above, the modes may include, for example, a the application specific chrome. Similarly, in one example dedicated mode, floating and embedded modes, combina sidebar 420 may not include standard browser chrome but US 2008/O 184159 A1 Jul. 31, 2008

may include enterprise application specific chrome while in of the browser window 700. Toolbar 710 may display UI another example sidebar 420 may include a subset of standard elements that include, for example, icons. Labels associated browser elements along with application specific chrome. with the icons may not be displayed to save real estate and 0040 FIG.5 is a simulated screen shot of a floating sidebar thus yield more room for content in display area 730. The instance of a polymorphic toolbar/sidebar combination. FIG. toolbar/sidebar browser extension may also control browser 5 illustrates a browser window 500 having a toolbar 510, a window 700 to display sidebar 720 as part of an existing sidebar 520, and a display area 530. The display area 530 browser window. Chrome associated with the sidebar 720 displays output from a content provider (e.g., enterprise may also be displayed and may also appear Vertically down application) with which window 500 is interacting. This out the side of the browser window 700. In FIG.7, the toolbar 710 put may be, for example, web site content. In the floating appears on the left side of sidebar 720 and sidebar 720 appears sidebar instance, a toolbarfsidebar browser extension controls on the left side of browser window 700. It is to be appreciated browser window 500 to launch a sidebar in its own window that toolbar 710 and/or sidebar 720 may appear in other that may “float over other browser windows. The floating locations (e.g., along right side of browser window 700). In sidebar 520 may display, for example, content associated with this embedded sidebar and toolbar example, sidebar 720 may an enterprise application, content based on component be closed without affecting toolbar 710. This may facilitate chrome, content determined by user profile, content deter providing additional display real estate for display area 730. mined by user identification, and so on. This mode facilitates 0043 FIG. 8 is a simulated screen shot of a toolbar only a user driving the content of display area 530 from the floating instance of a polymorphic toolbar/sidebar combination. FIG. sidebar 520. This mode also facilitates a user opening and 8 illustrates a browser window 800 having a toolbar 810 and managing new browser windows while monitoring content a display area 830. The display area 830 displays output from changes in the floating sidebar 520. While floating sidebar an entity (e.g., enterprise application) with which window 520 is illustrated floating on the right side of browser window 800 is interacting. This output may be, for example, web site 500, it is to be appreciated that the floating sidebar 520 may be content associated with an enterprise application. For positioned and repositioned in different locations. The float example, a purchase order application may provide images of ing sidebar 520 may include UI elements (e.g., buttons) for purchase orders and/or data entry screens associated with controlling actions and may also include UI elements (e.g., purchase orders. In an embedded vertical toolbar instance, a display panes) for conveying information. toolbarfsidebar browser extension controls browser window 0041 FIG. 6 is a simulated screen shot of an embedded 800 to display toolbar 810 as part of an existing browser sidebar and horizontal toolbar instance of a polymorphic window (e.g., window 800). Chrome associated with the tool toolbarfsidebar combination. FIG. 6 illustrates a browser bar 810 may be displayed and appear vertically along the side window 600 having a toolbar 610, a sidebar 620, and a display of the browser window 800. Toolbar 810 may display UI area 630. The display area 630 displays output from a related elements that include, for example, icons. Labels associated entity (e.g., content provider, enterprise application) with with the icons may not be displayed to save real estate and which window 600 is interacting. This output may be, for thus yield more room for content in display area 830. In FIG. example, web site content. In an embedded horizontal toolbar 8, the toolbar 810 appears on the left side of browser window and sidebar instance, a toolbarfsidebar browser extension 800. It is to be appreciated that toolbar 810 may appear in controls browser window 600 to display toolbar 610 as part of other locations (e.g., along right side of browser window an existing browser window (e.g., window 600). Chrome 800). In this embedded toolbar example, a sidebar (not illus associated with the toolbar 610 may be displayed and appear trated) may be available and may be opened and/or closed horizontally across the top of the browser window 600. Tool without affecting toolbar 810. This may facilitate selectively bar 610 may display UI elements that include, for example, providing additional display real estate for display area 830. icons with labels. The toolbar/sidebar combination may also 0044 FIGS. 4 through 8 have illustrated several modes control browser window 600 to display sidebar 620 as part of and/or states for displaying a toolbar/sidebar combination an existing browser window. Chrome associated with the and associated chrome. In one example, a user may select a sidebar 620 may be displayed and appear vertically down the "hidden' state that controls whethera toolbar, sidebar, and/or side of the browser window 600. In FIG. 6, the sidebar 620 chrome will be displayed on a browser window. This state, appears on the left side of browser window 600. It is to be along with the other modes, may be selected using a mode appreciated that sidebar 620 may appear in other locations access point. The mode access point may be a UI element (e.g., along right side of browser window 600). In this embed including, for example, a bookmark, a menu entry, an options ded sidebar and toolbar example, sidebar 620 may be closed panel, and so on. In one example, a current setting for a without affecting toolbar 610. This may facilitate providing toolbarfsidebar combination mode can be stored and thus can additional display real estate for display area 630. be used to control related new windows as they are opened. 0.042 FIG. 7 is a simulated screen shot of a sidebar and The browser extension can employ the stored mode across vertical toolbar instance of a polymorphic toolbar/sidebar different browser sessions and with different related browser combination. FIG. 7 illustrates a browser window 700 having windows. A toolbar/sidebar combination mode may be asso a toolbar 710, a sidebar 720, and a display area 730. The ciated with different entities including, for example, a single display area 730 displays output from, for example, a content user, a session, an enterprise application, a class of users, and provider (e.g., enterprise application) with which window SO. O. 700 is interacting. This output may be, for example, web site 0045. Some portions of the detailed descriptions that fol content. In an embedded vertical toolbar and sidebar instance, low are presented in terms of algorithms and symbolic rep a toolbarfsidebar browser extension controls browser window resentations of operations on data bits within a memory. 700 to display toolbar 710 as part of an existing browser These algorithmic descriptions and representations are the window (e.g., window 700). Chrome associated with the tool means used by those skilled in the art to convey the substance bar 710 may be displayed and appear vertically along the side of their work to others. An algorithm is here, and generally, US 2008/O 184159 A1 Jul. 31, 2008 conceived to be a sequence of operations that produce a result. ented vertically along an edge (e.g., inside left edge) of the The operations may include physical transformations of browser window with which the toolbar is associated. physical quantities (e.g. change data values, change States of 0050. In another example, the mode signal may identify a component, etc). Usually, though not necessarily, the physi that an embedded sidebar and vertical toolbar mode is to be cal quantities take the form of electrical or magnetic signals established. In this mode, both the user interface toolbar and capable of being stored, transferred, combined, compared, sidebar may be incorporated into the browser window. Like and otherwise manipulated in a logic and the like. It has the previous mode, the user interface sidebar may be closed proven convenient at times, principally for reasons of com without affecting the user interface toolbar. Unlike the previ mon usage, to refer to these signals as bits, values, elements, ous mode, the user interface toolbar may be oriented verti symbols, characters, terms, numbers, and so on. It should be cally along a side of the browser window. The sidebar may borne in mind, however, that these and similar terms are to be also be oriented vertically along a side of the browser window. associated with the appropriate physical quantities and are In one example the toolbar and sidebar may both be posi merely convenient labels applied to these quantities. Unless tioned along the same edge (e.g., inside left edge) of a browser specifically stated otherwise, it is appreciated that throughout window while in another example the sidebar and toolbar the description, terms like processing, transmitting, retriev may be located along different edges of the browser window. ing, communicating, calculating, determining, displaying, 0051. In another example, the mode signal may identify and so on, refer to actions and processes of a computer sys that a toolbar only mode is to be created. In this mode, the user tem, logic, processor, or similar electronic device that interface toolbar may be incorporated into the browser win manipulates and transforms data represented as physical dow and no sidebar may be provided by method 900. A (electronic) quantities. sidebar may be provided by another logic and the toolbar may 0046 FIG.9 illustrates a method 900 associated with pro operate independently of this independent sidebar. viding a multimode (e.g., polymorphic) toolbar/sidebar com 0052. In another example, the mode signal may identify bination. Method 900 may include, at 910, receiving an iden that a hidden mode is to be created. In the hidden mode, the tifier of a browser window with which a browser extension is user interface toolbar may be incorporated into the browser to interact. The identifier may be, for example, a GUID (glo window and may be configured to facilitate viewing content bally unique identifier), a handle, a pointer, and so on. The that would otherwise not be viewable when a sidebar is hid browser window may be provided by a browser. The browser den. Thus, the toolbar may include a user interface element may be running on a device (e.g., computer) on which method related to a user interface sidebar content. The user interface 900 may also run. In one example method 900 may be per sidebar content may be temporarily displayed when the user formed by a browser extension running on a computer. interface toolbar element is selected. For example, a popup 0047 Method 900 may also include, at 920, receiving a window may be instantiated when an on a toolbar is mode signal concerning the toolbar-sidebar combination to selected. be provided to the browser window by the browser extension. 0053 While a number of different modes are described The mode signal may identify locations, orientations, func above, it is to be appreciated that method 900 may include tionality, visibility, interoperability, and so on, of the toolbar establishing a greater and/or lesser number of modes based on and/or sidebar. In one instance the mode signal may identify a mode signal. Additionally, other combinations of attach that a dedicated window mode is to be established for the ment (e.g., embedded, floating, attached) and presentation toolbar-sidebar combination. Establishing the dedicated win (e.g., horizontal, Vertical) may be associated with these other dow mode may include, for example, connecting the user modes. interface toolbar to the browser window and connecting the 0054 Method 900 may also include, at 930, initializing a user interface sidebar to the browser window. Establishing the user interface toolbar to form part of the toolbar-sidebar com dedicated window mode may also include Suppressing native bination and to be associated with the browser window. To browser chrome associated with the browser window and account for the modes described above, the initializing may presenting custom chrome associated with a content provider be based, at least in part, on the mode signal. As described in the user interface toolbar and/or the user interface sidebar. above, a toolbar may be located in different positions and may 0048. In another instance, the mode signal may identify have different attachment and/or functionality. Therefore, in that a floating sidebar mode is to be created. Establishing the one example, initializing 930 the user interface toolbar may floating sidebar mode may include connecting the user inter include establishing a location for the toolbar, a size for the face toolbar to the browser window and not connecting the toolbar, a set of functionality for the toolbar, and a subset of user interface sidebar to the browser window. In the floating native browser toolbar functionality to be included in the set sidebar mode, content displayed in the browser window may of functionality for the toolbar. In different examples, the be controlled, at least in part, by a user interaction with the subset of native browser functionality may include all the user interface sidebar. native functionality, a Subset of the native functionality, and/ 0049. In another example, the mode signal may identify or none of the native functionality. that an embedded sidebar and horizontal toolbar mode is to be 0055 Method 900 may also include, at 940, initializing a created. Creating this mode may include incorporating the user interface sidebar to form part of the toolbar-sidebarcom user interface toolbar and sidebar into the browser window. bination and to be associated with the browser window. The Creating this mode may also include allowing the user inter initializing may be based, at least in part, on the mode signal. face sidebar to be closed without affecting the user interface In different examples, initializing 940 the user interface side toolbar. In this mode, the user interface toolbar may be ori bar may include establishing a location for the sidebar, a size ented horizontally with respect to the browser window. In one for the sidebar, a set of functionality for the sidebar, and a example, it may be oriented horizontally at or near the top of subset of native browser sidebar functionality to be included a browser window. In one example, the sidebar may be ori in the set of functionality for the sidebar. Once again the US 2008/O 184159 A1 Jul. 31, 2008

subset of native browser sidebar functionality to be included 0060 Browser extension 1000 may run on a client device may include all. Some, or none of the native functionality. 1020 along with a browser logic 1010. Browser logic 1010 0056. The mode signal may be provided by the browser and browser extension 1000 may provide output to a browser window in response to a user selection of a mode. The user display window 1050. The browser display window 1050 may select the mode by interacting with a graphical user may have an associated toolbar 1060 and an associated side interface element. For example, the user may select a 1070. The browser display window 1050 may display item from a menu associated with the browser window, may content associated with, for example, an enterprise applica select a bookmark item from a graphical user interface ele tion 1030 running on a server device 1040. ment associated with the browser window, may enter data into 0061 Browser extension 1000 may create a relationship an options panel provided by the browser window, and so on. between toolbar 1060 and sidebar 1070. Sidebar 1070 may be It is to be appreciated that in different examples different hidden. Information that has been hidden by hiding sidebar access points may be used to select the mode. 1070 may be replicated and displayed to a user from a differ 0057 Method 900 may also include, at 950, establishing a ent access point (e.g., toolbar 1060) without having to unhide relationship between the user interface toolbar and the user sidebar 1070. The screen real estate management provided by interface sidebar to facilitate collectively managing the user browser extension 1000 produces minimal disruption to con interface toolbar and the user interface sidebar as the toolbar tent on the display window 1050. sidebar combination. Establishing the relationship may 0062 FIG. 11 is a simulated screenshot 1100 of a sidebar include, for example, establishing pointers, establishing a 1110 associated with toolbar/sidebar replication. Screenshot pipe, establishing a communication path (e.g., socket, shared 1100 illustrates a sidebar 1110 and a toolbar 1120. Sidebar memory), initializing interrupt handlers, configuring event 1110 includes a number of panes (e.g., presence, work list, handlers, and so on. The relationship may, for example, facili news, files online, and so on. In screenshot 1100 the sidebar tate controlling sidebar content display through the use of 1120 is open and visible. However, the sidebar 1110 may toolbar icons. The relationship may also, for example, facili become hidden. Even though sidebar 1110 may become hid tate controlling a content provider (e.g., enterprise applica den, a user may still be interested in some of the content in the tion) that is providing content displayed in the sidebar. sidebar 1110. Thus, FIG. 12 is a simulated screenshot 1200 0058 Method 900 may also include, at 960, selectively where a sidebar has been hidden and content in the hidden providing the toolbar-sidebar combination to the browser sidebar is still selectively temporarily viewable. The hidden window associated with the identifier. The location of the sidebar has some content that is being displayed in a flyout toolbar-sidebar combination with respect to the browser win window 1210 after an icon has been accessed on toolbar 1220. dow may be controlled, at least in part, by the mode signal. Accessing the icon may include, for example, clicking on the Additionally, the presence and functionality of native browser icon. Whilea flyout window 1210 and an icon on toolbar 1210 chrome associated with the browser window may depend, at are illustrated, it is to be appreciated that content from a least in part, on the presence and functionality of the toolbar hidden sidebar pane may be displayed using different UI sidebar combination. Having once provided a toolbar-sidebar elements and that the hidden content may be displayed upon combination inaccordance with a selected mode, method 900 activation of different UI elements associated with toolbar may selectively control a browser to instantiate a Subsequent 1220. browser window in accordance with the mode signal. This 0063 FIG. 13 illustrates an example browser extension may involve discovering and/or storing a most recently 1300. Browser extension 1300 may include, for example, a selected mode and applying that mode to Subsequently cre toolbar logic 1310 to provide a toolbar. The toolbar may be, ated windows and/or sessions. for example, a collection of graphical user interface elements 0059 FIG. 10 illustrates an example browser extension (e.g., icons, buttons, menus) with which a set of functionality 1000 associated with toolbar/sidebar replication and sidebar is associated. The functionality may be associated with a hiding. A user may want to hide a sidebar 1070 to yield more browser and/or with a content provider (e.g., enterprise appli space to display content. Hiding the sidebar 1070 will cause a cation). Browser extension 1300 may also include a sidebar loss of visibility of the content in the sidebar 1070. However, logic 1320 to provide a sidebar. The sidebar may also be a the user may also want to stay abreast of the now hidden collection of graphical user interface elements (e.g., window content in the sidebar 1070. Thus, browser extension 1000 panes, control elements) with which a set of content and/or may selectively replicate sidebar content using a toolbar functionality is associated. Conventionally, a toolbar and a 1060. In one example, content in sidebar 1070 may be dis sidebar would be provided, if at all, by a browser and would played in a pane that can be collapsed to yield more space to be controlled individually. display web page content. The browser extension 1000 may 0064 Browser extension 1300 also includes a coordina associate hidden content with a toolbar 1060 UI element (e.g., tion logic 1330 to coordinate the presentation, functionality, icon). By way of illustration, an icon on toolbar 1060 may be and/or interoperability of a combination of the toolbar and the associated with a hidden content pane associated with sidebar sidebar. Thus, rather than operating independently under the 1070 after it is hidden. Accessing (e.g., clicking on, hovering control of a browser, a toolbar and a sidebar may be provided over) the icon on the toolbar 1060 may cause a temporary as a combination that can be managed collectively. The com display of the related hidden content. For example, a “flyout bination may be provided to a browser. The presentation, window may be displayed adjacent to the accessed icon. The functionality, and interoperability of the combination may be flyout window may display the related hidden content. When controlled, at least in part, by a selectable presentation mode the icon is deactivated (e.g., click again, stop hover) the flyout and a selectable attachment mode. The presentation mode window may be removed. This facilitates providing tempo and/or the attachment mode may be user selectable from rary visibility to related hidden content without disturbing the graphical user interface elements (e.g., menu items, options layout of the browser windows. panels) associated with a browser. US 2008/O 184159 A1 Jul. 31, 2008

0065. In one example, the presentation mode may deter equivalents, may operate. The example computing device mine a set of functionality that is to be provided by the may be a computer 1400 that includes a processor 1402, a browser and the browser extension 1300. The set of function memory 1404, and input/output ports 1410 operably con ality may include functionality provided by the browser and/ nected by a bus 1408. In one example, the computer 1400 may or the browser extension 1300. Thus, the functionality may include a browser extension logic 1430 configured to facili concern browseractions (e.g., open/close window, move win tate adding coordinated toolbar-sidebar functionality to a dow, resize window, format content) and/or content provider browser. In different examples, the logic 1430 may be imple actions (e.g., acquire data, refresh data, update data). This mented in hardware, Software, firmware, and/or combina functionality may be invoked, for example, through the tool tions thereof. Thus, the logic 1430 may provide means (e.g., bar and/or through the sidebar. The presentation mode may hardware, software, firmware) for providing a toolbar-sidebar be, for example, a standard browser mode, a standard browser combination to a browser. Logic 1430 may also provide plus extension mode, and an extension mode. In a standard means (e.g., hardware, Software, firmware) for selectively browser mode, only chrome associated with a browser may be controlling the toolbar-sidebar combination to operate col displayed and thus only functionality associated with the lectively according to a selected mode. In different examples browser may be available. In the standard browser plus exten the selected mode controls the location, orientation, interop sion mode chrome associated with both a browser and a erability, and/or functionality of the toolbar-sidebar combi content provider (e.g., enterprise application) associated with nation. While the logic 1430 is illustrated as a hardware the browser extension 1300 may be provided. In the extension component attached to the bus 1408, it is to be appreciated mode, only chrome associated with a content provider asso that in one example, the logic 1430 could be implemented in ciated with the browser extension 1300 may be provided. the processor 1402. 0066. The attachment mode may control the location of 0070 Generally describing an example configuration of the toolbar, the location of the sidebar, and/or the indepen the computer 1400, the processor 1402 may be a variety of dence of the combination of the toolbar and sidebar with various processors including dual microprocessor and other respect to a browser window provided by the browser. For multi-processor architectures. A memory 1404 may include example, the toolbar may be controlled to be oriented hori volatile memory and/or non-volatile memory. Non-volatile Zontally along the top of a window, vertically along the side of memory may include, for example, ROM, PROM (program a window, and so on. Similarly, the sidebar may be controlled mable read only memory), EPROM (erasable PROM), and to be oriented vertically at different sides of a window. It is to EEPROM (electrically erasable PROM). Volatile memory be appreciated that different horizontal and vertical arrange may include, for example, RAM (random access memory). ments may be provided. The attachment mode may be, for synchronous RAM (SRAM), dynamic RAM (DRAM), syn example, an embedded mode, an attached mode, and a float chronous DRAM (SDRAM), double data rate SDRAM ing mode. In one example, the embedded mode includes (DDR SDRAM), and direct RAM bus RAM (DRRAM). establishing the combination of the toolbar and the sidebar as 0071. A disk 1406 may be operably connected to the com graphical user interface elements that are part of the browser puter 1400 via, for example, an input/output interface (e.g., window. In one example, the attached mode includes estab card, device) 1418 and an input/output port 1410. The disk lishing the combination of the toolbar and the sidebar as 1406 may be, for example, a magnetic disk drive, a Solid state graphical user interface elements that can be managed sepa disk drive, a floppy disk drive, a tape drive, a Zip drive, a flash rately from the browser window. In one example, the floating memory card, and/or a memory stick. Furthermore, the disk mode includes establishing the sidebar as a graphical user 1406 may be a CD-ROM (compact disk ROM), a CD record interface element that can be managed separately from the able drive (CD-R drive), a CD rewritable drive (CD-RW browser window and that can be positioned separately from drive), and/or a digital video ROM drive (DVD ROM). The the browser window. Thus, the toolbar and/or sidebar may memory 1404 can store a process 1414 and/or a data 1416, for become part of the browser window, may appear to become example. The disk 1406 and/or the memory 1404 can store an part of the browser window and yet maintain some autonomy, operating system that controls and allocates resources of the and/or may look and behave autonomously. computer 1400. 0067. In one example, the presentation mode and the 0072 The bus 1408 may be a single internal bus intercon attachment mode may be indicated by a single identifier. nect architecture and/or other bus or mesh architectures. Additionally, the presentation mode and attachment mode While a single bus is illustrated, it is to be appreciated that the may combine to form a hidden mode where content associ computer 1400 may communicate with various devices, log ated with the sidebar is to be temporarily displayed when the ics, and peripherals using other busses (e.g., USB (universal sidebar is hidden when an element on the toolbar associated serial bus), Ethernet). The bus 1408 can be types including, with the content is activated. for example, a memory bus, a memory controller, a peripheral 0068 A user may wish to establish a mode once and then bus, an external bus, a crossbar Switch, and/or a local bus. forget about it. Thus, the browser extension 1300 may include 0073. The computer 1400 may interact with input/output logic to discover, store, and/or recall a previously established devices via the i/o interfaces 1418 and the input/output ports mode. In one example, the browser extension 1300 may 1410. Input/output devices may be, for example, a keyboard, include a listener logic to determine a last known presentation a microphone, a pointing and selection device, cameras, mode for the combination of the toolbar and the sidebar. With video cards, displays, the disk 1406, the network devices the last known presentation mode available, the browser 1420, and so on. The input/output ports 1410 may include, for extension 1300 may control a browser to create a subsequent example, serial ports, parallel ports, and USB ports. browser window in accordance with the last known presen 0074 The computer 1400 can operate in a network envi tation mode. ronment and thus may be connected to the network devices 0069 FIG. 14 illustrates an example computing device in 1420 via the i/o interfaces 1418, and/or the i/o ports 1410. which example systems and methods described herein, and Through the network devices 1420, the computer 1400 may US 2008/O 184159 A1 Jul. 31, 2008 interact with a network. Through the network, the computer establishing the sidebar as a graphical user interface element 1400 may be logically connected to remote computers. Net that can be managed separately from the browser window and works with which the computer 1400 may interact include, that can be positioned separately from the browser window. but are not limited to, a local area network (LAN), a wide area 7. The browser extension of claim 1, where the presenta network (WAN), and other networks. tion mode and the attachment mode combine to form a hidden 0075 To the extent that the term “includes” or “including” state where content associated with the sidebar is to be tem is employed in the detailed description or the claims, it is porarily displayed when the sidebar is hidden when an ele intended to be inclusive in a manner similar to the term ment on the toolbar associated with the content is activated. “comprising as that term is interpreted when employed as a 8. The browser extension of claim 1, the browser extension transitional word in a claim. Furthermore, to the extent that comprising: the term 'or' is employed in the detailed description or claims a listener logic to determine a last known presentation (e.g., A or B) it is intended to mean A or B or both'. The term mode for the combination of the toolbar and the sidebar “and/or is used in the same manner, meaning A or B or and where the browser extension controls the browser to both’. When the applicants intend to indicate “only A or B but create a Subsequent browser window in accordance with not both then the term “only A or B but not both will be the last known presentation mode. employed. Thus, use of the term “or herein is the inclusive, 9. The browser extension of claim 1, the browser extension and not the exclusive use. See, Bryan A. Garner, A Dictionary being incorporated into a browser. of Modern Legal Usage 624 (2d. Ed. 1995). 10. A method, comprising: 0076. To the extent that the phrase “one or more of A, B, receiving an identifier of a browser window provided by a and C is employed herein, (e.g., a data store configured to browser with which a browser extension is to interact; store one or more of, A, B, and C) it is intended to convey the receiving a mode signal concerning a toolbar-sidebar com set of possibilities A, B, C, AB, AC, BC, and/or ABC (e.g., the bination to be provided to the browser window by the data store may store only A, only B, only C, A&B, A&C, browser extension; B&C, and/or A&B&C). It is not intended to require one of A, initializing a user interface toolbar to form part of the one of B, and one of C. When the applicants intend to indicate toolbar-sidebar combination and to be associated with “at least one of A, at least one of B, and at least one of C, then the browser window, where the initializing is based, at the phrasing “at least one of A, at least one of B, and at least least in part, on the mode signal; one of C will be employed. initializing a user interface sidebar to form part of the What is claimed is: toolbar-sidebar combination and to be associated with 1. A browser extension, comprising: the browser window, where the initializing is based, at a toolbar logic to provide a toolbar; least in part, on the mode signal; a sidebar logic to provide a sidebar, and establishing a relationship between the user interface tool a coordination logic to coordinate the presentation, func bar and the user interface sidebar to facilitate collec tionality, and interoperability of a combination of the tively managing the user interface toolbar and the user toolbar and the sidebar to be provided to a browser, interface sidebar as the toolbar-sidebar combination; where the presentation, functionality, and interoperabil and ity are based, at least in part, on a selectable presentation selectively providing the toolbar-sidebar combination to mode and a selectable attachment mode. the browser window associated with the identifier, 2. The browser extension of claim 1, where the presenta where the location of the toolbar-sidebar combination tion mode determines a set of functionality that is to be with respect to the browser window is controlled, at least provided by the browser and the browser extension, where the in part, by the mode signal, and where the presence and set of functionality may include functionality provided by functionality of native browser chrome associated with one or more of the browser, and the browser extension, and the browser window depends, at least in part, on the where functionality may be invoked through one or more of presence and functionality of the toolbar-sidebar com the toolbar, and the sidebar. bination. 3. The browser extension of claim 2, where the presenta 11. The method of claim 10, where the mode signal iden tion mode is one of a standard browser mode, a standard tifies that a dedicated window mode is to be created, where the browser plus extension mode, and an extension mode. dedicated window mode includes the user interface toolbar 4. The browser extension of claim 1, where the attachment being connected to the browser window, the user interface mode controls the location of the toolbar, the location of the sidebar being connected to the browser window, Suppression sidebar, and the independence of the combination of the tool of native browser chrome associated with the browser win bar and sidebar with respect to a browser window provided by dow, and presentation of custom chrome associated with a the browser. content provider in one or more of the user interface toolbar, 5. The browser extension of claim 4, where the attachment and the user interface sidebar. mode is one of an embedded mode, an attached mode, and a 12. The method of claim 10, where the mode signal iden floating mode. tifies that a floating sidebar mode is to be created, where the 6. The browser extension of claim 5, where the embedded floating sidebar mode includes the user interface toolbar mode includes establishing the combination of the toolbar being connected to the browser window and the user interface and the sidebar as graphical user interface elements that are sidebar not being connected to the browser window, and part of the browser window, where the attached mode where content displayed in the browser window is to be includes establishing the combination of the toolbar and the controlled, at least in part, by a user interaction with the user sidebar as graphical user interface elements that can be con interface sidebar. nected to the browser window and managed separately from 13. The method of claim 10, where the mode signal iden the browser window, and where the floating mode includes tifies that an embedded sidebar and horizontal toolbar mode is US 2008/O 184159 A1 Jul. 31, 2008

to be created, where the embedded sidebar and horizontal 20. The method of claim 10, where initializing the user toolbar mode includes the user interface toolbar being incor interface toolbar includes establishing one or more of a loca porated into the browser window and the user interface side tion for the toolbar, a size for the toolbar, a set of functionality bar being incorporated into the browser window, where the for the toolbar, and a subset of native browser toolbar func user interface sidebar can be closed without affecting the user tionality to be included in the set of functionality for the interface toolbar, and where the user interface toolbar is to be toolbar. oriented horizontally with respect to the browser window. 21. The method of claim 10, where initializing the user interface sidebar includes establishing one or more of a loca 14. The method of claim 13, where the user interface side tion for the sidebar, a size for the sidebar, a set of functionality bar is to be oriented vertically at a side of the browser window. for the sidebar, and a subset of native browser sidebar func 15. The method of claim 10, where the mode signal iden tionality to be included in the set of functionality for the tifies that an embedded sidebar and vertical toolbar mode is to sidebar. be created, where the embedded sidebar and vertical toolbar 22. The method of claim 10, where the mode signal is mode includes the user interface toolbar being incorporated provided by the browser window in response to a user selec into the browser window and the user interface sidebar being tion of a mode, and. incorporated into the browser window, where the user inter where the user selection of a mode is made through one or face sidebar can be closed without affecting the user interface more of selection of a menu item from a menu associ toolbar, and where the user interface toolbar is to be oriented ated with the browser window, selection of a bookmark vertically along a side of the browser window. item from a graphical user interface element associated 16. The method of claim 15, where the user interface side with the browser window, selection of an item from a bar is to be oriented vertically along a side of the browser graphical user interface element associated with the window. browser window, and data entry into an options panel 17. The method of claim 10, where the mode signal iden provided by the browser window. tifies that a toolbar only mode is to be created, where the 23. The method of claim 10, where the mode signal is toolbar only mode includes the user interface toolbar being evaluated in the context of a hidden state signal to control incorporated into the browser window. whether the toolbar-sidebar combination is to be displayed. 18. The method of claim 10, where the mode signal iden 24. The method of claim 10, including selectively control tifies that a hidden mode is to be created, where the hidden ling a browser to instantiate a Subsequent browser window in mode includes the user interface toolbar being incorporated accordance with the mode signal. into the browser window, where a user interface toolbar ele 25. A system, comprising: ment is related to a user interface sidebar content, and where means for providing a toolbar-sidebar combination to a the user interface sidebar content is to be temporarily dis browser; and played when the user interface toolbar element is selected. means for selectively controlling the toolbar-sidebar com 19. The method of claim 10, where the mode signal iden bination to operate collectively according to a selected tifies that one or more of a dedicated window mode, a floating mode, where the selected mode controls the location, sidebar mode, an embedded sidebar and horizontal toolbar orientation, interoperability, and functionality of the mode, an embedded sidebar and vertical toolbar mode, a toolbar-sidebar combination. vertical toolbar mode, and a hidden mode are to be estab lished for the toolbar-sidebar combination. c c c c c