]> Dogcows Code - chaz/openbox/blobdiff - openbox/focus.c
count the EnterNotify events and tell openbox to ignore them when ungrabbing the...
[chaz/openbox] / openbox / focus.c
index 0d9ecf54947849eb7c5efa964c270f1402013c20..523c7b5d057cf262181a65f38bffe2f20c71475a 100644 (file)
@@ -1,3 +1,21 @@
+/* -*- indent-tabs-mode: nil; tab-width: 4; c-basic-offset: 4; -*-
+
+   focus.c for the Openbox window manager
+   Copyright (c) 2003        Ben Jansens
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   See the COPYING file for a copy of the GNU General Public License.
+*/
+
 #include "debug.h"
 #include "event.h"
 #include "openbox.h"
@@ -162,11 +180,8 @@ void focus_fallback(ObFocusFallbackType type)
     */
     focus_set_client(NULL);
 
-    if (!(type == OB_FOCUS_FALLBACK_DESKTOP ?
-          config_focus_last_on_desktop : config_focus_last)) {
-        if (config_focus_follow) focus_under_pointer();
+    if (config_focus_follow && focus_under_pointer())
         return;
-    }
 
     if (type == OB_FOCUS_FALLBACK_UNFOCUSING && old) {
         /* try for transient relations */
@@ -383,11 +398,14 @@ void focus_directional_cycle(ObDirection dir,
             focus_cycle_target = ft;
             frame_adjust_focus(focus_cycle_target->frame, TRUE);
         }
-        popup_cycle(ft, dialog);
+    }
+    if (focus_cycle_target) {
+        popup_cycle(focus_cycle_target, dialog);
         if (dialog)
             return;
     }
 
+
 done_cycle:
     if (done && focus_cycle_target)
         client_activate(focus_cycle_target, FALSE);
This page took 0.023101 seconds and 4 git commands to generate.