From 6ffc9baa6eb4b1d88443b5f1176ef49857ffb32c Mon Sep 17 00:00:00 2001
From: Britney Fransen <brfransen@gmail.com>
Date: Mon, 12 Apr 2010 19:29:40 -0500
Subject: fluxbox: patch to allow new windows to have focus above fullscreen
 windows

---
 abs/core-testing/fluxbox/PKGBUILD                       |  9 ++++++---
 abs/core-testing/fluxbox/fluxbox_fullscreen_focus.patch | 12 ++++++++++++
 2 files changed, 18 insertions(+), 3 deletions(-)
 create mode 100644 abs/core-testing/fluxbox/fluxbox_fullscreen_focus.patch

diff --git a/abs/core-testing/fluxbox/PKGBUILD b/abs/core-testing/fluxbox/PKGBUILD
index 1ec527f..70202cc 100644
--- a/abs/core-testing/fluxbox/PKGBUILD
+++ b/abs/core-testing/fluxbox/PKGBUILD
@@ -4,7 +4,7 @@
 
 pkgname=fluxbox
 pkgver=1.1.1
-pkgrel=8
+pkgrel=9
 pkgdesc="A lightweight and highly-configurable window manager"
 arch=('i686' 'x86_64')
 url="http://www.fluxbox.org"
@@ -13,9 +13,11 @@ depends=('libxft' 'libxpm' 'libxinerama' 'libxrandr' 'gcc-libs' 'bash' 'imlib2')
 makedepends=('pkgconfig')
 options=('!makeflags')
 source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.bz2 \
-        fluxbox.desktop keys)
+        fluxbox.desktop keys fluxbox_fullscreen_focus.patch)
 
 build() {
+  echo "==> Patching Fluxbox with fullscreen focus patch..."
+  patch < fluxbox_fullscreen_focus.patch ${srcdir}/${pkgname}-${pkgver}/src/Window.cc || return 1
   cd ${srcdir}/${pkgname}-${pkgver}
   ./configure --prefix=/usr \
     --enable-kde --enable-gnome \
@@ -31,4 +33,5 @@ build() {
 }
 md5sums=('fa9fa8fe9a44f86522de5754f8b285ca'
          'eeae9c88a2526ac0bd8afcd9ce97f9ed'
-         '37438d3c615aec8c3335b5946923ca5f')
+         '37438d3c615aec8c3335b5946923ca5f'
+         '82dac089f2d42bb9592debc93291846d')
diff --git a/abs/core-testing/fluxbox/fluxbox_fullscreen_focus.patch b/abs/core-testing/fluxbox/fluxbox_fullscreen_focus.patch
new file mode 100644
index 0000000..1a8c233
--- /dev/null
+++ b/abs/core-testing/fluxbox/fluxbox_fullscreen_focus.patch
@@ -0,0 +1,12 @@
+--- src/Window.cc.orig	2010-04-12 16:45:00.750585365 -0500
++++ src/Window.cc	2010-04-12 16:45:38.719755786 -0500
+@@ -2042,8 +2042,7 @@
+     FluxboxWindow *cur = FocusControl::focusedFbWindow();
+     WinClient *client = FocusControl::focusedWindow();
+     if (ret && cur && getRootTransientFor(&from) != getRootTransientFor(client))
+-        ret = !(cur->isFullscreen() && getOnHead() == cur->getOnHead()) &&
+-              !cur->isTyping();
++        ret = !cur->isTyping();
+ 
+     if (!ret)
+         Fluxbox::instance()->attentionHandler().addAttention(from);
-- 
cgit v0.12

