summaryrefslogtreecommitdiff
path: root/src/Workspace.h
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2002-05-14 07:53:22 +0000
committerDana Jansens <danakj@orodu.net>2002-05-14 07:53:22 +0000
commitf00ed578baacb73a36227fed1419e9d451ee7bb0 (patch)
treeea9359a154cf18261597ff6c8d43841854ee42db /src/Workspace.h
parent9b295857ebf85642e87290af765cfeecc65a4902 (diff)
new focus code! working better than ever!
Diffstat (limited to 'src/Workspace.h')
-rw-r--r--src/Workspace.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/Workspace.h b/src/Workspace.h
index 1f2483af..21e65cec 100644
--- a/src/Workspace.h
+++ b/src/Workspace.h
@@ -38,7 +38,6 @@ class Rect;
class Workspace {
private:
BScreen &screen;
- OpenboxWindow *lastfocus;
Clientmenu *clientmenu;
typedef std::vector<OpenboxWindow *> winVect;
@@ -49,7 +48,10 @@ private:
char *name;
int id, cascade_x, cascade_y;
- OpenboxWindow *_focused;
+ OpenboxWindow *_focused, *_last; // last is the same as focused except
+ // that when focus is removed from all
+ // windows on the workspace, last doesnt
+ // change to NULL
protected:
void placeWindow(OpenboxWindow &);
@@ -64,12 +66,11 @@ public:
~Workspace(void);
inline BScreen &getScreen(void) { return screen; }
- inline OpenboxWindow *getLastFocusedWindow(void) { return lastfocus; }
inline Clientmenu *getMenu(void) { return clientmenu; }
inline const char *getName(void) const { return name; }
inline const int &getWorkspaceID(void) const { return id; }
- inline void setLastFocusedWindow(OpenboxWindow *w) { lastfocus = w; }
inline OpenboxWindow *focusedWindow() { return _focused; }
+ inline OpenboxWindow *lastFocusedWindow() { return _last; }
void focusWindow(OpenboxWindow *win);
OpenboxWindow *getWindow(int);
Bool isCurrent(void);