libs/kworkspace/kdisplaymanager.cpp mess

Oswald Buddenhagen ossi at kde.org
Mon Apr 29 08:17:15 BST 2013


On Thu, Apr 25, 2013 at 03:11:25PM +0200, Martin Bříza wrote:
> after fixing a bit in the $subj file I've realized it (in my opinion) should
> be split into one abstract class with a factory handling the back-ends
> provided by the current session managers such as ConsoleKit and
> systemd-logind while providing one module for the legacy DMs with their
> socket communication protocols.
> 
> To provide reasons why to do it:
>  - The current state is nearly unmaintainable
>
that tiny file? you have a low threshold. ;)

> and having all three (for now) ways of session handling in one file
> doesn't feel very clean.
>
it was the best at the time of creation due to the amount of shared
code (the old gdm and kdm socket code was identical except for the
string literals and a few conditionals). the ck code was tacked on later.
at this point the old gdm code can be probably purged, making the kdm
code independent. you should do that in a separate first commit.
the ck and systemd paths may share some code, though. maybe add a
DBusUtils class.

> I would leave creating the CK module to somebody who is experienced with how
> exactly the whole system works and knows if it is safe.
>
good luck with that. i'll do reviews, not a bit more.
note that partial works (be it regressions or just a highly asymmetrical
code structure) will not be accepted. if you don't find somebody to do
the refactoring for you, you need to take the route of minimal
modification.





More information about the kde-core-devel mailing list