[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