screenmanagment review :-)
Aike J Sommer
dev at aikesommer.name
Tue Sep 2 15:02:57 CEST 2008
Hi,
i have the feeling that my gsoc-project finally is in a state, in which it
could be made ready for trunk... So i wanna get a discussion started on what
still needs to be done or what should be changed! :-)
The current state is:
- there is a daemon (kephald) which will monitor xrandr events and change
configurations accordingly
- each set of connected monitors will be saved along with the last used
configuration for them
- if a known set of monitors is plugged in, that saved configuration will be
loaded and applied to the monitors (that includes position, size, rate,
rotation, reflection)
- if unknown monitors are plugged in a default configuration will be loaded
- theres a library (libkephal) which wraps kephald's d-bus api, which is split
in 3 parts:
1) screens: the individual areas available for apps, eg what plasma needs
for deciding where to put a desktop-containment
2) outputs: the actual outputs and its connected monitor, needed for
configuration of those
3) configurations: the configurations, these have a unique name and can be
used for context
- theres a dataengine, holding most of the available information from
libkephal, including jobs for actions like move, resize...
- theres a (very basic) applet for managment of screens, it allows for:
- moving of an output
- resizing of an output
- reverting or confirming the change
- its not really well tested yet and still lacks lots of possible settings
There is currently only support for xrandr 1.2, but xinerama support is
already started locally... If xrandr is not available it will just fall back
to using QDesktopWidget for screen-information, so it should still behave
kind of sane!! ;-)
My currently planned next steps would be:
- compile time checks for xrandr 1.2
- xinerama support
- maybe nv-control support
- work on the applet
- use as much of the applet as possible to create a kcm
What would be needed in plasma:
- make plasma listen to libkephal's signaling about screen-changes instead of
qdesktopwidget
- use the configuration-name for context
There's also a techbase page, where i put some more infos:
http://techbase.kde.org/Projects/Plasma/ScreenManagement
Now... Would be nice to get as much input as possible... :-)
One of my open questions would be: Should kephald be converted into a
kded-module?
And of course: What do or dont you like?
What did i forget?
What ideas do you have?
:-)
More information about the Plasma-devel
mailing list