WO1999026127A1 - System and method for displaying multiple sources of data in near real-time - Google Patents
System and method for displaying multiple sources of data in near real-time Download PDFInfo
- Publication number
- WO1999026127A1 WO1999026127A1 PCT/US1998/024280 US9824280W WO9926127A1 WO 1999026127 A1 WO1999026127 A1 WO 1999026127A1 US 9824280 W US9824280 W US 9824280W WO 9926127 A1 WO9926127 A1 WO 9926127A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- display
- user
- sources
- information
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 31
- 238000000638 solvent extraction Methods 0.000 claims 3
- 235000006719 Cassia obtusifolia Nutrition 0.000 description 17
- 235000014552 Cassia tora Nutrition 0.000 description 17
- 244000201986 Cassia tora Species 0.000 description 17
- 230000008569 process Effects 0.000 description 9
- 230000008901 benefit Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000001914 filtration Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 235000010627 Phaseolus vulgaris Nutrition 0.000 description 3
- 244000046052 Phaseolus vulgaris Species 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000007667 floating Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 241000590428 Panacea Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 239000003292 glue Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000004513 sizing Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000005641 tunneling Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/048—Indexing scheme relating to G06F3/048
- G06F2203/04803—Split screen, i.e. subdividing the display area or the window area into separate subareas
Definitions
- This invention is in the field of computer system displays.
- the present invention relates to a system and method for displaying, in near real-time, data published from various computer systems and networks, such as the Internet.
- Another application is also said to use "push" technology, in which data is broadcast to home computers via the Internet, cable TV systems or even over-the-air signals.
- information is grabbed by the computer at predictable or non-peak times, then stored on the computer's hard disk for later browsing, thus getting around slow modem connections.
- this technology does not actually speed up the modem connection, the overall browsing experience appears to be faster, because the information can be fetched more quickly from the computer's hard disk.
- a third application also allows a computer client to receive information from various sources, such as Dow Jones, Reuters, Bridge, financial exchanges, the Internet, or an intranet, through either a market data platform connector, a direct data feed connector or a web connector.
- sources such as Dow Jones, Reuters, Bridge, financial exchanges, the Internet, or an intranet
- the data Prior to reaching the client computer, the data may pass through and be processed by application servers that provide financial analytics, messaging, financial modeling and graphing, which add value to the data.
- the client computer displays the financial data in a page of multiple windows, where each window may be resized and morphed and each page may be user-composed.
- the display thereof is also inefficient and ineffective.
- Commercial displays are inefficient because of the presence of unnecessary icons and toolbars, which waste critical screen "real estate" , and because the multiple windows, if available, overlap or underlap each other.
- Those displays are also less effective than could be desired, because they do not provide the functionality required by the user to process the data simply and quickly. For example, none of the current displays allow a user to create easily and quickly a subwindow of desired dimension, and then run an application in that subwindow using data dragged and dropped into the window from a selected channel.
- one objective of the present invention is to address some of the above-described problems, by providing an efficient and effective display to permit a user to see data from a variety of sources quickly and easily, and use that data, if desired, in the user's or a third party's application.
- Another objective is to provide a display which permits the user to create efficient subwindows, or "panes", quickly and easily, in which the user may drag and drop data from a selected data channel or run a desired application therein.
- a display system receives data from one or more data sources, via a server, and displays the data from one or more of the sources, selected by a user.
- the user can have multiple sources active at once, and can preferably display data from at least two of the active sources simultaneously. At least one portion of the display can be subdivided by the user at will, and at being displayed can be dragged and dropped into any of the resulting "panes".
- various applications can if desired be run simultaneously in respective panes, regardless of whether those applications are part of a predefined suite of applications, or not.
- FIGS 1-4 depict four arrangements in which the present invention can be utilized.
- Figure 5 is a view of an example of a display provided by the present invention.
- Figures 6A and 6B are diagrams illustrating certain aspects of the process of using the display system of the present invention.
- Figure 7 is a diagram illustrating certain aspects of the handling of data obtained by the display system of the present invention.
- Figure 8 illustrates the model/view paradigm used in the preferred version of the present invention.
- the present invention represents a shift towards just-in-time information delivery.
- those inventions provide (among other things) a ubiquitous, platform-independent interface to real-time information, such as financial data and news.
- This accomplishes efficient, just-in-time information delivery from the information source to the client computer via a publish/subscribe architecture and a true push server, thus offering unparalleled access to intranet, extranet, and Internet information.
- the various information sources In the publish/subscribe architecture developed by the assignee of the present invention, the various information sources, most likely under a contractual agreement with the push server, constantly publish and broadcast data to the push server, using any desired communication method.
- the client computer subscribes to desired types of information available from the push server.
- the subscribed information and only the subscribed information, is sent from the server to the client.
- published information is pushed from the source to the server, and a subset thereof is passed on from the server to the client. Since data is constantly being pushed to the server and the client, timed pulls are not required of them. Thus, the data is always fresh, and the user does not have to wait a long time for an information download.
- Using a push server also permits the automatic update of the client application software. For example, when existing netchannels (described below) need to be updated, or new netchannels become available and need to be added, the push server can push the new binary code required to accomplish these tasks directly to the client computer.
- the push server also supports server-side storage and retrieval of user preferences. This means that a user's profile can be referred to the server, and the data for that user customized accordingly, regardless of what computer the user employs to connect to the network. Users can log in while travelling or at home and utilize an identical desktop of applications and netchannels.
- the push server also can be used to manage server-based alerts.
- a user-specified alert (such as a stock price warning) may also be stored on the push server, which in turn will cause the dispatching of a page or an e-mail message if the conditions of the user-specified alert are met.
- the push server may also specify the schema of its various data sources in real-time via XML. This enables the use of a generic client application software component to receive arbitrary data from the push server.
- an industry-specific extranet as shown in Figure 1, is established to provide a common information and communication network to constituent organizations.
- Data sources such as market data, historical data and news headlines directly feed into a push server located centrally in the extranet.
- Individual clients such as the one shown in Firm A's intranet, subscribe to events generated by the extranet push server, thus eliminating the need for an in-house push server.
- An open API will enable the clients to subscribe to information provided by the push server. This API will handle security and entitlements for all data feeds.
- the individual client shown in Firm A is part of an intranet also having access to firm enterprise information.
- the push server may also support an interface to internal enterprise information which allows firm-wide data to appear as another data feed to client.
- the client software application of the present invention may display the pushed extranet information or the enterprise information or both, as will be described in more detail below.
- the push server may reside inside an enterprise's intranet for those firms whose requirements demand such, for example, Firm B shown in Fig. 2.
- the firm configures the internal push server in-house, which serves clients directly.
- External sources feed directly into the internal push server via direct links (such as the market data) or feed indirectly via the Internet.
- a private push server is made accessible to the client via the Internet.
- Built-in authentication ensures that the push server on the Internet is accessed by authorized users only.
- HTTP Hypertext Transfer Protocol
- the present invention itself is directed to a display system that is particularly well suited for use with the push server arrangements outlined above.
- the display system is not limited to use with such a push server.
- the present invention can also be utilized when no push server is available.
- the client accesses the data source on the Internet by a dial-up or direct-connection. While this arrangement does not offer the benefits of a dedicated push server, the user still obtains the advantages of the display capability of the present invention, as is described in more detail below.
- Channel As the term is used herein, a channel is a concentration of data from a resource such as a web server, together with user-defined display preferences, such as display colors or data filters.
- Channel Selector The channel selector is the central control center of the display, and contains several icons and buttons that can be used to perform various tasks.
- Montage The montage view is a portion of the display provided by the present invention, and is implemented preferably as a JavaBean container for JavaBean-compliant components. The montage view makes it easy for the user to manage two or more applications running concurrently, and provides an attractive and effective alternative to conventional windowing environments.
- NetChannel A netchannel is a JavaBean that can be configured to display virtually any type of dynamic content, and is also designed to support certain messaging capabilities, such as email and paging services. In the preferred embodiment, up to two visible netchannels may be displayed at once, and the user may have additional netchannels active at a given time.
- the display is generated and controlled by software stored in and executed by the client computer.
- the display of the present invention includes two important components: the main view 500 and the montage view 506.
- the main view is a small floating frame for displaying information, information selection buttons, and application management.
- the main view contains a "channel selector" 502, and panels 5041, 504b for viewing "netchannels", which each display continuously updated information from specific data sources. In the preferred embodiment, two netchannels can be displayed simultaneously, but the invention is not limited to this number.
- the main view is preferably displayed above the montage view.
- the channel selector 502 is the control portion of the display, and is preferably disposed in the center of the main view. It provides graphical controls, such as virtual buttons 510 and 512 for selecting which netchannels are displayed, and for configuring the system.
- Netchannels are capable of presenting virtually any type of dynamic content, including stock quotes, news headlines and special alerts. For example, one netchannel might display breaking business headlines from a major news source, while another could be used to display firm announcements relating to a specific business unit. A user might even subscribe to a netchannel configured to monitor alerts received from an enterprise computer management system.
- Each netchannel has its own individual settings that allow the user to customize the delivered content based on personal preferences.
- netchannels go beyond the passive display of consumer information.
- a complete set of alerting capabilities is also provided. These capabilities provide users with the ability to specify various forms of notification based on any number of business events. For example, pop-up dialogs can be displayed if a competitor is mentioned in a newsfeed. A message can also be sent to a user's pager if, say, a stock falls below a certain threshold. Further, a user might click on an interesting news headline in a netchannel and view the full text of the article in a browser. This capability provides an even higher level of targeted data delivery — the most critical events are dispatched with utmost priority.
- the present invention provides the montage view 506.
- the montage view contains a two-dimensional segmentable workspace in which applications can be placed. Users can subdivide this portion of the screen into rectangular segments 5081 - 508e, or "panes," of sizes appropriate to their particular needs. Panes can be resized by dragging their edges, and applications running in neighboring panes are resized accordingly.
- Each pane of the montage can contain a different application; applications can be added to and removed from the montage dynamically.
- a particular arrangement of panes, and the particular selection of applications running in them can be stored.
- the user can scroll through the stored montages. In this way, identical application layouts can be preserved from one session to the next.
- the montage view 506 makes it easy to manage numerous applications running concurrently. Since there are no overlapping windows or obscured screens, this view offers- an attractive alternative to traditional windowing environments. Moreover, as shown, valuable screen space within the montage view is not wasted with the traditional title bars and sizing controls of application windows, or because of underlapping windows.
- data retrieved from the extranet, intranet or internet is first buffered, and the desired information is then extracted from what has been received.
- the client then calls the display application, which generates the main view of the display and the montage view.
- the creation of the main view includes creating one or more netchannels and the virtual control buttons.
- Creation of the montage view includes the creation of any panes the user may desire. (As mentioned, those panes may be ones designed by the user now, or may be ones the user has designed at some time in the past and stored, and has instructed be used again at this time.)
- Fig. 6A when the user launches the display application, he or she is presented with a menu of existing netchannels as governed by entitlement, corresponding to contractual agreement with the channel data provider. The user may activate them or select only some for activation, and may deselect others, by means of the virtual controls provided in the main view. Up to two of the selected netchannels ( in the preferred embodiment) may then be selected for display.
- the user also may launch the montage view, using a virtual control in the channel selector for this purpose. If this has been done, the user may then optionally scroll through stored montage views that have been used previously. If the user finds one that he wishes to display, he activates it, and it is displayed. _ If none is found, or if the user does not scroll through the stored montage views, then the user creates a new montage, by splitting the montage view (if desired) , subidviding it as convenient, and using any portion of the resulting arrangement for, e.g., the enlargement of data being displayed on one of the netchannels, or to run an application.
- the preparation of the data to be viewed is, conceptually and in fact, handled separately from the creation of the actual display views that the user sees in using the present embodiment.
- the netchannels are architected in software according to a Model/View paradigm.
- the model By segregating the data itself (the model) from its visual representations (the view) , information can be presented in various forms depending on the user's preferences or needs.
- a single model may feed several views simultaneously.
- Each unique data source requires its own model. For example, models are available which gather information from particular web sites.
- the present invention preferably also provides a generic model, that interfaces with the push server (if one is used) .
- the client software application of the present invention stores all of these models in a "model repository" . Once a model for a given data source is placed in the repository, it may be used by any netchannel which requires it.
- the preferred embodiment utilizes a predefined object framework including Model, View, and Channel classes.
- object framework including Model, View, and Channel classes.
- concrete implementations of channels i.e., individual __ objects of the class channel
- channel-specific behavior where appropriate.
- a channel consists of several discrete parts. Each of these parts, while separate in function, contributes to a complete channel. Emphasis has been placed on creating a "clean" system architecture which separates the actual data representation of information from the visual display of information.
- This "Model-View” architecture allows the same information to be viewed in numerous ways, and enables a single source of data to feed multiple different views.
- the first component of a channel is the Model class.
- Each channel utilizes at least one model.
- the model contains code for physically retrieving data of a particular kind from a particular source. Preferably, provision is made for both "push" and "pull" data retrieval.
- a particular model may, for example, be one that parses information from a given web site on the Internet, or a site on a corporate intranet, at a specified interval, or may be one that responds to dynamic events generated by a push engine.
- models also store user preferences information.
- a model that receives stock quotes, for example, will store the portfolio of stocks the user is interested in tracking.
- Model classes are implemented as "Observable" classes.
- Observable objects are a type of object which generates events that may be observed, or processed, by arbitrary “Observer” objects. (This pattern allows models to generate events when new information is delivered without “knowing” anything about the objects that are interested in receiving these events. )
- the second channel component is the View class. This class specifies the "look and feel" of a particular channel for display purposes. It contains instructions defining which specific graphical components, such as stock tickers or scrolling headline displays, should be used to present the channel's data. Implementations of several graphical components, or “widgets,” which are programmed to respond to events from model classes, are also included. These widgets are the “observers” in the observer-observable pattern. This means that a widget can register as an observer of a model class, thus receiving events when data is changed and automatically updating its display.
- the final channel component is the Channel class, which is the "glue" that binds the model and view components together.
- the channel class defines a default name for the netchannel and provides some other basic information such as which channel models the netchannel uses. Additionally, the channel class is responsible for actually registering each widget in that netchannel's view as an observer of those models.
- the container coordinates the refreshing of a channel by scheduling routine updates. Where a capability of handling pushed information is provided, incoming push events are also directed to appropriate "push" channels.
- FIG. 7 shows the processing of data received from the server for a netchannel that the user has activated and designated for display.
- the __ corresponding model is updated to reflect the new data.
- the view component of each active channel that uses that model is notified that a change has occurred, and makes a corresponding change in the display.
- the user selects an option to open up a non-resizable window where a list of available channels and selected channels is displayed.
- the user may select channels from an "available" list, and deselect them from a "selected” list.
- the system can easily be implemented such that a selection triggers a billing record to be initiated for the purpose of metering application or channel usage.
- the "available" list may be predefined for the user based on administrator approval.
- Channels may be named to distinguish one instance of a view from another. Each instance may have its own configuration options.
- Figure 8 depicts a typical scenario.
- Any model located in the model repository may be "instantiated" and provided with user preferences for a particular type of information.
- An example of such preferences information is a list of stocks the user is interested in viewing.
- the model/view architecture allows for an arbitrary number of views to register as "observers" of the model. Because the model is concerned only with retrieving information from the corresponding data source, it is unimportant what kind of object any given observer is. As new or updated information becomes available (e.g., a change in stock _ price) each registered observer is automatically notified of the change.
- the client software application preferably contains a core suite of netchannels useful for presenting information from prepackaged data sources. However, because an organization may also require the ability to create its own netchannels, several netchannel development options are preferably also supported by the client software application.
- a "View Templates" software application is preferably provided including several templates that define netchannel layouts that are commonly found to be convenient. Users can use these templates to build new netchannel views with minimal coding effort. For example, a particular template might specify the location of a corporate logo, stock ticker, and news headline ticker. The user connects each element in the netchannel view to an existing model from the model repository. Once connected, the new channel is then ready to use.
- the client software application provides a custom JavaTM Application Programming Interface (API) that facilitates information retrieval. Models developed according to this API can be added to the model repository and used in subsequently-created netchannels.
- API Application Programming Interface
- a GUI "ChannelBuilder” software application offers and advanced drag-and-drop interface for developing highly customized netchannels with no coding effort. This application allows developers to select from a palette of available components and add these elements to channels in real-time.
- the GUI ChannelBuilder also displays a hierarchical view of all available data sources in the model repository. Channel designers simply draw a line from a data source to a visual component, and the component is connected to that source. Channels can be tested in this environment to ensure proper functionality, and the GUI ChannelBuilder has the capability of generating a compiled channel package with the press of a button.
- Model Services abstracts many of the common functions required by channels. For example, Model Services contains code that retrieves data from web pages. By using Model Services as opposed to raw JavaTM calls to perform this task, developers of channels need not write cumbersome network access code. Moreover, Model Services automatically detects if a proxy server is installed and modifies the network request accordingly. Additional functions provided by Model Services are subscribing and unsubscribing to "push" topics and/or events; launching a web browser to display an HTML document; notifying the container that the channel is "on alert" and should be displayed; and sending a message to a user's beeper. Aside from the obvious benefit of reducing tedious programming work, the availability of Model Services means that users do not have to input preferences information such as a pager PIN or web browser location for each channel application; user data is shared among all applications.
- Model Services to retrieve a web resource on a regular basis, ranging from every few minutes for rapidly changing data such as stock quotes, to only once every few hours for less dynamic data. Often this interval is user-configurable. Model Services will take the simple request from the channel and formulate a proper HTTP request for a web server. If the user is operating behind a firewall, Model Services modifies the request to go via the proxy server. Data is returned to the channel in the form of HTML (Hypertext Markup Language) . Channel models then parse this data using custom routines, or utility classes provided as part of the display system which aid in processing HTML documents.
- HTML Hypertext Markup Language
- Push channels use Model Services to subscribe to a particular data topic.
- Model Services takes the request and formats a subscription request for the push engine in use.
- new data for this topic is generated, it is sent to the container, which determines the channel or channels for which the data is destined and sends the appropriate message.
- pushed data is formatted according to a special protocol, no parsing of HTML is required in this scenario.
- the models used in these cases simply add the content of the event to their data store and notify all observers that new content is available.
- Pull channel models are implemented as JavaTM threads and are timed to retrieve the complete contents of a raw resource (information source) at a given interval.
- This resource may be any number of file types, such as an HTML document on the World Wide Web, or a preformatted text file located on a corporate intranet.
- Pull models are programmed to retrieve resources from a well-defined location, and contain specific rules for parsing information that is retrieved from this particular site. In most cases this parsing involves scanning an HTML document and extracting only the relevant information to be displayed. Oftentimes information deemed relevant in an HTML file is in some preformatted state (e.g., bullet points in a web document) , so the model will simply scan for each instance of the HTML code that formats the relevant information.
- Model Services is utilized to automatically retrieves the contents of a given resource via a simple method call.
- push models are dynamic and maintain a constantly changing state throughout the life of the application.
- a push model When a push model is created, it registers interest in a particular topic with the push server in use. This registration process is accomplished via Model Services and notifies the push engine that a netchannel model wishes to receive events related to a particular topic, such as a change in a stock price or breaking news on a. specific company. Since all communication with the push server is conducted via Model Services, a unique ID code is assigned to the channel model at the time of subscription for purposes of tracking incoming and outgoing messages.
- Model Services When information changes for a topic to which a push model has subscribed, the push server sends a message to Model Services containing the new data. This message contains only the data that has changed; that is, the minimum information necessary to update the information the net channel already has, is transmitted. Model Services references the ID code attached to the incoming message and forwards the data to the corresponding model. A predefined data structure is utilized for the update information being sent, and therefore, no parsing of information is required. All relevant data is preformatted for the netchannel models.
- netchannel widgets which are special objects programmed to listen for events generated by netchannel models. These widgets are graphical information controls, such as stock tickers, scrolling headline displays, and dynamic text labels.
- netchannel widgets register interest in updates from netchannel models at the time the user makes a particular netchannel active.
- a model can do is as follows. As a netchannel model processes new information, a data structure is created which contains all relevant information for netchannel widgets. This structure contains the text of the data to be displayed, an optional URL which links to more information related to the data, a foreground and background color for the information display, and a timestamp. Each model automatically broadcasts these structures to all widgets that have previously registered interest in that model's updates. As the updates are received, the widget adds the new data to its information display and shows the data onscreen. Filtering
- Each channel contains options for specifying the type of information a user is interested in within the context of the channel's content.
- An example would be filtering a financial news channel to display only news relating to stocks in the user's personal portfolio.
- Individual customization screens allow the user to create filters for each channel. Multiple filters may be created for each channel, and can be saved and re-used at will.
- the system is capable of generating user-defined alerts.
- users may establish criteria for special alerts.
- a typical scenario would involve an alert when a particular stock's price hits a specified level, or when a topic of interest to the user is reported in the news.
- An appropriate interface is provided for building complex alert criteria and storing them along with other preferences.
- both filters and alerts are stored on the remote push server, enabling user-specific settings to follow the user to whatever computer she is presently using.
- filters and alerts can be stored on a local machine.
- the invention utilizes the concept of "serialization" to preserve application state and provide continuity from one session to the next. All user-specific information, including preferences, filters, alert criteria, and settings, are "serialized” at the end of each application execution.
- the serialization process involves taking a "snapshot” of current memory and saving it to an arbitrary output stream. This output stream may be a local disk file, or a socket connection to a push server.
- the invention also allows for a montage view presentation of applications. Because each model is preferably implemented using Sun's JavaTM programming language as a JavaBean, its properties can be discovered dynamically. This eliminates the need to develop custom settings screens for each model . Applications are discovered and made available to the user to place into the segmentable montage workspace. Since each application is a JavaBean component, the viewing and modification of attributes, or "properties," is supported. In addition, the top-level montage view container itself is a JavaBean, which means that the exact subdivision of the screen into panes, as well as the applications which reside within these panes, are all part of a large containment hierarchy.
- the channel selector, the netchannels and the montage view are implemented in software as JavaBean ⁇ .
- the Sun JavaBeans specification defines a software component model for JavaTM that supports the creation of reusable components supporting a common interface.
- Important benefits of JavaBeans include introspection, serialization and reuse.
- introspection users of JavaBeans do not need to know the properties and methods supported by the Bean at design time.
- Built-in introspection methods are used to discover dynamically the interface of a particular component, thus eliminating the need to restrict functionality of components to a lowest common denominator, or to provide specialized handling in code.
- the present invention is able to build a configuration screen for that netchannel on the fly.
- JavaBeans also supports automatic serialization of components, which means that state information such as user preferences can be stored and retrieved without writing specialized code for each Bean. This provides an efficient method for maintaining settings strong among various complex components.
- JavaBeans are components with well-defined interfaces, JavaBeans of various types can be instantiated easily regardless of the container. This means that a particular application can be contained in the montage view, a floating window, or in any other compatible container.
- JavaTM is used, both the main view and the montage view are JavaBean containers. In the main view, both the left and right views hold netchannel beans, whereas each pane in the montage view may contain a JavaBean application.
- An additional benefit of implementing the montage view as a JavaBean container is that third-party JavaBean components may be instantiated in a montage pane, thus providing the significant benefits of the montage view to additional applications .
- the client software applications are implemented as JavaTM applications rather than JavaTM applets.
- JavaTM applications are standalone programs that are executed directly by the operating system, while applets are JavaTM programs that run within a web browser.
- a major benefit of JavaTM applications is the ability to use Sun's reference JavaTM implementation.
- VM's JavaTM Virtual Machines
- practical experience reveals differences among various vendors' VM's that are significant enough to affect performance.
- JavaTM applications are the fact that the major browser vendors have yet to update their browsers to the most recent JavaTM specification. Without capabilities introduced in Sun's October 1997 JavaTM release (version 1.1.4), key functionality is not possible.
- the client software application can be implemented with pure JavaTM code, a small number of key functions are only available via platform-specific function calls. To address these issues and preserve all cross-platform functionality, commonly used platform-specific calls are abstracted in a common JavaTM class library. Rather than having application code call a system native method, the client software application contains functions such as "loadWebDocument" which will perform the platform-specific action regardless of the user's operating system. By replacing this single class library according to the operating system in use, no application contains platform- specific code.
- JavaTM has the capability to launch an instance of any application, including a web browser, but cannot independently send the platform- specific request to load a web page in the browser.
- a JavaTM-based web browser application is preferably provided as part of the display system of the invention. This browser runs in the montage view and can optionally display pages when users click on netchannel links. Although this browser does not support all advanced web features, it does provide sufficient rendering of most pages.
- a well-known directory containing channel binary files is scanned.
- all channels are implemented as JavaBeans and stored in JavaTM Archive (JAR) files.
- the main code reads each JAR file in this special directory and discovers any channels that are contained within the JARs. Once the channels are discovered, they are automatically queried for basic information such as the title of the channel, and a small graphical icon representing the channel. This information is cached and used later to allow the user to add and remove active channels.
- Each JAR file is "stamped" with a code indicating the version of the particular channel application (s) it contains.
- New versions of channel JAR files may be stored on a remote server for the purpose of automatic software upgrades. At startup, this remote server is queried and determines if newer versions of any applications exist. This process is accomplished by comparing the version stamp of the local JAR file with the version reported by the server. If a newer version exists, the user is prompted to upgrade, and if the decision is made to do so, the new JAR file (or files) is automatically downloaded from the server to the well-known directory. In this manner, applications software is automatically upgraded with minimal user intervention. System administrators may optionally force upgrades without explicit user acceptance, thus providing powerful central administration of software distribution. Any errors that occur during the automatic upgrade process can be logged and analyzed. In addition to new versions of existing channels, totally new channels may be sent to client systems in the same manner.
- IFC Netscape Internet Foundation Classes
- IFC is a JavaTM user interface application framework for building applications independent of operating system-specific windows and user interface controls.
- the foundation classes enable development of rich, professional user interfaces that are not affected by individual platform idiosyncrasies.
- IFC also has close ties to the next- generation JavaTM Foundation Classes (JFC) which are presently under joint development by Sun, Netscape and IBM.
- JFC an outgrowth of IFC, provides a "pluggable" look and feel for JavaTM applications which enables users and developers to select the graphical user interface of their choice for each application.
- JFC will support all major IFC features, including lightweight user interface components and IFC's basic application framework. Since JFC will become a part of the core JavaTM package when released, the use of IFC will allow for the smoothest possible upgrade to JFC.
- the present invention preferably supports the use of several applications. All of these applications can be hosted in the montage view. Such applications are also preferably developed with Sun's JavaTM programming language and as JavaBeans. Consequently, every component in the display system of the present invention, and the applications used therewith, are platform-independent and web-enabled, providing tight integration with all popular browsers, where appropriate.
- market minder which is a table-based display of securities in a user's portfolio. Prices, bid/ask values, volume, and other data are updated continuously for each item in the portfolio. Multiple paging, e-mail and pop-up alerts can be associated with events specific to each security.
- the market minder application can also display intraday and historical price/volume charts for any security. Charts can be “drifted-down” to show more details for a given time period.
- Another application is a "news minder", which aggregates news headlines related to user-defined topics from various sources. These topics can be simple keywords, complex queries, or the companies represented in the user's market minder portfolio.
- Selecting a topic displays a list of all current headlines with summaries, original source, and date of posting. Users can click on a particular headline and view the full article in rich text, complete with graphics and hyperlinks. Additionally, intelligent filters can be applied on a topic-by-topic basis, enabling further refinement of information on topics that contain a large amount of news.
- a third application is a "unified inbox". Traditionally, users are required to use separate applications for e-mail, voicemail, and faxing. The unified inbox wraps all three types of incoming messagings into a single interface. Users can read e-mail, listen to voicemail, and view faxes all from the same unified inbox application. Other, smaller utility applications, such as financial calculators and graphing utilities, may also be invoked within the montage view.
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- User Interface Of Digital Computer (AREA)
- Digital Computer Display Output (AREA)
Abstract
Description
Claims
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP98960205A EP1036357A1 (en) | 1997-11-14 | 1998-11-13 | System and method for displaying multiple sources of data in near real-time |
JP2000521428A JP2001523853A (en) | 1997-11-14 | 1998-11-13 | System and method for displaying data from multiple data sources in near real time |
AU15862/99A AU1586299A (en) | 1997-11-14 | 1998-11-13 | System and method for displaying multiple sources of data in near real-time |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US97035797A | 1997-11-14 | 1997-11-14 | |
US08/970,357 | 1997-11-14 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO1999026127A1 true WO1999026127A1 (en) | 1999-05-27 |
Family
ID=25516827
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US1998/024280 WO1999026127A1 (en) | 1997-11-14 | 1998-11-13 | System and method for displaying multiple sources of data in near real-time |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP1036357A1 (en) |
JP (1) | JP2001523853A (en) |
AU (1) | AU1586299A (en) |
WO (1) | WO1999026127A1 (en) |
Cited By (69)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6847963B1 (en) | 1999-10-12 | 2005-01-25 | Bea Systems, Inc. | Method and system for appending search strings with user profile qualities |
NL1025098C2 (en) * | 2003-12-22 | 2005-07-04 | Xelion B V | Device, method, software and data carrier comprising software for displaying information on a screen. |
JP2006065860A (en) * | 2005-08-12 | 2006-03-09 | Csk Holdings Corp | Delivery information system, delivery information processing apparatus, information terminal device, information delivery method, and program |
US7103605B1 (en) * | 1999-12-10 | 2006-09-05 | A21, Inc. | Timeshared electronic catalog system and method |
WO2007019538A2 (en) * | 2005-08-08 | 2007-02-15 | Palm, Inc. | User interface for a computing device |
US7680513B2 (en) | 2005-08-08 | 2010-03-16 | Palm, Inc. | Contact-centric user-interface features for computing devices |
US8005194B2 (en) | 2005-12-21 | 2011-08-23 | Hewlett-Packard Development Company, L.P. | Technique for handling incoming reply messages |
EP2487578A1 (en) * | 2011-02-11 | 2012-08-15 | Samsung Electronics Co., Ltd | Method for controlling screen of mobile terminal |
US8249388B2 (en) | 2008-11-24 | 2012-08-21 | Microsoft Corporation | Identifying portions of an image for cropping |
US20130030977A1 (en) * | 2003-09-30 | 2013-01-31 | Trading Technologies International, Inc. | System and Method for Improved Distribution of Market Information |
KR101257385B1 (en) | 2008-10-30 | 2013-04-23 | 에스케이플래닛 주식회사 | Method, System And Server for Providing Widget-based RSS Service |
US8589815B2 (en) | 2010-03-10 | 2013-11-19 | Microsoft Corporation | Control of timing for animations in dynamic icons |
US8677286B2 (en) | 2003-05-01 | 2014-03-18 | Hewlett-Packard Development Company, L.P. | Dynamic sizing user interface method and system for data display |
US8775385B2 (en) | 2012-05-24 | 2014-07-08 | Microsoft Corporation | Techniques to modify file descriptors for content files |
US8836648B2 (en) | 2009-05-27 | 2014-09-16 | Microsoft Corporation | Touch pull-in gesture |
US8886976B2 (en) | 2011-04-11 | 2014-11-11 | Microsoft Corporation | Management of background tasks |
US8893033B2 (en) | 2011-05-27 | 2014-11-18 | Microsoft Corporation | Application notifications |
US8910081B2 (en) | 2011-04-11 | 2014-12-09 | Microsoft Corporation | Push notifications for updating multiple dynamic icon panels |
US8922575B2 (en) | 2011-09-09 | 2014-12-30 | Microsoft Corporation | Tile cache |
US8935631B2 (en) | 2011-09-01 | 2015-01-13 | Microsoft Corporation | Arranging tiles |
US8933952B2 (en) | 2011-09-10 | 2015-01-13 | Microsoft Corporation | Pre-rendering new content for an application-selectable user interface |
US8970499B2 (en) | 2008-10-23 | 2015-03-03 | Microsoft Technology Licensing, Llc | Alternative inputs of a mobile communications device |
US8990733B2 (en) | 2010-12-20 | 2015-03-24 | Microsoft Technology Licensing, Llc | Application-launching interface for multiple modes |
US9015606B2 (en) | 2010-12-23 | 2015-04-21 | Microsoft Technology Licensing, Llc | Presenting an application change through a tile |
US9020565B2 (en) | 2005-09-16 | 2015-04-28 | Microsoft Technology Licensing, Llc | Tile space user interface for mobile devices |
US9043712B2 (en) | 1999-10-29 | 2015-05-26 | Surfcast, Inc. | System and method for simultaneous display of multiple information sources |
US9047300B2 (en) | 2012-05-24 | 2015-06-02 | Microsoft Technology Licensing, Llc | Techniques to manage universal file descriptor models for content files |
US9053079B2 (en) | 2011-12-12 | 2015-06-09 | Microsoft Technology Licensing, Llc | Techniques to manage collaborative documents |
US9052820B2 (en) | 2011-05-27 | 2015-06-09 | Microsoft Technology Licensing, Llc | Multi-application environment |
US9069781B2 (en) | 2012-05-24 | 2015-06-30 | Microsoft Technology Licensing, Llc | Techniques to automatically manage file descriptors |
US9069439B2 (en) | 2011-04-11 | 2015-06-30 | Microsoft Technology Licensing, Llc | Graphical user interface with customized navigation |
US9104440B2 (en) | 2011-05-27 | 2015-08-11 | Microsoft Technology Licensing, Llc | Multi-application environment |
US9128605B2 (en) | 2012-02-16 | 2015-09-08 | Microsoft Technology Licensing, Llc | Thumbnail-image selection of applications |
US9146670B2 (en) | 2011-09-10 | 2015-09-29 | Microsoft Technology Licensing, Llc | Progressively indicating new content in an application-selectable user interface |
US9158445B2 (en) | 2011-05-27 | 2015-10-13 | Microsoft Technology Licensing, Llc | Managing an immersive interface in a multi-application immersive environment |
US9213468B2 (en) | 2010-12-23 | 2015-12-15 | Microsoft Technology Licensing, Llc | Application reporting in an application-selectable user interface |
US9223472B2 (en) | 2011-12-22 | 2015-12-29 | Microsoft Technology Licensing, Llc | Closing applications |
US9244802B2 (en) | 2011-09-10 | 2016-01-26 | Microsoft Technology Licensing, Llc | Resource user interface |
US9286390B2 (en) | 2011-12-30 | 2016-03-15 | Microsoft Technology Licensing, Llc | Presentation of rich search results in delineated areas |
US9292358B2 (en) | 2011-06-13 | 2016-03-22 | Microsoft Technology Licensing, Llc | Remotely retrieving information from consumer devices |
US9310888B2 (en) | 2012-03-16 | 2016-04-12 | Microsoft Technology Licensing, Llc | Multimodal layout and rendering |
US9323424B2 (en) | 2008-10-23 | 2016-04-26 | Microsoft Corporation | Column organization of content |
US9329774B2 (en) | 2011-05-27 | 2016-05-03 | Microsoft Technology Licensing, Llc | Switching back to a previously-interacted-with application |
US9342322B2 (en) | 2011-09-12 | 2016-05-17 | Microsoft Technology Licensing, Llc | System and method for layering using tile-based renderers |
US9360991B2 (en) | 2011-04-11 | 2016-06-07 | Microsoft Technology Licensing, Llc | Three-dimensional icons for organizing, invoking, and using applications |
US9383917B2 (en) | 2011-03-28 | 2016-07-05 | Microsoft Technology Licensing, Llc | Predictive tiling |
US9423951B2 (en) | 2010-12-31 | 2016-08-23 | Microsoft Technology Licensing, Llc | Content-based snap point |
US9430193B2 (en) | 2003-10-24 | 2016-08-30 | Microsoft Technology Licensing, Llc | Interface for a computer platform |
US9436685B2 (en) | 2010-12-23 | 2016-09-06 | Microsoft Technology Licensing, Llc | Techniques for electronic aggregation of information |
US9450952B2 (en) | 2013-05-29 | 2016-09-20 | Microsoft Technology Licensing, Llc | Live tiles without application-code execution |
US9451822B2 (en) | 2014-04-10 | 2016-09-27 | Microsoft Technology Licensing, Llc | Collapsible shell cover for computing device |
US9547665B2 (en) | 2011-10-27 | 2017-01-17 | Microsoft Technology Licensing, Llc | Techniques to determine network storage for sharing media files |
US9557909B2 (en) | 2011-09-09 | 2017-01-31 | Microsoft Technology Licensing, Llc | Semantic zoom linguistic helpers |
US9658766B2 (en) | 2011-05-27 | 2017-05-23 | Microsoft Technology Licensing, Llc | Edge gesture |
US9665384B2 (en) | 2005-08-30 | 2017-05-30 | Microsoft Technology Licensing, Llc | Aggregation of computing device settings |
US9674335B2 (en) | 2014-10-30 | 2017-06-06 | Microsoft Technology Licensing, Llc | Multi-configuration input device |
US9679404B2 (en) | 2010-12-23 | 2017-06-13 | Microsoft Technology Licensing, Llc | Techniques for dynamic layout of presentation tiles on a grid |
US9715485B2 (en) | 2011-03-28 | 2017-07-25 | Microsoft Technology Licensing, Llc | Techniques for electronic aggregation of information |
US9769293B2 (en) | 2014-04-10 | 2017-09-19 | Microsoft Technology Licensing, Llc | Slider cover for computing device |
US9841874B2 (en) | 2014-04-04 | 2017-12-12 | Microsoft Technology Licensing, Llc | Expandable application representation |
US9977575B2 (en) | 2009-03-30 | 2018-05-22 | Microsoft Technology Licensing, Llc | Chromeless user interface |
US10254942B2 (en) | 2014-07-31 | 2019-04-09 | Microsoft Technology Licensing, Llc | Adaptive sizing and positioning of application windows |
US10353566B2 (en) | 2011-09-09 | 2019-07-16 | Microsoft Technology Licensing, Llc | Semantic zoom animations |
US10592080B2 (en) | 2014-07-31 | 2020-03-17 | Microsoft Technology Licensing, Llc | Assisted presentation of application windows |
US10635828B2 (en) | 2016-09-23 | 2020-04-28 | Microsoft Technology Licensing, Llc | Tokenized links with granular permissions |
US10642365B2 (en) | 2014-09-09 | 2020-05-05 | Microsoft Technology Licensing, Llc | Parametric inertia and APIs |
US10678412B2 (en) | 2014-07-31 | 2020-06-09 | Microsoft Technology Licensing, Llc | Dynamic joint dividers for application windows |
US10733151B2 (en) | 2011-10-27 | 2020-08-04 | Microsoft Technology Licensing, Llc | Techniques to share media files |
US11249619B2 (en) | 2011-02-11 | 2022-02-15 | Samsung Electronics Co., Ltd. | Sectional user interface for controlling a mobile terminal |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060028212A1 (en) * | 2004-08-06 | 2006-02-09 | Steiner J P | System and method for graphically grouping electrical devices |
US8914733B2 (en) * | 2005-10-04 | 2014-12-16 | International Business Machines Corporation | User interface widget unit sharing for application user interface distribution |
US7702754B2 (en) * | 2007-05-23 | 2010-04-20 | Sap Ag | Enhanced widget architecture |
WO2014030199A1 (en) * | 2012-08-20 | 2014-02-27 | 富士通株式会社 | Seamless application push system and method for same |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5195031A (en) * | 1988-10-24 | 1993-03-16 | Reuters Limited | Trading system for providing real time context sensitive trading messages based on conversation analysis |
US5270922A (en) * | 1984-06-29 | 1993-12-14 | Merrill Lynch & Company, Inc. | System for distributing, processing and displaying financial information |
US5297032A (en) * | 1991-02-01 | 1994-03-22 | Merrill Lynch, Pierce, Fenner & Smith Incorporated | Securities trading workstation |
US5339392A (en) * | 1989-07-27 | 1994-08-16 | Risberg Jeffrey S | Apparatus and method for creation of a user definable video displayed document showing changes in real time data |
US5812862A (en) * | 1993-05-10 | 1998-09-22 | Apple Computer, Inc. | Computer-human interface system for compound documents |
-
1998
- 1998-11-13 JP JP2000521428A patent/JP2001523853A/en not_active Withdrawn
- 1998-11-13 AU AU15862/99A patent/AU1586299A/en not_active Abandoned
- 1998-11-13 EP EP98960205A patent/EP1036357A1/en not_active Withdrawn
- 1998-11-13 WO PCT/US1998/024280 patent/WO1999026127A1/en not_active Application Discontinuation
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5270922A (en) * | 1984-06-29 | 1993-12-14 | Merrill Lynch & Company, Inc. | System for distributing, processing and displaying financial information |
US5195031A (en) * | 1988-10-24 | 1993-03-16 | Reuters Limited | Trading system for providing real time context sensitive trading messages based on conversation analysis |
US5339392A (en) * | 1989-07-27 | 1994-08-16 | Risberg Jeffrey S | Apparatus and method for creation of a user definable video displayed document showing changes in real time data |
US5297032A (en) * | 1991-02-01 | 1994-03-22 | Merrill Lynch, Pierce, Fenner & Smith Incorporated | Securities trading workstation |
US5812862A (en) * | 1993-05-10 | 1998-09-22 | Apple Computer, Inc. | Computer-human interface system for compound documents |
Cited By (115)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6847963B1 (en) | 1999-10-12 | 2005-01-25 | Bea Systems, Inc. | Method and system for appending search strings with user profile qualities |
US9363338B2 (en) | 1999-10-29 | 2016-06-07 | Surfcast, Inc. | System and method for simultaneous display of multiple information sources |
US9043712B2 (en) | 1999-10-29 | 2015-05-26 | Surfcast, Inc. | System and method for simultaneous display of multiple information sources |
US9946434B2 (en) | 1999-10-29 | 2018-04-17 | Surfcast, Inc. | System and method for simultaneous display of multiple information sources |
US7103605B1 (en) * | 1999-12-10 | 2006-09-05 | A21, Inc. | Timeshared electronic catalog system and method |
US8677286B2 (en) | 2003-05-01 | 2014-03-18 | Hewlett-Packard Development Company, L.P. | Dynamic sizing user interface method and system for data display |
US9830652B2 (en) | 2003-09-30 | 2017-11-28 | Trading Technologies International, Inc. | System and method for improved distribution of market information |
US20130030977A1 (en) * | 2003-09-30 | 2013-01-31 | Trading Technologies International, Inc. | System and Method for Improved Distribution of Market Information |
US10552906B2 (en) | 2003-09-30 | 2020-02-04 | Trading Technologies International, Inc. | System and method for improved distribution of market information |
US11727485B2 (en) | 2003-09-30 | 2023-08-15 | Trading Technologies International, Inc. | System and method for improved distribution of market information |
US8738506B2 (en) * | 2003-09-30 | 2014-05-27 | Trading Technologies International, Inc. | System and method for improved distribution of market information |
US10970782B2 (en) | 2003-09-30 | 2021-04-06 | Trading Technologies International, Inc. | System and method for improved distribution of market information |
US9459837B2 (en) | 2003-10-24 | 2016-10-04 | Microsoft Technology Licensing, Llc | Interface for a computer platform |
US9430193B2 (en) | 2003-10-24 | 2016-08-30 | Microsoft Technology Licensing, Llc | Interface for a computer platform |
WO2005062163A3 (en) * | 2003-12-22 | 2005-08-18 | Xelion B V | Device, method, software and data carrier comprising software for displaying information on a screen |
WO2005062163A2 (en) * | 2003-12-22 | 2005-07-07 | Xelion B.V. | Device, method, software and data carrier comprising software for displaying information on a screen |
NL1025098C2 (en) * | 2003-12-22 | 2005-07-04 | Xelion B V | Device, method, software and data carrier comprising software for displaying information on a screen. |
US8280437B2 (en) | 2005-08-08 | 2012-10-02 | Hewlett-Packard Development Company, L.P. | Contact-centric user-interface features for computing devices |
US8583175B2 (en) | 2005-08-08 | 2013-11-12 | Palm, Inc. | Contact-centric user-interface for computing devices |
WO2007019538A3 (en) * | 2005-08-08 | 2007-09-07 | Palm Inc | User interface for a computing device |
WO2007019538A2 (en) * | 2005-08-08 | 2007-02-15 | Palm, Inc. | User interface for a computing device |
US8099129B2 (en) | 2005-08-08 | 2012-01-17 | Hewlett-Packard Development Company, L.P. | Contact-centric user-interface features for computing devices |
US8078993B2 (en) | 2005-08-08 | 2011-12-13 | Hewlett-Packard Development Company, L.P. | Operating multiple views on a computing device in connection with a wireless communication session |
US7680513B2 (en) | 2005-08-08 | 2010-03-16 | Palm, Inc. | Contact-centric user-interface features for computing devices |
JP2006065860A (en) * | 2005-08-12 | 2006-03-09 | Csk Holdings Corp | Delivery information system, delivery information processing apparatus, information terminal device, information delivery method, and program |
US9665384B2 (en) | 2005-08-30 | 2017-05-30 | Microsoft Technology Licensing, Llc | Aggregation of computing device settings |
US9020565B2 (en) | 2005-09-16 | 2015-04-28 | Microsoft Technology Licensing, Llc | Tile space user interface for mobile devices |
US9046984B2 (en) | 2005-09-16 | 2015-06-02 | Microsoft Technology Licensing, Llc | Tile space user interface for mobile devices |
US8005194B2 (en) | 2005-12-21 | 2011-08-23 | Hewlett-Packard Development Company, L.P. | Technique for handling incoming reply messages |
US9323424B2 (en) | 2008-10-23 | 2016-04-26 | Microsoft Corporation | Column organization of content |
US8970499B2 (en) | 2008-10-23 | 2015-03-03 | Microsoft Technology Licensing, Llc | Alternative inputs of a mobile communications device |
US9223412B2 (en) | 2008-10-23 | 2015-12-29 | Rovi Technologies Corporation | Location-based display characteristics in a user interface |
US10133453B2 (en) | 2008-10-23 | 2018-11-20 | Microsoft Technology Licensing, Llc | Alternative inputs of a mobile communications device |
US9606704B2 (en) | 2008-10-23 | 2017-03-28 | Microsoft Technology Licensing, Llc | Alternative inputs of a mobile communications device |
KR101257385B1 (en) | 2008-10-30 | 2013-04-23 | 에스케이플래닛 주식회사 | Method, System And Server for Providing Widget-based RSS Service |
US8249388B2 (en) | 2008-11-24 | 2012-08-21 | Microsoft Corporation | Identifying portions of an image for cropping |
US9977575B2 (en) | 2009-03-30 | 2018-05-22 | Microsoft Technology Licensing, Llc | Chromeless user interface |
US8836648B2 (en) | 2009-05-27 | 2014-09-16 | Microsoft Corporation | Touch pull-in gesture |
US9418464B2 (en) | 2010-03-10 | 2016-08-16 | Microsoft Technology Licensing, Llc | Control of timing for animations in dynamic icons |
US8589815B2 (en) | 2010-03-10 | 2013-11-19 | Microsoft Corporation | Control of timing for animations in dynamic icons |
US9696888B2 (en) | 2010-12-20 | 2017-07-04 | Microsoft Technology Licensing, Llc | Application-launching interface for multiple modes |
US8990733B2 (en) | 2010-12-20 | 2015-03-24 | Microsoft Technology Licensing, Llc | Application-launching interface for multiple modes |
US9864494B2 (en) | 2010-12-23 | 2018-01-09 | Microsoft Technology Licensing, Llc | Application reporting in an application-selectable user interface |
US10969944B2 (en) | 2010-12-23 | 2021-04-06 | Microsoft Technology Licensing, Llc | Application reporting in an application-selectable user interface |
US9436685B2 (en) | 2010-12-23 | 2016-09-06 | Microsoft Technology Licensing, Llc | Techniques for electronic aggregation of information |
US11126333B2 (en) | 2010-12-23 | 2021-09-21 | Microsoft Technology Licensing, Llc | Application reporting in an application-selectable user interface |
US9015606B2 (en) | 2010-12-23 | 2015-04-21 | Microsoft Technology Licensing, Llc | Presenting an application change through a tile |
US9213468B2 (en) | 2010-12-23 | 2015-12-15 | Microsoft Technology Licensing, Llc | Application reporting in an application-selectable user interface |
US9870132B2 (en) | 2010-12-23 | 2018-01-16 | Microsoft Technology Licensing, Llc | Application reporting in an application-selectable user interface |
US9766790B2 (en) | 2010-12-23 | 2017-09-19 | Microsoft Technology Licensing, Llc | Application reporting in an application-selectable user interface |
US9229918B2 (en) | 2010-12-23 | 2016-01-05 | Microsoft Technology Licensing, Llc | Presenting an application change through a tile |
US10331335B2 (en) | 2010-12-23 | 2019-06-25 | Microsoft Technology Licensing, Llc | Techniques for electronic aggregation of information |
US9679404B2 (en) | 2010-12-23 | 2017-06-13 | Microsoft Technology Licensing, Llc | Techniques for dynamic layout of presentation tiles on a grid |
US9423951B2 (en) | 2010-12-31 | 2016-08-23 | Microsoft Technology Licensing, Llc | Content-based snap point |
US10705682B2 (en) | 2011-02-11 | 2020-07-07 | Samsung Electronics Co., Ltd. | Sectional user interface for controlling a mobile terminal |
US11249619B2 (en) | 2011-02-11 | 2022-02-15 | Samsung Electronics Co., Ltd. | Sectional user interface for controlling a mobile terminal |
US9104290B2 (en) | 2011-02-11 | 2015-08-11 | Samsung Electronics Co., Ltd. | Method for controlling screen of mobile terminal |
EP2487578A1 (en) * | 2011-02-11 | 2012-08-15 | Samsung Electronics Co., Ltd | Method for controlling screen of mobile terminal |
US9383917B2 (en) | 2011-03-28 | 2016-07-05 | Microsoft Technology Licensing, Llc | Predictive tiling |
US9715485B2 (en) | 2011-03-28 | 2017-07-25 | Microsoft Technology Licensing, Llc | Techniques for electronic aggregation of information |
US9069439B2 (en) | 2011-04-11 | 2015-06-30 | Microsoft Technology Licensing, Llc | Graphical user interface with customized navigation |
US9360991B2 (en) | 2011-04-11 | 2016-06-07 | Microsoft Technology Licensing, Llc | Three-dimensional icons for organizing, invoking, and using applications |
US8910081B2 (en) | 2011-04-11 | 2014-12-09 | Microsoft Corporation | Push notifications for updating multiple dynamic icon panels |
US8886976B2 (en) | 2011-04-11 | 2014-11-11 | Microsoft Corporation | Management of background tasks |
US9146778B2 (en) | 2011-04-11 | 2015-09-29 | Microsoft Technology Licensing, Llc | Management of background tasks |
US9329774B2 (en) | 2011-05-27 | 2016-05-03 | Microsoft Technology Licensing, Llc | Switching back to a previously-interacted-with application |
US9104307B2 (en) | 2011-05-27 | 2015-08-11 | Microsoft Technology Licensing, Llc | Multi-application environment |
US8893033B2 (en) | 2011-05-27 | 2014-11-18 | Microsoft Corporation | Application notifications |
US9535597B2 (en) | 2011-05-27 | 2017-01-03 | Microsoft Technology Licensing, Llc | Managing an immersive interface in a multi-application immersive environment |
US9052820B2 (en) | 2011-05-27 | 2015-06-09 | Microsoft Technology Licensing, Llc | Multi-application environment |
US10303325B2 (en) | 2011-05-27 | 2019-05-28 | Microsoft Technology Licensing, Llc | Multi-application environment |
US9158445B2 (en) | 2011-05-27 | 2015-10-13 | Microsoft Technology Licensing, Llc | Managing an immersive interface in a multi-application immersive environment |
US11272017B2 (en) | 2011-05-27 | 2022-03-08 | Microsoft Technology Licensing, Llc | Application notifications manifest |
US9658766B2 (en) | 2011-05-27 | 2017-05-23 | Microsoft Technology Licensing, Llc | Edge gesture |
US9104440B2 (en) | 2011-05-27 | 2015-08-11 | Microsoft Technology Licensing, Llc | Multi-application environment |
US11698721B2 (en) | 2011-05-27 | 2023-07-11 | Microsoft Technology Licensing, Llc | Managing an immersive interface in a multi-application immersive environment |
US9292358B2 (en) | 2011-06-13 | 2016-03-22 | Microsoft Technology Licensing, Llc | Remotely retrieving information from consumer devices |
US8935631B2 (en) | 2011-09-01 | 2015-01-13 | Microsoft Corporation | Arranging tiles |
US10579250B2 (en) | 2011-09-01 | 2020-03-03 | Microsoft Technology Licensing, Llc | Arranging tiles |
US8922575B2 (en) | 2011-09-09 | 2014-12-30 | Microsoft Corporation | Tile cache |
US10114865B2 (en) | 2011-09-09 | 2018-10-30 | Microsoft Technology Licensing, Llc | Tile cache |
US10353566B2 (en) | 2011-09-09 | 2019-07-16 | Microsoft Technology Licensing, Llc | Semantic zoom animations |
US9557909B2 (en) | 2011-09-09 | 2017-01-31 | Microsoft Technology Licensing, Llc | Semantic zoom linguistic helpers |
US10254955B2 (en) | 2011-09-10 | 2019-04-09 | Microsoft Technology Licensing, Llc | Progressively indicating new content in an application-selectable user interface |
US8933952B2 (en) | 2011-09-10 | 2015-01-13 | Microsoft Corporation | Pre-rendering new content for an application-selectable user interface |
US9146670B2 (en) | 2011-09-10 | 2015-09-29 | Microsoft Technology Licensing, Llc | Progressively indicating new content in an application-selectable user interface |
US9244802B2 (en) | 2011-09-10 | 2016-01-26 | Microsoft Technology Licensing, Llc | Resource user interface |
US9715750B2 (en) | 2011-09-12 | 2017-07-25 | Microsoft Technology Licensing, Llc | System and method for layering using tile-based renderers |
US9342322B2 (en) | 2011-09-12 | 2016-05-17 | Microsoft Technology Licensing, Llc | System and method for layering using tile-based renderers |
US10733151B2 (en) | 2011-10-27 | 2020-08-04 | Microsoft Technology Licensing, Llc | Techniques to share media files |
US9547665B2 (en) | 2011-10-27 | 2017-01-17 | Microsoft Technology Licensing, Llc | Techniques to determine network storage for sharing media files |
US9977715B2 (en) | 2011-12-12 | 2018-05-22 | Microsoft Technology Licensing, Llc | Techniques to manage collaborative documents |
US9053079B2 (en) | 2011-12-12 | 2015-06-09 | Microsoft Technology Licensing, Llc | Techniques to manage collaborative documents |
US10191633B2 (en) | 2011-12-22 | 2019-01-29 | Microsoft Technology Licensing, Llc | Closing applications |
US9223472B2 (en) | 2011-12-22 | 2015-12-29 | Microsoft Technology Licensing, Llc | Closing applications |
US9286390B2 (en) | 2011-12-30 | 2016-03-15 | Microsoft Technology Licensing, Llc | Presentation of rich search results in delineated areas |
US9128605B2 (en) | 2012-02-16 | 2015-09-08 | Microsoft Technology Licensing, Llc | Thumbnail-image selection of applications |
US9645650B2 (en) | 2012-03-16 | 2017-05-09 | Microsoft Technology Licensing, Llc | Use of touch and gestures related to tasks and business workflow |
US9310888B2 (en) | 2012-03-16 | 2016-04-12 | Microsoft Technology Licensing, Llc | Multimodal layout and rendering |
US9069781B2 (en) | 2012-05-24 | 2015-06-30 | Microsoft Technology Licensing, Llc | Techniques to automatically manage file descriptors |
US9047300B2 (en) | 2012-05-24 | 2015-06-02 | Microsoft Technology Licensing, Llc | Techniques to manage universal file descriptor models for content files |
US8775385B2 (en) | 2012-05-24 | 2014-07-08 | Microsoft Corporation | Techniques to modify file descriptors for content files |
US10110590B2 (en) | 2013-05-29 | 2018-10-23 | Microsoft Technology Licensing, Llc | Live tiles without application-code execution |
US9807081B2 (en) | 2013-05-29 | 2017-10-31 | Microsoft Technology Licensing, Llc | Live tiles without application-code execution |
US9450952B2 (en) | 2013-05-29 | 2016-09-20 | Microsoft Technology Licensing, Llc | Live tiles without application-code execution |
US10459607B2 (en) | 2014-04-04 | 2019-10-29 | Microsoft Technology Licensing, Llc | Expandable application representation |
US9841874B2 (en) | 2014-04-04 | 2017-12-12 | Microsoft Technology Licensing, Llc | Expandable application representation |
US9451822B2 (en) | 2014-04-10 | 2016-09-27 | Microsoft Technology Licensing, Llc | Collapsible shell cover for computing device |
US9769293B2 (en) | 2014-04-10 | 2017-09-19 | Microsoft Technology Licensing, Llc | Slider cover for computing device |
US10678412B2 (en) | 2014-07-31 | 2020-06-09 | Microsoft Technology Licensing, Llc | Dynamic joint dividers for application windows |
US10592080B2 (en) | 2014-07-31 | 2020-03-17 | Microsoft Technology Licensing, Llc | Assisted presentation of application windows |
US10254942B2 (en) | 2014-07-31 | 2019-04-09 | Microsoft Technology Licensing, Llc | Adaptive sizing and positioning of application windows |
US10642365B2 (en) | 2014-09-09 | 2020-05-05 | Microsoft Technology Licensing, Llc | Parametric inertia and APIs |
US9674335B2 (en) | 2014-10-30 | 2017-06-06 | Microsoft Technology Licensing, Llc | Multi-configuration input device |
US10635828B2 (en) | 2016-09-23 | 2020-04-28 | Microsoft Technology Licensing, Llc | Tokenized links with granular permissions |
Also Published As
Publication number | Publication date |
---|---|
EP1036357A1 (en) | 2000-09-20 |
AU1586299A (en) | 1999-06-07 |
JP2001523853A (en) | 2001-11-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1036357A1 (en) | System and method for displaying multiple sources of data in near real-time | |
US8346887B1 (en) | Tracking and tracing user activity with application media packages | |
US6732142B1 (en) | Method and apparatus for audible presentation of web page content | |
US6724403B1 (en) | System and method for simultaneous display of multiple information sources | |
US7721303B2 (en) | System for management of interactions between users and software applications in a web environment | |
US7340446B2 (en) | Method and system for query-based management of multiple network resources | |
US7028264B2 (en) | System and method for simultaneous display of multiple information sources | |
JP4920161B2 (en) | System for automatically providing peripheral awareness of information and method for providing dynamic objects | |
CA2744848C (en) | System and method for delivering remotely stored applications and information | |
US6859213B1 (en) | Method and apparatus for selecting attachments | |
US6549217B1 (en) | System and method for computer system management using bookmarks | |
US20120304068A1 (en) | Presentation format for an application tile | |
AU2003222256B2 (en) | User controllable computer presentation of interfaces and information selectively provided via a network | |
US20120229473A1 (en) | Dynamic Animation in a Mobile Device | |
AU2573301A (en) | System and method for simultaneous display of multiple information sources | |
JP2000222277A (en) | Method for customizing file and information processing system | |
US20090138591A1 (en) | Method for the display of visual sequencing of message communications between application portlets and task page relationship information in a web-base environment | |
Kapyla et al. | Towards an accessible web by applying push technology | |
US20030023718A1 (en) | System and method for tracking updates in a network site | |
LOGIC | LINKS~ I~ ROPLETS~ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GE GH GM HU ID IL IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG UZ VN YU ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): GH GM KE LS MW SD SZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
WWE | Wipo information: entry into national phase |
Ref document number: 15862/99 Country of ref document: AU |
|
NENP | Non-entry into the national phase |
Ref country code: KR |
|
ENP | Entry into the national phase |
Ref country code: JP Ref document number: 2000 521428 Kind code of ref document: A Format of ref document f/p: F |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1998960205 Country of ref document: EP |
|
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
WWP | Wipo information: published in national office |
Ref document number: 1998960205 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: CA |
|
WWW | Wipo information: withdrawn in national office |
Ref document number: 1998960205 Country of ref document: EP |