Handle ShutdowntypeDefault in KSMserver legacy code

Summary:
In the ksmserver porting most code was moved to explicitly calling
logout or shutdown methods rather than a random enum.

A legacy code path remained for compatibility. This path is used by the
containmentactions, in the refactor handling of
KWorkspace::ShutdownTypeDefault was lost.

BUG: 403466
Fixed-in: 5.15.0

Test Plan:
Set different default modes
Logged out using containment actions

Reviewers: #plasma, broulik

Reviewed By: #plasma, broulik

Subscribers: ngraham, plasma-devel

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D18435
wilder-broken-krunner
David Edmundson 7 years ago
parent c02d60d349
commit fc2d0c4f56
  1. 7
      ksmserver/logout.cpp

@ -134,11 +134,14 @@ void KSMServer::shutdown( KWorkSpace::ShutdownConfirm confirm,
(confirm == KWorkSpace::ShutdownConfirmNo) ? true :
!cg.readEntry( "confirmLogout", true );
int shutdownType = (sdtype != KWorkSpace::ShutdownTypeDefault ? sdtype :
cg.readEntry("shutdownType", (int)KWorkSpace::ShutdownType::ShutdownTypeLogout));
if (!logoutConfirmed) {
OrgKdeLogoutPromptInterface logoutPrompt(QStringLiteral("org.kde.LogoutPrompt"),
QStringLiteral("/LogoutPrompt"),
QDBusConnection::sessionBus());
switch (sdtype) {
switch (shutdownType) {
case KWorkSpace::ShutdownTypeHalt:
logoutPrompt.promptShutDown();
break;
@ -155,7 +158,7 @@ void KSMServer::shutdown( KWorkSpace::ShutdownConfirm confirm,
OrgKdeShutdownInterface shutdownIface(QStringLiteral("org.kde.Shutdown"),
QStringLiteral("/Shutdown"),
QDBusConnection::sessionBus());
switch (sdtype) {
switch (shutdownType) {
case KWorkSpace::ShutdownTypeHalt:
shutdownIface.logoutAndShutdown();
break;

Loading…
Cancel
Save