SHA256
1
0
forked from pool/mutter

41 Commits

Author SHA256 Message Date
f9158b394e Accepting request 1293358 from GNOME:Factory
OBS-URL: https://build.opensuse.org/request/show/1293358
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mutter?expand=0&rev=253
2025-07-17 15:17:29 +00:00
6bac0e3d69 - Drop mutter-SLE-bell.patch. It no longer applies with --fuzz=0,
and it is X11-only, so it is no longer useful for SLE 16.

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/mutter?expand=0&rev=559
2025-07-15 09:19:59 +00:00
6e06ab261e Accepting request 1289812 from GNOME:Factory
OBS-URL: https://build.opensuse.org/request/show/1289812
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mutter?expand=0&rev=252
2025-07-03 10:09:26 +00:00
7bfeed0f53 - Update to version 48.4:
+ Unlink outputs from unused connectors in update_outputs
  + Add speed limit to Visual alerts
  + Fix behavior of windows that get activated before mapped
  + Fix incorrect cursor over Xwayland clients
  + Fix hi-res scroll events getting converted to flip-flopping
    discrete events
  + Fixed crash
  + Misc. bug fixes and cleanups

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/mutter?expand=0&rev=557
2025-07-02 09:09:23 +00:00
506eadd65c Accepting request 1282867 from GNOME:Factory
OBS-URL: https://build.opensuse.org/request/show/1282867
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mutter?expand=0&rev=251
2025-06-10 06:56:57 +00:00
f511ed5b1a Accepting request 1282161 from GNOME:Next
- Update to version 48.3.1:
  + Fix Xwayland windows becoming unresponsive to events
  + Fix drag and drop of tabs into tiled/maximized state

OBS-URL: https://build.opensuse.org/request/show/1282161
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/mutter?expand=0&rev=555
2025-06-04 17:02:37 +00:00
5b940b4484 Accepting request 1280301 from GNOME:Factory
OBS-URL: https://build.opensuse.org/request/show/1280301
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mutter?expand=0&rev=250
2025-05-27 16:52:16 +00:00
7140770aee OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/mutter?expand=0&rev=553 2025-05-26 15:43:21 +00:00
578e66fdeb Accepting request 1269687 from GNOME:Factory
- Update to version 48.2:
  + Fix animated cursors
  + Announce workspace changes to screen reader
  + Fix popups showing in some situations
  + Fix wrong cursor after window animations
  + Fixed crashes
  + Misc. bug fixes and cleanups
  + Updated translations. (forwarded request 1269164 from iznogood)

OBS-URL: https://build.opensuse.org/request/show/1269687
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mutter?expand=0&rev=249
2025-04-17 14:06:48 +00:00
9da88be2ed - Update to version 48.2:
+ Fix animated cursors
  + Announce workspace changes to screen reader
  + Fix popups showing in some situations
  + Fix wrong cursor after window animations
  + Fixed crashes
  + Misc. bug fixes and cleanups
  + Updated translations.

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/mutter?expand=0&rev=551
2025-04-15 15:26:19 +00:00
2dd8ce458b Accepting request 1266391 from GNOME:Factory
OBS-URL: https://build.opensuse.org/request/show/1266391
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mutter?expand=0&rev=248
2025-04-02 15:07:52 +00:00
900e55c47e - Update to version 48.1:
+ Fixed occasional screen freezes
  + Fix tablet tool cursor sizes when set via the cursor shape
    protocol
  + Fix hiding the cursor when using the cursor shape protocl
  + Fall back to the default color mode when a HDR monitor looses
    HDR capabilities
  + Disable HDR support with non-atomic (legacy) KMS drivers
  + Fix the cursor shape protocol when being used with tablets
  + Immediately update cursors on theme and size changes
  + Avoid cursor stuttering when cursor set via the cursor shape
    protocol
  + Handle DnD cursor feedback in compositor
  + Fixed crashes
  + Misc. bug fixes and cleanups

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/mutter?expand=0&rev=549
2025-04-02 07:34:27 +00:00
b9e43f2c93 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/mutter?expand=0&rev=548 2025-03-31 10:05:17 +00:00
208d575d8d Accepting request 1254940 from GNOME:Factory
- Add 0001-cursor-Unify-prepare_func-for-shape-cursors.patch.
  Solves the problem of changing the size of the cursor in gtk 
  applications on HiDPI displays. (forwarded request 1254938 from Dead_Mozay)

OBS-URL: https://build.opensuse.org/request/show/1254940
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mutter?expand=0&rev=247
2025-03-21 19:21:45 +00:00
d7938b8a72 - Add 0001-cursor-Unify-prepare_func-for-shape-cursors.patch.
Solves the problem of changing the size of the cursor in gtk 
  applications on HiDPI displays.

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/mutter?expand=0&rev=546
2025-03-21 08:14:23 +00:00
d04f7b760d OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/mutter?expand=0&rev=545 2025-03-21 07:52:29 +00:00
10035d56d0 Accepting request 1254077 from GNOME:Factory
- Rebase patches with quilt and simplyfy conditionals applying
  patches. (forwarded request 1254073 from iznogood)

OBS-URL: https://build.opensuse.org/request/show/1254077
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mutter?expand=0&rev=246
2025-03-18 16:39:50 +00:00
bfe678e194 - Rebase patches with quilt and simplyfy conditionals applying
patches.

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/mutter?expand=0&rev=543
2025-03-18 10:38:42 +00:00
e7982295a7 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/mutter?expand=0&rev=542 2025-03-18 07:11:12 +00:00
a8a4518b73 New stable rel
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/mutter?expand=0&rev=541
2025-03-17 10:44:11 +00:00
163c8cbcdf Resubmit 48.rc post rebase
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/mutter?expand=0&rev=540
2025-03-06 14:04:59 +00:00
d2206e50c9 Accepting request 1250308 from GNOME:Factory
OBS-URL: https://build.opensuse.org/request/show/1250308
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mutter?expand=0&rev=245
2025-03-06 13:48:20 +00:00
4b3f644177 - Update to version 47.6:
+ Support presentation-time version 2
  + Honor wl_surface.offset on cursor surfaces
  + Fix sharable surfaces with nvidia as primary
  + Fixed crash

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/mutter?expand=0&rev=538
2025-03-05 07:42:37 +00:00
52d0aeee41 Accepting request 1244000 from GNOME:Factory
OBS-URL: https://build.opensuse.org/request/show/1244000
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mutter?expand=0&rev=244
2025-02-09 19:00:32 +00:00
a62151d83e - Update to version 47.5:
+ Synchronize device enabled state when adding device
  + Do not use modifiers if surface should be sharable
  + Fix notifying shell about modifier-only keyboard layout
    switches
  + Fixed crashes
  + Misc. bug fixes and cleanups

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/mutter?expand=0&rev=536
2025-02-06 19:14:39 +00:00
caa96517de Accepting request 1237899 from GNOME:Factory
OBS-URL: https://build.opensuse.org/request/show/1237899
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mutter?expand=0&rev=243
2025-01-16 17:31:06 +00:00
d2ffa33114 - Update to version 47.4:
+ Use BT709 coefficients and limited range for YUV conversion by
    defaults
  + Also request high priority secondary EGL context
  + Fix Xwayland DND coordinates when using fractional scaling
  + Fix applying initial _NET_WM_WINDOW_OPACITY on Xwayland
  + Implement wp_viewport support for cursor surfaces
  + Improve input → output latency of cursor movements
  + Improve frame rate on monitors attached to secondary GPUs in
    copy mode
  + Send preferred scales to all surface roles
  + Misc. bug fixes and cleanups
  + Updated translations.

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/mutter?expand=0&rev=534
2025-01-14 17:41:37 +00:00
9fdfdc3a0b Accepting request 1229723 from GNOME:Factory
- Update to version 47.3:
  + Fix maximized X11 when using native xwayland scaling
  + Fix blank screen in remote headless sessions
  + Fix touch-triggered popups being cancelled too early
  + Fix pointer cursor during compositor grabs
  + Fixed crash (forwarded request 1228701 from iznogood)

OBS-URL: https://build.opensuse.org/request/show/1229723
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mutter?expand=0&rev=242
2024-12-11 20:00:38 +00:00
3c2222f33f - Update to version 47.3:
+ Fix maximized X11 when using native xwayland scaling
  + Fix blank screen in remote headless sessions
  + Fix touch-triggered popups being cancelled too early
  + Fix pointer cursor during compositor grabs
  + Fixed crash

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/mutter?expand=0&rev=532
2024-12-10 09:04:48 +00:00
d07f75d735 Accepting request 1226515 from GNOME:Factory
- Update to version 47.2:
  + Fix warping pointer after releasing pointer constraints
  + Default to high thread instead of realtime priority for KMS
    thread
  + Avoid CPU stalls with NVIDIA secondary GPUs with
    directly-attached monitors
  + Fix updating cursor immediately when starting window drag
  + Add pipeline hooks to user program pipelines
  + Prefer GPUs with built-in panels connected as primary GPU
  + Fix cursor glitches when using virtual monitors
  + Ensure frame events are sent for cursor surfaces
  + Allow BGRX8888 format on big endian
  + Fix touchscreen drag-and-drop on wayland
  + Fixed crashes
  + Misc. bug fixes and cleanups (forwarded request 1226356 from iznogood)

