Turning your MeeGo Lenovo S10-3t into a real slate

Recently Dublin got busy with the first ever MeeGo conference being organized for developers. For 3 days, geeks invaded the shiny (and overly expensive) Aviva stadium for talks, fun and code. It was also a cool opportunity to meet up with some esteemed Novell colleagues.

Among other goodness (hat off to the organizers for a truly top-notch event), Nokia and Intel in their great wisdom decided to hand out a free Lenovo S10-3t netbook/slate (pre)loaded with MeeGo to get our hand dirty with. I’ll probably discuss about MeeGo itself in another blog but for now I want to write here the couple of step I had to take to turn the Netbook edition into something suitable for the slate mode the Lenovo can adopt.

Basically by following this guide you will have: a working on-screen virtual keyboard and a tweaked Chromium understanding touch for scrolling.

The first step is to setup the keyboard. First of all, you have to enable the Handset repository to pull down some compatibility component (i.e. GTK+ immodule):

$ cd /etc/zypp/repos.d/
$ sudo -s
$ cp netbook.repo handset.repo
$ sed 's/netbook/handset/' -i handset.repo
$ zypper refresh # at this point you will probably have a security alert, ignore it
$ zypper install meegotouch-inputmethodbridges meegotouch-inputmethodkeyboard meegotouch-theme meegotouch-theme-meego libmeegotouch-qtstyle meegotouch-systemui

To avoid a weird parsing bug, comment out line 715 in /usr/share/themes/base/meegotouch/libmeegotouchcore/style/commonlayouts.css.

Then, open up the file /etc/xdg/autostart/meego-im-uiserver.desktop and change the Exec line to /usr/bin/meego-im-uiserver -target slate -bypass-wm-hint. Finally, append ;X-MEEGO-NB to the OnlyShowIn line (or remove it altogether), save, close up and restart your computer (all applications including MeeGo panel basically need to be relaunched to load up the new input engine so it’s the most straightforward way).

If everything went well (if not check that the process is alive and not choking), you should have a fair sized keyboard appearing at the bottom of the screen when a text field gets the focus.

Some comments here. The enter key on this keyboard is hidden behind the two modifier keys (bottom-left) and is only a n appender (read, it won’t fire any activated event). Thus when you need to validate something you have to either use your real Enter key or find a way around (« clicking » chrome first completion for an address, tweet/publish buttons, …). To make the keyboard go away (because it doesn’t resize any part of the UI it’s hiding) you have to use a ninja swipe to the bottom that precisely start at the top of the keyboard without touching a key (I did prepended ninja there).

On the web browser side (who use a slate for something else?), there is an extension that provide the scrolling gesture Android & IPhone user will be familiar with. To get websites to take you as a slate you can resort to the good old user-agent trick and make yourself look like an iPad though, as far as I tried using it, special interface such as GMail one doesn’t work.

To get back the MeeGo panel on the top when you don’t have access to the Windows key, a really high touch-click on the screen will still get it to slide down for you.

EDIT: on the matter of having the keyboard hiding the UI beneath it, if you don’t use the keyboard in software mode (that is, no -software switch in your .desktop), you can make most of the keyboard transparent by opening /usr/share/themes/base/meegotouch/svg/meegotouch-keyboard.svg and adding an opacity value in the style attribute of the svg root node, something like (extra attributes stripped for readability):

<svg version="1.1"
  id="meegotouch-keyboard-layer"
  viewBox="0 0 500 480"
  style="enable-background:new 0 0 500 480; opacity:0.4"
  xml:space="preserve">

EDIT2: I updated the zypper install line with package that I thought were pulled down automatically but apparently weren’t.

If everything goes well you should get that result:

