Virtual touchscreen keyboards
First Claim
Patent Images
1. A method comprising:
- detecting a first hand position on a touchscreen of an electronic device;
detecting a second hand position on the touchscreen;
detecting ten fingers on the touchscreen;
associating two fingers being furthest apart on the touchscreen with one pinkie of each of two different hands;
associating two fingers being next furthest apart on the touchscreen one ring finger of each of two different hands;
associating two fingers being next furthest apart on the touchscreen with one middle finger of each of two different hands;
associating two fingers being next furthest apart on the touchscreen with one index finger of each of two different hands;
associating two fingers being next furthest apart on the touchscreen with one thumb of each of two different hands;
deriving a line equation in form y=mx+b between the two pinkies, with y being a y-coordinate of the touchscreen and x being an x-coordinate of the touchscreen;
calculating a y-value corresponding to and using the line equation for an x-value of one of the thumbs;
when the y-value of the one of the thumbs is greater than the calculated y-value, associating a pinkie having a lowest x-value with a left hand; and
presenting a virtual keyboard on the touchscreen based on the first hand position, the second hand position, and the associations between fingers on the touchscreen and pinkies, ring fingers, middle fingers, index fingers, and thumbs.
2 Assignments
0 Petitions
Accused Products
Abstract
A dynamically updated virtual keyboard may be presented on a touchscreen of a user device by detecting a first hand position on the touchscreen. A virtual keyboard may then be displayed on the touchscreen, the virtual keyboard based on the first hand position. Characteristics of the virtual keyboard, such as size, position, orientation, and selection of the keys can also vary based on the first hand position and on other input features.
10 Citations
19 Claims
-
1. A method comprising:
-
detecting a first hand position on a touchscreen of an electronic device; detecting a second hand position on the touchscreen; detecting ten fingers on the touchscreen; associating two fingers being furthest apart on the touchscreen with one pinkie of each of two different hands; associating two fingers being next furthest apart on the touchscreen one ring finger of each of two different hands; associating two fingers being next furthest apart on the touchscreen with one middle finger of each of two different hands; associating two fingers being next furthest apart on the touchscreen with one index finger of each of two different hands; associating two fingers being next furthest apart on the touchscreen with one thumb of each of two different hands; deriving a line equation in form y=mx+b between the two pinkies, with y being a y-coordinate of the touchscreen and x being an x-coordinate of the touchscreen; calculating a y-value corresponding to and using the line equation for an x-value of one of the thumbs; when the y-value of the one of the thumbs is greater than the calculated y-value, associating a pinkie having a lowest x-value with a left hand; and presenting a virtual keyboard on the touchscreen based on the first hand position, the second hand position, and the associations between fingers on the touchscreen and pinkies, ring fingers, middle fingers, index fingers, and thumbs. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method comprising:
-
presenting a virtual keyboard to a client device for display on a touchscreen of the client device; receiving, from the client device, a detected first hand position and a detected second hand position of a user on the touchscreen of the client device; receiving, from the client device, a detected ten fingers on the touchscreen on the client device; associating two fingers being furthest apart on the touchscreen with one pinkie of each of two different hands; associating two fingers being next furthest apart on the touchscreen with one ring finger of each of two different hands; associating two fingers being next furthest apart on the touchscreen with one middle finger of each of two different hands; associating two fingers being next furthest apart on the touchscreen with one index finger of each of two different hands; associating two fingers being next furthest apart on the touchscreen with one thumb of each of two different hands; deriving a line equation in form y=mx+b between the two pinkies, with y being a y-coordinate of the touchscreen and x being an x-coordinate of the touchscreen; calculating a y-value corresponding to and using the line equation for an x-value of one of the thumbs; when the y-value of the one of the thumbs is greater than the calculated y-value, associating a pinkie having a lowest x-value with a left hand; dynamically updating the virtual keyboard based on the detected first hand position of the user, the detected second hand position of the user, and the associations between fingers on the touchscreen and pinkies, ring fingers, middle fingers, index fingers, and thumbs; and presenting the updated virtual keyboard to the client device for display on the touchscreen of the client device. - View Dependent Claims (13)
-
-
14. A client device comprising:
-
a touchscreen; a user input interpretation module comprising one or more processors and configured to detect a first hand position on the touchscreen, detect a second hand position on the touchscreen, and detect ten fingers on the touchscreen; and a dynamic virtual keyboard updater configured to associate two fingers being furthest apart on the touchscreen with pinkie of each of two different hands, associate two fingers being next furthest apart on the touchscreen with one ring finger of each of two different hands, associate two fingers being next furthest apart on the touchscreen with one middle finger of each of two different hands, associate two fingers being next furthest apart on the touchscreen with one index finger of each of two different hands, associate two fingers being next furthest apart on the touchscreen with one thumb of each of two different hands, derive a line equation in form y=mx+b between the two pinkies, with y being a y-coordinate of the touchscreen and x being an x-coordinate of the touchscreen, calculate a y-value corresponding to and using the line equation for an x-value of one of the thumbs, when the y-value of the one of the thumbs is greater than the calculated y-value, associate a pinkie having a lowest x-value with a left hand, and present a virtual keyboard on the touchscreen based on the first hand position, the second hand position, and the associations between fingers on the touchscreen and pinkies, ring fingers, middle fingers, index fingers, and thumbs. - View Dependent Claims (15, 16)
-
-
17. A server comprising:
-
a processor; a memory; and a dynamic virtual keyboard updater configured to; present a virtual keyboard to a client device for display on a touchscreen of the client device; receive, from the client device, a detected first hand position of a user on the touchscreen of the client device; receive, from the client device, a detected second hand position of a user on the touchscreen of the client device; receive, from the client device, a detected ten fingers on the touchscreen on the client device; associate two fingers being furthest apart on the touchscreen with one pinkie of each of two different hands; associate two fingers being next furthest apart on the touchscreen with one ring finger of each of two different hands; associate two fingers being next furthest apart on the touchscreen with one middle finger of each of two different hands; associate two fingers being next furthest apart on the touchscreen with one index finger of each of two different hands; associate two fingers being next furthest apart on the touchscreen with one thumb of each of two different hands; deriving a line equation in form y=mx+b between the two pinkies, with y being a y-coordinate of the touchscreen and x being an x-coordinate of the touchscreen; calculating a y-value corresponding to and using the line equation for an x-value of one of the thumbs; when the y-value of the one of the thumbs is greater than the calculated y-value, associating a pinkie having a lowest x-value with a left hand; dynamically update the virtual keyboard based on the detected first hand position of the user, the detected second hand position of the user, and the associations between fingers on the touchscreen and pinkies, ring fingers, middle fingers, index fingers, and thumbs;
present the updated virtual keyboard to the client device for display on the touchscreen of the client device. - View Dependent Claims (18)
-
-
19. A non-transitory computer-readable storage medium comprising instructions that, when executed by at least one processor of a machine, cause the machine to perform operations comprising:
-
detecting a first hand position on a touchscreen of an electronic device; detecting a second hand position on the touchscreen; detecting ten fingers on the touchscreen; associating two fingers being furthest apart on the touchscreen with one pinkie of each of two different hands; associating two fingers being next furthest apart on the touchscreen one ring finger of each of two different hands; associating two fingers being next furthest apart on the touchscreen with one middle finger of each of two different hands; associating two fingers being next furthest apart on the touchscreen with one index finger of each of two different hands; associating two fingers being next furthest apart on the touchscreen with one thumb of each of two different hands; deriving a line equation in form y=mx+b between the two pinkies, with y being a y-coordinate of the touchscreen and x being an x-coordinate of the touchscreen; calculating a y-value corresponding to and using the line equation for an x-value of one of the thumbs; when the y-value of the one of the thumbs is greater than the calculated y-value, associating a pinkie having a lowest x-value with a left hand; and presenting a virtual keyboard on the touchscreen based on the first hand position, the second hand position, and the associations between fingers on the touchscreen and pinkies, ring fingers, middle fingers, index fingers, and thumbs.
-
Specification