US20120136756A1 - On-Demand Auto-Fill - Google Patents

On-Demand Auto-Fill Download PDF

Info

Publication number
US20120136756A1
US20120136756A1 US13/300,290 US201113300290A US2012136756A1 US 20120136756 A1 US20120136756 A1 US 20120136756A1 US 201113300290 A US201113300290 A US 201113300290A US 2012136756 A1 US2012136756 A1 US 2012136756A1
Authority
US
United States
Prior art keywords
user
information
web
selectable object
page
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.)
Abandoned
Application number
US13/300,290
Inventor
John Nicholas Jitkoff
Roma R. Shah
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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Priority to US13/300,290 priority Critical patent/US20120136756A1/en
Assigned to GOOGLE INC. reassignment GOOGLE INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: SHAH, ROMA R., JITKOFF, JOHN NICHOLAS
Publication of US20120136756A1 publication Critical patent/US20120136756A1/en
Priority to US15/335,898 priority patent/US10515144B2/en
Assigned to GOOGLE LLC reassignment GOOGLE LLC CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: GOOGLE INC.
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/174Form filling; Merging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction 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
    • G06F3/04817Interaction 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 using icons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction 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
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0486Drag-and-drop
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0633Lists, e.g. purchase orders, compilation or processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0641Shopping interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking

