PATENT DOCUMENT

Publication Number: US-9189079-B2
Application Number: US-201113310592-A
Country: US
Kind Code: B2

Title: Method, system, and graphical user interface for providing word recommendations

Abstract:
One aspect of the invention involves a method that includes: in a first area of the touch screen, displaying a current character string being input by a user with the keyboard; in a second area of the touch screen, displaying the current character string or a portion thereof and a suggested replacement for the current character string; replacing the current character string in the first area with the suggested replacement if the user activates a delimiter key on the keyboard; replacing the current character string in the first area with the suggested replacement if the user performs a first gesture on the suggested replacement displayed in the second area; and keeping the current character string in the first area if the user performs a second gesture on the current character string or the portion thereof displayed in the second area.

Claims:
What is claimed is:  
     
       1. A portable electronic device, comprising:
 a touch screen display; 
 one or more processors; 
 memory; and 
 one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, one or more programs including: 
 instructions for displaying, in a first area of the touch screen display, a current character string being input by a user with the keyboard; 
 instructions for displaying, in a second area of the touch screen display separate from the first area, the current character string and a suggested replacement character string for the current character string; 
 instructions for replacing the current character string in the first area with the suggested replacement character string if the user activates a key on the keyboard associated with a delimiter; 
 instructions for replacing the current character string in the first area with the suggested replacement character string if the user performs a first gesture on the suggested replacement character string displayed in the second area; and 
 instructions for keeping the current character string in the first area if the user performs a second gesture in the second area on the current character string or the portion thereof displayed in the second area. 
 
     
     
       2. The device of  claim 1 , including instructions for adding a space after the current character string if the user performs the second gesture on the current character string or the portion thereof displayed in the second area. 
     
     
       3. The device of  claim 1 , wherein the key on the keyboard associated with a delimiter is a space bar key. 
     
     
       4. The device of  claim 1 , wherein the delimiter is any of a plurality of predefined delimiters symbols. 
     
     
       5. The device of  claim 1 , wherein the keyboard is a soft keyboard that is part of the touch screen display. 
     
     
       6. The device of  claim 1 , wherein the keyboard is a physical keyboard that is not a part of the touch screen display. 
     
     
       7. The device of  claim 1 , wherein the character strings are words, numbers, or a combination thereof. 
     
     
       8. The device of  claim 1 , further comprising:
 instructions for, in the second area of the touch screen display, displaying an alternative suggested replacement character string for the current character string; and 
 instructions for replacing the current character string in the first area with the alternative suggested replacement character string if the user performs a predefined gesture on the alternative suggested replacement character string in the second area. 
 
     
     
       9. The device of  claim 1 , further comprising instructions for adding the current character string to a dictionary in the device if the user performs the second gesture on the current character string displayed in the second area. 
     
     
       10. The device of  claim 1 , wherein the first gesture includes one or more taps on the suggested replacement character string displayed in the second area. 
     
     
       11. The device of  claim 1 , wherein the second gesture includes one or more taps on the current character string displayed in the second area. 
     
     
       12. The device of  claim 1 , further comprising instructions for, after replacing the current character string in the first area with the suggested replacement character string, displaying the current character string in place of the suggested replacement character string in the first area if the user performs a third gesture on the suggested replacement character string in the first area. 
     
     
       13. The device of  claim 12 , wherein the third gesture comprises a tap gesture or a hover gesture. 
     
     
       14. The device of  claim 1 , wherein, in the second area of the touch screen display, the suggested replacement character string and the current character string are on opposite sides of the second area. 
     
     
       15. The device of  claim 1 , wherein, in the second area of the touch screen display, the suggested replacement character string is on the left side of the second area and the current character string is on the right side of the second area. 
     
     
       16. The device of  claim 1 , wherein the second area is between the first area and the keyboard. 
     
     
       17. A non-transitory computer readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by a portable electronic device with a touch screen display cause the portable electronic device to:
 in a first area of the touch screen display, display a current character string being input by a user with the keyboard; 
 in a second area of the touch screen display separate from the first area, display the current character string or a portion thereof and a suggested replacement character string for the current character string; 
 replace the current character string in the first area with the suggested replacement character string if the user activates a key on the keyboard associated with a delimiter; 
 replace the current character string in the first area with the suggested replacement character string if the user performs a first gesture on the suggested replacement character string displayed in the second area; and 
 keep the current character string in the first area if the user performs a second gesture in the second area on the current character string or the portion thereof displayed in the second area. 
 
     
     
       18. The non-transitory computer readable storage medium of  claim 17 , including instructions, which when executed by the portable electronic device cause the portable electronic device to: add a space after the current character string if the user performs the second gesture on the current character string or the portion thereof displayed in the second area. 
     
     
       19. The non-transitory computer readable storage medium of  claim 17 , wherein the key on the keyboard associated with a delimiter is a space bar key. 
     
     
       20. The non-transitory computer readable storage medium of  claim 17 , wherein the delimiter is any of a plurality of predefined delimiters symbols. 
     
     
       21. The non-transitory computer readable storage medium of  claim 17 , wherein the keyboard is a soft keyboard that is part of the touch screen display. 
     
     
       22. The non-transitory computer readable storage medium of  claim 17 , wherein the keyboard is a physical keyboard that is not a part of the touch screen display. 
     
     
       23. The non-transitory computer readable storage medium of  claim 17 , wherein the character strings are words, numbers, or a combination thereof. 
     
     
       24. The non-transitory computer readable storage medium of  claim 17 , further comprising instructions, which when executed by the portable electronic device cause the portable electronic device to:
 in the second area of the touch screen display, display an alternative suggested replacement character string for the current character string; and 
 replace the current character string in the first area with the alternative suggested replacement character string if the user performs a predefined gesture on the alternative suggested replacement character string in the second area. 
 
     
     
       25. The non-transitory computer readable storage medium of  claim 17 , further comprising instructions, which when executed by the portable electronic device cause the portable electronic device to: add the current character string to a dictionary in the device if the user performs the second gesture on the current character string displayed in the second area. 
     
     
       26. The non-transitory computer readable storage medium of  claim 17 , wherein the first gesture includes one or more taps on the suggested replacement character string displayed in the second area. 
     
     
       27. The non-transitory computer readable storage medium of  claim 17 , wherein the second gesture includes one or more taps on the current character string displayed in the second area. 
     
     
       28. The non-transitory computer readable storage medium of  claim 17 , further comprising instructions, which when executed by the portable electronic device cause the portable electronic device to: after replacing the current character string in the first area with the suggested replacement character string, display the current character string in place of the suggested replacement character string in the first area if the user performs a third gesture on the suggested replacement character string in the first area. 
     
     
       29. The non-transitory computer readable storage medium of  claim 28 , wherein the third gesture comprises a tap gesture or a hover gesture. 
     
     
       30. The non-transitory computer readable storage medium of  claim 17 , wherein, in the second area of the touch screen display, the suggested replacement character string and the current character string are on opposite sides of the second area. 
     
     
       31. The non-transitory computer readable storage medium of  claim 17 , wherein, in the second area of the touch screen display, the suggested replacement character string is on the left side of the second area and the current character string is on the right side of the second area. 
     
     
       32. The non-transitory computer readable storage medium of  claim 17 , wherein the second area is between the first area and the keyboard. 
     
     
       33. A graphical user interface on a portable electronic device with a keyboard and a touch screen display, comprising:
 a first area of the touch screen display that displays a current character string being input by a user with the keyboard; and 
 a second area of the touch screen display separate from the first area that displays the current character string or a portion thereof and a suggested replacement character string for the current character string; 
 wherein; 
 the current character string in the first area is replaced with the suggested replacement character string if the user activates a key on the keyboard associated with a delimiter; 
 the current character string in the first area is replaced with the suggested replacement character string if the user performs a gesture on the suggested replacement character string in the second area; and 
 the current character string in the first area is kept if the user performs a gesture in the second area on the current character string or the portion thereof displayed in the second area. 
 
     
     
       34. The graphical user interface of  claim 33 , wherein a space is added after the current character string if the user performs the second gesture on the current character string or the portion thereof displayed in the second area. 
     
     
       35. The graphical user interface of  claim 33 , wherein the key on the keyboard associated with a delimiter is a space bar key. 
     
     
       36. The graphical user interface of  claim 33 , wherein the delimiter is any of a plurality of predefined delimiters symbols. 
     
     
       37. The graphical user interface of  claim 33 , wherein the keyboard is a soft keyboard that is part of the touch screen display. 
     
     
       38. The graphical user interface of  claim 33 , wherein the keyboard is a physical keyboard that is not a part of the touch screen display. 
     
     
       39. The graphical user interface of  claim 33 , wherein the character strings are words, numbers, or a combination thereof. 
     
     
       40. The graphical user interface of  claim 33 , wherein:
 an alternative suggested replacement character string for the current character string is displayed in the second area of the touch screen display; and 
 the current character string in the first area is replaced with the alternative suggested replacement character string if the user performs a predefined gesture on the alternative suggested replacement character string in the second area. 
 
     
     
       41. The graphical user interface of  claim 33 , wherein the current character string is added to a dictionary in the device if the user performs the second gesture on the current character string displayed in the second area. 
     
     
       42. The graphical user interface of  claim 33 , wherein the first gesture includes one or more taps on the suggested replacement character string displayed in the second area. 
     
     
       43. The graphical user interface of  claim 33 , wherein the second gesture includes one or more taps on the current character string displayed in the second area. 
     
     
       44. The graphical user interface of  claim 33 , wherein the current character string is displayed, after replacing the current character string in the first area with the suggested replacement character string, in place of the suggested replacement character string in the first area if the user performs a third gesture on the suggested replacement character string in the first area. 
     
     
       45. The graphical user interface of  claim 44 , wherein the third gesture comprises a tap gesture or a hover gesture. 
     
     
       46. The graphical user interface of  claim 33 , wherein, in the second area of the touch screen display, the suggested replacement character string and the current character string are on opposite sides of the second area. 
     
     
       47. The graphical user interface of  claim 33 , wherein, in the second area of the touch screen display, the suggested replacement character string is on the left side of the second area and the current character string is on the right side of the second area. 
     
     
       48. The graphical user interface of  claim 33 , wherein the second area is between the first area and the keyboard.

