[arch-commits] Commit in mutter/trunk (5 files)
Date: Sunday, March 8, 2020 @ 01:37:07 Author: heftig Revision: 376942 3.36.0 Modified: mutter/trunk/PKGBUILD Deleted: mutter/trunk/0001-EGL-Include-EGL-eglmesaext.h.patch mutter/trunk/0002-surface-actor-wayland-Do-not-send-frame-callbacks-if.patch mutter/trunk/0003-xwayland-Do-not-queue-frame-callbacks-unconditionall.patch mutter/trunk/0004-background-Scale-monitor_area-after-texture-creation.patch -+ 0001-EGL-Include-EGL-eglmesaext.h.patch | 68 0002-surface-actor-wayland-Do-not-send-frame-callbacks-if.patch | 33 --- 0003-xwayland-Do-not-queue-frame-callbacks-unconditionall.patch | 64 --- 0004-background-Scale-monitor_area-after-texture-creation.patch | 85 -- PKGBUILD| 30 --- 5 files changed, 6 insertions(+), 274 deletions(-) Deleted: 0001-EGL-Include-EGL-eglmesaext.h.patch === --- 0001-EGL-Include-EGL-eglmesaext.h.patch 2020-03-08 01:34:59 UTC (rev 376941) +++ 0001-EGL-Include-EGL-eglmesaext.h.patch 2020-03-08 01:37:07 UTC (rev 376942) @@ -1,68 +0,0 @@ -From 8a521c28a7d38e75478527dffb4fbeef975ea429 Mon Sep 17 00:00:00 2001 -From: "Jan Alexander Steffens (heftig)" -Date: Sun, 20 Oct 2019 12:04:31 +0200 -Subject: [PATCH 1/4] EGL: Include EGL/eglmesaext.h - -The eglext.h shipped by libglvnd does not include the Mesa extensions, -unlike the header shipped in Mesa. - -Fixes https://gitlab.gnome.org/GNOME/mutter/issues/876 - cogl/cogl/meson.build | 2 +- - src/backends/meta-egl-ext.h | 1 + - src/backends/meta-egl.c | 1 + - src/backends/meta-egl.h | 1 + - 4 files changed, 4 insertions(+), 1 deletion(-) - -diff --git a/cogl/cogl/meson.build b/cogl/cogl/meson.build -index 1057ef955..9a642947d 100644 a/cogl/cogl/meson.build -+++ b/cogl/cogl/meson.build -@@ -48,7 +48,7 @@ cogl_gl_header_h = configure_file( - built_headers += [cogl_gl_header_h] - - if have_egl -- cogl_egl_includes_string = '#include \n#include ' -+ cogl_egl_includes_string = '#include \n#include \n#include ' - else - cogl_egl_includes_string = '' - endif -diff --git a/src/backends/meta-egl-ext.h b/src/backends/meta-egl-ext.h -index 8705e7d5b..db0b74f76 100644 a/src/backends/meta-egl-ext.h -+++ b/src/backends/meta-egl-ext.h -@@ -29,6 +29,7 @@ - - #include - #include -+#include - - /* - * This is a little different to the tests shipped with EGL implementations, -diff --git a/src/backends/meta-egl.c b/src/backends/meta-egl.c -index 6554be935..fdeff4f77 100644 a/src/backends/meta-egl.c -+++ b/src/backends/meta-egl.c -@@ -27,6 +27,7 @@ - - #include - #include -+#include - #include - #include - #include -diff --git a/src/backends/meta-egl.h b/src/backends/meta-egl.h -index f2a816445..4591e7d85 100644 a/src/backends/meta-egl.h -+++ b/src/backends/meta-egl.h -@@ -28,6 +28,7 @@ - - #include - #include -+#include - #include - - #define META_EGL_ERROR meta_egl_error_quark () --- -2.25.0 - Deleted: 0002-surface-actor-wayland-Do-not-send-frame-callbacks-if.patch === --- 0002-surface-actor-wayland-Do-not-send-frame-callbacks-if.patch 2020-03-08 01:34:59 UTC (rev 376941) +++ 0002-surface-actor-wayland-Do-not-send-frame-callbacks-if.patch 2020-03-08 01:37:07 UTC (rev 376942) @@ -1,33 +0,0 @@ -From 228e0cb9b15ac014e1e33a0c41fdeca8d988664a Mon Sep 17 00:00:00 2001 -From: Robert Mader -Date: Mon, 4 Nov 2019 11:45:13 +0100 -Subject: [PATCH 2/4] surface-actor-wayland: Do not send frame callbacks if the - actor is obscured - -`meta_surface_actor_is_obscured` implies that the actor got successfully culled -out and nothing of it will get painted. This includes that there are no clones, -no effects etc. In this cases we don't want to send frame callbacks, thus avoiding -unnecessary client work. - -https://gitlab.gnome.org/GNOME/mutter/merge_requests/918 - src/compositor/meta-surface-actor-wayland.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/src/compositor/meta-surface-actor-wayland.c b/src/compositor/meta-surface-actor-wayland.c -index 1c933d554..e16f53ff2 100644 a/src/compositor/meta-surface-actor-wayland.c -+++ b/src/compositor/meta-surface-actor-wayland.c -@@ -115,7 +115,8 @@ meta_surface_actor_wayland_paint (ClutterActor *actor) - { - MetaSurfaceActorWayland *self = META_SURFACE_ACTOR_WAYLAND (actor); - -- if (self->surface) -+ if (self->surface && -+ !meta_surface_actor_is_obscured (META_SURFACE_ACTOR (actor))) - { - MetaWaylandCompositor *compositor = self->surface->compositor; - --- -2.25.0 - Deleted: 0003-xwayland-Do-not-queue-frame-callbacks-unconditionall.patch === ---
[arch-commits] Commit in mutter/trunk (5 files)
Date: Sunday, February 2, 2020 @ 23:10:02 Author: heftig Revision: 374516 3.34.3+30+g4959ae8bc-1 Modified: mutter/trunk/0001-EGL-Include-EGL-eglmesaext.h.patch mutter/trunk/0002-surface-actor-wayland-Do-not-send-frame-callbacks-if.patch mutter/trunk/0003-xwayland-Do-not-queue-frame-callbacks-unconditionall.patch mutter/trunk/0004-background-Scale-monitor_area-after-texture-creation.patch mutter/trunk/PKGBUILD -+ 0001-EGL-Include-EGL-eglmesaext.h.patch |4 0002-surface-actor-wayland-Do-not-send-frame-callbacks-if.patch |4 0003-xwayland-Do-not-queue-frame-callbacks-unconditionall.patch |4 0004-background-Scale-monitor_area-after-texture-creation.patch | 65 +- PKGBUILD| 14 +- 5 files changed, 49 insertions(+), 42 deletions(-) Modified: 0001-EGL-Include-EGL-eglmesaext.h.patch === --- 0001-EGL-Include-EGL-eglmesaext.h.patch 2020-02-02 21:04:13 UTC (rev 374515) +++ 0001-EGL-Include-EGL-eglmesaext.h.patch 2020-02-02 23:10:02 UTC (rev 374516) @@ -1,4 +1,4 @@ -From 3003ab6efa28cf22486bb44f4786316fca91cb7b Mon Sep 17 00:00:00 2001 +From 8a521c28a7d38e75478527dffb4fbeef975ea429 Mon Sep 17 00:00:00 2001 From: "Jan Alexander Steffens (heftig)" Date: Sun, 20 Oct 2019 12:04:31 +0200 Subject: [PATCH 1/4] EGL: Include EGL/eglmesaext.h @@ -64,5 +64,5 @@ #define META_EGL_ERROR meta_egl_error_quark () -- -2.24.1 +2.25.0 Modified: 0002-surface-actor-wayland-Do-not-send-frame-callbacks-if.patch === --- 0002-surface-actor-wayland-Do-not-send-frame-callbacks-if.patch 2020-02-02 21:04:13 UTC (rev 374515) +++ 0002-surface-actor-wayland-Do-not-send-frame-callbacks-if.patch 2020-02-02 23:10:02 UTC (rev 374516) @@ -1,4 +1,4 @@ -From 548db532cd12082c2f98913150a5ab8a198f621d Mon Sep 17 00:00:00 2001 +From 228e0cb9b15ac014e1e33a0c41fdeca8d988664a Mon Sep 17 00:00:00 2001 From: Robert Mader Date: Mon, 4 Nov 2019 11:45:13 +0100 Subject: [PATCH 2/4] surface-actor-wayland: Do not send frame callbacks if the @@ -29,5 +29,5 @@ MetaWaylandCompositor *compositor = self->surface->compositor; -- -2.24.1 +2.25.0 Modified: 0003-xwayland-Do-not-queue-frame-callbacks-unconditionall.patch === --- 0003-xwayland-Do-not-queue-frame-callbacks-unconditionall.patch 2020-02-02 21:04:13 UTC (rev 374515) +++ 0003-xwayland-Do-not-queue-frame-callbacks-unconditionall.patch 2020-02-02 23:10:02 UTC (rev 374516) @@ -1,4 +1,4 @@ -From b5188b0032e9dad1e70030039e813273f866ab0f Mon Sep 17 00:00:00 2001 +From b063e2ceff469f7e086fe09113acbce8962899eb Mon Sep 17 00:00:00 2001 From: Robert Mader Date: Wed, 4 Dec 2019 18:54:42 +0100 Subject: [PATCH 3/4] xwayland: Do not queue frame callbacks unconditionally @@ -60,5 +60,5 @@ actor_surface_class->get_geometry_scale = xwayland_surface_get_geometry_scale; -- -2.24.1 +2.25.0 Modified: 0004-background-Scale-monitor_area-after-texture-creation.patch === --- 0004-background-Scale-monitor_area-after-texture-creation.patch 2020-02-02 21:04:13 UTC (rev 374515) +++ 0004-background-Scale-monitor_area-after-texture-creation.patch 2020-02-02 23:10:02 UTC (rev 374516) @@ -1,4 +1,4 @@ -From d662630a16b28e623ef3769c7ba9c02347f4775e Mon Sep 17 00:00:00 2001 +From a55610509dfd2f4371985678b252090fc0408548 Mon Sep 17 00:00:00 2001 From: Daniel van Vugt Date: Mon, 13 Jan 2020 21:02:39 +0800 Subject: [PATCH 4/4] background: Scale monitor_area after texture creation @@ -18,8 +18,8 @@ https://gitlab.gnome.org/GNOME/mutter/merge_requests/1004 --- - src/compositor/meta-background.c | 22 -- - 1 file changed, 16 insertions(+), 6 deletions(-) + src/compositor/meta-background.c | 32 +--- + 1 file changed, 21 insertions(+), 11 deletions(-) diff --git a/src/compositor/meta-background.c b/src/compositor/meta-background.c index 4a1ce0396..886ae3f67 100644 @@ -39,42 +39,47 @@ gboolean bare_region_visible = FALSE; + int native_width = monitor_area.width; + int native_height = monitor_area.height; - -- if (self->style != G_DESKTOP_BACKGROUND_STYLE_WALLPAPER) ++ + if (meta_is_stage_views_scaled ()) - { -- monitor_area.x *= monitor_scale; -- monitor_area.y *= monitor_scale; -- monitor_area.width *= monitor_scale; -- monitor_area.height *= monitor_scale; ++{ + native_width *= monitor_scale; + native_height *= monitor_scale; - } ++} ++ ++ if (monitor->texture == NULL) ++{ ++ CoglOffscreen *offscreen; ++ ++ monitor->texture
[arch-commits] Commit in mutter/trunk (5 files)
Date: Saturday, January 25, 2020 @ 12:30:49 Author: heftig Revision: 373913 3.34.3+14+g59e9b073a-1 Added: mutter/trunk/0004-background-Scale-monitor_area-after-texture-creation.patch Modified: mutter/trunk/0001-EGL-Include-EGL-eglmesaext.h.patch mutter/trunk/0002-surface-actor-wayland-Do-not-send-frame-callbacks-if.patch mutter/trunk/0003-xwayland-Do-not-queue-frame-callbacks-unconditionall.patch mutter/trunk/PKGBUILD -+ 0001-EGL-Include-EGL-eglmesaext.h.patch |4 0002-surface-actor-wayland-Do-not-send-frame-callbacks-if.patch |4 0003-xwayland-Do-not-queue-frame-callbacks-unconditionall.patch |4 0004-background-Scale-monitor_area-after-texture-creation.patch | 80 ++ PKGBUILD| 17 +- 5 files changed, 97 insertions(+), 12 deletions(-) Modified: 0001-EGL-Include-EGL-eglmesaext.h.patch === --- 0001-EGL-Include-EGL-eglmesaext.h.patch 2020-01-25 12:07:48 UTC (rev 373912) +++ 0001-EGL-Include-EGL-eglmesaext.h.patch 2020-01-25 12:30:49 UTC (rev 373913) @@ -1,7 +1,7 @@ -From f494725ec52f91c9f7cbb1c76cb52beb2a7e35d5 Mon Sep 17 00:00:00 2001 +From 3003ab6efa28cf22486bb44f4786316fca91cb7b Mon Sep 17 00:00:00 2001 From: "Jan Alexander Steffens (heftig)" Date: Sun, 20 Oct 2019 12:04:31 +0200 -Subject: [PATCH 1/3] EGL: Include EGL/eglmesaext.h +Subject: [PATCH 1/4] EGL: Include EGL/eglmesaext.h The eglext.h shipped by libglvnd does not include the Mesa extensions, unlike the header shipped in Mesa. Modified: 0002-surface-actor-wayland-Do-not-send-frame-callbacks-if.patch === --- 0002-surface-actor-wayland-Do-not-send-frame-callbacks-if.patch 2020-01-25 12:07:48 UTC (rev 373912) +++ 0002-surface-actor-wayland-Do-not-send-frame-callbacks-if.patch 2020-01-25 12:30:49 UTC (rev 373913) @@ -1,7 +1,7 @@ -From a2789eef9adbb8fb5e3ba1c278041996fa69eedc Mon Sep 17 00:00:00 2001 +From 548db532cd12082c2f98913150a5ab8a198f621d Mon Sep 17 00:00:00 2001 From: Robert Mader Date: Mon, 4 Nov 2019 11:45:13 +0100 -Subject: [PATCH 2/3] surface-actor-wayland: Do not send frame callbacks if the +Subject: [PATCH 2/4] surface-actor-wayland: Do not send frame callbacks if the actor is obscured `meta_surface_actor_is_obscured` implies that the actor got successfully culled Modified: 0003-xwayland-Do-not-queue-frame-callbacks-unconditionall.patch === --- 0003-xwayland-Do-not-queue-frame-callbacks-unconditionall.patch 2020-01-25 12:07:48 UTC (rev 373912) +++ 0003-xwayland-Do-not-queue-frame-callbacks-unconditionall.patch 2020-01-25 12:30:49 UTC (rev 373913) @@ -1,7 +1,7 @@ -From 722021dc1827bd75a7f4086f0ce55da6b0214a34 Mon Sep 17 00:00:00 2001 +From b5188b0032e9dad1e70030039e813273f866ab0f Mon Sep 17 00:00:00 2001 From: Robert Mader Date: Wed, 4 Dec 2019 18:54:42 +0100 -Subject: [PATCH 3/3] xwayland: Do not queue frame callbacks unconditionally +Subject: [PATCH 3/4] xwayland: Do not queue frame callbacks unconditionally The removed comment is not longer true: XWayland schedules its VSYNC from frame callbacks nowadays. Only sending callbacks when the surface Added: 0004-background-Scale-monitor_area-after-texture-creation.patch === --- 0004-background-Scale-monitor_area-after-texture-creation.patch (rev 0) +++ 0004-background-Scale-monitor_area-after-texture-creation.patch 2020-01-25 12:30:49 UTC (rev 373913) @@ -0,0 +1,80 @@ +From d662630a16b28e623ef3769c7ba9c02347f4775e Mon Sep 17 00:00:00 2001 +From: Daniel van Vugt +Date: Mon, 13 Jan 2020 21:02:39 +0800 +Subject: [PATCH 4/4] background: Scale monitor_area after texture creation + +Scaling the `monitor_area` before texture creation was just wasting +megabytes of memory on resolution that the monitor can't display. This +was also hurting runtime performance. + +Example: + + Monitor is natively 1920x1080 and scale set to 3. + + Before: The monitor texture allocated was 5760x3250x4 = 74.6 MB + After: The monitor texture allocated is 1920x1080x4 = 8.3 MB + +Closes: https://gitlab.gnome.org/GNOME/gnome-shell/issues/2118 + +https://gitlab.gnome.org/GNOME/mutter/merge_requests/1004 +--- + src/compositor/meta-background.c | 22 -- + 1 file changed, 16 insertions(+), 6 deletions(-) + +diff --git a/src/compositor/meta-background.c b/src/compositor/meta-background.c +index 4a1ce0396..886ae3f67 100644 +--- a/src/compositor/meta-background.c b/src/compositor/meta-background.c +@@ -20,6 +20,7 @@ + #include "config.h" + + #include "compositor/meta-background-private.h" ++#include "backends/meta-backend-private.h" + + #include + +@@ -799,26