From 8ece9950012e0a2d20db9d4d15bc3a3e30b96121 Mon Sep 17 00:00:00 2001 From: Tony Crisci Date: Tue, 10 Jun 2014 20:28:19 -0400 Subject: [PATCH] Bugfix: prevent unneeded render on pointer enter When `focus_follows_mouse` option is on, prevent an uneeded render on pointer enter when the con is already focused. This pointer enter might be caused by entering a window decoration of an already-focused container. This extra render can cause concurrency issues when focus is set asynchronously with WM_TAKE_FOCUS. --- src/handlers.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/handlers.c b/src/handlers.c index d6e88913..563d8c9d 100644 --- a/src/handlers.c +++ b/src/handlers.c @@ -183,6 +183,10 @@ static void handle_enter_notify(xcb_enter_notify_event_t *event) { if (config.disable_focus_follows_mouse) return; + /* if this container is already focused, there is nothing to do. */ + if (con == focused) + return; + /* Get the currently focused workspace to check if the focus change also * involves changing workspaces. If so, we need to call workspace_show() to * correctly update state and send the IPC event. */ -- 2.39.5