]> Dogcows Code - chaz/openbox/blobdiff - util/epist/screen.hh
add cycling of windows of the same class on all workspaces
[chaz/openbox] / util / epist / screen.hh
index 06b2cb0936d398b81333f82719bf45f08f5da1a5..7e2e880dd1e8e98b65adeb9534ad49fc8d080ce4 100644 (file)
@@ -45,10 +45,14 @@ class screen {
   
   WindowList _clients;
   WindowList::iterator _active;
+  unsigned int _active_desktop;
+  unsigned int _num_desktops;
 
   bool _managed;
 
   XWindow *findWindow(const XEvent &e) const;
+  void updateNumDesktops();
+  void updateActiveDesktop();
   void updateClientList();
   void updateActiveWindow();
   bool doAddWindow(Window window) const;
@@ -60,12 +64,17 @@ public:
   
   inline Window rootWindow() const { return _root; }
   inline bool managed() const { return _managed; }
+  inline int number() const { return _number; }
   
   void processEvent(const XEvent &e);
 
   void handleKeypress(const XEvent &e);
 
-  void cycleWorkspace(const bool forward);
+  void cycleWindow(const bool forward, const bool alldesktops = false,
+                   const bool sameclass = false) const;
+  void cycleWorkspace(const bool forward, const bool loop = true) const;
+  void changeWorkspace(const int num) const;
+  void toggleShaded(const Window win) const;
 };
 
 #endif // __screen_hh
This page took 0.022805 seconds and 4 git commands to generate.