on-screen keyboard for touch devices

Registered by Arne Goetje

For touch devices, we need an on-screen keyboard solution which communicates with XKB and IBus to switch keyboard layouts on demand and delivers the right keycodes.

Blueprint information

Status:
Not started
Approver:
Sebastien Bacher
Priority:
Undefined
Drafter:
None
Direction:
Needs approval
Assignee:
None
Definition:
Drafting
Series goal:
None
Implementation:
Not started
Milestone target:
None

Related branches

Sprints

Whiteboard

= touch onscreen keyboard requirements =

none of the existing ones fits our purpose, so create one from scratch
(also see: https://blueprints.edge.launchpad.net/ubuntu/+spec/desktop-maverick-touch )

needs someone to implement this, preferred programming lanuage: C ?

 * needs to be tied with keyboard indicator to change layouts on demand (https://wiki.ubuntu.com/KeyboardMenu)
 * needs to work with IBus to change layout whenever a different IME is chosen
 * get layouts from XKB
 * for IMEs we need to produce layouts by ourself
 * store the layouts in the ibus packages (modules)
 * add function keys, like arrow keys, etc. (configurable)
 * detach layout from the actual keys submitted to IBus (i.e. display Bopomofo, but submit Latin characters from US English layout)
 * use python-virtkey for emulating modifier keys.
 * use SVGs for the keys being displayed

 * accessibility
  * when user moves his finger over the key, use text-to-speech to tell the user which letter is under his finger
   * needs text-to-speech framework [luke]
   * needs hints for the text-to-speech synthesizer to tell the user which letter he is dealing with
   * use espeak?

(?)

Work Items