Hello community,

here is the log from the commit of package kscreenlocker for openSUSE:Factory 
checked in at 2017-03-03 17:30:38
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kscreenlocker (Old)
 and      /work/SRC/openSUSE:Factory/.kscreenlocker.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "kscreenlocker"

Fri Mar  3 17:30:38 2017 rev:23 rq:461643 version:5.9.3

Changes:
--------
--- /work/SRC/openSUSE:Factory/kscreenlocker/kscreenlocker.changes      
2017-02-19 01:10:30.295707807 +0100
+++ /work/SRC/openSUSE:Factory/.kscreenlocker.new/kscreenlocker.changes 
2017-03-03 17:30:39.582768664 +0100
@@ -1,0 +2,17 @@
+Wed Mar  1 18:28:36 UTC 2017 - [email protected]
+
+- Add upstream patch to fix screenlocker focus on multiscreen systems:
+  * 0001-Implement-manual-focus-on-click.patch
+
+-------------------------------------------------------------------
+Tue Feb 28 19:54:41 CET 2017 - [email protected]
+
+- Update to 5.9.3
+  * New bugfix release
+  * For more details please see:
+  * https://www.kde.org/announcements/plasma-5.9.3.php
+- Changes since 5.9.2:
+  * Merge Plasma/5.8
+  * Fix crash in Screen Locker KCM on teardown
+
+-------------------------------------------------------------------

Old:
----
  kscreenlocker-5.9.2.tar.xz

New:
----
  0001-Implement-manual-focus-on-click.patch
  kscreenlocker-5.9.3.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ kscreenlocker.spec ++++++
--- /var/tmp/diff_new_pack.NqcMbP/_old  2017-03-03 17:30:40.166686163 +0100
+++ /var/tmp/diff_new_pack.NqcMbP/_new  2017-03-03 17:30:40.170685598 +0100
@@ -18,7 +18,7 @@
 
 %bcond_without lang
 Name:           kscreenlocker
-Version:        5.9.2
+Version:        5.9.3
 Release:        0
 Summary:        Library and components for secure lock screen architecture
 License:        GPL-2.0+
@@ -27,6 +27,8 @@
 Source:         
http://download.kde.org/stable/plasma/%{version}/kscreenlocker-%{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-Implement-manual-focus-on-click.patch
+Patch100:       0001-Implement-manual-focus-on-click.patch
 BuildRequires:  cmake >= 2.8.12
 BuildRequires:  extra-cmake-modules >= 1.8.0
 BuildRequires:  kf5-filesystem
@@ -91,6 +93,7 @@
 # SLE12 has a patched 1.2.1 wayland with all features KDE needs from up to 
1.7.0
 %patch0 -p1
 %endif
+%patch100 -p1
 
 %build
   %cmake_kf5 -d build -- -DKDE4_COMMON_PAM_SERVICE=xdm 
-DCMAKE_INSTALL_LOCALEDIR=%{_kf5_localedir}

++++++ 0001-Implement-manual-focus-on-click.patch ++++++
>From f8043de10b5dd94b9b931a92f3aa7167188786c9 Mon Sep 17 00:00:00 2001
From: Fabian Vogt <[email protected]>
Date: Mon, 27 Feb 2017 16:29:29 +0100
Subject: [PATCH] Implement manual focus on click

Summary:
Currently only the first created screenlock window gets focus.
On clicks, no focus events are sent, which makes it impossible to input
passwords. This patch now makes it possible to focus to a different
screenlock window (on a different monitor, for example) using a mouse
button press.
This should also fix newly created screenlock windows stealing the focus
of already displayed ones as only the first window gains automatic focus.

BUG: 348789
BUG: 374289

Test Plan:
Locked the screen, now I can use the password input on the secondary screen
as well.

Reviewers: #plasma, graesslin, broulik

Reviewed By: #plasma, graesslin

Subscribers: hein, plasma-devel

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D4821
---
 greeter/greeterapp.cpp |  1 -
 x11locker.cpp          | 26 ++++++++++++++++++++++++--
 x11locker.h            |  2 ++
 3 files changed, 26 insertions(+), 3 deletions(-)

