April 12, 2011
[@Plasma developers: Please find my short wish list for the Plasma tablet shell near the end of this article.]
My followers on Twitter already had the news yesterday: I’m a proud owner of a brand-new WeTab. WeTabs seem to be going out of stock at most shops, so one can get very good deals here in Germany. It has 32 GB of internal storage, a 16:9 HD display (1366×768, 12″), 3G, GPS, and an 1.6 GHz Atom processor.
Of course I wanted to put Plasma Active on it. The preinstalled WeTab OS is based on Meego 1.0 (and includes shell access for experts), but Plasma Active seems to require Meego 1.1. The simplest way to go for me was to install openSUSE 11.4. Here’s how I got it working:
- Some early WeTabs have their BIOS locked such that they cannot boot from USB. In this case, one must flash the BIOS. Since my WeTab is new, this step was not required here.
- The preinstalled bootloader does not have a menu and boots straight into the first hard disk partition (i.e. WeTab OS). I followed steps 4 through 8 from this installation guide from the Meego Wiki to put a custom bootloader inside the existing bootloader (as a chainloader). This custom bootloader allows to boot from a USB stick, as described in steps 10 and 11 of the Meego installation guide.
- On to actually booting the installation media: I chose the KDE4 Live Image of openSUSE 11.4, and followed the advise of this (as of now unfinished) German installation guide for Plasma Active on openSUSE 11.4 on WeTab. Especially, there are important hints in there about how to get the touchscreen working properly. It also has instructions for which repos to add and which packages to install to get Plasma Active.
- The touchscreen is not calibrated properly by default. I haven’t yet found a calibration tool, but the WeTab Wiki offers some help in their installation instructions for Ubuntu Maverick. Grep for “calibration” on that page, and save the file there on the openSUSE partition as “/etc/X11/xorg.conf/99-calibration.conf”. After a reboot, the touchscreen is calibrated fairly well.
- Of course, some adjustment in KDE System Settings is necessary. For example, I found a font size of 12pt to be just right to enlarge buttons etc. to a sensible size.
- If you installed besides WeTab OS as the openSUSE install guide suggested, you might want to boot into WeTab OS. To do so, edit the file extlinux/extlinux.conf on the sda1 partition (i.e. the WeTab OS’s boot partition), and move the line “menu default” from the “plop” chainloader entry to the WeTab OS entry. The WeTab can then be booted from openSUSE’s Grub by selecting the “Linux other” option with the soft button in the same way the selection worked in plop (tap = next entry, hold = select entry).
So, how well is Plasma Active working? Very well for a project that young! Here are the main problems I’ve found as of now (partly plus workarounds), in no particular order:
- The acceleration sensor is not recognized, so the screen is not rotated when I rotate the device. Screen rotation itself works, using the script from this wetab-community forum entry. (It’s basically xrandr -o, plus some calls to evdev to keep touchscreen and screen coordinates in sync.) To make it a bit more convenient, I created a directory with four scripts in them which invoke the above script with one of the four possible orientation arguments. Then I pointed a folderview applet to this directory, so I have screen rotation accessible my desktop.
- Plasma’s screen keyboard does not vanish automatically in some situations, and does not work at all for non-standard or non-Qt widgets. For example, it does not appear when I tab into Konsole.
- KScreenLocker does not know about the form factor, either: It wants me to enter my password, so I would have to carry a USB keyboard with me if I locked my screen or sent the tablet to sleep or hibernate. (Same problem with KDM. The openSUSE install guide recommends enabling autologin for this reason.)
- The Plasma shell seems to have some screen-locking functionality which is active when it comes up the first time after boot, but I haven’t yet found a way to lock the screen at my wish.
- The Plasma shell won’t react to any xrandr changes, esp. when I change the screen orientation.
- When I restart the plasma-tablet process by hand, the root window comes up with the right size, but the font size in applets is absurdly big. It seems that it calculates the font size from the screen height only, not taking into account the relatively small screen width on the then 9:16 display.
It may very well be that the packaged version which I installed is just much too old. Anyhow, here’s a short wishlist to the Plasma Active developers. These are my most urgent wishes:
- Please make KScreenLocker’s interface touchscreen-compatible, for example by using a PIN entry or, as a bare minimum, by giving it a screen keyboard.
- Please let the Plasma shell react to xrandr changes.
- Please include an alternative vertical applet layout for screens which are higher than they are wide.
- Please, as a temporary measure, add a button to toggle the virtual keyboard permanently, for situations where it does not yet come up automatically (like in Konsole).
And another thing that bugged me: The “Present Windows” effect feels very good for window switching, but it is a bit unnatural that the Plasma shell, i.e. the “desktop”, is another window in this interface. I would find it more intuitive if:
- the window overview showed only actual application windows
- the top-left button would not disappear in this overview
- clicking this button from the overview would bring up the desktop instead
The desktop is then accessed by pressing the top-left button twice. (Maemo 5 does something similar.) If there is only one active window, the window overview does not make sense, so the desktop might be displayed after the first click already.
These thoughts conclude the collection of my first impressions with Plasma’s new tablet shell. It may sound quite negative, but these are only small problems compared to how much works so great. I’m looking forward to these small problems being ironed out by an awesome team of developers. Or, to pun it another way (ha!): Gnome may, by their own claim, be “made of easy”, but KDE is made of awesome!