[arch-commits] Commit in deepin-kwin/repos/community-x86_64 (7 files)

Felix Yan felixonmars at archlinux.org
Fri Aug 28 08:58:08 UTC 2020


    Date: Friday, August 28, 2020 @ 08:58:08
  Author: felixonmars
Revision: 690311

archrelease: copy trunk to community-x86_64

Added:
  deepin-kwin/repos/community-x86_64/PKGBUILD
    (from rev 690310, deepin-kwin/trunk/PKGBUILD)
  deepin-kwin/repos/community-x86_64/deepin-kwin-qt5.15.patch
    (from rev 690310, deepin-kwin/trunk/deepin-kwin-qt5.15.patch)
  deepin-kwin/repos/community-x86_64/deepin-kwin-unload-blur.patch
    (from rev 690310, deepin-kwin/trunk/deepin-kwin-unload-blur.patch)
  deepin-kwin/repos/community-x86_64/kwin-5.19.patch
    (from rev 690310, deepin-kwin/trunk/kwin-5.19.patch)
Deleted:
  deepin-kwin/repos/community-x86_64/PKGBUILD
  deepin-kwin/repos/community-x86_64/deepin-kwin-qt5.15.patch
  deepin-kwin/repos/community-x86_64/kwin-5.19.patch

-------------------------------+
 PKGBUILD                      |  105 ++++++++--------
 deepin-kwin-qt5.15.patch      |   48 +++----
 deepin-kwin-unload-blur.patch |   66 ++++++++++
 kwin-5.19.patch               |  248 ++++++++++++++++++++--------------------
 4 files changed, 266 insertions(+), 201 deletions(-)

Deleted: PKGBUILD
===================================================================
--- PKGBUILD	2020-08-28 08:57:54 UTC (rev 690310)
+++ PKGBUILD	2020-08-28 08:58:08 UTC (rev 690311)
@@ -1,53 +0,0 @@
-# Maintainer: Felix Yan <felixonmars at archlinux.org>
-# Contributor: Josip Ponjavic <josipponjavic at gmail dot com>
-# Contributor: Xu Fasheng <fasheng.xu[AT]gmail.com>
-
-pkgname=deepin-kwin
-pkgver=5.1.0.20
-pkgrel=3
-pkgdesc='KWin configures on DDE'
-arch=('x86_64')
-url="https://github.com/linuxdeepin/dde-kwin"
-license=('GPL3')
-groups=('deepin')
-depends=('deepin-qt5integration' 'deepin-wallpapers' 'kwin')
-makedepends=('extra-cmake-modules' 'expac' 'ninja' 'qt5-tools')
-source=("$pkgname-$pkgver.tar.gz::https://github.com/linuxdeepin/dde-kwin/archive/$pkgver.tar.gz"
-        $pkgname-tabbox-chameleon-rename.patch::https://github.com/linuxdeepin/dde-kwin/pull/106.patch
-        $pkgname-build-fix.patch::https://github.com/linuxdeepin/dde-kwin/pull/109.patch
-        $pkgname-unload-blur.patch::https://github.com/linuxdeepin/dde-kwin/pull/112.patch
-        $pkgname-added-functions-from-their-forked-kwin.patch::https://github.com/linuxdeepin/dde-kwin/commit/23a92e4839509ee3ef8886618ce1ee4cfbec3427.patch
-        deepin-kwin-qt5.15.patch
-        kwin-5.19.patch)
-sha512sums=('23b50b1008751765bd59a4d4192e54e35dc019c2d59af992f96da15bea5dce0701e7ff55b8cb47caad5a302edefd3d2e2948f26f32f23d071d52a7113dec1754'
-            '7ac1a577868b73314274d336287334acc5bf4ac06dde046c93e4c2d3f68a112389c8b0644d1cbc3fde5ba1c01f368676f4f34b4a1b7b6c97a5b73d66507d134d'
-            '3e10241050959b51bdd6bf752253af61a2b5899c3df5d84716bd1688d9292ff65d2b7d3aea8f61e896081a9bee013cb3f4c2f42f7915038f7f476120a44cf029'
-            '800bb8770b4a6d835e27f33226f81dce92ddf10c295e02015419788e667e7d46b014d69bde73d03af8f0480c938526b48498368d2f16619689352f0e8e183912'
-            '1e246657161b2d3790c8c4e7f372f7426434d727eda6f3ad656962a86f56f16cbeee56f4ae77006d71bfc3e9dc7481c7266238175d52c1517775af44a262ab2d'
-            '8fe73f833e2b24fe9bbaf12220a9d41d5e4808c833d7e7878635a85429e6c474ae79189d75d1d4e77c78bafbe2855db37ded24c85768f9a9415a00a0456c9dce'
-            'a33c21cae1d271b9e93df0b2987fb8c3956018406c88cc6a847b7f0e228316020b45f0961b67bf52b70b36da7840920bf729cc552f5ea765110766806756f348')
-
-prepare() {
-  cd dde-kwin-$pkgver
-  sed -i 's|/usr/share/backgrounds/default_background.jpg|/usr/share/backgrounds/deepin/desktop.jpg|' plugins/kwineffects/multitasking/background.cpp
-  sed -i '/光标管理/,+6d' plugins/platforms/lib/kwinutils.cpp
-  patch -R -p1 -i ../$pkgname-added-functions-from-their-forked-kwin.patch
-  patch -p1 -i ../$pkgname-tabbox-chameleon-rename.patch
-  patch -p1 -i ../$pkgname-build-fix.patch
-  patch -p1 -i ../$pkgname-unload-blur.patch
-  patch -p1 -i ../deepin-kwin-qt5.15.patch # Fix build with Qt 5.15
-  patch -p1 -i ../kwin-5.19.patch
-}
-
-build() {
-  cd dde-kwin-$pkgver
-  cmake . -GNinja -DCMAKE_INSTALL_PREFIX=/usr -DKWIN_VERSION=$(expac %v kwin | cut -d - -f 1)
-  ninja
-}
-
-package() {
-  cd dde-kwin-$pkgver
-  DESTDIR="$pkgdir" ninja install
-
-  chmod +x "$pkgdir"/usr/bin/kwin_no_scale
-}

