diff options
author | Kacper Kowalik <xarthisius@gentoo.org> | 2013-06-30 14:07:12 +0000 |
---|---|---|
committer | Kacper Kowalik <xarthisius@gentoo.org> | 2013-06-30 14:07:12 +0000 |
commit | 7a8af62c577ee3ba06f14203b686d33a878685af (patch) | |
tree | 6f37e6faabd3df0aea12c9e65ff6fa9c0cde00f2 /x11-wm | |
parent | dev-python/pycairo: Fix usage of python-r1.eclass (diff) | |
download | gentoo-2-7a8af62c577ee3ba06f14203b686d33a878685af.tar.gz gentoo-2-7a8af62c577ee3ba06f14203b686d33a878685af.tar.bz2 gentoo-2-7a8af62c577ee3ba06f14203b686d33a878685af.zip |
Drop old, obsoletes bug #464898 by Vicente Olivert Riera <vincent@gentoo.org>
(Portage version: 2.2.0_alpha179/cvs/Linux x86_64, signed Manifest commit with key 895192F9)
Diffstat (limited to 'x11-wm')
-rw-r--r-- | x11-wm/fluxbox/ChangeLog | 13 | ||||
-rw-r--r-- | x11-wm/fluxbox/files/1.0.0/gcc-4.3.patch | 15 | ||||
-rw-r--r-- | x11-wm/fluxbox/files/1.0.0/generate-menu.patch | 22 | ||||
-rw-r--r-- | x11-wm/fluxbox/files/1.0.0/gentoo_style_location.patch | 17 | ||||
-rw-r--r-- | x11-wm/fluxbox/files/1.1.0.1/gentoo_style_location.patch | 19 | ||||
-rw-r--r-- | x11-wm/fluxbox/files/fbsetbg-quiet-1.1.1.patch | 74 | ||||
-rw-r--r-- | x11-wm/fluxbox/files/fluxbox-1.0.0-interix.patch | 39 | ||||
-rw-r--r-- | x11-wm/fluxbox/files/fluxbox-1.1.1-multiscreen.patch | 65 | ||||
-rw-r--r-- | x11-wm/fluxbox/files/fluxbox-1.3.1-gcc46.patch | 44 | ||||
-rw-r--r-- | x11-wm/fluxbox/files/macrocmd-crash-1.1.1.patch | 68 | ||||
-rw-r--r-- | x11-wm/fluxbox/files/mousefocus-1.1.1-r2.patch | 159 | ||||
-rw-r--r-- | x11-wm/fluxbox/files/mousefocus-1.1.1.patch | 240 | ||||
-rw-r--r-- | x11-wm/fluxbox/files/strictmousefocus-1.1.1.patch | 236 | ||||
-rw-r--r-- | x11-wm/fluxbox/fluxbox-1.1.1-r3.ebuild | 125 | ||||
-rw-r--r-- | x11-wm/fluxbox/fluxbox-1.3.1.ebuild | 109 | ||||
-rw-r--r-- | x11-wm/fluxbox/fluxbox-1.3.3.ebuild | 106 |
16 files changed, 12 insertions, 1339 deletions
diff --git a/x11-wm/fluxbox/ChangeLog b/x11-wm/fluxbox/ChangeLog index a60248b59ad9..2fe33e22994b 100644 --- a/x11-wm/fluxbox/ChangeLog +++ b/x11-wm/fluxbox/ChangeLog @@ -1,6 +1,17 @@ # ChangeLog for x11-wm/fluxbox # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/x11-wm/fluxbox/ChangeLog,v 1.308 2013/06/01 11:40:33 pacho Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-wm/fluxbox/ChangeLog,v 1.309 2013/06/30 14:07:11 xarthisius Exp $ + + 30 Jun 2013; Kacper Kowalik <xarthisius@gentoo.org> + -files/1.0.0/gcc-4.3.patch, -files/1.0.0/generate-menu.patch, + -files/1.0.0/gentoo_style_location.patch, + -files/1.1.0.1/gentoo_style_location.patch, -files/fbsetbg-quiet-1.1.1.patch, + -files/fluxbox-1.0.0-interix.patch, -files/fluxbox-1.1.1-multiscreen.patch, + -files/fluxbox-1.3.1-gcc46.patch, -files/macrocmd-crash-1.1.1.patch, + -files/mousefocus-1.1.1-r2.patch, -files/mousefocus-1.1.1.patch, + -files/strictmousefocus-1.1.1.patch, -fluxbox-1.1.1-r3.ebuild, + -fluxbox-1.3.1.ebuild, -fluxbox-1.3.3.ebuild: + Drop old, obsoletes bug #464898 by Vicente Olivert Riera <vincent@gentoo.org> 01 Jun 2013; Pacho Ramos <pacho@gentoo.org> metadata.xml: Cleanup due bug #144305 diff --git a/x11-wm/fluxbox/files/1.0.0/gcc-4.3.patch b/x11-wm/fluxbox/files/1.0.0/gcc-4.3.patch deleted file mode 100644 index a4f14de2b250..000000000000 --- a/x11-wm/fluxbox/files/1.0.0/gcc-4.3.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- fluxbox-1.0.0/src/main.cc -+++ fluxbox-1.0.0/src/main.cc -@@ -45,6 +45,12 @@ - #include <stdlib.h> - #endif - -+#ifdef HAVE_CSTRING -+ #include <cstring> -+#else -+ #include <string.h> -+#endif -+ - #include <iostream> - #include <fstream> - #include <stdexcept> diff --git a/x11-wm/fluxbox/files/1.0.0/generate-menu.patch b/x11-wm/fluxbox/files/1.0.0/generate-menu.patch deleted file mode 100644 index 1656fe23f175..000000000000 --- a/x11-wm/fluxbox/files/1.0.0/generate-menu.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- util/fluxbox-generate_menu.in.orig 2007-12-26 13:46:13.000000000 -0500 -+++ util/fluxbox-generate_menu.in 2007-12-26 13:54:59.000000000 -0500 -@@ -1685,6 +1685,7 @@ - append_submenu "${GRAPHICMENU}" - normal_find gimp gimp2 gimp-2.2 inkscape sodipodi xv gqview showimg xpaint kpaint kiconedit \ - ee xzgv xscreensaver-demo xlock gphoto tuxpaint krita skencil -+ find_it display append "[exec] (ImageMagick Display) {display}" - find_it xnview append "[exec] (xnview browser) {xnview -browser}" - find_it blender append "[exec] (blender) {blender -w}" - find_it gears append "[exec] (Mesa gears) {gears}" -@@ -1718,9 +1719,10 @@ - find_it gcalc append "[exec] (gcalc) {gcalc}" || \ - find_it gnome-calculator append "[exec] (gcalc) {gnome-calculator}" - find_it ical append "[exec] (Calendar) {ical}" -+ find_it sunbird append "[exec] (Sunbird) {sunbird}" - - # older <=1.1.3 apparently have stuff like swriter, not sowriter -- for ext in s so oo xoo; do -+ for ext in oo xoo; do - find_it ${ext}ffice2 && ( - find_it ${ext}ffice2 append "[exec] (Open Office 2) {${ext}ffice2}" - find_it ${ext}base2 append "[exec] (OO Base 2) {${ext}base2}" diff --git a/x11-wm/fluxbox/files/1.0.0/gentoo_style_location.patch b/x11-wm/fluxbox/files/1.0.0/gentoo_style_location.patch deleted file mode 100644 index cc814e4a9cba..000000000000 --- a/x11-wm/fluxbox/files/1.0.0/gentoo_style_location.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- util/fluxbox-generate_menu.in.orig 2007-07-13 13:47:11.000000000 -0600 -+++ util/fluxbox-generate_menu.in 2007-07-13 13:51:03.000000000 -0600 -@@ -1803,12 +1803,8 @@ - append_submenu "${FBSETTINGSMENU}" - append "[config] (${CONFIGUREMENU})" - -- append_menu "[submenu] (${SYSTEMSTYLES}) {${STYLEMENUTITLE}}" -- append "[stylesdir] (${PREFIX}/share/fluxbox/styles)" -- append_menu_end -- -- append_menu "[submenu] (${USERSTYLES}) {${STYLEMENUTITLE}}" -- append "[stylesdir] (~/.@pkgprefix@fluxbox@pkgsuffix@/styles)" -+ append_submenu "Styles" -+ append "[include] (@GENTOO_PORTAGE_EPREFIX@/usr/share/fluxbox/menu.d/styles/)" - append_menu_end - - # Backgroundmenu diff --git a/x11-wm/fluxbox/files/1.1.0.1/gentoo_style_location.patch b/x11-wm/fluxbox/files/1.1.0.1/gentoo_style_location.patch deleted file mode 100644 index dfa4f2eab48f..000000000000 --- a/x11-wm/fluxbox/files/1.1.0.1/gentoo_style_location.patch +++ /dev/null @@ -1,19 +0,0 @@ -diff --git a/util/fluxbox-generate_menu.in b/util/fluxbox-generate_menu.in -index aca8b08..b229046 100755 ---- a/util/fluxbox-generate_menu.in -+++ b/util/fluxbox-generate_menu.in -@@ -1794,12 +1794,8 @@ fi - append_submenu "${FBSETTINGSMENU}" - append "[config] (${CONFIGUREMENU})" - -- append_menu "[submenu] (${SYSTEMSTYLES}) {${STYLEMENUTITLE}}" -- append "[stylesdir] (${PREFIX}/share/fluxbox/styles)" -- append_menu_end -- -- append_menu "[submenu] (${USERSTYLES}) {${STYLEMENUTITLE}}" -- append "[stylesdir] (~/.@pkgprefix@fluxbox@pkgsuffix@/styles)" -+ append_submenu "Styles" -+ append "[include] (@GENTOO_PORTAGE_EPREFIX@/usr/share/fluxbox/menu.d/styles/)" - append_menu_end - - # Backgroundmenu diff --git a/x11-wm/fluxbox/files/fbsetbg-quiet-1.1.1.patch b/x11-wm/fluxbox/files/fbsetbg-quiet-1.1.1.patch deleted file mode 100644 index a74a4ffb041c..000000000000 --- a/x11-wm/fluxbox/files/fbsetbg-quiet-1.1.1.patch +++ /dev/null @@ -1,74 +0,0 @@ -From 2c60fe4addd9480d78bf6d41c4aa9c179c70df01 Mon Sep 17 00:00:00 2001 -From: Jim Ramsay <i.am@jimramsay.com> -Date: Fri, 24 Apr 2009 11:25:08 -0400 -Subject: [PATCH 1/2] Allow 'background: unset' - -When a user sets 'background: none' it really means "Do not let themes touch the -background I have already set with fbsetbg" -> It does still actually call -fbsetbeg to re-assert the proper background. - -This new value 'unset' is for users who will use an alternate method to set -their background (root-tail, xscreensaver, or whatever). It instructs fluxbox -to *never* run fbsetbg. ---- - src/RootTheme.cc | 4 ++++ - 1 files changed, 4 insertions(+), 0 deletions(-) - -diff --git a/src/RootTheme.cc b/src/RootTheme.cc -index 049eb27..34c06e9 100644 ---- a/src/RootTheme.cc -+++ b/src/RootTheme.cc -@@ -202,6 +202,10 @@ void RootTheme::reconfigTheme() { - filename = FbTk::StringUtil::expandFilename(filename); - std::string cmd = realProgramName("fbsetbg") + (m_first ? " -z " : " -Z "); - -+ // user explicitly requests NO background be set at all -+ if (strstr(m_background->options().c_str(), "unset") != 0) { -+ return; -+ } - // style doesn't wish to change the background - if (strstr(m_background->options().c_str(), "none") != 0) { - if (!m_first) --- -1.6.2 - - -From 23857ca509be6a8ffa306c23c8d39942105a13f9 Mon Sep 17 00:00:00 2001 -From: Jim Ramsay <i.am@jimramsay.com> -Date: Fri, 24 Apr 2009 14:15:58 -0400 -Subject: [PATCH 2/2] Don't complain on '-z' if there's no lastwallpaper - -This hides the odd cornercase of users with no lastwallpaper file and no -background set in their style or overlay. - -Adapted from the patch at -http://sourceforge.net/tracker/?func=detail&aid=2389567&group_id=35398&atid=413962 ---- - util/fbsetbg | 4 ++++ - 1 files changed, 4 insertions(+), 0 deletions(-) - -diff --git a/util/fbsetbg b/util/fbsetbg -index a12d427..47aa33b 100644 ---- a/util/fbsetbg -+++ b/util/fbsetbg -@@ -308,6 +308,7 @@ while [ $# -gt 0 ]; do - remember=false - break - fi -+ ignore_missing_wallpaper=true - style="style" - shift ;; - -Z) -@@ -521,6 +522,9 @@ fi - - - if [ ! -r "$wallpaper" ]; then -+ if [ "$ignore_missing_wallpaper" == "true" ]; then -+ exit 0 -+ fi - message "Can't find wallpaper $wallpaper" - exit 1 - fi --- -1.6.2 - diff --git a/x11-wm/fluxbox/files/fluxbox-1.0.0-interix.patch b/x11-wm/fluxbox/files/fluxbox-1.0.0-interix.patch deleted file mode 100644 index aec829962e9c..000000000000 --- a/x11-wm/fluxbox/files/fluxbox-1.0.0-interix.patch +++ /dev/null @@ -1,39 +0,0 @@ -diff -ru fluxbox-1.0.0.orig/src/FbTk/FbString.cc fluxbox-1.0.0/src/FbTk/FbString.cc ---- fluxbox-1.0.0.orig/src/FbTk/FbString.cc 2008-03-11 10:36:10 +0100 -+++ fluxbox-1.0.0/src/FbTk/FbString.cc 2008-03-11 10:39:29 +0100 -@@ -46,7 +46,16 @@ - #ifdef HAVE_ICONV - #include <iconv.h> - #endif // HAVE_ICONV -+ -+#if defined(__INTERIX) -+extern "C" { -+// interix has a broken langinfo.h without extern "C" -+#include <langinfo.h> -+} -+#else - #include <langinfo.h> -+#endif -+ - #include <locale.h> - - #include <iostream> -diff -ru fluxbox-1.0.0.orig/src/FbTk/Font.cc fluxbox-1.0.0/src/FbTk/Font.cc ---- fluxbox-1.0.0.orig/src/FbTk/Font.cc 2008-03-11 10:36:10 +0100 -+++ fluxbox-1.0.0/src/FbTk/Font.cc 2008-03-11 10:39:44 +0100 -@@ -68,7 +68,15 @@ - #include <list> - #include <map> - #include <typeinfo> -+ -+#if defined(__INTERIX) -+extern "C" { -+// interix has a broken langinfo.h without extern "C" -+#include <langinfo.h> -+} -+#else - #include <langinfo.h> -+#endif - - #include <errno.h> - diff --git a/x11-wm/fluxbox/files/fluxbox-1.1.1-multiscreen.patch b/x11-wm/fluxbox/files/fluxbox-1.1.1-multiscreen.patch deleted file mode 100644 index 802809934957..000000000000 --- a/x11-wm/fluxbox/files/fluxbox-1.1.1-multiscreen.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 95ee731d9118eec110ecb2de5c9094d561a004bd Mon Sep 17 00:00:00 2001 -From: Mathias Gumz <akira at fluxbox dot org> -Date: Thu, 6 Jan 2011 08:33:34 +0100 -Subject: [PATCH] Backported bugfix: do not assume ':number.screen' as the result of 'DisplayString()' - -a newer xlib recently changed the result of 'DisplayString()' a little bit: -instead of returning ':0.0' or ':1.0' it yields ':0' or ':1'. our code to -transform this string into something that includes the currently used -Screen worked only on something like ':0.0'. - -we now find the '.' after the ':' and strip that part away. - -Backported from e8ce9ed3a38e1b4a3e5727d408d0fac0e2ff1ada ---- - src/FbCommands.cc | 18 +++++++++++++++--- - 1 files changed, 15 insertions(+), 3 deletions(-) - -diff --git a/src/FbCommands.cc b/src/FbCommands.cc -index fd3f71e..fc9e7a2 100644 ---- a/src/FbCommands.cc -+++ b/src/FbCommands.cc -@@ -142,9 +142,13 @@ int ExecuteCmd::run() { - if (pid) - return pid; - -+ // 'display' is given as 'host:number.screen'. we want to give the -+ // new app a good home, so we remove '.screen' from what is given -+ // us from the xserver and replace it with the screen_num of the Screen -+ // the user currently points at with the mouse - string displaystring("DISPLAY="); -- displaystring += DisplayString(FbTk::App::instance()->display()); - char intbuff[64]; -+ string display = DisplayString(FbTk::App::instance()->display()); - int screen_num = m_screen_num; - if (screen_num < 0) { - if (Fluxbox::instance()->mouseScreen() == 0) -@@ -155,6 +159,15 @@ int ExecuteCmd::run() { - - sprintf(intbuff, "%d", screen_num); - -+ // strip away the '.screen' -+ size_t dot = display.rfind(':'); -+ dot = display.find('.', dot); -+ if (dot != string::npos) { // 'display' has actually a '.screen' part -+ display.erase(dot); -+ } -+ display += '.'; -+ display += intbuff; -+ - // get shell path from the environment - // this process exits immediately, so we don't have to worry about memleaks - const char *shell = getenv("SHELL"); -@@ -162,8 +175,7 @@ int ExecuteCmd::run() { - shell = "/bin/sh"; - - // remove last number of display and add screen num -- displaystring.erase(displaystring.size()-1); -- displaystring += intbuff; -+ displaystring += DisplayString(FbTk::App::instance()->display()); - - setsid(); - putenv(const_cast<char *>(displaystring.c_str())); --- -1.7.4.rc1 - diff --git a/x11-wm/fluxbox/files/fluxbox-1.3.1-gcc46.patch b/x11-wm/fluxbox/files/fluxbox-1.3.1-gcc46.patch deleted file mode 100644 index 90d268989dc7..000000000000 --- a/x11-wm/fluxbox/files/fluxbox-1.3.1-gcc46.patch +++ /dev/null @@ -1,44 +0,0 @@ -From d28e105075e3ec46515c322ee5dca6967a4cc696 Mon Sep 17 00:00:00 2001 -From: Daniel Diaz<dydyam at gmail dot com> -Date: Mon, 28 Mar 2011 07:06:01 +0000 -Subject: compile fix: added <cstdlib> to provide declaration for 'size_t' (gcc-4.6.x likes it that way) - ---- -diff --git a/src/FbTk/LayerItem.hh b/src/FbTk/LayerItem.hh -index a4cdd49..ad33451 100644 ---- a/src/FbTk/LayerItem.hh -+++ b/src/FbTk/LayerItem.hh -@@ -26,6 +26,7 @@ - #include "Layer.hh" - #include "NotCopyable.hh" - #include <vector> -+#include <cstdlib> // size_t - - namespace FbTk { - -diff --git a/src/FbTk/MacroCommand.hh b/src/FbTk/MacroCommand.hh -index 932ecaf..bce2ce4 100644 ---- a/src/FbTk/MacroCommand.hh -+++ b/src/FbTk/MacroCommand.hh -@@ -26,6 +26,7 @@ - #include "RefCount.hh" - - #include <vector> -+#include <cstdlib> // size_t - - namespace FbTk { - -diff --git a/src/FbTk/MultLayers.hh b/src/FbTk/MultLayers.hh -index 62c006f..3da25f6 100644 ---- a/src/FbTk/MultLayers.hh -+++ b/src/FbTk/MultLayers.hh -@@ -24,6 +24,7 @@ - #define FBTK_MULTLAYERS_HH - - #include <vector> -+#include <cstdlib> // size_t - - namespace FbTk { - --- -cgit diff --git a/x11-wm/fluxbox/files/macrocmd-crash-1.1.1.patch b/x11-wm/fluxbox/files/macrocmd-crash-1.1.1.patch deleted file mode 100644 index 2d5d1bda78dd..000000000000 --- a/x11-wm/fluxbox/files/macrocmd-crash-1.1.1.patch +++ /dev/null @@ -1,68 +0,0 @@ -From 183e6666f6afd7973f60f2253187e8c24b58b6b1 Mon Sep 17 00:00:00 2001 -From: Jim Ramsay <i.am@jimramsay.com> -Date: Mon, 6 Apr 2009 17:25:01 -0400 -Subject: [PATCH 1/2] Exit loop for unterminated { } pair - ---- - src/FbTk/StringUtil.hh | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/src/FbTk/StringUtil.hh b/src/FbTk/StringUtil.hh -index 75fa69e..35f23a2 100644 ---- a/src/FbTk/StringUtil.hh -+++ b/src/FbTk/StringUtil.hh -@@ -84,7 +84,7 @@ static void stringTokensBetween(Container &container, const std::string &in, - while (true) { - err = getStringBetween(token, in.c_str() + pos, first, last, ok_chars, - allow_nesting); -- if (err == 0) -+ if (err <= 0) - break; - container.push_back(token); - pos += err; --- -1.6.2 - - -From 55c45305d4f6973f5fbecec1e527e55dd6bd9fa5 Mon Sep 17 00:00:00 2001 -From: Jim Ramsay <i.am@jimramsay.com> -Date: Wed, 8 Apr 2009 10:57:04 -0400 -Subject: [PATCH 2/2] Error on incomplete MacroCmd key command - ---- - src/FbTk/MacroCommand.cc | 16 +++++++++------- - 1 files changed, 9 insertions(+), 7 deletions(-) - -diff --git a/src/FbTk/MacroCommand.cc b/src/FbTk/MacroCommand.cc -index 511683b..555e5f5 100644 ---- a/src/FbTk/MacroCommand.cc -+++ b/src/FbTk/MacroCommand.cc -@@ -33,16 +33,18 @@ namespace { - template <typename M> - M *addCommands(M *macro, const std::string &args, bool trusted) { - -- std::string blah; -+ std::string remainder; - std::list<std::string> cmds; -- StringUtil::stringTokensBetween(cmds, args, blah, '{', '}'); -+ StringUtil::stringTokensBetween(cmds, args, remainder, '{', '}'); - RefCount<Command<void> > cmd(0); - -- std::list<std::string>::iterator it = cmds.begin(), it_end = cmds.end(); -- for (; it != it_end; ++it) { -- cmd = CommandParser<void>::instance().parse(*it, trusted); -- if (*cmd) -- macro->add(cmd); -+ if (remainder.length() == 0) { -+ std::list<std::string>::iterator it = cmds.begin(), it_end = cmds.end(); -+ for (; it != it_end; ++it) { -+ cmd = CommandParser<void>::instance().parse(*it, trusted); -+ if (*cmd) -+ macro->add(cmd); -+ } - } - - if (macro->size() > 0) --- -1.6.2 - diff --git a/x11-wm/fluxbox/files/mousefocus-1.1.1-r2.patch b/x11-wm/fluxbox/files/mousefocus-1.1.1-r2.patch deleted file mode 100644 index b492eee11659..000000000000 --- a/x11-wm/fluxbox/files/mousefocus-1.1.1-r2.patch +++ /dev/null @@ -1,159 +0,0 @@ -From 998d9ea7942e3bcb07b52e06d08ef69bbe552944 Mon Sep 17 00:00:00 2001 -From: Jim Ramsay <i.am@jimramsay.com> -Date: Fri, 30 Jan 2009 10:41:27 -0500 -Subject: [PATCH 1/2] Added facility to selectively ignore EnterNotify events - -This will be used to avoid some situations where an EnterNotify event should not -focus the window beneath the mouse cursor. For example, when a menu (or any -window for that matter) is unmapped, focus should not pass to whatever window is -beneath the current location of the mouse cursor, but to the previous window in -the focus list. - -This was first noticed when using the ClientMenu feature with -focus-follows-mouse on -> The focus would always end up on the window beneath -the mouse pointer, not the window selected in the menu. ---- - src/FocusControl.cc | 25 ++++++++++++++++++++++++- - src/FocusControl.hh | 10 ++++++++++ - src/Window.cc | 8 ++++++-- - 3 files changed, 40 insertions(+), 3 deletions(-) - -diff --git a/src/FocusControl.cc b/src/FocusControl.cc -index cead827..e0a3662 100644 ---- a/src/FocusControl.cc -+++ b/src/FocusControl.cc -@@ -81,7 +81,8 @@ FocusControl::FocusControl(BScreen &screen): - m_focused_win_list(screen), m_creation_order_win_list(screen), - m_cycling_list(0), - m_was_iconic(false), -- m_cycling_last(0) { -+ m_cycling_last(0), -+ m_ignore_mouse_x(-1), m_ignore_mouse_y(-1) { - - m_cycling_window = m_focused_list.clientList().end(); - -@@ -402,6 +403,28 @@ void FocusControl::dirFocus(FluxboxWindow &win, FocusDir dir) { - - } - -+void FocusControl::ignoreAtPointer() -+{ -+ int ignore_i; -+ unsigned int ignore_ui; -+ Window ignore_w; -+ -+ XQueryPointer(m_screen.rootWindow().display(), -+ m_screen.rootWindow().window(), &ignore_w, &ignore_w, -+ &m_ignore_mouse_x, &m_ignore_mouse_y, -+ &ignore_i, &ignore_i, &ignore_ui); -+} -+ -+void FocusControl::ignoreAt(int x, int y) -+{ -+ m_ignore_mouse_x = x; m_ignore_mouse_y = y; -+} -+ -+bool FocusControl::isIgnored(int x, int y) -+{ -+ return x == m_ignore_mouse_x && y == m_ignore_mouse_y; -+} -+ - void FocusControl::removeClient(WinClient &client) { - if (client.screen().isShuttingdown()) - return; -diff --git a/src/FocusControl.hh b/src/FocusControl.hh -index 4de4310..91681ab 100644 ---- a/src/FocusControl.hh -+++ b/src/FocusControl.hh -@@ -93,6 +93,15 @@ public: - bool isMouseFocus() const { return focusModel() == MOUSEFOCUS; } - /// @return true if tab focus mode is mouse tab focus - bool isMouseTabFocus() const { return tabFocusModel() == MOUSETABFOCUS; } -+ -+ /// Set the "ignore" pointer location to the current pointer location -+ void ignoreAtPointer(); -+ /// Set the "ignore" pointer location to the given coordinates -+ void ignoreAt(int x, int y); -+ /// @return true if events at the given X/Y coordinate should be ignored -+ /// (ie, they were previously cached via one of the ignoreAt calls) -+ bool isIgnored(int x, int y); -+ - /// @return true if cycling is in progress - bool isCycling() const { return m_cycling_list != 0; } - /// Appends a client to the front of the focus list -@@ -157,6 +166,7 @@ private: - const FocusableList *m_cycling_list; - Focusable *m_was_iconic; - WinClient *m_cycling_last; -+ int m_ignore_mouse_x, m_ignore_mouse_y; - - static WinClient *s_focused_window; - static FluxboxWindow *s_focused_fbwindow; -diff --git a/src/Window.cc b/src/Window.cc -index 5d50fcf..fe32d29 100644 ---- a/src/Window.cc -+++ b/src/Window.cc -@@ -2676,13 +2676,17 @@ void FluxboxWindow::enterNotifyEvent(XCrossingEvent &ev) { - sa.enter = sa.leave = False; - XCheckIfEvent(display, &dummy, queueScanner, (char *) &sa); - -- if ((!sa.leave || sa.inferior) && !screen().focusControl().isCycling() ) { -+ if ((!sa.leave || sa.inferior) && -+ !screen().focusControl().isCycling() && -+ !screen().focusControl().isIgnored(ev.x_root, ev.y_root) ) { - focus(); - } - } - } - -- if (screen().focusControl().isMouseTabFocus() && client && client != m_client) { -+ if (screen().focusControl().isMouseTabFocus() && -+ client && client != m_client && -+ !screen().focusControl().isIgnored(ev.x_root, ev.y_root) ) { - setCurrentClient(*client, isFocused()); - } - --- -1.7.1 - - -From e16a6d1fa71825b5390d9139b771f470aeb03d79 Mon Sep 17 00:00:00 2001 -From: Jim Ramsay <i.am@jimramsay.com> -Date: Sat, 29 May 2010 09:30:48 -0400 -Subject: [PATCH 2/2] Ignore EnterNotify when the ClientMenu closes - -This is so that the resulting exposition of a window belowe the ClientMenu will -not steal focus from the window just focused by the ClientMenu. ---- - src/ClientMenu.cc | 7 ++++++- - 1 files changed, 6 insertions(+), 1 deletions(-) - -diff --git a/src/ClientMenu.cc b/src/ClientMenu.cc -index f5af305..c49791c 100644 ---- a/src/ClientMenu.cc -+++ b/src/ClientMenu.cc -@@ -25,6 +25,7 @@ - #include "Screen.hh" - #include "Window.hh" - #include "WindowCmd.hh" -+#include "FocusControl.hh" - #include <X11/keysym.h> - - #include "FbTk/MenuItem.hh" -@@ -52,8 +53,12 @@ public: - - m_client.focus(); - fbwin->raise(); -- if ((mods & ControlMask) == 0) -+ if ((mods & ControlMask) == 0) { -+ // Ignore any focus changes due to this menu closing -+ // (even in StrictMouseFocus mode) -+ m_client.screen().focusControl().ignoreAtPointer(); - parent->hide(); -+ } - } - - const std::string &label() const { return m_client.title(); } --- -1.7.1 - diff --git a/x11-wm/fluxbox/files/mousefocus-1.1.1.patch b/x11-wm/fluxbox/files/mousefocus-1.1.1.patch deleted file mode 100644 index 12cc1cb78999..000000000000 --- a/x11-wm/fluxbox/files/mousefocus-1.1.1.patch +++ /dev/null @@ -1,240 +0,0 @@ -From 5c7784affe78467d7ef4e52e22da83c341622d53 Mon Sep 17 00:00:00 2001 -From: Jim Ramsay <i.am@jimramsay.com> -Date: Fri, 30 Jan 2009 10:41:27 -0500 -Subject: [PATCH 1/5] Added facility to selectively ignore EnterNotify events - -This will be used to avoid some situations where an EnterNotify event should not -focus the window beneath the mouse cursor. For example, when a menu (or any -window for that matter) is unmapped, focus should not pass to whatever window is -beneath the current location of the mouse cursor, but to the previous window in -the focus list. - -This was first noticed when using the ClientMenu feature with -focus-follows-mouse on -> The focus would always end up on the window beneath -the mouse pointer, not the window selected in the menu. ---- - src/FocusControl.cc | 25 ++++++++++++++++++++++++- - src/FocusControl.hh | 10 ++++++++++ - src/Window.cc | 8 ++++++-- - 3 files changed, 40 insertions(+), 3 deletions(-) - -diff --git a/src/FocusControl.cc b/src/FocusControl.cc -index 78752bb..701373b 100644 ---- a/src/FocusControl.cc -+++ b/src/FocusControl.cc -@@ -81,7 +81,8 @@ FocusControl::FocusControl(BScreen &screen): - m_focused_win_list(screen), m_creation_order_win_list(screen), - m_cycling_list(0), - m_was_iconic(false), -- m_cycling_last(0) { -+ m_cycling_last(0), -+ m_ignore_mouse_x(-1), m_ignore_mouse_y(-1) { - - m_cycling_window = m_focused_list.clientList().end(); - -@@ -400,6 +401,28 @@ void FocusControl::dirFocus(FluxboxWindow &win, FocusDir dir) { - - } - -+void FocusControl::ignoreAtPointer() -+{ -+ int ignore_i; -+ unsigned int ignore_ui; -+ Window ignore_w; -+ -+ XQueryPointer(m_screen.rootWindow().display(), -+ m_screen.rootWindow().window(), &ignore_w, &ignore_w, -+ &m_ignore_mouse_x, &m_ignore_mouse_y, -+ &ignore_i, &ignore_i, &ignore_ui); -+} -+ -+void FocusControl::ignoreAt(int x, int y) -+{ -+ m_ignore_mouse_x = x; m_ignore_mouse_y = y; -+} -+ -+bool FocusControl::isIgnored(int x, int y) -+{ -+ return x == m_ignore_mouse_x && y == m_ignore_mouse_y; -+} -+ - void FocusControl::removeClient(WinClient &client) { - if (client.screen().isShuttingdown()) - return; -diff --git a/src/FocusControl.hh b/src/FocusControl.hh -index 4de4310..91681ab 100644 ---- a/src/FocusControl.hh -+++ b/src/FocusControl.hh -@@ -93,6 +93,15 @@ public: - bool isMouseFocus() const { return focusModel() == MOUSEFOCUS; } - /// @return true if tab focus mode is mouse tab focus - bool isMouseTabFocus() const { return tabFocusModel() == MOUSETABFOCUS; } -+ -+ /// Set the "ignore" pointer location to the current pointer location -+ void ignoreAtPointer(); -+ /// Set the "ignore" pointer location to the given coordinates -+ void ignoreAt(int x, int y); -+ /// @return true if events at the given X/Y coordinate should be ignored -+ /// (ie, they were previously cached via one of the ignoreAt calls) -+ bool isIgnored(int x, int y); -+ - /// @return true if cycling is in progress - bool isCycling() const { return m_cycling_list != 0; } - /// Appends a client to the front of the focus list -@@ -157,6 +166,7 @@ private: - const FocusableList *m_cycling_list; - Focusable *m_was_iconic; - WinClient *m_cycling_last; -+ int m_ignore_mouse_x, m_ignore_mouse_y; - - static WinClient *s_focused_window; - static FluxboxWindow *s_focused_fbwindow; -diff --git a/src/Window.cc b/src/Window.cc -index 4b4d1dc..513fbb6 100644 ---- a/src/Window.cc -+++ b/src/Window.cc -@@ -2680,13 +2680,17 @@ void FluxboxWindow::enterNotifyEvent(XCrossingEvent &ev) { - sa.enter = sa.leave = False; - XCheckIfEvent(display, &dummy, queueScanner, (char *) &sa); - -- if ((!sa.leave || sa.inferior) && !screen().focusControl().isCycling() ) { -+ if ((!sa.leave || sa.inferior) && -+ !screen().focusControl().isCycling() && -+ !screen().focusControl().isIgnored(ev.x_root, ev.y_root) ) { - focus(); - } - } - } - -- if (screen().focusControl().isMouseTabFocus() && client && client != m_client) { -+ if (screen().focusControl().isMouseTabFocus() && -+ client && client != m_client && -+ !screen().focusControl().isIgnored(ev.x_root, ev.y_root) ) { - setCurrentClient(*client, isFocused()); - } - --- -1.6.2 - - -From 76ea1d9bbe3f3b7edb15da1a67652982edd5f646 Mon Sep 17 00:00:00 2001 -From: Jim Ramsay <i.am@jimramsay.com> -Date: Fri, 30 Jan 2009 10:47:24 -0500 -Subject: [PATCH 2/5] Ignore EnterNotify on Unmap - -This is the basic condition that was first noticed because of the effect of the -ClientMenu window unmapping and the resulting EnterNotify event stealing focus -from the window selected in that menu. But to be complete, any window unmapping -should cause focus to move to the next in the last-recently-focused window list, -not the one that happens to be beneath the mouse cursor. ---- - src/fluxbox.cc | 5 +++++ - 1 files changed, 5 insertions(+), 0 deletions(-) - -diff --git a/src/fluxbox.cc b/src/fluxbox.cc -index 93768da..f44f8aa 100644 ---- a/src/fluxbox.cc -+++ b/src/fluxbox.cc -@@ -899,6 +899,11 @@ void Fluxbox::handleUnmapNotify(XUnmapEvent &ue) { - - BScreen *screen = searchScreen(ue.event); - -+ if (screen) { -+ /* Ignore all EnterNotify events until the pointer actually moves */ -+ screen->focusControl().ignoreAtPointer(); -+ } -+ - if (ue.event != ue.window && (!screen || !ue.send_event)) { - return; - } --- -1.6.2 - - -From 8a7879913ba7169224e18db81888a49e732c1819 Mon Sep 17 00:00:00 2001 -From: Jim Ramsay <i.am@jimramsay.com> -Date: Fri, 30 Jan 2009 10:51:10 -0500 -Subject: [PATCH 3/5] Ignore EnterNotify on Lower - -Lower is one of the actions which may reveal a window under the current mouse -pointer which would unexpectedly change focus under focus-folows-mouse. ---- - src/Window.cc | 4 ++++ - 1 files changed, 4 insertions(+), 0 deletions(-) - -diff --git a/src/Window.cc b/src/Window.cc -index 513fbb6..35d9b80 100644 ---- a/src/Window.cc -+++ b/src/Window.cc -@@ -1668,6 +1668,10 @@ void FluxboxWindow::lower() { - #ifdef DEBUG - cerr<<"FluxboxWindow("<<title()<<")::lower()"<<endl; - #endif // DEBUG -+ -+ /* Ignore all EnterNotify events until the pointer actually moves */ -+ screen().focusControl().ignoreAtPointer(); -+ - // get root window - WinClient *client = getRootTransientFor(m_client); - --- -1.6.2 - - -From 54c1ac8704c2ad81a597547912bdbf5cbf7967d9 Mon Sep 17 00:00:00 2001 -From: Jim Ramsay <i.am@jimramsay.com> -Date: Fri, 30 Jan 2009 10:54:04 -0500 -Subject: [PATCH 4/5] Ignore EnterNotify on Move or Resize - -Moving and Resizing windows can reveal other windows, which of course can change -unexpected focus changes in focus-follows-mouse. ---- - src/Window.cc | 3 +++ - 1 files changed, 3 insertions(+), 0 deletions(-) - -diff --git a/src/Window.cc b/src/Window.cc -index 35d9b80..1104e50 100644 ---- a/src/Window.cc -+++ b/src/Window.cc -@@ -1211,6 +1211,9 @@ void FluxboxWindow::moveResize(int new_x, int new_y, - if (!moving) { - m_last_resize_x = new_x; - m_last_resize_y = new_y; -+ -+ /* Ignore all EnterNotify events until the pointer actually moves */ -+ screen().focusControl().ignoreAtPointer(); - } - - } --- -1.6.2 - - -From c1dee4a4055f8f0dafadeca508ff5568e2d0ce08 Mon Sep 17 00:00:00 2001 -From: Jim Ramsay <i.am@jimramsay.com> -Date: Mon, 9 Mar 2009 14:05:41 -0400 -Subject: [PATCH 5/5] Ignore EnterNotify on workspace change - -Changing workspaces also reveals other windows, which causes unexpected focus -changes. ---- - src/Screen.cc | 3 +++ - 1 files changed, 3 insertions(+), 0 deletions(-) - -diff --git a/src/Screen.cc b/src/Screen.cc -index 8b605e7..4d9a65f 100644 ---- a/src/Screen.cc -+++ b/src/Screen.cc -@@ -1098,6 +1098,9 @@ void BScreen::changeWorkspaceID(unsigned int id, bool revert) { - id == m_current_workspace->workspaceID()) - return; - -+ /* Ignore all EnterNotify events until the pointer actually moves */ -+ this->focusControl().ignoreAtPointer(); -+ - FbTk::App::instance()->sync(false); - - FluxboxWindow *focused = FocusControl::focusedFbWindow(); --- -1.6.2 - diff --git a/x11-wm/fluxbox/files/strictmousefocus-1.1.1.patch b/x11-wm/fluxbox/files/strictmousefocus-1.1.1.patch deleted file mode 100644 index ff150fbe4ac9..000000000000 --- a/x11-wm/fluxbox/files/strictmousefocus-1.1.1.patch +++ /dev/null @@ -1,236 +0,0 @@ -From a830cf18ce0830451208157ecd0997521e171522 Mon Sep 17 00:00:00 2001 -From: Jim Ramsay <jim.ramsay@motorola.com> -Date: Fri, 28 May 2010 13:22:13 -0400 -Subject: [PATCH 1/2] Add new focus model: StrictMouseFocus - -This is not actually implemented yet, but from now on, "MouseFocus" means: - Focus follows mouse only when you are moving the mouse, any EnterNotify events - caused by non-mouse operations (window closing, keycommands, changing - desktops) will *not* shift focus - -And once fully-implemented, "StrictMouseFocus" will mean: - Focus follows mouse on every EnterNotify event (except when the "ClientMenu" - closes or during alt+tab window cycling) ---- - doc/fluxbox.1.in | 7 +++++-- - nls/fluxbox-nls.hh | 1 + - src/FocusControl.cc | 5 +++++ - src/FocusControl.hh | 7 ++++--- - src/Screen.cc | 7 ++++++- - 5 files changed, 21 insertions(+), 6 deletions(-) - -diff --git a/doc/fluxbox.1.in b/doc/fluxbox.1.in -index 11f70d9..86802b9 100644 ---- a/doc/fluxbox.1.in -+++ b/doc/fluxbox.1.in -@@ -910,10 +910,13 @@ session\.screen0\.followModel: <model> - be focused\. `Ignore\' does nothing, and `Follow\' uses the setting in - session\.screen0\.userFollowModel\. Default: Ignore - --session\.screen0\.focusModel: ClickToFocus|MouseFocus -+session\.screen0\.focusModel: ClickToFocus|MouseFocus|StrictMouseFocus - This controls how windows gain focus via the mouse\. With `ClickToFocus\', - the user must click on the window\. With `MouseFocus\', windows gain focus -- whenever the mouse moves over them\. Default: ClickToFocus -+ whenever the mouse moves over them, but only when the mouse is moving. -+ With `StrictMouseFocus\', windows gain focus whenever the mouse enters any -+ exposed area, even if this is due to layer changes, window movement, -+ changing desktops, closing windows, etc\. Default: ClickToFocus - - session\.screen0\.autoRaise: <boolean> - When True, this setting automatically raises any window that gains focus\. -diff --git a/nls/fluxbox-nls.hh b/nls/fluxbox-nls.hh -index a304995..178c2f2 100644 ---- a/nls/fluxbox-nls.hh -+++ b/nls/fluxbox-nls.hh -@@ -84,6 +84,7 @@ enum { - ConfigmenuMaxIgnoreInc = 27, - ConfigmenuMaxDisableMove = 28, - ConfigmenuMaxDisableResize = 29, -+ ConfigmenuStrictMouseFocus = 30, - - EwmhSet = 5, - EwmhOutOfMemoryClientList = 1, -diff --git a/src/FocusControl.cc b/src/FocusControl.cc -index e0a3662..66a2ed8 100644 ---- a/src/FocusControl.cc -+++ b/src/FocusControl.cc -@@ -491,6 +491,7 @@ void FocusControl::revertFocus(BScreen &screen) { - else { - switch (screen.focusControl().focusModel()) { - case FocusControl::MOUSEFOCUS: -+ case FocusControl::STRICTMOUSEFOCUS: - XSetInputFocus(screen.rootWindow().display(), - PointerRoot, None, CurrentTime); - break; -@@ -596,6 +597,8 @@ std::string FbTk::Resource<FocusControl::FocusModel>::getString() const { - switch (m_value) { - case FocusControl::MOUSEFOCUS: - return string("MouseFocus"); -+ case FocusControl::STRICTMOUSEFOCUS: -+ return string("StrictMouseFocus"); - case FocusControl::CLICKFOCUS: - return string("ClickFocus"); - } -@@ -608,6 +611,8 @@ void FbTk::Resource<FocusControl::FocusModel>:: - setFromString(char const *strval) { - if (strcasecmp(strval, "MouseFocus") == 0) - m_value = FocusControl::MOUSEFOCUS; -+ else if (strcasecmp(strval, "StrictMouseFocus") == 0) -+ m_value = FocusControl::STRICTMOUSEFOCUS; - else if (strcasecmp(strval, "ClickToFocus") == 0) - m_value = FocusControl::CLICKFOCUS; - else -diff --git a/src/FocusControl.hh b/src/FocusControl.hh -index 91681ab..72eec11 100644 ---- a/src/FocusControl.hh -+++ b/src/FocusControl.hh -@@ -42,8 +42,9 @@ public: - typedef std::list<Focusable *> Focusables; - /// main focus model - enum FocusModel { -- MOUSEFOCUS = 0, ///< focus follows mouse -- CLICKFOCUS ///< focus on click -+ MOUSEFOCUS = 0, ///< focus follows mouse, but only when the mouse is moving -+ CLICKFOCUS, ///< focus on click -+ STRICTMOUSEFOCUS ///< focus always follows mouse, even when stationary - }; - /// focus model for tabs - enum TabFocusModel { -@@ -90,7 +91,7 @@ public: - */ - void dirFocus(FluxboxWindow &win, FocusDir dir); - /// @return true if focus mode is mouse focus -- bool isMouseFocus() const { return focusModel() == MOUSEFOCUS; } -+ bool isMouseFocus() const { return focusModel() != CLICKFOCUS; } - /// @return true if tab focus mode is mouse tab focus - bool isMouseTabFocus() const { return tabFocusModel() == MOUSETABFOCUS; } - -diff --git a/src/Screen.cc b/src/Screen.cc -index 649ea2b..0271868 100644 ---- a/src/Screen.cc -+++ b/src/Screen.cc -@@ -1615,8 +1615,13 @@ void BScreen::setupConfigmenu(FbTk::Menu &menu) { - "Click To Focus", "Click to focus", - FocusControl::CLICKFOCUS); - _FOCUSITEM(Configmenu, MouseFocus, -- "Mouse Focus", "Mouse Focus", -+ "Mouse Focus (Keyboard Friendly)", -+ "Mouse Focus (Keyboard Friendly)", - FocusControl::MOUSEFOCUS); -+ _FOCUSITEM(Configmenu, StrictMouseFocus, -+ "Mouse Focus (Strict)", -+ "Mouse Focus (Strict)", -+ FocusControl::STRICTMOUSEFOCUS); - #undef _FOCUSITEM - - focus_menu->insert(new FbTk::MenuSeparator()); --- -1.7.1 - - -From 9db301c26e27e4d139dff424f8eab2f8def30cb5 Mon Sep 17 00:00:00 2001 -From: Jim Ramsay <jim.ramsay@motorola.com> -Date: Fri, 28 May 2010 15:50:15 -0400 -Subject: [PATCH 2/2] Implement StrictMouseFocus - -As noted in the previous commit, StrictMouseFocus now works as advertised: - Focus follows mouse on every EnterNotify event (except when the "ClientMenu" - closes or during alt+tab window cycling) ---- - src/ClientMenu.cc | 7 ++++++- - src/FocusControl.cc | 19 ++++++++++++++----- - src/FocusControl.hh | 10 ++++++++-- - 3 files changed, 28 insertions(+), 8 deletions(-) - -diff --git a/src/ClientMenu.cc b/src/ClientMenu.cc -index f5af305..46306d9 100644 ---- a/src/ClientMenu.cc -+++ b/src/ClientMenu.cc -@@ -25,6 +25,7 @@ - #include "Screen.hh" - #include "Window.hh" - #include "WindowCmd.hh" -+#include "FocusControl.hh" - #include <X11/keysym.h> - - #include "FbTk/MenuItem.hh" -@@ -52,8 +53,12 @@ public: - - m_client.focus(); - fbwin->raise(); -- if ((mods & ControlMask) == 0) -+ if ((mods & ControlMask) == 0) { -+ // Ignore any focus changes due to this menu closing -+ // (even in StrictMouseFocus mode) -+ m_client.screen().focusControl().ignoreAtPointer(true); - parent->hide(); -+ } - } - - const std::string &label() const { return m_client.title(); } -diff --git a/src/FocusControl.cc b/src/FocusControl.cc -index 66a2ed8..44cd81b 100644 ---- a/src/FocusControl.cc -+++ b/src/FocusControl.cc -@@ -403,21 +403,30 @@ void FocusControl::dirFocus(FluxboxWindow &win, FocusDir dir) { - - } - --void FocusControl::ignoreAtPointer() -+void FocusControl::ignoreAtPointer(bool force) - { -- int ignore_i; -+ int ignore_i, ignore_x, ignore_y; - unsigned int ignore_ui; - Window ignore_w; - - XQueryPointer(m_screen.rootWindow().display(), - m_screen.rootWindow().window(), &ignore_w, &ignore_w, -- &m_ignore_mouse_x, &m_ignore_mouse_y, -+ &ignore_x, &ignore_y, - &ignore_i, &ignore_i, &ignore_ui); -+ -+ this->ignoreAt(ignore_x, ignore_y, force); -+} -+ -+void FocusControl::ignoreAt(int x, int y, bool force) -+{ -+ if (force || this->focusModel() == MOUSEFOCUS) { -+ m_ignore_mouse_x = x; m_ignore_mouse_y = y; -+ } - } - --void FocusControl::ignoreAt(int x, int y) -+void FocusControl::ignoreCancel() - { -- m_ignore_mouse_x = x; m_ignore_mouse_y = y; -+ m_ignore_mouse_x = m_ignore_mouse_y = -1; - } - - bool FocusControl::isIgnored(int x, int y) -diff --git a/src/FocusControl.hh b/src/FocusControl.hh -index 72eec11..c265253 100644 ---- a/src/FocusControl.hh -+++ b/src/FocusControl.hh -@@ -96,9 +96,15 @@ public: - bool isMouseTabFocus() const { return tabFocusModel() == MOUSETABFOCUS; } - - /// Set the "ignore" pointer location to the current pointer location -- void ignoreAtPointer(); -+ /// @param force If true, ignore even in StrictMouseFocus mode -+ void ignoreAtPointer(bool force = false); - /// Set the "ignore" pointer location to the given coordinates -- void ignoreAt(int x, int y); -+ /// @param x Current X position of the pointer -+ /// @param y Current Y position of the pointer -+ /// @param force If true, ignore even in StrictMouseFocus mode -+ void ignoreAt(int x, int y, bool force = false); -+ /// unset the "ignore" pointer location -+ void ignoreCancel(); - /// @return true if events at the given X/Y coordinate should be ignored - /// (ie, they were previously cached via one of the ignoreAt calls) - bool isIgnored(int x, int y); --- -1.7.1 - diff --git a/x11-wm/fluxbox/fluxbox-1.1.1-r3.ebuild b/x11-wm/fluxbox/fluxbox-1.1.1-r3.ebuild deleted file mode 100644 index d3d1a2283a54..000000000000 --- a/x11-wm/fluxbox/fluxbox-1.1.1-r3.ebuild +++ /dev/null @@ -1,125 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/x11-wm/fluxbox/fluxbox-1.1.1-r3.ebuild,v 1.8 2011/04/16 18:22:51 ulm Exp $ - -EAPI="3" -inherit eutils prefix - -IUSE="nls xinerama truetype gnome +imlib +slit +toolbar vim-syntax -newmousefocus" - -DESCRIPTION="Fluxbox is an X11 window manager featuring tabs and an iconbar" - -SRC_URI="mirror://sourceforge/fluxbox/${P}.tar.bz2" -HOMEPAGE="http://www.fluxbox.org" - -# Please note that USE="gnome" simply adds support for some gnome protocols, and -# does not depend on external libraries. However, it does make the binary a -# fair bit bigger, so we don't want to turn it on unless the user actually wants -# it. - -RDEPEND="x11-libs/libXpm - x11-libs/libXrandr - xinerama? ( x11-libs/libXinerama ) - x11-apps/xmessage - x11-libs/libXft - truetype? ( media-libs/freetype ) - imlib? ( >=media-libs/imlib2-1.2.0[X] ) - vim-syntax? ( app-vim/fluxbox-syntax ) - !!<x11-themes/fluxbox-styles-fluxmod-20040809-r1 - !!<=x11-misc/fluxconf-0.9.9 - !!<=x11-misc/fbdesk-1.2.1" -DEPEND="nls? ( sys-devel/gettext ) - x11-proto/xextproto - xinerama? ( x11-proto/xineramaproto ) - ${RDEPEND}" - -SLOT="0" -LICENSE="MIT" -KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 sparc x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux" - -src_prepare() { - # We need to be able to include directories rather than just plain - # files in menu [include] items. This patch will allow us to do clever - # things with style ebuilds. - epatch "${FILESDIR}/gentoo_style_location-1.1.x.patch" - eprefixify util/fluxbox-generate_menu.in - - epatch "${FILESDIR}"/osx-has-otool.patch - - # Patch to handle a broken key file gracefully, #263379 - epatch "${FILESDIR}/macrocmd-crash-1.1.1.patch" - - # Patch to quiet fbsetbg on upgrade - epatch "${FILESDIR}/fbsetbg-quiet-1.1.1.patch" - - # Patch to fix window focus bug when you have "focus-follows-mouse" - if use newmousefocus; then - # These change 'MouseFocus' behaviour to what will be in fluxbox-1.1.2 - # and add the new 'StrictMouseFocus' mode. - epatch "${FILESDIR}/mousefocus-1.1.1.patch" - epatch "${FILESDIR}/strictmousefocus-1.1.1.patch" - else - epatch "${FILESDIR}/mousefocus-1.1.1-r2.patch" - fi - - # Patch to fix multiple screens with libX11-1.4.0, #348819 - epatch "${FILESDIR}/fluxbox-1.1.1-multiscreen.patch" - - # Add in the Gentoo -r number to fluxbox -version output. - if [[ "${PR}" == "r0" ]] ; then - suffix="gentoo" - else - suffix="gentoo-${PR}" - fi - sed -i \ - -e "s~\(__fluxbox_version .@VERSION@\)~\1-${suffix}~" \ - version.h.in || die "version sed failed" -} - -src_configure() { - econf \ - $(use_enable nls) \ - $(use_enable xinerama) \ - $(use_enable truetype xft) \ - $(use_enable gnome) \ - $(use_enable imlib imlib2) \ - $(use_enable slit ) \ - $(use_enable toolbar ) \ - --sysconfdir="${EPREFIX}"/etc/X11/${PN} \ - --with-style="${EPREFIX}"/usr/share/fluxbox/styles/Emerge \ - ${myconf} -} - -src_compile() { - default - - ebegin "Creating a menu file (may take a while)" - mkdir -p "${T}/home/.fluxbox" || die "mkdir home failed" - MENUFILENAME="${S}/data/menu" MENUTITLE="Fluxbox ${PV}" \ - CHECKINIT="no. go away." HOME="${T}/home" \ - "${S}/util/fluxbox-generate_menu" -is -ds \ - || die "menu generation failed" - eend $? -} - -src_install() { - dodir /usr/share/fluxbox - emake DESTDIR="${D}" STRIP="" install || die "install failed" - dodoc README* AUTHORS TODO* ChangeLog NEWS - - dodir /usr/share/xsessions - insinto /usr/share/xsessions - doins "${FILESDIR}/${PN}.desktop" - - exeinto /etc/X11/Sessions - newexe "${FILESDIR}/${PN}.xsession" fluxbox - - dodir /usr/share/fluxbox/menu.d - - # Styles menu framework - dodir /usr/share/fluxbox/menu.d/styles - insinto /usr/share/fluxbox/menu.d/styles - doins "${FILESDIR}/styles-menu-fluxbox" || die - doins "${FILESDIR}/styles-menu-commonbox" || die - doins "${FILESDIR}/styles-menu-user" || die -} diff --git a/x11-wm/fluxbox/fluxbox-1.3.1.ebuild b/x11-wm/fluxbox/fluxbox-1.3.1.ebuild deleted file mode 100644 index aa196504bda3..000000000000 --- a/x11-wm/fluxbox/fluxbox-1.3.1.ebuild +++ /dev/null @@ -1,109 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/x11-wm/fluxbox/fluxbox-1.3.1.ebuild,v 1.9 2011/08/20 16:03:39 jer Exp $ - -EAPI=4 -inherit eutils prefix - -IUSE="nls xinerama bidi +truetype gnome +imlib +slit +toolbar vim-syntax" - -DESCRIPTION="Fluxbox is an X11 window manager featuring tabs and an iconbar" - -SRC_URI="mirror://sourceforge/fluxbox/${P}.tar.bz2" -HOMEPAGE="http://www.fluxbox.org" - -# Please note that USE="gnome" simply adds support for some gnome protocols, and -# does not depend on external libraries. However, it does make the binary a -# fair bit bigger, so we don't want to turn it on unless the user actually wants -# it. - -RDEPEND="x11-libs/libXpm - x11-libs/libXrandr - xinerama? ( x11-libs/libXinerama ) - x11-apps/xmessage - x11-libs/libXft - truetype? ( media-libs/freetype ) - bidi? ( dev-libs/fribidi ) - imlib? ( >=media-libs/imlib2-1.2.0[X] ) - vim-syntax? ( app-vim/fluxbox-syntax ) - !!<x11-themes/fluxbox-styles-fluxmod-20040809-r1 - !!<=x11-misc/fluxconf-0.9.9 - !!<=x11-misc/fbdesk-1.2.1" -DEPEND="nls? ( sys-devel/gettext ) - x11-proto/xextproto - xinerama? ( x11-proto/xineramaproto ) - ${RDEPEND}" - -SLOT="0" -LICENSE="MIT" -KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 sparc x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux" - -src_prepare() { - # We need to be able to include directories rather than just plain - # files in menu [include] items. This patch will allow us to do clever - # things with style ebuilds. - epatch "${FILESDIR}/gentoo_style_location-1.1.x.patch" - eprefixify util/fluxbox-generate_menu.in - - epatch "${FILESDIR}"/osx-has-otool.patch \ - "${FILESDIR}"/${P}-gcc46.patch - - # Add in the Gentoo -r number to fluxbox -version output. - if [[ "${PR}" == "r0" ]] ; then - suffix="gentoo" - else - suffix="gentoo-${PR}" - fi - sed -i \ - -e "s~\(__fluxbox_version .@VERSION@\)~\1-${suffix}~" \ - version.h.in || die "version sed failed" -} - -src_configure() { - econf \ - $(use_enable nls) \ - $(use_enable xinerama) \ - $(use_enable truetype xft) \ - $(use_enable gnome) \ - $(use_enable imlib imlib2) \ - $(use_enable bidi fribidi ) \ - $(use_enable slit ) \ - $(use_enable toolbar ) \ - --sysconfdir="${EPREFIX}"/etc/X11/${PN} \ - --with-style="${EPREFIX}"/usr/share/fluxbox/styles/Emerge \ - ${myconf} -} - -src_compile() { - default - - ebegin "Creating a menu file (may take a while)" - mkdir -p "${T}/home/.fluxbox" || die "mkdir home failed" - MENUFILENAME="${S}/data/menu" MENUTITLE="Fluxbox ${PV}" \ - CHECKINIT="no. go away." HOME="${T}/home" \ - "${S}/util/fluxbox-generate_menu" -is -ds \ - || die "menu generation failed" - eend $? -} - -src_install() { - dodir /usr/share/fluxbox - emake DESTDIR="${D}" STRIP="" install - dodoc README* AUTHORS TODO* ChangeLog NEWS - - dodir /usr/share/xsessions - insinto /usr/share/xsessions - doins "${FILESDIR}/${PN}.desktop" - - exeinto /etc/X11/Sessions - newexe "${FILESDIR}/${PN}.xsession" fluxbox - - dodir /usr/share/fluxbox/menu.d - - # Styles menu framework - dodir /usr/share/fluxbox/menu.d/styles - insinto /usr/share/fluxbox/menu.d/styles - doins "${FILESDIR}/styles-menu-fluxbox" - doins "${FILESDIR}/styles-menu-commonbox" - doins "${FILESDIR}/styles-menu-user" -} diff --git a/x11-wm/fluxbox/fluxbox-1.3.3.ebuild b/x11-wm/fluxbox/fluxbox-1.3.3.ebuild deleted file mode 100644 index a1577a399a54..000000000000 --- a/x11-wm/fluxbox/fluxbox-1.3.3.ebuild +++ /dev/null @@ -1,106 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/x11-wm/fluxbox/fluxbox-1.3.3.ebuild,v 1.1 2013/01/08 21:32:50 lack Exp $ - -EAPI=4 -inherit eutils flag-o-matic toolchain-funcs prefix - -IUSE="nls xinerama bidi +truetype +imlib +slit +toolbar vim-syntax" - -DESCRIPTION="Fluxbox is an X11 window manager featuring tabs and an iconbar" - -SRC_URI="mirror://sourceforge/fluxbox/${P}.tar.lzma" -HOMEPAGE="http://www.fluxbox.org" - -RDEPEND="x11-libs/libXpm - x11-libs/libXrandr - x11-libs/libXext - x11-libs/libXft - x11-libs/libXrender - || ( x11-misc/gxmessage x11-apps/xmessage ) - xinerama? ( x11-libs/libXinerama ) - truetype? ( media-libs/freetype ) - bidi? ( >=dev-libs/fribidi-0.19.2 ) - imlib? ( >=media-libs/imlib2-1.2.0[X] ) - vim-syntax? ( app-vim/fluxbox-syntax ) - !!<x11-themes/fluxbox-styles-fluxmod-20040809-r1 - !!<=x11-misc/fluxconf-0.9.9 - !!<=x11-misc/fbdesk-1.2.1" -DEPEND="bidi? ( virtual/pkgconfig ) - nls? ( sys-devel/gettext ) - x11-proto/xextproto - ${RDEPEND}" - -SLOT="0" -LICENSE="MIT" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux" - -src_prepare() { - # We need to be able to include directories rather than just plain - # files in menu [include] items. This patch will allow us to do clever - # things with style ebuilds. - epatch "${FILESDIR}/gentoo_style_location-1.1.x.patch" - eprefixify util/fluxbox-generate_menu.in - - epatch "${FILESDIR}"/osx-has-otool.patch - - # Add in the Gentoo -r number to fluxbox -version output. - if [[ "${PR}" == "r0" ]] ; then - suffix="gentoo" - else - suffix="gentoo-${PR}" - fi - sed -i \ - -e "s~\(__fluxbox_version .@VERSION@\)~\1-${suffix}~" \ - version.h.in || die "version sed failed" -} - -src_configure() { - use bidi && append-cppflags "$($(tc-getPKG_CONFIG) --cflags fribidi)" - - econf \ - $(use_enable nls) \ - $(use_enable xinerama) \ - $(use_enable truetype xft) \ - $(use_enable imlib imlib2) \ - $(use_enable bidi fribidi ) \ - $(use_enable slit ) \ - $(use_enable toolbar ) \ - --sysconfdir="${EPREFIX}"/etc/X11/${PN} \ - --with-style="${EPREFIX}"/usr/share/fluxbox/styles/Emerge \ - ${myconf} -} - -src_compile() { - default - - ebegin "Creating a menu file (may take a while)" - mkdir -p "${T}/home/.fluxbox" || die "mkdir home failed" - MENUFILENAME="${S}/data/menu" MENUTITLE="Fluxbox ${PV}" \ - CHECKINIT="no. go away." HOME="${T}/home" \ - "${S}/util/fluxbox-generate_menu" -is -ds \ - || die "menu generation failed" - eend $? -} - -src_install() { - dodir /usr/share/fluxbox - emake DESTDIR="${D}" STRIP="" install - dodoc README* AUTHORS TODO* ChangeLog NEWS - - dodir /usr/share/xsessions - insinto /usr/share/xsessions - doins "${FILESDIR}/${PN}.desktop" - - exeinto /etc/X11/Sessions - newexe "${FILESDIR}/${PN}.xsession" fluxbox - - dodir /usr/share/fluxbox/menu.d - - # Styles menu framework - dodir /usr/share/fluxbox/menu.d/styles - insinto /usr/share/fluxbox/menu.d/styles - doins "${FILESDIR}/styles-menu-fluxbox" - doins "${FILESDIR}/styles-menu-commonbox" - doins "${FILESDIR}/styles-menu-user" -} |