Hello community,

here is the log from the commit of package kwin5 for openSUSE:Factory checked 
in at 2017-07-02 13:34:52
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kwin5 (Old)
 and      /work/SRC/openSUSE:Factory/.kwin5.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "kwin5"

Sun Jul  2 13:34:52 2017 rev:58 rq:506547 version:5.10.3

Changes:
--------
--- /work/SRC/openSUSE:Factory/kwin5/kwin5.changes      2017-06-19 
13:23:16.553405548 +0200
+++ /work/SRC/openSUSE:Factory/.kwin5.new/kwin5.changes 2017-07-02 
13:34:55.322611522 +0200
@@ -1,0 +2,21 @@
+Tue Jun 27 17:50:18 CEST 2017 - [email protected]
+
+- Update to 5.10.3
+  * New bugfix release
+  * For more details please see:
+  * https://www.kde.org/announcements/plasma-5.10.3.php
+- Changes since 5.10.2:
+  * Properly block the edge also for touch screen edges (kde#380476)
+  * [platforms/x11] Add support for GLX_NV_robustness_video_memory_purge 
(kde#344326)
+  * Fix double click on window deco if tripple clicked (kde#361241)
+  * Make shadows work for windows 100% width or height (kde#380825)
+  * [tabbox] Fix casts to Client where it should be AbstractClient
+  * Fix switch desktop on screenedge while resizing a Wayland window
+  * Fix switch desktop through edge when moving window (kde#380440)
+  * Workaround Qt regression of no longer delivering events for the root 
window (kde#360841)
+  * Better handle cases when the xkb keymap fails to be created (kde#381210)
+- Remove patches, now upstream:
+  * 0001-Force-creation-of-platform-window-for-the-desktop.patch
+  * 0001-Revert-Make-WindowSwitching-Alt-Tab-the-default-left.patch
+
+-------------------------------------------------------------------

Old:
----
  0001-Force-creation-of-platform-window-for-the-desktop.patch
  0001-Revert-Make-WindowSwitching-Alt-Tab-the-default-left.patch
  kwin-5.10.2.tar.xz

New:
----
  kwin-5.10.3.tar.xz

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

Other differences:
------------------
++++++ kwin5.spec ++++++
--- /var/tmp/diff_new_pack.njbY8V/_old  2017-07-02 13:34:56.130497600 +0200
+++ /var/tmp/diff_new_pack.njbY8V/_new  2017-07-02 13:34:56.134497036 +0200
@@ -21,7 +21,7 @@
 %define wayland 0%{?suse_version} >= 1330
 %bcond_without lang
 Name:           kwin5
-Version:        5.10.2
+Version:        5.10.3
 Release:        0
 # Full Plasma 5 version (e.g. 5.8.95)
 %{!?_plasma5_bugfix: %global _plasma5_bugfix %{version}}
@@ -32,10 +32,6 @@
 Group:          System/GUI/KDE
 Url:            http://www.kde.org
 Source:         
http://download.kde.org/stable/plasma/%{version}/kwin-%{version}.tar.xz
-# PATCH-FIX-OPENSUSE (?)
-Patch1:         0001-Revert-Make-WindowSwitching-Alt-Tab-the-default-left.patch
-# PATCH-FIX-OPENSUSE (?)
-Patch100:       0001-Force-creation-of-platform-window-for-the-desktop.patch
 BuildRequires:  extra-cmake-modules >= 0.0.11
 BuildRequires:  fdupes
 BuildRequires:  kf5-filesystem
@@ -145,8 +141,6 @@
 
 %prep
 %setup -q -n kwin-%{version}
-%patch1 -p1
-%patch100 -p1
 
 %build
   %cmake_kf5 -d build -- -DCMAKE_INSTALL_LOCALEDIR=%{_kf5_localedir}

++++++ kwin-5.10.2.tar.xz -> kwin-5.10.3.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kwin-5.10.2/CMakeLists.txt 
new/kwin-5.10.3/CMakeLists.txt
--- old/kwin-5.10.2/CMakeLists.txt      2017-06-13 20:22:03.000000000 +0200
+++ new/kwin-5.10.3/CMakeLists.txt      2017-06-27 11:53:06.000000000 +0200
@@ -1,5 +1,5 @@
 project(KWIN)
-set(PROJECT_VERSION "5.10.2")
+set(PROJECT_VERSION "5.10.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/kwin-5.10.2/abstract_client.cpp 
new/kwin-5.10.3/abstract_client.cpp
--- old/kwin-5.10.2/abstract_client.cpp 2017-06-13 20:19:37.000000000 +0200
+++ new/kwin-5.10.3/abstract_client.cpp 2017-06-27 11:52:14.000000000 +0200
@@ -1495,7 +1495,7 @@
             const qint64 interval = m_decoration.doubleClickTimer.elapsed();
             m_decoration.doubleClickTimer.invalidate();
             if (interval > 
QGuiApplication::styleHints()->mouseDoubleClickInterval()) {
-                m_decoration.doubleClickTimer.invalidate(); // expired -> new 
first click and pot. init
+                m_decoration.doubleClickTimer.start(); // expired -> new first 
click and pot. init
             } else {
                 Workspace::self()->performWindowOperation(this, 
options->operationTitlebarDblClick());
                 dontMoveResize();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kwin-5.10.2/autotests/integration/CMakeLists.txt 
new/kwin-5.10.3/autotests/integration/CMakeLists.txt
--- old/kwin-5.10.2/autotests/integration/CMakeLists.txt        2017-06-13 
20:19:37.000000000 +0200
+++ new/kwin-5.10.3/autotests/integration/CMakeLists.txt        2017-06-27 
11:52:14.000000000 +0200
@@ -43,6 +43,7 @@
 integrationTest(NAME testWindowSelection SRCS window_selection_test.cpp)
 integrationTest(NAME testPointerConstraints SRCS pointer_constraints_test.cpp)
 integrationTest(NAME testKeyboardLayout SRCS keyboard_layout_test.cpp)
+integrationTest(NAME testKeymapCreationFailure SRCS 
keymap_creation_failure_test.cpp)
 
 if (XCB_ICCCM_FOUND)
     integrationTest(NAME testMoveResize SRCS move_resize_window_test.cpp LIBS 
XCB::ICCCM)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kwin-5.10.2/autotests/integration/keymap_creation_failure_test.cpp 
new/kwin-5.10.3/autotests/integration/keymap_creation_failure_test.cpp
--- old/kwin-5.10.2/autotests/integration/keymap_creation_failure_test.cpp      
1970-01-01 01:00:00.000000000 +0100
+++ new/kwin-5.10.3/autotests/integration/keymap_creation_failure_test.cpp      
2017-06-27 11:52:14.000000000 +0200
@@ -0,0 +1,102 @@
+/********************************************************************
+KWin - the KDE window manager
+This file is part of the KDE project.
+
+Copyright (C) 2017 Martin Flöser <[email protected]>
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program.  If not, see <http://www.gnu.org/licenses/>.
+*********************************************************************/
+#include "kwin_wayland_test.h"
+#include "keyboard_input.h"
+#include "keyboard_layout.h"
+#include "platform.h"
+#include "shell_client.h"
+#include "virtualdesktops.h"
+#include "wayland_server.h"
+#include "workspace.h"
+
+#include <KConfigGroup>
+#include <KGlobalAccel>
+
+#include <linux/input.h>
+
+using namespace KWin;
+using namespace KWayland::Client;
+
+static const QString s_socketName = 
QStringLiteral("wayland_test_kwin_keymap_creation_failure-0");
+
+class KeymapCreationFailureTest : public QObject
+{
+    Q_OBJECT
+private Q_SLOTS:
+    void initTestCase();
+    void init();
+    void cleanup();
+
+    void testPointerButton();
+};
+
+void KeymapCreationFailureTest::initTestCase()
+{
+    // situation for for BUG 381210
+    // this will fail to create keymap
+    qputenv("XKB_DEFAULT_RULES", "no");
+    qputenv("XKB_DEFAULT_MODEL", "no");
+    qputenv("XKB_DEFAULT_LAYOUT", "no");
+    qputenv("XKB_DEFAULT_VARIANT", "no");
+    qputenv("XKB_DEFAULT_OPTIONS", "no");
+
+    qRegisterMetaType<KWin::ShellClient*>();
+    qRegisterMetaType<KWin::AbstractClient*>();
+    QSignalSpy workspaceCreatedSpy(kwinApp(), &Application::workspaceCreated);
+    QVERIFY(workspaceCreatedSpy.isValid());
+    kwinApp()->platform()->setInitialWindowSize(QSize(1280, 1024));
+    QVERIFY(waylandServer()->init(s_socketName.toLocal8Bit()));
+
+    kwinApp()->setConfig(KSharedConfig::openConfig(QString(), 
KConfig::SimpleConfig));
+    kwinApp()->setKxkbConfig(KSharedConfig::openConfig(QString(), 
KConfig::SimpleConfig));
+    KConfigGroup layoutGroup = kwinApp()->kxkbConfig()->group("Layout");
+    layoutGroup.writeEntry("LayoutList", QStringLiteral("no"));
+    layoutGroup.writeEntry("Model", "no");
+    layoutGroup.writeEntry("Options", "no");
+    layoutGroup.sync();
+
+    kwinApp()->start();
+    QVERIFY(workspaceCreatedSpy.wait());
+    waylandServer()->initWorkspace();
+}
+
+void KeymapCreationFailureTest::init()
+{
+    QVERIFY(Test::setupWaylandConnection());
+}
+
+void KeymapCreationFailureTest::cleanup()
+{
+    Test::destroyWaylandConnection();
+}
+
+void KeymapCreationFailureTest::testPointerButton()
+{
+    // test case for BUG 381210
+    // pressing a pointer button results in crash
+
+    // now create the crashing condition
+    // which is sending in a pointer event
+    kwinApp()->platform()->pointerButtonPressed(BTN_LEFT, 0);
+    kwinApp()->platform()->pointerButtonReleased(BTN_LEFT, 1);
+}
+
+WAYLANDTEST_MAIN(KeymapCreationFailureTest)
+#include "keymap_creation_failure_test.moc"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kwin-5.10.2/autotests/mock_abstract_client.cpp 
new/kwin-5.10.3/autotests/mock_abstract_client.cpp
--- old/kwin-5.10.2/autotests/mock_abstract_client.cpp  2017-06-13 
20:19:37.000000000 +0200
+++ new/kwin-5.10.3/autotests/mock_abstract_client.cpp  2017-06-27 
11:52:14.000000000 +0200
@@ -30,6 +30,7 @@
     , m_hiddenInternal(false)
     , m_keepBelow(false)
     , m_geometry()
+    , m_resize(false)
 {
 }
 
@@ -103,4 +104,14 @@
     emit keepBelowChanged();
 }
 
+bool AbstractClient::isResize() const
+{
+    return m_resize;
+}
+
+void AbstractClient::setResize(bool set)
+{
+    m_resize = set;
+}
+
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kwin-5.10.2/autotests/mock_abstract_client.h 
new/kwin-5.10.3/autotests/mock_abstract_client.h
--- old/kwin-5.10.2/autotests/mock_abstract_client.h    2017-06-13 
20:19:37.000000000 +0200
+++ new/kwin-5.10.3/autotests/mock_abstract_client.h    2017-06-27 
11:52:14.000000000 +0200
@@ -47,6 +47,8 @@
     void setHiddenInternal(bool set);
     void setGeometry(const QRect &rect);
     void setKeepBelow(bool);
+    bool isResize() const;
+    void setResize(bool set);
     virtual void showOnScreenEdge() = 0;
 
 Q_SIGNALS:
@@ -60,6 +62,7 @@
     bool m_hiddenInternal;
     bool m_keepBelow;
     QRect m_geometry;
+    bool m_resize;
 };
 
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kwin-5.10.2/autotests/mock_client.cpp 
new/kwin-5.10.3/autotests/mock_client.cpp
--- old/kwin-5.10.2/autotests/mock_client.cpp   2017-06-13 20:19:37.000000000 
+0200
+++ new/kwin-5.10.3/autotests/mock_client.cpp   2017-06-27 11:52:14.000000000 
+0200
@@ -35,9 +35,4 @@
     setHiddenInternal(false);
 }
 
-bool Client::isResize() const
-{
-    return false;
-}
-
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kwin-5.10.2/autotests/mock_client.h 
new/kwin-5.10.3/autotests/mock_client.h
--- old/kwin-5.10.2/autotests/mock_client.h     2017-06-13 20:19:37.000000000 
+0200
+++ new/kwin-5.10.3/autotests/mock_client.h     2017-06-27 11:52:14.000000000 
+0200
@@ -34,8 +34,6 @@
 public:
     explicit Client(QObject *parent);
     virtual ~Client();
-
-    bool isResize() const;
     void showOnScreenEdge() override;
 
 };
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kwin-5.10.2/autotests/test_screen_edges.cpp 
new/kwin-5.10.3/autotests/test_screen_edges.cpp
--- old/kwin-5.10.2/autotests/test_screen_edges.cpp     2017-06-13 
20:19:37.000000000 +0200
+++ new/kwin-5.10.3/autotests/test_screen_edges.cpp     2017-06-27 
11:52:14.000000000 +0200
@@ -392,6 +392,27 @@
         QCOMPARE(e->activatesForTouchGesture(), false);
         QCOMPARE(e->approachGeometry(), expectedGeometries.at(i*2+1));
     }
+
+    // let's start a move of window.
+    Client client(workspace());
+    workspace()->setMovingClient(&client);
+    for (int i = 0; i < 8; ++i) {
+        auto e = edges.at(i);
+        QVERIFY(!e->isReserved());
+        QCOMPARE(e->activatesForPointer(), true);
+        QCOMPARE(e->activatesForTouchGesture(), false);
+        QCOMPARE(e->approachGeometry(), expectedGeometries.at(i*2+1));
+    }
+    // not for resize
+    client.setResize(true);
+    for (int i = 0; i < 8; ++i) {
+        auto e = edges.at(i);
+        QVERIFY(!e->isReserved());
+        QCOMPARE(e->activatesForPointer(), false);
+        QCOMPARE(e->activatesForTouchGesture(), false);
+        QCOMPARE(e->approachGeometry(), expectedGeometries.at(i*2+1));
+    }
+    workspace()->setMovingClient(nullptr);
 }
 
 void TestScreenEdges::testCallback()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kwin-5.10.2/effects/frozenapp/package/metadata.desktop 
new/kwin-5.10.3/effects/frozenapp/package/metadata.desktop
--- old/kwin-5.10.2/effects/frozenapp/package/metadata.desktop  2017-06-13 
20:19:37.000000000 +0200
+++ new/kwin-5.10.3/effects/frozenapp/package/metadata.desktop  2017-06-27 
11:52:14.000000000 +0200
@@ -5,6 +5,7 @@
 Name[el]=Αποκορεσμός χρωμάτων μη αποκρινόμενων εφαρμογών
 Name[en_GB]=Desaturate Unresponsive Applications
 Name[es]=Desaturar las aplicaciones que no responden
+Name[eu]=Desasetu erantzuten ez duten aplikazioak
 Name[fi]=Vähennä värikylläisyyttä sovelluksilta, jotka eivät vastaa
 Name[he]=מחשיך יישומים שאינם מגיבים
 Name[it]=Desatura le applicazioni che non rispondono
@@ -30,6 +31,7 @@
 Comment[el]=Αποκορεσμός χρωμάτων παραθύρων μη αποκρινόμενων (κολλημένων) 
εφαρμογών
 Comment[en_GB]=Desaturate windows of unresponsive (frozen) applications
 Comment[es]=Desaturar las ventanas de las aplicaciones que no responden 
(congeladas)
+Comment[eu]=Desasetu erantzuten ez duten aplikazioen leihoak (izoztuak)
 Comment[fi]=Vähennä värikylläisyyttä sovelluksilta, jotka eivät vastaa (ovat 
jumittuneet)
 Comment[he]=מחשיך חלונות של יישומים שאינם מגיבים (תקועים)
 Comment[it]=Desatura le finestre delle applicazione che non rispondono 
(bloccate)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kwin-5.10.2/effects/logout/package/metadata.desktop 
new/kwin-5.10.3/effects/logout/package/metadata.desktop
--- old/kwin-5.10.2/effects/logout/package/metadata.desktop     2017-06-13 
20:19:37.000000000 +0200
+++ new/kwin-5.10.3/effects/logout/package/metadata.desktop     2017-06-27 
11:52:14.000000000 +0200
@@ -7,6 +7,7 @@
 Name[el]=αποσύνδεση
 Name[en_GB]=logout
 Name[es]=cerrar la sesión
+Name[eu]=itxi saioa
 Name[fi]=kirjaudu ulos
 Name[he]=התנתקות
 Name[hu]=Kijelentkezés
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kwin-5.10.2/effects.cpp new/kwin-5.10.3/effects.cpp
--- old/kwin-5.10.2/effects.cpp 2017-06-13 20:19:37.000000000 +0200
+++ new/kwin-5.10.3/effects.cpp 2017-06-27 11:52:14.000000000 +0200
@@ -48,6 +48,7 @@
 #include "kwinglutils.h"
 
 #include <QDebug>
+#include <QDesktopWidget>
 
 #include <Plasma/Theme>
 
@@ -599,6 +600,11 @@
         bool ret = grabXKeyboard();
         if (!ret)
             return false;
+        // Workaround for Qt 5.9 regression introduced with 
2b34aefcf02f09253473b096eb4faffd3e62b5f4
+        // we no longer get any events for the root window, one needs to call 
winId() on the desktop window
+        // TODO: change effects event handling to create the appropriate 
QKeyEvent without relying on Qt
+        // as it's done already in the Wayland case.
+        qApp->desktop()->winId();
     }
     keyboard_grab_effect = effect;
     return true;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kwin-5.10.2/kcmkwin/kwincompositing/kwineffect.knsrc 
new/kwin-5.10.3/kcmkwin/kwincompositing/kwineffect.knsrc
--- old/kwin-5.10.2/kcmkwin/kwincompositing/kwineffect.knsrc    2017-06-13 
20:19:37.000000000 +0200
+++ new/kwin-5.10.3/kcmkwin/kwincompositing/kwineffect.knsrc    2017-06-27 
11:52:14.000000000 +0200
@@ -8,6 +8,7 @@
 Name[el]=Εφέ διαχειριστή παραθύρων
 Name[en_GB]=Window Manager Effects
 Name[es]=Efectos del gestor de ventanas
+Name[eu]=Leiho kudeatzailearen efektua
 Name[fi]=Ikkunaohjelman tehosteet
 Name[fr]=Effets du gestionnaire de fenêtres
 Name[he]=אפקטי מנהל חלונות
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kwin-5.10.2/kcmkwin/kwinscreenedges/kwintouchscreen.desktop 
new/kwin-5.10.3/kcmkwin/kwinscreenedges/kwintouchscreen.desktop
--- old/kwin-5.10.2/kcmkwin/kwinscreenedges/kwintouchscreen.desktop     
2017-06-13 20:19:37.000000000 +0200
+++ new/kwin-5.10.3/kcmkwin/kwinscreenedges/kwintouchscreen.desktop     
2017-06-27 11:52:14.000000000 +0200
@@ -18,9 +18,11 @@
 Name[el]=Οθόνη αφής
 Name[en_GB]=Touch Screen
 Name[es]=Pantalla táctil
+Name[eu]=Ukimen-pantaila
 Name[fi]=Kosketusnäyttö
 Name[he]=מסך מגע
 Name[it]=Schermo a sfioramento
+Name[lt]=Jutiklinis ekranas
 Name[nl]=Aanraakscherm
 Name[pl]=Ekran dotykowy
 Name[pt]=Ecrã Táctil
@@ -41,6 +43,7 @@
 Comment[ca@valencia]=Gestos de lliscament en la pantalla tàctil
 Comment[en_GB]=Touch screen swipe gestures
 Comment[es]=Gestos de deslizamiento en pantalla táctil
+Comment[eu]=Ukipen-pantailan irrist-keinuak
 Comment[fi]=Kosketusnäytön pyyhkäisyeleet
 Comment[he]=מחוות החלקה של מסכי מגע
 Comment[it]=Gesti dello schermo a sfioramento
@@ -65,6 +68,7 @@
 
X-KDE-Keywords[ca@valencia]=kwin,finestra,gestor,efecte,vora,borde,acció,canvi,escriptori,vores
 d'escriptori,vores de pantalla,costat de pantalla,comportament de la 
pantalla,pantalla tàctil
 
X-KDE-Keywords[en_GB]=kwin,window,manager,effect,edge,border,action,switch,desktop,desktop
 edges,screen edges,side of screen,screen behaviour,touch screen
 
X-KDE-Keywords[es]=kwin,ventana,gestor,efecto,esquina,borde,acción,cambiar,escritorio,bordes
 del escritorio,bordes de la pantalla,lado de la pantalla,comportamiento de la 
pantalla,pantalla táctil
+X-KDE-Keywords[eu]=kwin,leiho,kudeatzaile,efektu,izkin,ertz,ekintza,aldatu,mahaigain,mahaigainaren
 ertzak,pantailen ertzak,pantailaren aldea,pantailaren portaera,ukipen-pantaila
 
X-KDE-Keywords[fi]=kwin,ikkuna,hallinta,tehoste,kulma,laita,reuna,toiminto,vaihda,työpöytä,työpöydän
 reunat,näytön reunat,näytön laita,näytön käyttäytyminen,kosketusnäyttö
 
X-KDE-Keywords[it]=kwin,finestra,gestore,effetto,angolo,bordo,azione,scambiatore,desktop,bordi
 desktop,bordi schermo,lato dello schermo,comportamento schermo,schermo a 
sfioramento
 
X-KDE-Keywords[nl]=kwin,venster,beheerder,effect,kant,rand,actie,omschakelen,bureaublad,bureaubladkanten,schermkanten,zijkant
 van het scherm,schermgedrag,aanraakscherm
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kwin-5.10.2/kcmkwin/kwinscripts/kwinscripts.knsrc 
new/kwin-5.10.3/kcmkwin/kwinscripts/kwinscripts.knsrc
--- old/kwin-5.10.2/kcmkwin/kwinscripts/kwinscripts.knsrc       2017-06-13 
20:19:37.000000000 +0200
+++ new/kwin-5.10.3/kcmkwin/kwinscripts/kwinscripts.knsrc       2017-06-27 
11:52:14.000000000 +0200
@@ -8,6 +8,7 @@
 Name[el]=Σενάρια διαχειριστή παραθύρων
 Name[en_GB]=Window Manager Scripts
 Name[es]=Guiones del gestor de ventanas
+Name[eu]=Leiho kudeatzailearen scriptak
 Name[fi]=Ikkunaohjelman skriptit
 Name[fr]=Scripts du gestionnaire de fenêtres
 Name[hu]=Ablakkezelő szkriptek
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kwin-5.10.2/kcmkwin/kwintabbox/kwinswitcher.knsrc 
new/kwin-5.10.3/kcmkwin/kwintabbox/kwinswitcher.knsrc
--- old/kwin-5.10.2/kcmkwin/kwintabbox/kwinswitcher.knsrc       2017-06-13 
20:19:37.000000000 +0200
+++ new/kwin-5.10.3/kcmkwin/kwintabbox/kwinswitcher.knsrc       2017-06-27 
11:52:14.000000000 +0200
@@ -8,6 +8,7 @@
 Name[el]=Διατάξεις εναλλαγής διαχειριστή παραθύρων
 Name[en_GB]=Window Manager Switching Layouts
 Name[es]=Esquemas de cambio del gestor de ventanas
+Name[eu]=Leiho kudeatzailearen aldatzeko-antolamenduak
 Name[fi]=Ikkunaohjelman vaihdon asettelut
 Name[fr]=Changement de disposition du gestionnaire de fenêtres
 Name[he]=מחליף פריסות של מנהל החלונות
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kwin-5.10.2/packageplugins/aurorae/kwin-packagestructure-aurorae.desktop 
new/kwin-5.10.3/packageplugins/aurorae/kwin-packagestructure-aurorae.desktop
--- 
old/kwin-5.10.2/packageplugins/aurorae/kwin-packagestructure-aurorae.desktop    
    2017-06-13 20:19:37.000000000 +0200
+++ 
new/kwin-5.10.3/packageplugins/aurorae/kwin-packagestructure-aurorae.desktop    
    2017-06-27 11:52:14.000000000 +0200
@@ -7,6 +7,7 @@
 Name[el]=KWin Aurorae
 Name[en_GB]=KWin Aurorae
 Name[es]=Aurorae de KWin
+Name[eu]=KWin Aurorae
 Name[fi]=KWin Aurorae
 Name[hu]=KWin Aurorae
 Name[it]=Aurorae di Kwin
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kwin-5.10.2/packageplugins/decoration/kwin-packagestructure-decoration.desktop
 
new/kwin-5.10.3/packageplugins/decoration/kwin-packagestructure-decoration.desktop
--- 
old/kwin-5.10.2/packageplugins/decoration/kwin-packagestructure-decoration.desktop
  2017-06-13 20:19:37.000000000 +0200
+++ 
new/kwin-5.10.3/packageplugins/decoration/kwin-packagestructure-decoration.desktop
  2017-06-27 11:52:14.000000000 +0200
@@ -7,6 +7,7 @@
 Name[el]=Διακοσμήσεις KWin
 Name[en_GB]=KWin Decoration
 Name[es]=Decoración de KWin
+Name[eu]=KWin apainketa
 Name[fi]=KWin-ikkunakehykset
 Name[hu]=KWin dekoráció
 Name[ia]=Decorationes de KWin
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kwin-5.10.2/packageplugins/scripts/kwin-packagestructure-scripts.desktop 
new/kwin-5.10.3/packageplugins/scripts/kwin-packagestructure-scripts.desktop
--- 
old/kwin-5.10.2/packageplugins/scripts/kwin-packagestructure-scripts.desktop    
    2017-06-13 20:19:37.000000000 +0200
+++ 
new/kwin-5.10.3/packageplugins/scripts/kwin-packagestructure-scripts.desktop    
    2017-06-27 11:52:14.000000000 +0200
@@ -8,6 +8,7 @@
 Name[el]=Σενάριο KWin
 Name[en_GB]=KWin Script
 Name[es]=Guion de KWin
+Name[eu]=KWin scripta
 Name[fi]=KWin-skripti
 Name[hu]=KWin szkript
 Name[ia]=Script de KWin
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kwin-5.10.2/packageplugins/windowswitcher/kwin-packagestructure-windowswitcher.desktop
 
new/kwin-5.10.3/packageplugins/windowswitcher/kwin-packagestructure-windowswitcher.desktop
--- 
old/kwin-5.10.2/packageplugins/windowswitcher/kwin-packagestructure-windowswitcher.desktop
  2017-06-13 20:19:37.000000000 +0200
+++ 
new/kwin-5.10.3/packageplugins/windowswitcher/kwin-packagestructure-windowswitcher.desktop
  2017-06-27 11:52:14.000000000 +0200
@@ -8,6 +8,7 @@
 Name[el]=Εφαρμογή εναλλαγής παραθύρων Kwin
 Name[en_GB]=KWin Window Switcher
 Name[es]=Cambiador de ventanas de KWin
+Name[eu]=KWin leiho-aldatzailea
 Name[fi]=KWin-ikkunanvalitsin
 Name[hu]=KWin ablakváltó
 Name[ia]=Commutator de fenestra de KWin
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kwin-5.10.2/plugins/kdecorations/aurorae/src/aurorae.knsrc 
new/kwin-5.10.3/plugins/kdecorations/aurorae/src/aurorae.knsrc
--- old/kwin-5.10.2/plugins/kdecorations/aurorae/src/aurorae.knsrc      
2017-06-13 20:19:37.000000000 +0200
+++ new/kwin-5.10.3/plugins/kdecorations/aurorae/src/aurorae.knsrc      
2017-06-27 11:52:14.000000000 +0200
@@ -8,6 +8,7 @@
 Name[el]=Διακοσμήσεις παραθύρου Aurorae
 Name[en_GB]=Aurorae Window Decorations
 Name[es]=Decoración de ventanas Aurorae
+Name[eu]=Aurorae leihoentzako apaingarriak
 Name[fi]=Aurorae-ikkunakehykset
 Name[fr]=Décorations de fenêtres Aurorae
 Name[hu]=Aurorae ablakdekorációk
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kwin-5.10.2/plugins/platforms/x11/standalone/edge.cpp 
new/kwin-5.10.3/plugins/platforms/x11/standalone/edge.cpp
--- old/kwin-5.10.2/plugins/platforms/x11/standalone/edge.cpp   2017-06-13 
20:19:37.000000000 +0200
+++ new/kwin-5.10.3/plugins/platforms/x11/standalone/edge.cpp   2017-06-27 
11:52:14.000000000 +0200
@@ -130,9 +130,6 @@
     if (!isReserved()) {
         return;
     }
-    if (!activatesForPointer()) {
-        return;
-    }
     if (isBlocked()) {
         m_window.unmap();
         m_approachWindow.unmap();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/kwin-5.10.2/plugins/platforms/x11/standalone/glxbackend.cpp 
new/kwin-5.10.3/plugins/platforms/x11/standalone/glxbackend.cpp
--- old/kwin-5.10.2/plugins/platforms/x11/standalone/glxbackend.cpp     
2017-06-13 20:19:37.000000000 +0200
+++ new/kwin-5.10.3/plugins/platforms/x11/standalone/glxbackend.cpp     
2017-06-27 11:52:14.000000000 +0200
@@ -64,6 +64,10 @@
 } xcb_glx_buffer_swap_complete_event_t;
 #endif
 
+#ifndef GLX_GENERATE_RESET_ON_VIDEO_MEMORY_PURGE_NV
+#define GLX_GENERATE_RESET_ON_VIDEO_MEMORY_PURGE_NV 0x20F7
+#endif
+
 #include <tuple>
 
 #if __cplusplus <= 201103L
@@ -293,6 +297,15 @@
 
     // Use glXCreateContextAttribsARB() when it's available
     if (hasExtension(QByteArrayLiteral("GLX_ARB_create_context"))) {
+        const int attribs_31_core_nv_robustness[] = {
+            GLX_CONTEXT_MAJOR_VERSION_ARB,               3,
+            GLX_CONTEXT_MINOR_VERSION_ARB,               1,
+            GLX_CONTEXT_FLAGS_ARB,                       
GLX_CONTEXT_ROBUST_ACCESS_BIT_ARB,
+            GLX_CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB, 
GLX_LOSE_CONTEXT_ON_RESET_ARB,
+            GLX_GENERATE_RESET_ON_VIDEO_MEMORY_PURGE_NV, GL_TRUE,
+            0
+        };
+
         const int attribs_31_core_robustness[] = {
             GLX_CONTEXT_MAJOR_VERSION_ARB,               3,
             GLX_CONTEXT_MINOR_VERSION_ARB,               1,
@@ -307,6 +320,13 @@
             0
         };
 
+        const int attribs_legacy_nv_robustness[] = {
+            GLX_CONTEXT_FLAGS_ARB,                       
GLX_CONTEXT_ROBUST_ACCESS_BIT_ARB,
+            GLX_CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB, 
GLX_LOSE_CONTEXT_ON_RESET_ARB,
+            GLX_GENERATE_RESET_ON_VIDEO_MEMORY_PURGE_NV, GL_TRUE,
+            0
+        };
+
         const int attribs_legacy_robustness[] = {
             GLX_CONTEXT_FLAGS_ARB,                       
GLX_CONTEXT_ROBUST_ACCESS_BIT_ARB,
             GLX_CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB, 
GLX_LOSE_CONTEXT_ON_RESET_ARB,
@@ -320,18 +340,31 @@
         };
 
         const bool have_robustness = 
hasExtension(QByteArrayLiteral("GLX_ARB_create_context_robustness"));
+        const bool haveVideoMemoryPurge = 
hasExtension(QByteArrayLiteral("GLX_NV_robustness_video_memory_purge"));
 
         // Try to create a 3.1 context first
         if (options->glCoreProfile()) {
-            if (have_robustness)
-                ctx = glXCreateContextAttribsARB(display(), fbconfig, 0, 
direct, attribs_31_core_robustness);
+            if (have_robustness)  {
+                if (haveVideoMemoryPurge) {
+                    ctx = glXCreateContextAttribsARB(display(), fbconfig, 0, 
direct, attribs_31_core_nv_robustness);
+                }
+                if (!ctx) {
+                    ctx = glXCreateContextAttribsARB(display(), fbconfig, 0, 
direct, attribs_31_core_robustness);
+                }
+            }
 
             if (!ctx)
                 ctx = glXCreateContextAttribsARB(display(), fbconfig, 0, 
direct, attribs_31_core);
         }
 
-        if (!ctx && have_robustness)
-            ctx = glXCreateContextAttribsARB(display(), fbconfig, 0, direct, 
attribs_legacy_robustness);
+        if (!ctx && have_robustness) {
+            if (haveVideoMemoryPurge) {
+                ctx = glXCreateContextAttribsARB(display(), fbconfig, 0, 
direct, attribs_legacy_nv_robustness);
+            }
+            if (!ctx) {
+                ctx = glXCreateContextAttribsARB(display(), fbconfig, 0, 
direct, attribs_legacy_robustness);
+            }
+        }
 
         if (!ctx)
             ctx = glXCreateContextAttribsARB(display(), fbconfig, 0, direct, 
attribs_legacy);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kwin-5.10.2/po/tr/kcmkwinrules.po 
new/kwin-5.10.3/po/tr/kcmkwinrules.po
--- old/kwin-5.10.2/po/tr/kcmkwinrules.po       2017-06-13 20:21:36.000000000 
+0200
+++ new/kwin-5.10.3/po/tr/kcmkwinrules.po       2017-06-27 11:52:54.000000000 
+0200
@@ -192,9 +192,9 @@
 "özelleştirilmiştir. Bir set <i>taban</i>+(<i>liste</i>) şeklinde "
 "özelleştirilmiştir, Burada taban değiştiricileri ve liste tuşların listesini "
 "belirtir.<br>\n"
-"Örneğin.\"<b>ÜstKrktr+Alt+(123) ÜstKrktr+Ctrl+(ABC)</b>\" önce "
-"<b>ÜstKrktr+Alt+1</b>'i deneyecek sırayla devam edecek en son olarak "
-"<b>ÜstKrktr+Ctrl+C</b>'yi deneyecektir."
+"Örneğin.\"<b>ÜstKrktr+Alt+(123) ÜstKrktr+Ctrl+(ABC)</b>\" önce <b>ÜstKrktr"
+"+Alt+1</b>'i deneyecek sırayla devam edecek en son olarak <b>ÜstKrktr+Ctrl"
+"+C</b>'yi deneyecektir."
 
 #. i18n: ectx: property (text), widget (QPushButton, pushButton1)
 #: editshortcut.ui:62
@@ -380,19 +380,18 @@
 "given value until it is hidden (this action will be deleted after the window "
 "is hidden).</li></ul>"
 msgstr ""
-"Pencere özelliğinin nasıl etkileneceğini belirtin:<ul><li><em>Etkilenme:</em>"
-" Pencere özelliği etkilenmeyecektir ve öntanımlı ayarlar kullanılacaktır. "
-"Bunu belirtmek bir çok genel pencerenin etkilenmesini "
-"engelliyeecktir.</li><li><em>İlk Olarak Uygula:</em> Pencere özelliği, "
-"pencere oluşturulduktan sonra verilen değere ayarlanacaktır. Daha başka "
-"değişiklik olmayacaktır.</li><li><em>Hatırla:</em> Pencere özelliğinin "
-"değeri her zaman hatırlanacak ve en son hatırlanan değer "
-"uygulanacaktır.</li><li><em>Zorla:</em> Bu, pencere özelliğini her zaman "
-"verilen değerlere zorlar.</li><li><em>Şimdi Uygula:</em> Pencere özelliğine "
-"verilen değer hemen uygulanacak ve sonra etkilenmeyecektir (bu eylem daha "
-"sonra silinecektir).</li><li><em>Geçici olarak Zorla:</em> Pencere özelliği "
-"gizlenene kadar verilen değere zorlanacaktır (bu eylem pencere gizlendikten "
-"sonra silinecektir).</li></ul>"
+"Pencere özelliğinin nasıl etkileneceğini belirtin:<ul><li><em>Etkilenme:</"
+"em> Pencere özelliği etkilenmeyecektir ve öntanımlı ayarlar kullanılacaktır. "
+"Bunu belirtmek bir çok genel pencerenin etkilenmesini engelliyeecktir.</"
+"li><li><em>İlk Olarak Uygula:</em> Pencere özelliği, pencere oluşturulduktan "
+"sonra verilen değere ayarlanacaktır. Daha başka değişiklik olmayacaktır.</"
+"li><li><em>Hatırla:</em> Pencere özelliğinin değeri her zaman hatırlanacak "
+"ve en son hatırlanan değer uygulanacaktır.</li><li><em>Zorla:</em> Bu, "
+"pencere özelliğini her zaman verilen değerlere zorlar.</li><li><em>Şimdi "
+"Uygula:</em> Pencere özelliğine verilen değer hemen uygulanacak ve sonra "
+"etkilenmeyecektir (bu eylem daha sonra silinecektir).</li><li><em>Geçici "
+"olarak Zorla:</em> Pencere özelliği gizlenene kadar verilen değere "
+"zorlanacaktır (bu eylem pencere gizlendikten sonra silinecektir).</li></ul>"
 
 #: ruleswidget.cpp:83
 #, kde-format
@@ -405,13 +404,13 @@
 "em> The window property will be forced to the given value until it is hidden "
 "(this action will be deleted after the window is hidden).</li></ul>"
 msgstr ""
-"Pencere özelliğinin nasıl etkileneceğini belirtin:<ul><li><em>Etkileme "
-"Yok:</em> Pencere özelliği etkilenmeyecektir ve öntanımlı ayarlar "
-"kullanılacaktır. Bunu belirtmek bir çok genel pencerenin etkilenmesini "
-"engelleyecektir.</li><li><em>Zorla:</em> Bu, pencere özelliğini her zaman "
-"verilen değerlere zorlar.</li><li><em>Geçici olarak Zorla:</em>Bu, pencere "
-"özelliğini pencere gizlenene kadar verilen değerlere zorlar. (bu eylem "
-"pencere gizlenince silinir).</li></ul>"
+"Pencere özelliğinin nasıl etkileneceğini belirtin:<ul><li><em>Etkileme Yok:</"
+"em> Pencere özelliği etkilenmeyecektir ve öntanımlı ayarlar kullanılacaktır. "
+"Bunu belirtmek bir çok genel pencerenin etkilenmesini engelleyecektir.</"
+"li><li><em>Zorla:</em> Bu, pencere özelliğini her zaman verilen değerlere "
+"zorlar.</li><li><em>Geçici olarak Zorla:</em>Bu, pencere özelliğini pencere "
+"gizlenene kadar verilen değerlere zorlar. (bu eylem pencere gizlenince "
+"silinir).</li></ul>"
 
 #: ruleswidget.cpp:150
 #, kde-format
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kwin-5.10.2/po/tr/kcmkwm.po 
new/kwin-5.10.3/po/tr/kcmkwm.po
--- old/kwin-5.10.2/po/tr/kcmkwm.po     2017-06-13 20:21:36.000000000 +0200
+++ new/kwin-5.10.3/po/tr/kcmkwm.po     2017-06-27 11:52:54.000000000 +0200
@@ -530,8 +530,8 @@
 "<li><em>Rastgele</em> rastgele bir yerleşim kullanacaktır.</li>\n"
 "<li><em>Ortalanmış</em> pencereyi ortaya yerleştirecektir.</li>\n"
 "<li><em>Sıfır Köşeli</em> pencereyi sol üst köşeye yerleştirecektir.</li>\n"
-"<li><em>Farenin Altında</em> pencereyi imlecin altına yerleştirecektir.</li>"
-"\n"
+"<li><em>Farenin Altında</em> pencereyi imlecin altına yerleştirecektir.</"
+"li>\n"
 "</ul>"
 
 #. i18n: ectx: property (text), item, widget (KComboBox, placementCombo)
@@ -698,8 +698,8 @@
 "Think as <i>Click To Focus</i> just without having to actually click."
 msgstr ""
 "<b>Odak Fareyi Takip Eder</b><br>\n"
-"Farenin bir pencere üzerine sürüklenmesi, o pencereyi etkinleştirir.<br><br>"
-"\n"
+"Farenin bir pencere üzerine sürüklenmesi, o pencereyi etkinleştirir."
+"<br><br>\n"
 "Örn. farenin altında rastgele görünen pencereler odaklanılmayacaktır.<br>\n"
 "Odak çalma koruması, alışıldığı gibi kullanılır.<br><br>\n"
 "<i>Odaklanmak için Tıkla</i> olarak düşünün, sadece gerçekten tıklamadan."
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kwin-5.10.2/po/tr/kwin.po 
new/kwin-5.10.3/po/tr/kwin.po
--- old/kwin-5.10.2/po/tr/kwin.po       2017-06-13 20:21:36.000000000 +0200
+++ new/kwin-5.10.3/po/tr/kwin.po       2017-06-27 11:52:54.000000000 +0200
@@ -15,8 +15,8 @@
 "Project-Id-Version: kwin\n"
 "Report-Msgid-Bugs-To: http://bugs.kde.org\n";
 "POT-Creation-Date: 2017-05-10 06:25+0200\n"
-"PO-Revision-Date: 2017-05-10 07:30+0000\n"
-"Last-Translator: Kaan <[email protected]>\n"
+"PO-Revision-Date: 2017-06-09 14:24+0100\n"
+"Last-Translator: Volkan Gezer <[email protected]>\n"
 "Language-Team: Turkish <[email protected]>\n"
 "Language: tr\n"
 "MIME-Version: 1.0\n"
@@ -818,8 +818,8 @@
 "<p>You tried to close window \"%1\" from application \"%2\" (Process ID: "
 "%3), running on host \"%4\", but the application is not responding.</p>"
 msgstr ""
-"<p>\"%4\" sunucusunda çalışan \"%2\" uygulamasından (Süreç Kimliği: %3) \"%"
-"1\" penceresini kapatmaya çalıştınız fakat uygulama yanıt vermiyor.</p>"
+"<p>\"%4\" sunucusunda çalışan \"%2\" uygulamasından (Süreç Kimliği: %3) "
+"\"%1\" penceresini kapatmaya çalıştınız fakat uygulama yanıt vermiyor.</p>"
 
 #: helpers/killer/killer.cpp:103
 #, kde-kuit-format
@@ -1275,24 +1275,24 @@
 #: main_wayland.cpp:522
 #, kde-format
 msgid "The width for windowed mode. Default width is 1024."
-msgstr "Pencereli kipin genişliği. Varsayılan genişlik 1024'tür."
+msgstr "Pencereli kipin genişliği. Öntanımlı genişlik 1024'tür."
 
 #: main_wayland.cpp:526
 #, kde-format
 msgid "The height for windowed mode. Default height is 768."
-msgstr "Pencereli kipin yüksekliği. Varsayılan yükseklik 768'tir."
+msgstr "Pencereli kipin yüksekliği. Öntanımlı yükseklik 768'tir."
 
 #: main_wayland.cpp:531
 #, kde-format
 msgid "The scale for windowed mode. Default value is 1."
-msgstr "Pencerelenmiş kipin ölçeği. Varsayılan değer 1'dir."
+msgstr "Pencerelenmiş kipin ölçeği. Öntanımlı değer 1'dir."
 
 #: main_wayland.cpp:536
 #, kde-format
 msgid ""
 "The number of windows to open as outputs in windowed mode. Default value is 1"
 msgstr ""
-"Pencere kipinde çıkış olarak açılacak pencere sayısı. Varsayılan değer 1'dir"
+"Pencere kipinde çıkış olarak açılacak pencere sayısı. Öntanımlı değer 1'dir"
 
 #: main_wayland.cpp:569
 #, kde-format
@@ -1331,7 +1331,8 @@
 #: main_wayland.cpp:600
 #, kde-format
 msgid "Exit after the session application, which is started by KWin, closed."
-msgstr "KWin tarafından başlatılan oturum uygulaması kapatıldıktan sonra 
çıkın."
+msgstr ""
+"KWin tarafından başlatılan oturum uygulaması kapatıldıktan sonra çıkın."
 
 #: main_wayland.cpp:606 main_x11.cpp:423
 #, kde-format
@@ -1436,8 +1437,8 @@
 "compositing, switch to the XRender backend or lower the resolution to %1x%1."
 msgstr ""
 "<h1>OpenGL masaüstü efektleri kullanılamayabilir</h1>Geçerli çözünürlükte "
-"OpenGL Masaüstü Efektleri destekleniyor ancak oldukça yavaş çalışabilir.<br>"
-"Ayrıca büyük pencereler tamamen siyah görünecektir.<br><br>Birleştirmeyi "
+"OpenGL Masaüstü Efektleri destekleniyor ancak oldukça yavaş çalışabilir."
+"<br>Ayrıca büyük pencereler tamamen siyah görünecektir.<br><br>Birleştirmeyi "
 "durdurun, XRender arka ucuna geçin veya çözünürlüğü %1x%1 olarak ayarlayın."
 
 #: scene_opengl.cpp:898
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kwin-5.10.2/po/tr/kwin_scripting.po 
new/kwin-5.10.3/po/tr/kwin_scripting.po
--- old/kwin-5.10.2/po/tr/kwin_scripting.po     2017-06-13 20:21:36.000000000 
+0200
+++ new/kwin-5.10.3/po/tr/kwin_scripting.po     2017-06-27 11:52:54.000000000 
+0200
@@ -85,7 +85,8 @@
 #, kde-format
 msgctxt "KWin Scripting error thrown due to incorrect argument"
 msgid "Second argument to registerScreenEdge needs to be a callback"
-msgstr "RegisterScreenEdge'in ikinci argümanının bir geriçağırım olması 
gerekir"
+msgstr ""
+"RegisterScreenEdge'in ikinci argümanının bir geriçağırım olması gerekir"
 
 #: scriptingutils.h:213
 #, kde-format
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kwin-5.10.2/scene_opengl.cpp 
new/kwin-5.10.3/scene_opengl.cpp
--- old/kwin-5.10.2/scene_opengl.cpp    2017-06-13 20:19:37.000000000 +0200
+++ new/kwin-5.10.3/scene_opengl.cpp    2017-06-27 11:52:14.000000000 +0200
@@ -2248,12 +2248,12 @@
     const QRectF outerRect(QPointF(-leftOffset(), -topOffset()),
                            QPointF(topLevel()->width() + rightOffset(), 
topLevel()->height() + bottomOffset()));
 
-    const int width = qMax(topLeft.width(), bottomLeft.width()) +
-                      qMax(top.width(), bottom.width()) +
-                      qMax(topRight.width(), bottomRight.width());
-    const int height = qMax(topLeft.height(), topRight.height()) +
-                       qMax(left.height(), right.height()) +
-                       qMax(bottomLeft.height(), bottomRight.height());
+    const int width = std::max({topLeft.width(), left.width(), 
bottomLeft.width()}) +
+                      std::max(top.width(), bottom.width()) +
+                      std::max({topRight.width(), right.width(), 
bottomRight.width()});
+    const int height = std::max({topLeft.height(), top.height(), 
topRight.height()}) +
+                       std::max(left.height(), right.height()) +
+                       std::max({bottomLeft.height(), bottom.height(), 
bottomRight.height()});
 
     qreal tx1(0.0), tx2(0.0), ty1(0.0), ty2(0.0);
 
@@ -2355,13 +2355,12 @@
     const QSize topLeft(shadowPixmap(ShadowElementTopLeft).size());
     const QSize bottomRight(shadowPixmap(ShadowElementBottomRight).size());
 
-    const int width = qMax(topLeft.width(), bottomLeft.width()) +
-                      qMax(top.width(), bottom.width()) +
-                      qMax(topRight.width(), bottomRight.width());
-
-    const int height = qMax(topRight.height(), topLeft.height()) +
-                       qMax(left.height(), right.height()) +
-                       qMax(bottomLeft.height(), bottomRight.height());
+    const int width = std::max({topLeft.width(), left.width(), 
bottomLeft.width()}) +
+                      std::max(top.width(), bottom.width()) +
+                      std::max({topRight.width(), right.width(), 
bottomRight.width()});
+    const int height = std::max({topLeft.height(), top.height(), 
topRight.height()}) +
+                       std::max(left.height(), right.height()) +
+                       std::max({bottomLeft.height(), bottom.height(), 
bottomRight.height()});
 
     if (width == 0 || height == 0) {
         return false;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kwin-5.10.2/screenedge.cpp 
new/kwin-5.10.3/screenedge.cpp
--- old/kwin-5.10.2/screenedge.cpp      2017-06-13 20:19:37.000000000 +0200
+++ new/kwin-5.10.3/screenedge.cpp      2017-06-27 11:52:14.000000000 +0200
@@ -183,6 +183,12 @@
     if (m_edges->isDesktopSwitching()) {
         return true;
     }
+    if (m_edges->isDesktopSwitchingMovingClients()) {
+        auto c = Workspace::self()->getMovingClient();
+        if (c && !c->isResize()) {
+            return true;
+        }
+    }
     if (!m_callBacks.isEmpty()) {
         return true;
     }
@@ -293,10 +299,7 @@
 void Edge::handle(const QPoint &cursorPos)
 {
     AbstractClient *movingClient = Workspace::self()->getMovingClient();
-    bool isResize = false;
-    if (Client *movingClientClient = qobject_cast<Client*>(movingClient))
-        isResize = movingClientClient->isResize();
-    if ((edges()->isDesktopSwitchingMovingClients() && movingClient && 
!isResize) ||
+    if ((edges()->isDesktopSwitchingMovingClients() && movingClient && 
!movingClient->isResize()) ||
         (edges()->isDesktopSwitching() && isScreenEdge())) {
         // always switch desktops in case:
         // moving a Client and option for switch on client move is enabled
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kwin-5.10.2/scripts/minimizeall/metadata.desktop 
new/kwin-5.10.3/scripts/minimizeall/metadata.desktop
--- old/kwin-5.10.2/scripts/minimizeall/metadata.desktop        2017-06-13 
20:19:37.000000000 +0200
+++ new/kwin-5.10.3/scripts/minimizeall/metadata.desktop        2017-06-27 
11:52:14.000000000 +0200
@@ -19,7 +19,7 @@
 Name[it]=Minimizza tutto
 Name[ja]=すべて最小化
 Name[ko]=모두최소화
-Name[lt]=SumažintiVisus
+Name[lt]=Sumažinti visus
 Name[nb]=Minimer alt
 Name[nl]=Alles-minimaliseren
 Name[nn]=Minimer alle
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kwin-5.10.2/tabbox/tabbox.cpp 
new/kwin-5.10.3/tabbox/tabbox.cpp
--- old/kwin-5.10.2/tabbox/tabbox.cpp   2017-06-13 20:19:37.000000000 +0200
+++ new/kwin-5.10.3/tabbox/tabbox.cpp   2017-06-27 11:52:14.000000000 +0200
@@ -284,7 +284,7 @@
     ToplevelList stacking = Workspace::self()->stackingOrder();
     TabBoxClientList ret;
     foreach (Toplevel *toplevel, stacking) {
-        if (Client *client = qobject_cast<Client*>(toplevel)) {
+        if (auto client = qobject_cast<AbstractClient*>(toplevel)) {
             ret.append(client->tabBoxClient());
         }
     }
@@ -331,7 +331,7 @@
 QWeakPointer<TabBoxClient> TabBoxHandlerImpl::desktopClient() const
 {
     foreach (Toplevel *toplevel, Workspace::self()->stackingOrder()) {
-        Client *client = qobject_cast<Client*>(toplevel);
+        auto client = qobject_cast<AbstractClient*>(toplevel);
         if (client && client->isDesktop() && client->isOnCurrentDesktop() && 
client->screen() == screens()->current()) {
             return client->tabBoxClient();
         }
@@ -1319,7 +1319,7 @@
 
 void TabBox::CDEWalkThroughWindows(bool forward)
 {
-    Client* c = nullptr;
+    AbstractClient* c = nullptr;
 // this function find the first suitable client for unreasonable focus
 // policies - the topmost one, with some exceptions (can't be keepabove/below,
 // otherwise it gets stuck on them)
@@ -1327,7 +1327,7 @@
     for (int i = Workspace::self()->stackingOrder().size() - 1;
             i >= 0 ;
             --i) {
-        Client* it = 
qobject_cast<Client*>(Workspace::self()->stackingOrder().at(i));
+        auto it = 
qobject_cast<AbstractClient*>(Workspace::self()->stackingOrder().at(i));
         if (it && it->isOnCurrentActivity() && it->isOnCurrentDesktop() && 
!it->isSpecialWindow()
                 && it->isShown(false) && it->wantsTabFocus()
                 && !it->keepAbove() && !it->keepBelow()) {
@@ -1335,14 +1335,14 @@
             break;
         }
     }
-    Client* nc = c;
+    AbstractClient* nc = c;
     bool options_traverse_all;
     {
         KConfigGroup group(kwinApp()->config(), "TabBox");
         options_traverse_all = group.readEntry("TraverseAll", false);
     }
 
-    Client* firstClient = nullptr;
+    AbstractClient* firstClient = nullptr;
     do {
         nc = forward ? nextClientStatic(nc) : previousClientStatic(nc);
         if (!firstClient) {
@@ -1641,34 +1641,36 @@
   auxiliary functions to travers all clients according to the static
   order. Useful for the CDE-style Alt-tab feature.
 */
-Client* TabBox::nextClientStatic(Client* c) const
+AbstractClient* TabBox::nextClientStatic(AbstractClient* c) const
 {
-    if (!c || Workspace::self()->clientList().isEmpty())
+    const auto &list = Workspace::self()->allClientList();
+    if (!c || list.isEmpty())
         return 0;
-    int pos = Workspace::self()->clientList().indexOf(c);
+    int pos = list.indexOf(c);
     if (pos == -1)
-        return Workspace::self()->clientList().first();
+        return list.first();
     ++pos;
-    if (pos == Workspace::self()->clientList().count())
-        return Workspace::self()->clientList().first();
-    return Workspace::self()->clientList()[ pos ];
+    if (pos == list.count())
+        return list.first();
+    return list.at(pos);
 }
 
 /*!
   auxiliary functions to travers all clients according to the static
   order. Useful for the CDE-style Alt-tab feature.
 */
-Client* TabBox::previousClientStatic(Client* c) const
+AbstractClient* TabBox::previousClientStatic(AbstractClient* c) const
 {
-    if (!c || Workspace::self()->clientList().isEmpty())
+    const auto &list = Workspace::self()->allClientList();
+    if (!c || list.isEmpty())
         return 0;
-    int pos = Workspace::self()->clientList().indexOf(c);
+    int pos = list.indexOf(c);
     if (pos == -1)
-        return Workspace::self()->clientList().last();
+        return list.last();
     if (pos == 0)
-        return Workspace::self()->clientList().last();
+        return list.last();
     --pos;
-    return Workspace::self()->clientList()[ pos ];
+    return list.at(pos);
 }
 
 bool TabBox::establishTabBoxGrab()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kwin-5.10.2/tabbox/tabbox.h 
new/kwin-5.10.3/tabbox/tabbox.h
--- old/kwin-5.10.2/tabbox/tabbox.h     2017-06-13 20:19:37.000000000 +0200
+++ new/kwin-5.10.3/tabbox/tabbox.h     2017-06-27 11:52:14.000000000 +0200
@@ -176,8 +176,8 @@
 
     void initShortcuts();
 
-    Client* nextClientStatic(Client*) const;
-    Client* previousClientStatic(Client*) const;
+    AbstractClient* nextClientStatic(AbstractClient*) const;
+    AbstractClient* previousClientStatic(AbstractClient*) const;
     int nextDesktopStatic(int iDesktop) const;
     int previousDesktopStatic(int iDesktop) const;
     void keyPress(int key);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/kwin-5.10.2/xkb.cpp new/kwin-5.10.3/xkb.cpp
--- old/kwin-5.10.2/xkb.cpp     2017-06-13 20:19:37.000000000 +0200
+++ new/kwin-5.10.3/xkb.cpp     2017-06-27 11:52:14.000000000 +0200
@@ -354,13 +354,16 @@
 
 QString Xkb::layoutName(xkb_layout_index_t layout) const
 {
+    if (!m_keymap) {
+        return QString{};
+    }
     return QString::fromLocal8Bit(xkb_keymap_layout_get_name(m_keymap, 
layout));
 }
 
 QMap<xkb_layout_index_t, QString> Xkb::layoutNames() const
 {
     QMap<xkb_layout_index_t, QString> layouts;
-    const auto size = xkb_keymap_num_layouts(m_keymap);
+    const auto size = m_keymap ? xkb_keymap_num_layouts(m_keymap) : 0u;
     for (xkb_layout_index_t i = 0; i < size; i++) {
         layouts.insert(i, layoutName(i));
     }
@@ -387,6 +390,9 @@
 
 Qt::KeyboardModifiers Xkb::modifiersRelevantForGlobalShortcuts() const
 {
+    if (!m_state) {
+        return Qt::NoModifier;
+    }
     Qt::KeyboardModifiers mods = Qt::NoModifier;
     if (xkb_state_mod_index_is_active(m_state, m_shiftModifier, 
XKB_STATE_MODS_EFFECTIVE) == 1) {
         mods |= Qt::ShiftModifier;


Reply via email to