Ideal screen rotation

Dave Ball openmoko at
Sun Nov 8 04:14:54 CET 2009

Carsten Haitzler (The Rasterman) wrote:
> On Sun, 08 Nov 2009 02:03:47 +0000 Dave Ball <openmoko at> said:
>> Sounds like we should be using window properties for passing hints to 
>> the WM, and dbus for getting orientation information from the 
>> accelerometers.
> that is sane. :)
>> Maybe it's time for omnewrotate to retire, with the WM talking to FSO's 
>> orientation API [1] directly?
> perhaps. whatever the mechanism
> 1. the wm is the right place to make the decision.
> 2. the wm is in the best position to easily gather information about an
> application's window and know what window is active
> 3. the wm is already talking to the xserver as part of its job - and it's
> always hanging around
> 4. all the wm needs to know is "some external input has decded that the screne
> should be rotated". 

I think what you meant here is the WM decides whether the screen should 
be rotated or not - all the 'external input' provides to the WM is some 
hint that e.g. the _device_ has been rotated?  WM could decide to NOT 
rotate the screen, if the current app only works in one orientation.

> be this an accelerometer, or like the g1, opening up the
> screen, so be it. as long as
> 4.1 the current status of this rotation state can be queried at any time (you
> can ask what position the device is in or the screen is opened up or not etc.
> etc.)
> 4.2 you can get an event when this state changes really quickly (not have to
> wait a while).

Indeed.  I've not played with the fso orientation API, but it looks like 
that is exactly what it's designed to provide.  It seems sensible for 
this to be over dbus - given that it's an abstraction of hardware.

> if it were me... i'd even have the current desired rotation state be a property
> on the root window too... but at this point its moot - dbus or property. 

If the root window will only work in one orientation, specifying that 
orientation through a window property would be consistent - but ideally 
wouldn't we want the root window to be able to cope with being rotated 
to work in either orientation?  Or have i missed something special about 
the root window?


More information about the community mailing list