[Bug 1446865]

Alexey Chernov 1446865 at bugs.launchpad.net
Sat Jan 23 16:43:33 UTC 2016


I'm actually aware of the problem with session management since last
summer, now I've upgraded my stuff to have more KF5-based applications
and suprisingly found it still just doesn't work. So I've dived deeper
into it this time, reading all the discussion here and last part of bug
#341930, both Andreas's change proposals and the thread in the mailing-
list.

I likely agree with comment #18 of Andreas and in my point of view it is
the following:

1. As a whole it's a massive regression since KDE4 which affects all Qt5
applications, most of which behave correctly as a session clients. Even
server parts of both KWin and KSMServer now behave correctly, thanks to
Thomas's fixes, I think. But as a whole it just doesn't work at all.

2. This problem is caused by some bug in processing session management
messages in Qt, which earlier wasn't a big pain and could be avoided,
but due to significant changes in the whole interaction process, in the
API etc. now it can't be avoided and lead to (1).

3. There's initial change (https://codereview.qt-
project.org/#/c/142232/) by Andreas, which perfectly fixes the problem
with any observable problems. It also fixes a fault in the session
management protocol implementation for at least two OSs, which is good
for Qt itself.

4. There could be potentially affected client applications which: a)
were already been ported to/written for Qt5; b) process some valuable
data which shouldn't be lost; c) would like to use session management to
prevent loss of unsaved data; d) still don't care to follow session
management protocol correctly and just exploit old hacks and errors in
its implementation, which exist historically, but now is moved to a new
place. Unfortunately, this term is a little objectless since it wasn't
mentioned any real-life application like this.

5. I completely don't like the proposed way to preserve the
compatibility with (4) and make the use case of broken session
management client implementation legal and default, but also try to
allow proper-written apps to still survive somehow, adding some strange
workarounds to Qt as closing all the windows, but not too much, or API
properties to enable proper processing of SM messages.

To sum it all up, I've applied the patch (3) and have all the session
management things back again without any other changes to KDE or
whatever, it's already released versions (KF-5.18.0, Plasma-5.5.3,
applications-15.12.1). I'll also test Windows behaviour with some toy
application. Unless any problems arise, I see no reason why this tiny
and simple (and right) fix isn't applied and merged.

-- 
You received this bug notification because you are a member of Kubuntu
Bugs, which is subscribed to plasma-workspace in Ubuntu.
https://bugs.launchpad.net/bugs/1446865

Title:
  KDE5/Qt5 does not support session restoration

To manage notifications about this bug go to:
https://bugs.launchpad.net/kdebase-workspace/+bug/1446865/+subscriptions




More information about the kubuntu-bugs mailing list