OBS-URL: https://build.opensuse.org/request/show/1226515
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mutter?expand=0&rev=241
2024-11-27 21:05:16 +00:00
ed6cad52b3 - Update to version 47.2:
+ Fix warping pointer after releasing pointer constraints
  + Default to high thread instead of realtime priority for KMS
    thread
  + Avoid CPU stalls with NVIDIA secondary GPUs with
    directly-attached monitors
  + Fix updating cursor immediately when starting window drag
  + Add pipeline hooks to user program pipelines
  + Prefer GPUs with built-in panels connected as primary GPU
  + Fix cursor glitches when using virtual monitors
  + Ensure frame events are sent for cursor surfaces
  + Allow BGRX8888 format on big endian
  + Fix touchscreen drag-and-drop on wayland
  + Fixed crashes
  + Misc. bug fixes and cleanups

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/mutter?expand=0&rev=530
2024-11-26 13:02:42 +00:00
7d2da21e1a Accepting request 1219333 from GNOME:Factory
OBS-URL: https://build.opensuse.org/request/show/1219333
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mutter?expand=0&rev=240
2024-10-31 15:08:57 +00:00
9fd6b4d965 - Update to version 47.1+3:
* wayland/pointer-constraints: Warp pointer after destroying
    resource
  * Updated translations.

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/mutter?expand=0&rev=528
2024-10-30 08:11:52 +00:00
7d329cabe9 Accepting request 1218496 from GNOME:Factory
OBS-URL: https://build.opensuse.org/request/show/1218496
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mutter?expand=0&rev=239
2024-10-28 14:18:41 +00:00
b4b1729ede Add a bug reference
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/mutter?expand=0&rev=526
2024-10-26 08:30:35 +00:00
79b78a0277 Accepting request 1216801 from GNOME:Factory
OBS-URL: https://build.opensuse.org/request/show/1216801
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mutter?expand=0&rev=238
2024-10-22 12:50:52 +00:00
4d96ee1b91 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/mutter?expand=0&rev=524 2024-10-21 18:08:44 +00:00
fd9588fb90 Accepting request 1205483 from GNOME:Factory
SCripted push of GNOME 47

OBS-URL: https://build.opensuse.org/request/show/1205483
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mutter?expand=0&rev=237
2024-10-08 15:18:13 +00:00
834d625a0a Add yet a upstream commit, fixing a bug via revert
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/mutter?expand=0&rev=522
2024-09-30 06:56:10 +00:00
795d28dff9 Accepting request 1201595 from GNOME:Factory
New old stable (forwarded request 1201236 from iznogood)

OBS-URL: https://build.opensuse.org/request/show/1201595
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mutter?expand=0&rev=236
2024-09-18 13:26:26 +00:00
0b2cd47a7e New old stable
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/mutter?expand=0&rev=520
2024-09-17 11:42:18 +00:00
14 changed files with 608 additions and 301 deletions

View File

