diff options
author | markt <markt> | 2007-05-17 18:27:59 (GMT) |
---|---|---|
committer | markt <markt> | 2007-05-17 18:27:59 (GMT) |
commit | d927862a8f09f8d10b7ff06e851c43d2a48e0fa6 (patch) | |
tree | ab0b4ca765bb62c10b70d59674030c789d385aba /src | |
parent | 30834f9f6e452db1346f5a76e217d88dce2a3580 (diff) | |
download | fluxbox-d927862a8f09f8d10b7ff06e851c43d2a48e0fa6.zip fluxbox-d927862a8f09f8d10b7ff06e851c43d2a48e0fa6.tar.bz2 |
fixed some window placement issues
Diffstat (limited to 'src')
-rw-r--r-- | src/ScreenPlacement.cc | 9 | ||||
-rw-r--r-- | src/ScreenResources.cc | 4 |
2 files changed, 8 insertions, 5 deletions
diff --git a/src/ScreenPlacement.cc b/src/ScreenPlacement.cc index 86c0804..4b52aa4 100644 --- a/src/ScreenPlacement.cc +++ b/src/ScreenPlacement.cc | |||
@@ -118,10 +118,11 @@ bool ScreenPlacement::placeWindow(const std::vector<FluxboxWindow *> &windowlist | |||
118 | win_h = win.height() + win.fbWindow().borderWidth()*2 + win.heightOffset(); | 118 | win_h = win.height() + win.fbWindow().borderWidth()*2 + win.heightOffset(); |
119 | 119 | ||
120 | // make sure the window is inside our screen(head) area | 120 | // make sure the window is inside our screen(head) area |
121 | if (place_x + win_w > head_right) | 121 | if (place_x + win_w - win.xOffset() > head_right) |
122 | place_x = (head_right - win_w) / 2 + win.xOffset(); | 122 | place_x = head_left + (head_right - head_left - win_w) / 2 + |
123 | if (place_y + win_h > head_bot) | 123 | win.xOffset(); |
124 | place_y = (head_bot - win_h) / 2 + win.yOffset(); | 124 | if (place_y + win_h - win.yOffset() > head_bot) |
125 | place_y = head_top + (head_bot - head_top - win_h) / 2 + win.yOffset(); | ||
125 | 126 | ||
126 | return true; | 127 | return true; |
127 | } | 128 | } |
diff --git a/src/ScreenResources.cc b/src/ScreenResources.cc index 0f17c2a..8b71505 100644 --- a/src/ScreenResources.cc +++ b/src/ScreenResources.cc | |||
@@ -84,6 +84,7 @@ template<> | |||
84 | string FbTk::Resource<BScreen::FollowModel>::getString() const { | 84 | string FbTk::Resource<BScreen::FollowModel>::getString() const { |
85 | switch (m_value) { | 85 | switch (m_value) { |
86 | case BScreen::FOLLOW_ACTIVE_WINDOW: | 86 | case BScreen::FOLLOW_ACTIVE_WINDOW: |
87 | default: | ||
87 | return string("Follow"); | 88 | return string("Follow"); |
88 | break; | 89 | break; |
89 | case BScreen::FETCH_ACTIVE_WINDOW: | 90 | case BScreen::FETCH_ACTIVE_WINDOW: |
@@ -93,7 +94,6 @@ string FbTk::Resource<BScreen::FollowModel>::getString() const { | |||
93 | return string("SemiFollow"); | 94 | return string("SemiFollow"); |
94 | break; | 95 | break; |
95 | case BScreen::IGNORE_OTHER_WORKSPACES: | 96 | case BScreen::IGNORE_OTHER_WORKSPACES: |
96 | default: | ||
97 | return string("Ignore"); | 97 | return string("Ignore"); |
98 | break; | 98 | break; |
99 | } | 99 | } |
@@ -111,6 +111,8 @@ setFromString(char const *strval) { | |||
111 | m_value = BScreen::FETCH_ACTIVE_WINDOW; | 111 | m_value = BScreen::FETCH_ACTIVE_WINDOW; |
112 | else if (strcasecmp(strval, "SemiFollow") == 0) | 112 | else if (strcasecmp(strval, "SemiFollow") == 0) |
113 | m_value = BScreen::SEMIFOLLOW_ACTIVE_WINDOW; | 113 | m_value = BScreen::SEMIFOLLOW_ACTIVE_WINDOW; |
114 | else if (strcasecmp(strval, "Ignore") == 0) | ||
115 | m_value = BScreen::IGNORE_OTHER_WORKSPACES; | ||
114 | else | 116 | else |
115 | setDefaultValue(); | 117 | setDefaultValue(); |
116 | } | 118 | } |