Update to 46.beta
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -216,3 +216,4 @@ mutter-2.31.5.tar.bz2
|
|||||||
/mutter-45.1.tar.xz
|
/mutter-45.1.tar.xz
|
||||||
/mutter-45.2.tar.xz
|
/mutter-45.2.tar.xz
|
||||||
/mutter-46.alpha.tar.xz
|
/mutter-46.alpha.tar.xz
|
||||||
|
/mutter-46.beta.tar.xz
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
From 299a0480fc04b7befcb768eeb98d187cf12487d1 Mon Sep 17 00:00:00 2001
|
From 264bd8c2b7dab84d0f0e11ad6b99d8d5de4c5e08 Mon Sep 17 00:00:00 2001
|
||||||
From: Adam Williamson <awilliam@redhat.com>
|
From: Adam Williamson <awilliam@redhat.com>
|
||||||
Date: Thu, 5 Oct 2023 13:09:46 -0700
|
Date: Thu, 5 Oct 2023 13:09:46 -0700
|
||||||
Subject: [PATCH] Revert "x11: Use input region from frame window for decorated
|
Subject: [PATCH] Revert "x11: Use input region from frame window for decorated
|
||||||
@@ -15,10 +15,10 @@ Closes: https://gitlab.gnome.org/GNOME/mutter/-/issues/3068
|
|||||||
2 files changed, 10 insertions(+), 26 deletions(-)
|
2 files changed, 10 insertions(+), 26 deletions(-)
|
||||||
|
|
||||||
diff --git a/src/core/frame.c b/src/core/frame.c
|
diff --git a/src/core/frame.c b/src/core/frame.c
|
||||||
index 6b97306a1c..0f2eb349d1 100644
|
index 9417685706..2193f1fba2 100644
|
||||||
--- a/src/core/frame.c
|
--- a/src/core/frame.c
|
||||||
+++ b/src/core/frame.c
|
+++ b/src/core/frame.c
|
||||||
@@ -34,7 +34,6 @@
|
@@ -35,7 +35,6 @@
|
||||||
#include "x11/window-props.h"
|
#include "x11/window-props.h"
|
||||||
|
|
||||||
#include <X11/Xatom.h>
|
#include <X11/Xatom.h>
|
||||||
@@ -26,7 +26,7 @@ index 6b97306a1c..0f2eb349d1 100644
|
|||||||
|
|
||||||
#define EVENT_MASK (SubstructureRedirectMask | \
|
#define EVENT_MASK (SubstructureRedirectMask | \
|
||||||
StructureNotifyMask | SubstructureNotifyMask | \
|
StructureNotifyMask | SubstructureNotifyMask | \
|
||||||
@@ -108,9 +107,6 @@ meta_window_set_frame_xwindow (MetaWindow *window,
|
@@ -109,9 +108,6 @@ meta_window_set_frame_xwindow (MetaWindow *window,
|
||||||
XChangeWindowAttributes (x11_display->xdisplay,
|
XChangeWindowAttributes (x11_display->xdisplay,
|
||||||
frame->xwindow, CWEventMask, &attrs);
|
frame->xwindow, CWEventMask, &attrs);
|
||||||
|
|
||||||
@@ -36,7 +36,7 @@ index 6b97306a1c..0f2eb349d1 100644
|
|||||||
meta_x11_display_register_x_window (x11_display, &frame->xwindow, window);
|
meta_x11_display_register_x_window (x11_display, &frame->xwindow, window);
|
||||||
|
|
||||||
if (window->mapped)
|
if (window->mapped)
|
||||||
@@ -219,9 +215,6 @@ meta_window_destroy_frame (MetaWindow *window)
|
@@ -220,9 +216,6 @@ meta_window_destroy_frame (MetaWindow *window)
|
||||||
window->reparents_pending += 1;
|
window->reparents_pending += 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -44,15 +44,15 @@ index 6b97306a1c..0f2eb349d1 100644
|
|||||||
- XShapeSelectInput (x11_display->xdisplay, frame->xwindow, NoEventMask);
|
- XShapeSelectInput (x11_display->xdisplay, frame->xwindow, NoEventMask);
|
||||||
-
|
-
|
||||||
XDeleteProperty (x11_display->xdisplay,
|
XDeleteProperty (x11_display->xdisplay,
|
||||||
window->xwindow,
|
meta_window_x11_get_xwindow (window),
|
||||||
x11_display->atom__MUTTER_NEEDS_FRAME);
|
x11_display->atom__MUTTER_NEEDS_FRAME);
|
||||||
diff --git a/src/x11/window-x11.c b/src/x11/window-x11.c
|
diff --git a/src/x11/window-x11.c b/src/x11/window-x11.c
|
||||||
index ce6dcf968b..7574948aed 100644
|
index 95b6b55a02..a1890bb023 100644
|
||||||
--- a/src/x11/window-x11.c
|
--- a/src/x11/window-x11.c
|
||||||
+++ b/src/x11/window-x11.c
|
+++ b/src/x11/window-x11.c
|
||||||
@@ -2027,10 +2027,6 @@ meta_window_x11_constructed (GObject *object)
|
@@ -2087,10 +2087,6 @@ meta_window_x11_constructed (GObject *object)
|
||||||
window->hidden = FALSE;
|
|
||||||
priv->border_width = attrs.border_width;
|
priv->border_width = attrs.border_width;
|
||||||
|
priv->xclient_leader = None;
|
||||||
|
|
||||||
- g_signal_connect (window, "notify::decorated",
|
- g_signal_connect (window, "notify::decorated",
|
||||||
- G_CALLBACK (meta_window_x11_update_input_region),
|
- G_CALLBACK (meta_window_x11_update_input_region),
|
||||||
@@ -61,7 +61,7 @@ index ce6dcf968b..7574948aed 100644
|
|||||||
G_OBJECT_CLASS (meta_window_x11_parent_class)->constructed (object);
|
G_OBJECT_CLASS (meta_window_x11_parent_class)->constructed (object);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2314,21 +2310,16 @@ meta_window_x11_update_input_region (MetaWindow *window)
|
@@ -2386,21 +2382,16 @@ meta_window_x11_update_input_region (MetaWindow *window)
|
||||||
g_autoptr (MtkRegion) region = NULL;
|
g_autoptr (MtkRegion) region = NULL;
|
||||||
MetaWindowX11 *window_x11 = META_WINDOW_X11 (window);
|
MetaWindowX11 *window_x11 = META_WINDOW_X11 (window);
|
||||||
MetaWindowX11Private *priv = meta_window_x11_get_instance_private (window_x11);
|
MetaWindowX11Private *priv = meta_window_x11_get_instance_private (window_x11);
|
||||||
@@ -83,23 +83,23 @@ index ce6dcf968b..7574948aed 100644
|
|||||||
- }
|
- }
|
||||||
- else
|
- else
|
||||||
- {
|
- {
|
||||||
- xwindow = window->xwindow;
|
- xwindow = priv->xwindow;
|
||||||
+ if (window->input_region)
|
+ if (window->input_region)
|
||||||
+ meta_window_set_input_region (window, NULL);
|
+ meta_window_set_input_region (window, NULL);
|
||||||
+ return;
|
+ return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (META_X11_DISPLAY_HAS_SHAPE (x11_display))
|
if (META_X11_DISPLAY_HAS_SHAPE (x11_display))
|
||||||
@@ -2340,7 +2331,7 @@ meta_window_x11_update_input_region (MetaWindow *window)
|
@@ -2412,7 +2403,7 @@ meta_window_x11_update_input_region (MetaWindow *window)
|
||||||
|
|
||||||
meta_x11_error_trap_push (x11_display);
|
mtk_x11_error_trap_push (x11_display->xdisplay);
|
||||||
rects = XShapeGetRectangles (x11_display->xdisplay,
|
rects = XShapeGetRectangles (x11_display->xdisplay,
|
||||||
- xwindow,
|
- xwindow,
|
||||||
+ window->xwindow,
|
+ priv->xwindow,
|
||||||
ShapeInput,
|
ShapeInput,
|
||||||
&n_rects,
|
&n_rects,
|
||||||
&ordering);
|
&ordering);
|
||||||
@@ -2394,8 +2385,8 @@ meta_window_x11_update_input_region (MetaWindow *window)
|
@@ -2466,8 +2457,8 @@ meta_window_x11_update_input_region (MetaWindow *window)
|
||||||
|
|
||||||
client_area.x = 0;
|
client_area.x = 0;
|
||||||
client_area.y = 0;
|
client_area.y = 0;
|
||||||
|
|||||||
@@ -1,58 +0,0 @@
|
|||||||
From af0ca0cdc2a15036ca7f0a90be374e1436c660cf Mon Sep 17 00:00:00 2001
|
|
||||||
From: Sebastian Wick <sebastian.wick@redhat.com>
|
|
||||||
Date: Mon, 22 Jan 2024 12:45:37 +0100
|
|
||||||
Subject: [PATCH] kms/cursor-manager: Create CrtcStateImpls for all active
|
|
||||||
CRTCs
|
|
||||||
|
|
||||||
even if they don't have a cursor plane. This way we can just use the
|
|
||||||
object. Updating the cursor plane then just looks at the cursor_plane
|
|
||||||
field to skips updates when there is none.
|
|
||||||
|
|
||||||
Closes: https://gitlab.gnome.org/GNOME/mutter/-/issues/3254
|
|
||||||
Fixes: cc7bca073 ("crtc/kms: Dynamically assign primary and cursor planes")
|
|
||||||
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3539>
|
|
||||||
---
|
|
||||||
src/backends/native/meta-kms-cursor-manager.c | 6 ++++--
|
|
||||||
src/backends/native/meta-renderer-native.c | 2 --
|
|
||||||
2 files changed, 4 insertions(+), 4 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/backends/native/meta-kms-cursor-manager.c b/src/backends/native/meta-kms-cursor-manager.c
|
|
||||||
index 646084877..6873000dc 100644
|
|
||||||
--- a/src/backends/native/meta-kms-cursor-manager.c
|
|
||||||
+++ b/src/backends/native/meta-kms-cursor-manager.c
|
|
||||||
@@ -333,6 +333,10 @@ maybe_update_cursor_plane (MetaKmsCursorManagerImpl *cursor_manager_impl,
|
|
||||||
crtc_state_impl = find_crtc_state (cursor_manager_impl, crtc);
|
|
||||||
g_return_val_if_fail (crtc_state_impl, update);
|
|
||||||
|
|
||||||
+ cursor_plane = crtc_state_impl->cursor_plane;
|
|
||||||
+ if (!cursor_plane)
|
|
||||||
+ return update;
|
|
||||||
+
|
|
||||||
if (!crtc_state_impl->cursor_invalidated)
|
|
||||||
return update;
|
|
||||||
|
|
||||||
@@ -368,8 +372,6 @@ maybe_update_cursor_plane (MetaKmsCursorManagerImpl *cursor_manager_impl,
|
|
||||||
meta_kms_update_realize (update, impl_device);
|
|
||||||
}
|
|
||||||
|
|
||||||
- cursor_plane = crtc_state_impl->cursor_plane;
|
|
||||||
-
|
|
||||||
if (should_have_cursor)
|
|
||||||
{
|
|
||||||
int width, height;
|
|
||||||
diff --git a/src/backends/native/meta-renderer-native.c b/src/backends/native/meta-renderer-native.c
|
|
||||||
index 78bde68ff..dc08824c1 100644
|
|
||||||
--- a/src/backends/native/meta-renderer-native.c
|
|
||||||
+++ b/src/backends/native/meta-renderer-native.c
|
|
||||||
@@ -1128,8 +1128,6 @@ meta_renderer_native_queue_modes_reset (MetaRendererNative *renderer_native)
|
|
||||||
crtc_kms = META_CRTC_KMS (crtc);
|
|
||||||
|
|
||||||
kms_plane = meta_crtc_kms_get_assigned_cursor_plane (crtc_kms);
|
|
||||||
- if (!kms_plane)
|
|
||||||
- continue;
|
|
||||||
kms_crtc = meta_crtc_kms_get_kms_crtc (crtc_kms);
|
|
||||||
|
|
||||||
clutter_stage_view_get_layout (stage_view, &view_layout);
|
|
||||||
--
|
|
||||||
2.43.0
|
|
||||||
|
|
||||||
@@ -1,90 +0,0 @@
|
|||||||
From cf685defcd0c0026fce7ef1fc3fb79a1f1a1edaa Mon Sep 17 00:00:00 2001
|
|
||||||
From: Sebastian Wick <sebastian.wick@redhat.com>
|
|
||||||
Date: Mon, 8 Jan 2024 15:52:09 +0100
|
|
||||||
Subject: [PATCH 1/2] cogl/half-float: Include SSE intrinsics
|
|
||||||
|
|
||||||
The intel intrinsics (including SSE) are only included in the header if
|
|
||||||
the arch is x86_64 which made the i686 build fail.
|
|
||||||
|
|
||||||
Closes: https://gitlab.gnome.org/GNOME/mutter/-/issues/3234
|
|
||||||
Fixes: 568506ecb ("cogl: Add half float implementation")
|
|
||||||
---
|
|
||||||
cogl/cogl/cogl-half-float.c | 8 ++++++++
|
|
||||||
1 file changed, 8 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/cogl/cogl/cogl-half-float.c b/cogl/cogl/cogl-half-float.c
|
|
||||||
index be2c48b815..ae0af0a6a2 100644
|
|
||||||
--- a/cogl/cogl/cogl-half-float.c
|
|
||||||
+++ b/cogl/cogl/cogl-half-float.c
|
|
||||||
@@ -31,6 +31,13 @@
|
|
||||||
|
|
||||||
#include <math.h>
|
|
||||||
|
|
||||||
+#if defined(__SSE__) || \
|
|
||||||
+ (defined(_M_IX86_FP) && (_M_IX86_FP >= 1)) || \
|
|
||||||
+ (defined(_M_X64) && !defined(_M_ARM64EC))
|
|
||||||
+#include <xmmintrin.h>
|
|
||||||
+#include <emmintrin.h>
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
#include "cogl/cogl-half-float.h"
|
|
||||||
#include "cogl/cogl-soft-float.h"
|
|
||||||
|
|
||||||
@@ -262,3 +269,4 @@ uint16_t cogl_uint16_div_64k_to_half (uint16_t v)
|
|
||||||
|
|
||||||
return (e << 10) | m;
|
|
||||||
}
|
|
||||||
+
|
|
||||||
--
|
|
||||||
2.43.0
|
|
||||||
|
|
||||||
|
|
||||||
From 0096860d715e1842d755b1229b43e848c26fb0cb Mon Sep 17 00:00:00 2001
|
|
||||||
From: Sebastian Wick <sebastian.wick@redhat.com>
|
|
||||||
Date: Mon, 8 Jan 2024 16:08:37 +0100
|
|
||||||
Subject: [PATCH 2/2] cogl/bitmap-conversion: Don't break strict-aliasing for
|
|
||||||
flt_pack/unpack
|
|
||||||
|
|
||||||
Simply reinterpreting the bytes differently is a strict-aliasing
|
|
||||||
violation if the type of the object isn't char or the target type of the
|
|
||||||
reinterpretation. None of that is the case here, so we have to resort to
|
|
||||||
a memcpy.
|
|
||||||
|
|
||||||
Fixes: 60c082caa ("cogl/bitmap-conversion: Support packing fp16 formats")
|
|
||||||
---
|
|
||||||
cogl/cogl/cogl-bitmap-conversion.c | 11 +++++++++--
|
|
||||||
1 file changed, 9 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/cogl/cogl/cogl-bitmap-conversion.c b/cogl/cogl/cogl-bitmap-conversion.c
|
|
||||||
index 76efbb9bb9..08ecce6a4d 100644
|
|
||||||
--- a/cogl/cogl/cogl-bitmap-conversion.c
|
|
||||||
+++ b/cogl/cogl/cogl-bitmap-conversion.c
|
|
||||||
@@ -45,16 +45,23 @@ typedef enum
|
|
||||||
MEDIUM_TYPE_FLOAT,
|
|
||||||
} MediumType;
|
|
||||||
|
|
||||||
+_Static_assert (sizeof (uint32_t) == sizeof (GLfloat),
|
|
||||||
+ "GLfloat doesn't have a size of 4 bytes");
|
|
||||||
+
|
|
||||||
inline static uint32_t
|
|
||||||
pack_flt (GLfloat b)
|
|
||||||
{
|
|
||||||
- return *(uint32_t *) &b;
|
|
||||||
+ uint32_t ret;
|
|
||||||
+ memcpy (&ret, &b, sizeof (uint32_t));
|
|
||||||
+ return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
inline static GLfloat
|
|
||||||
unpack_flt (uint32_t b)
|
|
||||||
{
|
|
||||||
- return *(GLfloat *) &b;
|
|
||||||
+ GLfloat ret;
|
|
||||||
+ memcpy (&ret, &b, sizeof (GLfloat));
|
|
||||||
+ return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
#define CLAMP_NORM(b) (MAX (MIN ((b), 1.0), 0.0))
|
|
||||||
--
|
|
||||||
2.43.0
|
|
||||||
|
|
||||||
@@ -1,25 +1,25 @@
|
|||||||
From 2184adca1e510361fd1c425d88ac9a3d458eb76a Mon Sep 17 00:00:00 2001
|
From a5c67e0debaa89f7a73452560664cdc5c581ab95 Mon Sep 17 00:00:00 2001
|
||||||
From: David King <amigadave@amigadave.com>
|
From: Adam Williamson <awilliam@redhat.com>
|
||||||
Date: Fri, 14 Jan 2022 18:18:03 +0000
|
Date: Tue, 9 Mar 2021 17:21:59 -0800
|
||||||
Subject: [PATCH] Disable KMS on tegra
|
Subject: [PATCH] Test: deny atomic KMS for "tegra" (RHBZ #1936991)
|
||||||
|
|
||||||
Based on commit 77a40614f08ef10044409f689b9efc3d5f65ff0c.
|
Signed-off-by: Adam Williamson <awilliam@redhat.com>
|
||||||
---
|
---
|
||||||
src/backends/native/meta-kms-impl-device-atomic.c | 1 +
|
src/backends/native/meta-kms-impl-device-atomic.c | 1 +
|
||||||
1 file changed, 1 insertion(+)
|
1 file changed, 1 insertion(+)
|
||||||
|
|
||||||
diff --git a/src/backends/native/meta-kms-impl-device-atomic.c b/src/backends/native/meta-kms-impl-device-atomic.c
|
diff --git a/src/backends/native/meta-kms-impl-device-atomic.c b/src/backends/native/meta-kms-impl-device-atomic.c
|
||||||
index bcb41e8ad..bafbc7b8f 100644
|
index 35837f7429..ffff7b8e23 100644
|
||||||
--- a/src/backends/native/meta-kms-impl-device-atomic.c
|
--- a/src/backends/native/meta-kms-impl-device-atomic.c
|
||||||
+++ b/src/backends/native/meta-kms-impl-device-atomic.c
|
+++ b/src/backends/native/meta-kms-impl-device-atomic.c
|
||||||
@@ -1216,6 +1216,7 @@ is_atomic_allowed (const char *driver_name)
|
@@ -1352,6 +1352,7 @@ is_atomic_allowed (const char *driver_name)
|
||||||
"vboxvideo",
|
{
|
||||||
"virtio_gpu",
|
const char *atomic_driver_deny_list[] = {
|
||||||
"xlnx",
|
"xlnx",
|
||||||
+ "tegra",
|
+ "tegra",
|
||||||
NULL,
|
NULL,
|
||||||
};
|
};
|
||||||
|
|
||||||
--
|
--
|
||||||
2.34.1
|
2.43.0
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
%global tarball_version %%(echo %{version} | tr '~' '.')
|
%global tarball_version %%(echo %{version} | tr '~' '.')
|
||||||
|
|
||||||
Name: mutter
|
Name: mutter
|
||||||
Version: 46~alpha
|
Version: 46~beta
|
||||||
Release: %autorelease
|
Release: %autorelease
|
||||||
Summary: Window and compositing manager based on Clutter
|
Summary: Window and compositing manager based on Clutter
|
||||||
|
|
||||||
@@ -44,13 +44,6 @@ Patch: 0001-Revert-x11-Use-input-region-from-frame-window-for-de.patch
|
|||||||
# which solves the problems reported with #3329 alone
|
# which solves the problems reported with #3329 alone
|
||||||
Patch: 0001-modified-3329.patch
|
Patch: 0001-modified-3329.patch
|
||||||
|
|
||||||
# https://bugzilla.redhat.com/show_bug.cgi?id=2261842
|
|
||||||
# https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3539
|
|
||||||
# fixes failure to show anything on virtio-vga without 3D acceleration
|
|
||||||
Patch: 0001-kms-cursor-manager-Create-CrtcStateImpls-for-all-act.patch
|
|
||||||
|
|
||||||
Patch: fix-i686-build.patch
|
|
||||||
|
|
||||||
BuildRequires: pkgconfig(gobject-introspection-1.0) >= 1.41.0
|
BuildRequires: pkgconfig(gobject-introspection-1.0) >= 1.41.0
|
||||||
BuildRequires: pkgconfig(sm)
|
BuildRequires: pkgconfig(sm)
|
||||||
BuildRequires: pkgconfig(libwacom)
|
BuildRequires: pkgconfig(libwacom)
|
||||||
|
|||||||
2
sources
2
sources
@@ -1 +1 @@
|
|||||||
SHA512 (mutter-46.alpha.tar.xz) = 69e48eda7e93dfbd6ea96271eeeadc9c702b8db2b450aa5b5adcfed8321b36650c27b7f1e72ad74967c33f1c7236749c3f63c441d8e3053c8ac46437753445a2
|
SHA512 (mutter-46.beta.tar.xz) = de07c00338e43e5a03b3f45609f95aa4b0d0b4635f0233a950fb738b00f7f96550ed3c39779319a562583a08c15fc8c0cfb30f18683706fc02285a0fa5fee1da
|
||||||
|
|||||||
Reference in New Issue
Block a user