diff options
author | Thomas Lübking <thomas.luebking@gmail.com> | 2016-06-30 19:10:21 (GMT) |
---|---|---|
committer | Mathias Gumz <akira@fluxbox.org> | 2016-07-01 17:42:22 (GMT) |
commit | e85cf490355346d89f4f758d3193ed7199280793 (patch) | |
tree | 80cfa136b3d9cba123778b41e21bd7d5fbf1fb66 /src/Window.cc | |
parent | 2aba567ea6c45d04d0f560e3f406fb396efe55e3 (diff) | |
download | fluxbox-e85cf490355346d89f4f758d3193ed7199280793.zip fluxbox-e85cf490355346d89f4f758d3193ed7199280793.tar.bz2 |
fix tabbing of unfocusable clients
this affects all java clients, because java uses the retarded
WM_TAKE_FOCUS protocol, but also very important clients like xeyes ;-)
BUG: 1055
Diffstat (limited to 'src/Window.cc')
-rw-r--r-- | src/Window.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/Window.cc b/src/Window.cc index 0aa4ec6..3c32d0e 100644 --- a/src/Window.cc +++ b/src/Window.cc | |||
@@ -991,11 +991,14 @@ bool FluxboxWindow::setCurrentClient(WinClient &client, bool setinput) { | |||
991 | if (!button) | 991 | if (!button) |
992 | return false; | 992 | return false; |
993 | 993 | ||
994 | if (!client.acceptsFocus()) | ||
995 | setinput = false; // don't try | ||
996 | |||
994 | WinClient *old = m_client; | 997 | WinClient *old = m_client; |
995 | m_client = &client; | 998 | m_client = &client; |
996 | 999 | ||
997 | bool ret = setinput && focus(); | 1000 | bool ret = setinput && focus(); |
998 | if (setinput) { | 1001 | if (setinput && old->acceptsFocus()) { |
999 | m_client = old; | 1002 | m_client = old; |
1000 | return ret; | 1003 | return ret; |
1001 | } | 1004 | } |