Hi,

As I begun using my new tablet, I became more and more frustrated with the on 
screen keyboards currently available. The main issue is that keyboard “floats” 
on the screen, and typically bounces around the screen depending where you’re 
writing (unless you actually fix it to the screen, which IMHO sucks even more).

This is something that Apple, Android, Nokia et al really do way better – the 
existing Linux solutions are just conceptual copies of similarly poor Windows 
solutions.

One of the things I like in the iPad is that the keyboard pops always up from 
the bottom to the same full-width place – this enables you to lay your hands on 
the table and type. Good luck trying that on a “floating” keyboard. So, I 
thought I had to come up with something, at least in my opinion, better.

In short, this is what I did:

- I modified Onboard so that it always keeps at bottom at the same place, as 
wide as possible.
- Auto-hide works as originally, utilizing at-spi
- If editable field would be behind keyboard, we signal Compiz to move that 
window up so we can see what we edit.
- After editing – or moving to different field, we restore previous window 
positions

Here is a video file on how it works:

http://users.tkk.fi/u/hsundeli/onboard_compiz.webm

(framerate really sucks, but thats all the tablet can give.. key point here is 
that I’m not moving any windows, just changing the focus.)

Technically, Onboard sends dbus messages to Compiz’s dbus & put plugins. 
Onboard stores state for what has been moved.

I guess this solution is bit more “integrated” that what Linux community is 
used to, but that is how it has to be if a better user experience is to be 
desired. I have no idea if this is even possible in say Unity 2D.

Code-wise I’m pondering what to do next – depends on what people think. Either 
make this a Onboard fork or merge to Onboard capabilities if there is 
sufficient interest..

Cheers,
//HS




-- 
Mailing list: https://launchpad.net/~ubuntu-tablet
Post to     : ubuntu-tablet@lists.launchpad.net
Unsubscribe : https://launchpad.net/~ubuntu-tablet
More help   : https://help.launchpad.net/ListHelp

Reply via email to