Copied: deepin-kwin/repos/community-x86_64/PKGBUILD (from rev 690310, deepin-kwin/trunk/PKGBUILD)
===================================================================
--- PKGBUILD	                        (rev 0)
+++ PKGBUILD	2020-08-28 08:58:08 UTC (rev 690311)
@@ -0,0 +1,52 @@
+# Maintainer: Felix Yan <felixonmars at archlinux.org>
+# Contributor: Josip Ponjavic <josipponjavic at gmail dot com>
+# Contributor: Xu Fasheng <fasheng.xu[AT]gmail.com>
+
+pkgname=deepin-kwin
+pkgver=5.2.0.1
+pkgrel=1
+pkgdesc='KWin configures on DDE'
+arch=('x86_64')
+url="https://github.com/linuxdeepin/dde-kwin"
+license=('GPL3')
+groups=('deepin')
+depends=('deepin-qt5integration' 'deepin-wallpapers' 'kwin')
+makedepends=('extra-cmake-modules' 'expac' 'ninja' 'qt5-tools')
+source=("$pkgname-$pkgver.tar.gz::https://github.com/linuxdeepin/dde-kwin/archive/$pkgver.tar.gz"
+        $pkgname-tabbox-chameleon-rename.patch::https://github.com/linuxdeepin/dde-kwin/pull/106.patch
+        $pkgname-build-fix.patch::https://github.com/linuxdeepin/dde-kwin/pull/109.patch
+        $pkgname-unload-blur.patch
+        $pkgname-added-functions-from-their-forked-kwin.patch::https://github.com/linuxdeepin/dde-kwin/commit/23a92e4839509ee3ef8886618ce1ee4cfbec3427.patch
+        deepin-kwin-qt5.15.patch
+        kwin-5.19.patch)
+sha512sums=('a7dfe0fd25b9ae9d306a4986dc260ed5a87ba569abe09e14232ba7cc677d9138f14016161d1d84221d98802bb88e412b6bce7c5e31418b327e3b643f5413eb4f'
+            '7ac1a577868b73314274d336287334acc5bf4ac06dde046c93e4c2d3f68a112389c8b0644d1cbc3fde5ba1c01f368676f4f34b4a1b7b6c97a5b73d66507d134d'
+            '3e10241050959b51bdd6bf752253af61a2b5899c3df5d84716bd1688d9292ff65d2b7d3aea8f61e896081a9bee013cb3f4c2f42f7915038f7f476120a44cf029'
+            '9c5bf86510d0fbba36e71997f55eda1b197b26af7eeb0adb9e06e7e3cc86b32c00cd23dfca872f4043f76a1d9435f916aae73536f10c7b3fe7e79a6e74a309d2'
+            '1e246657161b2d3790c8c4e7f372f7426434d727eda6f3ad656962a86f56f16cbeee56f4ae77006d71bfc3e9dc7481c7266238175d52c1517775af44a262ab2d'
+            '8fe73f833e2b24fe9bbaf12220a9d41d5e4808c833d7e7878635a85429e6c474ae79189d75d1d4e77c78bafbe2855db37ded24c85768f9a9415a00a0456c9dce'
+            'a33c21cae1d271b9e93df0b2987fb8c3956018406c88cc6a847b7f0e228316020b45f0961b67bf52b70b36da7840920bf729cc552f5ea765110766806756f348')
+
+prepare() {
+  cd dde-kwin-$pkgver
+  sed -i 's|/usr/share/backgrounds/default_background.jpg|/usr/share/backgrounds/deepin/desktop.jpg|' plugins/kwineffects/multitasking/background.cpp
+  patch -R -p1 -i ../$pkgname-added-functions-from-their-forked-kwin.patch
+  patch -p1 -i ../$pkgname-tabbox-chameleon-rename.patch
+  patch -p1 -i ../$pkgname-build-fix.patch
+  patch -p1 -i ../$pkgname-unload-blur.patch
+  patch -p1 -i ../deepin-kwin-qt5.15.patch # Fix build with Qt 5.15
+  patch -p1 -i ../kwin-5.19.patch
+}
+
+build() {
+  cd dde-kwin-$pkgver
+  cmake . -GNinja -DCMAKE_INSTALL_PREFIX=/usr -DKWIN_VERSION=$(expac %v kwin | cut -d - -f 1)
+  ninja
+}
+
+package() {
+  cd dde-kwin-$pkgver
+  DESTDIR="$pkgdir" ninja install
+
+  chmod +x "$pkgdir"/usr/bin/kwin_no_scale
+}

