X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=src%2FScreen.hh;h=ca8194ce317172d9204f30b42550a82efd924ead;hb=347baf0c0b7163fcd510a6378546f550345ecb9f;hp=06548d415aa0351d82ebbcbaa66954e20de2c0bb;hpb=bcb14a3ce94ee4b4cba07de7a297470719390331;p=chaz%2Fopenbox diff --git a/src/Screen.hh b/src/Screen.hh index 06548d41..ca8194ce 100644 --- a/src/Screen.hh +++ b/src/Screen.hh @@ -147,13 +147,17 @@ private: bool sloppy_focus, auto_raise, auto_edge_balance, ordered_dither, opaque_move, full_max, focus_new, focus_last, click_raise, - allow_scroll_lock, hide_toolbar, window_to_window_snap, - window_corner_snap, aa_fonts, ignore_shaded, ignore_maximized; + allow_scroll_lock, hide_toolbar, window_corner_snap, aa_fonts, + ignore_shaded, ignore_maximized, workspace_warping; + + int snap_to_windows, snap_to_edges; + BColor border_color; unsigned int workspaces; int toolbar_placement, toolbar_width_percent, placement_policy, - edge_snap_threshold, row_direction, col_direction; + snap_threshold, row_direction, col_direction, root_scroll, + resistance_size; unsigned int handle_width, bevel_width, frame_width, border_width, resize_zones; @@ -187,6 +191,7 @@ private: void updateWorkArea(void); public: + enum { WindowNoSnap = 0, WindowSnap, WindowResistance }; enum { RowSmartPlacement = 1, ColSmartPlacement, CascadePlacement, UnderMousePlacement, ClickMousePlacement, LeftRight, RightLeft, TopBottom, BottomTop, IgnoreShaded, IgnoreMaximized }; @@ -195,6 +200,7 @@ public: WindowShade, WindowIconify, WindowMaximize, WindowClose, WindowRaise, WindowLower, WindowStick, WindowKill, SetStyle }; enum FocusModel { SloppyFocus, ClickToFocus }; + enum RootScrollDirection { NoScroll = 0, NormalScroll, ReverseScroll }; BScreen(Blackbox *bb, unsigned int scrn); ~BScreen(void); @@ -213,11 +219,16 @@ 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 int getWindowToWindowSnap(void) const + { return resource.snap_to_windows; } + inline int getWindowToEdgeSnap(void) const + { return resource.snap_to_edges; } inline bool getWindowCornerSnap(void) const { return resource.window_corner_snap; } inline bool allowScrollLock(void) const { return resource.allow_scroll_lock; } + inline bool doWorkspaceWarping(void) const + { return resource.workspace_warping; } + inline int rootScrollDirection(void) const { return resource.root_scroll; } inline const GC &getOpGC(void) const { return opGC; } @@ -259,8 +270,10 @@ public: { return resource.workspaces; } inline int getPlacementPolicy(void) const { return resource.placement_policy; } - inline int getEdgeSnapThreshold(void) const - { return resource.edge_snap_threshold; } + inline int getSnapThreshold(void) const + { return resource.snap_threshold; } + inline int getResistanceSize(void) const + { return resource.resistance_size; } inline int getRowPlacementDirection(void) const { return resource.row_direction; } inline int getColPlacementDirection(void) const @@ -276,7 +289,8 @@ public: void savePlacementPolicy(int p); void saveRowPlacementDirection(int d); void saveColPlacementDirection(int d); - void saveEdgeSnapThreshold(int t); + void saveSnapThreshold(int t); + void saveResistanceSize(int s); void saveImageDither(bool d); void saveAAFonts(bool f); void saveOpaqueMove(bool o); @@ -284,12 +298,15 @@ public: void saveFocusNew(bool f); void saveFocusLast(bool f); void saveHideToolbar(bool h); - void saveWindowToWindowSnap(bool s); + void saveWindowToEdgeSnap(int s); + void saveWindowToWindowSnap(int s); void saveWindowCornerSnap(bool s); void saveResizeZones(unsigned int z); void savePlaceIgnoreShaded(bool i); void savePlaceIgnoreMaximized(bool i); void saveAllowScrollLock(bool a); + void saveWorkspaceWarping(bool w); + void saveRootScrollDirection(int d); inline void iconUpdate(void) { iconmenu->update(); } #ifdef HAVE_STRFTIME @@ -312,7 +329,9 @@ public: // allAvailableAreas should be used whenever possible instead of this function // as then Xinerama will work correctly. const Rect& availableArea(void) const; - RectList allAvailableAreas(void) const; +#ifdef XINERAMA + const RectList& allAvailableAreas(void) const; +#endif // XINERAMA void updateAvailableArea(void); void addStrut(Strut *strut); void removeStrut(Strut *strut);