]> Dogcows Code - chaz/openbox/commitdiff
smarter window cycling, behave with omnipresent windows
authorDana Jansens <danakj@orodu.net>
Wed, 24 Jul 2002 09:39:18 +0000 (09:39 +0000)
committerDana Jansens <danakj@orodu.net>
Wed, 24 Jul 2002 09:39:18 +0000 (09:39 +0000)
util/epist/screen.cc

index 2a4d5a7078fc06a19da7cdb50d1c8c1a2fb9c240..7dfca51fccfe9ffe3efed99ce71004150a416df4 100644 (file)
@@ -444,7 +444,8 @@ void screen::updateActiveWindow() {
     }
   }
   _active = it;
-  _last_active = it;
+  if (it != end)
+    _last_active = it;
 
 /*  cout << "Active window is now: ";
   if (_active == _clients.end()) cout << "None\n";
@@ -514,7 +515,9 @@ void screen::cycleWindow(const bool forward, const bool allscreens,
       return;
   } while ((*target)->iconic() ||
            (! allscreens && (*target)->getScreen() != this) ||
-           (! alldesktops && (*target)->desktop() != _active_desktop) ||
+           (! alldesktops &&
+            (*target)->desktop() != _active_desktop &&
+            (*target)->desktop() != 0xffffffff) ||
            (sameclass && ! classname.empty() &&
             (*target)->appClass() != classname));
   
This page took 0.023347 seconds and 4 git commands to generate.