Review Request: Use D-Bus to lock sessions and move "session locked" dialog (from KDevelop's main()) to kdevplatform
Ivan Shapovalov
intelfx100 at gmail.com
Wed Sep 5 09:02:52 UTC 2012
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/105917/
-----------------------------------------------------------
(Updated Sept. 5, 2012, 9:02 a.m.)
Review request for KDevelop.
Changes
-------
Updated from Milian's comments.
- Using both lockfiles and D-Bus services
- Dropped locking-related scriptable functions from SessionController at all
Also I've restructured functions for retrieving session directories and their lock-file paths (thus new functions in SessionControllerPrivate).
Note: lockfiles are purely secondary (used to get pid/appname/hostname), so if a D-Bus name is accessible and the lock-file is not, then the latter is QFile::remove()d and re-taken.
Description
-------
1: Use D-Bus instead of lock-files to lock kdevplatform sessions.
2: Moved the lockfile remove dialog which currently resides in KDevelop's main() - and which is usable only when the session name is explicitly given to the application - to kdevplatform's SessionController, adjusting the dialog for "lockfile -> dbus" changes.
This allows to get rid of nasty non-informative error messages about a session being already used and replace them with code that does the following things:
1) Attempts a DBus call to make a running instance visible;
2) If it didn't succeed, shows a dialog window asking permission to retry, show session chooser dialog or quit;
3) Repeats the entire procedure if a newly-picked session is locked too.
This code is also used when one picks a session from "Sessions" menu, so a nasty error message has also been removed also from there.
Related change to KDevelop is here: https://git.reviewboard.kde.org/r/105918/ .
Diffs (updated)
-----
shell/core.cpp 206d48d
shell/sessioncontroller.h 551894d
shell/sessioncontroller.cpp c9fac67
Diff: http://git.reviewboard.kde.org/r/105917/diff/
Testing
-------
Existing unit-tests + manual UI testing.
Thanks,
Ivan Shapovalov
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20120905/daaf5780/attachment.html>
More information about the KDevelop-devel
mailing list