UI ideas/questions or can we animate things as smooth as iPhone?

Knight Walker moko at kobran.org
Thu Jun 7 20:19:35 CEST 2007

On Thu, 2007-06-07 at 01:23 +0200, Michael 'Mickey' Lauer wrote:
> ... GameBoy provided nice full-screen animations
> > in 1989, eighteen years ago.

This is nothing like the GameBoy, or the C64, or the Amiga. The GB was a
single-tasking system that would always only be doing one thing at a
time.  The C64 was as well.  The Amiga had no memory protection so one 
errant program could bring down the whole OS.  No one would go for that
now.  A Neo or any OpenMoKo phone will have to coordinate a lot of
programs and several windows at a time; programs that may have come from
repos that aren't as tight on the QA as others, so the OS (and the 
windowing system) has to be able to protect itself.

> I'm 100% sure nobody will cry after pure-X11 applications we loose
> > this way. Almost every GTK application would require rewriting/porting
> > to fit OpenMoko capabilities, so it's not great loss too. Not to
> > mention font and other DPI-aware issues.

And you'd be 100% wrong in at least a few occasions.  X11 applications
aren't just for running desktop apps on the Moko.  They can also be for
running Moko apps on the desktop.

I mean, personally, if I'm home and I want to look up a phone number
while I'm sitting at my computer, I don't necessarily want to drag the
phone out of my pocket, unlock the screen, then bring up the contacts
screen and search for my target when I can just:

ssh -CY mymoko
mymoko> contacts

And it comes up on my 22" LCD, where I can cut and paste from an e-mail
or whatever and have it instantly on my phone.  No file copying or data
replication required.

Yes, I know I could just sync that stuff across, but for anything that
doesn't have syncing built in, it would be really nice for me to be able
to just bring up the app and interact with it without dragging the phone
out of my pocket or my coat in another room.  There were so many times
my Zaurus was on the charger, with the CF Wifi card in it and I would
have loved to bring up one of the Z apps but couldn't.

Now, I realize I'm in the minority of this minority, but I run X11 apps
across the network ALL THE TIME.  I even installed X11 on my Mac so I
could do it there too.

As for porting, there are lots of programs I would like to see on the
Moko and most of them are GTK-based already (For one, I'd like to see
Gobby on a Moko for collaborative note taking during meetings).

It would also be interesting to be able to run apps from one MoKo and
control them on another MoKo across a Bluetooth or Wifi network (With
appropriate security precautions, of course).

> Interesting. Can I hear more supportive or counter arguments?
> What do the others think?

First, I get a sad little chill when people think that dropping X11 will
solve all their speed problems, with absolutely no knowledge of X11's
origins and progress over the last several decades.  Yeah it's another
layer of indirection, but over the years X.org (formerly XFree86) has
implemented various methods for speeding up the rendering path that
require no changes in the application code.  DRI is one of them, MIT-SHM
is another.  It's gotten to the point where running a "pure-X11
application" is waiting on me, not the other way around. And this is on
old hardware (Pentium 3 450) across the Internet.

Dropping X11 means that we need to find something to replace it, and
that something (DirectFB or whatever) will need to implement enough
functionality that we're not stuck when some buggy app goes out and
locks up the GUI because it's holding a token (or equivalent) and
everything else is deadlocked (Which I saw entirely too often on my
Zaurus).  In addition, this "lightweight" replacement needs to be
faster as well as at least as robust and documented.

What I'm curious about is if the GUI has received any love or even
attention at this point.  The Core Team has repeatedly stated that
they're working at the lower levels of the OS (Kernel, modules, drivers,
daemons, etc), which makes me think the GUI stack hasn't been run
through any profiling or debugging.  Hell, it could still have all
debugging symbols turned on, which won't be the case in the finished

Also, the fact that the GTA_01 doesn't have any graphical acceleration
will also make the GUI run slowly compared to what people are used to.
Even the most bargain basement PC has a 2D accelerator in it.  In fact,
I haven't seen any that don't have a 3D accelerator in them anymore.
For a PDA with a 320x240 screen, pushing pixels is 1/4 as hard as on a
real VGA screen.  Yeah, we pay a price for the glorious screen on the
Neo, but from what we've all been hearing about the GTA_02, that will
hopefully not be a problem.

Yeah, I like X11 and I like GTK.  I like their functionality, their 
maturity, and their licenses.


More information about the community mailing list