Ideal screen rotation
neiljerram at googlemail.com
Fri Nov 6 21:24:13 CET 2009
2009/11/6 Rui Miguel Silva Seabra <rms at 1407.org>:
> On Fri, Nov 06, 2009 at 04:40:04PM +0100, Helge Hafting wrote:
>> Well, you cannot expect every app to have such preferences, this device
>> runs generic linux apps that aren't made specially for the freerunner.
>> Now, of course the app loader can do this, similiar to how we already
>> request the cpu/backlight when launching some apps.
>> But there is a problem. The user may switch between several apps with
>> different rotation needs. (xmahjongg needs landscape, tetris needs
>> portrait, ...) How will omnewrotate be notified about this?
> The proper way is to define a set of DBUS signals.
Thanks to everyone for your replies on this topic.
I agree with Helge, in that I don't think DBUS is a good solution,
because I really want a solution that works for existing apps.
I suppose for existing apps there could be a DBUS proxy that somehow
works out the best orientation and then sends a DBUS signal on the
app's behalf. But that seems complicated.
Also I'm not sure why DBUS helps at all. Once a program somewhere has
worked out the best orientation, why not just call xrandr directly?
Another thought that occurred to me is that if this was a window
manager responsibility, perhaps the window manager could infer
preferred orientation simply from the requested window size? (i.e.
requesting width > height implies a preference for landscape).
That should often work for apps that were designed for the desktop. I
would guess that apps written for the FR might not request specific
sizes, because they'd know that they will always be fullscreen anyway
- so for those apps some explicit configuration would be needed
somewhere (prefer-portrait, prefer-landscape, or auto-rotate).
More information about the community