Patent ID: 8648809

Claim:
A method for configuring a virtual keyboard projected on a display surface, comprising: displaying an original virtual keyboard layout on the display surface; receiving a touch input on the display surface within the original virtual keyboard layout, the touch input representing a keystroke; determining at least one coordinate value mapped to a delimited area of an original virtual keyboard, the at least one coordinate value corresponding to the touch input by a user on the display surface, and the delimited area of the original virtual keyboard representing a virtual key; comparing the at least one coordinate value to at least one historical coordinate value previously obtained for the delimited area; adjusting at least one of a location of and the delimited area of the virtual keyboard as projected on the display surface to minimize a change between the at least one coordinate value and the at least one historical coordinate value by modifying the location of or the delimited area of the virtual keyboard one pixel in response to receipt of the keystroke to thereby display an adjusted virtual keyboard layout; receiving an additional touch input on the display surface within the adjusted virtual keyboard layout, the touch input representing an additional keystroke; repeating the steps of determining, comparing and adjusting for the additional touch input; and modifying the location of or the delimited area of the virtual keyboard another pixel in response to receipt of the additional keystroke to thereby display an updated adjusted virtual keyboard layout.