Onscreen keyboard review

Registered by Sebastien Bacher on 2012-10-26

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.