Deleted: deepin-kwin-qt5.15.patch
===================================================================
--- deepin-kwin-qt5.15.patch	2020-08-28 08:57:54 UTC (rev 690310)
+++ deepin-kwin-qt5.15.patch	2020-08-28 08:58:08 UTC (rev 690311)
@@ -1,24 +0,0 @@
-diff --git a/plugins/kdecoration/chameleon.h b/plugins/kdecoration/chameleon.h
-index 3d164ca..a716a7a 100644
---- a/plugins/kdecoration/chameleon.h
-+++ b/plugins/kdecoration/chameleon.h
-@@ -32,6 +32,7 @@
- #include <QDir>
- #include <QSettings>
- #include <QScreen>
-+#include <QPainterPath>
- 
- class Settings;
- class ChameleonWindowTheme;
-diff --git a/plugins/kwineffects/scissor-window/scissorwindow.cpp b/plugins/kwineffects/scissor-window/scissorwindow.cpp
-index eb17483..faa898e 100644
---- a/plugins/kwineffects/scissor-window/scissorwindow.cpp
-+++ b/plugins/kwineffects/scissor-window/scissorwindow.cpp
-@@ -28,6 +28,7 @@
- #include <kwingltexture.h>
- 
- #include <QPainter>
-+#include <QPainterPath>
- #include <QExplicitlySharedDataPointer>
- #include <QSignalBlocker>
- 

Copied: deepin-kwin/repos/community-x86_64/deepin-kwin-qt5.15.patch (from rev 690310, deepin-kwin/trunk/deepin-kwin-qt5.15.patch)
===================================================================
--- deepin-kwin-qt5.15.patch	                        (rev 0)
+++ deepin-kwin-qt5.15.patch	2020-08-28 08:58:08 UTC (rev 690311)
@@ -0,0 +1,24 @@
+diff --git a/plugins/kdecoration/chameleon.h b/plugins/kdecoration/chameleon.h
+index 3d164ca..a716a7a 100644
+--- a/plugins/kdecoration/chameleon.h
++++ b/plugins/kdecoration/chameleon.h
+@@ -32,6 +32,7 @@
+ #include <QDir>
+ #include <QSettings>
+ #include <QScreen>
++#include <QPainterPath>
+ 
+ class Settings;
+ class ChameleonWindowTheme;
+diff --git a/plugins/kwineffects/scissor-window/scissorwindow.cpp b/plugins/kwineffects/scissor-window/scissorwindow.cpp
+index eb17483..faa898e 100644
+--- a/plugins/kwineffects/scissor-window/scissorwindow.cpp
++++ b/plugins/kwineffects/scissor-window/scissorwindow.cpp
+@@ -28,6 +28,7 @@
+ #include <kwingltexture.h>
+ 
+ #include <QPainter>
++#include <QPainterPath>
+ #include <QExplicitlySharedDataPointer>
+ #include <QSignalBlocker>
+ 

