Ich hab mir vor ein paar Wochen ein Nokia N900 mit der Debian basierten Distribution Maemo zugelegt. Für die täglichen Fahrten nach Heidelberg wollte ich ein Smartphone mit Internetzugang haben. Die Auswahl ist dabei ja etwas eingeschränkt zugespitzt zwischen iPhone, Symbian-basierten Handys, Android und Maemo. Außer Maemo sind eigentlich alle Handybetriebssysteme mehr oder weniger geschlossen. Da ich natürlich mehr Interesse an einem System habe als nur die Nutzung als Internetbrowser musste ich nicht lange überlegen welches Handy ich mir zulege 😉
Mein langfristiges Ziel ist es die KDE Bemühungen für Plasma Mobile zu unterstützen und KWin auf dem Gerät zum Laufen zu bringen. Bisher habe ich mich damit noch nicht beschäftigt, da ich erst den in 10 Tagen anstehenden Feature Freeze für KDE SC 4.5 abwarten will. Natürlich habe ich mir schon Gedanken dazu gemacht und werde wahrscheinlich auch auf der diesjährigen Akademy einen Vortrag zum Thema halten.
Bei der Nutzung des Systems beobachte ich sehr genau den Fenstermanager und kann daraus schon folgern, dass von der Benutzung her KWin problemlos für ein Handy geeignet ist. Im Vergleich zum Vorgängermodell ist der Fenstermanager nun ein Composited Fenstermanager und das kommt der Benutzung sehr entgegen. Das Wechseln zwischen Anwendungen ist dabei identisch zur KDE Plasma Netbook Shell umgesetzt: über eine Schaltfläche aktiviert man einen "Present Windows" Effekt. Was mir bei diesem sehr gut gefällt ist die Möglichkeit Fenster direkt über eine Schaltfläche zu schließen (das findet man nun auch im 4.5 Featureplan, aber ich denke mir wird die Zeit nicht reichen). Was ich etwas schwach finde ist die Anordnung der Fenster: bei nur ein oder zwei Fenstern werden die meiner Meinung nach zu klein dargestellt.
Sehr schön umgesetzt sind auch modale Dialogfenster. Maemo hat hier eine spezielle Art von "Dim Inactive". Das Elternfenster wird nicht nur abgedunkelt sondern auch geblurrt wodurch man gar nicht erst in Versuchung kommt mit dem Elternfenster zu interagieren. Geschlossen wird ein Dialogfenster indem man neben den Bereich klickt, also in Fenstermanagertalk: indem es den Fokus verliert. Ich muss sagen, dass ich das sehr klever und intuitiv finde und in KWin auch sehr leicht umsetzen lassen würde.
Der Blur bei Dialogfenstern ist nicht so schön, wie z.B. der von KWin in 4.5. Für mich sieht es nach einem Mipmap-based blur aus – verständlich. Eine andere Mipmap anzusprechen ist die einfachste und sparsamste Variante. Gerade auch da der Vordergrund und nicht der Hintergrund geblurt wird und man den Inhalt ja nicht mehr erkennen soll. Diese Technik wird z.B. in KWin 4.3 beim Logout verwendet und auch teilweise im 4.4 Logout Blur. Auch solch eine Ergänzung wäre in KWin einfach umzusetzen und wäre vllt. sogar für den Desktopbereich interessant.
Andere typische Bereiche eines Fenstermanagers fehlen komplett oder sind als solche nicht erkennbar. So werden alle Fenster maximiert oder im Vollbildmodus dargestellt, womit der Bedarf an Fensterdekorationen überflüssig ist. Die Dialogfenster scheinen mir jedoch eine Dekoration zu haben, kann aber auch im GTK Stil umgesetzt zu sein. Die Schließen-Schaltfläche für das aktuelle Fenster befindet sich wie auch in der KDE Plasma Netbook Shell im Panel – ob es zum Fenstermanager oder zum Desktop gehört ist natürlich ohne in den Quellcode zu schauen nicht beantworten.
Focus-stealing-prevention scheint nicht zu existieren, zumindest ist mir in der Benutzung aufgefallen, dass der Fokus gestohlen wird. Ob das nun auf einem Handy erwünscht ist oder nicht, ist schwer zu sagen. Demands Attention finde ich sehr gelungen umgesetzt: die Schaltfläche zum Starten von Present Windows leuchtet auf und das Fenster wird dann hervorgehoben dargestellt, Benachrichtigungen werden über das Fenster gesetzt. Dies ist beim Empfangen von Emails oder IM Nachrichten sehr praktisch.
Was mich auch immer wieder freut zu sehen, ist dass alle nur mit Wasser kochen. Auch der Fenstermanager von Maemo hat mit dem Klassiker "Vorschaubilder minimierter Fenster" zu kämpfen. Nicht aktive Fenster werden in Present Windows nicht aktualisiert. Angesichts der kleinen Thumbnails ist das nun nicht weiter schlimm, zeigt mir aber, dass nicht aktive Fenster "minimiert" werden. Bisher habe ich aber noch nicht gesehen, dass die Thumbnails komplett verloren gehen, wie ich es von KWin kenne. Muss ich mal noch genauer beobachten.
Nun habe ich glaube ich lange genug über den Fenstermanager gerendet und wende mich mal anderen Bereichen zu. Als Browser kommt der als "Internet" gebrandete Mozilla Firefox zum Einsatz. Das Branding als Internet führt zu amüsanten Fehlermeldungen wenn er abstürzt und der Fenstermanager das Beenden anbietet 😉 Auch wenn ich eigentlich kein großer Fan von Firefox bin, finde ich die mobile Umsetzung bis auf wenige Ausnahmen sehr gelungen. Ein Problem liegt hauptsächlich in der fehlenden Fingerfertigkeit von Webseiten. Werden normale Dropdownlisten oder Eingabefelder in Maemo durch fingerfreundliche Varianten ersetzt, so ist das bei einem Browser einfach nicht möglich. Eingabefelder sind in der Regel nicht nativ (meines Wissens nach unterstützt nur KHTML native Widgets, Apple hat dieses Feature in Webkit leider rausgeschmissen). Was zum Beispiel sehr angenehm am Browser ist, ist die Möglichkeit wichtige Erweiterungen direkt über die Paketquellen zu installieren: welches Handy bietet denn AdBlock Plus im App-Browser an?
Das EMail Programm ist zum Lesen ausreichend, zum Mail senden jedoch eher ungeeignet, da ich bisher noch keine Möglichkeit gefunden habe die Absenderadresse zu verändern. Da ich z.B. für Mailinglisten andere Adressen verwende, ist das ein must-have feature. Leider hab ich auch noch keine Möglichkeit gefunden Ordner in der Übersicht auszublenden – bei mehr als 100 Mailordnern ist das auch nicht gerade nützlich. Mailthreading ist auch nicht unterstützt, was das Lesen von Mailinglisten erschwert.
Das Kartenprogramm hat sich leider als unbrauchbar herausgestellt. Die Karten sind zwar gut und sehr genau, jedoch fehlt eine geeignete Navigationsunterstützung. Das Programm kann Routen berechnen, die Position anzeigen aber nicht die Verfolgung und Ansagung von Abzweigungen. Somit leider nicht tauglich und ich muss wohl auf Marble2Go warten 😉 Da ich vorerst mich nicht motorisieren will, ist das jetzt kein großer Nachteil.
Das größte Highlight für einen jahrelangen Nutzer von Debian basierten Betriebssystemen ist natürlich die Paketverwaltung. Neben dem eigentlichen Paketmanager kommt Maemo mit standardmäßig installiertem XTerm worüber man ein schönet sudo apt-get update && sudo apt-get upgrade machen kann 😉 Root-Passwort kann man übrigens durch die Installation von openssh-server setzen. Wusste ich noch vom Maemo Vortrag auf der Akademy 2008 – war das erste was gesagt wurde: installiert ssh für das Root Passwort.
Nun ich freue mich schon darauf mit dem System zu entwickeln. KWin darauf zum Laufen zu bringen ist auf jeden Fall eine Herausforderung und wäre ein sehr schönes GSoC Projekt gewesen, leider hat sich jedoch kein Student dafür beworben. Durch meinen experimentellen OpenGL 3 branch, hab ich schon einiges an Vorarbeit geleistet (viele ifdefs um von OpenGL ES nicht unterstützten Code zu entfernen). Dies ist ein guter Startpunkt und muss nach und nach integriert werden. Ich denke mal, dass es mich den 4.6 Release Zyklus beschäftigen wird. Da ich mit Aurorae in 4.5 fast alle Ideen umgesetzt habe, ist das auch ganz praktisch wieder ein neues Aufgabenfeld zu haben 😉
=-=-=-=-=
Powered by Blogilo