81fcdb0ceef4a92b64c84e535bd852d9c5df67a2 (in kde-workspace) commented this
out while removing other uses of KNotification, but this one is actually
useful (especially if a app misbehaves) and certainly belong in ksmserver
and not elsewhere.
Summary:
Ksmerver now starts the logout greeter binary instead of creating
the KSMShutdownDlg. The complete interaction to logout is now performed
in an async, non-blocking way.
Test Plan: Successfully cancelled logout and performed logout and shutdown
Reviewers: #plasma
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D2257
According to Git / SVN history research, it was last used by KDE in
KDE 1. It seems like other toolkits also stopped using it 10-20 years
ago. It should have little to no practical relevance anymore.
I've found some documentation of legacy XSM session management from
1992, and the first copyright year of the XSMP spec (what we're
currently using) is 1993.
Also, XSM was removed from GNOME's gnome-session in 2005, rationale
and short discussion here:
https://mail.gnome.org/archives/desktop-devel-list/
2005-July/msg00527.html
with the following objections:
- Firefox doesn't support XSMP (long fixed)
- CDE on Solaris doesn't support XSMP (oh well...)
- Motif applications don't support XSMP
On kde-core-devel and kwin, nobody cared too much.
Consider XSM "accidentally" broken now ;)
https://marc.info/?l=kde-core-devel&m=144857647812257https://marc.info/?l=kde-core-devel&m=144976915400658
There is a utility called xsmproxy which comes from X.org.
It talks legacy XSM to clients and XSMP to an XSMP compliant
session manager and can therefore maybe hopefully make session
management of dinosaur applicatons sort of work.
It seems like that one received its last major modification
in 2003.
There is also some XSM related code in KWin that I will remove next.
This work around was ifdef'd with COMPILE_SCREEN_LOCKER but since
config-ksmserver.h was never included this code never got compiled.
Reviewed-By: Martin Gräßlin
With its current architecture, KNotification can cause crashes on logout
due to use of Q_GLOBAL_STATIC and threads and Phonon and cleanup by main
thread. So this replaces the KNotification-in-a-thread with Phonon
directly.
This is exactly what KNotification would do. This is for the time being
until the crash on logout is sorted out.
Additionally, this also fixes logout sound which was missing before.
This uses normal KNotification as at that point we don't need to be
threading or anything, so KNotification is just safe.
REVIEW: 123834
This reverts commit c2f4588431.
Apparently this can cause the login sequence to wait for PulseAudio and
can delay the startup quite considerably, so temporarily reverting.
REVIEW: 118636
CCBUG: 335948
Conflicts:
ksmserver/plasma_workspace.notifyrc
This is the beginning of revision history for this module. If you
want to look at revision history older than this, please refer to the
techbase wiki for how to use Git history grafting. At the time of
writing, this wiki is located here:
http://community.kde.org/Frameworks/GitOldHistory
If you have already performed the grafting and you don't see any
history beyond this commit, try running "git log" with the "--follow"
argument.
Branched from the monolithic repo kde-workspace, frameworks branch, at commit
049113e719dd2fc4446d054fa1a3aada330094f0