Onscreen keyboard review

Registered by Sebastien Bacher

Review of the onscreen keyboard options, their pros and their cons and what work will be needed for Ubuntu in the next cycles.

Blueprint information

Status:
Not started
Approver:
Didier Roche
Priority:
Medium
Drafter:
Sebastien Bacher
Direction:
Approved
Assignee:
Sebastien Bacher
Definition:
Approved
Series goal:
Accepted for raring
Implementation:
Not started
Milestone target:
milestone icon ubuntu-13.04-beta-1

Related branches

Sprints

Whiteboard

Options reviewed:

* onboard:
- really slow with the default theme, takes 5 minutes to start on the nexus7
- 10s instead of 5 minutes with the default theme
- no CJK support
- python: slow on arm
- not accelerated
- can't use "struts"? ... to investigate if we can
- python based easily themeable and hackable

* caribou-antler:
a bit buggy, run fine once the right packages are installed
performances are ok
use the current keyboard layout
has suggestions

* Maliit
- no debian package
- doesn't work with the nux/unity-dash
- has text prediction, error correction
- using qt
- is used by other projects and has funding/people commited to maintain it
- performances are good
- supports landscape and portrait layouts
- support non-latin keyboard, like CJK.
- lack of support for accesibility (only the architecture is there)

Notes:
relayouting is expensive, better solution would be to have support in the toolkit
we want the same keyboard on all images
text prediction is available through "presage" (available in ubuntu/debian), could help from translators to build dictionnaries for other languages

(?)

Work Items

Work items:
[laney] get maliit in the archive: DONE
investigate maliit support in nux: POSTPONED
[sil2100] investigate maliit support in nux: POSTPONED
tweak onboard settings to improve performances/experience (slow on arm) (fixed by upstream in the current snapshot in raring): DONE
[ogra] have a look to what it would take to add strut support to onboard and talk to desktop about that (upstream added "dock" support): DONE
[seb128] talk to the community team to get help for building dictionnaries for "presage" (text prediction database): POSTPONED

Dependency tree

* Blueprints in grey have been implemented.