Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
KeyboardX is a multi-purpose on-screen keyboard. It was designed with the needs of handicapped persons in mind. Due to its flexibility it can be used for several tasks though.
As already mentioned, KeyboardX is an on-screen keyboard. Keyboards are files that could be easily exchanged between users. The player application is able to open those keyboard files and serve them to the user.
A keyboard can consist of several grids (at least one). A grid is basically a rectangular matrix of buttons. Only one grid is shown by the player at a time, but there can be switched between grids of a keyboard. All the settings concerning grids, like background color etc., can be set on a per grid basis.
A button is a part of a grid. A button can be compared to a key on a physical keyboard. Buttons can have icons, text, background color, border, etc. and actions. An action is "something that happens", this could be simulating a keystroke for the operating system, playing some sound, or send something over a TCP connection. When a button is virtually "pressed" all its actions are run.
KeyboardX is just in its beginnings. It was started as a master project, targeting a very flexible structure. It brings immense possibilities, but to really help people, future work is needed. Proposals are: