diff options
| author | Dana Jansens <danakj@orodu.net> | 2002-08-23 23:13:21 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2002-08-23 23:13:21 +0000 |
| commit | cbf4bb3d62df50045fd71920256865becae21990 (patch) | |
| tree | 411c2b1901e84506266047f532a5cb7258f3ea14 | |
| parent | 8dc38853ef1c55de644948ddb390a363e59c25bf (diff) | |
use the snap offset as the margin for placing windows instead of a fixed value of 1
| -rw-r--r-- | src/Workspace.cc | 13 | ||||
| -rw-r--r-- | src/Workspace.hh | 3 |
2 files changed, 9 insertions, 7 deletions
diff --git a/src/Workspace.cc b/src/Workspace.cc index 715d012e..f4fab1cd 100644 --- a/src/Workspace.cc +++ b/src/Workspace.cc @@ -530,9 +530,8 @@ void Workspace::setName(const string& new_name) { /* * Calculate free space available for window placement. */ -typedef std::vector<Rect> rectList; - -static rectList calcSpace(const Rect &win, const rectList &spaces) { +Workspace::rectList Workspace::calcSpace(const Rect &win, + const rectList &spaces) const { Rect isect, extra; rectList result; rectList::const_iterator siter, end = spaces.end(); @@ -553,21 +552,21 @@ static rectList calcSpace(const Rect &win, const rectList &spaces) { // left extra.setCoords(curr.left(), curr.top(), - isect.left() - 1, curr.bottom()); + isect.left() - screen->getSnapOffset(), curr.bottom()); if (extra.valid()) result.push_back(extra); // top extra.setCoords(curr.left(), curr.top(), - curr.right(), isect.top() - 1); + curr.right(), isect.top() - screen->getSnapOffset()); if (extra.valid()) result.push_back(extra); // right - extra.setCoords(isect.right() + 1, curr.top(), + extra.setCoords(isect.right() + screen->getSnapOffset(), curr.top(), curr.right(), curr.bottom()); if (extra.valid()) result.push_back(extra); // bottom - extra.setCoords(curr.left(), isect.bottom() + 1, + extra.setCoords(curr.left(), isect.bottom() + screen->getSnapOffset(), curr.right(), curr.bottom()); if (extra.valid()) result.push_back(extra); } diff --git a/src/Workspace.hh b/src/Workspace.hh index 72203f2d..df0411e1 100644 --- a/src/Workspace.hh +++ b/src/Workspace.hh @@ -65,6 +65,9 @@ private: void lowerTransients(const BlackboxWindow * const win, StackVector::iterator &stack); + typedef std::vector<Rect> rectList; + rectList calcSpace(const Rect &win, const rectList &spaces) const; + void placeWindow(BlackboxWindow *win); bool cascadePlacement(Rect& win, const int offset); bool smartPlacement(Rect& win); |
