mutter: update to 44.2.

This commit is contained in:
oreo639 2023-03-23 16:26:19 -07:00 committed by Michal Vasilek
parent 960df2a59f
commit 5fa442f4f8
3 changed files with 17 additions and 64 deletions

View file

@ -2987,10 +2987,10 @@ libdecoration.so.0 compiz-core-0.8.14_1
libcompizconfig.so.0 libcompizconfig-0.8.14_1
libemeraldengine.so.0 emerald-0.8.14_1
libhangul.so.1 libhangul-0.1.0_1
libmutter-11.so.0 mutter-43.2_1
libmutter-clutter-11.so.0 mutter-43.2_1
libmutter-cogl-11.so.0 mutter-43.2_1
libmutter-cogl-pango-11.so.0 mutter-43.2_1
libmutter-12.so.0 mutter-44.0_1
libmutter-clutter-12.so.0 mutter-44.0_1
libmutter-cogl-12.so.0 mutter-44.0_1
libmutter-cogl-pango-12.so.0 mutter-44.0_1
libgeoclue-2.so.0 geoclue2-2.4.4_1
libgepub-0.6.so.0 libgepub-0.6.0_4
libslopy.so.7.6 slop-7.6_1

View file

@ -1,48 +0,0 @@
From 81c0cf0834e5b11ad8674accf5d143725c19d5ae Mon Sep 17 00:00:00 2001
From: Carlos Garnacho <carlosg@gnome.org>
Date: Mon, 13 Feb 2023 20:12:38 +0100
Subject: [PATCH] x11: Avoid updating focus on wayland compositor
Reading upon the history of this code branch (commits 6891ce95dce
and 7a4c808e43d4 are most relevant), it seems this code is meant to
synchronize Mutter focus state taking the Xserver state as true.
That is, if Mutter tried to change the focus but something truncated
that action, Mutter focus will be changed to be in sync with the
Xserver again.
This sounds backwards in a Wayland session. Mutter focus should be
the canonical source, and not second-guessed from the current Xserver
focus window. These race conditions might still apply between X11
clients, so make these paths only apply in that case.
An example of this breaking can be reproduced with a Spotify and
Firefox window, moving the focus from the first to the second by
going to the GNOME Shell overview in between, and clicking the
Firefox window from there. The Firefox window will be raised, but
refuse to take focus.
It's unclear what made this an issue recently, perhaps commit
0e6395d9328 since the now possibly ignored XI_FocusIn/Out events
affect this accounting of the Xserver focused window. Anyhow it
sounds better to ignore these paths for Wayland/native altogether.
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2841>
---
src/x11/events.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/x11/events.c b/src/x11/events.c
index fd0f84c4a2..89733ba33b 100644
--- a/src/x11/events.c
+++ b/src/x11/events.c
@@ -1955,6 +1955,7 @@ meta_x11_display_handle_xevent (MetaX11Display *x11_display,
if (x11_display->focused_by_us &&
event->xany.serial > x11_display->focus_serial &&
display->focus_window &&
+ display->focus_window->client_type == META_WINDOW_CLIENT_TYPE_X11 &&
!window_has_xwindow (display->focus_window, x11_display->server_focus_window) &&
meta_display_windows_are_interactable (display))
{
--
GitLab

View file

@ -1,7 +1,7 @@
# Template file for 'mutter'
pkgname=mutter
version=43.3
revision=2
version=44.2
revision=1
build_helper="gir"
build_style=meson
configure_args="-Degl_device=true -Dudev=true -Dnative_backend=true
@ -11,18 +11,19 @@ hostmakedepends="gettext glib-devel pkg-config zenity wayland-devel xorg-server
xorg-server-xwayland"
makedepends="elogind-devel glib-devel gnome-desktop-devel graphene-devel
json-glib-devel libglib-devel libSM-devel libXtst-devel libcanberra-devel
libinput-devel MesaLib-devel pipewire-devel startup-notification-devel
libinput-devel MesaLib-devel pipewire-devel startup-notification-devel gtk4-devel
wayland-protocols gnome-settings-daemon-devel libgudev-devel libwacom-devel"
depends="gsettings-desktop-schemas desktop-file-utils zenity"
depends="gsettings-desktop-schemas desktop-file-utils"
short_desc="Wayland display server, X11 window manager and compositor library"
maintainer="Michal Vasilek <michal@vasilek.cz>"
license="GPL-2.0-or-later"
homepage="https://wiki.gnome.org/Projects/Mutter/"
changelog="https://gitlab.gnome.org/GNOME/mutter/-/raw/gnome-43/NEWS"
#changelog="https://gitlab.gnome.org/GNOME/mutter/-/raw/gnome-44/NEWS"
changelog="https://gitlab.gnome.org/GNOME/mutter/-/raw/main/NEWS"
distfiles="${GNOME_SITE}/mutter/${version%.*}/mutter-${version}.tar.xz"
checksum=67be4820d9b270c9c3c65e38947bf052d2c2ff18ae9e70421d49259efac00a7d
shlib_provides="libmutter-clutter-11.so libmutter-cogl-11.so
libmutter-cogl-pango-11.so"
checksum=37566d7e55c93dc8894e9c7f23a7ba5879a8b30baf65558223009d2b467402a1
shlib_provides="libmutter-clutter-12.so libmutter-cogl-12.so
libmutter-cogl-pango-12.so"
make_check=no # needs a full graphical session
# Upstream keeps pulling generated headers even though it can cause race
@ -34,18 +35,18 @@ pre_build() {
post_install() {
# modify the pkg-config files to respect ${pc_sysrootdir} for variables that are
# meant to be called with 'pkg-config --variable'
vsed -e 's|^girdir.*|girdir=${pc_sysrootdir}/${libdir}/mutter-11|g' \
-i ${DESTDIR}/usr/lib/pkgconfig/libmutter-11.pc
vsed -e 's|^girdir.*|girdir=${pc_sysrootdir}/${libdir}/mutter-12|g' \
-i ${DESTDIR}/usr/lib/pkgconfig/libmutter-12.pc
}
mutter-devel_package() {
depends="gtk+3-devel graphene-devel clutter-devel
depends="gtk4-devel graphene-devel clutter-devel
libX11-devel libXtst-devel mutter-${version}_${revision}"
short_desc+=" - development files"
pkg_install() {
vmove usr/include
vmove usr/lib/pkgconfig
vmove "usr/lib/mutter-11/*.gir"
vmove "usr/lib/mutter-12/*.gir"
vmove "usr/lib/*.so"
}
}