Copied: deepin-kwin/repos/community-x86_64/deepin-kwin-unload-blur.patch (from rev 690310, deepin-kwin/trunk/deepin-kwin-unload-blur.patch)
===================================================================
--- deepin-kwin-unload-blur.patch	                        (rev 0)
+++ deepin-kwin-unload-blur.patch	2020-08-28 08:58:08 UTC (rev 690311)
@@ -0,0 +1,66 @@
+From 2a1753972eac4345e864d6f4ec795a9fda48fda1 Mon Sep 17 00:00:00 2001
+From: Felix Yan <felixonmars at archlinux.org>
+Date: Sun, 17 May 2020 23:46:26 +0800
+Subject: [PATCH] fix: make sure kwin's builtin blur is unloaded
+
+---
+ plugins/kwineffects/blur/blur.cpp | 24 ++++++++++++++----------
+ plugins/kwineffects/blur/blur.h   |  1 +
+ 2 files changed, 15 insertions(+), 10 deletions(-)
+
+diff --git a/plugins/kwineffects/blur/blur.cpp b/plugins/kwineffects/blur/blur.cpp
+index b5cae9e..6f38429 100644
+--- a/plugins/kwineffects/blur/blur.cpp
++++ b/plugins/kwineffects/blur/blur.cpp
+@@ -41,16 +41,7 @@ static const QByteArray s_blurAtomName = QByteArrayLiteral("_KDE_NET_WM_BLUR_BEH
+ 
+ BlurEffect::BlurEffect(QObject *, const QVariantList &)
+ {
+-    // 禁用kwin自己的模糊特效,防止两个特效之间出现冲突
+-    {
+-        bool blur_loaded = false;
+-        QMetaObject::invokeMethod(effects, "isEffectLoaded", Qt::DirectConnection, Q_RETURN_ARG(bool, blur_loaded), Q_ARG(QString, "blur"));
+-
+-        if (blur_loaded) {
+-            // qWarning() << "will try unload builtIn blur effect of kwin";
+-            QMetaObject::invokeMethod(effects, "unloadEffect", Qt::DirectConnection, Q_ARG(QString, "blur"));
+-        }
+-    }
++    unloadBuiltinBlur();
+ 
+     m_shader = new BlurShader(this);
+ 
+@@ -687,8 +678,21 @@ void BlurEffect::generateNoiseTexture()
+     m_noiseTexture.setWrapMode(GL_REPEAT);
+ }
+ 
++void BlurEffect::unloadBuiltinBlur()
++// 禁用kwin自己的模糊特效,防止两个特效之间出现冲突
++{
++    bool blur_loaded = false;
++    QMetaObject::invokeMethod(effects, "isEffectLoaded", Qt::DirectConnection, Q_RETURN_ARG(bool, blur_loaded), Q_ARG(QString, "blur"));
++
++    if (blur_loaded) {
++        qWarning() << "will try unload builtIn blur effect of kwin";
++        QMetaObject::invokeMethod(effects, "unloadEffect", Qt::DirectConnection, Q_ARG(QString, "blur"));
++    }
++}
++
+ void BlurEffect::doBlur(const QRegion& shape, const QRect& screen, const float opacity, const QMatrix4x4 &screenProjection, bool isDock, QRect windowRect)
+ {
++    unloadBuiltinBlur();
+     // Blur would not render correctly on a secondary monitor because of wrong coordinates
+     // BUG: 393723
+     const int xTranslate = -screen.x();
+diff --git a/plugins/kwineffects/blur/blur.h b/plugins/kwineffects/blur/blur.h
+index 7c76a82..ac0c21e 100644
+--- a/plugins/kwineffects/blur/blur.h
++++ b/plugins/kwineffects/blur/blur.h
+@@ -88,6 +88,7 @@ public Q_SLOTS:
+     void uploadRegion(QVector2D *&map, const QRegion &region, const int downSampleIterations);
+     void uploadGeometry(GLVertexBuffer *vbo, const QRegion &blurRegion, const QRegion &windowRegion);
+     void generateNoiseTexture();
++    void unloadBuiltinBlur();
+ 
+     void upscaleRenderToScreen(GLVertexBuffer *vbo, int vboStart, int blurRectCount, QMatrix4x4 screenProjection, QPoint windowPosition);
+     void downSampleTexture(GLVertexBuffer *vbo, int blurRectCount);

Deleted: kwin-5.19.patch
===================================================================
--- kwin-5.19.patch	2020-08-28 08:57:54 UTC (rev 690310)
+++ kwin-5.19.patch	2020-08-28 08:58:08 UTC (rev 690311)
@@ -1,124 +0,0 @@
-commit fabc394472e1b8b8dea11497f56990bc9a1432bf
-Author: Felix Yan <felixonmars at archlinux.org>
-Date:   Wed Jun 10 23:10:29 2020 +0800
-
-    fix: compatibility with kwin 5.19
-
-diff --git a/plugins/platforms/lib/kwinutils.cpp b/plugins/platforms/lib/kwinutils.cpp
-index ed68ec8..f01a91e 100644
---- a/plugins/platforms/lib/kwinutils.cpp
-+++ b/plugins/platforms/lib/kwinutils.cpp
-@@ -589,7 +589,7 @@ QObject *KWinUtils::tabBox()
-
- QObject *KWinUtils::cursor()
- {
--    return KWin::Cursor::s_self;
-+    return nullptr; //KWin::Cursor;
- }
-
- QObject *KWinUtils::virtualDesktop()
-diff --git a/plugins/kwineffects/blur/blur.cpp b/plugins/kwineffects/blur/blur.cpp
-index b5cae9e..0354bc0 100644
---- a/plugins/kwineffects/blur/blur.cpp
-+++ b/plugins/kwineffects/blur/blur.cpp
-@@ -32,10 +32,10 @@
- #include <cmath> // for ceil()
- #include <QTimer>
- 
--#include <KWayland/Server/surface_interface.h>
--#include <KWayland/Server/blur_interface.h>
--#include <KWayland/Server/shadow_interface.h>
--#include <KWayland/Server/display.h>
-+#include <KWaylandServer/surface_interface.h>
-+#include <KWaylandServer/blur_interface.h>
-+#include <KWaylandServer/shadow_interface.h>
-+#include <KWaylandServer/display.h>
- 
- static const QByteArray s_blurAtomName = QByteArrayLiteral("_KDE_NET_WM_BLUR_BEHIND_REGION");
- 
-@@ -61,10 +61,9 @@ BlurEffect::BlurEffect(QObject *, const QVariantList &)
-     //     Should be included in _NET_SUPPORTED instead.
-     if (m_shader && m_shader->isValid() && m_renderTargetsValid) {
-         net_wm_blur_region = effects->announceSupportProperty(s_blurAtomName, this);
--        KWayland::Server::Display *display = effects->waylandDisplay();
-+        KWaylandServer::Display *display = effects->waylandDisplay();
-         if (display) {
-             m_blurManager = display->createBlurManager(this);
--            m_blurManager->create();
-         }
-     } else {
-         net_wm_blur_region = 0;
-@@ -310,7 +309,7 @@ void BlurEffect::updateBlurRegion(EffectWindow *w) const
-         }
-     }
- 
--    KWayland::Server::SurfaceInterface *surf = w->surface();
-+    KWaylandServer::SurfaceInterface *surf = w->surface();
- 
-     if (surf && surf->blur()) {
-         region = surf->blur()->region();
-@@ -338,10 +337,10 @@ void BlurEffect::updateBlurRegion(EffectWindow *w) const
- 
- void BlurEffect::slotWindowAdded(EffectWindow *w)
- {
--    KWayland::Server::SurfaceInterface *surf = w->surface();
-+    KWaylandServer::SurfaceInterface *surf = w->surface();
- 
-     if (surf) {
--        windowBlurChangedConnections[w] = connect(surf, &KWayland::Server::SurfaceInterface::blurChanged, this, [this, w] () {
-+        windowBlurChangedConnections[w] = connect(surf, &KWaylandServer::SurfaceInterface::blurChanged, this, [this, w] () {
-             if (w) {
-                 updateBlurRegion(w);
-             }
-@@ -445,7 +444,7 @@ QRegion BlurEffect::blurRegion(const EffectWindow *w) const
-         const QRegion appRegion = qvariant_cast<QRegion>(value);
-         if (!appRegion.isEmpty()) {
-             if (w->decorationHasAlpha() && effects->decorationSupportsBlurBehind()) {
--                region = w->shape();
-+                region = w->shape() & w->rect();
-                 region -= w->decorationInnerRect();
-             }
-             region |= appRegion.translated(w->contentsRect().topLeft()) &
-@@ -453,12 +452,12 @@ QRegion BlurEffect::blurRegion(const EffectWindow *w) const
-         } else {
-             // An empty region means that the blur effect should be enabled
-             // for the whole window.
--            region = w->shape();
-+            region = w->shape() & w->rect();
-         }
-     } else if (w->decorationHasAlpha() && effects->decorationSupportsBlurBehind()) {
-         // If the client hasn't specified a blur region, we'll only enable
-         // the effect behind the decoration.
--        region = w->shape();
-+        region = w->shape() & w->rect();
-         region -= w->decorationInnerRect();
-     }
- 
-diff --git a/plugins/kwineffects/blur/blur.h b/plugins/kwineffects/blur/blur.h
-index 7c76a82..53740ef 100644
---- a/plugins/kwineffects/blur/blur.h
-+++ b/plugins/kwineffects/blur/blur.h
-@@ -31,13 +31,10 @@
- 
- using namespace KWin;
- 
--namespace KWayland
--{
--namespace Server
-+namespace KWaylandServer
- {
- class BlurManagerInterface;
- }
--}
- 
- static const int borderSize = 5;
- 
-@@ -131,7 +128,7 @@ private:
-     QVector <BlurValuesStruct> blurStrengthValues;
- 
-     QMap <EffectWindow*, QMetaObject::Connection> windowBlurChangedConnections;
--    KWayland::Server::BlurManagerInterface *m_blurManager = nullptr;
-+    KWaylandServer::BlurManagerInterface *m_blurManager = nullptr;
- };
- 
- inline

Copied: deepin-kwin/repos/community-x86_64/kwin-5.19.patch (from rev 690310, deepin-kwin/trunk/kwin-5.19.patch)
===================================================================
--- kwin-5.19.patch	                        (rev 0)
+++ kwin-5.19.patch	2020-08-28 08:58:08 UTC (rev 690311)
@@ -0,0 +1,124 @@
+commit fabc394472e1b8b8dea11497f56990bc9a1432bf
+Author: Felix Yan <felixonmars at archlinux.org>
+Date:   Wed Jun 10 23:10:29 2020 +0800
+
+    fix: compatibility with kwin 5.19
+
+diff --git a/plugins/platforms/lib/kwinutils.cpp b/plugins/platforms/lib/kwinutils.cpp
+index ed68ec8..f01a91e 100644
+--- a/plugins/platforms/lib/kwinutils.cpp
++++ b/plugins/platforms/lib/kwinutils.cpp
+@@ -589,7 +589,7 @@ QObject *KWinUtils::tabBox()
+
+ QObject *KWinUtils::cursor()
+ {
+-    return KWin::Cursor::s_self;
++    return nullptr; //KWin::Cursor;
+ }
+
+ QObject *KWinUtils::virtualDesktop()
+diff --git a/plugins/kwineffects/blur/blur.cpp b/plugins/kwineffects/blur/blur.cpp
+index b5cae9e..0354bc0 100644
+--- a/plugins/kwineffects/blur/blur.cpp
++++ b/plugins/kwineffects/blur/blur.cpp
+@@ -32,10 +32,10 @@
+ #include <cmath> // for ceil()
+ #include <QTimer>
+ 
+-#include <KWayland/Server/surface_interface.h>
+-#include <KWayland/Server/blur_interface.h>
+-#include <KWayland/Server/shadow_interface.h>
+-#include <KWayland/Server/display.h>
++#include <KWaylandServer/surface_interface.h>
++#include <KWaylandServer/blur_interface.h>
++#include <KWaylandServer/shadow_interface.h>
++#include <KWaylandServer/display.h>
+ 
+ static const QByteArray s_blurAtomName = QByteArrayLiteral("_KDE_NET_WM_BLUR_BEHIND_REGION");
+ 
+@@ -61,10 +61,9 @@ BlurEffect::BlurEffect(QObject *, const QVariantList &)
+     //     Should be included in _NET_SUPPORTED instead.
+     if (m_shader && m_shader->isValid() && m_renderTargetsValid) {
+         net_wm_blur_region = effects->announceSupportProperty(s_blurAtomName, this);
+-        KWayland::Server::Display *display = effects->waylandDisplay();
++        KWaylandServer::Display *display = effects->waylandDisplay();
+         if (display) {
+             m_blurManager = display->createBlurManager(this);
+-            m_blurManager->create();
+         }
+     } else {
+         net_wm_blur_region = 0;
+@@ -310,7 +309,7 @@ void BlurEffect::updateBlurRegion(EffectWindow *w) const
+         }
+     }
+ 
+-    KWayland::Server::SurfaceInterface *surf = w->surface();
++    KWaylandServer::SurfaceInterface *surf = w->surface();
+ 
+     if (surf && surf->blur()) {
+         region = surf->blur()->region();
+@@ -338,10 +337,10 @@ void BlurEffect::updateBlurRegion(EffectWindow *w) const
+ 
+ void BlurEffect::slotWindowAdded(EffectWindow *w)
+ {
+-    KWayland::Server::SurfaceInterface *surf = w->surface();
++    KWaylandServer::SurfaceInterface *surf = w->surface();
+ 
+     if (surf) {
+-        windowBlurChangedConnections[w] = connect(surf, &KWayland::Server::SurfaceInterface::blurChanged, this, [this, w] () {
++        windowBlurChangedConnections[w] = connect(surf, &KWaylandServer::SurfaceInterface::blurChanged, this, [this, w] () {
+             if (w) {
+                 updateBlurRegion(w);
+             }
+@@ -445,7 +444,7 @@ QRegion BlurEffect::blurRegion(const EffectWindow *w) const
+         const QRegion appRegion = qvariant_cast<QRegion>(value);
+         if (!appRegion.isEmpty()) {
+             if (w->decorationHasAlpha() && effects->decorationSupportsBlurBehind()) {
+-                region = w->shape();
++                region = w->shape() & w->rect();
+                 region -= w->decorationInnerRect();
+             }
+             region |= appRegion.translated(w->contentsRect().topLeft()) &
+@@ -453,12 +452,12 @@ QRegion BlurEffect::blurRegion(const EffectWindow *w) const
+         } else {
+             // An empty region means that the blur effect should be enabled
+             // for the whole window.
+-            region = w->shape();
++            region = w->shape() & w->rect();
+         }
+     } else if (w->decorationHasAlpha() && effects->decorationSupportsBlurBehind()) {
+         // If the client hasn't specified a blur region, we'll only enable
+         // the effect behind the decoration.
+-        region = w->shape();
++        region = w->shape() & w->rect();
+         region -= w->decorationInnerRect();
+     }
+ 
+diff --git a/plugins/kwineffects/blur/blur.h b/plugins/kwineffects/blur/blur.h
+index 7c76a82..53740ef 100644
+--- a/plugins/kwineffects/blur/blur.h
++++ b/plugins/kwineffects/blur/blur.h
+@@ -31,13 +31,10 @@
+ 
+ using namespace KWin;
+ 
+-namespace KWayland
+-{
+-namespace Server
++namespace KWaylandServer
+ {
+ class BlurManagerInterface;
+ }
+-}
+ 
+ static const int borderSize = 5;
+ 
+@@ -131,7 +128,7 @@ private:
+     QVector <BlurValuesStruct> blurStrengthValues;
+ 
+     QMap <EffectWindow*, QMetaObject::Connection> windowBlurChangedConnections;
+-    KWayland::Server::BlurManagerInterface *m_blurManager = nullptr;
++    KWaylandServer::BlurManagerInterface *m_blurManager = nullptr;
+ };
+ 
+ inline



More information about the arch-commits mailing list