@@ -9,11 +9,11 @@ This reverts commit 703bbe0e99dbb688352e0bff396e5cbf2c6af45b.
clutter/clutter/clutter-actor.c | 67 ++++++++++-----------------------
1 file changed, 20 insertions(+), 47 deletions(-)
Index: mutter-46.3/clutter/clutter/clutter-actor.c
Index: mutter-48.0/clutter/clutter/clutter-actor.c
===================================================================
--- mutter-46.3.orig/clutter/clutter/clutter-actor.c
+++ mutter-46.3/clutter/clutter/clutter-actor.c
@@ -566,7 +566,7 @@ struct _ClutterActorPrivate
--- mutter-48.0.orig/clutter/clutter/clutter-actor.c
+++ mutter-48.0/clutter/clutter/clutter-actor.c
@@ -581,7 +581,7 @@ struct _ClutterActorPrivate
/* the cached transformation matrix; see apply_transform() */
graphene_matrix_t transform;
@@ -22,7 +22,7 @@ Index: mutter-46.3/clutter/clutter/clutter-actor.c
float resource_scale;
@@ -730,7 +730,7 @@ struct _ClutterActorPrivate
@@ -747,7 +747,7 @@ struct _ClutterActorPrivate
guint clear_stage_views_needs_stage_views_changed : 1;
guint needs_redraw : 1;
guint needs_finish_layout : 1;
@@ -31,7 +31,7 @@ Index: mutter-46.3/clutter/clutter/clutter-actor.c
};
enum
@@ -2309,7 +2309,7 @@ absolute_geometry_changed (ClutterActor
@@ -2345,7 +2345,7 @@ absolute_geometry_changed (ClutterActor
{
actor->priv->needs_update_stage_views = TRUE;
actor->priv->needs_visible_paint_volume_update = TRUE;
@@ -40,7 +40,7 @@ Index: mutter-46.3/clutter/clutter/clutter-actor.c
actor->priv->needs_finish_layout = TRUE;
/* needs_finish_layout is already TRUE on the whole parent tree thanks
@@ -2931,9 +2931,8 @@ _clutter_actor_apply_relative_transforma
@@ -2974,9 +2974,8 @@ _clutter_actor_apply_relative_transforma
graphene_matrix_t *matrix)
{
ClutterActorPrivate *priv = self->priv;
@@ -52,7 +52,7 @@ Index: mutter-46.3/clutter/clutter/clutter-actor.c
/* Note we terminate before ever calling stage->apply_transform()
* since that would conceptually be relative to the underlying
@@ -2942,63 +2941,37 @@ _clutter_actor_apply_relative_transforma
@@ -2985,63 +2984,37 @@ _clutter_actor_apply_relative_transforma
if (self == ancestor)
return;
@@ -130,7 +130,7 @@ Index: mutter-46.3/clutter/clutter/clutter-actor.c
return;
}
@@ -7362,7 +7335,7 @@ clutter_actor_init (ClutterActor *self)
@@ -7535,7 +7508,7 @@ clutter_actor_init (ClutterActor *self)
priv->enable_model_view_transform = TRUE;
priv->transform_valid = FALSE;

View File

@@ -3,16 +3,24 @@
<service name="obs_scm" mode="manual">
<param name="scm">git</param>
<param name="url">https://gitlab.gnome.org/GNOME/mutter.git</param>
<param name="revision">46.4</param>
<param name="revision">48.4</param>
<param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@</param>
<param name="versionrewrite-pattern">(.*)\+0</param>
<param name="versionrewrite-replacement">\1</param>
<!-- <param name="changesgenerate">enable</param> -->
<param name="changesgenerate">disable</param>
</service>
<service name="obs_scm" mode="manual">
<param name="scm">git</param>
<param name="url">https://gitlab.gnome.org/GNOME/gvdb.git</param>
<param name="revision">b54bc5da25127ef416858a3ad92e57159ff565b3</param>
<param name="versionformat">0.gitmodule</param>
</service>
<service name="tar" mode="buildtime"/>
<service name="recompress" mode="buildtime">
<param name="file">*.tar</param>
<param name="compression">zst</param>
</service>
<service name="set_version" mode="manual" />
<service name="set_version" mode="manual">
<param name="basename">mutter</param>
</service>
</services>

BIN
gvdb-0.gitmodule.obscpio (Stored with Git LFS) Normal file

Binary file not shown.

4
gvdb.obsinfo Normal file
View File

@@ -0,0 +1,4 @@
name: gvdb
version: 0.gitmodule
mtime: 1725181085
commit: b54bc5da25127ef416858a3ad92e57159ff565b3

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:7a367792ce83f6f216543816823ee7d0e3a4cdc85cb6adb595f6f8e618ad40a4
size 30414861

BIN
mutter-48.4.obscpio (Stored with Git LFS) Normal file

Binary file not shown.

View File

@@ -1,119 +0,0 @@
diff --unified --recursive --text --new-file --color mutter-40.0.old/data/org.gnome.mutter.gschema.xml.in mutter-40.0.new/data/org.gnome.mutter.gschema.xml.in
--- mutter-40.0.old/data/org.gnome.mutter.gschema.xml.in 2021-04-23 08:52:33.870911873 +0800
+++ mutter-40.0.new/data/org.gnome.mutter.gschema.xml.in 2021-04-23 08:53:11.404056017 +0800
@@ -156,6 +156,16 @@
</description>
</key>
+ <key name="audible-bell-force-through-server" type="b">
+ <default>false</default>
+ <summary>Force the System Bell through the X server only.</summary>
+ <description>
+ Force the System Bell through the X server only for systems that
+ do not want to go through the sound card - for example that don't
+ have speakers.
+ </description>
+ </key>
+
<child name="keybindings" schema="org.gnome.mutter.keybindings"/>
</schema>
diff --unified --recursive --text --new-file --color mutter-40.0.old/src/core/bell.c mutter-40.0.new/src/core/bell.c
--- mutter-40.0.old/src/core/bell.c 2021-04-23 08:52:33.877578506 +0800
+++ mutter-40.0.new/src/core/bell.c 2021-04-23 08:53:11.404056017 +0800
@@ -54,6 +54,11 @@
#include "core/window-private.h"
#include "meta/compositor.h"
+#include "meta/display.h"
+#include "meta/meta-x11-display.h"
+#include <X11/Xlib.h>
+#include <X11/XKBlib.h>
+
G_DEFINE_TYPE (MetaBell, meta_bell, G_TYPE_OBJECT)
enum
@@ -202,6 +207,14 @@
if (meta_prefs_get_visual_bell ())
bell_visual_notify (display, window);
+ if (meta_prefs_bell_force_through_server ())
+ {
+ MetaX11Display *x11_display = meta_display_get_x11_display (display);
+ Display *xdisplay = meta_x11_display_get_xdisplay (x11_display);
+ XkbForceBell (xdisplay, 100);
+ return TRUE;
+ }
+
if (meta_prefs_bell_is_audible ())
return bell_audible_notify (display, window);
diff --unified --recursive --text --new-file --color mutter-40.0.old/src/core/prefs.c mutter-40.0.new/src/core/prefs.c
--- mutter-40.0.old/src/core/prefs.c 2021-04-23 08:52:33.877578506 +0800
+++ mutter-40.0.new/src/core/prefs.c 2021-04-23 08:53:11.404056017 +0800
@@ -98,6 +98,7 @@
static gboolean focus_change_on_pointer_rest = FALSE;
static gboolean bell_is_visible = FALSE;
static gboolean bell_is_audible = TRUE;
+static gboolean bell_force_through_server = FALSE;
static gboolean gnome_accessibility = FALSE;
static gboolean gnome_animations = TRUE;
static gboolean locate_pointer_is_enabled = FALSE;
@@ -352,6 +353,13 @@
&bell_is_audible, /* FIXME: change the name: it's confusing */
},
{
+ { "audible-bell-force-through-server",
+ SCHEMA_MUTTER,
+ META_PREF_AUDIBLE_BELL_FORCE_THROUGH_SERVER,
+ },
+ &bell_force_through_server,
+ },
+ {
{ KEY_GNOME_ACCESSIBILITY,
SCHEMA_INTERFACE,
META_PREF_GNOME_ACCESSIBILITY,
@@ -1714,6 +1722,9 @@
case META_PREF_AUDIBLE_BELL:
return "AUDIBLE_BELL";
+ case META_PREF_AUDIBLE_BELL_FORCE_THROUGH_SERVER:
+ return "AUDIBLE_BELL_FORCE_THROUGH_SERVER";
+
case META_PREF_VISUAL_BELL_TYPE:
return "VISUAL_BELL_TYPE";
@@ -1992,6 +2003,12 @@
return bell_is_audible;
}
+gboolean
+meta_prefs_bell_force_through_server (void)
+{
+ return bell_force_through_server;
+}
+
GDesktopVisualBellType
meta_prefs_get_visual_bell_type (void)
{
diff --unified --recursive --text --new-file --color mutter-40.0.old/src/meta/prefs.h mutter-40.0.new/src/meta/prefs.h
--- mutter-40.0.old/src/meta/prefs.h 2021-04-23 08:52:33.877578506 +0800
+++ mutter-40.0.new/src/meta/prefs.h 2021-04-23 08:53:11.404056017 +0800
@@ -91,6 +91,7 @@
META_PREF_WORKSPACE_NAMES,
META_PREF_VISUAL_BELL,
META_PREF_AUDIBLE_BELL,
+ META_PREF_AUDIBLE_BELL_FORCE_THROUGH_SERVER,
META_PREF_VISUAL_BELL_TYPE,
META_PREF_GNOME_ACCESSIBILITY,
META_PREF_GNOME_ANIMATIONS,
@@ -480,6 +481,9 @@
gboolean meta_prefs_bell_is_audible (void);
META_EXPORT
+gboolean meta_prefs_bell_force_through_server (void);
+
+META_EXPORT
GDesktopVisualBellType meta_prefs_get_visual_bell_type (void);
META_EXPORT

View File

@@ -1,48 +0,0 @@
diff -urp mutter-46.3.1.orig/src/core/constraints.c mutter-46.3.1/src/core/constraints.c
--- mutter-46.3.1.orig/src/core/constraints.c 2024-07-30 13:54:28.842797794 -0500
+++ mutter-46.3.1/src/core/constraints.c 2024-07-30 14:02:54.984030220 -0500
@@ -1730,6 +1730,12 @@ constrain_to_single_monitor (MetaWindow
}
static gboolean
+constraint_is_sle_classic(void){
+ char * session_mode = (char *) g_getenv ("GNOME_SHELL_SESSION_MODE");
+ return g_strcmp0("sle-classic", session_mode) == 0;
+}
+
+static gboolean
constrain_fully_onscreen (MetaWindow *window,
ConstraintInfo *info,
ConstraintPriority priority,
@@ -1745,6 +1751,11 @@ constrain_fully_onscreen (MetaWindow
if (window->type == META_WINDOW_DESKTOP ||
window->type == META_WINDOW_DOCK ||
window->fullscreen ||
+ /* in SLE Classic, there is no top bar and to avoid issues like
+ * bnc#883491, remove some constraints on CSD windows, which tends to have
+ * invisible wrapper box. Do the same for "constrain_titlebar_visible".
+ */
+ (constraint_is_sle_classic() && !window->decorated) ||
!window->require_fully_onscreen ||
info->is_user_action ||
meta_window_get_placement_rule (window))
@@ -1802,12 +1813,13 @@ constrain_titlebar_visible (MetaWindow
* is only meant for normal windows (e.g. we don't want docks to be shoved
* "onscreen" by their own strut).
*/
- if (window->type == META_WINDOW_DESKTOP ||
- window->type == META_WINDOW_DOCK ||
- window->fullscreen ||
- !window->require_titlebar_visible ||
- unconstrained_user_action ||
- user_nonnorthern_resize ||
+ if (window->type == META_WINDOW_DESKTOP ||
+ window->type == META_WINDOW_DOCK ||
+ window->fullscreen ||
+ !window->require_titlebar_visible ||
+ (constraint_is_sle_classic() && !window->decorated) ||
+ unconstrained_user_action ||
+ user_nonnorthern_resize ||
meta_window_get_placement_rule (window))
return TRUE;

View File

@@ -1,7 +1,7 @@
Index: mutter-46.3/src/backends/native/meta-default-modes-s390x.h
Index: mutter-48.0/src/backends/native/meta-default-modes-s390x.h
===================================================================
--- /dev/null
+++ mutter-46.3/src/backends/native/meta-default-modes-s390x.h
+++ mutter-48.0/src/backends/native/meta-default-modes-s390x.h
@@ -0,0 +1,57 @@
+/* Generated by gen-default-modes.py */
+
@@ -60,11 +60,11 @@ Index: mutter-46.3/src/backends/native/meta-default-modes-s390x.h
+{ 813000, 2304, 2307, 2312, 2386, 0, 4096, 4440, 4888, 5680, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "2304x4096_60.00" },
+{ 1276500, 2880, 2883, 2888, 2982, 0, 5120, 5560, 6128, 7136, 0, 0, DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_NVSYNC, DRM_MODE_TYPE_DEFAULT, "2880x5120_60.00" },
+};
Index: mutter-46.3/src/meson.build
Index: mutter-48.0/src/meson.build
===================================================================
--- mutter-46.3.orig/src/meson.build
+++ mutter-46.3/src/meson.build
@@ -968,6 +968,7 @@ if have_profiler
--- mutter-48.0.orig/src/meson.build
+++ mutter-48.0/src/meson.build
@@ -1031,6 +1031,7 @@ if have_profiler
endif
if have_native_backend
@@ -72,7 +72,7 @@ Index: mutter-46.3/src/meson.build
cvt = find_program('cvt')
gen_default_modes = find_program('backends/native/gen-default-modes.py')
@@ -975,6 +976,13 @@ if have_native_backend
@@ -1038,6 +1039,13 @@ if have_native_backend
output: 'meta-default-modes.h',
command: [gen_default_modes, '@OUTPUT@']
)
@@ -84,5 +84,5 @@ Index: mutter-46.3/src/meson.build
+ )
+ endif
mutter_built_sources += default_modes_h
endif
dbus_interfaces += [

View File

@@ -25,11 +25,11 @@ Closes <https://gitlab.gnome.org/GNOME/mutter/-/issues/3200>.
create mode 100644 src/wayland/meta-wayland-text-input-v1.c
create mode 100644 src/wayland/meta-wayland-text-input-v1.h
Index: mutter-46.3/clutter/clutter/clutter-enums.h
Index: mutter-48.0/clutter/clutter/clutter-enums.h
===================================================================
--- mutter-46.3.orig/clutter/clutter/clutter-enums.h
+++ mutter-46.3/clutter/clutter/clutter-enums.h
@@ -1183,6 +1183,9 @@ typedef enum
--- mutter-48.0.orig/clutter/clutter/clutter-enums.h
+++ mutter-48.0/clutter/clutter/clutter-enums.h
@@ -1128,6 +1128,9 @@ typedef enum
CLUTTER_INPUT_CONTENT_HINT_SENSITIVE_DATA = 1 << 7,
CLUTTER_INPUT_CONTENT_HINT_LATIN = 1 << 8,
CLUTTER_INPUT_CONTENT_HINT_MULTILINE = 1 << 9,
@@ -39,11 +39,11 @@ Index: mutter-46.3/clutter/clutter/clutter-enums.h
} ClutterInputContentHintFlags;
typedef enum
Index: mutter-46.3/src/core/events.c
Index: mutter-48.0/src/core/events.c
===================================================================
--- mutter-46.3.orig/src/core/events.c
+++ mutter-46.3/src/core/events.c
@@ -238,6 +238,7 @@ meta_display_handle_event (MetaDisplay
--- mutter-48.0.orig/src/core/events.c
+++ mutter-48.0/src/core/events.c
@@ -244,6 +244,7 @@ meta_display_handle_event (MetaDisplay
#ifdef HAVE_WAYLAND
MetaWaylandCompositor *wayland_compositor;
MetaWaylandTextInput *wayland_text_input = NULL;
@@ -51,7 +51,7 @@ Index: mutter-46.3/src/core/events.c
#endif
#ifdef HAVE_WAYLAND
@@ -246,6 +247,8 @@ meta_display_handle_event (MetaDisplay
@@ -252,6 +253,8 @@ meta_display_handle_event (MetaDisplay
{
wayland_text_input =
meta_wayland_compositor_get_text_input (wayland_compositor);
@@ -60,7 +60,7 @@ Index: mutter-46.3/src/core/events.c
}
#endif
@@ -287,9 +290,11 @@ meta_display_handle_event (MetaDisplay
@@ -300,9 +303,11 @@ meta_display_handle_event (MetaDisplay
}
#ifdef HAVE_WAYLAND
@@ -75,32 +75,32 @@ Index: mutter-46.3/src/core/events.c
return CLUTTER_EVENT_STOP;
if (wayland_compositor)
Index: mutter-46.3/src/meson.build
Index: mutter-48.0/src/meson.build
===================================================================
--- mutter-46.3.orig/src/meson.build
+++ mutter-46.3/src/meson.build
@@ -688,6 +688,8 @@ if have_wayland
'wayland/meta-wayland-tablet-tool.h',
'wayland/meta-wayland-text-input.c',
'wayland/meta-wayland-text-input.h',
--- mutter-48.0.orig/src/meson.build
+++ mutter-48.0/src/meson.build
@@ -694,6 +694,8 @@ if have_wayland
'wayland/meta-wayland-tablet-pad.c',
'wayland/meta-wayland-tablet-pad-group.c',
'wayland/meta-wayland-tablet-pad-group.h',
+ 'wayland/meta-wayland-text-input-v1.c',
+ 'wayland/meta-wayland-text-input-v1.h',
'wayland/meta-wayland-touch.c',
'wayland/meta-wayland-touch.h',
'wayland/meta-wayland-transaction.c',
@@ -1084,6 +1086,7 @@ if have_wayland
'wayland/meta-wayland-tablet-pad.h',
'wayland/meta-wayland-tablet-pad-ring.c',
'wayland/meta-wayland-tablet-pad-ring.h',
@@ -1146,6 +1148,7 @@ if have_wayland
['single-pixel-buffer', 'staging', 'v1', ],
['tablet', 'unstable', 'v2', ],
['text-input', 'unstable', 'v3', ],
+ ['text-input', 'unstable', 'v1', ],
['viewporter', 'stable', ],
['xdg-activation', 'staging', 'v1', ],
['xdg-foreign', 'unstable', 'v1', ],
Index: mutter-46.3/src/wayland/meta-wayland-seat.c
['xdg-dialog', 'staging', 'v1', ],
Index: mutter-48.0/src/wayland/meta-wayland-seat.c
===================================================================
--- mutter-46.3.orig/src/wayland/meta-wayland-seat.c
+++ mutter-46.3/src/wayland/meta-wayland-seat.c
@@ -229,6 +229,7 @@ default_focus (MetaWaylandEventHandler *
--- mutter-48.0.orig/src/wayland/meta-wayland-seat.c
+++ mutter-48.0/src/wayland/meta-wayland-seat.c
@@ -236,6 +236,7 @@ default_focus (MetaWaylandEventHandler *
surface);
meta_wayland_tablet_seat_set_pad_focus (seat->tablet_seat, surface);
meta_wayland_text_input_set_focus (seat->text_input, surface);
@@ -108,7 +108,7 @@ Index: mutter-46.3/src/wayland/meta-wayland-seat.c
}
if (caps & CLUTTER_INPUT_CAPABILITY_TABLET_TOOL)
@@ -290,6 +291,8 @@ meta_wayland_seat_new (MetaWaylandCompos
@@ -301,6 +302,8 @@ meta_wayland_seat_new (MetaWaylandCompos
NULL);
seat->text_input = meta_wayland_text_input_new (seat);
@@ -117,7 +117,7 @@ Index: mutter-46.3/src/wayland/meta-wayland-seat.c
meta_wayland_data_device_init (&seat->data_device, seat);
meta_wayland_data_device_primary_init (&seat->primary_data_device, seat);
@@ -338,6 +341,7 @@ meta_wayland_seat_free (MetaWaylandSeat
@@ -346,6 +349,7 @@ meta_wayland_seat_free (MetaWaylandSeat
g_object_unref (seat->touch);
meta_wayland_text_input_destroy (seat->text_input);
@@ -125,7 +125,7 @@ Index: mutter-46.3/src/wayland/meta-wayland-seat.c
g_free (seat);
}
@@ -478,7 +482,10 @@ meta_wayland_seat_handle_event_internal
@@ -498,7 +502,10 @@ meta_wayland_seat_handle_event_internal
if (event_type == CLUTTER_BUTTON_PRESS ||
event_type == CLUTTER_TOUCH_BEGIN)
{
@@ -137,7 +137,7 @@ Index: mutter-46.3/src/wayland/meta-wayland-seat.c
}
switch (event_type)
@@ -510,7 +517,8 @@ meta_wayland_seat_handle_event_internal
@@ -530,7 +537,8 @@ meta_wayland_seat_handle_event_internal
case CLUTTER_IM_COMMIT:
case CLUTTER_IM_DELETE:
case CLUTTER_IM_PREEDIT:
@@ -147,10 +147,10 @@ Index: mutter-46.3/src/wayland/meta-wayland-seat.c
return TRUE;
break;
Index: mutter-46.3/src/wayland/meta-wayland-seat.h
Index: mutter-48.0/src/wayland/meta-wayland-seat.h
===================================================================
--- mutter-46.3.orig/src/wayland/meta-wayland-seat.h
+++ mutter-46.3/src/wayland/meta-wayland-seat.h
--- mutter-48.0.orig/src/wayland/meta-wayland-seat.h
+++ mutter-48.0/src/wayland/meta-wayland-seat.h
@@ -30,6 +30,7 @@
#include "wayland/meta-wayland-pointer.h"
#include "wayland/meta-wayland-tablet-tool.h"
@@ -159,7 +159,7 @@ Index: mutter-46.3/src/wayland/meta-wayland-seat.h
#include "wayland/meta-wayland-touch.h"
#include "wayland/meta-wayland-types.h"
@@ -49,6 +50,7 @@ struct _MetaWaylandSeat
@@ -51,6 +52,7 @@ struct _MetaWaylandSeat
MetaWaylandDataDevicePrimary primary_data_device;
MetaWaylandTextInput *text_input;
@@ -167,10 +167,10 @@ Index: mutter-46.3/src/wayland/meta-wayland-seat.h
MetaWaylandInput *input_handler;
MetaWaylandEventHandler *default_handler;
Index: mutter-46.3/src/wayland/meta-wayland-text-input-v1.c
Index: mutter-48.0/src/wayland/meta-wayland-text-input-v1.c
===================================================================
--- /dev/null
+++ mutter-46.3/src/wayland/meta-wayland-text-input-v1.c
+++ mutter-48.0/src/wayland/meta-wayland-text-input-v1.c
@@ -0,0 +1,859 @@
+/*
+ * Copyright (C) 2024 SUSE LLC
@@ -1031,10 +1031,10 @@ Index: mutter-46.3/src/wayland/meta-wayland-text-input-v1.c
+
+ return retval;
+}
Index: mutter-46.3/src/wayland/meta-wayland-text-input-v1.h
Index: mutter-48.0/src/wayland/meta-wayland-text-input-v1.h
===================================================================
--- /dev/null
+++ mutter-46.3/src/wayland/meta-wayland-text-input-v1.h
+++ mutter-48.0/src/wayland/meta-wayland-text-input-v1.h
@@ -0,0 +1,38 @@
+/*
+ * Copyright (C) 2024 SUSE LLC
@@ -1074,10 +1074,10 @@ Index: mutter-46.3/src/wayland/meta-wayland-text-input-v1.h
+
+gboolean meta_wayland_text_input_v1_handle_event (MetaWaylandTextInputV1 *text_input,
+ const ClutterEvent *event);
Index: mutter-46.3/src/wayland/meta-wayland-versions.h
Index: mutter-48.0/src/wayland/meta-wayland-versions.h
===================================================================
--- mutter-46.3.orig/src/wayland/meta-wayland-versions.h
+++ mutter-46.3/src/wayland/meta-wayland-versions.h
--- mutter-48.0.orig/src/wayland/meta-wayland-versions.h
+++ mutter-48.0/src/wayland/meta-wayland-versions.h
@@ -49,6 +49,7 @@
#define META_ZXDG_OUTPUT_V1_VERSION 3
#define META_ZWP_XWAYLAND_KEYBOARD_GRAB_V1_VERSION 1
@@ -1085,12 +1085,12 @@ Index: mutter-46.3/src/wayland/meta-wayland-versions.h
+#define META_ZWP_TEXT_INPUT_V1_VERSION 1
#define META_WP_VIEWPORTER_VERSION 1
#define META_ZWP_PRIMARY_SELECTION_V1_VERSION 1
#define META_WP_PRESENTATION_VERSION 1
Index: mutter-46.3/src/wayland/meta-wayland.c
#define META_WP_PRESENTATION_VERSION 2
Index: mutter-48.0/src/wayland/meta-wayland.c
===================================================================
--- mutter-46.3.orig/src/wayland/meta-wayland.c
+++ mutter-46.3/src/wayland/meta-wayland.c
@@ -865,6 +865,7 @@ meta_wayland_compositor_new (MetaContext
--- mutter-48.0.orig/src/wayland/meta-wayland.c
+++ mutter-48.0/src/wayland/meta-wayland.c
@@ -983,6 +983,7 @@ meta_wayland_compositor_new (MetaContext
meta_wayland_keyboard_shortcuts_inhibit_init (compositor);
meta_wayland_surface_inhibit_shortcuts_dialog_init ();
meta_wayland_text_input_init (compositor);
@@ -1098,7 +1098,7 @@ Index: mutter-46.3/src/wayland/meta-wayland.c
meta_wayland_init_presentation_time (compositor);
meta_wayland_activation_init (compositor);
meta_wayland_transaction_init (compositor);
@@ -1124,6 +1125,12 @@ meta_wayland_compositor_get_text_input (
@@ -1252,6 +1253,12 @@ meta_wayland_compositor_get_text_input (
return compositor->seat->text_input;
}
@@ -1111,10 +1111,10 @@ Index: mutter-46.3/src/wayland/meta-wayland.c
static void
meta_wayland_compositor_update_focus (MetaWaylandCompositor *compositor,
MetaWindow *window)
Index: mutter-46.3/src/wayland/meta-wayland.h
Index: mutter-48.0/src/wayland/meta-wayland.h
===================================================================
--- mutter-46.3.orig/src/wayland/meta-wayland.h
+++ mutter-46.3/src/wayland/meta-wayland.h
--- mutter-48.0.orig/src/wayland/meta-wayland.h
+++ mutter-48.0/src/wayland/meta-wayland.h
@@ -26,6 +26,7 @@
#include "meta/types.h"
#include "meta/meta-wayland-compositor.h"
@@ -1123,7 +1123,7 @@ Index: mutter-46.3/src/wayland/meta-wayland.h
#include "wayland/meta-wayland-types.h"
META_EXPORT_TEST
@@ -88,6 +89,7 @@ void meta_wayland_com
@@ -99,6 +100,7 @@ void meta_wayland_com
MetaWindow *window);
MetaWaylandTextInput * meta_wayland_compositor_get_text_input (MetaWaylandCompositor *compositor);

View File

@@ -13,13 +13,13 @@ by special-casing shaped Java windows.
src/x11/window-x11.c | 9 +++++++++
3 files changed, 19 insertions(+)
Index: mutter-46.3/src/compositor/meta-window-actor-x11.c
Index: mutter-48.0/src/compositor/meta-window-actor-x11.c
===================================================================
--- mutter-46.3.orig/src/compositor/meta-window-actor-x11.c
+++ mutter-46.3/src/compositor/meta-window-actor-x11.c
@@ -424,6 +424,14 @@ has_shadow (MetaWindowActorX11 *actor_x1
--- mutter-48.0.orig/src/compositor/meta-window-actor-x11.c
+++ mutter-48.0/src/compositor/meta-window-actor-x11.c
@@ -408,6 +408,14 @@ has_shadow (MetaWindowActorX11 *actor_x1
*/
if (window->has_custom_frame_extents)
if (!meta_window_actor_is_opaque (META_WINDOW_ACTOR (actor_x11)))
return FALSE;
+
+ /*
@@ -31,12 +31,12 @@ Index: mutter-46.3/src/compositor/meta-window-actor-x11.c
+ return FALSE;
/*
* Generate shadows for all other windows.
Index: mutter-46.3/src/x11/window-x11-private.h
* If a window specifies that it has custom frame extents, that likely
Index: mutter-48.0/src/x11/window-x11-private.h
===================================================================
--- mutter-46.3.orig/src/x11/window-x11-private.h
+++ mutter-46.3/src/x11/window-x11-private.h
@@ -125,6 +125,8 @@ gboolean meta_window_x11_has_pointer (Me
--- mutter-48.0.orig/src/x11/window-x11-private.h
+++ mutter-48.0/src/x11/window-x11-private.h
@@ -128,6 +128,8 @@ gboolean meta_window_x11_has_pointer (Me
gboolean meta_window_x11_same_application (MetaWindow *window,
MetaWindow *other_window);
@@ -45,11 +45,11 @@ Index: mutter-46.3/src/x11/window-x11-private.h
void meta_window_x11_shutdown_group (MetaWindow *window);
META_EXPORT
Index: mutter-46.3/src/x11/window-x11.c
Index: mutter-48.0/src/x11/window-x11.c
===================================================================
--- mutter-46.3.orig/src/x11/window-x11.c
+++ mutter-46.3/src/x11/window-x11.c
@@ -2582,6 +2582,15 @@ meta_window_x11_update_shape_region (Met
--- mutter-48.0.orig/src/x11/window-x11.c
+++ mutter-48.0/src/x11/window-x11.c
@@ -2718,6 +2718,15 @@ meta_window_x11_update_shape_region (Met
meta_window_set_shape_region (window, region);
}

View File

@@ -1,3 +1,476 @@
-------------------------------------------------------------------
Mon Jul 14 17:08:53 UTC 2025 - Michael Gorse <mgorse@suse.com>
- Drop mutter-SLE-bell.patch. It no longer applies with --fuzz=0,
and it is X11-only, so it is no longer useful for SLE 16.
-------------------------------------------------------------------
Sun Jun 29 17:23:25 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 48.4:
+ Unlink outputs from unused connectors in update_outputs
+ Add speed limit to Visual alerts
+ Fix behavior of windows that get activated before mapped
+ Fix incorrect cursor over Xwayland clients
+ Fix hi-res scroll events getting converted to flip-flopping
discrete events
+ Fixed crash
+ Misc. bug fixes and cleanups
-------------------------------------------------------------------
Tue Jun 3 07:44:09 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 48.3.1:
+ Fix Xwayland windows becoming unresponsive to events
+ Fix drag and drop of tabs into tiled/maximized state
-------------------------------------------------------------------
Mon May 26 14:21:25 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 48.3:
+ Use opaque dma-buf formats substitutes for scanout
+ Restore tiled/maximized windows to the correct monitor
+ Do not leak session manager file to launched processes
+ Use frame-sync candidate that likely matches scanout candidate
+ Propagate all touchpad gesture events to apps
+ Update window decorations on override-redirect attribute
+ Load initial _NET_WM_FULLSCREEN_MONITORS value
+ Fix race when registering implicit grab
+ Skip multiple refresh intervals if necessary
+ box-layout: Update actor-request-mode on orientation changes
+ Do not take control of logind session on Xorg
+ Fixed crashes
+ Plugged leaks
+ Misc. bug fixes and cleanups
+ Updated translations.
-------------------------------------------------------------------
Mon Apr 14 08:20:04 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 48.2:
+ Fix animated cursors
+ Announce workspace changes to screen reader
+ Fix popups showing in some situations
+ Fix wrong cursor after window animations
+ Fixed crashes
+ Misc. bug fixes and cleanups
+ Updated translations.
-------------------------------------------------------------------
Tue Apr 1 14:12:25 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 48.1:
+ Fixed occasional screen freezes
+ Fix tablet tool cursor sizes when set via the cursor shape
protocol
+ Fix hiding the cursor when using the cursor shape protocl
+ Fall back to the default color mode when a HDR monitor looses
HDR capabilities
+ Disable HDR support with non-atomic (legacy) KMS drivers
+ Fix the cursor shape protocol when being used with tablets
+ Immediately update cursors on theme and size changes
+ Avoid cursor stuttering when cursor set via the cursor shape
protocol
+ Handle DnD cursor feedback in compositor
+ Fixed crashes
+ Misc. bug fixes and cleanups
-------------------------------------------------------------------
Fri Mar 28 16:50:36 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 48.0+38:
* cursor-sprite/xcursor: Add a cache for the XCursor images
* backends/cursor: Propagate cursor theme and size pref changes
* cursor-renderer/native: Handle when kms_cursor_manager is NULL
* tests: Add a11y mouse keys test
* tests/utils: Add helper to wait for stage update
* tests: Add uinput based virtual input device factory method
* dbus-templates/logind: Open fds as nonblocking
* seat-impl: Split initialization in two steps
* wayland: Handle NULL backend in handle_release_points
* wayland: Refactor handle_release_points helper out of
_dec_use_count
* compositor: Ensure to freeze DnD surface actor during failed
animation
* clutter/frame-clock: Don't accidentally reschedule-now
* Revert "kms/impl-device: Always catch pending KMS update in
_schedule_process"
* onscreen/native: Account for all posted frames
* onscreen/native: Include connector in some debug logs
* clutter/frame-clock: Add more debug logging
* clutter/frame-clock: Set frame clock state via helper
* monitor-manager: Don't apply configurations with unsupported
color modes
* monitor-manager: Split out helper to check monitor availability
* monitor: Add helper to check whether a color mode is supported
* monitor-config-utils: Add monitors config copy function
* wayland: Bail early if cursor shape doesn't change
* wayland: Fix thinko in cursor_shape_manager.get_tablet_tool_v2
* wayland: Fix thinko in shape protocol implementation with
tablet tools
* kms/device: Add SUPPORTS_COLOR_MODES flag and use it to guard
HDR/color
* kms/impl-device/simple: Add support for missing KMS properties
* kms/impl-device/simple: Add support for KMS blobs
* wayland: Allow changing from a cursor shape to a NULL surface
* cursor: Move sprite preparation into sprite classes
* tests: Disconnect dangling signal handlers
* Fix mutter crash from should_constraint_be_enabled()
* test-client: Ignore GdkX11 deprecations
* frames: Ignore GdkX11 deprecations
- Drop 0001-cursor-Unify-prepare_func-for-shape-cursors.patch:
Fixed upstream.
-------------------------------------------------------------------
Fri Mar 21 08:05:33 UTC 2025 - Dead Mozay <dead_mozay@opensuse.org>
- Add 0001-cursor-Unify-prepare_func-for-shape-cursors.patch.
Solves the problem of changing the size of the cursor in gtk
applications on HiDPI displays.
-------------------------------------------------------------------
Thu Mar 20 15:43:17 UTC 2025 - bjorn.lie@gmail.com
- Update to version 48.0+5:
* Revert "ci: Disable container building temporarily"
* Revert "ci: Disable sysext temporarily"
* tests: Raise the timeout on monitor-unit from 1 minute to 5
minutes
* Revert "onscreen/native: Account for all posted frames"
* kms/impl-device: Always catch pending KMS update in
_schedule_process
-------------------------------------------------------------------
Tue Mar 18 01:57:42 UTC 2025 - Xiaoguang Wang <xiaoguang.wang@suse.com>
- Drop mutter-SLE-relax-some-constraints-on-CSD-windows.patch:
sle-classic is not supported.
-------------------------------------------------------------------
Sun Mar 16 14:49:50 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 48.0:
+ Improve wp_color_management_v1 support
+ Fix cursor brightness not following HDR luminance setting
+ Fix black screen with nvidia driver
+ Adjust presentation time feedback for triple buffering
+ Fix broken overlay cursor damage tracking
+ Add support for Kana and Compose USB HID LEDs
+ Fix frequent frame skips under some circumstances
+ Fix random output freezes
+ Fixed crashes
+ Misc. bug fixes and cleanups
+ Updated translations.
- Rebase patches with quilt and simplyfy conditionals applying
patches.
-------------------------------------------------------------------
Fri Mar 14 14:04:59 UTC 2025 - Michael Gorse <mgorse@suse.com>
- Drop use of sle_version in favor of is_opensuse and suse_version.
Sle_version is no longer used in SLE 16.
-------------------------------------------------------------------
Wed Mar 5 00:48:02 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 48.rc:
+ Support presentation-time version 2
+ Honor wl_surface.offset on cursor surfaces
+ Allow to activate the overview with either Super key
+ Implement dynamic triple buffering
+ Implement the cursor_shape_v1 protocol
+ Improve window placement when centering new windows
+ Fix sharable surfaces with nvidia as primary
+ Default to sticky drag lock
+ Implement a11y keyboard monitoring support
+ Support wp_color_management_v1 protocol
+ Fix dma-bufs support for headless sessions
+ Allow to mark monitors for lease via gdctl
+ Fixed confused IM focus state after closing some windows
+ Center new windows by default
+ Add output luminance settings
+ Do not use triple buffering when update time fits into refresh
interval
+ Fixed crashes
+ Misc. bug fixes and cleanups
+ Updated translations.
-------------------------------------------------------------------
Wed Mar 5 00:48:01 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 48.beta:
+ Update cursors via the frame clock in virtual monitors
+ Synchronize device enabled state when adding device
+ Do not use modifiers if surface should be sharable
+ Add accessible state tracking in Clutter
+ Introduce GNOME Display Control (gdctl) utility
+ Fix notifying shell about modifier-only keyboard layout
switches
+ Configure HDR via DisplayConfig D-Bus API
+ Fixed crashes
+ Misc. bug fixes and cleanups
- Add pkgconfig(bash-completion), python3-argcomplete and
python3-docutils BuildRequires, new dependencies.
-------------------------------------------------------------------
Wed Mar 5 00:48:00 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 48.alpha:
+ gwakeup: Reduce wake-ups to only first item in queue
+ x11: Reduce chances XPending does recvmsg() syscall
+ Fix grabbing tablet devices
+ Improve color-management support
+ Fix misplaced windows and random resizes on scaled monitors
+ Improve detecting preferred primary devices
+ Merge CoglPango into Clutter
+ Always depend on libdisplay-info for EDID parsing
+ Fix explicit sync with virtual monitors w/o pipewire streams
+ Introspect `event` parameter in MetaKeyHandlerFunc
+ Allow to configure monitors as for-lease
+ Add support for system bell protocol
+ Add `configure` signal to allow tweaking original window
configuration
+ Default to high thread instead of realtime priority for KMS
thread
+ Add built-in renderdoc support
+ Fix maximized X11 when using native Xwayland scaling
+ Implement xdg-toplevel-drag-v1 protocol
+ Fix blank screen in remote headless sessions
+ Query screen cast format modifiers via CoglRenderer
+ Also request high priority secondary EGL context
+ Fix Xwayland DND coordinates when using fractional scaling
+ Remove ClutterImage
+ Fix applying initial _NET_WM_WINDOW_OPACITY on Xwayland
+ Implement wp_viewport support for cursor surfaces
+ Improve input → output latency of cursor movements
+ Make font-rendering support optional
+ Improve frame rate on monitors attached to secondary GPUs in
copy mode
+ Add support for commit-timing-v1 and fifo-v1 protocols
+ Use BT709 coefficients and limited range for YUV conversion by
default
+ Send preferred scales to all surface roles
+ Fixed crashes
+ Misc. bug fixes and cleanups
- Stop passing libdisplay_info=true to meson setup, no longer
needed nor recognized.
- Rebase patches.
- Disable patches needing rebase:
+ 0001-Revert-clutter-actor-Cache-stage-relative-instead-of.patch
+ mutter-implement-text-input-v1.patch
- Bump api_major to 16 following upstream changes.
-------------------------------------------------------------------
Tue Mar 4 20:23:07 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 47.6:
+ Support presentation-time version 2
+ Honor wl_surface.offset on cursor surfaces
+ Fix sharable surfaces with nvidia as primary
+ Fixed crash
-------------------------------------------------------------------
Wed Feb 5 12:24:49 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 47.5:
+ Synchronize device enabled state when adding device
+ Do not use modifiers if surface should be sharable
+ Fix notifying shell about modifier-only keyboard layout
switches
+ Fixed crashes
+ Misc. bug fixes and cleanups
-------------------------------------------------------------------
Mon Jan 13 12:47:11 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 47.4:
+ Use BT709 coefficients and limited range for YUV conversion by
defaults
+ Also request high priority secondary EGL context
+ Fix Xwayland DND coordinates when using fractional scaling
+ Fix applying initial _NET_WM_WINDOW_OPACITY on Xwayland
+ Implement wp_viewport support for cursor surfaces
+ Improve input → output latency of cursor movements
+ Improve frame rate on monitors attached to secondary GPUs in
copy mode
+ Send preferred scales to all surface roles
+ Misc. bug fixes and cleanups
+ Updated translations.
-------------------------------------------------------------------
Fri Dec 6 07:39:00 UTC 2024 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 47.3:
+ Fix maximized X11 when using native xwayland scaling
+ Fix blank screen in remote headless sessions
+ Fix touch-triggered popups being cancelled too early
+ Fix pointer cursor during compositor grabs
+ Fixed crash
-------------------------------------------------------------------
Mon Nov 25 19:50:53 UTC 2024 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 47.2:
+ Fix warping pointer after releasing pointer constraints
+ Default to high thread instead of realtime priority for KMS
thread
+ Avoid CPU stalls with NVIDIA secondary GPUs with
directly-attached monitors
+ Fix updating cursor immediately when starting window drag
+ Add pipeline hooks to user program pipelines
+ Prefer GPUs with built-in panels connected as primary GPU
+ Fix cursor glitches when using virtual monitors
+ Ensure frame events are sent for cursor surfaces
+ Allow BGRX8888 format on big endian
+ Fix touchscreen drag-and-drop on wayland
+ Fixed crashes
+ Misc. bug fixes and cleanups
-------------------------------------------------------------------
Tue Oct 29 14:42:32 UTC 2024 - bjorn.lie@gmail.com
- Update to version 47.1+3:
* wayland/pointer-constraints: Warp pointer after destroying
resource
* Updated translations.
-------------------------------------------------------------------
Sat Oct 19 08:39:02 UTC 2024 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 47.1:
+ gwakeup: Reduce wake-ups to only first item in queue
+ x11: Reduce chances XPending does recvmsg() syscall
+ Fix grabbing tablet devices
+ Fix misplaced windows and random resizes on scaled monitors
+ Fix explicit sync with virtual monitors w/o pipewire streams
+ Improve detecting preferred primary devices
+ Fixed crashes
+ Misc. bug fixes and cleanups
+ Updated translations.
-------------------------------------------------------------------
Thu Oct 17 17:07:10 UTC 2024 - bjorn.lie@gmail.com
- Update to version 47.0+24:
* stage-impl: Ensure that a sync object is created in headless mode
* backends/x11: Avoid potential crash in pad_switch_mode
* display: Do not crash attempting to display OSD for unknown
Wacom device
* wayland/drm-lease: Do not add connector twice on lease
disappeared
* wayland/drm-lease: Hold device fd when listing leases
-------------------------------------------------------------------
Thu Sep 26 18:20:54 UTC 2024 - bjorn.lie@gmail.com
- Update to version 47.0+19:
* Revert "window/wayland: Use scale for configured rect in
configuration"
* cogl/gles: Don't initialize glGetStringi
* cogl/gl: Don't initialize potentially unused/unsupported
functions
* cogl: Don't _cogl_context_get_gl_extensions before
check_gl_version
* cogl/egl: Restore support for EGL 1.4
* wayland/tablet-tool: Fix grabbing tablet devices
* cogl/gles: Use unsized internal formats for RGB8, RGBA8 in GLES
2.0
* wayland/color-management: Fix SIGSEGV on dispose
* x11: Reduce chances XPending does recvmsg() syscall
* gwakeup: Reduce wake-ups to only first item in queue
* window/x11: Use g_autoslist (MetaStrut) in
meta_window_x11_update_struts
* Updated translations.
-------------------------------------------------------------------
Mon Sep 16 22:52:32 UTC 2024 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 47.0:
+ Fix resizing of electron windows
+ Fix using modifiers on multi-GPU setups
+ Don't override externally set tablet calibration
+ Add experimental support for xdg-session-manager-v1 protocol
+ Fixed crashes
+ Misc. bug fixes and cleanups
+ Updated translations.
- Add gvdb submodule and add as source.
-------------------------------------------------------------------
Mon Sep 16 21:20:19 UTC 2024 - Dominique Leuenberger <dimstar@opensuse.org>
- Update to version 47.rc+40:
+ window/xwayland: Handle arithmetics close to the int limits.
-------------------------------------------------------------------
Mon Sep 16 20:19:12 UTC 2024 - Michael Gorse <mgorse@suse.com>
- Update version requirements to correspond with the source.
-------------------------------------------------------------------
Mon Sep 16 18:19:54 UTC 2024 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 47.rc (bsc#1223393):
+ Add experimental color management protocol support
+ Merge Cally into Clutter
+ Fix drag and drop between X11 and wayland clients
+ Fix drag and drop from grabbing popups
+ Fix EGLDevice support
+ Improve cursor smoothness under load
+ Fix frozen cursor on some hybrid machines
+ Fix touch window dragging with pointer lock enabled
+ Store the layout mode in monitor config
+ Fix keys sometimes getting stuck after using global shortcut
+ Fix propagating tablet device removals to clients
+ Fix tablet input in maximized windows
+ Reduce damage on window movement
+ Install mutter tests
+ Use libadwaita for server-side decorations on GNOME
+ Fix frozen cursor after suspend
+ Let scaling-aware Xwayland clients scale themselves
+ Add initial PipeWire explicit sync support
+ Trace damage reason in sysprof
+ Expose new backlight API to gnome-settings-daemon
+ Fixed crashes
+ Plugged leaks
+ Misc. bug fixes and cleanups
+ Updated translations.
-------------------------------------------------------------------
Mon Sep 16 18:17:08 UTC 2024 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 47.beta:
+ Fix visibility of Xwayland windows
+ Add plumbing for transforming color state
+ Build and publish GNOME OS systemd-sysext extensions
+ Implement support for tablet tool keybindings and actions
+ Add support for tablet tool pressure ranges
+ Improve sticky behavior with transient dialogs
+ Improve placement and focus logic with always-on-top windows
+ Expose Orientationmanager to introspection
+ Recover from secondary GPU update failures
+ Plugged leaks
+ Misc. bug fixes and cleanups.
- Rebase patches with quilt.
- Bump api_major to 15 following upstream changes.
-------------------------------------------------------------------
Sun Sep 15 12:06:37 UTC 2024 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 45.5:
+ Fix drag and drop between X11 and wayland clients
+ Fix drag and drop from grabbing popups
+ Fix EGLDevice support
+ Fix frozen cursor on some hybrid machines
+ Fix touch window dragging with pointer lock enabled
+ Fix propagating tablet device removals to clients
+ Fix tablet input in maximized windows
+ Reduce damage on window movement
+ Fix frozen cursor after suspend
+ Fix using modifiers on multi-GPU setups
+ Fixed crashes
+ Misc. bug fixes and cleanups
+ Updated translations.
-------------------------------------------------------------------
Fri Aug 9 18:19:48 UTC 2024 - Michael Gorse <mgorse@suse.com>

View File

@@ -1,4 +1,4 @@
name: mutter
version: 46.4
mtime: 1722785816
commit: 04995f56641012d71b5b226782e63d82c3ca3081
version: 48.4
mtime: 1751191220
commit: d7dc2308e095f4267c7e5994b4d66b5f991b7afc

View File

@@ -1,7 +1,7 @@
#
# spec file for package mutter
#
# Copyright (c) 2024 SUSE LLC
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -18,17 +18,19 @@
%bcond_with profiler
%define api_major 14
%define api_major 16
%define api_minor 0
%define libmutter libmutter-%{api_major}-%{api_minor}
Name: mutter
Version: 46.4
Version: 48.4
Release: 0
Summary: Window and compositing manager based on Clutter
License: GPL-2.0-or-later
Group: System/GUI/GNOME
URL: https://www.gnome.org
Source0: %{name}-%{version}.tar.zst
Source1: gvdb-0.gitmodule.tar.zst
# PATCH-FIX-UPSTREAM mutter-disable-cvt-s390x.patch bsc#1158128 fcrozat@suse.com -- Do not search for cvt on s390x, it doesn't exist there
Patch1: mutter-disable-cvt-s390x.patch
@@ -39,48 +41,45 @@ Patch4: 0001-Revert-clutter-actor-Cache-stage-relative-instead-of.patch
#PATCH-FEATURE-OPENSUSE mutter-implement-text-input-v1.patch glgo#GNOME/mutter!3751 bsc#1219505 alynx.zhou@suse.com -- Allow input method to work in Wayland Chromium
Patch5: mutter-implement-text-input-v1.patch
## SLE-only patches start at 1000
# PATCH-FEATURE-SLE mutter-SLE-bell.patch FATE#316042 bnc#889218 idonmez@suse.com -- make audible bell work out of the box.
Patch1000: mutter-SLE-bell.patch
# PATCH-FIX-SLE mutter-SLE-relax-some-constraints-on-CSD-windows.patch bnc#883491 cxiong@suse.com -- Relax some constraints on window positioning for CSD windows s.t. they can be placed at the very top of the monitor.
Patch1001: mutter-SLE-relax-some-constraints-on-CSD-windows.patch
BuildRequires: Mesa-libGLESv3-devel
BuildRequires: fdupes
%ifnarch s390x
BuildRequires: (libxcvt if xorg-x11-server > 21)
%endif
BuildRequires: meson >= 0.53.0
BuildRequires: meson >= 1.3.0
BuildRequires: pkgconfig
BuildRequires: python3-argcomplete
BuildRequires: python3-docutils
BuildRequires: xorg-x11-server
BuildRequires: xvfb-run
BuildRequires: pkgconfig(bash-completion)
BuildRequires: pkgconfig(cairo) >= 1.10.0
BuildRequires: pkgconfig(colord) >= 1.4.5
BuildRequires: pkgconfig(egl)
BuildRequires: pkgconfig(fribidi) >= 1.0.0
BuildRequires: pkgconfig(gbm) >= 17.3
BuildRequires: pkgconfig(gbm) >= 21.3
BuildRequires: pkgconfig(gio-unix-2.0) >= 2.69.0
BuildRequires: pkgconfig(glesv2)
BuildRequires: pkgconfig(glib-2.0) >= 2.69.0
BuildRequires: pkgconfig(glib-2.0) >= 2.81.1
BuildRequires: pkgconfig(gnome-desktop-4)
BuildRequires: pkgconfig(gnome-settings-daemon)
BuildRequires: pkgconfig(gobject-introspection-1.0) >= 0.9.5
BuildRequires: pkgconfig(graphene-gobject-1.0)
BuildRequires: pkgconfig(gsettings-desktop-schemas) >= 3.37.2
BuildRequires: pkgconfig(gsettings-desktop-schemas) >= 47.beta
BuildRequires: pkgconfig(gtk4)
BuildRequires: pkgconfig(gudev-1.0) >= 232
BuildRequires: pkgconfig(lcms2) >= 2.6
BuildRequires: pkgconfig(libcanberra-gtk3) >= 0.26
BuildRequires: pkgconfig(libdisplay-info)
BuildRequires: pkgconfig(libdrm) >= 2.4.118
BuildRequires: pkgconfig(libeis-1.0)
BuildRequires: pkgconfig(libinput) >= 1.15.0
BuildRequires: pkgconfig(libpipewire-0.3) >= 0.3.21
BuildRequires: pkgconfig(libeis-1.0) >= 1.3.901
BuildRequires: pkgconfig(libinput) >= 1.26.0
BuildRequires: pkgconfig(libpipewire-0.3) >= 1.2.0
BuildRequires: pkgconfig(libstartup-notification-1.0) >= 0.7
BuildRequires: pkgconfig(libsystemd)
BuildRequires: pkgconfig(libudev) >= 136
BuildRequires: pkgconfig(libudev) >= 228
BuildRequires: pkgconfig(libwacom) >= 0.13
BuildRequires: pkgconfig(pango) >= 1.2.0
BuildRequires: pkgconfig(pango) >= 1.46.0
BuildRequires: pkgconfig(pixman-1) >= 0.42
BuildRequires: pkgconfig(sm)
%if %{with profiler}
@@ -90,8 +89,8 @@ BuildRequires: pkgconfig(sysprof-capture-4) >= 3.37.2
BuildRequires: pkgconfig(udev)
BuildRequires: pkgconfig(upower-glib) >= 0.99.0
BuildRequires: pkgconfig(wayland-eglstream)
BuildRequires: pkgconfig(wayland-protocols) >= 1.33
BuildRequires: pkgconfig(wayland-server) >= 1.22
BuildRequires: pkgconfig(wayland-protocols) >= 1.36
BuildRequires: pkgconfig(wayland-server) >= 1.23
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(x11-xcb)
BuildRequires: pkgconfig(xau)
@@ -141,20 +140,11 @@ applications that want to make use of the mutter library.
%lang_package
%prep
%autosetup -N
%if !0%{?sle_version}
%autopatch -p1 -M 999
%else
%patch -P 1 -p1
%patch -P 2 -p1
%patch -P 4 -p1
%patch -P 5 -p1
%endif
# SLE-only patches and translations.
%if 0%{?sle_version}
%patch -P 1000 -p1
%patch -P 1001 -p1
%endif
%autosetup -p1
pushd subprojects
tar xf %{SOURCE1}
mv gvdb-0.gitmodule gvdb
popd
%build
%meson \
@@ -162,10 +152,9 @@ applications that want to make use of the mutter library.
-Dwayland_eglstream=true \
-Dcogl_tests=false \
-Dclutter_tests=false \
-Dtests=false \
-Dtests=disabled \
-Dinstalled_tests=false \
-Dxwayland_initfd=auto \
-Dlibdisplay_info=true \
%if %{with profiler}
-Dprofiler=true \
%else
@@ -192,16 +181,13 @@ applications that want to make use of the mutter library.
# These so files are not split out since they are private to mutter
%{_libdir}/mutter-%{api_major}/libmutter-clutter-%{api_major}.so.*
%{_libdir}/mutter-%{api_major}/libmutter-cogl-pango-%{api_major}.so.*
%{_libdir}/mutter-%{api_major}/libmutter-cogl-%{api_major}.so.*
%{_libdir}/mutter-%{api_major}/libmutter-mtk-%{api_major}.so.*
%{_libdir}/mutter-%{api_major}/plugins/libdefault.so
# These typelibs are not split out since they are private to mutter
%{_libdir}/mutter-%{api_major}/Cally-%{api_major}.typelib
%{_libdir}/mutter-%{api_major}/Clutter-%{api_major}.typelib
%{_libdir}/mutter-%{api_major}/Cogl-%{api_major}.typelib
%{_libdir}/mutter-%{api_major}/CoglPango-%{api_major}.typelib
%{_libdir}/mutter-%{api_major}/Meta-%{api_major}.typelib
%{_libdir}/mutter-%{api_major}/Mtk-%{api_major}.typelib
@@ -221,23 +207,23 @@ applications that want to make use of the mutter library.
%{_datadir}/glib-2.0/schemas/org.gnome.mutter.gschema.xml
%{_datadir}/glib-2.0/schemas/org.gnome.mutter.wayland.gschema.xml
%{_bindir}/gdctl
%{_datadir}/bash-completion/completions/gdctl
%{_mandir}/man1/gdctl.1%{ext_man}
%files devel
%{_includedir}/mutter-%{api_major}/
%{_libdir}/mutter-%{api_major}/Meta-%{api_major}.gir
%{_libdir}/mutter-%{api_major}/Cally-%{api_major}.gir
%{_libdir}/mutter-%{api_major}/Clutter-%{api_major}.gir
%{_libdir}/mutter-%{api_major}/Cogl-%{api_major}.gir
%{_libdir}/mutter-%{api_major}/CoglPango-%{api_major}.gir
%{_libdir}/mutter-%{api_major}/Mtk-%{api_major}.gir
%{_libdir}/mutter-%{api_major}/libmutter-clutter-%{api_major}.so
%{_libdir}/mutter-%{api_major}/libmutter-cogl-pango-%{api_major}.so
%{_libdir}/mutter-%{api_major}/libmutter-cogl-%{api_major}.so
%{_libdir}/mutter-%{api_major}/libmutter-mtk-%{api_major}.so
%{_libdir}/libmutter-%{api_major}.so
%{_libdir}/pkgconfig/libmutter-%{api_major}.pc
%{_libdir}/pkgconfig/mutter-clutter-%{api_major}.pc
%{_libdir}/pkgconfig/mutter-cogl-%{api_major}.pc
%{_libdir}/pkgconfig/mutter-cogl-pango-%{api_major}.pc
%{_libdir}/pkgconfig/mutter-mtk-%{api_major}.pc
%files lang -f %{name}.lang