This relates generally to user interfaces that enable users to enter data into processor based devices.
Processor based devices receive a large variety of user input data. It is generally advantageous to save the user the trouble of entering the full text string to the greatest possible extent. Thus, systems are available which, based on the initial character entries, predict the complete user entry to save the user the trouble of typing in the entire entry. Automatic text completion is applicable to both mobile and non-mobile computers. However, because of the absence, in many cases, of a full keyboard with some mobile computers, automatic text completion tends to be even more important in the case of mobile computers with limited keyboard accessibility.
Features and advantages of embodiments of the present invention will become apparent from the appended claims, the following detailed description of one or more example embodiments, and the corresponding figures, in which:
In some embodiments, instead of relying only on information about the initial characters that are being entered to predict what data is intended to be entered into a user interface, information about the user interface itself may be used to help predict what data may be entered. For example, attributes that are associated with a text entry box can be used to provide more accurate predictions of what data a user intends to enter.
Typical user interfaces take the initial characters (letters, symbols or numbers) that have been entered and, based on information about the most commonly entered data, either by that user or by users in general, predict what information is going to be entered. Then the text entry may be automatically completed based on the successful prediction.
By taking into account the nature of a text entry interface, such as the text entry box, a more useful prediction may be obtained in some cases. As an example, when a text entry box is associated with a phone book search window, it may be predicted that instead of simply entering any word, the user is actually entering a name. In such case, instead of offering predictions based on most commonly used words, predictions based on most common name may be generated. For example, a list of the most commonly used names associated with the character(s) already entered may appear on the screen for selection by the user. The selected names may be followed with the conventionally generated words or names based on other criteria in some embodiments. By using information about the text entry box and, particularly, its attributes, more accurate predictions about what the user is trying to enter may be obtained in some embodiments.
Referring to
In
Referring to
Thus, a set of user selectable proposals may be generated in a dropdown menu 20, in one embodiment. Of course, other graphical user interfaces may also be used in addition to the depicted dropdown menu 20. Each of the proposals may be a word, a name, or a number that is predicted based on the information that has already been entered. In accordance with some embodiments, the prediction may be further honed by using information about the nature of the text entry box 16 to predict what information is being entered. In such case, the proposed predictions of the user's intended entry that correlate both to being commonly used with the characters entered and which are commonly used in association with text entry boxes with those attributes are ordered first, followed by conventionally generated proposals, in some embodiments.
In other embodiments, only the text entry box attribute inspired entries may be shown and other ordering sequences and display arrangements may be used. For example, initially, only the text entry attribute inspired proposals are shown with an icon that can be selected for displaying more proposals, based on non-text entry inspired techniques that are conventionally used.
The proposals may be user click selectable, in some embodiments. When clicked on, the full entry may be automatically inserted in the text entry box. In other embodiments, the first proposal may be used automatically, absent user override.
Thus, referring to
In each case, the attribute is associated with words, numbers, or other characters that are commonly entered in text entry boxes having that attribute. These lists may be generated locally within the processor based device based on the user's own activities, or may be obtained from remote sources based on activities of a wide variety of users, predictions about what a wide variety of users may use or may be some combination of the above.
The manner of extracting the attributes from the text entry box is subject to wide variation. For example, conventional hypertext markup language (HTML) includes code in the markup language characters for the text entry box that can be used to generate the text entry box and, therefore, indicates the nature of the text entry box. This code, in one embodiment, may be used to correlate to attributes which, in turn, are correlated to proposed entries that are most common in cases involving such attributes.
Referring to
At the same time, the entry provided to the user interface 22 may be used as a search term in a common word library 26. The common word library may simply include the most common entries by that particular user on that particular processor based device and/or those most common entries derived based on experience across any number of users and provided either locally or by accessing a remote resource, such as a remote server or the cloud.
The output from the common word library 26 is then combined with the output from the context word library 28 and provided to an ordering module 30. The ordering module may determine the way in which the various proposals are displayed and ordered. This ordering is then provided to the user interface 22 for output on the display. In some embodiments, the output may be provided as a dropdown menu below the text entry box.
Referring next to
Program code, or instructions, may be stored in, for example, volatile and/or non-volatile memory, such as storage devices and/or an associated machine readable or machine accessible medium including, but not limited to, solid-state memory, hard-drives, floppy-disks, optical storage, tapes, flash memory, memory sticks, digital video disks, digital versatile discs (DVDs), etc., as well as more exotic mediums such as machine-accessible biological state preserving storage. A machine readable medium may include any mechanism for storing, transmitting, or receiving information in a form readable by a machine, and the medium may include a medium through which the program code may pass, such as antennas, optical fibers, communications interfaces, etc. Program code may be transmitted in the form of packets, serial data, parallel data, etc., and may be used in a compressed or encrypted format.
The sequence of
A check at diamond 38 determines whether a word library exists for that attribute. If so, the word library for the attribute and the common word library are loaded, as indicated in block 40. If not, only the common word library is loaded, as indicated in block 42.
When the user starts to type an entry, as indicated in block 44, the word or string that is probably being typed is predicted using both the attribute library and the common library, as indicated in block 46. The word or string from the attribute library may be given higher priority in some embodiments.
Portable electronic devices may include predictive capabilities to decrease the device user's typing requirements. This feature is especially useful in portable electronic devices such as tablet computers and mobile phones, which may not include a physical keyboard. Rather, some portable electronic devices may have a simulated or virtual keyboard. The size of such keyboards is typically limited by the size of the display screen, which may make typing difficult and error-prone.
According to an embodiment, a portable electronic device may include enhanced predictive capabilities, which may focus predictions presented to a device user. For example, in an embodiment, the portable electronic device may use an active entry (e.g., one or more letters, numbers, symbols) and contextual information (e.g., information type) to provide one or more targeted predictions (e.g., word, number, character, phrase, symbol) as is appropriate under the particular circumstances. In an embodiment, the active entry may be one or more letters of the Latin alphabet and the targeted prediction(s) may be in a non-Latin writing system (e.g., Chinese, Devanagari, Arabic, Cyrillic), or the Romanized (e.g., pinyin) version of the non-Latin writing system.
Referring to
Still referring to
The electronic device 102 may also include plural additional application programs 120 and features 122. For example, the device 102 may come with plural application programs 120 such as an application for storing contact information, web browsing, calendaring, and the user may download or access (e.g., from the service provider 104) a wide variety of application programs such as for identifying music, time management, games, and social networking to name just a few examples. Application programs 120 may be stored on the electronic device 102, by the service provider 104 (e.g., cloud storage), or both. The device 102 may also include one or more features 122 such as, a global positioning system (GPS), a music player, a camera, and a touch screen), as just a few examples.
A user of the electronic device 102 may interact with application programs and device features via a user interface. In an embodiment, the user interface may include a graphical user interface (GUI) displayed on a display screen 112, which may be a touch screen. User interfaces for devices including a touch screen may be designed in numerous ways. As one non-limiting example, user interfaces may be designed to include a simulated keypad and/or a keyboard 114 (e.g., virtual a keypad/keyboard) and a data entry area 116 to receive information from the user. The user interface may also include a context indicator 118, which may or may not be visible to the user. The context indicator 118 may be associated with a particular application, information entry area, or both. Context indicators 118, however, may be obtained by other means such as via electronic device 102 sensors (e.g., global positioning systems, accelerometers, video), data mining techniques, recently used apps (e.g., calendar, e-book reader), or other features (e.g., music player, voice/calling services).
As one example, the user may want to enter a new contact into a phone book or contact list application program. An interface including a text entry box or the like may be provided to enable the user to enter a person's name. The text entry box may be associated with an attribute, tag, marker, descriptor, or other context indicator to specify that the box receives a name as input data.
The following clauses and/or examples pertain to further embodiments:
One example embodiment may be at least one machine accessible storage medium having instructions stored therein, the instructions when executed on a machine cause the machine to perform a sequence comprising: receiving a user partial text entry in a text entry area, determining an attribute of the text entry area, and using said attribute and the partial text entry to develop a prediction of what a user intends to enter into that text entry area. The medium may further store instructions to perform a sequence including developing a series of user selectable proposed intended text entries. The medium may further store instructions to perform a sequence including developing a series of user selectable proposed intended text entries based on said attribute. The medium may further store instructions to perform a sequence including developing a series of user selectable proposed intended text entries based on common entries. The medium may further store instructions to perform a sequence including ordering the series based on the attribute before the series based on common entries. The medium may further store instructions to perform a sequence including identifying a text entry area as being associated with numbers and proposing completions that are numbers. The medium may further store instructions to perform a sequence including identifying a text entry area as being associated with web pages and proposing completion that are web page locations.
In another example embodiment a computer executed method comprising receiving, on a processor based device, a user partial text entry in a text entry area, and using said attribute and the partial text entry to develop a prediction of what a user intends to enter into that text entry area. The method may include developing a series of user selectable proposed intended text entries. The method may include developing a series of user selectable proposed intended text entries based on said attribute. The method may include developing a series of user selectable proposed intended text entries based on common entries. The method may include ordering the series based on the attribute before the series based on common entries. The method may include identifying a text entry area as being associated with numbers and proposing completions that are numbers. The method may include identifying a text entry area as being associated with web pages and proposing completion that are web page locations.
Another example embodiment may be a processor based device comprising a processor to receive a user partial text entry in a text entry area, determine an attribute of the text entry area, and use said attribute and said partial text entry to develop a prediction of what a user intends to enter into that text entry area, and a memory coupled to said processor. The device may include said processor to develop a series of user selectable proposed intended text entries. The device may also include said processor to develop a series of user selectable proposed intended text entries based on said attribute. The device may also include said processor to develop a series of user selectable proposed intended text entries based on common entries. The device may also include said processor to order the series based on the attribute before the series based on common entries. The device may also include said processor to identify a text entry area as being associated with names and proposing completions based on names.
While the present invention has been described with respect to a limited number of embodiments, those skilled in the art will appreciate numerous modifications and variations therefrom. It is intended that the appended claims cover all such modifications and variations as fall within the true spirit and scope of this present invention.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/CN2012/087837 | 12/28/2012 | WO | 00 | 6/5/2013 |