System and method for improved user input on personal computing devices
11 claims: 2 independent, 9 dependent
- 1A method for user input on personal computing devices, the method comprising:receiving a user input from an implement placed in contact with a touch screen of a personal computing device and moved along a surface of the touch screen over a virtual keyboard displayed on the touch screen, wherein the user input includes a gesture that corresponds to a word and wherein the gesture is obtained by successively connecting character keys in the keyboard layout of the displayed virtual keyboard, following the sequence of characters in the word;identifying a shape of the gesture and the sequence of successively connected character keys associated with the gesture;and providing a word associated with the sequence of successively connected character keys as text input, wherein identifying a word associated with the sequence of successively connected character keys includes performing pattern recognition (632) on the shape of the gesture, characterized in that , if a word is recognized by pattern recognition (636), the recognized word is provided as text input (638), and if no word is recognized by pattern recognition, a spell check (640) is performed on the identified sequence of successively connected character keys in order to validate the sequence of successively connected character keys as a word or to determine an alternative character sequence corresponding to a correct word.
- 7The method according to one of claims 1 to 5, wherein performing a spell check (640) on the identified sequence of successively connected character keys includes:looking up the identified sequence of successively connected character keys in a dictionary;determining whether the identified sequence of successively connected character keys exists in a dictionary;responsive to the identified sequence of successively connected character keys existing in the dictionary accepting the identified sequence of successively connected character keys as input.
- 10An apparatus for user input on personal computer devices, the apparatus comprising:receipt means for receiving a user input from an implement placed in contact with a touch screen of a personal computing device and moved along a surface of the touch screen over a virtual keyboard (306), wherein the displayed user input includes a gesture that corresponds to a word and wherein the gesture is obtained by successively connecting character keys in the keyboard layout of the displayed virtual keyboard (306) following the sequence of characters in the word: identification means for identifying a shape of the gesture and the sequence of successively connected character keys associated with the gesture;and providing means for providing a word associated with the sequence of successively connected character keys as text input;pattern matching for performing pattern recognition on the shape of the gesture;characterized in that , if a word is recognized by pattern recognition, the recognized word is provided as text input, and if no word is recognized by pattern recognition a spell check is performed on the identified sequence of successively connected character keys by means of a spell / context checking in order to validate the sequence of successively connected character keys as a word or to determine an alternative character sequence corresponding to a correct word.
Independent claims3
56 paragraphs in 4 sections, as filed
BACKGROUND OF THE INVENTION
1. Technical Field:
0001The present invention relates to data processing systems and, in particular, to personal computing devices. Still more particularly, the present invention provides a method, apparatus, and program for improved user input on personal computing devices.
2. Description of Related Art:
0002Mobile computing devices, such as mobile phones, hand-held computers, and personal digital assistants, are now ubiquitous in today's society. These devices now typically have processors, memory, and storage that provide users with computing power nearly on par with that of desktop computers. Many users find, however, that the primary drawback of such devices is that of the input mechanisms. Manual entry of any significant amount of data into a mobile phone or personal digital assistant (PDA) is certainly a non-trivial task.
0003Text input is typically accomplished by one of three input mechanisms. A first text input mechanism is a hardware key mechanism. Mobile phones usually have a numeric keypad with which users may enter textual characters using combinations of button presses. This method of input is slow and cumbersome, since the task of entering a long string of text requires a considerable number of button presses. Other mobile computing devices include a full keyboard. However, with the small size of the device itself, the size and spacing of the keys renders the keyboard difficult to manipulate.
0004Many mobile computing devices include a touch screen display device and a stylus that may be used to manipulate graphical elements on the display. Some attempts have been made to allow users to use handwritten characters on the touch screen display with varying degrees of success. Graffiti® is a handwriting recognition mechanism that recognizes simplified gestures for textual characters. Still, the user must write individual characters and the recognition mechanism has limited success.
0005Some mobile computing devices provide a "virtual" keyboard that presents a miniature version of a keyboard on a touch screen. The user may then use keyboard layout to tap the virtual keys to enter text. However, tapping the keys remains a tedious hunt-and-tap operation using a stylus, which is not as natural as two-handled on a full size keyboard. Furthermore, the user must successfully depress each key individually by tapping with the stylus. This operation is tedious and difficult for many users.
0006The document <patcit id="pcit0001" dnum="CA2353159A1"><text>CA 2 353 159 A1</text></patcit> discloses a method of data input through sliding movement across a touch sensitive screen. A first step involves accepting a change in direction of the sliding movement across the touch sensitive screen as an indication of character input selection. A second step involves accepting a variation in a substantially linear portion of the sliding movement as an indication of character input selection.
0007The document Shumin Zhai, Per-Ola Kristensson: "Shorthand Writing on Stylus Keyboard" discloses a method for computer-based speed writing, which augments stylus keyboarding with shorthand symbol based on pattern recognition.
0008The document <patcit id="pcit0002" dnum="US5574482A"><text>US 5,574,482</text></patcit> discloses a method of input programmed to operate on a representation of a keyboard appearing on a touch-sensitive screen in which letters are made temporarily available to the user based on studies of frequency of occurrence and sequence in language that may then be selected for input by a sliding motion of an input device.
SUMMARY OF THE INVENTION:
0009The present invention recognizes the disadvantages of the prior art and provides an improved user input mechanism for personal computing devices. The user input mechanism recognizes when an implement, such as a stylus or a user's finger, makes contact with a touch sensitive input device. Preferably, a virtual keyboard is displayed under the input device. The user input mechanism then recognizes movement of the implement while in contact with the touch screen. The user input mechanism may recognize known patterns or gestures that correspond to words as they relate spatially to the placement of keys on the virtual keyboard. The word may be completed by lifting the implement from the keyboard, by dragging the implement off the keyboard area, or by tapping a designated area. Alternatively, the user input mechanism may recognize changes of direction and other movements within the pattern that identify characters in the ward. The user input mechanism may then perform a spell check or context analysis to determine a closest match for the pattern or gesture.
BRIEF DESCRIPTION OF THE DRAWINGS
0010The novel features believed characteristic of the invention are set forth in the appended claims. The invention itself, however, as well as a preferred mode of use, further objectives and advantages thereof, will best be understood by reference to the following detailed description of an illustrative embodiment when read in conjunction with the accompanying drawings, wherein: <ul id="ul0001" list-style="none"><li><figref idref="f0001"><b>Figure 1</b></figref> is a diagram of a personal computing device in accordance with a preferred embodiment of the present invention;</li><li><figref idref="f0001"><b>Figure</b> 2</figref> is a block diagram of a personal computing device in accordance with a preferred embodiment of the present invention;</li><li><figref idref="f0002"><b>Figure 3</b></figref> illustrates a touch screen display in accordance with a preferred embodiment of the present invention;</li><li><figref idref="f0002 f0003 f0004"><b>Figures 4A-4F</b></figref> illustrate example text entry using the user input mechanism of the present invention;</li><li><figref idref="f0004"><b>Figure 5</b></figref> is a block diagram illustrating a data processing system in accordance with an exemplary embodiment of the present invention; and</li><li><figref idref="f0005"><b>Figures 6A</b></figref> and <figref idref="f0006"><b>6B</b></figref> depict a flowchart illustrating the operation of a user input interface in accordance with an exemplary embodiment of the present invention.</li></ul>
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
0011With reference now to <figref idref="f0001"><b>Figure 1</b></figref><b>,</b> a simplified diagram of a personal computing device is depicted in accordance with a preferred embodiment of the present invention. Personal computing device <b>100</b> includes a display 102 for presenting textual and graphical information. Display <b>102</b> may be a known display device, such as a liquid crystal display (LCD) device. The display may be used to present a map or directions, calendar information, a telephone directory, or an electronic mail message. In an exemplary embodiment of the present invention, screen <b>102</b> may be a touch screen device that receives user input using an implement such as, for example, stylus <b>110.</b>
0012Personal computing device <b>100</b> may also include keypad <b>104,</b> speaker <b>106,</b> and antenna <b>108.</b> Keypad <b>104</b> may be used to receive user input in addition to using screen <b>102.</b> Speaker <b>106</b> provides a mechanism for audio output, such as presentation of an audio file. Antenna <b>108</b> provides a mechanism used in establishing a wireless communications link between personal computing device <b>100</b> and a network. Associated device drivers and wireless communications means are not explicitly shown in <figref idref="f0001"><b>Figure 1</b></figref><b>.</b>
0013Personal computing device <b>100</b> also preferably includes a graphical user interface that may be implemented by means of systems software residing in computer readable media in operation within personal computing device <b>100.</b>
0014In accordance with a preferred embodiment of the present invention, a user input mechanism is provided that allows a user to enter words as gestures on a virtual keyboard presented on the display device. The user input mechanism of the present invention combines elements of two existing and prevalent forms of user input: cursive handwriting and keyboard input. A familiar keyboard layout is presented on the display. A user then may place an implement, such as a stylus or the user's finger, in contact with the display. Typically, the implement will first touch the screen at a position of a first character in a word. The user then may move the implement along the surface of the display from character to character, spelling out a word. In time, the user will learn the patterns on the virtual keyboard for each word. With even greater familiarity, the display of the virtual keyboard may become superfluous for expert users.
0015Turning now to <figref idref="f0001"><b>Figure 2</b></figref><b>,</b> a block diagram of a personal computing device is shown in accordance with a preferred embodiment of the present invention. Personal computing device <b>200</b> is an example of a computing device, such as personal computing device <b>100</b> in <figref idref="f0001"><b>Figure 1</b></figref><b>,</b> in which code or instructions implementing the processes of the present invention may be located. Personal computing device <b>200</b> includes a bus <b>206</b> to which processor <b>202</b> and main memory <b>204</b> are connected. Audio adapter <b>208,</b> graphics adapter <b>210,</b> touch screen/stylus adapter <b>212,</b> transceiver <b>214,</b> and storage <b>216</b> also are connected to bus <b>206.</b>
0016Cradle link <b>218</b> provides a mechanism to connect personal computing device <b>200</b> to a cradle used in synchronizing data in personal computing device <b>200</b> with another data processing system. Further, touch screen/ stylus adapter <b>212</b> also includes a mechanism to receive user input as a stylus makes contact with a touch screen display.
0017An operating system runs on processor <b>202</b> and is used to coordinate and provide control of various components within personal computing device <b>200</b> in <figref idref="f0001"><b>Figure 2</b></figref><b>.</b> The operating system may be, for example, a commercially available operating system such as Windows CE, which is available from Microsoft Corporation, Linux, or PalmOS. Instructions for the operating system and applications or programs are located on storage devices, such as storage <b>216,</b> and may be loaded into main memory <b>204</b> for execution by processor <b>202.</b>
0018Those of ordinary skill in the art will appreciate that the hardware in <figref idref="f0001"><b>Figure 2</b></figref> may vary depending on the implementation. Other internal hardware or peripheral devices, such as flash ROM (or equivalent nonvolatile memory) or optical disk drives and the like, may be used in addition to or in place of the hardware depicted in <figref idref="f0001"><b>Figure 2</b></figref><b>.</b> Personal computing device <b>200</b> may be, for example, a personal digital assistant (PDA) or a palm-top computing device. Personal computing device <b>200</b> may also take the form of a telephone computing device, a tablet computer, or a laptop computer within the scope of the present invention.
0019<figref idref="f0002"><b>Figure 3</b></figref> illustrates a touch screen display in accordance with a preferred embodiment of the present invention. Touch screen display <b>300</b> includes an application portion <b>302,</b> a text input portion <b>304,</b> and a virtual keyboard <b>306.</b> In the depicted example, the keyboard layout is similar to a QWERTY keyboard layout. A QWERTY keyboard layout is named after the order of the keys in the upper left portion of the keyboard. Other keyboard layouts, such as the Dvorak keyboard layout, may also be used within the scope of the present invention. The present invention may also apply to other input layouts, such as a numeric keypad or a non-English alphabetic keyboard. Therefore, a word may consist of a string of alphabetic characters, a string of numeric characters, or a combination of alphabetic and numeric characters.
0020Tapping individual letters on a virtual keyboard is not a natural operation for most users. Holding a stylus is similar to holding a pen or pencil; therefore, users find handwriting more natural with a stylus. When writing with a pen or pencil, cursive writing is a more efficient and fluid style of writing. A user is able to write words more efficiently, because the writing implement leaves the paper less frequently.
0021The present invention provides a "QWER-sive" user input mechanism that recognizes gestures that represent words. QWER-sive, pronounced like "cursive," is an input method that allows users to enter words as a single gesture based on a keyboard layout, such as virtual keyboard <b>306.</b> A user places an implement, such as a stylus for example, in contact with the touch screen over a display of a first letter of a word. The user then drags the stylus, while in contact with the surface of the touch screen, to the next letter of the word, then to the next letter, and so on. The user may then use the keyboard layout to fluidly write whole words in a single gesture. Using the QWER-sive input mechanism of the present invention, the time between each character entry is minimized and users may eventually be able to repeat gestures from memorization of commonly used words or character combinations.
0022As words are recognized from input on keyboard layout <b>306,</b> the words are presented in text input portion <b>304.</b> If a word or series of words is accepted, the string is sent to an application in application portion <b>302.</b> In this manner, the user may efficiently and fluidly enter text into a personal computing device.
0023While the example depicted in <figref idref="f0002"><b>Figure 3</b></figref> shows a keyboard layout on the display, a user may become increasingly familiar with the keyboard layout and may also memorize gestures for particular words. A large percentage of text in most languages may be represented by a relatively small subset of words. For example, the words "the," "is," "it," and "of" are examples of very common words in the English language. A user may memorize the gestures for very common words and execute them without looking at the keyboard layout. The patterns of the gestures may be recognized as loosely tied to the keyboard layout. In fact, for many words, it may not be necessary to display the keyboard layout. Thus, in an exemplary embodiment of the present invention, gestures may be entered relative to a keyboard layout that is not displayed. The keyboard layout may be displayed only when expressly requested by the user by selection of a particular button or graphical element, for example.
0024<figref idref="f0002 f0003 f0004"><b>Figures 4A-4F</b></figref> illustrate example text entry using the user input mechanism of the present invention. More particularly, <figref idref="f0002"><b>Figure 4A</b></figref> illustrates the entry of a common word, "the." The user places an implement in contact with a virtual keyboard the location of the first letter, in this case "t." The user then drags the implement from the "t" to the location of the letter "h" and then to the letter "e." The user may then end the word by simply lifting the implement from the surface of the touch screen or by, for example, dragging the implement to space bar <b>412,</b> dragging the implement to "ENTER" key <b>414,</b> or dragging the implement to an unused portion of the display, such as portion <b>416.</b>
0025The input mechanism of the present invention may use fuzzy logic to determine keys that are close to vertices of gestures. For example, given the above example of the word "the," users may perform the change of direction associated with the letter "h" with varying degrees of fluidity and accuracy. Rather than executing a sharp change of direction with a vertex directly on the "h" key, a user may round the corner or stop at the edge of the virtual key. Thus, the present invention may include some fuzzy logic to more accurately determine the intentions of the user.
0026<figref idref="f0002"><b>Figure 4B</b></figref> illustrates the entry of the word "quick." In this case, the user must pass through the letter "u" to get to the letter "i." The user input mechanism of the present invention may recognize the letter "u" by determining whether the stylus stops momentarily at the location of the letter "u" on the keyboard layout.
0027Alternatively, the user may simply pass through the letter, thus forming a gesture for the word "qick." In this case, the user input mechanism may recognize the pattern as a common pattern corresponding to the word "quick." The user input mechanism may also accept "qick" as the input word and perform a spell check operation, which may determine that the word "quick" is a closest match for the input word. Another method for identifying letters that lie on a path between preceding and succeeding letters in the keyboard layout is described below with reference to <figref idref="f0004"><b>Figure 4F</b></figref><b>.</b>
0028<figref idref="f0003"><b>Figure 4C</b></figref> illustrates the entry of the word "brown" using the user input mechanism of the present invention. Further, <figref idref="f0003"><b>Figure 4D</b></figref> illustrates the entry of the word "fox." As each word is completed by, for example, lifting the implement from the surface of the touch screen, the word is added to the text input portion of the display. Alternatively, the user input mechanism may display individual characters as the implement changes directions or makes other sub-gestures within the gesture. The user input mechanism may also make guesses as to what word is being input based upon individual characters or the pattern as a whole in a manner similar to a conventional autocomplete function known in the art. If a guess is correct, the user may halt entry and indicate acceptance of the guess by, for example, tapping the "ENTER" key or the like.
0029With reference now to <figref idref="f0003"><b>Figure 4E</b></figref><b>,</b> the entry of a word with a double letter is shown. In this example, the word "scribble" has a double "b" in the word. As stated above, the user may enter only one "b" with the expectation that the user input mechanism will recognize the pattern or correct the spelling with a spell check. However, in accordance with a preferred embodiment of the present invention, the user may explicitly enter a double letter with a sub-gesture. In this example, loop sub-gesture <b>450</b> may indicate a double letter. The user enters the letters until a letter occurs twice in succession. The user then may loop from the first occurrence to a second occurrence in a circular gesture to indicate a double letter.
0030<figref idref="f0004"><b>Figure 4F</b></figref> illustrates the entry of a word in which letters appear in a straight line. In this example, the word "ash" is entered by dragging the stylus from the letter "a" through the letter "s" to the letter "h." As stated above, the user may drag through the letter "s" with the expectation that the user input mechanism will recognize the pattern or correct the spelling with a spell check. However, in accordance with a preferred embodiment of the present invention, the user may explicitly enter the letter "s" with a sub-gesture. In this example, tick or heart beat sub-gesture <b>460</b> may indicate that a letter is to be included in the word. The user enters the letter "a" and drags to the letter "s" and performs a up-and-down motion with the implement to indicate that the letter "s" is part of the word. Then, the user drags to the final letter "h."
0031While a "tick" or "heartbeat" type sub-gesture is shown in <figref idref="f0004"><b>Figure 4F</b></figref><b>,</b> other sub-gestures may also be used. For instance, since the letter "s" would not typically be included in a gesture from "a" to "h," in the depicted example, a "loop" sub-gesture may be used to indicate inclusion of the letter "s.' In this case, a double loop sub-gesture may be used to indicate double letters that lie between preceding and succeeding letters in the keyboard layout.
0032Other sub-gestures may be used within the scope of the present invention. For example, alternative sub-gestures, such as "hump" or "V" like sub-gesture, may be used for a double letter or "drag-through" letter. Sub-gestures may also be used to indicate character modifications, such as capitalization and the like. Other character modifications and sub-gestures may be apparent to those of ordinary skill in the art.
0033<figref idref="f0004"><b>Figure 5</b></figref> is a block diagram illustrating a data processing system in accordance with an exemplary embodiment of the present invention. Text input interface <b>510</b> receives user input <b>502.</b> In an exemplary embodiment, user input <b>502</b> is generated by placing a stylus or other implement in contact with a touch screen device. Text input interface provides text to operating system <b>530</b> and ultimately to application <b>540</b> running in the operating environment of operating system <b>530.</b>
0034Input <b>502</b> includes gestures made by dragging an implement over a virtual keyboard displayed on a touch screen. Text input interface <b>510</b> includes pattern matching <b>512,</b> which compares the gesture to pattern data <b>514.</b> The pattern data associates common words with their corresponding patterns. If the input gesture matches a known pattern, the input word is identified as the word associated with the pattern. In this manner, a user may memorize common patterns and quickly draw them on the touch screen without having to pay close attention to the individual letters.
0035Text input interface <b>510</b> also includes character route determination <b>516,</b> which recognizes changes of direction and sub-gestures within the gesture to identify individual letters within the word. Character route determination <b>516</b> may compare input positions with respect to the touch screen with keyboard layout information <b>518</b> to determine individual characters associated with changes of direction and sub-gestures.
0036Text input interface <b>510</b> may also include spell/context checking <b>520,</b> which looks up input words in dictionary <b>522.</b> Incorrectly spelled words, both intentional and unintentional, may be corrected by replacing them with words from dictionary <b>522.</b> Considering the previous example of "qick," the word "quick" may be found to be the closest match in dictionary <b>522.</b> The text input interface may automatically correct the word or prompt the user for acceptance of the corrected word.
0037Spell/context checking <b>520</b> may also apply rules to correct a word. For example, in entering a longer word, the user may unintentionally lift the implement from the screen. Spell/context checking may apply a rule to combine the two word fragments and look the resulting word up in dictionary <b>522.</b> As a specific example, the user may unintentionally enter "mischara" and "cterization." While neither word fragment is likely to be found in the dictionary, the combined word of "mischaracterization" may be found. Context rules may also be applied to identify words that are commonly entered by a given user. For example, user may use a particular word frequently and enter the gesture quickly. Spell/context checking <b>520</b> may recognize the word based on the context and frequency of the gesture.
0038Text input interface <b>510</b> may be embodied within a device driver for a touch screen device. The text input interface may also be embodied within operating system <b>530</b> or may be an application that runs on top of or within the operating system, providing text input to application <b>540. As</b> such, the text input interface may be added as a terminate and stay resident (TSR) application that filters user input to provide quick and efficient textual input using word gestures.
0039<figref idref="f0005"><b>Figures 6A</b></figref> and <figref idref="f0006"><b>6B</b></figref> depict a flowchart illustrating the operation of a user input interface in accordance with the present invention. With reference to <figref idref="f0005"><b>Figure 6A</b></figref><b>,</b> the process begins and a determination is made as to whether an exit condition exists (step <b>602).</b> An exit condition may exist, for example, when the personal computing device is shut down, when the user exits the user input interface, when the user switches to an alternate input interface, etc. If an exit condition exists, the process ends.
0040If an exit condition does not exist in step <b>602,</b> a determination is made as to whether the stylus is down or in contact with the touch screen (step <b>604).</b> If the stylus is not down, the process returns to step <b>602</b> to determine whether an exit condition exists. If, however, the stylus is in contact with the touch screen in step <b>604,</b> the process identifies the starting position of the stylus (step <b>606)</b> and records the starting character of the word (step <b>608).</b>
0041Then, a determination is made as to whether a change of direction occurs (step <b>610).</b> If a change of direction occurs while the stylus remains in contact with the touch screen, the process identifies the stylus position (step <b>612</b>) and records the next character in the input word based on the stylus position (step <b>614</b>)<b>.</b> Thereafter, the process returns to step <b>610</b> to determine whether a change of direction occurs.
0042If a change of direction does not occur in step <b>610,</b> a determination is made as to whether a loop sub-gesture occurs (step <b>616).</b> If a loop sub-gesture occurs, the process records a double character in the input word based on the last character entered (step <b>618</b>) and returns to step <b>610</b> to determine whether a change of direction occurs.
0043If a loop sub-gesture does not occur in step <b>616,</b> a determination is made as to whether a tick sub-gesture occurs while the stylus is in contact with the touch screen (step <b>620</b>). If a tick sub-gesture occurs, the process identifies the stylus position (step <b>622</b>) and records the next character in the input word based on the stylus position (step <b>624</b>). Thereafter, the process returns to step <b>610</b> to determine whether a change of direction occurs.
0044If a tick sub-gesture does not occur in step <b>620,</b> a determination is made as to whether gesture ends (step <b>626</b>). This determination may be made, for example, by determining whether the stylus is lifted from the touch screen or whether the stylus is dragged to a space bar an enter key or any other control or unused portion of the touch screen. If the gesture ends, the process identifies the stylus position (step <b>628</b>) and records the last character in the input word based on the stylus position (step <b>630</b>).
0045The process shown in <figref idref="f0005"><b>Figure 6A</b></figref> may be modified to include additional sub-gestures. For example, a sub-gesture for capitalization may be added to the process. Other character modifications or special characters may also be handled through the use of sub-gestures in a manner similar to that shown in <figref idref="f0005"><b>Figure 6A</b></figref><b>.</b>
0046Next, continuing to <figref idref="f0006"><b>Figure 6B</b></figref><b>,</b> the process performs pattern recognition on the input gesture (step <b>632</b>)<b>.</b> Pattern matching may be mostly based on changes of direction and sub-gestures. Sub-gestures may also be considered changes of direction. A determination is made as to whether the pattern is recognized (step <b>634</b>)<b>.</b> If the pattern is recognized, the process performs word lookup based on the pattern (step <b>636</b>) and sends the associated word to a selected application (step <b>638</b>).
0047If the pattern is not recognized in step <b>634,</b> the process performs spell/context check (step <b>640</b>). A determination is made as to whether the word is found or is correct based on the context (step <b>642</b>). If the word is found in a dictionary or is correct based on the context, the process continues to step <b>630</b> to send the word associated with the gesture to a selected application (step <b>638</b>).
0048If the words not found or correct based on the context in step <b>642,</b> a determination is made as to whether a replacement word is identified (step <b>644</b>)<b>.</b> This determination may be made by automatically identifying a replacement word or by prompting the user for selection of the correct word. If a replacement word is not identified, the word is sent to the selected application as entered (step <b>638</b>)<b>.</b> If a replacement word is identified, the process replaces the input word with the replacement word (step <b>646</b>) and the replacement word is sent to the selected application (step <b>638</b>)<b>.</b>
0049After the process sends the word associated with the gesture to the application in step <b>638,</b> the process returns to step <b>602</b> in <figref idref="f0005"><b>Figure 6A</b></figref> to determine whether an exit condition exists.
0050Thus, the present invention solves the disadvantages of the present invention by providing a user input mechanism that allows a user to efficiently enter strings of text using a virtual keyboard without having to execute repetitive and tedious operations. The user input mechanism of the present invention recognizes gestures that represent multiple character words. The user is able to fluidly write words as a single gesture in a natural manner that is similar to cursive handwriting. Since the user input mechanism of the present invention is based on a familiar keyboard layout and is gesture-based, the user can easily learn the gestures and enter them efficiently from memory. The patterns of the gestures may be recognized as loosely tied to the keyboard layout. Thus, the user may enter them quickly without paying close attention to the actual layout.
0051The present invention may also be applied to any situation where the user may prefer the QWER-sive input mechanism over other text input mechanisms. For example, a desktop computer user may prefer to use the QWER-sive mechanism with a touch screen input device, such as a touch pad, over keyboard input. A user may also prefer the QWER-sive input mechanism of the present invention, because the user may enter text with one hand, leaving the other hand free for other more productive activities, such as holding a telephone or printed materials. For example, a laptop computer user on an airplane may enter text with one hand while holding a report or memorandum with the other hand.
0052It is important to note that while the present invention has been described in the context of a fully functioning data processing system, those of ordinary skill in the art will appreciate that the processes of the present invention are capable of being distributed in the form of a computer readable medium of instructions and a variety of forms and that the present invention applies equally regardless of the particular type of signal bearing media actually used to carry out the distribution. Examples of computer readable media include recordable-type media, such as a floppy disk, a hard disk drive, a RAM, CD-ROMs, DVD-ROMs, and transmission-type media, such as digital and analog communications links, wired or wireless communications links using transmission forms, such as, for example, radio frequency and light wave transmissions. The computer readable media may take the form of coded formats that are decoded for actual use in a particular data processing system.
0053The description of the present invention has been presented for purposes of illustration and description, and is not intended to be exhaustive or limited to the invention in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art. The embodiment was chosen and described in order to best explain the principles of the invention, the practical application, and to enable others of ordinary skill in the art to understand the invention for various embodiments with various modifications as are suited to the particular use contemplated.
0054For the avoidance of doubt, the term "comprising", as used herein throughout the description and claims is not to be construed as meaning "consisting only of".
Contents4
6 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6
Every citation, both ways
| Document | Relation | Office |
|---|---|---|
| CA2353159A1 | Cites | Canada |
| US5574482A | Cites | United States of America |
| US2004104896A1 | Cites | United States of America |
| US2004120583A1 | Cites | United States of America |
| US2004140956A1 | Cites | United States of America |
| SHUMIN ZHAI, PER-OLA KRISTENSSON: "Shorthand Writing on Stylus Keyboard" PROCEEDINGS OF CHI 2003,FT. LAUDERDALE, FLORIDA, USA, vol. No. 5, 5 April 2003 (2003-04-05), - 10 April 2003 (2003-04-10) pages 97-104, XP002588566 | Non-patent | – |
9 members in 4 offices; this record represents the family
Priority claims4
| Document | Office | Kind | Date |
|---|---|---|---|
| 75240504 | United States of America | A | |
| 752405 | United States of America | – | |
| US20040752405 | – | – | – |
| 752405 | – | – | – |
Members9
| Document | Office | Kind | |
|---|---|---|---|
| US2005146508A1 | United States of America | A1 | |
| CN1637686A | China | A | |
| EP1555601A2 | European Patent Office (EPO) | A2 | |
| JP2005196759A | Japan | A | |
| CN1324436C | China | C | |
| US7250938B2 | United States of America | B2 | |
| JP4105682B2 | Japan | B2 | |
| EP1555601A3 | European Patent Office (EPO) | A3 | |
| EP1555601B1This record | European Patent Office (EPO) | B1 |
37 legal events, as 3 offices reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | Office | |
|---|---|---|---|
| Amendments to the register in respect of changes of name or changes affecting rights (sect. 32/1977)REGISTERED BETWEEN 20250508 AND 20250514732E | 732E | GB | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Patent expired after termination of 20 yearsExpiredPE20 | PE20 | GB | |
| Expiry of rightR071 | R071 | DE | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Opt-out of the competence of the unified patent court (upc) registeredP01 | P01 | EP | |
| Change of representativeR082 | R082 | DE | |
| Amendments to the register in respect of changes of name or changes affecting rights (sect. 32/1977)REGISTERED BETWEEN 20200220 AND 20200226732E | 732E | GB | |
| Change of applicant/patenteeR081 | R081 | DE | |
| Change of representativeR082 | R082 | DE | |
| No opposition filedOpposition26N | 26N | EP | |
| No opposition filed within time limitOppositionORIGINAL CODE: 0009261PLBE | PLBE | EP | |
| Information on the status of an ep patent application or granted ep patentGrantedSTATUS: NO OPPOSITION FILED WITHIN TIME LIMITSTAA | STAA | EP | |
| No opposition filed against granted patent, or epo opposition proceedings concluded without decisionGrantedR097 | R097 | DE | |
| Dpma publication of mentioned ep patent grantGrantedR096 | R096 | DE | |
| Change of applicant/patenteeR081 | R081 | DE | |
| Change of applicant/patenteeR081 | R081 | DE | |
| Designated contracting statesAK | AK | EP | |
| European patent grantedGrantedFG4D | FG4D | GB | |
| (expected) grantORIGINAL CODE: 0009210GRAA | GRAA | EP | |
| Grant fee paidORIGINAL CODE: EPIDOSNIGR3GRAS | GRAS | EP | |
| Intention to grant announcedINTG | INTG | EP | |
| Information provided on ipc code assigned before grantRIC1 | RIC1 | EP | |
| Despatch of communication of intention to grant a patentORIGINAL CODE: EPIDOSNIGR1GRAP | GRAP | EP | |
| Amendment of ipc main classPREVIOUS MAIN CLASS: G06F0003033000R079 | R079 | DE | |
| First examination report despatched17Q | 17Q | EP | |
| Designation fees paidAKX | AKX | EP | |
| Request for examination filed17P | 17P | EP | |
| Designated contracting statesAK | AK | EP | |
| Request for extension of the european patentAX | AX | EP | |
| Search report despatchedORIGINAL CODE: 0009013PUAL | PUAL | EP | |
| Party data changed (applicant data changed or rights of an application transferred)RAP1 | RAP1 | EP | |
| Designated contracting statesAK | AK | EP | |
| Request for extension of the european patentAX | AX | EP | |
| Public reference made under article 153(3) epc to a published international application that has entered the european phaseORIGINAL CODE: 0009012PUAI | PUAI | EP |
Numbers
- Publication
- 1555601
- Publication, DOCDB
- 1555601
- Publication, EPODOC
- EP1555601
- Application
- 4257832
- Application, DOCDB
- 04257832
- Application, EPODOC
- EP20040257832
Titles3
- German
- System und Verfahren zur verbesserten Benutzereingabe in Computer
- English
- System and method for improved user input on personal computing devices
- French
- Système et procédé en vue d'améliorer l'entrée de données dans un ordinateur par un utilisateur
Classification
- CPC, 2
- G06F3/04886
- G06F3/04883
- IPC, 6
- G06F3 0488
- H03M11 04
- G06F3 023
- G06F3 033
- G06F3 041
- G06F3 048
Designated states2
- Contracting states, 2
- Germany
- United Kingdom