diff --git a/greeter/greeterapp.cpp b/greeter/greeterapp.cpp
index 47fcb03..bcfcbdf 100644
--- a/greeter/greeterapp.cpp
+++ b/greeter/greeterapp.cpp
@@ -372,7 +372,6 @@ void UnlockApp::getFocus()
     // this loop is required to make the qml/graphicsscene properly handle the 
shared keyboard input
     // ie. "type something into the box of every greeter"
     foreach (KQuickAddons::QuickViewSharedEngine *view, m_views) {
-        view->requestActivate();
         if (!m_testing) {
             view->setKeyboardGrabEnabled(true); // TODO - check whether this 
still works in master!
         }
diff --git a/x11locker.cpp b/x11locker.cpp
index b2d2ea4..6967a67 100644
--- a/x11locker.cpp
+++ b/x11locker.cpp
@@ -51,6 +51,7 @@ namespace ScreenLocker
 X11Locker::X11Locker(QObject *parent)
     : AbstractLocker(parent)
     , QAbstractNativeEventFilter()
+    , m_focusedLockWindow(XCB_WINDOW_NONE)
 {
     initialize();
 }
@@ -229,8 +230,12 @@ void X11Locker::removeVRoot(Window win)
     XDeleteProperty (QX11Info::display(), win, gXA_VROOT);
 }
 
-static void fakeFocusIn( WId window )
+void X11Locker::fakeFocusIn( WId window )
 {
+    if (window == m_focusedLockWindow) {
+        return;
+    }
+
     // We have keyboard grab, so this application will
     // get keyboard events even without having focus.
     // Fake FocusIn to make Qt realize it has the active
@@ -244,6 +249,8 @@ static void fakeFocusIn( WId window )
     ev.xfocus.detail = NotifyAncestor;
     XSendEvent( QX11Info::display(), window, False, NoEventMask, &ev );
     XFlush(QX11Info::display());
+
+    m_focusedLockWindow = window;
 }
 
 template< typename T>
@@ -308,6 +315,11 @@ bool X11Locker::nativeEventFilter(const QByteArray 
&eventType, void *message, lo
                         (x>=x_return && x<=x_return+(int)width_return)
                         &&
                         (y>=y_return && y<=y_return+(int)height_return) ) {
+                        // We need to do our own focus handling (see comment 
in fakeFocusIn).
+                        // For now: Focus on clicks inside the window
+                        if (responseType == XCB_BUTTON_PRESS) {
+                            fakeFocusIn(window);
+                        }
                         const int targetX = x - x_return;
                         const int targetY = y - y_return;
                         if (responseType == XCB_KEY_PRESS || responseType == 
XCB_KEY_RELEASE) {
@@ -386,6 +398,10 @@ bool X11Locker::nativeEventFilter(const QByteArray 
&eventType, void *message, lo
                 else
                     qDebug() << "Unknown toplevel for MapNotify";
                 m_lockWindows.removeAll(xu->event);
+                if (m_focusedLockWindow == xu->event && 
!m_lockWindows.empty()) {
+                    // The currently focused window vanished, just focus the 
first one in the list
+                    fakeFocusIn(m_lockWindows[0]);
+                }
                 ret = true;
             }
             break;
@@ -508,8 +524,14 @@ void X11Locker::addAllowedWindow(quint32 window)
             // not yet shown and we have a lock window, so we show our own 
window
             m_background->show();
         }
+
+        if (m_lockWindows.empty()) {
+            // Make sure to focus the first window
+            m_focusedLockWindow = XCB_WINDOW_NONE;
+            fakeFocusIn(window);
+        }
+
         m_lockWindows.prepend(window);
-        fakeFocusIn(window);
         stayOnTop();
     }
 }
diff --git a/x11locker.h b/x11locker.h
index 9a14699..d8e83d6 100644
--- a/x11locker.h
+++ b/x11locker.h
@@ -60,6 +60,7 @@ private:
     void setVRoot(Window win, Window vr);
     void removeVRoot(Window win);
     int findWindowInfo(Window w);
+    void fakeFocusIn(WId window);
     void stayOnTop() override;
     struct WindowInfo
     {
@@ -69,6 +70,7 @@ private:
     QList<WindowInfo> m_windowInfo;
     QList<WId> m_lockWindows;
     QList<quint32> m_allowedWindows;
+    WId m_focusedLockWindow;
 };
 }
 
-- 
2.11.1

