Update to 46.rc

This commit is contained in:
Florian Müllner
2024-03-03 16:24:44 +01:00
parent c55e355ba9
commit 529cce690c
5 changed files with 58 additions and 22 deletions

1
.gitignore vendored
View File

@@ -217,3 +217,4 @@ mutter-2.31.5.tar.bz2
/mutter-45.2.tar.xz
/mutter-46.alpha.tar.xz
/mutter-46.beta.tar.xz
/mutter-46.rc.tar.xz

View File

@@ -1,4 +1,4 @@
From 264bd8c2b7dab84d0f0e11ad6b99d8d5de4c5e08 Mon Sep 17 00:00:00 2001
From 1d5c47f8970c2027de5f6fa49b84de73d55b419b Mon Sep 17 00:00:00 2001
From: Adam Williamson <awilliam@redhat.com>
Date: Thu, 5 Oct 2023 13:09:46 -0700
Subject: [PATCH] Revert "x11: Use input region from frame window for decorated
@@ -15,7 +15,7 @@ Closes: https://gitlab.gnome.org/GNOME/mutter/-/issues/3068
2 files changed, 10 insertions(+), 26 deletions(-)
diff --git a/src/core/frame.c b/src/core/frame.c
index 9417685706..2193f1fba2 100644
index 145f0b7bd7..1c90ce4231 100644
--- a/src/core/frame.c
+++ b/src/core/frame.c
@@ -35,7 +35,6 @@
@@ -26,7 +26,7 @@ index 9417685706..2193f1fba2 100644
#define EVENT_MASK (SubstructureRedirectMask | \
StructureNotifyMask | SubstructureNotifyMask | \
@@ -109,9 +108,6 @@ meta_window_set_frame_xwindow (MetaWindow *window,
@@ -109,9 +108,6 @@ meta_window_x11_set_frame_xwindow (MetaWindow *window,
XChangeWindowAttributes (x11_display->xdisplay,
frame->xwindow, CWEventMask, &attrs);
@@ -47,12 +47,12 @@ index 9417685706..2193f1fba2 100644
meta_window_x11_get_xwindow (window),
x11_display->atom__MUTTER_NEEDS_FRAME);
diff --git a/src/x11/window-x11.c b/src/x11/window-x11.c
index 95b6b55a02..a1890bb023 100644
index 745c45db18..8edff883c9 100644
--- a/src/x11/window-x11.c
+++ b/src/x11/window-x11.c
@@ -2087,10 +2087,6 @@ meta_window_x11_constructed (GObject *object)
priv->border_width = attrs.border_width;
priv->xclient_leader = None;
@@ -2082,10 +2082,6 @@ meta_window_x11_constructed (GObject *object)
priv->keys_grabbed = FALSE;
priv->grab_on_frame = FALSE;
- g_signal_connect (window, "notify::decorated",
- G_CALLBACK (meta_window_x11_update_input_region),
@@ -61,7 +61,7 @@ index 95b6b55a02..a1890bb023 100644
G_OBJECT_CLASS (meta_window_x11_parent_class)->constructed (object);
}
@@ -2386,21 +2382,16 @@ meta_window_x11_update_input_region (MetaWindow *window)
@@ -2400,21 +2396,16 @@ meta_window_x11_update_input_region (MetaWindow *window)
g_autoptr (MtkRegion) region = NULL;
MetaWindowX11 *window_x11 = META_WINDOW_X11 (window);
MetaWindowX11Private *priv = meta_window_x11_get_instance_private (window_x11);
@@ -75,7 +75,7 @@ index 95b6b55a02..a1890bb023 100644
{
- if (!window->frame)
- {
- if (window->input_region)
- if (priv->input_region)
- meta_window_set_input_region (window, NULL);
- return;
- }
@@ -84,13 +84,13 @@ index 95b6b55a02..a1890bb023 100644
- else
- {
- xwindow = priv->xwindow;
+ if (window->input_region)
+ if (priv->input_region)
+ meta_window_set_input_region (window, NULL);
+ return;
}
if (META_X11_DISPLAY_HAS_SHAPE (x11_display))
@@ -2412,7 +2403,7 @@ meta_window_x11_update_input_region (MetaWindow *window)
@@ -2426,7 +2417,7 @@ meta_window_x11_update_input_region (MetaWindow *window)
mtk_x11_error_trap_push (x11_display->xdisplay);
rects = XShapeGetRectangles (x11_display->xdisplay,
@@ -99,7 +99,7 @@ index 95b6b55a02..a1890bb023 100644
ShapeInput,
&n_rects,
&ordering);
@@ -2466,8 +2457,8 @@ meta_window_x11_update_input_region (MetaWindow *window)
@@ -2480,8 +2471,8 @@ meta_window_x11_update_input_region (MetaWindow *window)
client_area.x = 0;
client_area.y = 0;
@@ -111,5 +111,5 @@ index 95b6b55a02..a1890bb023 100644
/* The shape we get back from the client may have coordinates
* outside of the frame. The X SHAPE Extension requires that
--
2.43.0
2.43.2

View File

@@ -1,4 +1,4 @@
From 9efcc35102b4c41265e93461b35a1193b3d5822d Mon Sep 17 00:00:00 2001
From b3b5aa01c63aee1df079e0394b0e6372df1838d0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Fri, 12 May 2017 13:40:31 +0200
Subject: [PATCH] window-actor: Special-case shaped Java windows
@@ -9,13 +9,15 @@ but now their compliance tests are broken. Make them happy again
by special-casing shaped Java windows.
---
src/compositor/meta-window-actor-x11.c | 8 ++++++++
1 file changed, 8 insertions(+)
src/x11/window-x11-private.h | 2 ++
src/x11/window-x11.c | 9 +++++++++
3 files changed, 19 insertions(+)
diff --git a/src/compositor/meta-window-actor-x11.c b/src/compositor/meta-window-actor-x11.c
index b7032e0ba..b05d5e158 100644
index 19827af331..7d5e46ac75 100644
--- a/src/compositor/meta-window-actor-x11.c
+++ b/src/compositor/meta-window-actor-x11.c
@@ -528,6 +528,14 @@ has_shadow (MetaWindowActorX11 *actor_x11)
@@ -424,6 +424,14 @@ has_shadow (MetaWindowActorX11 *actor_x11)
*/
if (window->has_custom_frame_extents)
return FALSE;
@@ -25,11 +27,44 @@ index b7032e0ba..b05d5e158 100644
+ * shadows; make its compliance tests happy to give it what it wants ...
+ */
+ if (g_strcmp0 (window->res_name, "sun-awt-X11-XWindowPeer") == 0 &&
+ window->shape_region != NULL)
+ meta_window_x11_is_shaped (window))
+ return FALSE;
/*
* Generate shadows for all other windows.
--
2.23.0
diff --git a/src/x11/window-x11-private.h b/src/x11/window-x11-private.h
index c947744ee5..cb862f0d72 100644
--- a/src/x11/window-x11-private.h
+++ b/src/x11/window-x11-private.h
@@ -125,6 +125,8 @@ gboolean meta_window_x11_has_pointer (MetaWindow *window);
gboolean meta_window_x11_same_application (MetaWindow *window,
MetaWindow *other_window);
+gboolean meta_window_x11_is_shaped (MetaWindow *window);
+
void meta_window_x11_shutdown_group (MetaWindow *window);
META_EXPORT
diff --git a/src/x11/window-x11.c b/src/x11/window-x11.c
index 745c45db18..83cdd2e420 100644
--- a/src/x11/window-x11.c
+++ b/src/x11/window-x11.c
@@ -2585,6 +2585,15 @@ meta_window_x11_update_shape_region (MetaWindow *window)
meta_window_set_shape_region (window, region);
}
+gboolean
+meta_window_x11_is_shaped (MetaWindow *window)
+{
+ MetaWindowX11 *window_x11 = META_WINDOW_X11 (window);
+ MetaWindowX11Private *priv = meta_window_x11_get_instance_private (window_x11);
+
+ return priv->shape_region != NULL;
+}
+
/* Generally meta_window_x11_same_application() is a better idea
* of "sameness", since it handles the case where multiple apps
* want to look like the same app or the same app wants to look
--
2.43.2

View File

@@ -13,7 +13,7 @@
%global tarball_version %%(echo %{version} | tr '~' '.')
Name: mutter
Version: 46~beta
Version: 46~rc
Release: %autorelease
Summary: Window and compositing manager based on Clutter
@@ -169,7 +169,7 @@ the functionality of the installed %{name} package.
%autosetup -S git -n %{name}-%{tarball_version}
%build
%meson -Degl_device=true -Dwayland_eglstream=true
%meson -Degl_device=true -Dwayland_eglstream=true -Dlibdisplay_info=disabled
%meson_build
%install

View File

@@ -1 +1 @@
SHA512 (mutter-46.beta.tar.xz) = de07c00338e43e5a03b3f45609f95aa4b0d0b4635f0233a950fb738b00f7f96550ed3c39779319a562583a08c15fc8c0cfb30f18683706fc02285a0fa5fee1da
SHA512 (mutter-46.rc.tar.xz) = 3a37c73d51206adf70c7fba69643347694b4b8325f4eb18eb45a7845e71468c23ba0ffdcbc3e7c8618a21f399eabad48ee2b84b0471c2961662ea50268017999