https://bugs.kde.org/show_bug.cgi?id=354724

Alexey Chernov <4er...@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |4er...@gmail.com

--- Comment #21 from Alexey Chernov <4er...@gmail.com> ---
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 are receiving this mail because:
You are watching all bug changes.

Reply via email to