Date: Saturday, May 25, 2013 @ 17:52:25 Author: heftig Revision: 186357
backport popupmenu patch Added: gnome-shell/trunk/popupmenu.patch Modified: gnome-shell/trunk/PKGBUILD -----------------+ PKGBUILD | 15 +++++++++++---- popupmenu.patch | 28 ++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+), 4 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2013-05-25 11:23:17 UTC (rev 186356) +++ PKGBUILD 2013-05-25 15:52:25 UTC (rev 186357) @@ -4,7 +4,7 @@ pkgname=gnome-shell pkgver=3.8.2 -pkgrel=2 +pkgrel=3 pkgdesc="The next generation GNOME Shell" arch=(i686 x86_64) url="http://live.gnome.org/GnomeShell" @@ -19,16 +19,23 @@ install=gnome-shell.install groups=(gnome) source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver::3}/$pkgname-$pkgver.tar.xz - nm-libexecdir.patch) + nm-libexecdir.patch popupmenu.patch) sha256sums=('ffdf42d382d50cd756f1f51a31eaa6877edb51a08f0ca80b6e973f05072416df' - 'e5bb10ad2e5c3e0fde3d05babd1bfdda701e553e02d493f7e54cb7832ce7e607') + 'e5bb10ad2e5c3e0fde3d05babd1bfdda701e553e02d493f7e54cb7832ce7e607' + '7df2a128d12350fe8e349c6aa5e125eb5d90b05e0201a842d6f3e1c2683b351d') -build() { +prepare() { cd $pkgname-$pkgver # FS#30747 FS#32730 Problems due to libexecdir different from NM patch -Np1 -i ../nm-libexecdir.patch + # FS#35326 (from gnome-3-8 branch) + patch -Np1 -i ../popupmenu.patch +} + +build() { + cd $pkgname-$pkgver PYTHON=/usr/bin/python2 ./configure --prefix=/usr --sysconfdir=/etc \ --libexecdir=/usr/lib/gnome-shell \ --localstatedir=/var --disable-static \ Added: popupmenu.patch =================================================================== --- popupmenu.patch (rev 0) +++ popupmenu.patch 2013-05-25 15:52:25 UTC (rev 186357) @@ -0,0 +1,28 @@ +From dd8ca024254341258a9e54c253c080f25be6f9cd Mon Sep 17 00:00:00 2001 +From: Florian Müllner <fmuell...@gnome.org> +Date: Tue, 14 May 2013 16:55:08 +0000 +Subject: PopupMenuManager: Fix child menus + +Since commit c84dc6254d2d65c, popup menus are closed automatically +when another menu opens (to catch the case where a menu is opened +by keyboard shortcut, which wasn't handled before). However in the +case of child menus, both child and parent are expected to be visible, +so handle this case explicitly. + +https://bugzilla.gnome.org/show_bug.cgi?id=699678 +--- +diff --git a/js/ui/popupMenu.js b/js/ui/popupMenu.js +index fc37dd8..ab6c795 100644 +--- a/js/ui/popupMenu.js ++++ b/js/ui/popupMenu.js +@@ -2124,7 +2124,7 @@ const PopupMenuManager = new Lang.Class({ + + _onMenuOpenState: function(menu, open) { + if (open) { +- if (this.activeMenu) ++ if (this.activeMenu && !this.activeMenu.isChildMenu(menu)) + this.activeMenu.close(BoxPointer.PopupAnimation.FADE); + this._grabHelper.grab({ actor: menu.actor, modal: true, focus: menu.sourceActor, + onUngrab: Lang.bind(this, this._closeMenu, menu) }); +-- +cgit v0.9.1