summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorLuoYi2021-11-06 14:26:50 +0800
committerLuoYi2021-11-06 14:26:50 +0800
commit7218870add342087c12eba80304f3dee4f1d8261 (patch)
tree9a18f86f84f9b843a16341ae6050dc57f40da3bd
parentfae2cfbdbfdd1492564fae146437fbd4eda41206 (diff)
downloadaur-7218870add342087c12eba80304f3dee4f1d8261.tar.gz
Set linear filter to MetaClipEffect
-rw-r--r--.SRCINFO6
-rw-r--r--PKGBUILD4
-rw-r--r--meta_clip_effect.c22
-rw-r--r--shell_blur_effect_40.5.patch8
4 files changed, 31 insertions, 9 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 942a0bb1ff9a..f14ccf39c673 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -46,12 +46,12 @@ pkgbase = mutter-rounded
source = mutter_setting::https://gitlab.gnome.org/lluo/mutter-rounded-setting/uploads/8f8e3f8d39f31e602c2d09884a6c5dd1/main.js
sha256sums = SKIP
sha256sums = 0c2fc381c7529d012d3d8a4368941db7b60ce6128005008b5ddfb4da16dc2b83
- sha256sums = 579f8b6164beba2b7ee273bb6843f1681f697d59362d1d97a414cc484ef9b458
- sha256sums = c47f3a998e5b8dbb53951be450a5f561f91ad8803a653dab2bcee69b1400e6d4
+ sha256sums = 895f35f5e8a458c71b4312061cf7d2b0108a3c6df4b0324ab342c5a3576ee09a
+ sha256sums = 622ec46c9a1e8e675adbc3d852467e46c8d3101caa0260bf63b4c1a1b87a24a1
sha256sums = 2ec553a260497f0ac0180512201c9819b10159a15fcbc6d5007932d8e2a44844
sha256sums = a02e991156dc3b4418899b73a2e65187a43990851fb235ea128ed7650c839a3b
sha256sums = 8fb024306843153b28db2f5347775ef7e8add1dd846345148a572ad5336e168b
sha256sums = d58056b5028e1cf02a029036792f52e3429bd5f71a9403b5be93d95a7ba8252a
- sha256sums = 0182ba6d60c1bcc13d959b018662ea0bc1cc2347e6648fd455212fa3221dfd79
+ sha256sums = c0eff82301060044d231f0b674025e5a00d1152e515e08d16fd18363da5187e5
pkgname = mutter-rounded
diff --git a/PKGBUILD b/PKGBUILD
index 1647711720a1..a3d28f2878d8 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -46,8 +46,8 @@ source=("$_mutter_src"
"$_setting_src")
sha256sums=('SKIP'
'0c2fc381c7529d012d3d8a4368941db7b60ce6128005008b5ddfb4da16dc2b83'
- '579f8b6164beba2b7ee273bb6843f1681f697d59362d1d97a414cc484ef9b458'
- 'c47f3a998e5b8dbb53951be450a5f561f91ad8803a653dab2bcee69b1400e6d4'
+ '895f35f5e8a458c71b4312061cf7d2b0108a3c6df4b0324ab342c5a3576ee09a'
+ '622ec46c9a1e8e675adbc3d852467e46c8d3101caa0260bf63b4c1a1b87a24a1'
'2ec553a260497f0ac0180512201c9819b10159a15fcbc6d5007932d8e2a44844'
'a02e991156dc3b4418899b73a2e65187a43990851fb235ea128ed7650c839a3b'
'8fb024306843153b28db2f5347775ef7e8add1dd846345148a572ad5336e168b'
diff --git a/meta_clip_effect.c b/meta_clip_effect.c
index 5759d2f81d43..408eefde9dd1 100644
--- a/meta_clip_effect.c
+++ b/meta_clip_effect.c
@@ -35,6 +35,26 @@ meta_clip_effect_set_actor(ClutterActorMeta *meta,
priv->actor = clutter_actor_meta_get_actor(meta);
}
+static gboolean
+meta_clip_effect_pre_paint (ClutterEffect *effect,
+ ClutterPaintNode *node,
+ ClutterPaintContext *paint_context)
+{
+ gboolean res =
+ CLUTTER_EFFECT_CLASS (meta_clip_effect_parent_class)->pre_paint(effect, node, paint_context);
+ MetaClipEffect *clip_effect = META_CLIP_EFFECT (effect);
+ MetaClipEffectPrivate *priv =
+ meta_clip_effect_get_instance_private(META_CLIP_EFFECT(clip_effect));
+
+ // seems CutterOffscreenEffect will set COGL_PIPELINE_FILTER_NEAREST
+ // as layer filter, force set linear filter before paint now
+ cogl_pipeline_set_layer_filters (priv->pipeline,
+ 0,
+ COGL_PIPELINE_FILTER_LINEAR,
+ COGL_PIPELINE_FILTER_LINEAR);
+ return res;
+}
+
static void
meta_clip_effect_dispose(GObject *gobject)
{
@@ -54,10 +74,12 @@ static void
meta_clip_effect_class_init(MetaClipEffectClass *klass)
{
GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
+ ClutterEffectClass *effect_class = CLUTTER_EFFECT_CLASS (klass);
ClutterOffscreenEffectClass *offscreen_class = CLUTTER_OFFSCREEN_EFFECT_CLASS (klass);
ClutterActorMetaClass *meta_class = CLUTTER_ACTOR_META_CLASS(klass);
meta_class->set_actor = meta_clip_effect_set_actor;
+ effect_class->pre_paint = meta_clip_effect_pre_paint;
offscreen_class->create_pipeline = meta_clip_effect_class_create_pipeline;
gobject_class->dispose = meta_clip_effect_dispose;
}
diff --git a/shell_blur_effect_40.5.patch b/shell_blur_effect_40.5.patch
index 2189ab285210..685c26a00bd7 100644
--- a/shell_blur_effect_40.5.patch
+++ b/shell_blur_effect_40.5.patch
@@ -1,6 +1,6 @@
diff -Narup a/src/shell-blur-effect.c b/src/shell-blur-effect.c
---- a/src/shell-blur-effect.c 2021-10-28 21:09:19.663157558 +0800
-+++ b/src/shell-blur-effect.c 2021-10-28 21:09:19.663157558 +0800
+--- a/src/shell-blur-effect.c 2021-11-06 14:09:18.864228559 +0800
++++ b/src/shell-blur-effect.c 2021-11-06 14:09:18.864228559 +0800
@@ -22,6 +22,9 @@
#include "shell-enum-types.h"
@@ -426,8 +426,8 @@ diff -Narup a/src/shell-blur-effect.c b/src/shell-blur-effect.c
+ clutter_effect_queue_repaint (CLUTTER_EFFECT (self));
+}
diff -Narup a/src/shell-blur-effect.h b/src/shell-blur-effect.h
---- a/src/shell-blur-effect.h 2021-10-28 21:09:19.663157558 +0800
-+++ b/src/shell-blur-effect.h 2021-10-28 21:09:19.663157558 +0800
+--- a/src/shell-blur-effect.h 2021-11-06 14:09:18.864228559 +0800
++++ b/src/shell-blur-effect.h 2021-11-06 14:09:18.864228559 +0800
@@ -20,6 +20,10 @@
#pragma once