Keystroke resolution
First Claim
Patent Images
1. A computer-implemented method, comprising:
- receiving, by a processor, an indication of a first plurality of keystrokes;
storing, by the processor, and in a buffer already containing at least one character received during a first predetermined time interval, a plurality of characters corresponding to the first plurality of keystrokes; and
responsive to completion of a second predetermined time interval, reordering, by the processor and based on the at least one character from the previous predetermined time interval and a statistical model, characters from the plurality of characters corresponding to the first plurality of keystrokes, but not the at least one character, wherein the second predetermined time interval occurs subsequent to the first predetermined time interval.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and apparatus, including computer programs encoded on computer storage media, for resolving keystrokes input into an electronic device. One of the methods includes receiving multiple keystrokes in the electronic device. Multiple characters that correspond to the multiple keystrokes are stored in a storage location for a predetermined time interval. In response to the predetermined time interval elapsing, the characters that correspond to the multiple keystrokes are reordered with respect to each other based on a statistical model.
-
Citations
16 Claims
-
1. A computer-implemented method, comprising:
-
receiving, by a processor, an indication of a first plurality of keystrokes; storing, by the processor, and in a buffer already containing at least one character received during a first predetermined time interval, a plurality of characters corresponding to the first plurality of keystrokes; and responsive to completion of a second predetermined time interval, reordering, by the processor and based on the at least one character from the previous predetermined time interval and a statistical model, characters from the plurality of characters corresponding to the first plurality of keystrokes, but not the at least one character, wherein the second predetermined time interval occurs subsequent to the first predetermined time interval. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer-implemented method, comprising:
-
receiving a plurality of keystrokes within a first predetermined time interval; storing a plurality of characters that correspond to the plurality of keystrokes in a buffer for a second predetermined time interval; receiving data indicating one or more previously received characters comprising a partial-character string positioned adjacent to the plurality of characters, which together form a continuous character string; in response to the second predetermined time interval elapsing, reordering the characters that correspond to the plurality of keystrokes with respect to each other based on a statistical model, wherein the reordering comprises; determining a plurality of permutations of the characters that correspond to the plurality of keystrokes; combining each permutation with the partial-character string to form a plurality of continuous character strings; comparing each of the continuous character strings to one or more dictionaries; calculating a score for each continuous character string based on the comparison; and selecting the permutation that corresponds to the continuous character string associated with the highest score.
-
-
12. A system comprising:
-
a keyboard operable to receive from a user keystrokes that represent characters; one or more data processing apparatuses comprising; a buffer operable to receive and buffer a plurality of characters represented by keystrokes received from the keyboard in a predetermined time interval; a reordering subsystem operable to, in response to the predetermined time interval elapsing, reorder the plurality of characters from the buffer based on a statistical model, the reordering including comparing permutations of the characters to one or more dictionaries; and a memory comprising the one or more dictionaries; the buffer further operable to; after the plurality of characters in the buffer are reordered, clear characters that have been in the buffer longer than the predetermined interval and retain one or more characters from the plurality of characters in the buffer; and receive an additional keystroke and add a character that is represented by the additional keystroke to the one or more characters retained in the buffer; and the reordering subsystem further operable to, in response to the additional character being received in the buffer, reorder the characters from the buffer based on the statistical model. - View Dependent Claims (13, 14)
-
-
15. A computer-readable storage device encoded with a computer program product, the computer program product including instructions that, when executed, perform operations comprising:
-
responsive to receiving a plurality of keystrokes storing data representing a plurality of characters that correspond to the plurality of keystrokes in a buffer for a predetermined time interval; in response to the predetermined time interval elapsing, updating, based on a statistical model, the data in the buffer representing the plurality of characters to reflect reordering the plurality of characters with respect to each other; after reordering the plurality of characters, clearing data from the buffer representing characters that have been represented in the buffer longer than the predetermined interval, wherein one or more characters from the plurality of characters remain represented in the buffer; receiving an additional keystroke and adding data to the buffer representing a character that corresponds to the additional keystroke; and in response to receiving the additional keystroke, updating, based on the statistical model, the buffer to reflect reordering of the characters represented in the buffer, including the one or more characters from the plurality of characters that remain represented in the buffer and the character that corresponds to the additional keystroke. - View Dependent Claims (16)
-
Specification