- add virtual keyboard. (not yet finish)