++++++ kscreenlocker-5.9.2.tar.xz -> kscreenlocker-5.9.3.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kscreenlocker-5.9.2/CMakeLists.txt 
new/kscreenlocker-5.9.3/CMakeLists.txt
--- old/kscreenlocker-5.9.2/CMakeLists.txt      2017-02-14 14:19:50.000000000 
+0100
+++ new/kscreenlocker-5.9.3/CMakeLists.txt      2017-02-28 13:55:06.000000000 
+0100
@@ -1,4 +1,4 @@
-set(PROJECT_VERSION "5.9.2")
+set(PROJECT_VERSION "5.9.3")
 set(PROJECT_VERSION_MAJOR 5)
 
 cmake_minimum_required(VERSION 2.8.12 FATAL_ERROR)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kscreenlocker-5.9.2/po/nb/screenlocker_kcm.po 
new/kscreenlocker-5.9.3/po/nb/screenlocker_kcm.po
--- old/kscreenlocker-5.9.2/po/nb/screenlocker_kcm.po   2017-02-14 
14:19:36.000000000 +0100
+++ new/kscreenlocker-5.9.3/po/nb/screenlocker_kcm.po   2017-02-28 
13:54:36.000000000 +0100
@@ -5,7 +5,7 @@
 msgstr ""
 "Project-Id-Version: \n"
 "Report-Msgid-Bugs-To: http://bugs.kde.org\n";
-"POT-Creation-Date: 2016-11-19 20:20+0100\n"
+"POT-Creation-Date: 2017-02-11 07:08+0100\n"
 "PO-Revision-Date: 2015-04-28 13:51+0200\n"
 "Last-Translator: Bjørn Steensrud <[email protected]>\n"
 "Language-Team: Norwegian Bokmål <[email protected]>\n"
@@ -40,12 +40,12 @@
 msgid "Lock Session"
 msgstr "Lås økt"
 
-#: kcm.cpp:138
+#: kcm.cpp:143
 #, kde-format
 msgid "Error"
 msgstr "Feil"
 
-#: kcm.cpp:138
+#: kcm.cpp:143
 #, kde-format
 msgid "Failed to successfully test the screen locker."
 msgstr "Klarte ikke å prøve skjermlåseren."
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kscreenlocker-5.9.2/po/nn/screenlocker_kcm.po 
new/kscreenlocker-5.9.3/po/nn/screenlocker_kcm.po
--- old/kscreenlocker-5.9.2/po/nn/screenlocker_kcm.po   2017-02-14 
14:19:37.000000000 +0100
+++ new/kscreenlocker-5.9.3/po/nn/screenlocker_kcm.po   2017-02-28 
13:54:38.000000000 +0100
@@ -5,7 +5,7 @@
 msgstr ""
 "Project-Id-Version: \n"
 "Report-Msgid-Bugs-To: http://bugs.kde.org\n";
-"POT-Creation-Date: 2016-11-19 20:20+0100\n"
+"POT-Creation-Date: 2017-02-11 07:08+0100\n"
 "PO-Revision-Date: 2016-11-19 18:13+0100\n"
 "Last-Translator: Karl Ove Hufthammer <[email protected]>\n"
 "Language-Team: Norwegian Nynorsk <[email protected]>\n"
@@ -40,12 +40,12 @@
 msgid "Lock Session"
 msgstr "Lås økt"
 
-#: kcm.cpp:138
+#: kcm.cpp:143
 #, kde-format
 msgid "Error"
 msgstr "Feil"
 
-#: kcm.cpp:138
+#: kcm.cpp:143
 #, kde-format
 msgid "Failed to successfully test the screen locker."
 msgstr "Klarte ikkje å prøva skjermlåsaren."
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kscreenlocker-5.9.2/po/pt_BR/screenlocker_kcm.po 
new/kscreenlocker-5.9.3/po/pt_BR/screenlocker_kcm.po
--- old/kscreenlocker-5.9.2/po/pt_BR/screenlocker_kcm.po        2017-02-14 
14:19:40.000000000 +0100
+++ new/kscreenlocker-5.9.3/po/pt_BR/screenlocker_kcm.po        2017-02-28 
13:54:46.000000000 +0100
@@ -3,13 +3,13 @@
 # This file is distributed under the same license as the PACKAGE package.
 #
 # André Marcelo Alvarenga <[email protected]>, 2014, 2015, 2016.
