US20020089536A1 - Method and apparatus for an applet to display multiple windows - Google Patents

Method and apparatus for an applet to display multiple windows Download PDF

Info

Publication number
US20020089536A1
US20020089536A1 US09/934,945 US93494501A US2002089536A1 US 20020089536 A1 US20020089536 A1 US 20020089536A1 US 93494501 A US93494501 A US 93494501A US 2002089536 A1 US2002089536 A1 US 2002089536A1
Authority
US
United States
Prior art keywords
applet
message
receipt
computer
window
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
US09/934,945
Other versions
US7216300B2 (en
Inventor
Nga Dang
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Teradata US Inc
Original Assignee
NCR Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NCR Corp filed Critical NCR Corp
Priority to US09/934,945 priority Critical patent/US7216300B2/en
Publication of US20020089536A1 publication Critical patent/US20020089536A1/en
Application granted granted Critical
Publication of US7216300B2 publication Critical patent/US7216300B2/en
Assigned to TERADATA US, INC. reassignment TERADATA US, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: NCR CORPORATION
Adjusted expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/14Display of multiple viewports

Definitions

  • This invention relates in general to generating Web content, and in particular, to a method for implementing a multiple screen Java Applet for use with Web pages.
  • Java is a popular computer language used to create platform-independent applications.
  • Java applets are loaded into browsers from web pages to create text, graphics, or to perform some other useful function.
  • a developer can create applets or standalone applications. Applets are programs executed as part of a Web page and displayed within a Java-enabled browser.
  • Standalone applications are general-purpose Java applications that don't need a browser to run, but require a Java Virtual Machine (JVM) on the computer where the standalone application is to be executed.
  • JVM Java Virtual Machine
  • Java applets can only display a single page or window at a time. Generally, this is a restriction imposed by the browser or the browser's JVM. It can be seen then, that there is a need for a method for implementing applets that can display more than one page or window at a time.
  • the present invention discloses a method, apparatus, and article of manufacture for displaying multiple window applets on a computer.
  • the applet is written using the frame class and intercepts the methods by which an applet is started and started by the computer to allow more than one applet, or more than one applet window, to be open at any given time.
  • An object of the present invention is to provide a method for implementing a multiple screen Java applet.
  • a further object of the present invention is to provide multiple open applets for simultaneous use on a computer system.
  • FIG. 1 is a block diagram that illustrates an exemplary client-server hardware environment that could be used by the preferred embodiment of the present invention
  • FIGS. 2A and 2B illustrate web pages that are opened in succession by a web browser
  • FIG. 3 illustrates a multiple page applet on a computer monitor as embodied in the present invention.
  • FIG. 4 is a flowchart illustrating how the present invention controls various operations associated with applets.
  • HTML HyperText Mark-up Language
  • Java is used because of its platform independence.
  • a Java application can be executed by any client computer that has a JVM, regardless of that client computer's hardware or operating system type.
  • a number of high-level features of the Java computer language are used to support this platform independence.
  • One such high-level feature is the Abstract Window Toolkit (AWT).
  • the AWT is a Graphical User Interface (GUI that offers a variety of tools for creating buttons, list boxes, etc., drawing two dimensional entities, creating text fonts and colors, scaling entities, etc. Further, the AWT handles events between users and computer systems such as keyboard entries, mouse clicks, etc.
  • GUI Graphical User Interface
  • AWT provides a foundation for users to make applications and applets that are portable across platforms, which makes the applet or application have similar characteristics, also known as a “look and feel,” on whatever platform a particular user is operating.
  • Many web browsers are designed to display only one applet window at a time, and thus, only one applet window can be active at any one time. Once the browser is commanded to switch to another web page or web site, the applet window will disappear, and the applet will cease executing.
  • the present invention allows for multiple applet windows to be visible and active at any one time, and moreover, allows the applet to continue executing even when the browser's focus switches to another web page.
  • applets that display multiple windows, because it allows further flexibility for both web page designers and web page users.
  • an applet can monitor hardware and software resources from multiple physical locations, and can run continuously.
  • multiple windows can be open on a computer display for a user to monitor the status on one window, and respond to events that are occurring on another window.
  • the requirement of multiple open windows is in conflict with the limitations of current web browsers, and is the focus of the present invention.
  • the present invention implements an applet that intelligently responds to the open and close commands, e.g., the Init, Start, Stop, and Destroy methods implemented in the Java computer language, to allow for multiple windows to be open at any given time.
  • the open and close commands e.g., the Init, Start, Stop, and Destroy methods implemented in the Java computer language
  • FIG. 1 schematically illustrates an exemplary hardware environment that could be used with the preferred embodiment of the present invention, and more particularly, illustrates a typical distributed computer system using the Internet 100 to connect client systems 102 executing Web browsers 104 to server systems 106 executing Web daemons 108 .
  • a typical combination of resources may include clients 102 that are personal computers or workstations, and servers 106 that are personal computers, workstations, minicomputers, or mainframes. These systems are coupled to one another over a network 100 , which may include other networks such as intranets, extranets, LANs, WANs, etc., as well as the Internet.
  • Either or both of the Web browser 104 and Web daemon 108 may include a Java Virtual Machine (JVM) 110 that executes Java applets 112 , objects, scripts, etc., associated with various Web content.
  • JVM Java Virtual Machine
  • the web browser 104 , web daemons 108 , JVM 110 , and applet 112 each comprise data and/or instructions which, when read and executed by the server computer 106 or client computer 102 , cause the computer 102 and/or 106 to perform the steps for implementing and/or using the present invention.
  • the data and/or instructions are embodied in and/or readable from a device, carrier or media, such as memory, data storage devices, and/or remote devices coupled to the computer via a data communications device.
  • the present invention may be implemented as a method, apparatus, or article of manufacture using standard programming and/or engineering techniques to produce software, hardware, firmware, or any combination thereof.
  • article of manufacture as used herein is intended to encompass logic and/or data embodied in or accessible from any device, carrier, or media.
  • FIG. 1 the exemplary environment illustrated in FIG. 1 is not intended to limit the present invention. Indeed, other alternative hardware environments may be used without departing from the scope of the present invention.
  • the AWT offers two classes that can create popup windows that appear outside the constraints of the normal browser 104 area allocated to an applet 112 : Window and Frame.
  • the Window class is derived from the Container class so the Window class can contain other GUI components, also called widgets. Unlike applets 112 , the Window class is not restricted to a pre-specified area of the screen within the browser 104 . Window class objects can be resized, rendered not visible to the user until the “show( )” method is called, rendered invisible to the user when the “hide( )” method is invoked, and freed when the “dispose( )” method is invoked.
  • the Frame class extends the Window class by offering a title bar, a border for resizing objects, menus, and the ability to modify the cursor to various states when the frame or frame's components are in different states. For example, when a button is selected, or an operation is in progress, the cursor can change from an arrow to an hourglass, based on instructions contained within the Frame class. For most platforms, the title bar will tie control boxes, e.g., minimize, maximize, or close, to the computer system.
  • the Frame class has all of the elements to make an applet look like a real application, complete with menu and system controls.
  • the present invention uses the Frame class to allow multiple window applets 112 , offered within the Java AWT, to make the applet 112 “look and feel” like a Java application. Since Frame class objects can be displayed or closed at any time, be minimized or maximized, and displayed at multiple locations on the monitor, the use of the Frame class by the present invention allows multiple window Java applets 112 to be open simultaneously, and also allows multiple applets 112 to be open simultaneously.
  • FIGS. 2A and 2B illustrate web pages that are opened in succession by a web browser 104 .
  • web browser 104 executes an applet 112 to display the window 202 on monitor 200 of client 102 .
  • the applet 112 window 202 display i.e., what is shown on monitor 200 , is controlled within the web browser 104 .
  • the web browser 104 is commanded by the user to switch to another web site.
  • web browser 104 now executes another applet 112 , which displays another window 204 , and window 202 is replaced by the new window 204 on monitor 200 .
  • FIG. 3 illustrates a multiple window applet on a computer monitor as embodied in the present invention.
  • Frame 300 contains additional items, such as minimize window box 302 , restore window box 304 , and close window box 306 , which allow the user to size the frame 300 as desired. Further, frame 300 can contain menu 308 to allow the user to manipulate frame 300 and/or windows 202 and 204 as desired.
  • the use of the frame 300 allows multiple windows 202 and 204 to be open simultaneously. Frame 300 must account for additional items associated with windows 202 and 204 , namely when to open and close windows 202 and 204 .
  • FIG. 4 is a flowchart illustrating how the present invention controls various operations associated with applets 112 .
  • the Init method is called by the browser 104 to load and initialize applet 112 into the system. Init is always called before the first time the Start method is called.
  • the Start method is called by the browser 104 to inform the applet 112 that applet 202 should start execution. Start is called after the Init method and each time the applet 202 is revisited in a web page. A subclass of applet 112 should override this method if it has any operation that it wants to perform each time the web page containing the applet 112 is visited.
  • the Stop method is called by the browser 104 to inform applet 112 that applet 112 should stop execution. Stop is called when the web page containing applet 112 has been replaced by another applet 112 window or page, and also just before the applet 112 is to be destroyed. A subclass of applet 112 should override this method if it has any operation that it wants to perform each time the web page containing the applet 112 is no longer visible on monitor 200 .
  • the Destroy method is called by the browser 104 to inform the applet 112 that applet 112 is being reclaimed and that it should destroy any resources that it has allocated.
  • the stop method will always be called before the destroy method.
  • a subclass of applet 112 should override this method if it has any operation that it wants to perform before it is destroyed.
  • FIG. 4 is a flow chart that illustrates the logic performed by an applet 112 according to the preferred embodiment of the present invention.
  • Block 400 illustrates the applet 112 being initialized.
  • Block 402 illustrates applet 112 waiting for an event, e.g., the sending of a message indicating one of the methods to be performed by the applet 112 , or some other processing method to be performed.
  • applet 112 determines that applet 112 has already been opened in this computing session, then the init command received in block 404 is not a “first init,” and applet 112 , via frame 300 , knows not to reinitialize applet 112 . Instead, control passes from block 406 back to block 402 .
  • applet 112 determines that this is a first start, e.g., the first time that the applet 112 has been opened for this computing session, then control passes to block 414 , where the applet 112 is executed by client 102 or web server 106 .
  • applet 112 determines that applet 112 has already been started in this computing session, then the start command received in block 412 is not a “first start,” and control passes to block 416 , where the applet 112 merely reopens a previously opened window 202 or 204 of applet 112 . Regardless of whether control passed to block 414 or 416 , control returns to block 402 to wait for another event.
  • applet 112 determines that the event is not an exit command, control passes to block 430 for other processing. Regardless of whether control passed to block 428 or 430 , control returns to block 402 to wait for another event.
  • applet 112 windows 202 There are other logical methods to control the opening and closing of applet 112 windows 202 on the monitor 200 .
  • the user can program applet 202 to close all windows 202 and stop applet 112 execution when the web browser 104 switches to a new applet 112 e.g., a different web site, but to continue display of the main window 202 of applet 112 and allow execution of extra screens of applet 112 from whatever applet 112 is active.
  • the applet can close the active frames 300 of applet 112 when the web browser 104 switches the web site, and reopen when the applet 112 is revisited.
  • the applet 112 keeps track of whether it is open or not, and responds to init and start methods as described in FIG. 4.
  • Another way to program applets 112 is to allow the applet 112 to leave all frames open, and applet 112 will continue to run even when the user executes another applet 112 .
  • An additional command e.g., the exit command, is provided to stop (and, if desired destroy) active applet 112 only when the exit command is received.
  • any type of computer such as a mainframe, minicomputer, or personal computer, could be used to implement the present invention.
  • the present invention is not limited by specific document or programming languages, and could comprise languages other than XML and Java.
  • the present invention could also be used with HTML, SGML, NetRexx, VisualBasic Script, XML, Perl, C, C++, Cobol, etc.
  • the present invention discloses a method, apparatus, and article of manufacture for displaying multiple window applets on a computer.
  • the applet is written using the frame class and intercepts the methods by which an applet is started and started by the computer to allow more than one applet, or more than one applet window, to be open at any given time.

Abstract

A method, apparatus, and article of manufacture for displaying multiple window applets on a computer. The applet is written using the frame class and intercepts the methods by which an applet is started and started by the computer to allow more than one applet, or more than one applet window, to be open at any given time. By intelligently intercepting the start and stop methods, and tracking which applets are open, multiple applets can be open at any given time within the system.

Description

    BACKGROUND OF THE INVENTION
  • 1. Field of the Invention [0001]
  • This invention relates in general to generating Web content, and in particular, to a method for implementing a multiple screen Java Applet for use with Web pages. [0002]
  • 2. Description of Related Art [0003]
  • As the popularity and usefulness of the Internet grows, more developers are turning to Java. Java is a popular computer language used to create platform-independent applications. Generally, Java applets are loaded into browsers from web pages to create text, graphics, or to perform some other useful function. Within the Java programming language, a developer can create applets or standalone applications. Applets are programs executed as part of a Web page and displayed within a Java-enabled browser. Standalone applications, on the other hand, are general-purpose Java applications that don't need a browser to run, but require a Java Virtual Machine (JVM) on the computer where the standalone application is to be executed. [0004]
  • In the prior art, Java applets can only display a single page or window at a time. Generally, this is a restriction imposed by the browser or the browser's JVM. It can be seen then, that there is a need for a method for implementing applets that can display more than one page or window at a time. [0005]
  • SUMMARY OF THE INVENTION
  • To overcome the limitations in the prior art described above, and to overcome other limitations that will become apparent upon reading and understanding the present specification, the present invention discloses a method, apparatus, and article of manufacture for displaying multiple window applets on a computer. The applet is written using the frame class and intercepts the methods by which an applet is started and started by the computer to allow more than one applet, or more than one applet window, to be open at any given time. By intelligently intercepting the start and stop methods, and tracking which applets are open, multiple applets can be open at any given time within the system. [0006]
  • An object of the present invention is to provide a method for implementing a multiple screen Java applet. A further object of the present invention is to provide multiple open applets for simultaneous use on a computer system. [0007]
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • Referring now to the drawings in which like reference numbers represent corresponding parts throughout: [0008]
  • FIG. 1 is a block diagram that illustrates an exemplary client-server hardware environment that could be used by the preferred embodiment of the present invention; [0009]
  • FIGS. 2A and 2B illustrate web pages that are opened in succession by a web browser; [0010]
  • FIG. 3 illustrates a multiple page applet on a computer monitor as embodied in the present invention; and [0011]
  • FIG. 4 is a flowchart illustrating how the present invention controls various operations associated with applets. [0012]
  • DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
  • In the following description of the preferred embodiment, reference is made to the accompanying drawings which form a part hereof, and in which is shown by way of illustration a specific embodiment in which the invention may be practiced. It is to be understood that other embodiments may be utilized and structural and functional changes may be made without departing from the scope of the present invention. [0013]
  • Overview [0014]
  • When an Internet user retrieves web pages, they use a browser to transmit HyperText Transfer Protocol (HTTP) commands from their computer to a web daemon executed by a connected server computer. In turn, the web daemon responds with a HyperText Mark-up Language (HTML) (or other formatted) page that is transmitted to the browser for display to the user. [0015]
  • Within the Internet environment, the use of Java to create web pages and other web-based applications is widespread. Java is used because of its platform independence. Theoretically, a Java application can be executed by any client computer that has a JVM, regardless of that client computer's hardware or operating system type. [0016]
  • A number of high-level features of the Java computer language are used to support this platform independence. One such high-level feature is the Abstract Window Toolkit (AWT). The AWT is a Graphical User Interface (GUI that offers a variety of tools for creating buttons, list boxes, etc., drawing two dimensional entities, creating text fonts and colors, scaling entities, etc. Further, the AWT handles events between users and computer systems such as keyboard entries, mouse clicks, etc. AWT provides a foundation for users to make applications and applets that are portable across platforms, which makes the applet or application have similar characteristics, also known as a “look and feel,” on whatever platform a particular user is operating. [0017]
  • Applet Limitations [0018]
  • Many web browsers are designed to display only one applet window at a time, and thus, only one applet window can be active at any one time. Once the browser is commanded to switch to another web page or web site, the applet window will disappear, and the applet will cease executing. The present invention allows for multiple applet windows to be visible and active at any one time, and moreover, allows the applet to continue executing even when the browser's focus switches to another web page. [0019]
  • Applets in Specific Applications [0020]
  • It is desirable to have applets that display multiple windows, because it allows further flexibility for both web page designers and web page users. For example, an applet can monitor hardware and software resources from multiple physical locations, and can run continuously. At certain times, multiple windows can be open on a computer display for a user to monitor the status on one window, and respond to events that are occurring on another window. The requirement of multiple open windows is in conflict with the limitations of current web browsers, and is the focus of the present invention. [0021]
  • The limitations of the prior art are minimized by the present invention. The present invention implements an applet that intelligently responds to the open and close commands, e.g., the Init, Start, Stop, and Destroy methods implemented in the Java computer language, to allow for multiple windows to be open at any given time. [0022]
  • Hardware Environment [0023]
  • FIG. 1 schematically illustrates an exemplary hardware environment that could be used with the preferred embodiment of the present invention, and more particularly, illustrates a typical distributed computer system using the Internet [0024] 100 to connect client systems 102 executing Web browsers 104 to server systems 106 executing Web daemons 108. A typical combination of resources may include clients 102 that are personal computers or workstations, and servers 106 that are personal computers, workstations, minicomputers, or mainframes. These systems are coupled to one another over a network 100, which may include other networks such as intranets, extranets, LANs, WANs, etc., as well as the Internet.
  • Either or both of the [0025] Web browser 104 and Web daemon 108 may include a Java Virtual Machine (JVM) 110 that executes Java applets 112, objects, scripts, etc., associated with various Web content.
  • In general, the [0026] web browser 104, web daemons 108, JVM 110, and applet 112 each comprise data and/or instructions which, when read and executed by the server computer 106 or client computer 102, cause the computer 102 and/or 106 to perform the steps for implementing and/or using the present invention. Generally, the data and/or instructions are embodied in and/or readable from a device, carrier or media, such as memory, data storage devices, and/or remote devices coupled to the computer via a data communications device.
  • Thus, the present invention may be implemented as a method, apparatus, or article of manufacture using standard programming and/or engineering techniques to produce software, hardware, firmware, or any combination thereof. In addition, the term “article of manufacture” as used herein is intended to encompass logic and/or data embodied in or accessible from any device, carrier, or media. [0027]
  • However, the exemplary environment illustrated in FIG. 1 is not intended to limit the present invention. Indeed, other alternative hardware environments may be used without departing from the scope of the present invention. [0028]
  • Operation Of The Invention [0029]
  • Within the Java language, the AWT offers two classes that can create popup windows that appear outside the constraints of the [0030] normal browser 104 area allocated to an applet 112: Window and Frame.
  • The Window class is derived from the Container class so the Window class can contain other GUI components, also called widgets. Unlike [0031] applets 112, the Window class is not restricted to a pre-specified area of the screen within the browser 104. Window class objects can be resized, rendered not visible to the user until the “show( )” method is called, rendered invisible to the user when the “hide( )” method is invoked, and freed when the “dispose( )” method is invoked.
  • The Frame class extends the Window class by offering a title bar, a border for resizing objects, menus, and the ability to modify the cursor to various states when the frame or frame's components are in different states. For example, when a button is selected, or an operation is in progress, the cursor can change from an arrow to an hourglass, based on instructions contained within the Frame class. For most platforms, the title bar will tie control boxes, e.g., minimize, maximize, or close, to the computer system. The Frame class has all of the elements to make an applet look like a real application, complete with menu and system controls. [0032]
  • The present invention uses the Frame class to allow [0033] multiple window applets 112, offered within the Java AWT, to make the applet 112 “look and feel” like a Java application. Since Frame class objects can be displayed or closed at any time, be minimized or maximized, and displayed at multiple locations on the monitor, the use of the Frame class by the present invention allows multiple window Java applets 112 to be open simultaneously, and also allows multiple applets 112 to be open simultaneously.
  • Applet Availability [0034]
  • FIGS. 2A and 2B illustrate web pages that are opened in succession by a [0035] web browser 104. In FIG. 2A, web browser 104 executes an applet 112 to display the window 202 on monitor 200 of client 102. The applet 112 window 202 display, i.e., what is shown on monitor 200, is controlled within the web browser 104. In FIG. 2B, the web browser 104 is commanded by the user to switch to another web site. As shown in FIG. 2B, web browser 104 now executes another applet 112, which displays another window 204, and window 202 is replaced by the new window 204 on monitor 200.
  • FIG. 3 illustrates a multiple window applet on a computer monitor as embodied in the present invention. [0036]
  • By using the [0037] frame 300 to display windows 202 and 204, both windows 202 and 204 executed by the applet 112 can be open at the same time in the frame 300. Frame 300 contains additional items, such as minimize window box 302, restore window box 304, and close window box 306, which allow the user to size the frame 300 as desired. Further, frame 300 can contain menu 308 to allow the user to manipulate frame 300 and/or windows 202 and 204 as desired.
  • The use of the [0038] frame 300 allows multiple windows 202 and 204 to be open simultaneously. Frame 300 must account for additional items associated with windows 202 and 204, namely when to open and close windows 202 and 204.
  • FIG. 4 is a flowchart illustrating how the present invention controls various operations associated with [0039] applets 112.
  • To develop [0040] windows 202 and 204 pages that have pages displayed outside of the web browser's 104 control as in the present invention, the problem of when to stop the applet 112 and close windows 202 and 204 becomes a concern. There are four methods that the web browser 104 uses to interact with applets 112: Init, Start, Stop, and Destroy.
  • The Init method is called by the [0041] browser 104 to load and initialize applet 112 into the system. Init is always called before the first time the Start method is called.
  • The Start method is called by the [0042] browser 104 to inform the applet 112 that applet 202 should start execution. Start is called after the Init method and each time the applet 202 is revisited in a web page. A subclass of applet 112 should override this method if it has any operation that it wants to perform each time the web page containing the applet 112 is visited.
  • The Stop method is called by the [0043] browser 104 to inform applet 112 that applet 112 should stop execution. Stop is called when the web page containing applet 112 has been replaced by another applet 112 window or page, and also just before the applet 112 is to be destroyed. A subclass of applet 112 should override this method if it has any operation that it wants to perform each time the web page containing the applet 112 is no longer visible on monitor 200.
  • The Destroy method is called by the [0044] browser 104 to inform the applet 112 that applet 112 is being reclaimed and that it should destroy any resources that it has allocated. The stop method will always be called before the destroy method. A subclass of applet 112 should override this method if it has any operation that it wants to perform before it is destroyed.
  • FIG. 4 is a flow chart that illustrates the logic performed by an [0045] applet 112 according to the preferred embodiment of the present invention. Block 400 illustrates the applet 112 being initialized. Block 402 illustrates applet 112 waiting for an event, e.g., the sending of a message indicating one of the methods to be performed by the applet 112, or some other processing method to be performed.
  • Once an event is received, control passes to decision block [0046] 404, where applet 112 determines if the event is an init method request. If so, control passes to decision block 406, where the applet 112 determines if the init is a “first init,” e.g., the applet 112 has not already been loaded and started by client 102 or web server 106. This can be determined by checking to see if any windows or frames 300 associated with the applet 112 are opened, or by other methods. If applet 112 determines that this is a first init, e.g., the first time that the applet 142 has been opened for this computing session, then control passes to block 408, where the applet 202 is initialized
  • If [0047] applet 112 determines that applet 112 has already been opened in this computing session, then the init command received in block 404 is not a “first init,” and applet 112, via frame 300, knows not to reinitialize applet 112. Instead, control passes from block 406 back to block 402.
  • If the event received in [0048] block 402 was not an init request, control passes from block 404 to decision block 410, where applet 112 determines if the event was a start request. If so, control passes to decision block 412, where the applet 112 determines if the start is a “first start,” e.g., the applet 112 has not already been loaded and started by client 102 or web server 106. This can be determined by checking to see if any windows or frames 300 associated with the applet 112 are opened, or by other methods. If applet 112 determines that this is a first start, e.g., the first time that the applet 112 has been opened for this computing session, then control passes to block 414, where the applet 112 is executed by client 102 or web server 106.
  • If [0049] applet 112 determines that applet 112 has already been started in this computing session, then the start command received in block 412 is not a “first start,” and control passes to block 416, where the applet 112 merely reopens a previously opened window 202 or 204 of applet 112. Regardless of whether control passed to block 414 or 416, control returns to block 402 to wait for another event.
  • If the event received in [0050] block 402 was not an init or a start request, control passes from block 410 to decision block 418, where applet 112 determines if the event was a stop request. If so, control passes to block 420, where the applet closes the window 202 or 204 associated with applet 112. Control then passes back to block 402 to wait for another event.
  • If the event received in [0051] block 402 was not an init, start, or stop request, control passes from block 418 to decision block 424, where applet 112 determines if the event was a destroy request. If applet 112 determines that this is a destroy, e.g., that applet 112 is to be stopped and resources deallocated, then control passes to block 424, where the applet 112 deallocates the resources used by applet 112. Control then passes to block 402 to wait for another event.
  • If the event received in [0052] block 402 was not an init, start, stop, or destroy request, control passes from block 422 to decision block 426, where applet 112 determines if the event was an exit request. This tells the applet 112 that the user really wants to stop execution of applet 112, even if the user wants to continue to access the web. If the request is an exit request, control passes to block 428, where the applet execution is stopped. Although not required by the logic, the user has the option of closing and deallocating the applet 112 to free up resources to be used for other processing and displaying resources if desired.
  • If [0053] applet 112 determines that the event is not an exit command, control passes to block 430 for other processing. Regardless of whether control passed to block 428 or 430, control returns to block 402 to wait for another event.
  • There are other logical methods to control the opening and closing of [0054] applet 112 windows 202 on the monitor 200. Depending on application requirements, the user can program applet 202 to close all windows 202 and stop applet 112 execution when the web browser 104 switches to a new applet 112 e.g., a different web site, but to continue display of the main window 202 of applet 112 and allow execution of extra screens of applet 112 from whatever applet 112 is active.
  • Alternatively, the applet can close the [0055] active frames 300 of applet 112 when the web browser 104 switches the web site, and reopen when the applet 112 is revisited. The applet 112 keeps track of whether it is open or not, and responds to init and start methods as described in FIG. 4.
  • Another way to program [0056] applets 112, as described in FIG. 4, is to allow the applet 112 to leave all frames open, and applet 112 will continue to run even when the user executes another applet 112. An additional command, e.g., the exit command, is provided to stop (and, if desired destroy) active applet 112 only when the exit command is received.
  • Conclusion [0057]
  • This concludes the description of the preferred embodiment of the invention. The following describes some alternative embodiments for accomplishing the present invention. For example, any type of computer, such as a mainframe, minicomputer, or personal computer, could be used to implement the present invention. In addition, the present invention is not limited by specific document or programming languages, and could comprise languages other than XML and Java. For example, the present invention could also be used with HTML, SGML, NetRexx, VisualBasic Script, XML, Perl, C, C++, Cobol, etc. [0058]
  • In summary, the present invention discloses a method, apparatus, and article of manufacture for displaying multiple window applets on a computer. The applet is written using the frame class and intercepts the methods by which an applet is started and started by the computer to allow more than one applet, or more than one applet window, to be open at any given time. By intelligently intercepting the start and stop methods, and tracking which applets are open, multiple applets can be open at any given time within the system. [0059]
  • The foregoing description of the preferred embodiment of the invention has been presented for the purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed. Many modifications and variations are possible in light of the above teaching. It is intended that the scope of the invention be limited not by this detailed description, but rather by the claims appended hereto. [0060]

Claims (11)

What is claimed is:
1. A computer-implemented multiple window applet, comprising an applet, executed by the computer, for displaying a plurality of windows on a display coupled to the computer, the applet receiving Init, Start, Stop, Destroy, and Exit messages, the applet initializing upon a first receipt of the Init message, the applet beginning execution upon a first receipt of the Start message, the applet opening at least one previously-closed window upon a second and subsequent receipt of the Start message, the applet closing at least one previously-opened window upon receipt of the Stop messages, the applet deallocating at least one resource upon receipt of the Destroy message, and the applet terminating execution upon receipt of an Exit message.
2. The applet of claim 1, wherein the applet is a Java applet.
3. The applet of claim 1, wherein a browser sends the messages to the applet.
4. The applet of claim 3, wherein the browser sends the Init message to the applet when the applet is loaded for execution.
5. The applet of claim 3, wherein the browser sends the Init message to the applet when a focus of the browser is directed to a page associated with the applet.
6. The applet of claim 3, wherein the browser sends the Start message to the applet after the Init message is sent to the applet.
7. The applet of claim 3, wherein the browser sends the Stop message to the applet when a focus of the browser is directed to a page other than the page associated with the applet.
8. The applet of claim 3, wherein the browser sends the Destroy message to the applet after the Stop message is sent to the applet.
9. The applet of claim 1, wherein windows are created by the applet using an Abstract Window Toolkit (AWT).
10. A computer-implemented method for executing an applet that displays a plurality of windows on a display of a computer, comprising the steps of:
receiving Init, Start, Stop, Destroy, and Exit messages;
initializing upon a first receipt of the Init message;
beginning execution upon a first receipt of the Start message;
opening at least one previously-closed window upon a second and subsequent receipt of the Start message;
closing at least one previously-opened window upon receipt of the Stop messages;
deallocating at least one resource upon receipt of the Destroy message; and
terminating execution upon receipt of an Exit message.
11. An article of manufacture comprising a computer program carrier readable by a computer and embodying one or more instructions executable by the computer to perform method steps of executing an applet that displays a plurality of windows on a display of a computer, comprising the steps of:
receiving Init, Start, Stop, Destroy, and Exit messages;
initializing upon a first receipt of the Init message;
beginning execution upon a first receipt of the Start message;
opening at least one previously-closed window upon a second and subsequent receipt of the Start message;
closing at least one previously-opened window upon receipt of the Stop messages;
deallocating at least one resource upon receipt of the Destroy message; and
terminating execution upon receipt of an Exit message.
US09/934,945 1998-12-30 2001-08-22 Method and apparatus for an applet to display multiple windows Expired - Lifetime US7216300B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US09/934,945 US7216300B2 (en) 1998-12-30 2001-08-22 Method and apparatus for an applet to display multiple windows

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US22310498A 1998-12-30 1998-12-30
US09/934,945 US7216300B2 (en) 1998-12-30 2001-08-22 Method and apparatus for an applet to display multiple windows

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US22310498A Division 1998-12-30 1998-12-30

Publications (2)

Publication Number Publication Date
US20020089536A1 true US20020089536A1 (en) 2002-07-11
US7216300B2 US7216300B2 (en) 2007-05-08

Family

ID=22835060

Family Applications (1)

Application Number Title Priority Date Filing Date
US09/934,945 Expired - Lifetime US7216300B2 (en) 1998-12-30 2001-08-22 Method and apparatus for an applet to display multiple windows

Country Status (1)

Country Link
US (1) US7216300B2 (en)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004053719A1 (en) * 2002-12-06 2004-06-24 Samsung Electronics Co., Ltd. Managing metadata and system thereof
US7120914B1 (en) * 2000-05-05 2006-10-10 Microsoft Corporation Method and system for navigating between program modules
US20080134018A1 (en) * 1999-04-26 2008-06-05 Mainstream Scientific, Llc Component for Coordinating the Accessing and Rendering of an Application Media Package
US20080148188A1 (en) * 2006-12-15 2008-06-19 Iac Search & Media, Inc. Persistent preview window
US7523401B1 (en) * 2003-09-03 2009-04-21 Theoris Software, Llc System and method for providing a browser-based user interface
US20090235149A1 (en) * 2008-03-17 2009-09-17 Robert Frohwein Method and Apparatus to Operate Different Widgets From a Single Widget Controller
US20090293007A1 (en) * 2008-05-23 2009-11-26 Palm, Inc. Navigating among activities in a computing device
US20100023874A1 (en) * 2008-07-23 2010-01-28 Frohwein Robert J Method and Apparatus to Operate Different Widgets From a Single Widget Controller
US20100095240A1 (en) * 2008-05-23 2010-04-15 Palm, Inc. Card Metaphor For Activities In A Computing Device
US20100146505A1 (en) * 2006-01-19 2010-06-10 Almonte Nicholas A Multi-monitor, multi-JVM Java GUI infrastructure with layout via XML
US20110016417A1 (en) * 2006-04-20 2011-01-20 Palm, Inc. Selective Hibernation Of Activities In An Electronic Device
US20110283225A1 (en) * 2002-03-14 2011-11-17 Imran Chaudhri Method and apparatus for controlling a display of a data processing system
US20120066630A1 (en) * 2010-09-15 2012-03-15 Lg Electronics Inc. Mobile terminal and controlling method thereof
US20130086138A1 (en) * 2011-10-04 2013-04-04 International Business Machines Corporation Implementing a java method
US20140026090A1 (en) * 2004-06-25 2014-01-23 Apple Inc. Visual Characteristics of User Interface Elements In a Unified Interest Layer
US20140181725A1 (en) * 2012-12-20 2014-06-26 Pantech Co., Ltd. Apparatus and method for executing application
US9350790B2 (en) 2010-02-04 2016-05-24 International Business Machines Corporation Utilization of target browsers
CN105740055A (en) * 2014-12-09 2016-07-06 陈灿林 Using third party webpage browser in full screen program
US10671275B2 (en) 2014-09-04 2020-06-02 Apple Inc. User interfaces for improving single-handed operation of devices

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1835507A (en) * 2005-03-17 2006-09-20 国际商业机器公司 Method for the server side processing of user interactions with a web-browser
US20080077936A1 (en) * 2006-09-22 2008-03-27 Amit Goel Method and apparatus for automatically launching an application from a browser
US8947452B1 (en) * 2006-12-07 2015-02-03 Disney Enterprises, Inc. Mechanism for displaying visual clues to stacking order during a drag and drop operation
US10176272B2 (en) * 2007-09-28 2019-01-08 Excalibur Ip, Llc System and method of automatically sizing and adapting a widget to available space
US8176411B2 (en) * 2008-07-16 2012-05-08 International Business Machines Corporation Integrating an applet into a multi-page or multi-tasking web application to enable applet state to be automatically saved and restored
US20100185723A1 (en) * 2009-01-22 2010-07-22 Pepijn Santcroos Method for a Server Apparatus for Providing a Display Specification to a Client Apparatus, Computer Program Therefor, and Data Carrier Therewith
US9953100B2 (en) * 2010-01-27 2018-04-24 Auraplayer Ltd. Automated runtime command replacement in a client-server session using recorded user events
US8756494B2 (en) * 2011-02-15 2014-06-17 Adobe Systems Incorporated Methods and systems for designing documents with inline scrollable elements
US9477579B2 (en) * 2013-08-09 2016-10-25 Freescale Semiconductor, Inc. Embedded software debug system with partial hardware acceleration

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5742768A (en) * 1996-07-16 1998-04-21 Silicon Graphics, Inc. System and method for providing and displaying a web page having an embedded menu
US5861883A (en) * 1997-05-13 1999-01-19 International Business Machines Corp. Method and system for portably enabling awareness, touring, and conferencing over the world-wide web using proxies and shared-state servers
US6035332A (en) * 1997-10-06 2000-03-07 Ncr Corporation Method for monitoring user interactions with web pages from web server using data and command lists for maintaining information visited and issued by participants
US6175877B1 (en) * 1997-12-04 2001-01-16 International Business Machines Corporation Inter-applet communication within a web browser
US6177936B1 (en) * 1998-08-20 2001-01-23 International Business Machines Corporation Browser hierarchical contextual information for web pages
US6401134B1 (en) * 1997-07-25 2002-06-04 Sun Microsystems, Inc. Detachable java applets
US6412021B1 (en) * 1998-02-26 2002-06-25 Sun Microsystems, Inc. Method and apparatus for performing user notification
US6489954B1 (en) * 1998-10-13 2002-12-03 Prophet Financial Systems, Inc. System and method for permitting a software routine having restricted local access to utilize remote resources to generate locally usable data structure
US6785891B1 (en) * 1999-10-12 2004-08-31 International Business Machines Corporation Data sharing between application environments

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5469540A (en) 1993-01-27 1995-11-21 Apple Computer, Inc. Method and apparatus for generating and displaying multiple simultaneously-active windows
US5499334A (en) 1993-03-01 1996-03-12 Microsoft Corporation Method and system for displaying window configuration of inactive programs
US5465362A (en) 1993-12-30 1995-11-07 Taligent, Inc. Object-oriented view-system for displaying information in a windowing environment
US5572643A (en) 1995-10-19 1996-11-05 Judson; David H. Web browser with dynamic display of information objects during linking
US5706502A (en) 1996-03-25 1998-01-06 Sun Microsystems, Inc. Internet-enabled portfolio manager system and method
US5754830A (en) 1996-04-01 1998-05-19 Openconnect Systems, Incorporated Server and web browser terminal emulator for persistent connection to a legacy host system and method of operation
US6052711A (en) 1996-07-01 2000-04-18 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server session web access in an interprise computing framework system.
US5802530A (en) 1996-07-01 1998-09-01 Sun Microsystems, Inc. Web document based graphical user interface
US6018343A (en) 1996-09-27 2000-01-25 Timecruiser Computing Corp. Web calendar architecture and uses thereof
US5922044A (en) 1996-12-13 1999-07-13 3Com Corporation System and method for providing information to applets in a virtual machine
US6006241A (en) 1997-03-14 1999-12-21 Microsoft Corporation Production of a video stream with synchronized annotations over a computer network
US5790855A (en) 1997-01-31 1998-08-04 Sun Microsystems, Inc. System, method and article of manufacture for type checking appropriateness of port connection and variable type matching in connection with multiport object-oriented components
US6044218A (en) 1997-01-31 2000-03-28 Sun Microsystems, Inc. System, method and article of manufacture for creating a live application or applet development environment
US5935249A (en) 1997-02-26 1999-08-10 Sun Microsystems, Inc. Mechanism for embedding network based control systems in a local network interface device
US5943496A (en) 1997-05-17 1999-08-24 Intertop Corporation Methods for developing and instantiating object classes using a java virtual machine extension
US6014702A (en) 1997-06-04 2000-01-11 International Business Machines Corporation Host information access via distributed programmed objects
US6073163A (en) 1997-06-10 2000-06-06 Oracle Corporation Method and apparatus for enabling web-based execution of an application
US6012068A (en) 1997-06-30 2000-01-04 International Business Machines Corporation Media manager for access to multiple media types
US5964836A (en) 1997-09-11 1999-10-12 International Business Machines Corporation Apparatus, methods and computer program products for managing web-page-embedded sessions with a host-based application
US6067558A (en) 1997-09-18 2000-05-23 Wendt; James Gordon Method and apparatus for providing increased content from a resource constrained device
US6049664A (en) 1997-11-25 2000-04-11 Alphablox Corporation Tier-neutral development mechanism for hypertext based applications
US6157933A (en) 1997-11-26 2000-12-05 International Business Machines Corporation Method and apparatus for loading multiple animated images on a web-page with limited network throughput
US5951636A (en) 1997-12-04 1999-09-14 International Business Machines Corp. Accessing a post office system from a client computer using applets
US6104334A (en) 1997-12-31 2000-08-15 Eremote, Inc. Portable internet-enabled controller and information browser for consumer devices
US6006281A (en) 1998-01-08 1999-12-21 Xerox Corporation Network printing system with data merge feature
US6108687A (en) 1998-03-02 2000-08-22 Hewlett Packard Company System and method for providing a synchronized display to a plurality of computers over a global computer network
US6070177A (en) 1998-03-06 2000-05-30 Vita Systems, Inc. Database forms with attached audit history
US6125363A (en) 1998-03-30 2000-09-26 Buzzeo; Eugene Distributed, multi-user, multi-threaded application development method
US6011916A (en) 1998-05-12 2000-01-04 International Business Machines Corp. Java I/O toolkit for applications and applets

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5742768A (en) * 1996-07-16 1998-04-21 Silicon Graphics, Inc. System and method for providing and displaying a web page having an embedded menu
US5861883A (en) * 1997-05-13 1999-01-19 International Business Machines Corp. Method and system for portably enabling awareness, touring, and conferencing over the world-wide web using proxies and shared-state servers
US6401134B1 (en) * 1997-07-25 2002-06-04 Sun Microsystems, Inc. Detachable java applets
US6035332A (en) * 1997-10-06 2000-03-07 Ncr Corporation Method for monitoring user interactions with web pages from web server using data and command lists for maintaining information visited and issued by participants
US6175877B1 (en) * 1997-12-04 2001-01-16 International Business Machines Corporation Inter-applet communication within a web browser
US6412021B1 (en) * 1998-02-26 2002-06-25 Sun Microsystems, Inc. Method and apparatus for performing user notification
US6177936B1 (en) * 1998-08-20 2001-01-23 International Business Machines Corporation Browser hierarchical contextual information for web pages
US6489954B1 (en) * 1998-10-13 2002-12-03 Prophet Financial Systems, Inc. System and method for permitting a software routine having restricted local access to utilize remote resources to generate locally usable data structure
US6785891B1 (en) * 1999-10-12 2004-08-31 International Business Machines Corporation Data sharing between application environments

Cited By (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7660868B1 (en) 1999-04-26 2010-02-09 John Albert Kembel Apparatus and method for interacting with internet content via one or more applications that do not include native web browsing navigation control features
US20080163202A1 (en) * 1999-04-26 2008-07-03 Mainstream Scientific, Llc Server Including Components for Accessing and Displaying Internet Content and for Providing Same to a Client
US8346887B1 (en) 1999-04-26 2013-01-01 Mainstream Scientific, Llc Tracking and tracing user activity with application media packages
US8510407B1 (en) 1999-04-26 2013-08-13 Mainstream Scientific, Llc Displaying time-varying internet based data using application media packages
US9438467B1 (en) 1999-04-26 2016-09-06 John Albert Kembel Methods of obtaining application media packages
US20080229217A1 (en) * 1999-04-26 2008-09-18 Mainstream Scientific, Llc Component for Accessing and Displaying Internet Content
US8521833B1 (en) 1999-04-26 2013-08-27 Mainstream Scientific, Llc System and method for accessing and displaying internet content via an integrated application media package
US8510406B2 (en) 1999-04-26 2013-08-13 Mainstream Scientific, Llc Component for accessing and displaying internet content
US9723108B2 (en) 1999-04-26 2017-08-01 John Albert Kembel System and methods for creating and authorizing internet content using application media packages
US9124665B2 (en) * 1999-04-26 2015-09-01 Mainstream Scientific, Llc Server including components for accessing and displaying internet content and for providing same to a client
US20080134018A1 (en) * 1999-04-26 2008-06-05 Mainstream Scientific, Llc Component for Coordinating the Accessing and Rendering of an Application Media Package
US9369545B2 (en) 1999-04-26 2016-06-14 Mainstream Scientific, Llc Accessing and displaying network content
US8621034B1 (en) 1999-04-26 2013-12-31 John Albert Kembel Indexing, sorting, and categorizing application media packages
US7756967B1 (en) * 1999-04-26 2010-07-13 Mainstream Scientific, Llc Apparatus and method of hosting internet content
US7792947B1 (en) * 1999-04-26 2010-09-07 Mainstream Scientific, Llc Apparatus and method for dynamically coordinating the delivery of computer readable media
US20100257442A1 (en) * 1999-04-26 2010-10-07 Mainstream Scientific, Llc Apparatus and method for dynamically coordinating the delivery of computer readable media
US9426255B2 (en) 1999-04-26 2016-08-23 John Albert Kembel Apparatus and method for dynamically coordinating the delivery of computer readable media
US8020083B1 (en) * 1999-04-26 2011-09-13 Mainstream Scientific, Llc System and methods for creating and authoring internet content using application media packages
US7120914B1 (en) * 2000-05-05 2006-10-10 Microsoft Corporation Method and system for navigating between program modules
US20110283225A1 (en) * 2002-03-14 2011-11-17 Imran Chaudhri Method and apparatus for controlling a display of a data processing system
WO2004053719A1 (en) * 2002-12-06 2004-06-24 Samsung Electronics Co., Ltd. Managing metadata and system thereof
US7523401B1 (en) * 2003-09-03 2009-04-21 Theoris Software, Llc System and method for providing a browser-based user interface
US9753627B2 (en) * 2004-06-25 2017-09-05 Apple Inc. Visual characteristics of user interface elements in a unified interest layer
US20140026090A1 (en) * 2004-06-25 2014-01-23 Apple Inc. Visual Characteristics of User Interface Elements In a Unified Interest Layer
US10489040B2 (en) 2004-06-25 2019-11-26 Apple Inc. Visual characteristics of user interface elements in a unified interest layer
US8863015B2 (en) * 2006-01-19 2014-10-14 Raytheon Company Multi-monitor, multi-JVM java GUI infrastructure with layout via XML
US20100146505A1 (en) * 2006-01-19 2010-06-10 Almonte Nicholas A Multi-monitor, multi-JVM Java GUI infrastructure with layout via XML
US9489107B2 (en) 2006-04-20 2016-11-08 Qualcomm Incorporated Navigating among activities in a computing device
US20110016417A1 (en) * 2006-04-20 2011-01-20 Palm, Inc. Selective Hibernation Of Activities In An Electronic Device
US9395888B2 (en) 2006-04-20 2016-07-19 Qualcomm Incorporated Card metaphor for a grid mode display of activities in a computing device
US9274807B2 (en) 2006-04-20 2016-03-01 Qualcomm Incorporated Selective hibernation of activities in an electronic device
US20080148188A1 (en) * 2006-12-15 2008-06-19 Iac Search & Media, Inc. Persistent preview window
US20090235149A1 (en) * 2008-03-17 2009-09-17 Robert Frohwein Method and Apparatus to Operate Different Widgets From a Single Widget Controller
US20090293007A1 (en) * 2008-05-23 2009-11-26 Palm, Inc. Navigating among activities in a computing device
US8296684B2 (en) * 2008-05-23 2012-10-23 Hewlett-Packard Development Company, L.P. Navigating among activities in a computing device
US11650715B2 (en) 2008-05-23 2023-05-16 Qualcomm Incorporated Navigating among activities in a computing device
US10678403B2 (en) 2008-05-23 2020-06-09 Qualcomm Incorporated Navigating among activities in a computing device
US8683362B2 (en) 2008-05-23 2014-03-25 Qualcomm Incorporated Card metaphor for activities in a computing device
US11379098B2 (en) 2008-05-23 2022-07-05 Qualcomm Incorporated Application management in a computing device
US11880551B2 (en) 2008-05-23 2024-01-23 Qualcomm Incorporated Navigating among activities in a computing device
US10891027B2 (en) 2008-05-23 2021-01-12 Qualcomm Incorporated Navigating among activities in a computing device
US20100095240A1 (en) * 2008-05-23 2010-04-15 Palm, Inc. Card Metaphor For Activities In A Computing Device
US11262889B2 (en) 2008-05-23 2022-03-01 Qualcomm Incorporated Navigating among activities in a computing device
US20100023874A1 (en) * 2008-07-23 2010-01-28 Frohwein Robert J Method and Apparatus to Operate Different Widgets From a Single Widget Controller
US9720554B2 (en) * 2008-07-23 2017-08-01 Robert J. Frohwein Method and apparatus to operate different widgets from a single widget controller
US11500532B2 (en) 2009-07-20 2022-11-15 Qualcomm Incorporated Selective hibernation of activities in an electronic device
US10268358B2 (en) 2009-07-20 2019-04-23 Qualcomm Incorporated Selective hibernation of activities in an electronic device
US10901602B2 (en) 2009-07-20 2021-01-26 Qualcomm Incorporated Selective hibernation of activities in an electronic device
US10877657B2 (en) 2009-07-20 2020-12-29 Qualcomm Incorporated Selective hibernation of activities in an electronic device
US9473558B2 (en) 2010-02-04 2016-10-18 International Business Machines Corporation Utilization of target browsers
US9350790B2 (en) 2010-02-04 2016-05-24 International Business Machines Corporation Utilization of target browsers
US20120066630A1 (en) * 2010-09-15 2012-03-15 Lg Electronics Inc. Mobile terminal and controlling method thereof
US9021393B2 (en) * 2010-09-15 2015-04-28 Lg Electronics Inc. Mobile terminal for bookmarking icons and a method of bookmarking icons of a mobile terminal
US9678814B2 (en) * 2011-10-04 2017-06-13 International Business Machines Corporation Implementing a java method
US20130086138A1 (en) * 2011-10-04 2013-04-04 International Business Machines Corporation Implementing a java method
US20140181725A1 (en) * 2012-12-20 2014-06-26 Pantech Co., Ltd. Apparatus and method for executing application
US10671275B2 (en) 2014-09-04 2020-06-02 Apple Inc. User interfaces for improving single-handed operation of devices
CN105740055A (en) * 2014-12-09 2016-07-06 陈灿林 Using third party webpage browser in full screen program

Also Published As

Publication number Publication date
US7216300B2 (en) 2007-05-08

Similar Documents

Publication Publication Date Title
US7216300B2 (en) Method and apparatus for an applet to display multiple windows
US6765592B1 (en) Undockable sub-windows
JP3321079B2 (en) Information operating device for selectively docking and floating menu / tool bar, and program recording medium
US6342907B1 (en) Specification language for defining user interface panels that are platform-independent
US5956736A (en) Object-oriented editor for creating world wide web documents
US7600046B2 (en) Event notification
EP0534409B1 (en) A method and system for controlling the execution of an application program
US7325204B2 (en) Slideout windows
US6938205B1 (en) Object oriented editor for creating world wide web documents
US7395500B2 (en) Space-optimizing content display
US6836878B1 (en) Visual programming from a tree structure
US20020175955A1 (en) Graphical user interface having contextual menus
US20050050301A1 (en) Extensible user interface
US20060010422A1 (en) Common user interface development toolkit for a system administration program
US20020130900A1 (en) System for generating an interface for software applications in a client-server environment
US6038596A (en) Method and system in a network for decreasing performance degradation triggered by multiple user redundant input events
WO1998036352A1 (en) Method for preserving the state of a control during the lifetime of its container
WO2006124215A2 (en) System and method for generating and updating user interfaces of web-based applications
WO1998037503A1 (en) Method and apparatus for displaying help window simultaneously with web page pertaining thereto
US20060053411A1 (en) Systems, methods, and computer readable media for consistently rendering user interface components
EP1006440B1 (en) Display widget interaction in embedded systems using child graphics contexts
Baker et al. Algorithm animation over the world wide web
US6271858B1 (en) Incremental update for dynamic/animated textures on three-dimensional models
EP1011042B1 (en) Applet and application display in embedded systems using bufferless child graphics contexts
Gansner et al. A foundation for user interface construction

Legal Events

Date Code Title Description
STCF Information on status: patent grant

Free format text: PATENTED CASE

AS Assignment

Owner name: TERADATA US, INC., OHIO

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:NCR CORPORATION;REEL/FRAME:020540/0786

Effective date: 20070924

FPAY Fee payment

Year of fee payment: 4

FPAY Fee payment

Year of fee payment: 8

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 12