Definitions

  • This document relates to systems and techniques for interacting with users of a web browser or similar application that accepts data input.
  • This document describes systems and techniques that may be used to interact with a user of a browser or similar application on a computing device, such as a mobile computing device (e.g., a smart phone).
  • a computing device such as a mobile computing device (e.g., a smart phone).
  • the various techniques described here can provide mechanisms for more intuitive user interaction with a browser or other application, including by making more convenient the switching between pages that are currently loaded in a browser (e.g., between tabs in a tabbed browser), by automatically generating favicon's for web page names, by making web page names in a list such as a favorites or history list interactive, by permitting convenient yet secure addition of information to fillable web forms, by providing for the display of web page content in different formats, and by providing convenient mechanisms for selecting objects and actions in a cascading menu structure.
  • a selectable control such as an icon may be displayed, and that selectable control may be correlated to certain information about a user or the user's device or account.
  • a user may have an icon that is associated with each of the various credit cards that the user has, and each icon can be correlated to information about the credit card, such as the credit card number, expiration date, user name, 3-digit code, billing address and the like.
  • Another icon may represent information about the user himself, such as his name, address, and the like.
  • Each icon may be labeled in a manner that makes clear the information that it is a “front” for.
  • the icons may be normally displayed on a desktop of a device operating system, such as in a traditional grid of icons that float over a background or wallpaper.
  • a user may display a web page or content in a native application that requires data input from the user.
  • the user may type a few letters and the information may be added automatically, after having been stored a prior time the user typed in similar information on another form.
  • such a technique may result in the user inadvertently supplying information to the page or the application.
  • a user could supply the same information by selecting one of the icons discussed above and dragging it into the area of the form that is to receive the input, or onto an icon adjacent to, or that otherwise represents the form.
  • Such an action by the user may be interpreted as an intent to have all relevant information that is fronted by the icon to be added to the form. For example, if the form is for a mailing address on an order form, the user's dragging of his personal icon onto the firm may cause it to be filled out completely, whereas his dragging of a credit card icon onto such a form might add his name to the form, but nothing else.
  • a method for user interaction with a web page includes displaying a web page in a web browser, displaying a user-selectable object outside the web browser on a user interface, receiving a user selection of the user-selectable object and a dragging of the user-selectable object onto the web browser, and causing a command to be performed with the web browser in response to the user selection and dragging.
  • the user-selectable object comprises payment card information for a user of the web browser
  • selection of the user-selectable object comprises dragging the user-selectable object to a payment icon on a web page associated with a merchant
  • the command causes a payment to be made to an account that corresponds to the merchant, the payment coming from an account that corresponds to the payment card.
  • the disclosed methods can provide one or more advantages in certain implementations.
  • the method can be implemented to require affirmative authorization by the user before the web forms are filled with previously-stored information—i.e., the act of going to get the icon or other selectable object, and then bring in it back to the form is an intentional enough act to prevent accidental divulgence of information.
  • previously-stored information may be sensitive in nature (e.g., credit card information, social security number, date of birth, etc.)
  • requiring user authorization before the stored data is accessed or used provides an added layer of security.
  • a user may try to secure such information by keeping sensitive information in trusted places (e.g., only taking out a credit card out of a purse or wallet when a purchase is about to be made).
  • trusted places e.g., only taking out a credit card out of a purse or wallet when a purchase is about to be made.
  • constantly having to retrieve the sensitive information from its trusted place can be time-consuming and inconvenient. For example, if a person is sitting on her bed while using her laptop to make a purchase, it would be inconvenient for that person to have to go and retrieve her purse from another room every time she wished to buy an item online.
  • the disclosed methods do not require a user to constantly have to retrieve the sensitive information physically, decreasing the likelihood that the information may be lost or compromised in transit prior to or after being entered into a web form (e.g., constantly having to retrieve a credit card resulting in misplacing the credit card).
  • the shopper may have to fill out forms (e.g., credit card information) requiring multiple pieces of information that may be prone to typographical errors by the user (e.g., long credit card numbers).
  • forms e.g., credit card information
  • the disclosed methods allow the user to simply click and drag an icon associated with her credit card in order to obtain her credit card information and use her credit card to make a purchase.
  • the shopping page the user is browsing may store her credit card information.
  • the disclosed method advantageously does not store the sensitive information with a third party (e.g., a third party merchant), protecting the information from potential security breaches relating to the third party, and further requires the user to affirmatively indicate and intent to submit her information.
  • FIGS. 1A and 1B are diagrams showing web page previews in a tabbed browser system.
  • FIG. 1C shows a screen shot of a browser having a slidable information panel.
  • FIG. 1D shows an example of using a draggable icon to provide information to a web page form.
  • FIGS. 1E-1I show screen shots of example supplementary controls that can be provided with a web browser in an operating system.
  • FIG. 1J shows a screen shot of an operating system displaying thumbnails of recently visited web pages that a user can select.
  • FIG. 1K shows a screen shot of an operating system displaying thumbnails of recently visited web pages that a user can select.
  • FIG. 1L shows example screen shots of web pages in maximized and minimized forms.
  • FIG. 1M shows an example of using a draggable icon to provide login information to a web page.
  • FIGS. 2A-2G show screen shots from a system for forming meta-web pages.
  • FIG. 3 is a screen shot of a chrome-less browser displaying a search screen in an operating system.
  • FIG. 4 is a schematic diagram of a mobile computing device for interacting with a user of a web browser system.
  • FIG. 5A is a flow chart of a process for displaying web page previews when switching between web pages.
  • FIG. 5B is a flow chart of a process for interacting with an information panel that may be displayed with a web browser.
  • FIG. 5C is a flow chart of a process for automatically generating a favicon for a web page.
  • FIG. 5D is a flow chart of a process for providing information to information receiving elements on a web page, such as fillable forms.
  • FIG. 5E is a flow chart of a process for displaying web page data for a page in multiple formats.
  • FIG. 6 shows an example of a computer device and a mobile computer device that can be used to implement the techniques described here.
  • This document describes systems and techniques for providing interaction with a user of a computing device, such as a mobile smart phone, using, for example, elements of an operating system that runs on the device.
  • the system and techniques may provide various output mechanisms that can be implemented visually, audibly, or via touch, and input mechanisms for controlling the device.
  • Multiple particular example techniques are described here, and the techniques can be implemented individually or together with other aspects of an operating system.
  • One particular technique described in greater detail in multiple implementations below involves dragging an icon or other visible object that represents a set of data from a source location on a user interface to a target location, where the target location represents a receiver of such information, such as a web form that can be filled out of the user.
  • the user action of dragging the icon or other object to the receiver may be interpreted by a system as showing a user intent that the information represented by the object can be provided to the form and the form be automatically filled out.
  • the object e.g., icon
  • the particular information for the object may be stored within or without the browser.
  • the information may be stored in the same way that other form-filling information is traditionally stored for a browser, and the browser may be programed to keep the information secure except in conditions where the user performs the inputs described here (though a user can turn such a feature on or off, in a configuration page). In such a situation, the user will need to trust the browser, which is relatively easy to so since the major web browsers are produced by reputable companies.
  • the information may be stored with the particular object, and outside a browser or other application to which the information is to be provided.
  • a browser designer may publisher an API by which information is to be shared with pages in the browser, from such objects. Objects that comply with the API can be displayed on a desktop of an operating system, and the operating system may mediate data transfer between them according to the rules of the API.
  • FIGS. 1A and 1B are diagrams showing web page previews in a tabbed browser system.
  • the displays show how a user of a web browser can be shown what obscured pages look like so that they can determine whether to switch the browser's focus to those pages.
  • a first display 102 shows a mechanism for previewing obscured pages one page at a time.
  • a tabbed web browser is shown displaying a number of pages such as page 110 , which includes a URL and search entry area 108 , a tab 106 , a favicon 106 A on the tab, and a page title 106 B on the tab, and an information bar 104 .
  • Tabs for other pages that have been loaded by the browser are also shown, but those pages are obscured—hidden behind the page 110 that is the focus of the browser.
  • the browser display is much like that of the current GOOGLE CHROME browser.
  • the browser in this example can b integrated with the device operating itself, and can be the only application to run on the device, where any applications to be run by the user must run under the browser.
  • a pointer 112 is shown over a tab for one of the obscured pages, thus indicating that a user has placed their finger on a touch screen over the tab, or is hovering the pointer over the tab using an input device like a mouse.
  • a preview 114 of the web page that corresponds to the tab has been displayed on top of the page 110 .
  • the preview may be a thumbnail image of the current page, and may be displayed until the user stops hovering over the tab or selects the tab. If the user stops hovering, the preview 114 may simply disappear, and if the user selects the tab, the page 110 may become an obscured page, the tab where the user was hovering may jump forward, and the previously obscured page may become the focus page.
  • FIG. 1B shows a similar application of the concepts discussed here, but with a preview of multiple pages.
  • the main page and the browser have slid downward in response to a user selection with a pointer in an area that was previously above a top edge of the browser such as on an operating system background at the very top of a display 104 .
  • three previews 114 A, 114 B, 114 C have been displayed in the now-vacate space above the browser tabs, and in alignment with the tab for the obscured page that corresponds to the particular preview.
  • the previews are thumbnails formed in a familiar manner from a current view of each of the obscured pages.
  • the user may return the system to its original state and make the previews disappear by moving their pointer back into the body of the page 110 , or they may switch the focus to one of the displayed pages by selecting one of the previews 114 A, 114 B, 114 C.
  • the browser as shown in FIG. 1B is more chrome-free than is the browser shown in FIG. 1A .
  • the former browser does not include information bar 104 .
  • various other forms of browsers may include preview mechanisms like those just discussed.
  • An alternative mechanism for displaying multiple previews is to display multiple previews in a manner like the preview 114 in FIG. 1A , an aligned beneath each relevant tab. In such a situation, the top of the browser would not have to be moved down, through the previews may obscure part of the page 110 that is the focus of the browser.
  • FIG. 1C shows a screen shot of a browser having a slidable information panel.
  • the browser is a tabbed browser where a number of different pages have been opened by the browser and one particular page 136 is the current focus of the browser.
  • the information panel 124 may be associated with a selection mechanism 126 that is like the selectable control 118 of FIGS. 1A and 1B , where a user selection of the mechanism 126 causes the panel 124 to be displayed. When the panel is displayed, it can slide in from off the side of the display 120 and push existing items on the display to the right. Alternatively, and as shown here, the panel 124 may slide over the top of the page 136 having tab 122 , and then may slide back when the mechanism (whose arrow changes direction between the two states) is again selected.
  • the panel 124 may display a variety of categories of information, and a user may be allowed to select the appropriate categories and layout for their panel 124 .
  • the categories include bookmarks 128 , web browsing history 130 , and a chat application 132 .
  • the bookmarks are, as is known, titles and links to web pages that the user has previously identified as being important to them.
  • the history is a list of names and links to pages that the user has visited.
  • the bookmarks and history may be combined into a single list.
  • the chat application 132 takes a well-known form and shows icons of friends who are currently on-line, and provides a mechanism by which the user may type notes back-and-forth with those friends (e.g., in a text box 134 ).
  • bookmarks section 128 The focus in this figure is on the particular display of the bookmarks section 128 . That section is captioned with an icon and title 128 A, and is provided with a listing for each bookmarked page.
  • the history section 130 could be similarly displayed, though it is shown generically here for clarity.
  • Each entry in the listed bookmarks includes a favicon 128 B, a title 128 C, and dynamic content 128 D.
  • the favicon may be provided by a publisher of a web page that corresponds to each entry, or can be automatically generated by a process like that described in detail in relation to FIG. 5C .
  • an image may be taken from the page to generate the favicon, or a topic for the page may be determined by analyzing the page, the topic (or topics) may be submitted to an image library, and one of the results from the library may be reformatted and assigned as the favicon.
  • the title 128 C takes a familiar form. It is static content that provides a plain-english description of the web page, and may be obtained from a corresponding tag that an author of the page has provided.
  • the dynamic content 128 D is appended to the title, and represent a variety of information associated with the page.
  • the dynamic content may include scores from ongoing sporting events (as shown by the ESPN entry in FIG. 1C ).
  • the dynamic content may be the current weather in the city of the newspaper (as shown by the Star Tribune and Maui newspaper entries).
  • the dynamic content may be a headline for a current news story (as shown by the New York Times and Wall Street Journal entries).
  • the content may be single content or multiple content.
  • a single piece of content may be statically displayed, though updated when a change to the content occurs.
  • the temperature for Minneapolis may be updated in the Star Tribune entry if the temperature changes.
  • the content may continually change to present different sub-categories of information that falls under a common category.
  • the scores of all ongoing baseball games may be displayed in the dynamic content 128 D in succession.
  • the display may be, for example, in the form of a slide show, where the displayed game clicks from one to the next every several seconds.
  • the change may also be animated, such as in a horizontally moving ticker-tape fashion, or in a vertically scrolling fashion, where the system can pause when each score has been fully displayed on the line.
  • the information may be provided in various known manners, such as in a feed like an RSS feed.
  • a relationship may be drawn between the underlying page and the relevant feed so that the two can b properly coordinate, in a variety of manners.
  • the page make include a tag that has a reference to the feed, and the browser can read that tag in order to start receiving information from the feed that can be placed into the dynamic content 128 D.
  • the system shown in the figure can provide a user with much more useful information in a listing of page names. Such a listing may then be displayed more frequently by a user, even if such display takes up space on the screen. The user may then benefit from having additional information and quicker access to pages that are listed in his or her bookmarks or history list.
  • FIG. 1D shows an example of using a draggable icon 148 to provide information to a web page form.
  • the icon provides a simple mechanism by which a user can enter the information without having to type it from scratch. Yet the mechanism is more secure than are auto-filling forms, as the user has to take affirmative action before the information that is represented by the icon 148 can be given to a provider of a web page—that is, the form is not “auto” filled. In this manner, the user may have a relatively simple, yet relatively secure, experience. Particular description of a process is provided below in relation to FIG. 5D .
  • a display 140 which may be all or a portion of a graphical display on a computing device such as a laptop computer, a netbook, or a smart phone. Shown on the display, in a mostly chrome-free manner, is a browser 142 that displays a primary web page and shows tabs for a plurality of obscured web pages that have been opened in the browser but that are not currently the focus of the browser.
  • An advertisement 144 displayed on the browser 142 on the primary page includes an icon 146 that is a selectable control for submitting information to a fillable form.
  • the advertisement is in the form of a gadget that is rendered in an iFrame element on the page.
  • the advertisement is to receive access to an on-line newspaper subscription, and the user can enter his email address to establish an access credential.
  • Mechanisms are also provided for the user to identify how long he wants the subscription for, and to select URLs that will take the user to screens for entering billing information manually (e.g., “epay” and “enter credit card data”).
  • the advertisement 144 also provides a mechanism in the form of icon 146 and its underlying code, to provide credit card and other billing information almost fully automatically.
  • the process is not fully automatic, however, as it requires a particular affirmative action by the user.
  • the icon 146 is labeled with the name of such a technology (“drag pay” in this example) so as to alert the user of the availability of such a simplified and secure information submission technique.
  • drag pay in this example
  • the user in this example previously filled out a form with his credit card information so that the application underlying icon 148 can pass on that information, and such storage and passing of information may be in a format that complies with a public API so that the application that underlies icon 146 may properly handle the information it receives. Receipt of the draggable icon 148 by the web browser indicates user authorization to access user information, which, in some instances, may be sensitive in nature.
  • the user may drag and drop the icon 148 on other icons, images, text, or other elements for receiving information submissions on the web page.
  • the user may drag and drop icon 148 directly onto a fillable web form, causing the form to be populated with previously-stored information.
  • the form may contain a single entry to be filled by the user (e.g., “Full name”) or multiple entries (e.g., “last name, first name, street address, city, state, zip code”).
  • a display 740 which may be all or a portion of a graphical display on a computing device such as a laptop computer, a netbook, or a smart phone. Shown on the display is a browser 742 that displays a primary web page and shows tabs for a plurality of obscured web pages that have been opened in the browser but that are not currently the focus of the browser.
  • a login page for an e-mail account 744 displayed on the browser 742 on the primary page includes an icon 746 that is a selectable control for submitting information to a fillable form.
  • a user may login using the entry boxes shown.
  • the login page 744 is in the form of an e-mail login page.
  • the login page requests a user to enter his user name and password to establish an access credential.
  • a user may have a draggable e-mail icon 748 that corresponds to an e-mail account he has with the e-mail provider displayed on the browser 742 .
  • the image or text on the draggable icon 748 may correspond with the e-mail page so the user can clearly identify the draggable icon 748 as being associated with that particular page.
  • the user has clicked on the icon 748 , dragged it over to icon 746 and released, so as to indicate an intent to have his e-mail login information applied to the application that underlies the icon 146 .
  • the user in this example previously filled out a form with his e-mail login information so that the application underlying icon 748 can pass on that information, and such storage and passing of information may be in a format that complies with a public API so that the application that underlies icon 746 may properly handle the information it receives.
  • FIG. 1M relates to an e-mail web page
  • other types of login pages are contemplated.
  • other draggable icons may be used by a user to login on any other type of secured web pages that require a user to enter a user name and a password, such as shopping web sites, calendar or scheduling web sites, and photo album web sites.
  • the user information (e.g., credit card information, login information) is stored by the web browser any time the user enters user information—but a user may establish the settings for the browser so that the information (or at least certain types of information) are not filled in automatically into web forms, but instead is only filled in when a user performs the sort of functions described herein.
  • the browser may, in some embodiments, prompt the user to authorize the browser to save the user information or to create a draggable icon associated with the entered user information.
  • the browser may further prompt the user to assign a description to the newly-created icon associated with the entered user information (and perhaps to select an icon image from a list where the particular content does not plainly have an image already associated with it). For example, if the user has just entered her credit information, she may label the newly-created icon “American Express” so that the icon is easily identified for future use.
  • use of the icon i.e., dragging and dropping of the icon to access the information associated with it
  • FIGS. 1E-1I show screen shots of example supplementary controls that can be provided with a web browser in an operating system.
  • a tabbed browser is shown with three opened pages on top of a desktop in an operating system.
  • a web page is displayed in the browser, and a search box is displayed off the upper left corner of the browser where the presence of tabs has forced the top of the browser to fall slightly and thus make room for the search box.
  • the browser is also pushed in slightly from the left edge of the desktop to make way for small icons along the left edge of the display, that the user may select in order to have additional information displayed to them.
  • FIG. 1F shows the complete column of icons after a user has selected an icon relating to the user's contacts. Such an action has caused a contacts-related panel to slight out from the column of icons, which has pushed the browser to the right in the display. The panel could also be configured to slide over the top of the browser.
  • the contacts application takes a familiar form, and shows the computer-related status of various contacts. Other common applications are also represented by icons in the column, and a user may be permitted to add o remove such icons as they see fit so that they can represent applications that they use most often.
  • the contacts application has become more specifically a chat application and its position has changed so that it has now popped up from the bottom of the display.
  • the other on screen elements have generally stayed the same.
  • the chat application could also be minimized so that its title bar would appear along the bottom of the display. Title bars for multiple minimized applications could also be displayed adjacent to each other.
  • FIG. 1H a user has selected to see applications supported by their device that are now represented in the column along the left-hand side of the screen. As a result, a cluster of icons for the various applications has been generated, and again the browser has been pushed to the right.
  • the invocation of certain application from the column can push the browser to the side, while the innovation of other application may cause on screen items to be generated over the top of the browser.
  • FIG. 1I shows a toolbar that can be generated along the top edge of the display, such as by a user hovering a pointer near the top edge.
  • This toolbar takes a form very much like the GOOGLE TOOLBAR, and includes a search box and icons for a number of features that are supported by the toolbar.
  • FIG. 1J shows a screen shot of an operating system displaying thumbnails of recently visited web pages that a user can select.
  • a display can occur, for example, when a user chooses to minimized the browser shown in the prior figures. As can be seen, such minimizing has cause the browser to slide to the bottom of the display so that only the tabs and some of the toolbar is showing.
  • the thumbnails in this example cover two categories and take two forms. A first category is the user's most visited sites, and the thumbnails may show a near-literal screenshot, in the shape of a screen, for such pages, much as currently occurs in the GOOGLE CHROME browser, or for the INTERNET EXPLORER browser where the GOOGLE TOOLBAR is installed.
  • the content from the pages may be current (e.g., it may be fetched when the user minimizes the browser) or historical (i.e., it may show the sites as they existed the last time the user visited them).
  • the other category of thumbnails is a history of recently visited sites for the user, and the thumbnails for these sites are variable in size. In particular, they represented the actual content of the entire web page. Short pages are thus shown at a higher level of magnification and are also relatively short. Longer pages are shown at a lower level of magnification and are also long. Also, the thumbnails for recent pages can be larger than the thumbnails for older pages so as to given a better visual impression of a timeline. A user can select any of the thumbnails in order to instantiate one of the underlying pages in the browser.
  • FIG. 1L shows example screen shots of web pages in maximized and minimized forms. Such features may permit publishers of page content to provide long-form and short-form content, and thus to maintain a user's interest both when they are focused on the browser and when they are not. A particular process for provided such functionality is described in respect to FIG. 5E below.
  • a browser like that in the figures above has opened three pages and is focused on one page, the New York Times.
  • a user has made a selection to minimize the browser, and as a result, the browser in its initial form has disappeared (though it may also simply move to the bottom of the display).
  • onscreen objects that take look like, and can actually be implemented as, widgets or gadgets.
  • Each of the objects corresponds to one of the previously-opened pages from the browser, and displays information that corresponds to the information displayed on the related page, but in a smaller form.
  • the first page is a page for the New York Times
  • the corresponding object shows the same page title as the page, but displays only national headlines because the Times is a national newspaper.
  • the particular headlines may be provided in a news feed from the times, where the identifier for the news feed has a direct relationship to the identifier (i.e., URL or partial URL) for the page, so that the browser can readily identify the feed from which it is to draw information in populating the object.
  • the second web page is the local news page for the StarTribune newspaper, and the object shows local news headlines.
  • the headlines may be part of URLs that a user can click on to be taken to the web page for the paper that carries the relevant story.
  • each page may have a feed, each section may have a separate feed, or the entire web site may have a single feed. Generally, larger sites having funded owners will have more feeds.
  • the third page in this example is the ESPN sports site, so the dynamic content in the feed is sports scores. More particularly, the user was on the Major League Baseball page when they minimized the browser, so they are getting feeds that are specific to baseball games that are currently being played.
  • FIGS. 2A-2G show screen shots from a system for forming meta-web pages.
  • the meta-pages permit a user to combine various individual pages, each from the same domain or from different domains, in various manners so as to create a topical page whose individual components can be accessed by basic scrolling up and down the meta-page.
  • a user could form a meta-page by dragging onto it pages from all the major national newspapers. Each morning, the user could simply scroll down through the meta-page to see the headlines from all of the newspapers (where the meta-page may have its own URL or pseudo-URL that can be saved as a bookmark for the user), rather than having to individually load each page and switch between tabs for each page.
  • FIG. 2A shows a zoomed-out representation of a meta-page on an operating system desktop.
  • the meta-page includes two sub-pages—an email page and a calendar page. So the user has, in effect, create a personal information manager page.
  • FIG. 2B the user has selected to view the page by clicking on the meta-page in FIG. 2A (a indicated by a lingering selection dot in FIG. 2B where the meta-page had previously appeared in FIG. 2A ).
  • FIG. 2C shows that the user has scrolled down somewhat in the meta-page and is showing both the GMAIL sub-page and a calendar sub-page below it.
  • the user has scrolled down even farther in FIG. 2D , to the end of the calendar sub-page, to a New York Times sub-page.
  • the user could have added that sub-page by highlighting the meta-page, and then typing “www.nytimes.com” or “New York Times” the search box on the display.
  • the small representation of the page may have been added to the meta-page as shown in FIG. 2A .
  • FIG. 2E the user has typed the domain for the New York Times into the navigation box at the top of the display, and the page has jumped so that the New York Times
  • FIG. 2F the user has scrolled back up to the GMAIL application or has typed appropriate information into the navigation box to have the screen scroll up to that same point automatically.
  • the user has also selected an icon showing a picture of a friend so as to start a chat session with that friend.
  • a chat application has opened a sub-window at the top of the display where the users can carry on a conversation.
  • the meta-page has been minimized an the view has returned to the desktop.
  • the user has dragged the New York Times sub-page from the first meta-page and onto the desktop so as to begin creating a second meta-page.
  • the user has since typed two URL's into the navigation box so as to add pages for those two URL's to the newly-created second meta-page. The user may then select one of the reduced-size renderings of one of the two meta-pages so as to continue their work.
  • FIG. 3 is a screen shot of a chrome-less browser displaying a search screen in an operating system.
  • This view again shows icons in a vertical column along a left edge of the display (though it could be shown against other edges or as a floating toolbar).
  • the page displayed in the browsers is a GOOGLE search home page, and the display also shows a universal search box on top of the page, where the user may enter queries into either search box.
  • a graphical history is shown along the right edge of the display, where thumbnails of recently visited pages are showing with increasing overlap, so that recent pages can be seen fully, and more distant pages can be seen less completely.
  • FIG. 4 is a schematic diagram of a mobile computing device for interacting with a user of a web browser system.
  • the device is shown here in the form of a smart phone, but make take various other forms, such as a desktop personal computer, a netbook, or a laptop computer.
  • the mobile device 402 is a slider-based smart phone having a touch-screen 404 for input and output and a trackball 406 as an alternative input mechanism.
  • the display 404 shows an example of a mapping application being displayed in a chrome-free browser a manner like the pages above, and also an information panel like that discussed above.
  • a number of components are shown schematically inside the device 402 to indicate components in the device that are associated with the features, and used to implement the features, discussed in more detail above and below.
  • One or more of the components may be implemented as part of a programmable microprocessor on the device 402 , though the particular components are shown separately in this example for clarity of explanation. Other arrangements of components are also contemplated.
  • the device 402 includes a display manager 408 to control various elements to be shown to a user on the touch-screen 404 , while an input manager 412 manages inputs received from the touch-screen or other mechanisms such as trackball 406 .
  • the display manager may receive information from various applications and from other components of the operating system, and may determine what elements to display in relation to other elements, which elements to hide, and how to show visible elements in relation to each other.
  • the input manager 412 may coordinate with the display manager so as interpret actions that a user takes with the device. For example, a user may place their finger on the touch screen 404 or may move a pointer on the touch screen 404 and then make a selection.
  • the input manager 412 may refer to the display manager to determine what item the user selected by such an action, and may generate an event that may be reported to various other components that may be subscribing to such an event, such as by using event manager 410 .
  • the device 402 may be provided with various services that may be made available to applications running on the device and/or to the operating system of the device.
  • a GPS module which may be a common commercially-obtained module, may make determinations about a location of the device 414 and provide such information to various applications, such as applications that provide driving directions, that provide the user's location for reference by friends of the user through a social network, and the like.
  • a spelling corrector 416 may provide a service that is generally available to various applications running on the device, so that those applications can correct data that the user has input or otherwise notify the user about problems with the input.
  • a vibrator may be provided to give haptic feedback to a user.
  • the vibrator may have an associated controller (not shown) that can be called by various applications or services on the device.
  • the spelling corrector 416 may cause the device to vibrate whenever a spelling error is identified by the spelling corrector 416 .
  • a sounds controller 424 and related audio speaker may be provided to give a user additional feedback, such as in the form of tones or synthesized speech.
  • Various applications 418 , 420 may run on the device and may provide data for graphics to be displayed through the display manager 412 .
  • the applications may be part of an operating system on the device 402 , or may be added by a user of the device, such as from an on-line marketplace.
  • a first application is a mapping application and may run as a standalone application or an application or plug in that runs in browser application 420 .
  • the browser application may be a standalone application or a component that is built into an operating system that runs on the device 402 , and may generate displays like those described in detail elsewhere in this document.
  • Various messages for the operating system and the applications may be received over a network such as a wireless communications network connected to the internet, via a wireless interface 426 .
  • Information received from the network such as from one or more remote servers, may be provided to the applications 418 , 420 , and information may be passed from the applications 418 , 420 back to the network.
  • the persistent storage may include various data stores, such as application data 428 , dictionary data 430 , and user information 432 .
  • the dictionary as described above, coordinates with and is used by the spelling corrector 416 .
  • the application data 428 may include whatever data the various applications need in order to perform their functions. Depending on the application, more or less data may be stored locally on the device 402 as opposed to being stored on a remote server system.
  • mapping data e.g., map tiles that show images of a portion of a geographic area
  • a remote server may dump the data soon after.
  • the user information 432 may include specific information about one or more users of the computing device 402 .
  • the user information may include profile information for the user, as well as setting information that controls the interaction of the device 402 with the user, and that can also control the manner in which various applications operate on the device 402 .
  • three various data stores are shown here for clarity, much other information would be and can be stored on device 402 , and need not be arranged as shown here.
  • FIG. 5A is a flow chart of a process for displaying web page previews when switching between web pages.
  • the process involves displaying, in response to user input, representations of web pages that are open in the browser but that are not currently the focus of the browser, such as secondary pages in a tabbed web browser.
  • the representations of the pages may be formed as thumbnail images of the obscured pages, and may be shown to a user when the user is determining which page to switch to, in matters like the examples shown in FIGS. 1A and 1B above.
  • a computing device displays a web browser window that has one or more visible open pages on it and one or more obscured pages.
  • An open page in this example can be a single web page, or a meta page that is constructed from multiple separate pages as described with respect to FIGS. 2A-2G above.
  • a web page may also take other formats, and may display content that is remote from the computing device, or content that is local to the computing device, or both, and can be made up of any appropriate type of display that can be generated on a pane or tab for a web browser.
  • the visible open page will generally be represented as a page that lays visually on top of the obscured pages.
  • the obscured pages generally will have most or all of their page content hidden behind the visible page, with a visual element, such as a tab, extending from an edge of the visible page.
  • the extending element, such as a tab can generally be selected by a user by clicking on the element, which will cause the selected obscured page to become the visible page by visually moving in front of the page that was previously the visible page.
  • Other obscured pages may then be selected in a similar and familiar manner by the user.
  • the process receives a user input indicating an intent by the user to check the obscured pages. For example, the user may want to review content that they believe is on one of the obscured pages, but they may want to check the pages before making a switch because they are not sure which page contains the desired content. Alternatively, a user may desire to determine whether content on a page has been updated since the last time they reviewed it, but without having to switch entirely to that page. As a result, the user may wish to see a form of page preview for each of the obscured pages so that they can make a determination whether to switch to one of such pages.
  • the user may express their intent to check the obscured pages in a variety of ways.
  • a user may express the intent to see a preview of a particular obscured page by hovering their pointer over a tab for that page.
  • the user may express intent to receive a preview of all of the steered pages by hovering their pointer above an area where all the tabs are displayed, such as a background area that appears around the tabs for the web browser.
  • a user may provide a voice command indicating an intent to preview pages, such as by speaking “switch page.”
  • the user may indicate such intent by way of a keyboard input, such as by entering a key combination.
  • One such technique for switching between applications in an operating system is the ALT-TAB key combination of MICROSOFT WINDOWS.
  • the process grabs a screenshot of one or more of the obscured pages.
  • Such acquisition of an image of the page may occur in real time after the user indicates their intent, so as to provide a most updated image of the page, or may have occurred previously, such as the last time the user loaded the page, or at another appropriate time. Acquisition of the image may occur in various known manners, and the particular manner may depend on the level of resolution desired, the size of the preview desired, and other similar factors.
  • the image may be generally of a reduced size compared to the entire page, and be known commonly as a thumbnail image of the page, so that it may be displayed conveniently to a user without obscuring a large portion of the display on the computing device.
  • the term thumbnail is used here to represent such an image that is substantially reduced in size from the source image that is represented by the thumbnail.
  • the computing device displays the thumbnails of the one or more obscured pages adjacent to the page tabs.
  • Such display may of all or fewer of the steered pages. For example, where the display is invoked by a user hovering over a tab for a particular page, the display may be of that page only. However, when the input by the user indicates an intent to review more than one obscured page, the display may be of all of the pages, and the thumbnails may be aligned in a manner like that shown in FIG. 1B above.
  • the system receives a user selection of a thumbnail or a corresponding tab for the thumbnail. For example, where a user has clicked on a display to invoke a thumbnail selection process, the user may subsequently click on one of the thumbnails that is displayed to indicate their interest in having the page associated with a thumbnail become the focus page for the web browser. Alternatively, where a key combination is used to start the process, the selection may be made by releasing the selected keys.
  • the process changes the selected obscured page to a visible page, and changes the previously visible page to an obscured page.
  • Such transition is similar to known processes of switching a tab that is the focus in a tabbed browser system.
  • the previously obscured page may be moved visually forward in a group of tabbed pages is so that its tab is shown extending from the page, and other tabs are shown extending from behind the page so as to indicate visually that the other pages are obscured behind the new page that is the focus of the browser.
  • the user may then make additional selections to change pages, repeating the above process, and the thumbnails that were previously displayed may be maintained in position for the user or may be removed, and the browser display may return back to its general orientation from before the user indicated an intent to change to a different page.
  • FIG. 5B is a flow chart of a process for interacting with an information panel that may be displayed with a web browser.
  • the process involves displaying a panel in relation to a web browser, where the panel includes particular information about the web browser and pages to be displayed on the web browser.
  • the information may include, for example, information that is correlated to pages that a user has bookmarked, or that are in a user's recent browsing history.
  • a webpage is displayed along with a panel-invoking control.
  • the information panel is not initially displayed with the browser, so that the maximum amount of screen space may be devoted to displaying the web page itself, rather than controls for the browser.
  • the panel-invoking control may be displayed as a small visual element near the edge of the page or the browser, and may take the form of an icon where the icon visually indicates to a user that its selection will cause information that is currently hidden off the edge of the display to be moved onto the display.
  • the icon can include an arrow or other similar visual cue that shows that selection of the icon will cause such a transition to occur.
  • a computing device receives a user selection of the panel-invoking control. Such a selection may occur in a variety of manners, such as by a user clicking on the panel-invoking control, the user clicking on the control and dragging the control inward toward the middle of the display, or a user swiping onto a touchpad from off the surface of the touchpad and into the touchpad at a side of the touchpad that corresponds to the side of the browser in which the control is displayed.
  • information panel is animated into position over the top of a part of the web page, by sliding the panel off the hidden edge of the display and onto the display.
  • the panel may push the web page to the side and be displayed adjacent to the web page.
  • the panel can display a variety of information and include a number of controls that are selectable by the user.
  • the panel may display a list of bookmarks in the form of titles of web pages that the user has previously indicated to be of interest to them, as is well known.
  • the panel may similarly display a list of pages that represent recent pages the user has visited, in the form of a history of pages.
  • bookmarks and history may also be combined, so that bookmarks are automatically selected by the browser as pages that the user has visited frequently in the past, and are automatically arranged into topical groups or other standards, including the frequency with which the user has visited those pages.
  • a list of pages may be initially sorted in a reverse chronological order to represent pages that the user has visited recently, but pages that have been visited frequently may be elevated in the ranking in the list of pages above pages that have been visited recently but infrequently.
  • the information panel may also display information controls for other topics, such as a graphical display of a chat application showing friends of the user who are currently online, and controls to change settings for the browser, such as security settings and the like.
  • the panel may include a search box into which a user may enter a search query in a familiar manner.
  • the process fetches real time information about web pages from providers of the web pages.
  • the web pages from which information is fetched can include the web pages listed in the history or bookmarks.
  • the process (via the computing device on which the device is running) may make a call to the web page itself, the web page may include tags or other information that designate brief, updated, summary information for the page, and the browser may extract such information.
  • the process may make a call to a page that is related to the underlying web page, such as a page having the same name as the underlying web page but that is located in an adjacent predetermined path relative to the underlying web page or that has an extension that differs from that of the underlying web page but that has the same name.
  • the information provided to the process may take a variety of forms but generally takes a form of information that can be displayed in a very small space and that relates to the underlying webpage. Such information commonly can include news headlines, sports scores, press release headlines, and other brief and topical information associated with the underlying web page.
  • the real-time information that has been gathered relating to the web pages is added to the titles of the web pages listed in displayed to the user. For example, as the information is received, it may be added to the right of the web page names in the history or bookmarks list that is displayed in the information panel.
  • Such real time web page information may be displayed statically or dynamically.
  • Static display may involve showing a single set of information in the panel and maintaining that information in the panel.
  • Dynamic display may include showing initial information in the panel and then changing to additional information, such as in the form of a textual slideshow, or in a ticker-tape type of presentation.
  • a browser may make lists of web page titles that are more useful to a user of the browser, and the user may leave the information panel in place while they are browsing (because of its added usefulness) instead of removing it from the display of their computing device. For example, a user may appreciate seeing headline updates for their various favorite pages and thus may leave the panel open to the side of the pages. Also in this manner, basic Web bookmarks may gain some advantages of web widgets or gadgets, by having dynamic content displayed along with the web page names represented by bookmark or history listings.
  • FIG. 5C is a flow chart of a process for automatically generating a favicon for a web page.
  • the process involves identifying web pages that do not have a favicon and generating automatically valid favicons for those pages.
  • a favicons is generally understood to be a small icon corresponding to a web page or web site that helps communicate to a user of a computing device the identity of that web site. Icons are frequently shown in title bars of web browsers when a web page is displayed, or next to a list of web page titles when a web page history or bookmarks are displayed. Favicons may be useful in helping a user quickly identify a particular web page in a list of many web pages, without having to carefully read each of the web page titles.
  • the process begins at box 526 , where a command is received to show a web page title.
  • the command may be implicit, such as by a user selecting a control to show a list of bookmarks or a web page history that include many web page titles.
  • the command may be implicit in a user typing in a URL of a webpage, a browser opening the webpage, and the browser including in a title bar a name or the webpage and a favicon for the webpage.
  • a process may begin to create automatically a favicon for the webpage.
  • a page URL for the relevant web page is submitted to a page classifier.
  • the page classifier may include, for example, a classifier that analyzes words and metadata regarding a page, and perhaps other pages at a similar addresses or links to the page, and generates one or more words than are topics for the page. For example, a Bayesian analysis may be used to group words and compare them to groupings of words for other pages, so as to identify topics for the page.
  • the page classifier may be a service that can be accessed externally by the process, such as a service used to classify pages for the GOOGLE AD SENSE service.
  • a sports-related web site may have a number of articles, or a page of that site may have an article, that uses the names of professional athletes and words like baseball, bases, steal, game, and other such words.
  • An analysis of that page could generate the term “baseball” or the term “Major League Baseball” as a topic for the page.
  • the process receives from the page classifier the page topics.
  • the page topics may be received, for example, in the form of single or multiple words, including, from the prior example, the term “Major League Baseball.”
  • One or more received terms may then be submitted to an image database, such as the GOOGLE IMAGE SEARCH service.
  • a submission may also be accompanied by one or more parameters, such as a parameter to request images of a certain size or type. For example, small images that are easily converted into a favicon can be requested, so as to avoid gathering images that have too much detailed for reduction. Also, the request may be made for only line drawing images, as those images may be easier to reduce in size satisfactorily.
  • the multiple terms maybe he submitted to the image database, and one image may be selected from all the results returned from the multiple requests. For example, a highest-match image that is common to the search results from multiple of the requests may be selected as the most relevant image. Alternatively, an image that is determined to be the most relevant and yet of a quality that can be reduced satisfactorily, such as a line drawing, may be selected. Multiple best images may also be selected, and may then be displayed as an animated favicon that indexes through the multiple images.
  • the image for the favicon may also be selected as an image that is on the page itself.
  • the process may determine that an image near the top of a page is likely to be a logo for a company, may extract that image from the page, may crop the image to make it square or to focus solely on the logo, and may convert the image to a favicon.
  • An image may also be built up by the process, rather than being a pre-existing image that is selected.
  • the favicon can be represented by the letters “MLB”, by determining that those letters correspond to the topic Major League Baseball.
  • the image database may be made up of a limited set of images having an associated topic that corresponds to topics generated by the classifier. For example, an image of a football and baseball may be associated with the term “sports,” and that image may be used whenever the classifier returns the word “sports” for a page.
  • the process determines a color for the favicon. Selecting a color or a favicon may further help a user of a web browser quickly identify the favicon. For example, certain organizations or topics are readily associated with a particular color (e.g., UPS and brown), and a user of a computing device may more quickly form such an association in their mind, than if the color were absent. Selecting the color may occur in various manners, such as by identifying a background color or the page, a color for a logo that is imaged near the top of the page, or by other mechanisms. The color may then be applied to the image that was selected in the prior steps, such as by applying the color as a background color for the Favicon.
  • a color for the Favicon may be applied to the image that was selected in the prior steps, such as by applying the color as a background color for the Favicon.
  • a custom favicon is generated and is displayed in the web browser next to the page title.
  • the favicon may also be stored, either on a user's computer device or on a server, so that the preexisting favicon may be served to the user when they display the name of the web site in the future.
  • the favicon as generated may be shared with other users through a server system that is associated with the web browser.
  • the server system itself may perform the process described above in a bulk manner, by identifying pages that it has indexed but that do not have favicons, and the analyzing such web pages and subsequently making the generated custom favicons available for use by instances of the web browser that user might employ.
  • FIG. 5D is a flow chart of a process for providing information to information-receiving elements on a web page, such as fillable forms.
  • the process involves providing the data to an element such as a fillable form in a webpage in a relatively secure manner.
  • the process begins at box 540 where a web page having a fillable form is displayed.
  • the fillable form may be presented in a variety of manners, including by displaying a plurality of text entry boxes into which a user may type information, such as personal information for ordering a product or service.
  • the fillable form may also be displayed as an icon into which a user may visually place information, as next described.
  • the information to be provided to the fillable form may be any relevant information, but frequently includes personal, financial, or security information for a user. For example, a user who orders a product on-line may need to submit shipping address and credit card information.
  • Such forms may be auto-filled in common practice, but a user may not want to have certain information, such as credit card data, filled automatically (e.g., in response to no input from the user, or in response to the mere input of a few letters in a field). At the same time, the user may not want to have to locate their credit card and then type in their credit card information manually every time they buy a product on line. Thus, such a user may be provided with a application that takes their information and associates it with a desktop icon. Generally, the icon may be represented outside of the browser and secured from access by the browser or content in the browser. As shown at box 542 , the user who is faced with a fillable form such as that shown in FIG. 1D , may select the icon and drag it onto the web page where the visual element (the target element) associated with the fillable form is located.
  • the process may infer that the user would like to have their information submitted to the form.
  • Such a process requires a sufficient level of deliberate action by the user so as to substantially remove the risk that the user would submit such information inadvertently.
  • the submission of the information by the user is relatively easy and intuitive, and much easier than typing the information from scratch.
  • the process may also include security to ensure that providers of web pages do not illicitly or accidentally receive information that a user does not intend to share. For example, when the user sets up the icon for sharing data, the corresponding application may require the user to fill out a security profile that identifies the types of security to be applied to the information. Also, when the user attempts to drag the icon onto a control for a fillable form, the system may display a warning that reminds the user that he or she is sharing such information (including by identifying the particular information that is being shared), and asking the user to confirm that he or she wants to share the information. Once the security checks are met, the information is passed to the provider of the web page (box 548 ) in a familiar manner, including over a secure connection.
  • the information can be stored inside or outside the browser itself.
  • the information may be stored just like other auto-fill information is traditionally stored, through the browser may be programmed to prevent such information from filling a form until the conditions discussed here (e.g., dragging an icon from outside the browser and onto a canvas on the browser) are met.
  • the information may be stored with the object and away from the browser, so as to provide greater security. The object and the browser may then interoperate according to an established API in order to get the information into the relevant form or other target area.
  • FIG. 5E is a flow chart of a process for displaying web page data for a page in multiple formats.
  • the process involves displaying information for a web page in multiple styles.
  • the information is displayed as a full-featured web page in a browser, and in a familiar manner.
  • the page title is displayed (e.g., in a system tray) or the original full-featured page is shown in an arbitrarily truncated manner—e.g., if a user pulls the right edge of a browser window to the left, the text of the page is cut off or it wraps at the new edge of the window, but the content is the same.
  • the second style may be more akin to a gadget or widget whose content is coordinated with the content of the base web page.
  • the process begins at box 550 , where one or more web pages are displayed in a familiar manner by a web browser.
  • a user provides a command to minimize the browser and the underlying pages.
  • the process minimizes the pages, such as by providing a selectable control in a system tray, where a user selection of the control can cause the browser to be maximized again.
  • the process instantiates graphical user interface display objects in the form of widgets or gadgets that each correspond to one of the previously-displayed web pages (to the extent those pages support the process described here).
  • widgets or gadgets we refer to programming mechanisms that display data in relatively small areas, and generally on top of an operating system background.
  • the widgets or gadgets may display information that directly correlates to the corresponding minimized page. For example, if the page was a baseball page from a sport site, the object may display up-to-date baseball scores from around the league. If the page were the front page of a newspaper, the object may display headlines from that page.
  • a user selection of any of the content displayed in the object may cause the browser to be re-displayed automatically, with its focus on the particular item that the user selected. For example, if the browser previously displayed a baseball page, and a user selects a particular score in the object that appears when the page is minimized, a real-time box score may be automatically displayed in a tab of the browser when the browser is re-displayed. The prior baseball page may be maintained in another tab or may be removed.
  • the process accesses feeds from the appropriate web pages.
  • the feed may be accessed in known manners, such as how widgets and gadgets currently receive information.
  • the pointer for the appropriate feed may come from a tag that is on the original web page itself, where the publisher of the web page takes on the responsibility of publishing long-form and short-form representations of coordinated information as a service that makes more users want to visit a site operated by the publisher.
  • Mechanisms may also be provided so that a user can define the type of information from a particular page or publisher that is displayed in an object. For example, a user may define that they want to see current scores when they minimize a sport-related site, rather than receiving headlines.
  • the information received from the feeds is displayed in the objects while the page is minimized.
  • Such information may be constantly updated, such as by adding headlines to the top of a list of headlines in a topic, as those new headlines emerge.
  • the system receives a user command to maximize the browser, and in response, it displays the pages again according to how they were displayed before the browser was minimized.
  • user interaction with the objects while the browser was minimized can be interpreted and provided to the browser so that the pages displayed when the browser is maximized are different than the pages from when the browser was minimized.
  • web page publishers may maintain presence in front of users even when their pages are minimized, and user may obtain detailed information when such is there focus, and related summary information when they want to focus more on other topics.
  • the provision of the information in long and short form is also coordinated, so that a user can identify the topic in which they are interested (e.g., by navigating to a web page on the topic), and can have access to short-form information on that topic without separately finding a separate source for such information.
  • FIG. 6 shows an example of a generic computer device 600 and a generic mobile computer device 650 , which may be used with the techniques described here.
  • Computing device 600 is intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers.
  • Computing device 650 is intended to represent various forms of mobile devices, such as personal digital assistants, cellular telephones, smart phones, and other similar computing devices.
  • the components shown here, their connections and relationships, and their functions, are meant to be exemplary only, and are not meant to limit implementations of the inventions described and/or claimed in this document.
  • Computing device 600 includes a processor 602 , memory 604 , a storage device 606 , a high-speed interface 608 connecting to memory 604 and high-speed expansion ports 610 , and a low speed interface 612 connecting to low speed bus 614 and storage device 606 .
  • Each of the components 602 , 604 , 606 , 608 , 610 , and 612 are interconnected using various busses, and may be mounted on a common motherboard or in other manners as appropriate.
  • the processor 602 can process instructions for execution within the computing device 600 , including instructions stored in the memory 604 or on the storage device 606 to display graphical information for a GUI on an external input/output device, such as display 616 coupled to high speed interface 608 .
  • multiple processors and/or multiple buses may be used, as appropriate, along with multiple memories and types of memory.
  • multiple computing devices 600 may be connected, with each device providing portions of the necessary operations (e.g., as a server bank, a group of blade servers, or a multi-processor system).
  • the memory 604 stores information within the computing device 600 .
  • the memory 604 is a volatile memory unit or units.
  • the memory 604 is a non-volatile memory unit or units.
  • the memory 604 may also be another form of computer-readable medium, such as a magnetic or optical disk.
  • the storage device 606 is capable of providing mass storage for the computing device 600 .
  • the storage device 606 may be or contain a computer-readable medium, such as a floppy disk device, a hard disk device, an optical disk device, or a tape device, a flash memory or other similar solid state memory device, or an array of devices, including devices in a storage area network or other configurations.
  • a computer program product can be tangibly embodied in an information carrier.
  • the computer program product may also contain instructions that, when executed, perform one or more methods, such as those described above.
  • the information carrier is a computer- or machine-readable medium, such as the memory 604 , the storage device 606 , memory on processor 602 , or a propagated signal.
  • the high speed controller 608 manages bandwidth-intensive operations for the computing device 600 , while the low speed controller 612 manages lower bandwidth-intensive operations. Such allocation of functions is exemplary only.
  • the high-speed controller 608 is coupled to memory 604 , display 616 (e.g., through a graphics processor or accelerator), and to high-speed expansion ports 610 , which may accept various expansion cards (not shown).
  • low-speed controller 612 is coupled to storage device 606 and low-speed expansion port 614 .
  • the low-speed expansion port which may include various communication ports (e.g., USB, Bluetooth, Ethernet, wireless Ethernet) may be coupled to one or more input/output devices, such as a keyboard, a pointing device, a scanner, or a networking device such as a switch or router, e.g., through a network adapter.
  • input/output devices such as a keyboard, a pointing device, a scanner, or a networking device such as a switch or router, e.g., through a network adapter.
  • the computing device 600 may be implemented in a number of different forms, as shown in the figure. For example, it may be implemented as a standard server 620 , or multiple times in a group of such servers. It may also be implemented as part of a rack server system 624 . In addition, it may be implemented in a personal computer such as a laptop computer 622 . Alternatively, components from computing device 600 may be combined with other components in a mobile device (not shown), such as device 650 . Each of such devices may contain one or more of computing device 600 , 650 , and an entire system may be made up of multiple computing devices 600 , 650 communicating with each other.
  • Computing device 650 includes a processor 652 , memory 664 , an input/output device such as a display 654 , a communication interface 666 , and a transceiver 668 , among other components.
  • the device 650 may also be provided with a storage device, such as a microdrive or other device, to provide additional storage.
  • a storage device such as a microdrive or other device, to provide additional storage.
  • Each of the components 650 , 652 , 664 , 654 , 666 , and 668 are interconnected using various buses, and several of the components may be mounted on a common motherboard or in other manners as appropriate.
  • the processor 652 can execute instructions within the computing device 650 , including instructions stored in the memory 664 .
  • the processor may be implemented as a chipset of chips that include separate and multiple analog and digital processors.
  • the processor may provide, for example, for coordination of the other components of the device 650 , such as control of user interfaces, applications run by device 650 , and wireless communication by device 650 .
  • Processor 652 may communicate with a user through control interface 658 and display interface 656 coupled to a display 654 .
  • the display 654 may be, for example, a TFT LCD (Thin-Film-Transistor Liquid Crystal Display) or an OLED (Organic Light Emitting Diode) display, or other appropriate display technology.
  • the display interface 656 may comprise appropriate circuitry for driving the display 654 to present graphical and other information to a user.
  • the control interface 658 may receive commands from a user and convert them for submission to the processor 652 .
  • an external interface 662 may be provide in communication with processor 652 , so as to enable near area communication of device 650 with other devices. External interface 662 may provide, for example, for wired communication in some implementations, or for wireless communication in other implementations, and multiple interfaces may also be used.
  • the memory 664 stores information within the computing device 650 .
  • the memory 664 can be implemented as one or more of a computer-readable medium or media, a volatile memory unit or units, or a non-volatile memory unit or units.
  • Expansion memory 674 may also be provided and connected to device 650 through expansion interface 672 , which may include, for example, a SIMM (Single In Line Memory Module) card interface.
  • SIMM Single In Line Memory Module
  • expansion memory 674 may provide extra storage space for device 650 , or may also store applications or other information for device 650 .
  • expansion memory 674 may include instructions to carry out or supplement the processes described above, and may include secure information also.
  • expansion memory 674 may be provide as a security module for device 650 , and may be programmed with instructions that permit secure use of device 650 .
  • secure applications may be provided via the SIMM cards, along with additional information, such as placing identifying information on the SIMM card in a non-hackable manner.
  • the memory may include, for example, flash memory and/or NVRAM memory, as discussed below.
  • a computer program product is tangibly embodied in an information carrier.
  • the computer program product contains instructions that, when executed, perform one or more methods, such as those described above.
  • the information carrier is a computer- or machine-readable medium, such as the memory 664 , expansion memory 674 , memory on processor 652 , or a propagated signal that may be received, for example, over transceiver 668 or external interface 662 .
  • Device 650 may communicate wirelessly through communication interface 666 , which may include digital signal processing circuitry where necessary. Communication interface 666 may provide for communications under various modes or protocols, such as GSM voice calls, SMS, EMS, or MMS messaging, CDMA, TDMA, PDC, WCDMA, CDMA2000, or GPRS, among others. Such communication may occur, for example, through radio-frequency transceiver 668 . In addition, short-range communication may occur, such as using a Bluetooth, WiFi, or other such transceiver (not shown). In addition, GPS (Global Positioning System) receiver module 670 may provide additional navigation- and location-related wireless data to device 650 , which may be used as appropriate by applications running on device 650 .
  • GPS Global Positioning System
  • Device 650 may also communicate audibly using audio codec 660 , which may receive spoken information from a user and convert it to usable digital information. Audio codec 660 may likewise generate audible sound for a user, such as through a speaker, e.g., in a handset of device 650 . Such sound may include sound from voice telephone calls, may include recorded sound (e.g., voice messages, music files, etc.) and may also include sound generated by applications operating on device 650 .
  • Audio codec 660 may receive spoken information from a user and convert it to usable digital information. Audio codec 660 may likewise generate audible sound for a user, such as through a speaker, e.g., in a handset of device 650 . Such sound may include sound from voice telephone calls, may include recorded sound (e.g., voice messages, music files, etc.) and may also include sound generated by applications operating on device 650 .
  • the computing device 650 may be implemented in a number of different forms, as shown in the figure. For example, it may be implemented as a cellular telephone 680 . It may also be implemented as part of a smartphone 682 , personal digital assistant, or other similar mobile device.
  • implementations of the systems and techniques described here can be realized in digital electronic circuitry, integrated circuitry, specially designed ASICs (application specific integrated circuits), computer hardware, firmware, software, and/or combinations thereof.
  • ASICs application specific integrated circuits
  • These various implementations can include implementation in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, coupled to receive data and instructions from, and to transmit data and instructions to, a storage system, at least one input device, and at least one output device.
  • the systems and techniques described here can be implemented on a computer having a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the computer.
  • a display device e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor
  • a keyboard and a pointing device e.g., a mouse or a trackball
  • Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form, including acoustic, speech, or tactile input.
  • the systems and techniques described here can be implemented in a computing system that includes a back end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front end component (e.g., a client computer having a graphical user interface or a Web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back end, middleware, or front end components.
  • the components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network (“LAN”), a wide area network (“WAN”), and the Internet.
  • LAN local area network
  • WAN wide area network
  • the Internet the global information network
  • the computing system can include clients and servers.
  • a client and server are generally remote from each other and typically interact through a communication network.
  • the relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.

Abstract

A method for user interaction with a web page includes displaying a web page in a web browser, displaying a user-selectable object outside the web browser on a user interface, receiving a user selection of the user-selectable object and a dragging of the user-selectable object onto the web browser, and causing a command to be performed with the web browser in response to the user selection.

Description

    CROSS-REFERENCE TO RELATED APPLICATION
  • The present application claims priority to U.S. Provisional Application Ser. No. 61/415,339, titled “User Interaction in a Web Browsing System”, filed on Nov. 18, 2010, the contents of which are incorporated by reference as if set forth fully herein.
  • TECHNICAL FIELD
  • This document relates to systems and techniques for interacting with users of a web browser or similar application that accepts data input.
  • BACKGROUND
  • Much of the interaction that users now have with computing devices now occurs on-line—in the so-called cloud. Such interaction has moved from simply being able to read text-based web pages, to basic shopping and other services, to rich services that are hosted wholly separate from the client computing device that a user may employ. Various programming techniques have permitted sophisticated actions to occur at the client device, including actions when the client device is off-line, and those actions to be coordinated with a server system that hosts various services for users of the system.
  • Very rich services are thus now possible via a web browser. Modern browsers, such as the CHROME browser from GOOGLE INC., of Mountain View, Calif., can run computer code and perform essentially any function that can be performed by other native applications. As a result, computer users are spending more times with their browsers, and the ability to interact well with a browser has become more important. User of mobile device also frequently download web applications and interact with the to perform actions similar to those performed with web pages of plug-ins in browsers, such as on-line shopping, game, playing, social networking, and the like.
  • SUMMARY
  • This document describes systems and techniques that may be used to interact with a user of a browser or similar application on a computing device, such as a mobile computing device (e.g., a smart phone). The various techniques described here can provide mechanisms for more intuitive user interaction with a browser or other application, including by making more convenient the switching between pages that are currently loaded in a browser (e.g., between tabs in a tabbed browser), by automatically generating favicon's for web page names, by making web page names in a list such as a favorites or history list interactive, by permitting convenient yet secure addition of information to fillable web forms, by providing for the display of web page content in different formats, and by providing convenient mechanisms for selecting objects and actions in a cascading menu structure.
  • In implementations described in particular detail in this document, techniques are discussed that allow a user of an application to automatically fill information into a form, such as a form on a web page. By the techniques discussed here, a selectable control such as an icon may be displayed, and that selectable control may be correlated to certain information about a user or the user's device or account. For example, a user may have an icon that is associated with each of the various credit cards that the user has, and each icon can be correlated to information about the credit card, such as the credit card number, expiration date, user name, 3-digit code, billing address and the like. Another icon may represent information about the user himself, such as his name, address, and the like. Each icon may be labeled in a manner that makes clear the information that it is a “front” for.
  • The icons may be normally displayed on a desktop of a device operating system, such as in a traditional grid of icons that float over a background or wallpaper. Simultaneously, and over a different part of the desktop, a user may display a web page or content in a native application that requires data input from the user. In some instances, the user may type a few letters and the information may be added automatically, after having been stored a prior time the user typed in similar information on another form. However, such a technique may result in the user inadvertently supplying information to the page or the application. As described below, however, a user could supply the same information by selecting one of the icons discussed above and dragging it into the area of the form that is to receive the input, or onto an icon adjacent to, or that otherwise represents the form. Such an action by the user may be interpreted as an intent to have all relevant information that is fronted by the icon to be added to the form. For example, if the form is for a mailing address on an order form, the user's dragging of his personal icon onto the firm may cause it to be filled out completely, whereas his dragging of a credit card icon onto such a form might add his name to the form, but nothing else.
  • In some embodiments, a method for user interaction with a web page is provided. The method includes displaying a web page in a web browser, displaying a user-selectable object outside the web browser on a user interface, receiving a user selection of the user-selectable object and a dragging of the user-selectable object onto the web browser, and causing a command to be performed with the web browser in response to the user selection and dragging.
  • In other embodiments, the user-selectable object comprises payment card information for a user of the web browser, selection of the user-selectable object comprises dragging the user-selectable object to a payment icon on a web page associated with a merchant, and the command causes a payment to be made to an account that corresponds to the merchant, the payment coming from an account that corresponds to the payment card.
  • The disclosed methods can provide one or more advantages in certain implementations. For example, rather than automatically filling web forms, the method can be implemented to require affirmative authorization by the user before the web forms are filled with previously-stored information—i.e., the act of going to get the icon or other selectable object, and then bring in it back to the form is an intentional enough act to prevent accidental divulgence of information. In scenarios in which the previously-stored information may be sensitive in nature (e.g., credit card information, social security number, date of birth, etc.), requiring user authorization before the stored data is accessed or used provides an added layer of security. Using other known methods, a user may try to secure such information by keeping sensitive information in trusted places (e.g., only taking out a credit card out of a purse or wallet when a purchase is about to be made). However, constantly having to retrieve the sensitive information from its trusted place can be time-consuming and inconvenient. For example, if a person is sitting on her bed while using her laptop to make a purchase, it would be inconvenient for that person to have to go and retrieve her purse from another room every time she wished to buy an item online. The disclosed methods do not require a user to constantly have to retrieve the sensitive information physically, decreasing the likelihood that the information may be lost or compromised in transit prior to or after being entered into a web form (e.g., constantly having to retrieve a credit card resulting in misplacing the credit card).
  • It is further inconvenient for the shopper to have to fill out forms (e.g., credit card information) requiring multiple pieces of information that may be prone to typographical errors by the user (e.g., long credit card numbers). The disclosed methods allow the user to simply click and drag an icon associated with her credit card in order to obtain her credit card information and use her credit card to make a purchase. Alternatively, using prior known methods, the shopping page the user is browsing may store her credit card information. The disclosed method advantageously does not store the sensitive information with a third party (e.g., a third party merchant), protecting the information from potential security breaches relating to the third party, and further requires the user to affirmatively indicate and intent to submit her information.
  • The details of one or more embodiments are set forth in the accompanying drawings and the description below. Other features and advantages will be apparent from the description and drawings, and from the claims.
  • DESCRIPTION OF DRAWINGS
  • FIGS. 1A and 1B are diagrams showing web page previews in a tabbed browser system.
  • FIG. 1C shows a screen shot of a browser having a slidable information panel.
  • FIG. 1D shows an example of using a draggable icon to provide information to a web page form.
  • FIGS. 1E-1I show screen shots of example supplementary controls that can be provided with a web browser in an operating system.
  • FIG. 1J shows a screen shot of an operating system displaying thumbnails of recently visited web pages that a user can select.
  • FIG. 1K shows a screen shot of an operating system displaying thumbnails of recently visited web pages that a user can select.
  • FIG. 1L shows example screen shots of web pages in maximized and minimized forms.
  • FIG. 1M shows an example of using a draggable icon to provide login information to a web page.
  • FIGS. 2A-2G show screen shots from a system for forming meta-web pages.
  • FIG. 3 is a screen shot of a chrome-less browser displaying a search screen in an operating system.
  • FIG. 4 is a schematic diagram of a mobile computing device for interacting with a user of a web browser system.
  • FIG. 5A is a flow chart of a process for displaying web page previews when switching between web pages.
  • FIG. 5B is a flow chart of a process for interacting with an information panel that may be displayed with a web browser.
  • FIG. 5C is a flow chart of a process for automatically generating a favicon for a web page.
  • FIG. 5D is a flow chart of a process for providing information to information receiving elements on a web page, such as fillable forms.
  • FIG. 5E is a flow chart of a process for displaying web page data for a page in multiple formats.
  • FIG. 6 shows an example of a computer device and a mobile computer device that can be used to implement the techniques described here.
  • Like reference symbols in the various drawings indicate like elements.
  • DETAILED DESCRIPTION
  • This document describes systems and techniques for providing interaction with a user of a computing device, such as a mobile smart phone, using, for example, elements of an operating system that runs on the device. The system and techniques may provide various output mechanisms that can be implemented visually, audibly, or via touch, and input mechanisms for controlling the device. Multiple particular example techniques are described here, and the techniques can be implemented individually or together with other aspects of an operating system.
  • Various techniques are described here, and the particular techniques may be used in combination with each other. One particular technique described in greater detail in multiple implementations below involves dragging an icon or other visible object that represents a set of data from a source location on a user interface to a target location, where the target location represents a receiver of such information, such as a web form that can be filled out of the user. The user action of dragging the icon or other object to the receiver may be interpreted by a system as showing a user intent that the information represented by the object can be provided to the form and the form be automatically filled out. While the object (e.g., icon) may be physically located outside a browser or other application on a visual display, the particular information for the object may be stored within or without the browser. For example, the information may be stored in the same way that other form-filling information is traditionally stored for a browser, and the browser may be programed to keep the information secure except in conditions where the user performs the inputs described here (though a user can turn such a feature on or off, in a configuration page). In such a situation, the user will need to trust the browser, which is relatively easy to so since the major web browsers are produced by reputable companies. Alternatively, the information may be stored with the particular object, and outside a browser or other application to which the information is to be provided. A browser designer may publisher an API by which information is to be shared with pages in the browser, from such objects. Objects that comply with the API can be displayed on a desktop of an operating system, and the operating system may mediate data transfer between them according to the rules of the API.
  • FIGS. 1A and 1B are diagrams showing web page previews in a tabbed browser system. In general, the displays show how a user of a web browser can be shown what obscured pages look like so that they can determine whether to switch the browser's focus to those pages.
  • A first display 102 shows a mechanism for previewing obscured pages one page at a time. In this example, a tabbed web browser is shown displaying a number of pages such as page 110, which includes a URL and search entry area 108, a tab 106, a favicon 106A on the tab, and a page title 106B on the tab, and an information bar 104. Tabs for other pages that have been loaded by the browser are also shown, but those pages are obscured—hidden behind the page 110 that is the focus of the browser. In this manner, the browser display is much like that of the current GOOGLE CHROME browser. The browser in this example can b integrated with the device operating itself, and can be the only application to run on the device, where any applications to be run by the user must run under the browser.
  • A selectable control 118 in the form of a tab near a periphery of the display, is shown over a small part of the page 110. User selection of the tab is described more fully with respect to FIG. 1C.
  • A pointer 112 is shown over a tab for one of the obscured pages, thus indicating that a user has placed their finger on a touch screen over the tab, or is hovering the pointer over the tab using an input device like a mouse. In response to such action by the user, a preview 114 of the web page that corresponds to the tab has been displayed on top of the page 110. The preview may be a thumbnail image of the current page, and may be displayed until the user stops hovering over the tab or selects the tab. If the user stops hovering, the preview 114 may simply disappear, and if the user selects the tab, the page 110 may become an obscured page, the tab where the user was hovering may jump forward, and the previously obscured page may become the focus page.
  • FIG. 1B shows a similar application of the concepts discussed here, but with a preview of multiple pages. In this example, the main page and the browser have slid downward in response to a user selection with a pointer in an area that was previously above a top edge of the browser such as on an operating system background at the very top of a display 104. As a result, three previews 114A, 114B, 114C have been displayed in the now-vacate space above the browser tabs, and in alignment with the tab for the obscured page that corresponds to the particular preview. Again, the previews are thumbnails formed in a familiar manner from a current view of each of the obscured pages. Also, the user may return the system to its original state and make the previews disappear by moving their pointer back into the body of the page 110, or they may switch the focus to one of the displayed pages by selecting one of the previews 114A, 114B, 114C.
  • The browser as shown in FIG. 1B is more chrome-free than is the browser shown in FIG. 1A. For example, the former browser does not include information bar 104. In a similar manner, various other forms of browsers may include preview mechanisms like those just discussed.
  • An alternative mechanism for displaying multiple previews is to display multiple previews in a manner like the preview 114 in FIG. 1A, an aligned beneath each relevant tab. In such a situation, the top of the browser would not have to be moved down, through the previews may obscure part of the page 110 that is the focus of the browser.
  • FIG. 1C shows a screen shot of a browser having a slidable information panel. Again, the browser is a tabbed browser where a number of different pages have been opened by the browser and one particular page 136 is the current focus of the browser.
  • The information panel 124 may be associated with a selection mechanism 126 that is like the selectable control 118 of FIGS. 1A and 1B, where a user selection of the mechanism 126 causes the panel 124 to be displayed. When the panel is displayed, it can slide in from off the side of the display 120 and push existing items on the display to the right. Alternatively, and as shown here, the panel 124 may slide over the top of the page 136 having tab 122, and then may slide back when the mechanism (whose arrow changes direction between the two states) is again selected.
  • The panel 124 may display a variety of categories of information, and a user may be allowed to select the appropriate categories and layout for their panel 124. In this example, the categories include bookmarks 128, web browsing history 130, and a chat application 132. The bookmarks are, as is known, titles and links to web pages that the user has previously identified as being important to them. The history is a list of names and links to pages that the user has visited. In certain implementations, the bookmarks and history may be combined into a single list. The chat application 132, takes a well-known form and shows icons of friends who are currently on-line, and provides a mechanism by which the user may type notes back-and-forth with those friends (e.g., in a text box 134).
  • The focus in this figure is on the particular display of the bookmarks section 128. That section is captioned with an icon and title 128A, and is provided with a listing for each bookmarked page. The history section 130 could be similarly displayed, though it is shown generically here for clarity.
  • Each entry in the listed bookmarks includes a favicon 128B, a title 128C, and dynamic content 128D. The favicon may be provided by a publisher of a web page that corresponds to each entry, or can be automatically generated by a process like that described in detail in relation to FIG. 5C. In particular, an image may be taken from the page to generate the favicon, or a topic for the page may be determined by analyzing the page, the topic (or topics) may be submitted to an image library, and one of the results from the library may be reformatted and assigned as the favicon.
  • The title 128C takes a familiar form. It is static content that provides a plain-english description of the web page, and may be obtained from a corresponding tag that an author of the page has provided.
  • The dynamic content 128D is appended to the title, and represent a variety of information associated with the page. For example, if a page is a sports-related page, the dynamic content may include scores from ongoing sporting events (as shown by the ESPN entry in FIG. 1C). If the page is a front page for a regional newspaper, the dynamic content may be the current weather in the city of the newspaper (as shown by the Star Tribune and Maui newspaper entries). And if the page is a national newspaper, the dynamic content may be a headline for a current news story (as shown by the New York Times and Wall Street Journal entries).
  • The content may be single content or multiple content. For the former, a single piece of content may be statically displayed, though updated when a change to the content occurs. For example, the temperature for Minneapolis may be updated in the Star Tribune entry if the temperature changes. For the latter, the content may continually change to present different sub-categories of information that falls under a common category. For example, in the ESPN entry, the scores of all ongoing baseball games may be displayed in the dynamic content 128D in succession. The display may be, for example, in the form of a slide show, where the displayed game clicks from one to the next every several seconds. The change may also be animated, such as in a horizontally moving ticker-tape fashion, or in a vertically scrolling fashion, where the system can pause when each score has been fully displayed on the line.
  • The information may be provided in various known manners, such as in a feed like an RSS feed. A relationship may be drawn between the underlying page and the relevant feed so that the two can b properly coordinate, in a variety of manners. For example, the page make include a tag that has a reference to the feed, and the browser can read that tag in order to start receiving information from the feed that can be placed into the dynamic content 128D.
  • In this manner, the system shown in the figure can provide a user with much more useful information in a listing of page names. Such a listing may then be displayed more frequently by a user, even if such display takes up space on the screen. The user may then benefit from having additional information and quicker access to pages that are listed in his or her bookmarks or history list.
  • FIG. 1D shows an example of using a draggable icon 148 to provide information to a web page form. In this example, the icon provides a simple mechanism by which a user can enter the information without having to type it from scratch. Yet the mechanism is more secure than are auto-filling forms, as the user has to take affirmative action before the information that is represented by the icon 148 can be given to a provider of a web page—that is, the form is not “auto” filled. In this manner, the user may have a relatively simple, yet relatively secure, experience. Particular description of a process is provided below in relation to FIG. 5D.
  • Referring now more particularly to FIG. 1D, there is shown a display 140 which may be all or a portion of a graphical display on a computing device such as a laptop computer, a netbook, or a smart phone. Shown on the display, in a mostly chrome-free manner, is a browser 142 that displays a primary web page and shows tabs for a plurality of obscured web pages that have been opened in the browser but that are not currently the focus of the browser.
  • An advertisement 144 displayed on the browser 142 on the primary page includes an icon 146 that is a selectable control for submitting information to a fillable form. In this example, the advertisement is in the form of a gadget that is rendered in an iFrame element on the page. The advertisement is to receive access to an on-line newspaper subscription, and the user can enter his email address to establish an access credential. Mechanisms are also provided for the user to identify how long he wants the subscription for, and to select URLs that will take the user to screens for entering billing information manually (e.g., “epay” and “enter credit card data”).
  • The advertisement 144, however, also provides a mechanism in the form of icon 146 and its underlying code, to provide credit card and other billing information almost fully automatically. The process is not fully automatic, however, as it requires a particular affirmative action by the user. The icon 146 is labeled with the name of such a technology (“drag pay” in this example) so as to alert the user of the availability of such a simplified and secure information submission technique. Thus, as shown by the dashed, curved arrow, the user has clicked on the icon 148, dragged it over to icon 146 and released, so as to indicate an intent by the user to have his “credit card” information applied to the application that underlies the icon 146. The user in this example previously filled out a form with his credit card information so that the application underlying icon 148 can pass on that information, and such storage and passing of information may be in a format that complies with a public API so that the application that underlies icon 146 may properly handle the information it receives. Receipt of the draggable icon 148 by the web browser indicates user authorization to access user information, which, in some instances, may be sensitive in nature.
  • In other embodiments, the user may drag and drop the icon 148 on other icons, images, text, or other elements for receiving information submissions on the web page. For example, in some embodiments, the user may drag and drop icon 148 directly onto a fillable web form, causing the form to be populated with previously-stored information. The form may contain a single entry to be filled by the user (e.g., “Full name”) or multiple entries (e.g., “last name, first name, street address, city, state, zip code”).
  • Referring to FIG. 1M, and continuing with features concerning the ability to drag content associated with a first item by dragging the first item to a second space, there is shown a display 740 which may be all or a portion of a graphical display on a computing device such as a laptop computer, a netbook, or a smart phone. Shown on the display is a browser 742 that displays a primary web page and shows tabs for a plurality of obscured web pages that have been opened in the browser but that are not currently the focus of the browser.
  • A login page for an e-mail account 744 displayed on the browser 742 on the primary page includes an icon 746 that is a selectable control for submitting information to a fillable form. Alternatively, a user may login using the entry boxes shown. In this example, the login page 744 is in the form of an e-mail login page. The login page requests a user to enter his user name and password to establish an access credential. In this scenario, a user may have a draggable e-mail icon 748 that corresponds to an e-mail account he has with the e-mail provider displayed on the browser 742. The image or text on the draggable icon 748 may correspond with the e-mail page so the user can clearly identify the draggable icon 748 as being associated with that particular page. Thus, as shown by the dashed, curved arrow, the user has clicked on the icon 748, dragged it over to icon 746 and released, so as to indicate an intent to have his e-mail login information applied to the application that underlies the icon 146. The user in this example previously filled out a form with his e-mail login information so that the application underlying icon 748 can pass on that information, and such storage and passing of information may be in a format that complies with a public API so that the application that underlies icon 746 may properly handle the information it receives.
  • While the example in FIG. 1M relates to an e-mail web page, other types of login pages are contemplated. For example, other draggable icons may be used by a user to login on any other type of secured web pages that require a user to enter a user name and a password, such as shopping web sites, calendar or scheduling web sites, and photo album web sites.
  • In some implementations, the user information (e.g., credit card information, login information) is stored by the web browser any time the user enters user information—but a user may establish the settings for the browser so that the information (or at least certain types of information) are not filled in automatically into web forms, but instead is only filled in when a user performs the sort of functions described herein.
  • The browser may, in some embodiments, prompt the user to authorize the browser to save the user information or to create a draggable icon associated with the entered user information. The browser may further prompt the user to assign a description to the newly-created icon associated with the entered user information (and perhaps to select an icon image from a list where the particular content does not plainly have an image already associated with it). For example, if the user has just entered her credit information, she may label the newly-created icon “American Express” so that the icon is easily identified for future use. In some embodiments, use of the icon (i.e., dragging and dropping of the icon to access the information associated with it) may require the user to enter a password or security code to provide heightened security to prevent unauthorized use of the stored information.
  • FIGS. 1E-1I show screen shots of example supplementary controls that can be provided with a web browser in an operating system. In FIG. 1E, a tabbed browser is shown with three opened pages on top of a desktop in an operating system. A web page is displayed in the browser, and a search box is displayed off the upper left corner of the browser where the presence of tabs has forced the top of the browser to fall slightly and thus make room for the search box. The browser is also pushed in slightly from the left edge of the desktop to make way for small icons along the left edge of the display, that the user may select in order to have additional information displayed to them.
  • FIG. 1F shows the complete column of icons after a user has selected an icon relating to the user's contacts. Such an action has caused a contacts-related panel to slight out from the column of icons, which has pushed the browser to the right in the display. The panel could also be configured to slide over the top of the browser. The contacts application takes a familiar form, and shows the computer-related status of various contacts. Other common applications are also represented by icons in the column, and a user may be permitted to add o remove such icons as they see fit so that they can represent applications that they use most often.
  • In FIG. 1E, the contacts application has become more specifically a chat application and its position has changed so that it has now popped up from the bottom of the display. The other on screen elements have generally stayed the same. The chat application could also be minimized so that its title bar would appear along the bottom of the display. Title bars for multiple minimized applications could also be displayed adjacent to each other.
  • In FIG. 1H, a user has selected to see applications supported by their device that are now represented in the column along the left-hand side of the screen. As a result, a cluster of icons for the various applications has been generated, and again the browser has been pushed to the right. In some implementations, the invocation of certain application from the column can push the browser to the side, while the innovation of other application may cause on screen items to be generated over the top of the browser.
  • FIG. 1I shows a toolbar that can be generated along the top edge of the display, such as by a user hovering a pointer near the top edge. This toolbar takes a form very much like the GOOGLE TOOLBAR, and includes a search box and icons for a number of features that are supported by the toolbar.
  • FIG. 1J shows a screen shot of an operating system displaying thumbnails of recently visited web pages that a user can select. Such a display can occur, for example, when a user chooses to minimized the browser shown in the prior figures. As can be seen, such minimizing has cause the browser to slide to the bottom of the display so that only the tabs and some of the toolbar is showing. The thumbnails in this example cover two categories and take two forms. A first category is the user's most visited sites, and the thumbnails may show a near-literal screenshot, in the shape of a screen, for such pages, much as currently occurs in the GOOGLE CHROME browser, or for the INTERNET EXPLORER browser where the GOOGLE TOOLBAR is installed. The content from the pages may be current (e.g., it may be fetched when the user minimizes the browser) or historical (i.e., it may show the sites as they existed the last time the user visited them).
  • The other category of thumbnails is a history of recently visited sites for the user, and the thumbnails for these sites are variable in size. In particular, they represented the actual content of the entire web page. Short pages are thus shown at a higher level of magnification and are also relatively short. Longer pages are shown at a lower level of magnification and are also long. Also, the thumbnails for recent pages can be larger than the thumbnails for older pages so as to given a better visual impression of a timeline. A user can select any of the thumbnails in order to instantiate one of the underlying pages in the browser.
  • FIG. 1L shows example screen shots of web pages in maximized and minimized forms. Such features may permit publishers of page content to provide long-form and short-form content, and thus to maintain a user's interest both when they are focused on the browser and when they are not. A particular process for provided such functionality is described in respect to FIG. 5E below.
  • As shown in the left display, a browser like that in the figures above has opened three pages and is focused on one page, the New York Times. In the right display, a user has made a selection to minimize the browser, and as a result, the browser in its initial form has disappeared (though it may also simply move to the bottom of the display). In its place are onscreen objects that take look like, and can actually be implemented as, widgets or gadgets. Each of the objects corresponds to one of the previously-opened pages from the browser, and displays information that corresponds to the information displayed on the related page, but in a smaller form.
  • For example, the first page is a page for the New York Times, whereas the corresponding object shows the same page title as the page, but displays only national headlines because the Times is a national newspaper. The particular headlines may be provided in a news feed from the times, where the identifier for the news feed has a direct relationship to the identifier (i.e., URL or partial URL) for the page, so that the browser can readily identify the feed from which it is to draw information in populating the object. As another example, the second web page is the local news page for the StarTribune newspaper, and the object shows local news headlines. As with the first object, the headlines may be part of URLs that a user can click on to be taken to the web page for the paper that carries the relevant story. Depending on the wishes of the web page publisher, each page may have a feed, each section may have a separate feed, or the entire web site may have a single feed. Generally, larger sites having funded owners will have more feeds.
  • The third page in this example is the ESPN sports site, so the dynamic content in the feed is sports scores. More particularly, the user was on the Major League Baseball page when they minimized the browser, so they are getting feeds that are specific to baseball games that are currently being played.
  • FIGS. 2A-2G show screen shots from a system for forming meta-web pages. In general, the meta-pages permit a user to combine various individual pages, each from the same domain or from different domains, in various manners so as to create a topical page whose individual components can be accessed by basic scrolling up and down the meta-page. Thus, for example, a user could form a meta-page by dragging onto it pages from all the major national newspapers. Each morning, the user could simply scroll down through the meta-page to see the headlines from all of the newspapers (where the meta-page may have its own URL or pseudo-URL that can be saved as a bookmark for the user), rather than having to individually load each page and switch between tabs for each page.
  • FIG. 2A shows a zoomed-out representation of a meta-page on an operating system desktop. In this example, the meta-page includes two sub-pages—an email page and a calendar page. So the user has, in effect, create a personal information manager page.
  • At FIG. 2B, the user has selected to view the page by clicking on the meta-page in FIG. 2A (a indicated by a lingering selection dot in FIG. 2B where the meta-page had previously appeared in FIG. 2A). Here, one can see a familiar view of the GMAIL email application. FIG. 2C shows that the user has scrolled down somewhat in the meta-page and is showing both the GMAIL sub-page and a calendar sub-page below it.
  • The user has scrolled down even farther in FIG. 2D, to the end of the calendar sub-page, to a New York Times sub-page. Though not shown here, the user could have added that sub-page by highlighting the meta-page, and then typing “www.nytimes.com” or “New York Times” the search box on the display. Upon entering such information, the small representation of the page may have been added to the meta-page as shown in FIG. 2A. In FIG. 2E, the user has typed the domain for the New York Times into the navigation box at the top of the display, and the page has jumped so that the New York Times
  • In FIG. 2F, the user has scrolled back up to the GMAIL application or has typed appropriate information into the navigation box to have the screen scroll up to that same point automatically. The user has also selected an icon showing a picture of a friend so as to start a chat session with that friend. As a result, a chat application has opened a sub-window at the top of the display where the users can carry on a conversation.
  • In FIG. 2G, the meta-page has been minimized an the view has returned to the desktop. Also, the user has dragged the New York Times sub-page from the first meta-page and onto the desktop so as to begin creating a second meta-page. In addition, the user has since typed two URL's into the navigation box so as to add pages for those two URL's to the newly-created second meta-page. The user may then select one of the reduced-size renderings of one of the two meta-pages so as to continue their work.
  • FIG. 3 is a screen shot of a chrome-less browser displaying a search screen in an operating system. This view again shows icons in a vertical column along a left edge of the display (though it could be shown against other edges or as a floating toolbar). The page displayed in the browsers is a GOOGLE search home page, and the display also shows a universal search box on top of the page, where the user may enter queries into either search box. Also in this example, a graphical history is shown along the right edge of the display, where thumbnails of recently visited pages are showing with increasing overlap, so that recent pages can be seen fully, and more distant pages can be seen less completely.
  • FIG. 4 is a schematic diagram of a mobile computing device for interacting with a user of a web browser system. The device is shown here in the form of a smart phone, but make take various other forms, such as a desktop personal computer, a netbook, or a laptop computer. In this example, the mobile device 402 is a slider-based smart phone having a touch-screen 404 for input and output and a trackball 406 as an alternative input mechanism.
  • The display 404 shows an example of a mapping application being displayed in a chrome-free browser a manner like the pages above, and also an information panel like that discussed above.
  • A number of components are shown schematically inside the device 402 to indicate components in the device that are associated with the features, and used to implement the features, discussed in more detail above and below. One or more of the components may be implemented as part of a programmable microprocessor on the device 402, though the particular components are shown separately in this example for clarity of explanation. Other arrangements of components are also contemplated.
  • The device 402 includes a display manager 408 to control various elements to be shown to a user on the touch-screen 404, while an input manager 412 manages inputs received from the touch-screen or other mechanisms such as trackball 406. The display manager may receive information from various applications and from other components of the operating system, and may determine what elements to display in relation to other elements, which elements to hide, and how to show visible elements in relation to each other. The input manager 412 may coordinate with the display manager so as interpret actions that a user takes with the device. For example, a user may place their finger on the touch screen 404 or may move a pointer on the touch screen 404 and then make a selection. The input manager 412 may refer to the display manager to determine what item the user selected by such an action, and may generate an event that may be reported to various other components that may be subscribing to such an event, such as by using event manager 410.
  • The device 402 may be provided with various services that may be made available to applications running on the device and/or to the operating system of the device. For example, a GPS module, which may be a common commercially-obtained module, may make determinations about a location of the device 414 and provide such information to various applications, such as applications that provide driving directions, that provide the user's location for reference by friends of the user through a social network, and the like. In a similar manner, a spelling corrector 416 may provide a service that is generally available to various applications running on the device, so that those applications can correct data that the user has input or otherwise notify the user about problems with the input.
  • Various physical output mechanisms may also be provided in the device 402. For example, a vibrator may be provided to give haptic feedback to a user. The vibrator may have an associated controller (not shown) that can be called by various applications or services on the device. For example, the spelling corrector 416 may cause the device to vibrate whenever a spelling error is identified by the spelling corrector 416. Also, a sounds controller 424 and related audio speaker may be provided to give a user additional feedback, such as in the form of tones or synthesized speech.
  • Various applications 418, 420 may run on the device and may provide data for graphics to be displayed through the display manager 412. The applications may be part of an operating system on the device 402, or may be added by a user of the device, such as from an on-line marketplace. In this example, a first application is a mapping application and may run as a standalone application or an application or plug in that runs in browser application 420. The browser application may be a standalone application or a component that is built into an operating system that runs on the device 402, and may generate displays like those described in detail elsewhere in this document.
  • Various messages for the operating system and the applications may be received over a network such as a wireless communications network connected to the internet, via a wireless interface 426. Information received from the network, such as from one or more remote servers, may be provided to the applications 418, 420, and information may be passed from the applications 418, 420 back to the network.
  • In addition, various forms of storage, including volatile storage and persistent storage, may be provided on the device 402. The persistent storage may include various data stores, such as application data 428, dictionary data 430, and user information 432. The dictionary, as described above, coordinates with and is used by the spelling corrector 416. The application data 428 may include whatever data the various applications need in order to perform their functions. Depending on the application, more or less data may be stored locally on the device 402 as opposed to being stored on a remote server system. For example, certain devices may store data for a mapping application locally, whereas others may obtain mapping data (e.g., map tiles that show images of a portion of a geographic area) from a remote server as a user navigates on a map, and may dump the data soon after.
  • The user information 432 may include specific information about one or more users of the computing device 402. For example, the user information may include profile information for the user, as well as setting information that controls the interaction of the device 402 with the user, and that can also control the manner in which various applications operate on the device 402. Although three various data stores are shown here for clarity, much other information would be and can be stored on device 402, and need not be arranged as shown here.
  • FIG. 5A is a flow chart of a process for displaying web page previews when switching between web pages. In general, the process involves displaying, in response to user input, representations of web pages that are open in the browser but that are not currently the focus of the browser, such as secondary pages in a tabbed web browser. The representations of the pages may be formed as thumbnail images of the obscured pages, and may be shown to a user when the user is determining which page to switch to, in matters like the examples shown in FIGS. 1A and 1B above.
  • The process begins at box 502, where a computing device displays a web browser window that has one or more visible open pages on it and one or more obscured pages. An open page in this example can be a single web page, or a meta page that is constructed from multiple separate pages as described with respect to FIGS. 2A-2G above. A web page may also take other formats, and may display content that is remote from the computing device, or content that is local to the computing device, or both, and can be made up of any appropriate type of display that can be generated on a pane or tab for a web browser.
  • The visible open page will generally be represented as a page that lays visually on top of the obscured pages. The obscured pages generally will have most or all of their page content hidden behind the visible page, with a visual element, such as a tab, extending from an edge of the visible page. The extending element, such as a tab, can generally be selected by a user by clicking on the element, which will cause the selected obscured page to become the visible page by visually moving in front of the page that was previously the visible page. Other obscured pages may then be selected in a similar and familiar manner by the user.
  • At box 504, the process receives a user input indicating an intent by the user to check the obscured pages. For example, the user may want to review content that they believe is on one of the obscured pages, but they may want to check the pages before making a switch because they are not sure which page contains the desired content. Alternatively, a user may desire to determine whether content on a page has been updated since the last time they reviewed it, but without having to switch entirely to that page. As a result, the user may wish to see a form of page preview for each of the obscured pages so that they can make a determination whether to switch to one of such pages.
  • The user may express their intent to check the obscured pages in a variety of ways. As one example, a user may express the intent to see a preview of a particular obscured page by hovering their pointer over a tab for that page. The user may express intent to receive a preview of all of the steered pages by hovering their pointer above an area where all the tabs are displayed, such as a background area that appears around the tabs for the web browser. Alternatively, a user may provide a voice command indicating an intent to preview pages, such as by speaking “switch page.” Also, the user may indicate such intent by way of a keyboard input, such as by entering a key combination. One such technique for switching between applications in an operating system is the ALT-TAB key combination of MICROSOFT WINDOWS.
  • At box 506, the process grabs a screenshot of one or more of the obscured pages. Such acquisition of an image of the page may occur in real time after the user indicates their intent, so as to provide a most updated image of the page, or may have occurred previously, such as the last time the user loaded the page, or at another appropriate time. Acquisition of the image may occur in various known manners, and the particular manner may depend on the level of resolution desired, the size of the preview desired, and other similar factors. The image may be generally of a reduced size compared to the entire page, and be known commonly as a thumbnail image of the page, so that it may be displayed conveniently to a user without obscuring a large portion of the display on the computing device. The term thumbnail is used here to represent such an image that is substantially reduced in size from the source image that is represented by the thumbnail.
  • At box 508, the computing device displays the thumbnails of the one or more obscured pages adjacent to the page tabs. Such display may of all or fewer of the steered pages. For example, where the display is invoked by a user hovering over a tab for a particular page, the display may be of that page only. However, when the input by the user indicates an intent to review more than one obscured page, the display may be of all of the pages, and the thumbnails may be aligned in a manner like that shown in FIG. 1B above.
  • At box 510, the system receives a user selection of a thumbnail or a corresponding tab for the thumbnail. For example, where a user has clicked on a display to invoke a thumbnail selection process, the user may subsequently click on one of the thumbnails that is displayed to indicate their interest in having the page associated with a thumbnail become the focus page for the web browser. Alternatively, where a key combination is used to start the process, the selection may be made by releasing the selected keys.
  • At box 512, the process changes the selected obscured page to a visible page, and changes the previously visible page to an obscured page. Such transition is similar to known processes of switching a tab that is the focus in a tabbed browser system. In particular, the previously obscured page may be moved visually forward in a group of tabbed pages is so that its tab is shown extending from the page, and other tabs are shown extending from behind the page so as to indicate visually that the other pages are obscured behind the new page that is the focus of the browser. The user may then make additional selections to change pages, repeating the above process, and the thumbnails that were previously displayed may be maintained in position for the user or may be removed, and the browser display may return back to its general orientation from before the user indicated an intent to change to a different page.
  • FIG. 5B is a flow chart of a process for interacting with an information panel that may be displayed with a web browser. In general, the process involves displaying a panel in relation to a web browser, where the panel includes particular information about the web browser and pages to be displayed on the web browser. The information may include, for example, information that is correlated to pages that a user has bookmarked, or that are in a user's recent browsing history.
  • At box 514, a webpage is displayed along with a panel-invoking control. In this example, the information panel is not initially displayed with the browser, so that the maximum amount of screen space may be devoted to displaying the web page itself, rather than controls for the browser. The panel-invoking control may be displayed as a small visual element near the edge of the page or the browser, and may take the form of an icon where the icon visually indicates to a user that its selection will cause information that is currently hidden off the edge of the display to be moved onto the display. As one example, the icon can include an arrow or other similar visual cue that shows that selection of the icon will cause such a transition to occur.
  • At box 516, a computing device receives a user selection of the panel-invoking control. Such a selection may occur in a variety of manners, such as by a user clicking on the panel-invoking control, the user clicking on the control and dragging the control inward toward the middle of the display, or a user swiping onto a touchpad from off the surface of the touchpad and into the touchpad at a side of the touchpad that corresponds to the side of the browser in which the control is displayed.
  • At box 518, but information panel is animated into position over the top of a part of the web page, by sliding the panel off the hidden edge of the display and onto the display. Alternatively, the panel may push the web page to the side and be displayed adjacent to the web page. The panel can display a variety of information and include a number of controls that are selectable by the user. For example, the panel may display a list of bookmarks in the form of titles of web pages that the user has previously indicated to be of interest to them, as is well known. The panel may similarly display a list of pages that represent recent pages the user has visited, in the form of a history of pages. The display of bookmarks and history may also be combined, so that bookmarks are automatically selected by the browser as pages that the user has visited frequently in the past, and are automatically arranged into topical groups or other standards, including the frequency with which the user has visited those pages. For example, a list of pages may be initially sorted in a reverse chronological order to represent pages that the user has visited recently, but pages that have been visited frequently may be elevated in the ranking in the list of pages above pages that have been visited recently but infrequently. The information panel may also display information controls for other topics, such as a graphical display of a chat application showing friends of the user who are currently online, and controls to change settings for the browser, such as security settings and the like. In addition, the panel may include a search box into which a user may enter a search query in a familiar manner.
  • At box 522, the process fetches real time information about web pages from providers of the web pages. The web pages from which information is fetched can include the web pages listed in the history or bookmarks. To obtain the information, the process (via the computing device on which the device is running) may make a call to the web page itself, the web page may include tags or other information that designate brief, updated, summary information for the page, and the browser may extract such information. Alternatively, the process may make a call to a page that is related to the underlying web page, such as a page having the same name as the underlying web page but that is located in an adjacent predetermined path relative to the underlying web page or that has an extension that differs from that of the underlying web page but that has the same name.
  • The information provided to the process may take a variety of forms but generally takes a form of information that can be displayed in a very small space and that relates to the underlying webpage. Such information commonly can include news headlines, sports scores, press release headlines, and other brief and topical information associated with the underlying web page.
  • At box 524, the real-time information that has been gathered relating to the web pages is added to the titles of the web pages listed in displayed to the user. For example, as the information is received, it may be added to the right of the web page names in the history or bookmarks list that is displayed in the information panel. Such real time web page information may be displayed statically or dynamically. Static display may involve showing a single set of information in the panel and maintaining that information in the panel. Dynamic display may include showing initial information in the panel and then changing to additional information, such as in the form of a textual slideshow, or in a ticker-tape type of presentation.
  • Using this process, then, a browser may make lists of web page titles that are more useful to a user of the browser, and the user may leave the information panel in place while they are browsing (because of its added usefulness) instead of removing it from the display of their computing device. For example, a user may appreciate seeing headline updates for their various favorite pages and thus may leave the panel open to the side of the pages. Also in this manner, basic Web bookmarks may gain some advantages of web widgets or gadgets, by having dynamic content displayed along with the web page names represented by bookmark or history listings.
  • FIG. 5C is a flow chart of a process for automatically generating a favicon for a web page. In general, the process involves identifying web pages that do not have a favicon and generating automatically valid favicons for those pages. A favicons is generally understood to be a small icon corresponding to a web page or web site that helps communicate to a user of a computing device the identity of that web site. Icons are frequently shown in title bars of web browsers when a web page is displayed, or next to a list of web page titles when a web page history or bookmarks are displayed. Favicons may be useful in helping a user quickly identify a particular web page in a list of many web pages, without having to carefully read each of the web page titles.
  • The process begins at box 526, where a command is received to show a web page title. The command may be implicit, such as by a user selecting a control to show a list of bookmarks or a web page history that include many web page titles. Also, the command may be implicit in a user typing in a URL of a webpage, a browser opening the webpage, and the browser including in a title bar a name or the webpage and a favicon for the webpage.
  • At box 528, a decision is made about whether the page includes its own favicons. Such a decision may be made in a familiar manner by accessing or attempting to access a file where a favicon would be stored. If a favicons is identified, it may be displayed with the title of the web page, as shown at box 503 rd.
  • If no favicons for the page is identified, a process may begin to create automatically a favicon for the webpage. By this process, at box 532, a page URL for the relevant web page is submitted to a page classifier. The page classifier may include, for example, a classifier that analyzes words and metadata regarding a page, and perhaps other pages at a similar addresses or links to the page, and generates one or more words than are topics for the page. For example, a Bayesian analysis may be used to group words and compare them to groupings of words for other pages, so as to identify topics for the page. The page classifier may be a service that can be accessed externally by the process, such as a service used to classify pages for the GOOGLE AD SENSE service. As one example, a sports-related web site may have a number of articles, or a page of that site may have an article, that uses the names of professional athletes and words like baseball, bases, steal, game, and other such words. An analysis of that page could generate the term “baseball” or the term “Major League Baseball” as a topic for the page.
  • At box 534, the process receives from the page classifier the page topics. The page topics may be received, for example, in the form of single or multiple words, including, from the prior example, the term “Major League Baseball.” One or more received terms may then be submitted to an image database, such as the GOOGLE IMAGE SEARCH service. A submission may also be accompanied by one or more parameters, such as a parameter to request images of a certain size or type. For example, small images that are easily converted into a favicon can be requested, so as to avoid gathering images that have too much detailed for reduction. Also, the request may be made for only line drawing images, as those images may be easier to reduce in size satisfactorily.
  • Where the page classifier returns multiple terms, the multiple terms maybe he submitted to the image database, and one image may be selected from all the results returned from the multiple requests. For example, a highest-match image that is common to the search results from multiple of the requests may be selected as the most relevant image. Alternatively, an image that is determined to be the most relevant and yet of a quality that can be reduced satisfactorily, such as a line drawing, may be selected. Multiple best images may also be selected, and may then be displayed as an animated favicon that indexes through the multiple images.
  • The image for the favicon may also be selected as an image that is on the page itself. For example, the process may determine that an image near the top of a page is likely to be a logo for a company, may extract that image from the page, may crop the image to make it square or to focus solely on the logo, and may convert the image to a favicon.
  • An image may also be built up by the process, rather than being a pre-existing image that is selected. In the example above, the favicon can be represented by the letters “MLB”, by determining that those letters correspond to the topic Major League Baseball. Also, the image database may be made up of a limited set of images having an associated topic that corresponds to topics generated by the classifier. For example, an image of a football and baseball may be associated with the term “sports,” and that image may be used whenever the classifier returns the word “sports” for a page.
  • At box 536, the process determines a color for the favicon. Selecting a color or a favicon may further help a user of a web browser quickly identify the favicon. For example, certain organizations or topics are readily associated with a particular color (e.g., UPS and brown), and a user of a computing device may more quickly form such an association in their mind, than if the color were absent. Selecting the color may occur in various manners, such as by identifying a background color or the page, a color for a logo that is imaged near the top of the page, or by other mechanisms. The color may then be applied to the image that was selected in the prior steps, such as by applying the color as a background color for the Favicon.
  • At box 538, a custom favicon is generated and is displayed in the web browser next to the page title. The favicon may also be stored, either on a user's computer device or on a server, so that the preexisting favicon may be served to the user when they display the name of the web site in the future. Also, the favicon as generated may be shared with other users through a server system that is associated with the web browser. Moreover, the server system itself may perform the process described above in a bulk manner, by identifying pages that it has indexed but that do not have favicons, and the analyzing such web pages and subsequently making the generated custom favicons available for use by instances of the web browser that user might employ.
  • FIG. 5D is a flow chart of a process for providing information to information-receiving elements on a web page, such as fillable forms. In general, the process involves providing the data to an element such as a fillable form in a webpage in a relatively secure manner. The process begins at box 540 where a web page having a fillable form is displayed. The fillable form may be presented in a variety of manners, including by displaying a plurality of text entry boxes into which a user may type information, such as personal information for ordering a product or service. The fillable form may also be displayed as an icon into which a user may visually place information, as next described.
  • The information to be provided to the fillable form may be any relevant information, but frequently includes personal, financial, or security information for a user. For example, a user who orders a product on-line may need to submit shipping address and credit card information.
  • Such forms may be auto-filled in common practice, but a user may not want to have certain information, such as credit card data, filled automatically (e.g., in response to no input from the user, or in response to the mere input of a few letters in a field). At the same time, the user may not want to have to locate their credit card and then type in their credit card information manually every time they buy a product on line. Thus, such a user may be provided with a application that takes their information and associates it with a desktop icon. Generally, the icon may be represented outside of the browser and secured from access by the browser or content in the browser. As shown at box 542, the user who is faced with a fillable form such as that shown in FIG. 1D, may select the icon and drag it onto the web page where the visual element (the target element) associated with the fillable form is located.
  • Upon determining that such a combination of moves, from a source location to a target element, have been made by the user (boxes 542, 544), the process may infer that the user would like to have their information submitted to the form. Such a process requires a sufficient level of deliberate action by the user so as to substantially remove the risk that the user would submit such information inadvertently. Yet the submission of the information by the user is relatively easy and intuitive, and much easier than typing the information from scratch.
  • The process may also include security to ensure that providers of web pages do not illicitly or accidentally receive information that a user does not intend to share. For example, when the user sets up the icon for sharing data, the corresponding application may require the user to fill out a security profile that identifies the types of security to be applied to the information. Also, when the user attempts to drag the icon onto a control for a fillable form, the system may display a warning that reminds the user that he or she is sharing such information (including by identifying the particular information that is being shared), and asking the user to confirm that he or she wants to share the information. Once the security checks are met, the information is passed to the provider of the web page (box 548) in a familiar manner, including over a secure connection.
  • As noted above, the information can be stored inside or outside the browser itself. When stored inside, the information may be stored just like other auto-fill information is traditionally stored, through the browser may be programmed to prevent such information from filling a form until the conditions discussed here (e.g., dragging an icon from outside the browser and onto a canvas on the browser) are met. Alternatively, the information may be stored with the object and away from the browser, so as to provide greater security. The object and the browser may then interoperate according to an established API in order to get the information into the relevant form or other target area.
  • FIG. 5E is a flow chart of a process for displaying web page data for a page in multiple formats. In general, the process involves displaying information for a web page in multiple styles. In a first style, the information is displayed as a full-featured web page in a browser, and in a familiar manner. Normally, when such a page is minimized, or reduced in size, only the page title is displayed (e.g., in a system tray) or the original full-featured page is shown in an arbitrarily truncated manner—e.g., if a user pulls the right edge of a browser window to the left, the text of the page is cut off or it wraps at the new edge of the window, but the content is the same. In this process, the second style may be more akin to a gadget or widget whose content is coordinated with the content of the base web page.
  • The process begins at box 550, where one or more web pages are displayed in a familiar manner by a web browser. At box 552, a user provides a command to minimize the browser and the underlying pages. At box 554, the process minimizes the pages, such as by providing a selectable control in a system tray, where a user selection of the control can cause the browser to be maximized again.
  • At box 556, the process instantiates graphical user interface display objects in the form of widgets or gadgets that each correspond to one of the previously-displayed web pages (to the extent those pages support the process described here). In referring to widgets or gadgets here, we refer to programming mechanisms that display data in relatively small areas, and generally on top of an operating system background. The widgets or gadgets may display information that directly correlates to the corresponding minimized page. For example, if the page was a baseball page from a sport site, the object may display up-to-date baseball scores from around the league. If the page were the front page of a newspaper, the object may display headlines from that page. A user selection of any of the content displayed in the object may cause the browser to be re-displayed automatically, with its focus on the particular item that the user selected. For example, if the browser previously displayed a baseball page, and a user selects a particular score in the object that appears when the page is minimized, a real-time box score may be automatically displayed in a tab of the browser when the browser is re-displayed. The prior baseball page may be maintained in another tab or may be removed.
  • At box 558, the process accesses feeds from the appropriate web pages. The feed may be accessed in known manners, such as how widgets and gadgets currently receive information. The pointer for the appropriate feed may come from a tag that is on the original web page itself, where the publisher of the web page takes on the responsibility of publishing long-form and short-form representations of coordinated information as a service that makes more users want to visit a site operated by the publisher. Mechanisms may also be provided so that a user can define the type of information from a particular page or publisher that is displayed in an object. For example, a user may define that they want to see current scores when they minimize a sport-related site, rather than receiving headlines.
  • At box 560, the information received from the feeds is displayed in the objects while the page is minimized. Such information may be constantly updated, such as by adding headlines to the top of a list of headlines in a topic, as those new headlines emerge. At box 562, the system receives a user command to maximize the browser, and in response, it displays the pages again according to how they were displayed before the browser was minimized. In some instances, user interaction with the objects while the browser was minimized can be interpreted and provided to the browser so that the pages displayed when the browser is maximized are different than the pages from when the browser was minimized.
  • In this manner, web page publishers may maintain presence in front of users even when their pages are minimized, and user may obtain detailed information when such is there focus, and related summary information when they want to focus more on other topics. The provision of the information in long and short form is also coordinated, so that a user can identify the topic in which they are interested (e.g., by navigating to a web page on the topic), and can have access to short-form information on that topic without separately finding a separate source for such information.
  • FIG. 6 shows an example of a generic computer device 600 and a generic mobile computer device 650, which may be used with the techniques described here. Computing device 600 is intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. Computing device 650 is intended to represent various forms of mobile devices, such as personal digital assistants, cellular telephones, smart phones, and other similar computing devices. The components shown here, their connections and relationships, and their functions, are meant to be exemplary only, and are not meant to limit implementations of the inventions described and/or claimed in this document.
  • Computing device 600 includes a processor 602, memory 604, a storage device 606, a high-speed interface 608 connecting to memory 604 and high-speed expansion ports 610, and a low speed interface 612 connecting to low speed bus 614 and storage device 606. Each of the components 602, 604, 606, 608, 610, and 612, are interconnected using various busses, and may be mounted on a common motherboard or in other manners as appropriate. The processor 602 can process instructions for execution within the computing device 600, including instructions stored in the memory 604 or on the storage device 606 to display graphical information for a GUI on an external input/output device, such as display 616 coupled to high speed interface 608. In other implementations, multiple processors and/or multiple buses may be used, as appropriate, along with multiple memories and types of memory. Also, multiple computing devices 600 may be connected, with each device providing portions of the necessary operations (e.g., as a server bank, a group of blade servers, or a multi-processor system).
  • The memory 604 stores information within the computing device 600. In one implementation, the memory 604 is a volatile memory unit or units. In another implementation, the memory 604 is a non-volatile memory unit or units. The memory 604 may also be another form of computer-readable medium, such as a magnetic or optical disk.
  • The storage device 606 is capable of providing mass storage for the computing device 600. In one implementation, the storage device 606 may be or contain a computer-readable medium, such as a floppy disk device, a hard disk device, an optical disk device, or a tape device, a flash memory or other similar solid state memory device, or an array of devices, including devices in a storage area network or other configurations. A computer program product can be tangibly embodied in an information carrier. The computer program product may also contain instructions that, when executed, perform one or more methods, such as those described above. The information carrier is a computer- or machine-readable medium, such as the memory 604, the storage device 606, memory on processor 602, or a propagated signal.
  • The high speed controller 608 manages bandwidth-intensive operations for the computing device 600, while the low speed controller 612 manages lower bandwidth-intensive operations. Such allocation of functions is exemplary only. In one implementation, the high-speed controller 608 is coupled to memory 604, display 616 (e.g., through a graphics processor or accelerator), and to high-speed expansion ports 610, which may accept various expansion cards (not shown). In the implementation, low-speed controller 612 is coupled to storage device 606 and low-speed expansion port 614. The low-speed expansion port, which may include various communication ports (e.g., USB, Bluetooth, Ethernet, wireless Ethernet) may be coupled to one or more input/output devices, such as a keyboard, a pointing device, a scanner, or a networking device such as a switch or router, e.g., through a network adapter.
  • The computing device 600 may be implemented in a number of different forms, as shown in the figure. For example, it may be implemented as a standard server 620, or multiple times in a group of such servers. It may also be implemented as part of a rack server system 624. In addition, it may be implemented in a personal computer such as a laptop computer 622. Alternatively, components from computing device 600 may be combined with other components in a mobile device (not shown), such as device 650. Each of such devices may contain one or more of computing device 600, 650, and an entire system may be made up of multiple computing devices 600, 650 communicating with each other.
  • Computing device 650 includes a processor 652, memory 664, an input/output device such as a display 654, a communication interface 666, and a transceiver 668, among other components. The device 650 may also be provided with a storage device, such as a microdrive or other device, to provide additional storage. Each of the components 650, 652, 664, 654, 666, and 668, are interconnected using various buses, and several of the components may be mounted on a common motherboard or in other manners as appropriate.
  • The processor 652 can execute instructions within the computing device 650, including instructions stored in the memory 664. The processor may be implemented as a chipset of chips that include separate and multiple analog and digital processors. The processor may provide, for example, for coordination of the other components of the device 650, such as control of user interfaces, applications run by device 650, and wireless communication by device 650.
  • Processor 652 may communicate with a user through control interface 658 and display interface 656 coupled to a display 654. The display 654 may be, for example, a TFT LCD (Thin-Film-Transistor Liquid Crystal Display) or an OLED (Organic Light Emitting Diode) display, or other appropriate display technology. The display interface 656 may comprise appropriate circuitry for driving the display 654 to present graphical and other information to a user. The control interface 658 may receive commands from a user and convert them for submission to the processor 652. In addition, an external interface 662 may be provide in communication with processor 652, so as to enable near area communication of device 650 with other devices. External interface 662 may provide, for example, for wired communication in some implementations, or for wireless communication in other implementations, and multiple interfaces may also be used.
  • The memory 664 stores information within the computing device 650. The memory 664 can be implemented as one or more of a computer-readable medium or media, a volatile memory unit or units, or a non-volatile memory unit or units. Expansion memory 674 may also be provided and connected to device 650 through expansion interface 672, which may include, for example, a SIMM (Single In Line Memory Module) card interface. Such expansion memory 674 may provide extra storage space for device 650, or may also store applications or other information for device 650. Specifically, expansion memory 674 may include instructions to carry out or supplement the processes described above, and may include secure information also. Thus, for example, expansion memory 674 may be provide as a security module for device 650, and may be programmed with instructions that permit secure use of device 650. In addition, secure applications may be provided via the SIMM cards, along with additional information, such as placing identifying information on the SIMM card in a non-hackable manner.
  • The memory may include, for example, flash memory and/or NVRAM memory, as discussed below. In one implementation, a computer program product is tangibly embodied in an information carrier. The computer program product contains instructions that, when executed, perform one or more methods, such as those described above. The information carrier is a computer- or machine-readable medium, such as the memory 664, expansion memory 674, memory on processor 652, or a propagated signal that may be received, for example, over transceiver 668 or external interface 662.
  • Device 650 may communicate wirelessly through communication interface 666, which may include digital signal processing circuitry where necessary. Communication interface 666 may provide for communications under various modes or protocols, such as GSM voice calls, SMS, EMS, or MMS messaging, CDMA, TDMA, PDC, WCDMA, CDMA2000, or GPRS, among others. Such communication may occur, for example, through radio-frequency transceiver 668. In addition, short-range communication may occur, such as using a Bluetooth, WiFi, or other such transceiver (not shown). In addition, GPS (Global Positioning System) receiver module 670 may provide additional navigation- and location-related wireless data to device 650, which may be used as appropriate by applications running on device 650.
  • Device 650 may also communicate audibly using audio codec 660, which may receive spoken information from a user and convert it to usable digital information. Audio codec 660 may likewise generate audible sound for a user, such as through a speaker, e.g., in a handset of device 650. Such sound may include sound from voice telephone calls, may include recorded sound (e.g., voice messages, music files, etc.) and may also include sound generated by applications operating on device 650.
  • The computing device 650 may be implemented in a number of different forms, as shown in the figure. For example, it may be implemented as a cellular telephone 680. It may also be implemented as part of a smartphone 682, personal digital assistant, or other similar mobile device.
  • Various implementations of the systems and techniques described here can be realized in digital electronic circuitry, integrated circuitry, specially designed ASICs (application specific integrated circuits), computer hardware, firmware, software, and/or combinations thereof. These various implementations can include implementation in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, coupled to receive data and instructions from, and to transmit data and instructions to, a storage system, at least one input device, and at least one output device.
  • These computer programs (also known as programs, software, software applications or code) include machine instructions for a programmable processor, and can be implemented in a high-level procedural and/or object-oriented programming language, and/or in assembly/machine language. As used herein, the terms “machine-readable medium” “computer-readable medium” refers to any computer program product, apparatus and/or device (e.g., magnetic discs, optical disks, memory, Programmable Logic Devices (PLDs)) used to provide machine instructions and/or data to a programmable processor, including a machine-readable medium that receives machine instructions as a machine-readable signal. The term “machine-readable signal” refers to any signal used to provide machine instructions and/or data to a programmable processor.
  • To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the computer. Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form, including acoustic, speech, or tactile input.
  • The systems and techniques described here can be implemented in a computing system that includes a back end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front end component (e.g., a client computer having a graphical user interface or a Web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back end, middleware, or front end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network (“LAN”), a wide area network (“WAN”), and the Internet.
  • The computing system can include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.
  • A number of embodiments have been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the invention. For example, much of this document has been described with respect to television advertisements, but other forms of future, viewership-based advertisements may also be addressed, such as radio advertisements and on-line video advertisements.
  • In addition, the logic flows depicted in the figures do not require the particular order shown, or sequential order, to achieve desirable results. In addition, other steps may be provided, or steps may be eliminated, from the described flows, and other components may be added to, or removed from, the described systems. Accordingly, other embodiments are within the scope of the following claims.

Claims (21)

1. A method for user interaction with a web page, the method comprising:
displaying a web page in a web browser;
displaying a user-selectable object outside the web browser on a user interface;
receiving a user selection of the user-selectable object and a dragging of the user-selectable object onto the web browser; and
causing a command to be performed with the web browser in response to the user selection and the dragging.
2. The method of claim 1, wherein the user-selectable object corresponds to contact information for a user of the web browser, dragging of the user-selectable object comprises dragging the user-selectable object to a web form, and the command causes the web form to be filled out automatically with the contact information.
3. The method of claim 2, wherein the user-selectable object corresponds to payment card information for a user of the web browser, dragging of the user-selectable object comprises dragging the user-selectable object to a payment icon on a web page associated with a merchant, and the command causes a payment to be made to an account that corresponds to the merchant, the payment coming from an account that corresponds to the payment card.
4. The method of claim 1, wherein the user-selectable object corresponds to login information for a user of the web browser, dragging of the user-selectable object comprises dragging the user-selectable object to a web form, and the command causes the web form to be filled out automatically with the login information.
5. The method of claim 1, wherein the displayed web page further displays an application, and wherein causing the command to be performed comprises applying information relating to the user and corresponding with the user-selectable object to be applied to the application.
6. The method of claim 1, wherein receiving the dragging of the user-selectable object onto the web browser provides authorization to the web browser to access information relating to the user and corresponding with the user-selectable object.
7. The method of claim 1, wherein the displayed web page further displays a web form, and wherein causing the command to be performed comprises filling the web form with information relating to the user and corresponding with the user-selectable object.
8. The method of claim 1, wherein receiving the user selection of the user-selectable object and the dragging of the user-selectable object onto the web browser comprises receiving the dragged user-selectable object at an information-receiving element that is visibly displayed on the web page.
9. The method of claim 8, wherein the information-receiving element is an icon that comprises a selectable control for submitting information.
10. The method of claim 8, wherein the information-receiving element comprises a fillable form.
11. The method of claim 1, wherein the command comprises prompting the user to enter a password.
12. A computer-implemented method comprising:
displaying a form for user entry of user information on a web page in a web browser;
receiving a user entry of user information using the form;
storing the user information in the web browser; and
creating a user-selectable object, in the form of a movable icon, that is associated with the stored user information.
13. The method of claim 12, further comprising receiving a user dragging of the user-selectable object onto a web browser that displays a web page associated with the user-selectable object.
14. The method of claim 13, further comprising causing a command to be performed with the web browser in response to the user dragging.
15. The method of claim 12, wherein storing the user information comprises encrypting the user information.
16. The method of claim 14, wherein the stored user information comprises payment card information for a user of the web browser, the method further comprising receiving a user selection of the user-selectable object and a dragging of the user-selectable object onto the web browser, wherein selection of the user-selectable object comprises dragging the user-selectable object to a payment icon on a web page associated with a merchant; and causing a payment to be made to an account that corresponds to the merchant, the payment coming from an account that corresponds to the payment card.
17. The method of claim 14, wherein the stored user information comprises payment card information for a user of the web browser, the method further comprising receiving a user selection of the user-selectable object and a dragging of the user-selectable object onto the web browser, wherein selection of the user-selectable object comprises dragging the user-selectable object to a payment icon on a web page associated with a merchant; and causing the form be filled with the payment card information.
18. The method of claim 14, wherein causing the command to be performed with the web browser in response to the user selection and dragging comprises filling the form using the stored user information.
19. The method of claim 14, wherein receiving the dragging of the user-selectable object onto the web browser comprises acknowledgement of receiving authorization at the web browser to access the stored information.
20. The method of claim 18, wherein causing the command to be perform further comprises prompting the user to enter a password prior to filling the form with the stored user information.
21. A computer-implemented system comprising:
a web browser arranged to receive web page data and display one or more web pages, including a web page having a fillable form; and
a user-selectable object arranged to be displayed outside the web browser on a user interface, the user-selected object corresponding to stored user information and selectable to be dragged onto the web browser, and the web browser programmed to cause the web form to be filled with the stored user information in response to the dragging.
US13/300,290 2010-11-18 2011-11-18 On-Demand Auto-Fill Abandoned US20120136756A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US13/300,290 US20120136756A1 (en) 2010-11-18 2011-11-18 On-Demand Auto-Fill
US15/335,898 US10515144B2 (en) 2010-11-18 2016-10-27 On-demand auto-fill

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US41533910P 2010-11-18 2010-11-18
US13/300,290 US20120136756A1 (en) 2010-11-18 2011-11-18 On-Demand Auto-Fill

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/335,898 Continuation US10515144B2 (en) 2010-11-18 2016-10-27 On-demand auto-fill

Publications (1)

Publication Number Publication Date
US20120136756A1 true US20120136756A1 (en) 2012-05-31

Family

ID=45063233

Family Applications (3)

Application Number Title Priority Date Filing Date
US13/300,171 Abandoned US20120131441A1 (en) 2010-11-18 2011-11-18 Multi-Mode Web Browsing
US13/300,290 Abandoned US20120136756A1 (en) 2010-11-18 2011-11-18 On-Demand Auto-Fill
US15/335,898 Active 2033-03-28 US10515144B2 (en) 2010-11-18 2016-10-27 On-demand auto-fill

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US13/300,171 Abandoned US20120131441A1 (en) 2010-11-18 2011-11-18 Multi-Mode Web Browsing

Family Applications After (1)

Application Number Title Priority Date Filing Date
US15/335,898 Active 2033-03-28 US10515144B2 (en) 2010-11-18 2016-10-27 On-demand auto-fill

Country Status (7)

Country Link
US (3) US20120131441A1 (en)
JP (1) JP2013544412A (en)
KR (1) KR20130130748A (en)
CN (1) CN103403706A (en)
AU (1) AU2011329628B2 (en)
CA (1) CA2818406C (en)
WO (2) WO2012068520A2 (en)

Cited By (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120198029A1 (en) * 2011-02-01 2012-08-02 Ebay Inc. Commerce applications: data handshake between an on-line service and a third-party partner
US20130086530A1 (en) * 2011-09-30 2013-04-04 Saumil Ashvin Gandhi Systems and methods for enhancing user interaction with displayed information
US20130268400A1 (en) * 2002-10-31 2013-10-10 C-Sam, Inc. Multi-panel user interface
US20130283137A1 (en) * 2012-04-23 2013-10-24 Yahoo! Inc. Snapshot Refreshment for Search Results Page Preview
US20130283140A1 (en) * 2012-04-23 2013-10-24 Yahoo! Inc. Snapshot generation for search results page preview
US20130311573A1 (en) * 2012-05-17 2013-11-21 Luvocracy Inc. Progressively asking for increasing amounts of user and network data
US20140136953A1 (en) * 2012-11-13 2014-05-15 Lg Electronics Inc. Mobile terminal and method of controlling the mobile terminal
US20140195968A1 (en) * 2013-01-09 2014-07-10 Hewlett-Packard Development Company, L.P. Inferring and acting on user intent
US20150082381A1 (en) * 2013-09-18 2015-03-19 Xerox Corporation Method and apparatus for providing a dynamic tool menu based upon a document
CN104898914A (en) * 2014-03-05 2015-09-09 腾讯科技(深圳)有限公司 Multi-page display method and device
US9148771B2 (en) 2013-07-29 2015-09-29 Motorola Solutions, Inc. Method to provide context-aware linkage between NG9-1-1 SMS and public safety incident
US20150278922A1 (en) * 2014-03-31 2015-10-01 Monticello Enterprises LLC System and method for providing a single input field having multiple processing possibilities
WO2015166315A1 (en) * 2014-04-30 2015-11-05 Yandex Europe Ag Browser application and a method of operating the browser application
US9430794B2 (en) * 2014-03-31 2016-08-30 Monticello Enterprises LLC System and method for providing a buy option in search results when user input is classified as having a purchase intent
US20160379213A1 (en) * 2014-03-31 2016-12-29 Monticello Enterprises LLC System and method for providing a browser api for managing product purchases
US9558272B2 (en) 2014-08-14 2017-01-31 Yandex Europe Ag Method of and a system for matching audio tracks using chromaprints with a fast candidate selection routine
US20170116339A1 (en) * 2015-10-26 2017-04-27 Facebook, Inc. Searching for Application Content with Social Plug-ins
US20170249592A1 (en) * 2015-02-09 2017-08-31 Thomas Ralph Rossi System and method for automatically filling out forms
US20170256003A1 (en) * 2014-03-31 2017-09-07 Monticello Enterprises, Llc System and method for providing a payment handler api and a browser payment request api for processing a payment
US20170364986A1 (en) * 2016-06-15 2017-12-21 Sk Planet Co., Ltd. Interest information analysis method using scroll pattern and apparatus using the same
US9881083B2 (en) 2014-08-14 2018-01-30 Yandex Europe Ag Method of and a system for indexing audio tracks using chromaprints
US20180232216A1 (en) * 2015-07-31 2018-08-16 Wisetech Global Limited Systems and methods for executable content and executable content flow creation
US10121186B2 (en) * 2014-03-31 2018-11-06 Monticello Enterprises LLC System and method of using a browser application programming interface for making payments
US10152756B2 (en) 2014-03-31 2018-12-11 Monticello Enterprises LLC System and method for providing multiple payment method options to browser
US10181147B2 (en) 2012-05-17 2019-01-15 Walmart Apollo, Llc Methods and systems for arranging a webpage and purchasing products via a subscription mechanism
US10210559B2 (en) 2012-05-17 2019-02-19 Walmart Apollo, Llc Systems and methods for recommendation scraping
US20190205368A1 (en) * 2017-12-29 2019-07-04 Google Llc Input facilitation for forms in web resources
US10346895B2 (en) 2012-05-17 2019-07-09 Walmart Apollo, Llc Initiation of purchase transaction in response to a reply to a recommendation
US20190230070A1 (en) * 2014-03-31 2019-07-25 Monticello Enterprises LLC System and Method for In-App Payments
US10395293B1 (en) * 2016-08-25 2019-08-27 PredictSpring, Inc. Canonical order management system
WO2019164477A1 (en) * 2018-02-20 2019-08-29 Visa International Service Association Key-pad centric payments
US20190281030A1 (en) * 2014-03-31 2019-09-12 Monticello Enterprises LLC System and method for providing simplified in-store, product-based and rental payment processes
US20190295144A1 (en) * 2015-01-06 2019-09-26 GigSmart, Inc. Labor marketplace exchange and methods thereof
US10497037B2 (en) * 2014-03-31 2019-12-03 Monticello Enterprises LLC System and method for managing cryptocurrency payments via the payment request API
US10511580B2 (en) * 2014-03-31 2019-12-17 Monticello Enterprises LLC System and method for providing a social media shopping experience
US10580056B2 (en) 2012-05-17 2020-03-03 Walmart Apollo, Llc System and method for providing a gift exchange
US10621653B2 (en) * 2014-03-31 2020-04-14 Monticello Enterprises LLC System and method for providing payments for users in connection with a device software module having a payment application programming interface
US20200118186A1 (en) * 2018-10-11 2020-04-16 International Business Machines Corporation Generating a quote to cash solution
US20200134704A1 (en) * 2018-10-31 2020-04-30 The Boeing Company Aircraft modification marketplace
US10776847B1 (en) * 2016-09-20 2020-09-15 Amazon Technologies, Inc. Modeling user intent
US10832310B2 (en) * 2014-03-31 2020-11-10 Monticello Enterprises LLC System and method for providing a search entity-based payment process
US20200394705A1 (en) * 2019-06-14 2020-12-17 Fevo, Inc. Systems and methods of group electronic commerce and distribution of items
US20210044546A1 (en) * 2018-02-26 2021-02-11 Nintex Pty Ltd. Method and system for chatbot-enabled web forms and workflows
US20210125261A1 (en) * 2014-06-26 2021-04-29 Paypal, Inc. Social media buttons with payment capability
US11004139B2 (en) * 2014-03-31 2021-05-11 Monticello Enterprises LLC System and method for providing simplified in store purchases and in-app purchases using a use-interface-based payment API
US20210174427A1 (en) * 2014-03-31 2021-06-10 Monticello Enterprises LLC System and method for providing a search entity-based payment process
US11068892B2 (en) 2017-01-25 2021-07-20 Samsung Electronics Co., Ltd. System and method for secure personal information retrieval
US11132749B1 (en) 2017-07-27 2021-09-28 StreetShares, Inc. User interface with moveable, arrangeable, multi-sided color-coded tiles
US11132418B2 (en) * 2019-08-01 2021-09-28 Kindest, Inc. Systems and methods for generating floating button interfaces on a web browser
US11250493B2 (en) 2014-03-31 2022-02-15 Monticello Enterprises LLC System and method for performing social media cryptocurrency transactions
US11256912B2 (en) * 2016-11-16 2022-02-22 Switch, Inc. Electronic form identification using spatial information
US11270064B2 (en) * 2014-02-19 2022-03-08 Tracfone Wireless, Inc. Wireless device portal application implementing a plurality of truncated applications
US11282131B2 (en) * 2014-03-31 2022-03-22 Monticello Enterprises LLC User device enabling access to payment information in response to user input
US11423463B2 (en) * 2019-12-31 2022-08-23 Paypal, Inc. Dynamically rendered interface elements during online chat sessions
US20220292144A1 (en) * 2019-12-06 2022-09-15 Google Llc Provision of different content pages based on varying user interactions with a single content item
US11449912B1 (en) * 2021-04-06 2022-09-20 1ClickPay Inc System and method for facilitating e-commerce transaction using an interactive support agent platform
US11741527B1 (en) * 2022-08-11 2023-08-29 Bambumeta, Llc Systems and methods for distributed commerce based on a token economy
US20230351474A1 (en) * 2014-03-31 2023-11-02 Monticello Enterprises LLC System and method for providing a social media shopping experience
US20230360099A1 (en) * 2015-01-06 2023-11-09 GigSmart, Inc. Labor marketplace exchange and methods thereof
US11887178B1 (en) * 2023-02-28 2024-01-30 Stodge Inc. Materialization of a shopping cart at an instant messaging platform

Families Citing this family (78)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7904595B2 (en) 2001-01-18 2011-03-08 Sdl International America Incorporated Globalization management system and method therefor
KR20120071670A (en) * 2010-12-23 2012-07-03 엘지전자 주식회사 Mobile terminal and method for controlling the same
US9547626B2 (en) 2011-01-29 2017-01-17 Sdl Plc Systems, methods, and media for managing ambient adaptability of web applications and web services
US10657540B2 (en) 2011-01-29 2020-05-19 Sdl Netherlands B.V. Systems, methods, and media for web content management
US9002139B2 (en) 2011-02-16 2015-04-07 Adobe Systems Incorporated Methods and systems for automated image slicing
US10580015B2 (en) 2011-02-25 2020-03-03 Sdl Netherlands B.V. Systems, methods, and media for executing and optimizing online marketing initiatives
US9459767B2 (en) * 2011-08-29 2016-10-04 Ebay Inc. Tablet web visual browsing
US20130061159A1 (en) * 2011-09-01 2013-03-07 Erick Tseng Overlaid User Interface for Browser Tab Switching
US9021383B2 (en) * 2011-12-13 2015-04-28 Lenovo (Singapore) Pte. Ltd. Browsing between mobile and non-mobile web sites
US9171348B2 (en) * 2012-01-23 2015-10-27 Google Inc. Rendering content on computing systems
EP4339761A2 (en) * 2012-03-21 2024-03-20 Sony Group Corporation Information processing apparatus
US9430449B2 (en) 2012-03-30 2016-08-30 Sdl Plc Systems, methods, and media for managing editable previews of webpages
US9773270B2 (en) 2012-05-11 2017-09-26 Fredhopper B.V. Method and system for recommending products based on a ranking cocktail
CN105739833A (en) * 2012-06-29 2016-07-06 北京奇虎科技有限公司 Webpage label microimage display method and device
US10452740B2 (en) * 2012-09-14 2019-10-22 Sdl Netherlands B.V. External content libraries
US11308528B2 (en) 2012-09-14 2022-04-19 Sdl Netherlands B.V. Blueprinting of multimedia assets
US11386186B2 (en) 2012-09-14 2022-07-12 Sdl Netherlands B.V. External content library connector systems and methods
EP2901327A2 (en) * 2012-09-25 2015-08-05 Opera Software Asa Information management and display in web browsers
RU2586571C2 (en) * 2012-10-01 2016-06-10 Общество С Ограниченной Ответственностью "Яндекс" Method of displaying overlapping web pages
CN102968253B (en) * 2012-11-05 2016-09-28 北京奇虎科技有限公司 browser control method and device
US10095663B2 (en) 2012-11-14 2018-10-09 Amazon Technologies, Inc. Delivery and display of page previews during page retrieval events
CN103024010B (en) * 2012-12-03 2016-08-24 北京奇虎科技有限公司 document display apparatus and method
CN103020191B (en) * 2012-12-03 2017-04-05 北京奇虎科技有限公司 A kind of device and method for showing file
US10168853B2 (en) * 2012-12-09 2019-01-01 Facebook, Inc. Displaying news ticker content based on value in a social networking system
US9826056B2 (en) 2012-12-09 2017-11-21 Facebook, Inc. Displaying news ticker content based on diversity in a social networking system
CN103024062A (en) * 2012-12-24 2013-04-03 腾讯科技(深圳)有限公司 Data sharing method, clients and data sharing system
WO2014143776A2 (en) 2013-03-15 2014-09-18 Bodhi Technology Ventures Llc Providing remote interactions with host device using a wireless device
US9389759B2 (en) 2013-05-07 2016-07-12 Axure Software Solutions, Inc. Environment for responsive graphical designs
US9946806B2 (en) 2013-05-07 2018-04-17 Axure Software Solutions, Inc. Exporting responsive designs from a graphical design tool
US8671352B1 (en) 2013-05-07 2014-03-11 Axure Software Solutions, Inc. Variable dimension version editing for graphical designs
US9804745B2 (en) * 2013-06-09 2017-10-31 Apple Inc. Reordering content panes in a stacked tab view
US20140372936A1 (en) * 2013-06-13 2014-12-18 Tencent Technology (Shenzhen) Company Limited Method and apparatus for displaying tag data
US10168887B2 (en) * 2013-06-26 2019-01-01 Nicolas Bissantz System for displaying and adjusting display of information to a user
US9516081B2 (en) * 2013-09-20 2016-12-06 Amazon Technologies, Inc. Reduced latency electronic content system
CN103677522B (en) * 2013-12-09 2018-12-11 金蝶软件(中国)有限公司 The switching method and device of data environment in ERP system
WO2015108526A1 (en) * 2014-01-17 2015-07-23 Hewlett-Packard Development Company, L.P. Automatic adjustment of documents
KR102249886B1 (en) * 2014-02-14 2021-05-10 삼성전자 주식회사 Method for moving web-page, portable terminal using the same and recording medium
CN104881416A (en) * 2014-02-28 2015-09-02 深圳市网安计算机安全检测技术有限公司 Public opinion evidence acquiring method and system
DE102014004036A1 (en) * 2014-03-21 2015-09-24 Sicht Pack Hagner Gmbh A method of visually displaying content on a display of an electronic device
CN103927386B (en) * 2014-04-28 2018-07-17 优视科技有限公司 Navigation icon generation method and device
US11169666B1 (en) 2014-05-22 2021-11-09 Amazon Technologies, Inc. Distributed content browsing system using transferred hardware-independent graphics commands
US10313506B2 (en) 2014-05-30 2019-06-04 Apple Inc. Wellness aggregator
US9454515B1 (en) 2014-06-17 2016-09-27 Amazon Technologies, Inc. Content browser system using graphics commands and native text intelligence
US20190228442A1 (en) * 2014-07-10 2019-07-25 Fanangel, Llc Crowdfunding for incentivizing amateur athletes
US9684645B2 (en) * 2014-08-04 2017-06-20 Google Inc. Summary views for ebooks
KR102264220B1 (en) * 2014-09-02 2021-06-14 삼성전자주식회사 Electronic apparatus and display method thereof
US20200218413A1 (en) 2014-10-30 2020-07-09 Google Llc Systems and methods for presenting scrolling online content on mobile devices
CN105740279A (en) * 2014-12-10 2016-07-06 深圳市腾讯计算机系统有限公司 Tab page processing method and apparatus for browser
EP3254452B1 (en) 2015-02-02 2018-12-26 Apple Inc. Device, method, and graphical user interface for establishing a relationship and connection between two devices
WO2016144385A1 (en) 2015-03-08 2016-09-15 Apple Inc. Sharing user-configurable graphical constructs
WO2016185551A1 (en) * 2015-05-19 2016-11-24 三菱電機株式会社 User interface device and screen display method for user interface device
US10275116B2 (en) * 2015-06-07 2019-04-30 Apple Inc. Browser with docked tabs
CN105159524A (en) 2015-08-03 2015-12-16 小米科技有限责任公司 Interface display method and apparatus
CN105892894B (en) * 2015-09-09 2020-08-11 北京奇虎科技有限公司 Method and device for processing screen sliding event conflict
US10614167B2 (en) 2015-10-30 2020-04-07 Sdl Plc Translation review workflow systems and methods
US9851871B2 (en) * 2015-11-25 2017-12-26 International Business Machines Corporation Browser bookmarking for multiple environments
US10546036B2 (en) 2016-02-26 2020-01-28 International Business Machines Corporation Web browser having improved navigational functionality
CN106020682A (en) * 2016-05-05 2016-10-12 北京小米移动软件有限公司 Multi-task management method and device
US20170351387A1 (en) * 2016-06-02 2017-12-07 Ebay Inc. Quick trace navigator
DK201770423A1 (en) 2016-06-11 2018-01-15 Apple Inc Activity and workout updates
US10873786B2 (en) 2016-06-12 2020-12-22 Apple Inc. Recording and broadcasting application visual output
CN106406851A (en) * 2016-08-24 2017-02-15 北京松鼠山科技有限公司 Webpage image capture method and system
US10366629B2 (en) * 2016-10-28 2019-07-30 Microsoft Technology Licensing, Llc Problem solver steps user interface
US10867445B1 (en) * 2016-11-16 2020-12-15 Amazon Technologies, Inc. Content segmentation and navigation
CN107092707B (en) * 2017-05-31 2020-11-24 北京安云世纪科技有限公司 Display method and device for collected application program page
DK180171B1 (en) 2018-05-07 2020-07-14 Apple Inc USER INTERFACES FOR SHARING CONTEXTUALLY RELEVANT MEDIA CONTENT
USD916862S1 (en) 2018-05-10 2021-04-20 Wells Fargo Bank, N.A. Display screen or portion thereof with graphical user interface
US11079919B1 (en) 2018-05-10 2021-08-03 Wells Fargo Bank, N.A. Personal computing devices with improved graphical user interfaces
US10592589B1 (en) 2018-08-21 2020-03-17 Axure Software Solutions, Inc. Multi-view masters for graphical designs
US10521220B1 (en) 2018-12-18 2019-12-31 Palantir Technologies Inc. Systems and methods for coordinating the deployment of components to defined user groups
US11531719B2 (en) * 2020-09-22 2022-12-20 Microsoft Technology Licensing, Llc Navigation tab control organization and management for web browsers
EP4323992A1 (en) 2021-05-15 2024-02-21 Apple Inc. User interfaces for group workouts
WO2023130084A1 (en) * 2021-12-31 2023-07-06 Google Llc Storage of content associated with a resource locator
EP4221240A1 (en) * 2022-01-28 2023-08-02 LG Electronics, Inc. Image display apparatus
CN114911388B (en) * 2022-05-26 2023-11-21 深圳价值在线信息科技股份有限公司 Intelligent updating method and communication system for website LOGO icon
CN114935989A (en) * 2022-06-24 2022-08-23 Vidaa国际控股(荷兰)公司 Browser page display method and display equipment
US11921986B1 (en) * 2022-09-27 2024-03-05 Open Text Holdings, Inc. System and method for web page navigation behavior
JP7297174B1 (en) 2023-01-31 2023-06-23 スズキ株式会社 automotive display

Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6192380B1 (en) * 1998-03-31 2001-02-20 Intel Corporation Automatic web based form fill-in
US20020052806A1 (en) * 2000-06-02 2002-05-02 David Hodson Integrated electronic shopping cart system and method
US20020087430A1 (en) * 2000-07-27 2002-07-04 Tony Davis Universal shopping basket
US6651217B1 (en) * 1999-09-01 2003-11-18 Microsoft Corporation System and method for populating forms with previously used data values
US6910179B1 (en) * 1998-11-10 2005-06-21 Clarita Corporation Method and apparatus for automatic form filling
US6928623B1 (en) * 1999-12-30 2005-08-09 International Business Machines Corporation Method and system for selecting a target window for automatic fill-in
US20060179404A1 (en) * 2005-02-08 2006-08-10 Microsoft Corporation Method for a browser auto form fill
US20060218088A1 (en) * 2005-03-24 2006-09-28 Flora John R Intelligent auto-fill transaction data
US20070064004A1 (en) * 2005-09-21 2007-03-22 Hewlett-Packard Development Company, L.P. Moving a graphic element
US7197475B1 (en) * 1999-06-30 2007-03-27 Catalog City, Inc. Multi-vendor internet commerce system for e-commerce applications and methods therefor
US20070118434A1 (en) * 2005-11-23 2007-05-24 Ebay Inc. System and method for transaction automation
US20070198432A1 (en) * 2001-01-19 2007-08-23 Pitroda Satyan G Transactional services
US20090132405A1 (en) * 2007-11-15 2009-05-21 German Scipioni System and method for auto-filling information
US7660779B2 (en) * 2004-05-12 2010-02-09 Microsoft Corporation Intelligent autofill
US20100042535A1 (en) * 2008-08-15 2010-02-18 Ebay Inc. Currency display
US7680694B2 (en) * 2004-03-11 2010-03-16 American Express Travel Related Services Company, Inc. Method and apparatus for a user to shop online in a three dimensional virtual reality setting
US20110307389A1 (en) * 2010-06-15 2011-12-15 Opensky Project, Inc. Method and System for Distributed Point of Sale Transactions
US8255323B1 (en) * 2009-01-09 2012-08-28 Apple Inc. Motion based payment confirmation

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5495565A (en) * 1994-06-21 1996-02-27 Wang Laboratories, Inc. Integrated form document editor with form descriptor table, background bitmap, graphics editor and text editor, composite image generator and intelligent autofill
US6490601B1 (en) * 1999-01-15 2002-12-03 Infospace, Inc. Server for enabling the automatic insertion of data into electronic forms on a user computer
US7500188B1 (en) * 2000-04-26 2009-03-03 Novarra, Inc. System and method for adapting information content for an electronic device
JP2004502257A (en) * 2000-06-26 2004-01-22 ザ ゲイター コポレイション Apparatus and method for selecting and automating data entry into electronic forms
US7194411B2 (en) * 2001-02-26 2007-03-20 Benjamin Slotznick Method of displaying web pages to enable user access to text information that the user has difficulty reading
US6925308B2 (en) * 2002-02-11 2005-08-02 Qualcomm, Incorporated Auto-fill message fields in a communication terminal
US20040012627A1 (en) * 2002-07-17 2004-01-22 Sany Zakharia Configurable browser for adapting content to diverse display types
US20110196695A1 (en) * 2010-02-05 2011-08-11 Qin Ye System and method for peer referencing in an online computer system
US8839090B2 (en) 2004-09-16 2014-09-16 International Business Machines Corporation System and method to capture and manage input values for automatic form fill
US20060062362A1 (en) * 2004-09-22 2006-03-23 Davis Franklin A System and method for server assisted browsing
US7345688B2 (en) * 2004-10-18 2008-03-18 Microsoft Corporation Semantic thumbnails
US7644358B2 (en) * 2004-11-01 2010-01-05 Sap Ag Usability of a portal application
US20060277460A1 (en) * 2005-06-03 2006-12-07 Scott Forstall Webview applications
US8560942B2 (en) * 2005-12-15 2013-10-15 Microsoft Corporation Determining document layout between different views
US20090199127A1 (en) * 2008-01-31 2009-08-06 Microsoft Corporation Previewing target display areas
US8365082B2 (en) * 2008-10-23 2013-01-29 Savnor Technologies Llc Universal content referencing, packaging, distribution system, and a tool for customizing web content
CN103221958B (en) * 2010-09-24 2016-01-06 维萨国际服务协会 Use the method and system of general ID and biological characteristic
US20140149263A1 (en) * 2012-11-27 2014-05-29 Mashinery Pty Ltd. Data Assembly, Transfer and Storage

Patent Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6192380B1 (en) * 1998-03-31 2001-02-20 Intel Corporation Automatic web based form fill-in
US6910179B1 (en) * 1998-11-10 2005-06-21 Clarita Corporation Method and apparatus for automatic form filling
US7197475B1 (en) * 1999-06-30 2007-03-27 Catalog City, Inc. Multi-vendor internet commerce system for e-commerce applications and methods therefor
US6651217B1 (en) * 1999-09-01 2003-11-18 Microsoft Corporation System and method for populating forms with previously used data values
US6928623B1 (en) * 1999-12-30 2005-08-09 International Business Machines Corporation Method and system for selecting a target window for automatic fill-in
US20020052806A1 (en) * 2000-06-02 2002-05-02 David Hodson Integrated electronic shopping cart system and method
US20020087430A1 (en) * 2000-07-27 2002-07-04 Tony Davis Universal shopping basket
US20070198432A1 (en) * 2001-01-19 2007-08-23 Pitroda Satyan G Transactional services
US7680694B2 (en) * 2004-03-11 2010-03-16 American Express Travel Related Services Company, Inc. Method and apparatus for a user to shop online in a three dimensional virtual reality setting
US7660779B2 (en) * 2004-05-12 2010-02-09 Microsoft Corporation Intelligent autofill
US20060179404A1 (en) * 2005-02-08 2006-08-10 Microsoft Corporation Method for a browser auto form fill
US20060218088A1 (en) * 2005-03-24 2006-09-28 Flora John R Intelligent auto-fill transaction data
US20070064004A1 (en) * 2005-09-21 2007-03-22 Hewlett-Packard Development Company, L.P. Moving a graphic element
US20070118434A1 (en) * 2005-11-23 2007-05-24 Ebay Inc. System and method for transaction automation
US7877295B2 (en) * 2005-11-23 2011-01-25 Ebay Inc. System and method for transaction automation
US20090132405A1 (en) * 2007-11-15 2009-05-21 German Scipioni System and method for auto-filling information
US20100042535A1 (en) * 2008-08-15 2010-02-18 Ebay Inc. Currency display
US8255323B1 (en) * 2009-01-09 2012-08-28 Apple Inc. Motion based payment confirmation
US20110307389A1 (en) * 2010-06-15 2011-12-15 Opensky Project, Inc. Method and System for Distributed Point of Sale Transactions

Cited By (145)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130268400A1 (en) * 2002-10-31 2013-10-10 C-Sam, Inc. Multi-panel user interface
US9064281B2 (en) * 2002-10-31 2015-06-23 Mastercard Mobile Transactions Solutions, Inc. Multi-panel user interface
US11032349B2 (en) 2011-02-01 2021-06-08 Ebay Inc. Commerce applications between an on-line service and a third-party
US11930067B2 (en) 2011-02-01 2024-03-12 Ebay Inc. Commerce applications: data handshake between an on-line service and a third-party partner
US9912719B2 (en) 2011-02-01 2018-03-06 Ebay Inc. Commerce applications between an on-line service and a third-party
US8639778B2 (en) * 2011-02-01 2014-01-28 Ebay Inc. Commerce applications: data handshake between an on-line service and a third-party partner
US11252217B2 (en) 2011-02-01 2022-02-15 Ebay Inc. Commerce applications: data handshake between an on-line service and a third-party partner
US20120198029A1 (en) * 2011-02-01 2012-08-02 Ebay Inc. Commerce applications: data handshake between an on-line service and a third-party partner
US11720221B2 (en) 2011-09-30 2023-08-08 Paypal, Inc. Systems and methods for enhancing user interaction with displayed information
US10078415B2 (en) 2011-09-30 2018-09-18 Paypal, Inc. Systems and methods for enhancing user interaction with displayed information
US9146665B2 (en) * 2011-09-30 2015-09-29 Paypal, Inc. Systems and methods for enhancing user interaction with displayed information
US20130086530A1 (en) * 2011-09-30 2013-04-04 Saumil Ashvin Gandhi Systems and methods for enhancing user interaction with displayed information
US11243654B2 (en) 2011-09-30 2022-02-08 Paypal, Inc. Systems and methods for enhancing user interaction with displayed information
US20130283140A1 (en) * 2012-04-23 2013-10-24 Yahoo! Inc. Snapshot generation for search results page preview
US9529926B2 (en) * 2012-04-23 2016-12-27 Excalibur Ip, Llc Snapshot refreshment for search results page preview
US9218419B2 (en) * 2012-04-23 2015-12-22 Yahoo! Inc. Snapshot generation for search results page preview
US20130283137A1 (en) * 2012-04-23 2013-10-24 Yahoo! Inc. Snapshot Refreshment for Search Results Page Preview
US10740779B2 (en) 2012-05-17 2020-08-11 Walmart Apollo, Llc Pre-establishing purchasing intent for computer based commerce systems
US10580056B2 (en) 2012-05-17 2020-03-03 Walmart Apollo, Llc System and method for providing a gift exchange
US9799046B2 (en) 2012-05-17 2017-10-24 Wal-Mart Stores, Inc. Zero click commerce systems
US9875483B2 (en) 2012-05-17 2018-01-23 Wal-Mart Stores, Inc. Conversational interfaces
US20130311573A1 (en) * 2012-05-17 2013-11-21 Luvocracy Inc. Progressively asking for increasing amounts of user and network data
US10181147B2 (en) 2012-05-17 2019-01-15 Walmart Apollo, Llc Methods and systems for arranging a webpage and purchasing products via a subscription mechanism
US10210559B2 (en) 2012-05-17 2019-02-19 Walmart Apollo, Llc Systems and methods for recommendation scraping
US10346895B2 (en) 2012-05-17 2019-07-09 Walmart Apollo, Llc Initiation of purchase transaction in response to a reply to a recommendation
KR102024791B1 (en) * 2012-11-13 2019-09-24 엘지전자 주식회사 Mobile terminal and control method thereof
KR20140061133A (en) * 2012-11-13 2014-05-21 엘지전자 주식회사 Mobile terminal and control method thereof
US9383815B2 (en) * 2012-11-13 2016-07-05 Lg Electronics Inc. Mobile terminal and method of controlling the mobile terminal
US20140136953A1 (en) * 2012-11-13 2014-05-15 Lg Electronics Inc. Mobile terminal and method of controlling the mobile terminal
US20140195968A1 (en) * 2013-01-09 2014-07-10 Hewlett-Packard Development Company, L.P. Inferring and acting on user intent
US9148771B2 (en) 2013-07-29 2015-09-29 Motorola Solutions, Inc. Method to provide context-aware linkage between NG9-1-1 SMS and public safety incident
US9276991B2 (en) * 2013-09-18 2016-03-01 Xerox Corporation Method and apparatus for providing a dynamic tool menu based upon a document
US20150082381A1 (en) * 2013-09-18 2015-03-19 Xerox Corporation Method and apparatus for providing a dynamic tool menu based upon a document
US11270064B2 (en) * 2014-02-19 2022-03-08 Tracfone Wireless, Inc. Wireless device portal application implementing a plurality of truncated applications
CN104898914A (en) * 2014-03-05 2015-09-09 腾讯科技(深圳)有限公司 Multi-page display method and device
US11244377B2 (en) * 2014-03-31 2022-02-08 Monticello Enterprises LLC System and method for providing a browser API for managing product purchases
US10650441B1 (en) * 2014-03-31 2020-05-12 Monticello Enterprises LLC System and method for providing data to a merchant device from a user device over a wireless link using a single function action
US20160379213A1 (en) * 2014-03-31 2016-12-29 Monticello Enterprises LLC System and method for providing a browser api for managing product purchases
US20170004588A1 (en) * 2014-03-31 2017-01-05 Monticello Enterprises LLC System and method for managing a purchasing process including a dialog
US20230351474A1 (en) * 2014-03-31 2023-11-02 Monticello Enterprises LLC System and method for providing a social media shopping experience
US11669884B2 (en) * 2014-03-31 2023-06-06 Monticello Enterprises LLC System and method for providing data to a merchant device from a user device over a wireless link
US9734526B2 (en) * 2014-03-31 2017-08-15 Monticello Enterprises LLC System and method for providing a buy option through postings on a social network when user input is classified as having a sale intent
US20230109515A1 (en) * 2014-03-31 2023-04-06 Monticello Enterprises LLC System and method for receiving data at a merchant device from a user device over a wireless link
US20170256003A1 (en) * 2014-03-31 2017-09-07 Monticello Enterprises, Llc System and method for providing a payment handler api and a browser payment request api for processing a payment
US20170256000A1 (en) * 2014-03-31 2017-09-07 Monticello Enterprises LLC System and method for providing a universal shopping cart
US9767520B2 (en) * 2014-03-31 2017-09-19 Monticello Enterprises LLC System and method for managing a purchasing process associated with a social media site
US9466081B2 (en) * 2014-03-31 2016-10-11 Monticello Enterprises LLC System and method of providing a buy option response to a generalized search
US9824408B2 (en) * 2014-03-31 2017-11-21 Monticello Enterprises LLC Browser payment request API
US20230360109A1 (en) * 2014-03-31 2023-11-09 Monticello Enterprises LLC System and method for providing a social media shopping experience
US9449338B2 (en) * 2014-03-31 2016-09-20 Monticello Enterprises LLC System and method of providing a buy option response to a generalized search
US11468497B2 (en) * 2014-03-31 2022-10-11 Monticello Enterprises LLC System and method for receiving data at a merchant device from a user device over a wireless link
US9436957B2 (en) * 2014-03-31 2016-09-06 Monticello Enterprises LLC System, method, and computer-readable storage device for providing a buy option in a social networking posting when user input is classified as having a sale intent
US9922380B2 (en) * 2014-03-31 2018-03-20 Monticello Enterprises LLC System and method for providing messenger application for product purchases
US9922381B2 (en) * 2014-03-31 2018-03-20 Monticello Enterprises LLC System and method for providing a payment handler API and a browser payment request API for processing a payment
US10002396B2 (en) 2014-03-31 2018-06-19 Monticello Enterprises LLC System and method for transitioning from a first site to a second site
US11461828B2 (en) * 2014-03-31 2022-10-04 Monticello Enterprises LLC System and method for receiving data at a merchant device from a user device over a wireless link
US11836784B2 (en) * 2014-03-31 2023-12-05 Monticello Enterprises LLC System and method for providing a search entity-based payment process
US9430794B2 (en) * 2014-03-31 2016-08-30 Monticello Enterprises LLC System and method for providing a buy option in search results when user input is classified as having a purchase intent
US10121186B2 (en) * 2014-03-31 2018-11-06 Monticello Enterprises LLC System and method of using a browser application programming interface for making payments
US10152756B2 (en) 2014-03-31 2018-12-11 Monticello Enterprises LLC System and method for providing multiple payment method options to browser
US9430790B2 (en) * 2014-03-31 2016-08-30 Monticello Enterprises LLC System and method of providing a buy option in a social media network
US9396491B2 (en) 2014-03-31 2016-07-19 Monticello Enterprises LLC System, method, and computer-readable storage device for providing a buy option in search results when user input is classified as having a purchase intent
US10332170B2 (en) * 2014-03-31 2019-06-25 Monticello Enterprises LLC System and method of managing a buy option
US11842380B2 (en) * 2014-03-31 2023-12-12 Monticello Enterprises LLC System and method for providing a social media shopping experience
US9373138B2 (en) 2014-03-31 2016-06-21 Monticello Enterprises LLC System and method for providing a single input field having multiple processing possibilities
US20190230070A1 (en) * 2014-03-31 2019-07-25 Monticello Enterprises LLC System and Method for In-App Payments
US10366429B2 (en) * 2014-03-31 2019-07-30 Monticello Enterprises LLC Browser payment request API
US11282131B2 (en) * 2014-03-31 2022-03-22 Monticello Enterprises LLC User device enabling access to payment information in response to user input
US9292871B2 (en) 2014-03-31 2016-03-22 Monticello Enterprises LLC System and method for providing a single input field having multiple processing possibilities
US20190281030A1 (en) * 2014-03-31 2019-09-12 Monticello Enterprises LLC System and method for providing simplified in-store, product-based and rental payment processes
US9361638B2 (en) * 2014-03-31 2016-06-07 Monticello Enterprises LLC System and method for providing a single input field having multiple processing possibilities
US20160155171A1 (en) * 2014-03-31 2016-06-02 Monticello Enterprises LLC System and method for providing a single input field having multiple processing possibilities
US10497037B2 (en) * 2014-03-31 2019-12-03 Monticello Enterprises LLC System and method for managing cryptocurrency payments via the payment request API
US11250493B2 (en) 2014-03-31 2022-02-15 Monticello Enterprises LLC System and method for performing social media cryptocurrency transactions
US10504193B2 (en) * 2014-03-31 2019-12-10 Monticello Enterprises LLC System and method for providing a universal shopping cart
US10511580B2 (en) * 2014-03-31 2019-12-17 Monticello Enterprises LLC System and method for providing a social media shopping experience
US20160155180A1 (en) * 2014-03-31 2016-06-02 Monticello Enterprises LLC System and method for providing a single input field having multiple processing possibilities
US10621653B2 (en) * 2014-03-31 2020-04-14 Monticello Enterprises LLC System and method for providing payments for users in connection with a device software module having a payment application programming interface
US20150278922A1 (en) * 2014-03-31 2015-10-01 Monticello Enterprises LLC System and method for providing a single input field having multiple processing possibilities
US20160155184A1 (en) * 2014-03-31 2016-06-02 Monticello Enterprises LLC System and method for providing a single input field having multiple processing possibilities
US10643266B2 (en) * 2014-03-31 2020-05-05 Monticello Enterprises LLC System and method for in-app payments
US10650443B2 (en) * 2014-03-31 2020-05-12 Monticello Enterprises LLC System and method for providing data to a merchant device from a user device over a wireless link
US20160155174A1 (en) * 2014-03-31 2016-06-02 Monticello Enterprises, Llc System and method for providing a single input field having multiple processing possibilities
US10726472B2 (en) * 2014-03-31 2020-07-28 Monticello Enterprises LLC System and method for providing simplified in-store, product-based and rental payment processes
US20160155177A1 (en) * 2014-03-31 2016-06-02 Monticello Enterprises LLC System and method for providing a single input field having multiple processing possibilities
US10769717B2 (en) * 2014-03-31 2020-09-08 Monticello Enterprises LLC System and method for providing data to a merchant device from a user device over a wireless link
US20210358015A1 (en) * 2014-03-31 2021-11-18 Monticello Enterprises LLC System and method for providing a social media shopping experience
US20210326964A1 (en) * 2014-03-31 2021-10-21 Monticello Enterprises LLC System and Method for Providing Simplified In-Store Purchases and In-App Purchases Using a Use-Interface-Based Payment API
US10825079B2 (en) * 2014-03-31 2020-11-03 Monticello Enterprises LLC System and method for providing data to a merchant device from a user device over a wireless link
US10832310B2 (en) * 2014-03-31 2020-11-10 Monticello Enterprises LLC System and method for providing a search entity-based payment process
US11915303B2 (en) * 2014-03-31 2024-02-27 Monticello Enterprises LLC System and method for providing a social media shopping experience
US9524519B2 (en) * 2014-03-31 2016-12-20 Monticello Enterprises LLC System and method for providing a buy option through postings on a social network when user input is classified as having a sale intent
US10977716B2 (en) * 2014-03-31 2021-04-13 Monticello Enterprises LLC System and method for providing multiple application programming interfaces for a browser to manage payments from a payment service
US11080777B2 (en) * 2014-03-31 2021-08-03 Monticello Enterprises LLC System and method for providing a social media shopping experience
US11004139B2 (en) * 2014-03-31 2021-05-11 Monticello Enterprises LLC System and method for providing simplified in store purchases and in-app purchases using a use-interface-based payment API
US11074640B2 (en) * 2014-03-31 2021-07-27 Monticello Enterprises LLC System and method for providing a universal shopping cart across multiple search platforms
US20160155173A1 (en) * 2014-03-31 2016-06-02 Monticello Enterprises LLC System and method for providing a single input field having multiple processing possibilities
US20210174427A1 (en) * 2014-03-31 2021-06-10 Monticello Enterprises LLC System and method for providing a search entity-based payment process
US20210174429A1 (en) * 2014-03-31 2021-06-10 Monticello Enterprises LLC System and method for providing data to a merchant device from a user device over a wireless link
WO2015166315A1 (en) * 2014-04-30 2015-11-05 Yandex Europe Ag Browser application and a method of operating the browser application
US20210125261A1 (en) * 2014-06-26 2021-04-29 Paypal, Inc. Social media buttons with payment capability
US11922483B2 (en) * 2014-06-26 2024-03-05 Paypal, Inc. Social media buttons with payment capability
US9558272B2 (en) 2014-08-14 2017-01-31 Yandex Europe Ag Method of and a system for matching audio tracks using chromaprints with a fast candidate selection routine
US9881083B2 (en) 2014-08-14 2018-01-30 Yandex Europe Ag Method of and a system for indexing audio tracks using chromaprints
US20230360099A1 (en) * 2015-01-06 2023-11-09 GigSmart, Inc. Labor marketplace exchange and methods thereof
US11694250B2 (en) * 2015-01-06 2023-07-04 GigSmart, Inc. Labor marketplace exchange and methods thereof
US20190295144A1 (en) * 2015-01-06 2019-09-26 GigSmart, Inc. Labor marketplace exchange and methods thereof
US10019430B2 (en) * 2015-02-09 2018-07-10 Thomas Ralph Rossi System and method for automatically filling out forms
US20170249592A1 (en) * 2015-02-09 2017-08-31 Thomas Ralph Rossi System and method for automatically filling out forms
US11467808B2 (en) * 2015-07-31 2022-10-11 Wisetech Global Limited Systems and methods for executable content and executable content flow creation
US20180232216A1 (en) * 2015-07-31 2018-08-16 Wisetech Global Limited Systems and methods for executable content and executable content flow creation
US20170116339A1 (en) * 2015-10-26 2017-04-27 Facebook, Inc. Searching for Application Content with Social Plug-ins
US10503796B2 (en) * 2015-10-26 2019-12-10 Facebook, Inc. Searching for application content with social plug-ins
US20170364986A1 (en) * 2016-06-15 2017-12-21 Sk Planet Co., Ltd. Interest information analysis method using scroll pattern and apparatus using the same
US10803506B2 (en) * 2016-06-15 2020-10-13 Sk Planet Co., Ltd. Interest information analysis method using scroll pattern and apparatus using the same
US11276097B1 (en) * 2016-08-25 2022-03-15 PredictSpring, Inc. Canonical order management system
US10395293B1 (en) * 2016-08-25 2019-08-27 PredictSpring, Inc. Canonical order management system
US10776847B1 (en) * 2016-09-20 2020-09-15 Amazon Technologies, Inc. Modeling user intent
US11256912B2 (en) * 2016-11-16 2022-02-22 Switch, Inc. Electronic form identification using spatial information
US11068892B2 (en) 2017-01-25 2021-07-20 Samsung Electronics Co., Ltd. System and method for secure personal information retrieval
US11823277B1 (en) 2017-07-27 2023-11-21 MeridianLink, Inc. User interface with moveable, arrangeable, multi-sided color-coded tiles
US11922510B1 (en) 2017-07-27 2024-03-05 MeridianLink, Inc. User interface with moveable, arrangeable, multi-sided color-coded tiles
US11823278B1 (en) 2017-07-27 2023-11-21 MeridianLink, Inc. User interface with moveable, arrangeable, multi-sided color-coded tiles
US11132749B1 (en) 2017-07-27 2021-09-28 StreetShares, Inc. User interface with moveable, arrangeable, multi-sided color-coded tiles
US20190205368A1 (en) * 2017-12-29 2019-07-04 Google Llc Input facilitation for forms in web resources
US11449669B2 (en) 2017-12-29 2022-09-20 Google Llc Input facilitation for forms in web resources
US11017163B2 (en) * 2017-12-29 2021-05-25 Google Llc Input facilitation for forms in web resources
WO2019164477A1 (en) * 2018-02-20 2019-08-29 Visa International Service Association Key-pad centric payments
US11741453B2 (en) 2018-02-20 2023-08-29 Visa International Service Association Key-pad centric payments
US11144906B2 (en) 2018-02-20 2021-10-12 Visa International Service Association Key-pad centric payments
US20210044546A1 (en) * 2018-02-26 2021-02-11 Nintex Pty Ltd. Method and system for chatbot-enabled web forms and workflows
US11765104B2 (en) * 2018-02-26 2023-09-19 Nintex Pty Ltd. Method and system for chatbot-enabled web forms and workflows
US20200118186A1 (en) * 2018-10-11 2020-04-16 International Business Machines Corporation Generating a quote to cash solution
US11727456B2 (en) * 2018-10-11 2023-08-15 International Business Machines Corporation Generating a quote to cash solution
US11605122B2 (en) * 2018-10-31 2023-03-14 The Boeing Company Aircraft modification marketplace
US20200134704A1 (en) * 2018-10-31 2020-04-30 The Boeing Company Aircraft modification marketplace
US20200394705A1 (en) * 2019-06-14 2020-12-17 Fevo, Inc. Systems and methods of group electronic commerce and distribution of items
US11132418B2 (en) * 2019-08-01 2021-09-28 Kindest, Inc. Systems and methods for generating floating button interfaces on a web browser
US20220292144A1 (en) * 2019-12-06 2022-09-15 Google Llc Provision of different content pages based on varying user interactions with a single content item
US20230084311A1 (en) * 2019-12-31 2023-03-16 Paypal, Inc. Dynamically rendered interface elements during online chat sessions
US11423463B2 (en) * 2019-12-31 2022-08-23 Paypal, Inc. Dynamically rendered interface elements during online chat sessions
US11449912B1 (en) * 2021-04-06 2022-09-20 1ClickPay Inc System and method for facilitating e-commerce transaction using an interactive support agent platform
US20240054549A1 (en) * 2022-08-11 2024-02-15 Bambumeta, Llc Systems and Methods for Distributed Commerce Based on a Token Economy
US11741527B1 (en) * 2022-08-11 2023-08-29 Bambumeta, Llc Systems and methods for distributed commerce based on a token economy
US11887178B1 (en) * 2023-02-28 2024-01-30 Stodge Inc. Materialization of a shopping cart at an instant messaging platform

Also Published As

Publication number Publication date
WO2012068521A3 (en) 2012-07-12
JP2013544412A (en) 2013-12-12
US20120131441A1 (en) 2012-05-24
WO2012068521A2 (en) 2012-05-24
KR20130130748A (en) 2013-12-02
CA2818406C (en) 2017-07-18
CN103403706A (en) 2013-11-20
CA2818406A1 (en) 2012-05-24
WO2012068520A2 (en) 2012-05-24
US20170046325A1 (en) 2017-02-16
AU2011329628B2 (en) 2016-06-09
AU2011329628A1 (en) 2013-06-06
US10515144B2 (en) 2019-12-24
WO2012068520A3 (en) 2012-07-12

Similar Documents

Publication Publication Date Title
US10515144B2 (en) On-demand auto-fill
US11941244B1 (en) Presenting suggestions from search corpora
US10678871B2 (en) Accelerating find in page queries within a web browser
US20170329490A1 (en) Computer-implemented method of generating a content recommendation interface
US7779370B2 (en) User interface for mobile devices
JP5912083B2 (en) User interface providing method and apparatus
US10387891B2 (en) Method and system for selecting and presenting web advertisements in a full-screen cinematic view
US10007402B2 (en) System and method for displaying content
JP5752708B2 (en) Electronic text processing and display
US8887085B1 (en) Dynamic content navigation
US8935620B1 (en) Dynamic content management
CN102591907A (en) Persistent user interface for providing navigational functionality
EP1997036A2 (en) Delivering/accessing information
US20160231884A1 (en) System and method for managing a web resource in a browser application
KR101350525B1 (en) Method and apparatus for using tab corresponding to query to provide additional information
US20110022630A1 (en) Secure virtual platform for querying widgets
US20230214094A1 (en) Methods and apparatus for related search within a browser
WO2014110048A1 (en) Browser interface for accessing supple-mental content associated with content pages
US20240012555A1 (en) Identifying and navigating to a visual item on a web page
US20230214435A1 (en) Methods and apparatus for persistent search within a browser

Legal Events

Date Code Title Description
AS Assignment

Owner name: GOOGLE INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:JITKOFF, JOHN NICHOLAS;SHAH, ROMA R.;SIGNING DATES FROM 20111212 TO 20111228;REEL/FRAME:027683/0477

STCB Information on status: application discontinuation

Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION

AS Assignment

Owner name: GOOGLE LLC, CALIFORNIA

Free format text: CHANGE OF NAME;ASSIGNOR:GOOGLE INC.;REEL/FRAME:044142/0357

Effective date: 20170929