[arch-commits] Commit in mutter/repos/extra-x86_64 (5 files)
Jan Steffens
heftig at archlinux.org
Wed Jul 17 21:47:12 UTC 2019
Date: Wednesday, July 17, 2019 @ 21:47:12
Author: heftig
Revision: 358107
archrelease: copy trunk to extra-x86_64
Added:
mutter/repos/extra-x86_64/0001-window-x11-Focus-a-window-in-the-active-workspace-as.patch
(from rev 358106, mutter/trunk/0001-window-x11-Focus-a-window-in-the-active-workspace-as.patch)
mutter/repos/extra-x86_64/PKGBUILD
(from rev 358106, mutter/trunk/PKGBUILD)
mutter/repos/extra-x86_64/mutter.install
(from rev 358106, mutter/trunk/mutter.install)
Deleted:
mutter/repos/extra-x86_64/PKGBUILD
mutter/repos/extra-x86_64/mutter.install
-----------------------------------------------------------------+
0001-window-x11-Focus-a-window-in-the-active-workspace-as.patch | 67 +++++
PKGBUILD | 117 +++++-----
mutter.install | 14 -
3 files changed, 135 insertions(+), 63 deletions(-)
Copied: mutter/repos/extra-x86_64/0001-window-x11-Focus-a-window-in-the-active-workspace-as.patch (from rev 358106, mutter/trunk/0001-window-x11-Focus-a-window-in-the-active-workspace-as.patch)
===================================================================
--- 0001-window-x11-Focus-a-window-in-the-active-workspace-as.patch (rev 0)
+++ 0001-window-x11-Focus-a-window-in-the-active-workspace-as.patch 2019-07-17 21:47:12 UTC (rev 358107)
@@ -0,0 +1,67 @@
+From 128aef6aca88ea945c3e161b82d3cffb37a8bce7 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= <mail at 3v1n0.net>
+Date: Wed, 17 Jul 2019 01:13:48 +0200
+Subject: [PATCH] window-x11: Focus a window in the active workspace as
+ take-focus fallback
+
+Starting with commit 2db94e2e we try to focus a fallback default focus window
+if no take-focus window candidate gets the input focus when we request it and
+we limit the focus candidates to the current window's workspace.
+
+However, if the window is unmanaging, the workspace might be unset, and we could
+end up in deferencing a NULL pointer causing a crash.
+
+So, in case the window's workspace is unset, just use the currently active
+workspace for the display.
+
+Closes #687
+
+https://gitlab.gnome.org/GNOME/mutter/merge_requests/688
+
+(cherry picked from commit 8cbad75c411282855f506855fc7a2953b7bdae0d)
+---
+ src/x11/window-x11.c | 16 +++++++++++-----
+ 1 file changed, 11 insertions(+), 5 deletions(-)
+
+diff --git a/src/x11/window-x11.c b/src/x11/window-x11.c
+index 0ca651ba2..79a9dbe38 100644
+--- a/src/x11/window-x11.c
++++ b/src/x11/window-x11.c
+@@ -886,15 +886,21 @@ meta_window_x11_maybe_focus_delayed (MetaWindow *window,
+ }
+
+ static void
+-maybe_focus_default_window (MetaWorkspace *workspace,
+- MetaWindow *not_this_one,
+- guint32 timestamp)
++maybe_focus_default_window (MetaDisplay *display,
++ MetaWindow *not_this_one,
++ guint32 timestamp)
+ {
+- MetaStack *stack = workspace->display->stack;
++ MetaWorkspace *workspace;
++ MetaStack *stack = display->stack;
+ g_autoptr (GList) focusable_windows = NULL;
+ g_autoptr (GQueue) focus_candidates = NULL;
+ GList *l;
+
++ if (not_this_one && not_this_one->workspace)
++ workspace = not_this_one->workspace;
++ else
++ workspace = display->workspace_manager->active_workspace;
++
+ /* Go through all the focusable windows and try to focus them
+ * in order, waiting for a delay. The first one that replies to
+ * the request (in case of take focus windows) changing the display
+@@ -991,7 +997,7 @@ meta_window_x11_focus (MetaWindow *window,
+
+ meta_x11_display_focus_the_no_focus_window (x11_display,
+ timestamp);
+- maybe_focus_default_window (window->workspace, window,
++ maybe_focus_default_window (window->display, window,
+ timestamp);
+ }
+ }
+--
+2.22.0
+
Deleted: PKGBUILD
===================================================================
--- PKGBUILD 2019-07-17 21:47:03 UTC (rev 358106)
+++ PKGBUILD 2019-07-17 21:47:12 UTC (rev 358107)
@@ -1,56 +0,0 @@
-# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens at gmail.com>
-# Maintainer: Ionut Biru <ibiru at archlinux.org>
-# Contributor: Michael Kanis <mkanis_at_gmx_dot_de>
-
-pkgname=mutter
-pkgver=3.32.2+40+gccab0f470
-pkgrel=1
-pkgdesc="A window manager for GNOME"
-url="https://gitlab.gnome.org/GNOME/mutter"
-arch=(x86_64)
-license=(GPL)
-depends=(dconf gobject-introspection-runtime gsettings-desktop-schemas libcanberra
- startup-notification zenity libsm gnome-desktop upower libxkbcommon-x11
- gnome-settings-daemon libgudev libinput pipewire xorg-server-xwayland)
-makedepends=(gobject-introspection git egl-wayland meson xorg-server)
-checkdepends=(xorg-server-xvfb)
-groups=(gnome)
-install=mutter.install
-_commit=ccab0f470dcc556073754c8adf9413819d22cc14 # gnome-3-32
-source=("git+https://gitlab.gnome.org/GNOME/mutter.git#commit=$_commit")
-sha256sums=('SKIP')
-
-pkgver() {
- cd $pkgname
- git describe --tags | sed 's/-/+/g'
-}
-
-prepare() {
- cd $pkgname
-
- # rt-scheduler experimental feature
- git cherry-pick -n dae2c1d420ed272710ac55b7a00f6787e5c0e762
-
- # required to build gala
- git cherry-pick -n bd7704f9e17e9554ad663386ef4fce1e16a56f08
-}
-
-build() {
- arch-meson $pkgname build \
- -D egl_device=true \
- -D wayland_eglstream=true \
- -D installed_tests=false
- ninja -C build
-}
-
-check() (
- mkdir -p -m 700 "${XDG_RUNTIME_DIR:=$PWD/runtime-dir}"
- glib-compile-schemas "${GSETTINGS_SCHEMA_DIR:=$PWD/build/data}"
- export XDG_RUNTIME_DIR GSETTINGS_SCHEMA_DIR
-
- dbus-run-session xvfb-run -s '+iglx -noreset' meson test -C build --print-errorlogs
-)
-
-package() {
- DESTDIR="$pkgdir" meson install -C build
-}
Copied: mutter/repos/extra-x86_64/PKGBUILD (from rev 358106, mutter/trunk/PKGBUILD)
===================================================================
--- PKGBUILD (rev 0)
+++ PKGBUILD 2019-07-17 21:47:12 UTC (rev 358107)
@@ -0,0 +1,61 @@
+# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens at gmail.com>
+# Maintainer: Ionut Biru <ibiru at archlinux.org>
+# Contributor: Michael Kanis <mkanis_at_gmx_dot_de>
+
+pkgname=mutter
+pkgver=3.32.2+40+gccab0f470
+pkgrel=2
+pkgdesc="A window manager for GNOME"
+url="https://gitlab.gnome.org/GNOME/mutter"
+arch=(x86_64)
+license=(GPL)
+depends=(dconf gobject-introspection-runtime gsettings-desktop-schemas libcanberra
+ startup-notification zenity libsm gnome-desktop upower libxkbcommon-x11
+ gnome-settings-daemon libgudev libinput pipewire xorg-server-xwayland)
+makedepends=(gobject-introspection git egl-wayland meson xorg-server)
+checkdepends=(xorg-server-xvfb)
+groups=(gnome)
+install=mutter.install
+_commit=ccab0f470dcc556073754c8adf9413819d22cc14 # gnome-3-32
+source=("git+https://gitlab.gnome.org/GNOME/mutter.git#commit=$_commit"
+ 0001-window-x11-Focus-a-window-in-the-active-workspace-as.patch)
+sha256sums=('SKIP'
+ 'a639f8fd35c82216b2b15ca49fe592a0618bfec681f88347ce75724a4402fcc7')
+
+pkgver() {
+ cd $pkgname
+ git describe --tags | sed 's/-/+/g'
+}
+
+prepare() {
+ cd $pkgname
+
+ # rt-scheduler experimental feature
+ git cherry-pick -n dae2c1d420ed272710ac55b7a00f6787e5c0e762
+
+ # required to build gala
+ git cherry-pick -n bd7704f9e17e9554ad663386ef4fce1e16a56f08
+
+ # https://gitlab.gnome.org/GNOME/mutter/issues/687
+ patch -Np1 -i ../0001-window-x11-Focus-a-window-in-the-active-workspace-as.patch
+}
+
+build() {
+ arch-meson $pkgname build \
+ -D egl_device=true \
+ -D wayland_eglstream=true \
+ -D installed_tests=false
+ ninja -C build
+}
+
+check() (
+ mkdir -p -m 700 "${XDG_RUNTIME_DIR:=$PWD/runtime-dir}"
+ glib-compile-schemas "${GSETTINGS_SCHEMA_DIR:=$PWD/build/data}"
+ export XDG_RUNTIME_DIR GSETTINGS_SCHEMA_DIR
+
+ dbus-run-session xvfb-run -s '+iglx -noreset' meson test -C build --print-errorlogs
+)
+
+package() {
+ DESTDIR="$pkgdir" meson install -C build
+}
Deleted: mutter.install
===================================================================
--- mutter.install 2019-07-17 21:47:03 UTC (rev 358106)
+++ mutter.install 2019-07-17 21:47:12 UTC (rev 358107)
@@ -1,7 +0,0 @@
-post_install() {
- setcap cap_sys_nice+ep usr/bin/mutter
-}
-
-post_upgrade() {
- post_install
-}
Copied: mutter/repos/extra-x86_64/mutter.install (from rev 358106, mutter/trunk/mutter.install)
===================================================================
--- mutter.install (rev 0)
+++ mutter.install 2019-07-17 21:47:12 UTC (rev 358107)
@@ -0,0 +1,7 @@
+post_install() {
+ setcap cap_sys_nice+ep usr/bin/mutter
+}
+
+post_upgrade() {
+ post_install
+}
More information about the arch-commits
mailing list