Backport F40 changes
Resolves: RHEL-30252
This commit is contained in:
parent
f50a176d62
commit
a6f46c185c
3
.gitignore
vendored
3
.gitignore
vendored
@ -216,3 +216,6 @@ 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
|
||||||
|
/mutter-46.rc.tar.xz
|
||||||
|
/mutter-46.0.tar.xz
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 299a0480fc04b7befcb768eeb98d187cf12487d1 Mon Sep 17 00:00:00 2001
|
From 1d5c47f8970c2027de5f6fa49b84de73d55b419b 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 145f0b7bd7..1c90ce4231 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_x11_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 745c45db18..8edff883c9 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)
|
@@ -2082,10 +2082,6 @@ meta_window_x11_constructed (GObject *object)
|
||||||
window->hidden = FALSE;
|
priv->keys_grabbed = FALSE;
|
||||||
priv->border_width = attrs.border_width;
|
priv->grab_on_frame = FALSE;
|
||||||
|
|
||||||
- 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)
|
@@ -2400,21 +2396,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);
|
||||||
@ -75,7 +75,7 @@ index ce6dcf968b..7574948aed 100644
|
|||||||
{
|
{
|
||||||
- if (!window->frame)
|
- if (!window->frame)
|
||||||
- {
|
- {
|
||||||
- if (window->input_region)
|
- if (priv->input_region)
|
||||||
- meta_window_set_input_region (window, NULL);
|
- meta_window_set_input_region (window, NULL);
|
||||||
- return;
|
- return;
|
||||||
- }
|
- }
|
||||||
@ -83,23 +83,23 @@ index ce6dcf968b..7574948aed 100644
|
|||||||
- }
|
- }
|
||||||
- else
|
- else
|
||||||
- {
|
- {
|
||||||
- xwindow = window->xwindow;
|
- xwindow = priv->xwindow;
|
||||||
+ if (window->input_region)
|
+ if (priv->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)
|
@@ -2426,7 +2417,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)
|
@@ -2480,8 +2471,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;
|
||||||
@ -111,5 +111,5 @@ index ce6dcf968b..7574948aed 100644
|
|||||||
/* The shape we get back from the client may have coordinates
|
/* The shape we get back from the client may have coordinates
|
||||||
* outside of the frame. The X SHAPE Extension requires that
|
* outside of the frame. The X SHAPE Extension requires that
|
||||||
--
|
--
|
||||||
2.43.0
|
2.43.2
|
||||||
|
|
||||||
|
@ -1,29 +0,0 @@
|
|||||||
From 4a82121b6c90df48b474bce31ca16e15f55368dc Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?Jonas=20=C3=85dahl?= <jadahl@gmail.com>
|
|
||||||
Date: Mon, 4 Sep 2023 10:22:49 +0200
|
|
||||||
Subject: [PATCH] gschema: Enable 'scale-monitor-framebuffer' experimental
|
|
||||||
feature
|
|
||||||
|
|
||||||
Enabling this by default was the consensus in a previous meeting[1].
|
|
||||||
|
|
||||||
[1] https://pagure.io/fedora-workstation/issue/357#comment-848857
|
|
||||||
---
|
|
||||||
data/org.gnome.mutter.gschema.xml.in | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/data/org.gnome.mutter.gschema.xml.in b/data/org.gnome.mutter.gschema.xml.in
|
|
||||||
index 5d56ae2d37..8052032c51 100644
|
|
||||||
--- a/data/org.gnome.mutter.gschema.xml.in
|
|
||||||
+++ b/data/org.gnome.mutter.gschema.xml.in
|
|
||||||
@@ -103,7 +103,7 @@
|
|
||||||
|
|
||||||
<key name="experimental-features"
|
|
||||||
flags='org.gnome.mutter.MetaExperimentalFeature'>
|
|
||||||
- <default>[]</default>
|
|
||||||
+ <default>["scale-monitor-framebuffer"]</default>
|
|
||||||
<summary>Enable experimental features</summary>
|
|
||||||
<description>
|
|
||||||
To enable experimental features, add the feature keyword to the list.
|
|
||||||
--
|
|
||||||
2.41.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,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>
|
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
|
||||||
Date: Fri, 12 May 2017 13:40:31 +0200
|
Date: Fri, 12 May 2017 13:40:31 +0200
|
||||||
Subject: [PATCH] window-actor: Special-case shaped Java windows
|
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.
|
by special-casing shaped Java windows.
|
||||||
---
|
---
|
||||||
src/compositor/meta-window-actor-x11.c | 8 ++++++++
|
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
|
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
|
--- a/src/compositor/meta-window-actor-x11.c
|
||||||
+++ b/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)
|
if (window->has_custom_frame_extents)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
@ -25,11 +27,44 @@ index b7032e0ba..b05d5e158 100644
|
|||||||
+ * shadows; make its compliance tests happy to give it what it wants ...
|
+ * shadows; make its compliance tests happy to give it what it wants ...
|
||||||
+ */
|
+ */
|
||||||
+ if (g_strcmp0 (window->res_name, "sun-awt-X11-XWindowPeer") == 0 &&
|
+ if (g_strcmp0 (window->res_name, "sun-awt-X11-XWindowPeer") == 0 &&
|
||||||
+ window->shape_region != NULL)
|
+ meta_window_x11_is_shaped (window))
|
||||||
+ return FALSE;
|
+ return FALSE;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Generate shadows for all other windows.
|
* Generate shadows for all other windows.
|
||||||
|
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.23.0
|
2.43.2
|
||||||
|
|
||||||
|
@ -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
|
||||||
|
|
||||||
|
15
mutter.spec
15
mutter.spec
@ -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.0
|
||||||
Release: %autorelease
|
Release: %autorelease
|
||||||
Summary: Window and compositing manager based on Clutter
|
Summary: Window and compositing manager based on Clutter
|
||||||
|
|
||||||
@ -30,8 +30,6 @@ Patch: mutter-42.alpha-disable-tegra.patch
|
|||||||
# https://pagure.io/fedora-workstation/issue/79
|
# https://pagure.io/fedora-workstation/issue/79
|
||||||
Patch: 0001-place-Always-center-initial-setup-fedora-welcome.patch
|
Patch: 0001-place-Always-center-initial-setup-fedora-welcome.patch
|
||||||
|
|
||||||
Patch: 0001-gschema-Enable-scale-monitor-framebuffer-experimenta.patch
|
|
||||||
|
|
||||||
# https://bugzilla.redhat.com/show_bug.cgi?id=2239128
|
# https://bugzilla.redhat.com/show_bug.cgi?id=2239128
|
||||||
# https://gitlab.gnome.org/GNOME/mutter/-/issues/3068
|
# https://gitlab.gnome.org/GNOME/mutter/-/issues/3068
|
||||||
# not upstreamed because for upstream we'd really want to find a way
|
# not upstreamed because for upstream we'd really want to find a way
|
||||||
@ -44,13 +42,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)
|
||||||
@ -106,6 +97,8 @@ BuildRequires: pkgconfig(json-glib-1.0) >= %{json_glib_version}
|
|||||||
BuildRequires: pkgconfig(libinput) >= %{libinput_version}
|
BuildRequires: pkgconfig(libinput) >= %{libinput_version}
|
||||||
BuildRequires: pkgconfig(xwayland)
|
BuildRequires: pkgconfig(xwayland)
|
||||||
|
|
||||||
|
BuildRequires: python3-dbusmock
|
||||||
|
|
||||||
Requires: control-center-filesystem
|
Requires: control-center-filesystem
|
||||||
Requires: gsettings-desktop-schemas%{?_isa} >= %{gsettings_desktop_schemas_version}
|
Requires: gsettings-desktop-schemas%{?_isa} >= %{gsettings_desktop_schemas_version}
|
||||||
Requires: gnome-settings-daemon
|
Requires: gnome-settings-daemon
|
||||||
@ -178,7 +171,7 @@ the functionality of the installed %{name} package.
|
|||||||
%autosetup -S git -n %{name}-%{tarball_version}
|
%autosetup -S git -n %{name}-%{tarball_version}
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%meson -Degl_device=true -Dwayland_eglstream=true
|
%meson -Degl_device=true -Dwayland_eglstream=true -Dlibdisplay_info=disabled
|
||||||
%meson_build
|
%meson_build
|
||||||
|
|
||||||
%install
|
%install
|
||||||
|
2
sources
2
sources
@ -1 +1 @@
|
|||||||
SHA512 (mutter-46.alpha.tar.xz) = 69e48eda7e93dfbd6ea96271eeeadc9c702b8db2b450aa5b5adcfed8321b36650c27b7f1e72ad74967c33f1c7236749c3f63c441d8e3053c8ac46437753445a2
|
SHA512 (mutter-46.0.tar.xz) = 0314183f763b609105f42233f19507eed14f9a8fab4b0985e966ab208d03a22b600e7a4ab3f6a190a5704abcea663ae1a0cf2394eb42a6c076b7a558ef51eacc
|
||||||
|
Loading…
Reference in New Issue
Block a user