-# Luiz Fernando Ranghetti <[email protected]>, 2014, 2016.
+# Luiz Fernando Ranghetti <[email protected]>, 2014, 2016, 2017.
 msgid ""
 msgstr ""
 "Project-Id-Version: screenlocker_kcm\n"
 "Report-Msgid-Bugs-To: http://bugs.kde.org\n";
 "POT-Creation-Date: 2017-02-11 07:08+0100\n"
-"PO-Revision-Date: 2016-09-12 09:00-0300\n"
+"PO-Revision-Date: 2017-02-18 01:46-0300\n"
 "Last-Translator: Luiz Fernando Ranghetti <[email protected]>\n"
 "Language-Team: Portuguese <[email protected]>\n"
 "Language: pt_BR\n"
@@ -20,10 +20,7 @@
 "X-Generator: Lokalize 2.0\n"
 
 #: kcm.cpp:55
-#, fuzzy, kde-format
-#| msgctxt "Spinbox suffix. Short for minutes"
-#| msgid " min"
-#| msgid_plural " min"
+#, kde-format
 msgctxt "Spinbox suffix. Short for minutes"
 msgid " min"
 msgid_plural " mins"
@@ -57,7 +54,7 @@
 #: kcm.ui:36
 #, kde-format
 msgid "Activation"
-msgstr ""
+msgstr "Ativação"
 
 #. i18n: ectx: property (text), widget (QCheckBox, kcfg_Autolock)
 #: kcm.ui:50
@@ -86,10 +83,9 @@
 
 #. i18n: ectx: property (text), widget (QLabel, label_5)
 #: kcm.ui:105
-#, fuzzy, kde-format
-#| msgid "&Lock screen on resume"
+#, kde-format
 msgid "&Lock screen on resume:"
-msgstr "Blo&quear a tela ao reativar"
+msgstr "Blo&quear a tela ao reativar:"
 
 #. i18n: ectx: property (toolTip), widget (QLabel, label_7)
 #: kcm.ui:128
@@ -105,10 +101,9 @@
 
 #. i18n: ectx: attribute (title), widget (QWidget, tab_2)
 #: kcm.ui:141
-#, fuzzy, kde-format
-#| msgid "Wallpaper &Type:"
+#, kde-format
 msgid "Wallpaper"
-msgstr "&Tipo de papel de parede:"
+msgstr "Papel de parede"
 
 #. i18n: ectx: property (text), widget (QLabel, label)
 #: kcm.ui:157
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kscreenlocker-5.9.2/po/sr/screenlocker_kcm.po 
new/kscreenlocker-5.9.3/po/sr/screenlocker_kcm.po
--- old/kscreenlocker-5.9.2/po/sr/screenlocker_kcm.po   2017-02-14 
14:19:43.000000000 +0100
+++ new/kscreenlocker-5.9.3/po/sr/screenlocker_kcm.po   2017-02-28 
13:54:54.000000000 +0100
@@ -4,7 +4,7 @@
 msgstr ""
 "Project-Id-Version: screenlocker_kcm\n"
 "Report-Msgid-Bugs-To: http://bugs.kde.org\n";
-"POT-Creation-Date: 2016-11-19 20:20+0100\n"
+"POT-Creation-Date: 2017-02-11 07:08+0100\n"
 "PO-Revision-Date: 2016-11-23 19:27+0100\n"
 "Last-Translator: Chusslove Illich <[email protected]>\n"
 "Language-Team: Serbian <[email protected]>\n"
@@ -43,12 +43,12 @@
 msgid "Lock Session"
 msgstr "Закључај сесију"
 
-#: kcm.cpp:138
+#: kcm.cpp:143
 #, kde-format
 msgid "Error"
 msgstr "Грешка"
 
-#: kcm.cpp:138
+#: kcm.cpp:143
 #, kde-format
 msgid "Failed to successfully test the screen locker."
 msgstr "Проба закључавача екрана није успела."
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kscreenlocker-5.9.2/po/sr@ijekavian/screenlocker_kcm.po 
new/kscreenlocker-5.9.3/po/sr@ijekavian/screenlocker_kcm.po
--- old/kscreenlocker-5.9.2/po/sr@ijekavian/screenlocker_kcm.po 2017-02-14 
14:19:43.000000000 +0100
+++ new/kscreenlocker-5.9.3/po/sr@ijekavian/screenlocker_kcm.po 2017-02-28 
13:54:54.000000000 +0100
@@ -4,7 +4,7 @@
 msgstr ""
 "Project-Id-Version: screenlocker_kcm\n"
 "Report-Msgid-Bugs-To: http://bugs.kde.org\n";
