diff --git a/mutter-3.26.0.tar.xz b/mutter-3.26.0.tar.xz deleted file mode 100644 index 708d9f4..0000000 --- a/mutter-3.26.0.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2a62933a11632830c430570b0f8d762fd9f76a2eb955d54cc14f73274d06e577 -size 3618704 diff --git a/mutter-3.26.1.tar.xz b/mutter-3.26.1.tar.xz new file mode 100644 index 0000000..b11d198 --- /dev/null +++ b/mutter-3.26.1.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16faf617aae9be06dc5f9e104f4cd20dfdd4d6ec0bc10053752262e9f79a04c2 +size 3623648 diff --git a/mutter-fix-hidpi-scaling-x11.patch b/mutter-fix-hidpi-scaling-x11.patch deleted file mode 100644 index 7909f09..0000000 --- a/mutter-fix-hidpi-scaling-x11.patch +++ /dev/null @@ -1,25 +0,0 @@ -From ea214fbe0f85119f7a10244d211a13489a7a44d6 Mon Sep 17 00:00:00 2001 -From: Jeremy Soller -Date: Mon, 25 Sep 2017 20:04:00 +0000 -Subject: Remove unscaled-font-dpi setting from X11 backend - -https://bugzilla.gnome.org/show_bug.cgi?id=788049 ---- - clutter/clutter/x11/clutter-settings-x11.h | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/clutter/clutter/x11/clutter-settings-x11.h b/clutter/clutter/x11/clutter-settings-x11.h -index 3e08885..b7d1b0e 100644 ---- a/clutter/clutter/x11/clutter-settings-x11.h -+++ b/clutter/clutter/x11/clutter-settings-x11.h -@@ -14,7 +14,6 @@ static const struct { - { "Xft/HintStyle", "font-hint-style" }, - { "Xft/RGBA", "font-subpixel-order" }, - { "Fontconfig/Timestamp", "fontconfig-timestamp" }, -- { "Gdk/UnscaledDPI", "unscaled-font-dpi" }, - }; - - static const gint _n_clutter_settings_map = G_N_ELEMENTS (_clutter_settings_map); --- -cgit v0.12 - diff --git a/mutter-fix-kinetic-scrolling.patch b/mutter-fix-kinetic-scrolling.patch deleted file mode 100644 index dd3b9be..0000000 --- a/mutter-fix-kinetic-scrolling.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 26cd031be8b675bd89fc4582e0e4c11116af81d7 Mon Sep 17 00:00:00 2001 -From: Carlos Garnacho -Date: Thu, 14 Sep 2017 14:55:02 +0200 -Subject: clutter: Use the ClutterScrollFinishFlags when delivering scroll - event - -This got accidentally hardcoded to CLUTTER_SCROLL_FINISHED_NONE on commit -d3c559a917, which broke kinetic scrolling for touchpads on clients. ---- - clutter/clutter/evdev/clutter-device-manager-evdev.c | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) - -diff --git a/clutter/clutter/evdev/clutter-device-manager-evdev.c b/clutter/clutter/evdev/clutter-device-manager-evdev.c -index 4470a62..9de2ea1 100644 ---- a/clutter/clutter/evdev/clutter-device-manager-evdev.c -+++ b/clutter/clutter/evdev/clutter-device-manager-evdev.c -@@ -1214,8 +1214,7 @@ notify_continuous_axis (ClutterSeatEvdev *seat, - - clutter_seat_evdev_notify_scroll_continuous (seat, device, time_us, - dx, dy, -- scroll_source, -- CLUTTER_SCROLL_FINISHED_NONE); -+ scroll_source, finish_flags); - } - - static void --- -cgit v0.12 - diff --git a/mutter-monitor-config-manager-rotation-fix.patch b/mutter-monitor-config-manager-rotation-fix.patch deleted file mode 100644 index a8a29bf..0000000 --- a/mutter-monitor-config-manager-rotation-fix.patch +++ /dev/null @@ -1,71 +0,0 @@ -From 1035200f26efaddc8c21194e775f11fedf2ee266 Mon Sep 17 00:00:00 2001 -From: Hans de Goede -Date: Sun, 17 Sep 2017 12:07:12 +0200 -Subject: monitor-config-manager: Fix 90/270 degree rotation not working - -When rotating 90/270 degrees we need to swap width and height. This fixes -the screen going black and the following errors showing in the journal: - -gnome-shell[1097]: Failed to set CRTC mode 800x1280: No space left on device -gnome-shell[1097]: Failed to flip: Device or resource busy -gnome-shell[1097]: Failed to set CRTC mode 800x1280: No space left on device -gnome-shell[1097]: Failed to set CRTC mode 800x1280: No space left on device - -When rotating a tablet with accelerometer 90/270 degrees. - -https://bugzilla.gnome.org/show_bug.cgi?id=787836 ---- - src/backends/meta-monitor-config-manager.c | 8 ++++++++ - 1 file changed, 8 insertions(+) - -diff --git a/src/backends/meta-monitor-config-manager.c b/src/backends/meta-monitor-config-manager.c -index 265269c..d40c2e0 100644 ---- a/src/backends/meta-monitor-config-manager.c -+++ b/src/backends/meta-monitor-config-manager.c -@@ -764,6 +764,14 @@ create_for_builtin_display_rotation (MetaMonitorConfigManager *config_manager, - logical_monitor_config->monitor_configs = g_list_append (NULL, monitor_config); - logical_monitor_config->transform = transform; - -+ if (meta_monitor_transform_is_rotated (current_logical_monitor_config->transform) != -+ meta_monitor_transform_is_rotated (logical_monitor_config->transform)) -+ { -+ int temp = logical_monitor_config->layout.width; -+ logical_monitor_config->layout.width = logical_monitor_config->layout.height; -+ logical_monitor_config->layout.height = temp; -+ } -+ - return meta_monitors_config_new (g_list_append (NULL, logical_monitor_config), - config_manager->current_config->layout_mode, - META_MONITORS_CONFIG_FLAG_NONE); --- -cgit v0.12 - -From 7e3a780dcdabaff6ff94fddec7995681029b2f9a Mon Sep 17 00:00:00 2001 -From: Hans de Goede -Date: Sun, 17 Sep 2017 16:21:46 +0200 -Subject: monitor-config-manager-kms: Fix is_transform_handled - -meta_monitor_manager_kms_is_transform_handled should checked the -transform passed as function argument, not the current crtc transform. - -https://bugzilla.gnome.org/show_bug.cgi?id=787836 ---- - src/backends/native/meta-monitor-manager-kms.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/backends/native/meta-monitor-manager-kms.c b/src/backends/native/meta-monitor-manager-kms.c -index 6507e51..23a79ae 100644 ---- a/src/backends/native/meta-monitor-manager-kms.c -+++ b/src/backends/native/meta-monitor-manager-kms.c -@@ -1782,7 +1782,7 @@ meta_monitor_manager_kms_is_transform_handled (MetaMonitorManager *manager, - { - MetaCrtcKms *crtc_kms = crtc->driver_private; - -- if ((1 << crtc->transform) & crtc_kms->all_hw_transforms) -+ if ((1 << transform) & crtc_kms->all_hw_transforms) - return TRUE; - else - return FALSE; --- -cgit v0.12 - diff --git a/mutter-monitor-refresh-rate.patch b/mutter-monitor-refresh-rate.patch deleted file mode 100644 index 5a08acb..0000000 --- a/mutter-monitor-refresh-rate.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 743e8cc249168ccc64073ab83c00c31a30ca22e7 Mon Sep 17 00:00:00 2001 -From: Carlos Garnacho -Date: Thu, 14 Sep 2017 12:42:47 +0200 -Subject: backends: Add some wiggle room for refresh rate comparisons - -We have not enough control over the sources of the refresh rate -float variable to make == comparisons reliable, add some room -when comparing these. - -https://bugzilla.gnome.org/show_bug.cgi?id=787668 ---- - src/backends/meta-monitor.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/src/backends/meta-monitor.c b/src/backends/meta-monitor.c -index e3595fc..70350c3 100644 ---- a/src/backends/meta-monitor.c -+++ b/src/backends/meta-monitor.c -@@ -32,6 +32,7 @@ - #define MAXIMUM_SCALE_FACTOR 4.0f - #define MINIMUM_LOGICAL_WIDTH 800 - #define MINIMUM_LOGICAL_HEIGHT 600 -+#define MAXIMUM_REFRESH_RATE_DIFF 0.001 - - #define HANDLED_CRTC_MODE_FLAGS (META_CRTC_MODE_FLAG_INTERLACE) - -@@ -1252,8 +1253,8 @@ meta_monitor_mode_spec_equals (MetaMonitorModeSpec *monitor_mode_spec, - { - return (monitor_mode_spec->width == other_monitor_mode_spec->width && - monitor_mode_spec->height == other_monitor_mode_spec->height && -- (monitor_mode_spec->refresh_rate == -- other_monitor_mode_spec->refresh_rate) && -+ ABS (monitor_mode_spec->refresh_rate - -+ other_monitor_mode_spec->refresh_rate) < MAXIMUM_REFRESH_RATE_DIFF && - monitor_mode_spec->flags == other_monitor_mode_spec->flags); - } - --- -cgit v0.12 - diff --git a/mutter-wayland-fixes.patch b/mutter-wayland-fixes.patch deleted file mode 100644 index ce7ae20..0000000 --- a/mutter-wayland-fixes.patch +++ /dev/null @@ -1,196 +0,0 @@ -From 07f6c85cc737b2f7d106490cc4d336f2404ac9b5 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Jonas=20=C3=85dahl?= -Date: Tue, 12 Sep 2017 12:20:31 +0800 -Subject: wayland/inhibit-shortcuts-dialog: Use g_new0 instead of g_new - -The code assumed the newly allocated blocked was initialized to 0, but -it wasn't since g_new was used. Fix that by using g_new0. - -https://bugzilla.gnome.org/show_bug.cgi?id=787570 ---- - src/wayland/meta-wayland-inhibit-shortcuts-dialog.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/wayland/meta-wayland-inhibit-shortcuts-dialog.c b/src/wayland/meta-wayland-inhibit-shortcuts-dialog.c -index da897b9..5f883f7 100644 ---- a/src/wayland/meta-wayland-inhibit-shortcuts-dialog.c -+++ b/src/wayland/meta-wayland-inhibit-shortcuts-dialog.c -@@ -112,7 +112,7 @@ meta_wayland_surface_ensure_inhibit_shortcuts_dialog (MetaWaylandSurface *surfac - if (data) - return data; - -- data = g_new (InhibitShortcutsData, 1); -+ data = g_new0 (InhibitShortcutsData, 1); - surface_inhibit_shortcuts_data_set (surface, data); - g_signal_connect (surface, "destroy", - G_CALLBACK (on_surface_destroyed), --- -cgit v0.12 - - -From 9c16e4e2f3c198d3ac6a13b02b63b91f3ab56850 Mon Sep 17 00:00:00 2001 -From: Olivier Fourdan -Date: Tue, 12 Sep 2017 09:39:24 +0200 -Subject: wayland: Keep the inhibit shortcut dialog - -On Wayland, the grab()/ungrab() in gtk+/gdk are wired to the shortcut -inhibitor mechanism, which in turn shows the dialog, which can take -focus away from the client window when the dialog is shown. - -If the client issues an ungrab() when the keyboard focus is lost, we -would hide the dialog, causing the keyboard focus to be returned to the -client surface, which in turn would issue a new grab(), so forth and so -on, causing a continuous show/hide of the shortcut inhibitor dialog. - -To avoid this issue, keep the dialog around even if the shortcut inhibit -is canceled by the client, so that the user is forced to make a choice -that we can reuse on the next request without showing the dialog again. - -Instead of hiding the dialog when the shortcut inhibitor is destroyed by -the client, we simply mark the request as canceled and do not apply the -user's choice. - -https://bugzilla.gnome.org/show_bug.cgi?id=787568 ---- - src/wayland/meta-wayland-inhibit-shortcuts-dialog.c | 15 +++++++++++---- - src/wayland/meta-wayland-inhibit-shortcuts-dialog.h | 2 +- - src/wayland/meta-wayland-inhibit-shortcuts.c | 2 +- - 3 files changed, 13 insertions(+), 6 deletions(-) - -diff --git a/src/wayland/meta-wayland-inhibit-shortcuts-dialog.c b/src/wayland/meta-wayland-inhibit-shortcuts-dialog.c -index 5f883f7..a432a41 100644 ---- a/src/wayland/meta-wayland-inhibit-shortcuts-dialog.c -+++ b/src/wayland/meta-wayland-inhibit-shortcuts-dialog.c -@@ -32,6 +32,7 @@ typedef struct _InhibitShortcutsData - MetaInhibitShortcutsDialog *dialog; - gulong response_handler_id; - gboolean has_last_response; -+ gboolean request_canceled; - MetaInhibitShortcutsDialogResponse last_response; - } InhibitShortcutsData; - -@@ -93,7 +94,10 @@ inhibit_shortcuts_dialog_response_cb (MetaInhibitShortcutsDialog *dialog, - { - data->last_response = response; - data->has_last_response = TRUE; -- inhibit_shortcuts_dialog_response_apply (data); -+ -+ /* If the request was canceled, we don't need to apply the choice made */ -+ if (!data->request_canceled) -+ inhibit_shortcuts_dialog_response_apply (data); - - meta_inhibit_shortcuts_dialog_hide (data->dialog); - surface_inhibit_shortcuts_data_destroy_dialog (data); -@@ -154,11 +158,14 @@ meta_wayland_surface_show_inhibit_shortcuts_dialog (MetaWaylandSurface *surface, - } - - data = meta_wayland_surface_ensure_inhibit_shortcuts_dialog (surface, seat); -+ /* This is a new request */ -+ data->request_canceled = FALSE; -+ - meta_inhibit_shortcuts_dialog_show (data->dialog); - } - - void --meta_wayland_surface_hide_inhibit_shortcuts_dialog (MetaWaylandSurface *surface) -+meta_wayland_surface_cancel_inhibit_shortcuts_dialog (MetaWaylandSurface *surface) - { - InhibitShortcutsData *data; - -@@ -168,8 +175,8 @@ meta_wayland_surface_hide_inhibit_shortcuts_dialog (MetaWaylandSurface *surface) - data = surface_inhibit_shortcuts_data_get (surface); - g_return_if_fail (data); - -- if (data->dialog) -- meta_inhibit_shortcuts_dialog_hide (data->dialog); -+ /* Keep the dialog on screen, but mark the request as canceled */ -+ data->request_canceled = TRUE; - } - - void -diff --git a/src/wayland/meta-wayland-inhibit-shortcuts-dialog.h b/src/wayland/meta-wayland-inhibit-shortcuts-dialog.h -index bd3fc42..a7d60cf 100644 ---- a/src/wayland/meta-wayland-inhibit-shortcuts-dialog.h -+++ b/src/wayland/meta-wayland-inhibit-shortcuts-dialog.h -@@ -24,7 +24,7 @@ - void meta_wayland_surface_show_inhibit_shortcuts_dialog (MetaWaylandSurface *surface, - MetaWaylandSeat *seat); - --void meta_wayland_surface_hide_inhibit_shortcuts_dialog (MetaWaylandSurface *surface); -+void meta_wayland_surface_cancel_inhibit_shortcuts_dialog (MetaWaylandSurface *surface); - - void meta_wayland_surface_inhibit_shortcuts_dialog_init (void); - -diff --git a/src/wayland/meta-wayland-inhibit-shortcuts.c b/src/wayland/meta-wayland-inhibit-shortcuts.c -index cd07891..a7ba3c2 100644 ---- a/src/wayland/meta-wayland-inhibit-shortcuts.c -+++ b/src/wayland/meta-wayland-inhibit-shortcuts.c -@@ -49,7 +49,7 @@ zwp_keyboard_shortcuts_inhibit_destroy (struct wl_client *client, - shortcut_inhibit = wl_resource_get_user_data (resource); - if (shortcut_inhibit->surface) - { -- meta_wayland_surface_hide_inhibit_shortcuts_dialog (shortcut_inhibit->surface); -+ meta_wayland_surface_cancel_inhibit_shortcuts_dialog (shortcut_inhibit->surface); - - g_signal_handler_disconnect (shortcut_inhibit->surface, - shortcut_inhibit->surface_destroyed_handler); --- -cgit v0.12 - - -From 2bf7974076ea99c9b30fe5b3d49456dba5a20c19 Mon Sep 17 00:00:00 2001 -From: Olivier Fourdan -Date: Tue, 12 Sep 2017 10:27:32 +0200 -Subject: wayland: do not leak shortcut inhibit data - -We would free the shortcut inhibit data only when the client destroys -its request, which is not the case when the clients itself is -destroyed, leading to a leak of the shortcut inhibit data. - -Free the data on resource destruction instead, and simply destroy the -resource on destroy request. - -https://bugzilla.gnome.org/show_bug.cgi?id=787568 ---- - src/wayland/meta-wayland-inhibit-shortcuts.c | 11 ++++++++--- - 1 file changed, 8 insertions(+), 3 deletions(-) - -diff --git a/src/wayland/meta-wayland-inhibit-shortcuts.c b/src/wayland/meta-wayland-inhibit-shortcuts.c -index a7ba3c2..8e5ed24 100644 ---- a/src/wayland/meta-wayland-inhibit-shortcuts.c -+++ b/src/wayland/meta-wayland-inhibit-shortcuts.c -@@ -41,8 +41,7 @@ struct _MetaWaylandKeyboardShotscutsInhibit - }; - - static void --zwp_keyboard_shortcuts_inhibit_destroy (struct wl_client *client, -- struct wl_resource *resource) -+zwp_keyboard_shortcuts_inhibit_destructor (struct wl_resource *resource) - { - MetaWaylandKeyboardShotscutsInhibit *shortcut_inhibit; - -@@ -64,6 +63,12 @@ zwp_keyboard_shortcuts_inhibit_destroy (struct wl_client *client, - shortcut_inhibit->seat); - } - g_free (shortcut_inhibit); -+} -+ -+static void -+zwp_keyboard_shortcuts_inhibit_destroy (struct wl_client *client, -+ struct wl_resource *resource) -+{ - wl_resource_destroy (resource); - } - -@@ -148,7 +153,7 @@ zwp_keyboard_shortcuts_inhibit_manager_inhibit_shortcuts (struct wl_client *cl - wl_resource_set_implementation (keyboard_shortcuts_inhibit_resource, - &meta_keyboard_shortcuts_inhibit_interface, - shortcut_inhibit, -- NULL); -+ zwp_keyboard_shortcuts_inhibit_destructor); - } - - static const struct zwp_keyboard_shortcuts_inhibit_manager_v1_interface --- -cgit v0.12 - diff --git a/mutter.changes b/mutter.changes index 74c023d..b8a1df1 100644 --- a/mutter.changes +++ b/mutter.changes @@ -1,3 +1,41 @@ +------------------------------------------------------------------- +Wed Oct 4 19:55:42 UTC 2017 - zaitor@opensuse.org + +- Update to version 3.26.1: + + Fix crash when respawning shortcut inhibitor dialog + (bgo#787568). + + Fix crash during monitor configuration migration (bgo#787668). + + Fix multihead regressions in X11 session (bgo#787477). + + Fix screen rotation regressions (bgo#787836). + + Fix keybindings not being resolved with non-latin layouts (bgo#787016). + + Support snap packages for sandboxed app IDs (bgo#788217). + + Fix crash when reconnecting tablet device (bgo#787649). + + Support running headless (bgo#730551, bgo#787637). + + Support _NET_RESTACK_WINDOW and ConfigureRequest siblings (bgo#786365). + + Fix monitor layout not being remembered across sessions (bgo#787629). + + Make sure to export _NET_NUMBER_OF_DESKTOPS (bgo#760651). + + Allow resizing of tiled windows (bgo#645153). + + Export tiling information to clients (bgo#751857). + + Misc. bug fixes: bgo#787570, bgo#787715, bgo#787953, + bgo#788049, bgo#788199, bgo#788292, bgo#788197. + + Updated translations. +- Drop upstream fixed patches: + + mutter-wayland-fixes.patch. + + mutter-monitor-refresh-rate.patch. + + mutter-fix-kinetic-scrolling.patch. + + mutter-monitor-config-manager-rotation-fix.patch. + + mutter-fix-hidpi-scaling-x11.patch. + + mutter-bsc1052058-NET_RESTACK_WINDOW-Respect-sibling.patch. + +------------------------------------------------------------------- +Mon Oct 2 11:57:00 CEST 2017 - vliaskovitis@suse.com + +- Add mutter-bsc1052058-NET_RESTACK_WINDOW-Respect-sibling.patch: + Implement _NET_RESTACK_WINDOW and respect sibling field of + XConfigureRequestEvent. This way X11 window stack operations work + as expected. + (bsc#1052058, bgo#786363, bgo#786365) + ------------------------------------------------------------------- Mon Sep 25 21:10:56 UTC 2017 - zaitor@opensuse.org diff --git a/mutter.spec b/mutter.spec index cf3fe54..8c36896 100644 --- a/mutter.spec +++ b/mutter.spec @@ -17,7 +17,7 @@ Name: mutter -Version: 3.26.0 +Version: 3.26.1 Release: 0 Summary: Window and compositing manager based on Clutter License: GPL-2.0+ @@ -28,16 +28,6 @@ Source: http://download.gnome.org/sources/mutter/3.26/%{name}-%{version} Patch0: mutter-fix-startup.patch # PATCH-FEATURE-UPSTREAM mutter-iconcache-Support-RGB16_565-format-for-16-bit-color-.patch FATE#323412 bgo#781704 bsc#1024748 vliaskovitis@suse.com -- iconcache: Support RGB16_565 format for 16-bit sessions Patch1: mutter-iconcache-Support-RGB16_565-format-for-16-bit-color-.patch -# PATCH-FIX-UPSTREAM mutter-wayland-fixes.patch bgo#787570 bgo#787568 zaitor@opensuse.org -- Three bugfix commits from upstream for wayland -Patch2: mutter-wayland-fixes.patch -# PATCH-FIX-UPSTREAM mutter-monitor-refresh-rate.patch bgo#787668 zaitor@opensuse.org -- Fix refreshrate for some user -Patch3: mutter-monitor-refresh-rate.patch -# PATCH-FIX-UPSTREAM mutter-fix-kinetic-scrolling.patch zaitor@opensuse.org -- Fix kinetic scrolling -Patch4: mutter-fix-kinetic-scrolling.patch -# PATCH-FIX-UPSTREAM mutter-monitor-config-manager-rotation-fix.patch bgo#787836 badshah400@gmail.com -- Fix transformation when rotating screen so that rotation by 90/270 deg don't show a black screen; patch taken from upstream git -Patch5: mutter-monitor-config-manager-rotation-fix.patch -# PATCH-FIX-UPSTREAM mutter-fix-hidpi-scaling-x11.patch bgo#788049 zaitor@opensuse.org -- Fix hidpi scaling regression when using X11 -Patch6: mutter-fix-hidpi-scaling-x11.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. @@ -148,11 +138,6 @@ applications that want to make use of the mutter library. %setup -q %patch0 -p1 %patch1 -p1 -%patch2 -p1 -%patch3 -p1 -%patch4 -p1 -%patch5 -p1 -%patch6 -p1 # SLE only patches and translations. %if !0%{?is_opensuse}