[arch-commits] Commit in deepin-kwin/trunk (PKGBUILD deepin-kwin-unload-blur.patch)
Felix Yan
felixonmars at archlinux.org
Fri Aug 28 08:57:54 UTC 2020
Date: Friday, August 28, 2020 @ 08:57:54
Author: felixonmars
Revision: 690310
upgpkg: deepin-kwin 5.2.0.1-1
Added:
deepin-kwin/trunk/deepin-kwin-unload-blur.patch
Modified:
deepin-kwin/trunk/PKGBUILD
-------------------------------+
PKGBUILD | 11 +++---
deepin-kwin-unload-blur.patch | 66 ++++++++++++++++++++++++++++++++++++++++
2 files changed, 71 insertions(+), 6 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2020-08-28 08:57:52 UTC (rev 690309)
+++ PKGBUILD 2020-08-28 08:57:54 UTC (rev 690310)
@@ -3,8 +3,8 @@
# Contributor: Xu Fasheng <fasheng.xu[AT]gmail.com>
pkgname=deepin-kwin
-pkgver=5.1.0.20
-pkgrel=3
+pkgver=5.2.0.1
+pkgrel=1
pkgdesc='KWin configures on DDE'
arch=('x86_64')
url="https://github.com/linuxdeepin/dde-kwin"
@@ -15,14 +15,14 @@
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-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=('23b50b1008751765bd59a4d4192e54e35dc019c2d59af992f96da15bea5dce0701e7ff55b8cb47caad5a302edefd3d2e2948f26f32f23d071d52a7113dec1754'
+sha512sums=('a7dfe0fd25b9ae9d306a4986dc260ed5a87ba569abe09e14232ba7cc677d9138f14016161d1d84221d98802bb88e412b6bce7c5e31418b327e3b643f5413eb4f'
'7ac1a577868b73314274d336287334acc5bf4ac06dde046c93e4c2d3f68a112389c8b0644d1cbc3fde5ba1c01f368676f4f34b4a1b7b6c97a5b73d66507d134d'
'3e10241050959b51bdd6bf752253af61a2b5899c3df5d84716bd1688d9292ff65d2b7d3aea8f61e896081a9bee013cb3f4c2f42f7915038f7f476120a44cf029'
- '800bb8770b4a6d835e27f33226f81dce92ddf10c295e02015419788e667e7d46b014d69bde73d03af8f0480c938526b48498368d2f16619689352f0e8e183912'
+ '9c5bf86510d0fbba36e71997f55eda1b197b26af7eeb0adb9e06e7e3cc86b32c00cd23dfca872f4043f76a1d9435f916aae73536f10c7b3fe7e79a6e74a309d2'
'1e246657161b2d3790c8c4e7f372f7426434d727eda6f3ad656962a86f56f16cbeee56f4ae77006d71bfc3e9dc7481c7266238175d52c1517775af44a262ab2d'
'8fe73f833e2b24fe9bbaf12220a9d41d5e4808c833d7e7878635a85429e6c474ae79189d75d1d4e77c78bafbe2855db37ded24c85768f9a9415a00a0456c9dce'
'a33c21cae1d271b9e93df0b2987fb8c3956018406c88cc6a847b7f0e228316020b45f0961b67bf52b70b36da7840920bf729cc552f5ea765110766806756f348')
@@ -30,7 +30,6 @@
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
Added: deepin-kwin-unload-blur.patch
===================================================================
--- deepin-kwin-unload-blur.patch (rev 0)
+++ deepin-kwin-unload-blur.patch 2020-08-28 08:57:54 UTC (rev 690310)
@@ -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 ®ion, 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);
More information about the arch-commits
mailing list