Description:
RELATED APPLICATIONS 
     This application is a continuation of U.S. patent application Ser. No. 11/620,642, filed Jan. 5, 2007, now U.S. Pat. No. 8,074,172 which is incorporated herein by reference in its entirety. 
     This application is related to U.S. patent application Ser. No. 11/620,641, filed Jan. 5, 2007, entitled “Method and System for Providing Word Recommendations for Text Input,” and U.S. patent application Ser. No. 13/310,586, filed Dec. 2, 2011, entitled “Method, System, and Graphical User Interface for Providing Word Recommendations,” which are incorporated herein by reference in their entirety. 
    
    
     TECHNICAL FIELD 
     The disclosed embodiments relate generally to text input on portable electronic devices, and more particularly, to a method, system, and graphical user interface for providing word recommendations on a portable electronic device. 
     BACKGROUND 
     In recent years, the functional capabilities of portable electronic devices have increased dramatically. Current devices enable communication by voice, text, and still or moving images. Communication by text, such as by email or short message service (SMS), has proven to be quite popular. 
     However, the size of these portable communication devices also restricts the size of the text input device, such as a physical or virtual keyboard, in the portable device. With a size-restricted keyboard, designers are often forced to make the keys smaller or overload the keys. Both may lead to typing mistakes and thus more backtracking to correct the mistakes. This makes the process of inputting text on the devices inefficient and reduces user satisfaction with such portable devices. 
     Accordingly, there is a need for more efficient ways of entering text into portable devices. 
     SUMMARY 
     The above deficiencies and other problems associated with user interfaces for portable devices are reduced or eliminated by the disclosed device that includes a text input interface that provides word recommendations. 
     According to some embodiments, a computer-implemented method may be performed at a portable electronic device with a keyboard and a touch screen display. The method includes: in a first area of the touch screen display, displaying a current character string being input by a user with the keyboard; in a second area of the touch screen display, displaying the current character string or a portion thereof and a suggested replacement character string for the current character string; replacing the current character string in the first area with the suggested replacement character string if the user activates a key on the keyboard associated with a delimiter; replacing the current character string in the first area with the suggested replacement character string if the user performs a first gesture on the suggested replacement character string displayed in the second area; and keeping the current character string in the first area if the user performs a second gesture on the current character string or the portion thereof displayed in the second area. 
     According to some embodiments, a graphical user interface on a portable electronic device with a keyboard and a touch screen display includes a first area of the touch screen display that displays a current character string being input by a user with the keyboard, and a second area of the touch screen display that displays the current character string or a portion thereof and a suggested replacement character string for the current character string. The current character string in the first area is replaced with the suggested replacement character string if the user activates a key on the keyboard associated with a delimiter. The current character string in the first area is replaced with the suggested replacement character string if the user performs a gesture on the suggested replacement character string in the second area. The current character string in the first area is kept if the user performs a gesture on the current character string or the portion thereof displayed in the second area. 
     According to some embodiments, a portable electronic device includes a touch screen display, one or more processors, memory, and a program. The program is stored in the memory and configured to be executed by the one or more processors. The program includes: instructions for displaying, in a first area of the touch screen display, a current character string being input by a user with the keyboard; instructions for displaying, in a second area of the touch screen display, the current character string and a suggested replacement character string for the current character string; instructions for replacing the current character string in the first area with the suggested replacement character string if the user activates a key on the keyboard associated with a delimiter; instructions for replacing the current character string in the first area with the suggested replacement character string if the user performs a first gesture on the suggested replacement character string displayed in the second area; and instructions for keeping the current character string in the first area if the user performs a second gesture on the current character string or the portion thereof displayed in the second area. 
     According to some embodiments, a computer-program product includes a computer readable storage medium and a computer program mechanism embedded therein. The computer program mechanism includes instructions, which when executed by a portable electronic device with a touch screen display, cause the device to: in a first area of the touch screen display, display a current character string being input by a user with the keyboard; in a second area of the touch screen display, display the current character string or a portion thereof and a suggested replacement character string for the current character string; replace the current character string in the first area with the suggested replacement character string if the user activates a key on the keyboard associated with a delimiter; replace the current character string in the first area with the suggested replacement character string if the user performs a first gesture on the suggested replacement character string displayed in the second area; and keep the current character string in the first area if the user performs a second gesture on the current character string or the portion thereof displayed in the second area. 
     According to some embodiments, a portable electronic device with a touch screen display includes: means for displaying a current character string being input by a user with the keyboard in a first area of the touch screen display; means for displaying the current character string or a portion thereof and a suggested replacement character string for the current character string in a second area of the touch screen display; means for replacing the current character string in the first area with the suggested replacement character string if the user activates a key on the keyboard associated with a delimiter; means for replacing the current character string in the first area with the suggested replacement character string if the user performs a first gesture on the suggested replacement character string displayed in the second area; and means for keeping the current character string in the first area if the user performs a second gesture on the current character string or the portion thereof displayed in the second area. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       For a better understanding of the aforementioned embodiments of the invention as well as additional embodiments thereof, reference should be made to the Description of Embodiments below, in conjunction with the following drawings in which like reference numerals refer to corresponding parts throughout the figures. 
         FIG. 1  is a block diagram illustrating a portable electronic device in accordance with some embodiments. 
         FIG. 2  illustrates a portable electronic device having a touch screen and a soft keyboard in accordance with some embodiments. 
         FIG. 3  is a flow diagram illustrating a process for providing word recommendations in accordance with some embodiments. 
         FIGS. 4A-4I  illustrate a user interface for providing word recommendations in accordance with some embodiments. 
         FIGS. 5A-5B  illustrate a user interface for showing originally entered text in accordance with some embodiments. 
     
    
    
     DESCRIPTION OF EMBODIMENTS 
     Reference will now be made in detail to embodiments, examples of which are illustrated in the accompanying drawings. In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the present invention. However, it will be apparent to one of ordinary skill in the art that the present invention may be practiced without these specific details. In other instances, well-known methods, procedures, components, circuits, and networks have not been described in detail so as not to unnecessarily obscure aspects of the embodiments. 
     Embodiments of user interfaces and associated processes for using a portable electronic device are described. In some embodiments, the device is a portable communications device such as a mobile telephone. The user interface may include a click wheel in addition to a touch screen. A click wheel is a physical user-interface device that may provide navigation commands based on an angular displacement of the wheel or a point of contact with the wheel by a user of the device. A click wheel may also be used to provide a user command corresponding to selection of one or more items, for example, when the user of the device presses down on at least a portion of the wheel or the center of the wheel. For simplicity, in the discussion that follows, a portable electronic device (e.g., a cellular telephone that may also contain other functions, such as text messaging, PDA and/or music player functions) that includes a touch screen is used as an exemplary embodiment. It should be understood, however, that the user interfaces and associated processes may be applied to other devices, such as personal digital assistants (PDA&#39;s), personal computers and laptops, which may include one or more other physical user-interface devices, such as a click wheel, a keyboard, a mouse and/or a joystick. 
     The device may support a variety of applications, such as one or more telephone applications, a text messaging application, a word processing application, an email application, a web browsing application, and a music player. The music player may be compatible with one or more file formats, such as MP3 and/or AAC. In an exemplary embodiment, the device includes an iPod music player (iPod trademark of Apple Inc.). 
     The various applications that may be executed on the device may use at least one common physical user-interface device, such as the touch screen. In embodiments that include a touch screen, one or more functions of the touch screen as well as corresponding information displayed on the device may be adjusted and/or varied from one application to the next and/or within a respective application. In this way, a common physical architecture (such as the touch screen) of the device may support the variety of applications with user interfaces that are intuitive and transparent to a user. 
     The user interfaces may include one or more keyboard embodiments displayed on a touch screen. The keyboard embodiments may include standard (QWERTY) and/or non-standard configurations of symbols on the displayed icons of the keyboard. The keyboard embodiments may include a reduced number of icons (or soft keys) relative to the number of keys in existing physical keyboards, such as that for a typewriter. This may make it easier for users to select one or more icons in the keyboard, and thus, one or more corresponding symbols. The keyboard embodiments may be adaptive. For example, displayed icons may be modified in accordance with user actions, such as selecting one or more icons and/or one or more corresponding symbols. One or more applications on the portable device may utilize common and/or different keyboard embodiments. Thus, the keyboard embodiment used may be tailored to at least some of the applications. In some embodiments, one or more keyboard embodiments may be tailored to a respective user. For example, based on a word usage history (lexicography, slang, individual usage) of the respective user. Some of the keyboard embodiments may be adjusted to reduce a probability of a user error when selecting one or more icons, and thus one or more symbols, when using the keyboard embodiments. 
     Attention is now directed to an embodiment of a portable communications device.  FIG. 1  is a block diagram illustrating an embodiment of a device  100 , such as a portable electronic device having a touch-sensitive display  112 . The touch-sensitive display  112  is sometimes called a “touch screen” for convenience. The device  100  may include a memory controller  120 , one or more data processors, image processors and/or central processing units  118  and a peripherals interface  116 . The memory controller  120 , the one or more processors  118  and/or the peripherals interface  116  may be separate components or may be integrated, such as in one or more integrated circuits  104 . The various components in the device  100  may be coupled by one or more communication buses or signal lines  103 . 
     If the device  110  includes picture taking capabilities, the peripherals interface  116  may be coupled to an optical sensor  148 , such as a CMOS or CCD image sensor. The peripherals interface  116  is also coupled to RF circuitry  108 ; audio circuitry  110 ; and/or an input/output (I/O) subsystem  106 . The audio circuitry  110  may be coupled to a speaker  142  and a micro-phone  144 . The device  100  may support voice recognition and/or voice replication. The RF circuitry  108  may be coupled to one or more antennas  146  and may allow communication with one or more additional devices, computers and/or servers using a wireless network. The device  100  may support a variety of communications protocols, including code division multiple access (CDMA), Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), Wi-Fi (such as IEEE 802.11a, IEEE 802.11b, IEEE 802.11g and/or IEEE 802.11n), Bluetooth, Wi-MAX, a protocol for email, instant messaging, and/or a short message service (SMS), or any other suitable communication protocol, including communication protocols not yet developed as of the filing date of this document. In an exemplary embodiment, the device  100  may be, at least in part, a mobile phone (e.g., a cellular telephone). 
     The I/O subsystem  106  may include a touch screen controller  132  and/or other input controller(s)  134 . The touch-screen controller  132  is coupled to a touch-sensitive screen or touch sensitive display system  112 . The touch screen  112  and touch screen controller  132  may detect contact and any movement or break thereof using any of a plurality of touch sensitivity technologies now known or later developed, including but not limited to capacitive, resistive, infrared, and surface acoustic wave technologies, as well as other proximity sensor arrays or other elements for determining one or more points of contact with the touch-sensitive screen  112 . A touch-sensitive display in some embodiments of the display system  112  may be analogous to the multi-touch sensitive tablets described in the following U.S. Pat. No.: 6,323,846 (Westerman et al.), U.S. Pat. No. 6,570,557 (Westerman et al.), and/or U.S. Pat. No. 6,677,932 (Westerman), and/or U.S. Patent Publication 2002/0015024A1, each of which is hereby incorporated by reference. However, a touch screen in the display system  112  displays visual output from the portable device  100 , whereas touch sensitive tablets do not provide visual output. The touch-sensitive screen  112  may have a resolution in excess of 100 dpi. In an exemplary embodiment, the touch-sensitive screen  112  has a resolution of approximately 168 dpi. The other input controller(s)  134  may be coupled to other input/control devices  114 , such as one or more buttons. In some alternate embodiments, input controller(s)  134  may be coupled to any (or none) of the following: a keyboard, infrared port, USB port, and/or a pointer device such as a mouse. The one or more buttons (not shown) may include an up/down button for volume control of the speaker  142  and/or the microphone  144 . The one or more buttons (not shown) may include a push button. A quick press of the push button (not shown) may disengage a lock of the touch screen  112 . A longer press of the push button (not shown) may turn power to the device  100  on or off. The user may be able to customize a functionality of one or more of the buttons. The touch screen  112  may be used to implement virtual or soft buttons and/or one or more keyboards. 
     A touch-sensitive display in some embodiments of the display system  112  may be as described in the following applications: (1) U.S. patent application Ser. No. 11/381,313, “Multipoint Touch Surface Controller,” filed on May 2, 2006; (2) U.S. patent application Ser. No. 10/840,862, “Multipoint Touchscreen,” filed on May 6, 2004; (3) U.S. patent application Ser. No. 10/903,964, “Gestures For Touch Sensitive Input Devices,” filed on Jul. 30, 2004; (4) U.S. patent application Ser. No. 11/048,264, “Gestures For Touch Sensitive Input Devices,” filed on Jan. 31, 2005; (5) U.S. patent application Ser. No. 11/038,590, “Mode-Based Graphical User Interfaces For Touch Sensitive Input Devices,” filed on Jan. 18, 2005; (6) U.S. patent application Ser. No. 11/228,758, “Virtual Input Device Placement On A Touch Screen User Interface,” filed on Sep. 16, 2005; (7) U.S. patent application Ser. No. 11/228,700, “Operation Of A Computer With A Touch Screen Interface,” filed on Sep. 16, 2005; (8) U.S. patent application Ser. No. 11/228,737, “Activating Virtual Keys Of A Touch-Screen Virtual Keyboard,” filed on Sep. 16, 2005; and (9) U.S. patent application Ser. No. 11/367,749, “Multi-Functional Hand-Held Device,” filed on Mar. 3, 2006. All of these applications are incorporated by reference herein. 
     In some embodiments, the device  100  may include circuitry for supporting a location determining capability, such as that provided by the Global Positioning System (GPS). In some embodiments, the device  100  may be used to play back recorded music, such as one or more files, such as MP3 files or AAC files. In some embodiments, the device  100  may include the functionality of an MP3 player, such as an iPod (trademark of Apple Inc.). In some embodiments, the device  100  may include a multi-pin (e.g., 30-pin) connector that is compatible with the iPod. 
     The device  100  also includes a power system  137  for powering the various components. The power system  137  may include a power management system, one or more power sources (e.g., battery, alternating current (AC)), a recharging system, a power failure detection circuit, a power converter or inverter, a power status indicator (e.g., a light-emitting diode (LED)) and any other components associated with the generation, management and distribution of power in portable devices. The device  100  may also include one or more external ports  135  for connecting the device  100  to other devices. 
     The memory controller  120  may be coupled to memory  102 , which may include one or more types of computer readable medium. Memory  102  may include high-speed random access memory and/or non-volatile memory, such as one or more magnetic disk storage devices, one or more optical storage devices, and/or flash memory. Memory  102  may store an operating system  122 , such as Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS, or an embedded operating system such as VxWorks. The operating system  122  may include procedures (or sets of instructions) for handling basic system services and for performing hardware dependent tasks. Memory  102  may also store communication procedures (or sets of instructions) in a communication module  124 . The communication procedures may be used for communicating with one or more additional devices, one or more computers and/or one or more servers. The memory  102  may include a display module (or a set of instructions)  125 , a contact/motion module (or a set of instructions)  126  to determine one or more points of contact and/or their movement, and a graphics module (or a set of instructions)  128 . The graphics module  128  may support widgets, that is, modules or applications with embedded graphics. The widgets may be implemented using JavaScript, HTML, Adobe Flash, or other suitable computer program languages and technologies. 
     The memory  102  may also include one or more applications  130 . Examples of applications that may be stored in memory  102  include telephone applications, email applications, text messaging or instant messaging applications, memo pad applications, address books or contact lists, calendars, picture taking and management applications, and music playing and management applications. The applications  130  may include a web browser (not shown) for rendering pages written in the Hypertext Markup Language (HTML), Wireless Markup Language (WML), or other languages suitable for composing web pages or other online content. 
     Also included in the memory  102  are a keyboard module (or a set of instructions)  131 , a word recommendations module (or a set of instructions)  133 , and a dictionary  136 . The keyboard module  131  operates one or more soft keyboards. The word recommendations module  133  determines word completion or replacement recommendations for text entered by the user. The dictionary  136  includes a list of words in a language, from which word recommendations are drawn. In some embodiments, the dictionary also includes usage frequency rankings associated with the words in the dictionary. 
     Each of the above identified modules and applications correspond to a set of instructions for performing one or more functions described above. These modules (i.e., sets of instructions) need not be implemented as separate software programs, procedures or modules. The various modules and sub-modules may be rearranged and/or combined. Memory  102  may include additional modules and/or sub-modules, or fewer modules and/or sub-modules. Memory  102 , therefore, may include a subset or a superset of the above identified modules and/or sub-modules. Various functions of the device  100  may be implemented in hardware and/or in software, including in one or more signal processing and/or application specific integrated circuits. 
     Attention is now directed towards embodiments of user interfaces and associated processes that may be implemented on the device  100 .  FIG. 2  is a schematic diagram illustrating an embodiment of a user interface for a portable electronic device  200 . The device  200  includes a touch screen  208 . In some embodiments, the touch screen may display one or more trays. A tray is a defined region or area within a graphical user interface. One tray may include a user entry interface, such as a virtual or soft keyboard  210  that includes a plurality of icons. The icons may include one or more symbols. In this embodiment, as well as others described below, a user may select one or more of the icons, and thus, one or more of the corresponding symbols, by making contact or touching the keyboard  210 , for example, with one or more fingers  212  (not drawn to scale in the figure). The contact may correspond to the one or more icons. In some embodiments, selection of one or more icons occurs when the user breaks contact with the one or more icons. In some embodiments, the contact may include a gesture, such as one or more taps, one or more swipes (e.g., from left to right, right to left, upward and/or downward) and/or a rolling of a finger (e.g., from right to left, left to right, upward and/or downward) that has made contact with the device  200 . In some embodiments, inadvertent contact with an icon may not select a corresponding symbol. For example, a swipe gesture that sweeps over an icon may not select a corresponding symbol if the gesture corresponding to selection is a tap gesture. 
     Alternatively, in some other embodiments, the keyboard may be a physical keyboard that includes a set of push buttons, a keypad, or the like. The physical keyboard is not a part of the touch screen display. The physical keyboard includes keys that correspond to the plurality of icons described above. A user may select one or more of the icons by pushing the corresponding keys on the physical keyboard. 
     The device  200  may include a display tray  214 , which is displayed on the touch screen  208 . The display tray  214  may display one or more of the characters and/or symbols that are selected by the user. The device  200  may also include one or more physical buttons, such as the clear, hold and menu buttons shown in  FIG. 2 . The menu button may be used to navigate to any application in a set of applications that may be executed on the device  200 . Alternatively, in some embodiments, the clear, hold, and/or menu buttons are implemented as soft keys in a GUI in touch screen  208 . 
     Attention is now directed to  FIG. 3 , which illustrates a flow diagram of a process flow  300  for providing word recommendations in accordance with some embodiments. As text is entered by a user on a device, one or more candidate character sequences (suggested replacements) may be provided in response to the entered text. The user may select a candidate character sequence to further extend or to complete the entered text. 
     A current character string is displayed in a first area of a touch screen of a portable device ( 302 ). In some embodiments, the current character string (which is a word, number, symbol, or a combination thereof) is at least a portion of a sequence of characters entered into the device by a user. The user inputs a sequence of characters into the portable device via an input device, such as a keyboard  210 , and the device receives and displays the input on the touch screen. In some embodiments, the current character string is the endmost sequence of non-whitespace characters input by the user via the input device and delimited from the rest of the sequence of characters entered by the user by delimiters, such as whitespaces, line breaks, and punctuation. 
     The current character string (or a portion thereof) and one or more suggested replacements for the current character string is displayed in a second area (for example, a word selection area  216 ) of the touch screen ( 304 ). The second area may be located between the first area and the keyboard. The one or more suggested replacements, which may be words, numbers, or combinations thereof, are selected from a dictionary  136  for display by the device in accordance with predefined procedures. An example of a procedure for selecting suggested replacements for display is described in U.S. patent application Ser. No. 11/620,641, which is hereby incorporated by reference as background information. The user may take one of a plurality of actions with respect to the current character string and the suggested replacement displayed in the second area. If the user action is activation of a key on the keyboard associated with a delimiter ( 306 —Activate a key . . . ), the current character string in the first area of the touch screen is replaced with the suggested replacement ( 308 ). The delimiter associated with the activated key may be appended to the end of the suggested replacement in the first area. For example, if the activated key is associated with a comma, a comma is appended to the suggested replacement (which replaces the current character string) in the first area. In some embodiments, delimiters include spaces, line breaks (sometimes called line returns), and terminal punctuation (for example, commas, periods, exclamation points, question marks, and semicolons). In other embodiment, delimiters may include a subset of the delimiters listed above, and may optionally include additional delimiters as well. 
     If the user action is performance of a first gesture on the suggested replacement in the second area of the touch screen ( 306 —Perform gesture on the suggested replacement . . . ), the current character string in the first area of the touch screen is replaced with the suggested replacement ( 308 ). In some embodiments, a whitespace is appended to the end of the suggested replacement in the first area. In some embodiments, the first gesture includes one or more taps on the suggested replacement in the second area. 
     If the user action is performance of a second gesture on the current character string in the second area ( 306 —Perform gesture on the current character string . . . ), the current character string is maintained in the first area ( 310 ). In some embodiments, a whitespace is appended to the end of the current character string in the first area. In some embodiments, the second gesture includes one or more taps on the current character string in the second area. 
     In some embodiments, the device displays a plurality of suggested replacements in the word selection area. In these embodiments, the user may select the desired replacement by performing a gesture on the desired replacement. However, if the user activates a key associated with the delimiter, a replacement is selected from amongst the plurality in accordance with one or more default rules. For example, a default rule may be that the highest ranked suggested replacement is selected. 
     In some embodiments, if the current character string in the first area was replaced with the suggested replacement, the user may review the current character string that was replaced. The user may perform a third gesture on the suggested replacement in the first area. After the third gesture is performed, the (original) current character string is displayed in the first area for a predetermined amount of time. In some embodiments, the third gesture includes one or more taps on the suggested replacement in the first area. Further details regarding reviewing the replaced current character string is described below in relation to  FIGS. 5A-5B . 
     Attention is now directed to  FIGS. 4A-4I , which illustrate a user interface for providing word recommendations in accordance with some embodiments. In a portable electronic device  200 , text  218  entered by the user via a keyboard  210  or other input may be displayed in a first area, e.g. display tray  214 . A cursor or insertion marker  220  may be displayed in the display tray  214  to indicate the insertion position of the next entered character. 
     The text  218  may include one or more strings separated by one or more delimiters, such as spaces and punctuation. The end-most string in the text  218  may be highlighted as the current character string  222  ( FIG. 4B ). The current character string  222  may be a complete or incomplete word. The device  200  may display one or more suggested replacements  224  (for example, “car” in  FIG. 4D ; “car,” “cat,” “cabinet,” and “candle” in  FIG. 4F ) in a second area, e.g. word selection area  216 . A duplicate  226  of the current character string  222  may also be displayed in the word selection area  216 . In some embodiments, the suggested replacement(s) and the current character string duplicate  226  are displayed on opposite sides of the word selection area  216 . For example, the suggested replacement(s) may be displayed in the left side of the word selection area  216  and the current character string duplicate  226  may be displayed in the right side of the word selection area  216 . 
     The user may perform a gesture (such as a tap on the touch screen) on either the duplicate  226  of the current character string  222  or the suggested replacement  224 . If the user taps on the duplicate  226  of the current character string  222  in the word selection area  216  with a finger  212 , as indicated by the finger contact area  228  in  FIG. 4B , the current character string  222  is left as is in the display tray  214 . If the user taps on the suggested replacement  224  in the word selection area  216  with a finger  212 , as indicated by the finger contact area  228  in  FIG. 4D , the current character string  222  is replaced in the display tray  214  by the suggested replacement  224  ( FIG. 4E ). 
     As an example, the current character string  222  “cae” is highlighted, as shown in  FIG. 4B . If the user taps the duplicate  226  of the current character string  222  in the word selection area  216 , the current character string “cae” is completed and becomes part of the text  218  for which the device  200  is not providing suggested replacements, as shown in  FIG. 4C . In some embodiments, a space is added to the end of the completed current character string, as shown in  FIG. 4C . In some embodiments, the completed current character string (“cae” in  FIG. 4C ) is added to the dictionary  136 . If the user taps instead the suggested replacement  224  “car” in the word selection area  216  ( FIG. 4D ), the current character string “cae” is replaced in the display tray  214  with the suggested replacement “car,” as shown in  FIG. 4E . In some embodiments, a space is added to the end of the replaced current character string in the display tray  214 , as shown in  FIG. 4E . 
     Returning to  FIG. 4D , if the user hits (as indicated by the finger contact area  228  on the space bar  227 ) a key on the keyboard  210  that is associated with a delimiter, such as a space bar  227 , the current character string  222  in the display tray  214  is replaced by the suggested replacement  224 , and the delimiter associated with the key that was hit by the user is appended to the end of the suggested replacement in the display tray  214 . 
     In some embodiments, the device  200  may display a plurality of suggested replacements  224  for a current character sequence  222  in the word selection area  216 , as shown in  FIG. 4F . A user may perform a gesture (e.g., a tap) on one of the plurality of suggested replacements to select that suggested replacement. The current character sequence  222  is replaced with the selected suggested replacement. As an example, in  FIG. 4F , suggested replacements for the current character string “cae” include “car,” “cat,” “cabinet,” and “candle.” If the user taps on the suggested replacement “cabinet,” as indicated by the contact area  228  in the word selection area  216 , the current character string “cae” is replaced in the display tray  214  with the selected replacement “cabinet,” as shown in  FIG. 4G . If the user hits a key on the keyboard  210  that is associated with a delimiter, the current character string  222  in the display tray  214  may be replaced by the suggested replacement  224  in the word selection area  216  that is highest ranked (e.g., “car” in  FIG. 4F ). In some embodiments, the suggested replacements  224  are displayed in ranking order (ascending or descending, depending on the particular embodiment and/or user preferences) in the word selection area  216 , so that the user may identify which suggested replacement is the highest ranked. 
     In some embodiments, if the current character string  222  is longer than a predefined length (based on the number of characters), the duplicate  226  of the current character string  222  in the word selection area  216  may show a subset of the characters in the current character string  222 . For example, the duplicate  226  may show the first six characters of the current character string  222 , as shown in  FIG. 4H . As another example, the duplicate  226  may show the first three and the last three characters of the current character string  222 . 
     As shown in  FIG. 4I , in some embodiments, the highest ranked suggested replacement  240  is displayed within the space bar  227 . If the user performs a predefined gesture on or near the touch screen display (e.g., taps or touches the space bar  227 ), the current character string  222  is replaced by the replacement string  240  shown in the space bar  227 , and the display of the space bar  227  is then returned to its normal or default status (e.g., blank, or with the word “space” displaced in the space bar (see  FIG. 4H )). It is noted that the space bar  227  corresponds to a delimiter (i.e., a space). In some of these embodiments, only the highest ranked suggested replacement is presented to the user, and thus any other corrections must be made manually by the user. If the user performs a second gesture with respect to the touch screen display, such as tapping any key of the keyboard other than the space bar  227 , the current character string  222  in retained. 
     The embodiments of the invention, as described above, provides an intuitive way to integrate explicit word selection (via suggested word replacements in the second area), implicit word selection (e.g., via the space bar or other delimiter keys), and explicit non-selection of suggested word replacements (via keeping the current word, e.g., for words with unusual spellings). 
     In some embodiments, the device  200  may allow the user to review strings replaced by user-selected suggested replacements. Attention is now directed to  FIGS. 5A-5B , which illustrate a user interface for reviewing the originally entered strings that were replaced by suggested replacements. A user may perform a gesture over a word  229  in the entered text  218 . For example, the user may tap the word  229  on the touch screen with a finger  212 , as indicated by the contact area  228  in the display tray  214 . If the word  229  ( FIG. 5A ) was a replacement for some originally entered text, the originally entered text  230  may be displayed ( FIG. 5B ). Alternately, the originally entered text may be displayed if the user&#39;s finger hovers over the word  229  for at least a threshold period of time (e.g., 0.5 seconds, 1.0 second, or a value between 0.35 and 1.25 seconds). In some embodiments, the originally entered text  230  is displayed in place of the word  229  for a predetermined amount of time, such as 2 seconds. After the time has elapsed, the word  229  is displayed back in its place unless an undo gesture (e.g., a tap on the original text) is performed, in which case the originally entered text  230  is durably restored. In some other embodiments, the originally entered text  230  is displayed in a balloon graphic or the like extending from the word  229 . 
     The foregoing description, for purpose of explanation, has been described with reference to specific embodiments. However, the illustrative discussions above are not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many modifications and variations are possible in view of the above teachings. The embodiments were chosen and described in order to best explain the principles of the invention and its practical applications, to thereby enable others skilled in the art to best utilize the invention and various embodiments with various modifications as are suited to the particular use contemplated.

Metadata:
Filing Date: 20111202
Publication Date: 20151117
Grant Date: 20151117
Priority Date: 20070105
Inventors: KOCIENDA KENNETH
ORDING BAS
Assignee: APPLE INC
CPC Classifications: [{"code": "G06F3/04886", "inventive": true, "first": true, "tree": "[]"}, {"code": "G06F3/0237", "inventive": true, "first": false, "tree": "[]"}, {"code": "G06F3/0237", "inventive": true, "first": false, "tree": "[]"}, {"code": "G06F3/04886", "inventive": true, "first": true, "tree": "[]"}, {"code": "G06F40/166", "inventive": true, "first": false, "tree": "[]"}, {"code": "G06F3/04883", "inventive": true, "first": false, "tree": "[]"}, {"code": "G06F3/04883", "inventive": true, "first": false, "tree": "[]"}, {"code": "G06F3/04883", "inventive": true, "first": false, "tree": "[]"}, {"code": "G06F3/0237", "inventive": true, "first": true, "tree": "[]"}, {"code": "G06F3/04886", "inventive": true, "first": false, "tree": "[]"}, {"code": "G06F40/274", "inventive": true, "first": false, "tree": "[]"}]
Family ID: 39233210