X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2FScreen.hh;h=72e7dc0aca91f229a689297a0587e843279b5d11;hb=18064df19f670589b9387c194b55345c717473db;hp=c044200c851f576ab6c2c8a60f5614788718bc39;hpb=b8ee3dbc4565efb19338c5cf1948f0f4e2f24fd6;p=chaz%2Fopenbox diff --git a/src/Screen.hh b/src/Screen.hh index c044200c..72e7dc0a 100644 --- a/src/Screen.hh +++ b/src/Screen.hh @@ -129,6 +129,9 @@ private: NetizenList netizenList; BlackboxWindowList iconList, windowList; + typedef std::vector WindowList; + WindowList desktopWindowList, systrayWindowList; + Slit *slit; Toolbar *toolbar; Workspace *current_workspace; @@ -141,8 +144,6 @@ private: typedef std::list StrutList; StrutList strutList; - typedef std::vector WorkspaceNamesList; - WorkspaceNamesList workspaceNames; typedef std::vector WorkspaceList; WorkspaceList workspacesList; @@ -152,8 +153,8 @@ private: MenuStyle mstyle; bool sloppy_focus, auto_raise, auto_edge_balance, ordered_dither, - opaque_move, full_max, focus_new, focus_last, click_raise, - hide_toolbar; + opaque_move, full_max, focus_new, focus_last, click_raise, + hide_toolbar, window_to_window_snap, window_corner_snap; BColor border_color; unsigned int workspaces; @@ -190,7 +191,7 @@ private: void InitMenu(void); void LoadStyle(void); - + void updateWorkArea(void); public: enum { RowSmartPlacement = 1, ColSmartPlacement, CascadePlacement, UnderMousePlacement, LeftRight, RightLeft, TopBottom, BottomTop }; @@ -216,6 +217,10 @@ public: inline bool doFocusNew(void) const { return resource.focus_new; } inline bool doFocusLast(void) const { return resource.focus_last; } inline bool doHideToolbar(void) const { return resource.hide_toolbar; } + inline bool getWindowToWindowSnap(void) const + { return resource.window_to_window_snap; } + inline bool getWindowCornerSnap(void) const + { return resource.window_corner_snap; } inline const GC &getOpGC(void) const { return opGC; } @@ -273,6 +278,8 @@ public: void saveFocusNew(bool f); void saveFocusLast(bool f); void saveHideToolbar(bool h); + void saveWindowToWindowSnap(bool s); + void saveWindowCornerSnap(bool s); inline void iconUpdate(void) { iconmenu->update(); } #ifdef HAVE_STRFTIME @@ -299,21 +306,27 @@ public: unsigned int addWorkspace(void); unsigned int removeLastWorkspace(void); - void removeWorkspaceNames(void); - void addWorkspaceName(const std::string& name); - const std::string getNameOfWorkspace(unsigned int id); void changeWorkspaceID(unsigned int id); void saveWorkspaceNames(void); void addNetizen(Netizen *n); void removeNetizen(Window w); + void addDesktopWindow(Window window); + void removeDesktopWindow(Window window); + + void addSystrayWindow(Window window); + void removeSystrayWindow(Window window); + void addIcon(BlackboxWindow *w); void removeIcon(BlackboxWindow *w); + void updateClientList(void); + void updateStackingList(void); void manageWindow(Window w); void unmanageWindow(BlackboxWindow *w, bool remap); void raiseWindows(Window *workspace_stack, unsigned int num); + void lowerDesktops(void); void reassociateWindow(BlackboxWindow *w, unsigned int wkspc_id, bool ignore_sticky); void propagateWindowName(const BlackboxWindow *bw);