From 475e966f192be938c84e8b3492c392671b276985 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Thomas=20L=C3=BCbking?= <thomas.luebking@gmail.com>
Date: Sun, 26 Jun 2016 21:57:49 +0200
Subject: fix tab selection by mousepress

Tabs outside the titlebar are not selectable by mouseclicks (ie. the
feature does not work)
The patch clones the enterNotifyEvent code and ignores (for now) the
actual button (no idea whether it makes any sense to restrict it the
left button?)

BUG: 1103
---
 src/Window.cc | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/src/Window.cc b/src/Window.cc
index 37fb6c4..a053f1a 100644
--- a/src/Window.cc
+++ b/src/Window.cc
@@ -2381,6 +2381,14 @@ void FluxboxWindow::buttonPressEvent(XButtonEvent &be) {
         return;
     }
 
+    WinClient *client = 0;
+    if (!screen().focusControl().isMouseTabFocus()) {
+        // determine if we're in a label button (tab)
+        client = winClientOfLabelButtonWindow(be.window);
+    }
+
+
+
     // if nothing was bound via keys-file then
     // - raise() if clickRaise is enabled
     // - hide open menues
@@ -2399,6 +2407,14 @@ void FluxboxWindow::buttonPressEvent(XButtonEvent &be) {
     if (!m_focused && acceptsFocus() && m_click_focus)
         focus();
 
+    if (!screen().focusControl().isMouseTabFocus() &&
+        client && client != m_client &&
+        !screen().focusControl().isIgnored(be.x_root, be.y_root) ) {
+        setCurrentClient(*client, isFocused());
+    }
+
+
+
 }
 
 void FluxboxWindow::buttonReleaseEvent(XButtonEvent &re) {
-- 
cgit v0.11.2