-"POT-Creation-Date: 2016-11-19 20:20+0100\n"
+"POT-Creation-Date: 2017-02-11 07:08+0100\n"
 "PO-Revision-Date: 2016-11-23 19:27+0100\n"
 "Last-Translator: Chusslove Illich <[email protected]>\n"
 "Language-Team: Serbian <[email protected]>\n"
@@ -43,12 +43,12 @@
 msgid "Lock Session"
 msgstr "Закључај сесију"
 
-#: kcm.cpp:138
+#: kcm.cpp:143
 #, kde-format
 msgid "Error"
 msgstr "Грешка"
 
-#: kcm.cpp:138
+#: kcm.cpp:143
 #, kde-format
 msgid "Failed to successfully test the screen locker."
 msgstr "Проба закључавача екрана није успела."
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kscreenlocker-5.9.2/po/sr@ijekavianlatin/screenlocker_kcm.po 
new/kscreenlocker-5.9.3/po/sr@ijekavianlatin/screenlocker_kcm.po
--- old/kscreenlocker-5.9.2/po/sr@ijekavianlatin/screenlocker_kcm.po    
2017-02-14 14:19:44.000000000 +0100
+++ new/kscreenlocker-5.9.3/po/sr@ijekavianlatin/screenlocker_kcm.po    
2017-02-28 13:54:55.000000000 +0100
@@ -4,7 +4,7 @@
 msgstr ""
 "Project-Id-Version: screenlocker_kcm\n"
 "Report-Msgid-Bugs-To: http://bugs.kde.org\n";
-"POT-Creation-Date: 2016-11-19 20:20+0100\n"
+"POT-Creation-Date: 2017-02-11 07:08+0100\n"
 "PO-Revision-Date: 2016-11-23 19:27+0100\n"
 "Last-Translator: Chusslove Illich <[email protected]>\n"
 "Language-Team: Serbian <[email protected]>\n"
@@ -43,12 +43,12 @@
 msgid "Lock Session"
 msgstr "Zaključaj sesiju"
 
-#: kcm.cpp:138
+#: kcm.cpp:143
 #, kde-format
 msgid "Error"
 msgstr "Greška"
 
-#: kcm.cpp:138
+#: kcm.cpp:143
 #, kde-format
 msgid "Failed to successfully test the screen locker."
 msgstr "Proba zaključavača ekrana nije uspela."
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kscreenlocker-5.9.2/po/sr@latin/screenlocker_kcm.po 
new/kscreenlocker-5.9.3/po/sr@latin/screenlocker_kcm.po
--- old/kscreenlocker-5.9.2/po/sr@latin/screenlocker_kcm.po     2017-02-14 
14:19:44.000000000 +0100
+++ new/kscreenlocker-5.9.3/po/sr@latin/screenlocker_kcm.po     2017-02-28 
13:54:57.000000000 +0100
@@ -4,7 +4,7 @@
 msgstr ""
 "Project-Id-Version: screenlocker_kcm\n"
 "Report-Msgid-Bugs-To: http://bugs.kde.org\n";
-"POT-Creation-Date: 2016-11-19 20:20+0100\n"
+"POT-Creation-Date: 2017-02-11 07:08+0100\n"
 "PO-Revision-Date: 2016-11-23 19:27+0100\n"
 "Last-Translator: Chusslove Illich <[email protected]>\n"
 "Language-Team: Serbian <[email protected]>\n"
@@ -43,12 +43,12 @@
 msgid "Lock Session"
 msgstr "Zaključaj sesiju"
 
-#: kcm.cpp:138
+#: kcm.cpp:143
 #, kde-format
 msgid "Error"
 msgstr "Greška"
 
-#: kcm.cpp:138
+#: kcm.cpp:143
 #, kde-format
 msgid "Failed to successfully test the screen locker."
 msgstr "Proba zaključavača ekrana nije uspela."


Reply via email to