Openmoko keyboard mockup

Carsten Haitzler (The Rasterman) raster at rasterman.com
Wed Jan 7 00:31:12 CET 2009


On Tue, 06 Jan 2009 15:14:56 +0100 Mathieu Rochette <mathroc at gmail.com> babbled:

> Laszlo KREKACS wrote:
> > Hi!
> >
> >>> First and foremost, it is us
> >>> hackers that use this device for now and are supposed to make apps for
> >>> freerunner and all, and we don't have a damn keyboard;). All this
> >>> fancy pancy dictionary based guessing is maybe good for normal people
> >>> writing crappy SMS messages, but not for the current user base, in my
> >>> opinion.
> >> you do - Terminal.kbd layout - it ships with illume. i designed the kbd
> >> engine in illume to allow for straight-through pushing of key presses
> >> without a dict int he way. the Terminal.kbd bypasses dict lookup by just
> >> emitting keysyms as opposed to strings. don't like the keys on that .kbd?
> >> edit the .kbd file. change it yourself! its just text!
> >
> > Im planning to develop an application, where is a table, and in each column
> > I want different keyboard layout with different dictionary.
> >
> > Is it possible to change layout and dictionary on the fly? (ie.
> > entering in another text input field).
> >
> > The application would be something, in the first column is only
> > numbers, so I want a keyboard
> > with [0..9-.] buttons, and accept only numbers. In the second column I
> > want to write down what I see (microwave, lamp, soldering iron, etc)
> > and in the third column I want to write the trademark of it (sony,
> > samsung, philips, weller, etc) so I want to change the keyboard
> > between
> > numeric and qwerty, and I want to change the dictionary as of input text
> > field.
> >
> > Is it doable? If so where to start? I know python, and would be glad
> > to see some debian/ubuntu guide how to start programming in efl. (or
> > is it a complete development virtualbox/qemu image? it was discussions
> > about some time ago).
> 
> this is be doable. keyboard application can receive message for client,
> message type is ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_STATE
> and message data is one of:
>   - ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_OFF
>   - ECORE_X_VIRTUAL_KEYBOARD_STATE_ON
>   - ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_ALPHA
>   - ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_NUMERIC
>   - ECORE_X_VIRTUAL_KEYBOARD_STATE_PIN
>   - ECORE_X_VIRTUAL_KEYBOARD_STATE_PHONE_NUMBER
>   - ECORE_X_VIRTUAL_KEYBOARD_STATE_HEX
>   - ECORE_X_VIRTUAL_KEYBOARD_STATE_TERMINAL
>   - ECORE_X_VIRTUAL_KEYBOARD_STATE_PASSWORD
> 
> (I don't know where this list came from, is there some specification or 
> recommendation for virtual keyboard application implementation?)

well ecore_x has a small wrapper for this stuff - but its basically simple x
properties and atoms - i just came up with a list of types of input fields i
could think of and put them in the list. this can be expanded without problems.

> so, the application just have to send one of those messages when 
> entering a field or another.

it's actually a property on the window - but yes. just asking for a "kind of
keyboard" is what the app can do - then the keyboard need to do whatever it
sees fit to honor that request. you cant explicitly select a dictionary though.

-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler)    raster at rasterman.com





More information about the community mailing list