1. Technical Field
The present invention relates in general to computers and in particular to internet browser applications. Still more particularly, the present invention relates to an improved method and system for retaining linking pages through a browser session.
2. Description of the Related Art
A web browser is a software application that enables a computer user to view text, images, and other multi-media information located on one or more web pages. Computer users access web pages via the World Wide Web or a Local Area Network (LAN). A web browser typically includes a Graphical User Interface (GUI) that enables a user to view multiple web pages in different windows and/or to launch multiple web pages from links included on a single source page. For example, a user may view a web page from a list of links on an internet search results page then subsequently return to the search results page and click on a different link to view another web page.
Conventional methods of viewing multiple web pages during a single browser session typically involve a user manually launching each new web page into a new window. For example, a user must right click on a link in a parent page and select an option to open a link to a child page in a new window if the user wants to view the child page without navigating past the parent page. Launching multiple child web pages spawned from a parent web page also creates numerous windows and may cause clutter on a user's desktop and/or window tab bar.
Disclosed are a method, system, and computer program product for retaining linking pages through a browser session. A method of retaining linking pages through a browser session. A browser window presents a first web page that includes one or more links. A user marks the first web page in as a “thumbtacked” web page. A thumbtack utility iteratively determines whether or not a graphical cursor is in proximity to a link among one of the one or more links included in the first web page. When the cursor is in close proximity to one of the links, the thumbtack utility displays a hidden pane in a first portion of the browser window. The hidden pane includes data from a second web page corresponding to the link. The browser also displays the first web page concurrently in a second portion of the browser window. When the cursor is not in close proximity to one of the links, the thumbtack utility removes the hidden pane from view, and the browser displays the first web page in both the first and second portions of the browser window.
The above as well as additional objectives, features, and advantages of the present invention will become apparent in the following detailed written description.
The invention itself, as well as a preferred mode of use, further objects, and advantages thereof, will best be understood by reference to the following detailed description of an illustrative embodiment when read in conjunction with the accompanying drawings, wherein:
With reference now to
Computer 100 is able to communicate with server 150 via network 128 using network interface 130, which is coupled to system bus 106. Network 128 may be an external network such as the Internet, or an internal network such as a Local Area Network (LAN), an Ethernet, or a Virtual Private Network (VPN). In one embodiment, server 150 is configured similarly to computer 100.
Hard drive interface 132 is also coupled to system bus 106. Hard drive interface 132 interfaces with hard drive 134. In one embodiment, hard drive 134 populates system memory 136, which is also coupled to system bus 106. System memory 136 is defined as a lowest level of volatile memory in computer 100. This volatile memory may include additional higher levels of volatile memory (not shown), including, but not limited to, cache memory, registers, and buffers. Data that populates system memory 136 includes Operating System (OS) 138 and application programs 144.
OS 138 includes shell 140, for providing transparent user access to resources such as application programs 144. Generally, shell 140 (as it is called in UNIX®) is a program that provides an interpreter and an interface between the user and the operating system. Shell 140 provides a system prompt, interprets commands entered by keyboard 118, mouse 120, or other user input media, and sends the interpreted command(s) to the appropriate lower levels of the operating system (e.g., kernel 142) for processing. As depicted, OS 138 also includes graphical user interface (GUI) 143 and kernel 142, which includes lower levels of functionality for OS 138. Kernel 142 provides essential services required by other parts of OS 138 and application programs 144. The services provided by kernel 142 include memory management, process and task management, disk management, and I/O device management.
Application programs 144 include browser 146 and thumbtack utility 148. Browser 146 includes program modules and instructions enabling a World Wide Web (WWW) client (i.e., computer 100) to send and receive network messages to the Internet. Computer 100 may utilize HyperText Transfer Protocol (HTTP) messaging to enable communication with server 150. Thumbtack utility 148 performs the functions illustrated in
With reference now to
As shown in
In one embodiment, a user of browser 146 must first activate an option within browser 146, GUI 143 and/or thumbtack utility 148 to “thumbtack” a parent web page and thereby enable a hidden pane that includes a child web page to be automatically displayed in response to a mouse over of a child link on the parent web page. As utilized herein, “thumbtacking” refers to using an option in browser 146, GUI 143 and/or thumbtack utility 148 to mark a parent web page that includes one or more links to child web pages, thereby enabling thumbtack utility 148 to automatically return to the thumbtacked page when a user has finished viewing a child web page in a hidden pane (e.g., after a child link is no longer moused-over).
With reference now to
Turning now to
If, on the other hand, a user of browser 146 has selected the option to thumbtack the parent web page, thumbtack utility 148 determines whether cursor 225 is currently in close proximity to a child web page link on the thumbtacked parent web page, as shown in block 315. If cursor 225 is not currently positioned in close proximity to a child web page link (e.g., the user has not moused-over a link), the process returns to block 315 until a user mouses-over a link or navigates to a new parent web page.
If, on the other hand, thumbtack utility 146 determines that cursor 225 is positioned in proximity to (e.g., over) a child web page link on the thumbtacked parent web page, thumbtack utility 148 slides hidden pane 235 (
At block 330, thumbtack utility 148 determines whether cursor 225 has moved out of a predetermined proximity from the child web page link. If cursor 225 is still in close proximity to the web page link corresponding to the child web page, the process returns to block 325. If, however, thumbtack utility 148 determines that cursor 225 has been moved out of the predetermined proximity from the child web page link corresponding to the child web page displayed in hidden pane 235, thumbtack utility 148 automatically slides hidden pane 235 out of view, and browser 146 displays the parent web page in the full viewing area of browser 146, as shown in block 335. The process subsequently terminates at block 340 unless a user mouses-over another child web page link within the parent web page.
In one embodiment, a user may also click on a “moused over” link in order to cause hidden pane 235 to remain visible. For example, a user may first click on a “moused over” link in order cause hidden pane 235 to remain visible, and then the user may move cursor 225 away from the “moused over” link and subsequently click on one or more links on the child web page. In an alternate embodiment, if a user clicks on a “moused over” link, hidden pane 235 may temporarily remain visible for a pre-defined period of time before automatically sliding out of view. In another embodiment, a user may use mouse 120 to move cursor 225 to one side of display window 200 (e.g., the left side of display window 200) to manually trigger thumbtack utility 148 to slide hidden pane 235 out of view and/or enable browser 146 to redisplay the parent web page. In yet another embodiment, a user may press one or more pre-defined “hot keys” on keyboard 118 to cycle through one or more additional pages displayed in hidden pane 235 (e.g., a user may press a “next” hot key to flip to the contents of a second window tab in hidden pane 235).
The present invention thus provides a method of retaining linking pages through a browser session. A user marks a first web page in browser 146 (
It is understood that the use herein of specific names are for example only and not meant to imply any limitations on the invention. The invention may thus be implemented with different nomenclature/terminology and associated functionality utilized to describe the above devices/utility, etc., without limitation.
In the flow chart (
While an illustrative embodiment of the present invention has been described in the context of a fully functional computer system with installed software, those skilled in the art will appreciate that the software aspects of an illustrative embodiment of the present invention are capable of being distributed as a program product in a variety of forms, and that an illustrative embodiment of the present invention applies equally regardless of the particular type of media used to actually carry out the distribution. Examples of the types of media include recordable type media such as thumb drives, floppy disks, hard drives, CD ROMs, DVDs, and transmission type media such as digital and analog communication links.
While the invention has been particularly shown and described with reference to a preferred embodiment, it will be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the spirit and scope of the invention.