Comments 12

  1. Uwe Kaminski wrote:

    Thanks for this. I’ll try it out. Do you know if this works also with fennec? Fennec itself works geat on the Lenovo but does not include a virtual keyboard. It also does not allow switching to other applications yet but double tap zooming is awesome!

    Posted 19 nov 2010 at 10 h 30 min
  2. Jérémie Laval wrote:

    well, frankly fennec is not yet ready for prime time here. Very crashy and lots of rendering issues (I guess it’s too optimized for handset).

    Posted 20 nov 2010 at 2 h 25 min
  3. Martin Grimme wrote:

    I suggest using Opera Mobile on the Lenovo. It’s available from portablelinuxapps.org and works very well on a touch screen.
    You have to ‘modprobe fuse’ as root before being able to run apps from portablelinuxapps.org, however.

    Posted 20 nov 2010 at 12 h 16 min
  4. Sujay wrote:

    I went till the point of editing the Commonlayout.css

    I am not able to edit this file….

    Pls help how to do it.

    Posted 20 nov 2010 at 13 h 48 min
  5. Andrew Flegg wrote:

    X-MEEGO-NB needs adding to the OnlyShowIn line in the .desktop too (as per http://wiki.meego.com/Input_Method_Framework/MeeGo_1.1#Netbook)

    Is it just me, though, or does the VKB not come up in Chromium for password fields?

    Posted 20 nov 2010 at 23 h 42 min
  6. Jérémie Laval wrote:

    Try the updated zypper line

    Posted 20 nov 2010 at 23 h 47 min
  7. Jérémie Laval wrote:

    No it’s not you, I reckon the bug is either the bridge not taking the password type into account or Chromium not stressing it’s also a text input field

    Posted 20 nov 2010 at 23 h 49 min
  8. gorkon wrote:

    Is there a way to temporarily disable it??

    What I may try and find is a Chrome/Chromium extension that adds a keyboard. There’s a couple that do.

    This one has an annoying habit of popping up when I don’t want it to.

    Posted 02 jan 2011 at 20 h 20 min
  9. Jose Nunez wrote:

    I have installed MEEGO in my Lenovo S10-3T. I love it.

    As some have suggested MEEGO may not be ready for prime time, but is quite close.

    Thanks guys for publishing this guide for the virtual keyboard.

    Making it transparent is really useful!

    –jn

    Posted 28 fév 2011 at 21 h 48 min
  10. Alan Horkan wrote:

    If you only want to make the background transparent without also changing the opacity of the buttons too then you need only edit:

    and change the rectangle style

    and if you want to change more Michael Hasselmann has further patches that would require a recompile:
    http://taschenorakel.de/michael/2011/03/26/updated-meego-input-methods-packages/#last_comment

    Posted 03 avr 2011 at 21 h 19 min
  11. Alan Horkan wrote:

    Doh, the svg was removed from my previous post.

    If you want to change the opacity of the whole keyboard you can just change the style information that comes directly after the main viewBox (as explained above).

    If you just want to change the keys, then you need to change the style information of the rectangle that comes just after the group with the id « meegotouch-keyboard-background ».

    A combination of both gave me results I was happy with.

    Posted 17 avr 2011 at 18 h 44 min
  12. Kuladeep wrote:

    Hi.. can any one tell me how to build the meego source rpms and install the image on lenovo s10-3t. please i am new to meego.. not getting any support.. please suggest me how i can make it work.. thanks in advance..

    Posted 20 avr 2011 at 8 h 39 min

Trackbacks & Pingbacks 3

  1. From Turning your MeeGo Lenovo S10-3t into a real slate on 19 nov 2010 at 0 h 53 min

    [...] follow this Link for the blow by blow instructions and also let us know how you get [...]

  2. From Turning your MeeGo Lenovo S10-3t into a real slate | GyratoryTech - Update Latest Technology on 19 nov 2010 at 6 h 49 min

    [...] follow this Link for the blow by blow instructions and also let us know how you get [...]

  3. From Linux Tablet – Lenovo S10-3t » Blog Archive » Transform you Lenovo s10-3t into a MeeGo Slate on 07 jan 2011 at 6 h 58 min

    [...] can do this the easy way or the lazy way.  For the easy way follow the instructions here or for the lazy way follow the instructions [...]

Post a Comment

Your email is never published nor shared. Required fields are marked *