Hrvoje Senjan 2016-02-09 15:59:16 +00:00 committed by Git OBS Bridge
parent 1a9f23b77a
commit 0ac590a062
3 changed files with 48 additions and 0 deletions

View File

@ -0,0 +1,39 @@
From fae65f1cdd6446042b31ccd0eafd7a4c0b6623e3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Martin=20Gr=C3=A4=C3=9Flin?= <mgraesslin@kde.org>
Date: Fri, 5 Feb 2016 10:30:19 +0100
Subject: [PATCH 1/1] [greeter] Dont quit when last window closes
Qt allows to have no screens. If all XRandR screens are disconnected
there are also no QScreens. This is from an X11 perspective wrong, but
we have to deal with it. No QScreens means that all views are destroyed
and no new ones are created. Thus all windows close and the greeter
exited successfully which in turn unlocked the screen.
This change ensures that the greeter doesn't exit when all windows close.
Funnily this was not a problem with the well known issue of Qt
crashing when all screens are disconnected. The lock screen handles
crashes gracefully and just restarts or more likely Qt also crashes
the application using KSld and thus taking down the complete session.
BUG: 358125
FIXED-IN: 5.5.5
---
greeter/main.cpp | 1 +
1 file changed, 1 insertion(+)
diff --git a/greeter/main.cpp b/greeter/main.cpp
index e4e679e..5625d36 100644
--- a/greeter/main.cpp
+++ b/greeter/main.cpp
@@ -59,6 +59,7 @@ int main(int argc, char* argv[])
qputenv("QT_IM_MODULE", QByteArrayLiteral("compose"));
}
ScreenLocker::UnlockApp app(argc, argv);
+ app.setQuitOnLastWindowClosed(false);
QCoreApplication::setApplicationName(QStringLiteral("kscreenlocker_greet"));
QCoreApplication::setApplicationVersion(QStringLiteral("0.1"));
QCoreApplication::setOrganizationDomain(QStringLiteral("kde.org"));
--
2.6.2

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Tue Feb 9 15:58:56 UTC 2016 - hrvoje.senjan@gmail.com
- Added 0001-greeter-Dont-quit-when-last-window-closes.patch
(kde#358125)
-------------------------------------------------------------------
Tue Jan 26 22:20:10 UTC 2016 - hrvoje.senjan@gmail.com

View File

@ -27,6 +27,8 @@ Url: https://projects.kde.org/kscreenlocker
Source: %{name}-%{version}.tar.xz
# PATCH-FIX-OPENSUSE fix-wayland-version-requirement.diff -- Changes wayland requirement from 1.3 to 1.2.1
Patch0: fix-wayland-version-requirement.diff
# PATCH-FIX-UPSTREAM 0001-greeter-Dont-quit-when-last-window-closes.patch
Patch1: 0001-greeter-Dont-quit-when-last-window-closes.patch
BuildRequires: cmake >= 2.8.12
BuildRequires: extra-cmake-modules >= 1.8.0
BuildRequires: kf5-filesystem
@ -88,6 +90,7 @@ Development files for Library and components for secure lock screen architecture
# SLE12 has a patched 1.2.1 wayland with all features KDE needs from up to 1.7.0
%patch0 -p1
%endif
%patch1 -p1
%build
%cmake_kf5 -d build -- -DKDE4_COMMON_PAM_SERVICE=xdm -DCMAKE_INSTALL_LOCALEDIR=share/locale/kf5