diff options
Diffstat (limited to 'src/Window.cc')
-rw-r--r-- | src/Window.cc | 23 |
1 files changed, 5 insertions, 18 deletions
diff --git a/src/Window.cc b/src/Window.cc index 25a6baf..98c10f4 100644 --- a/src/Window.cc +++ b/src/Window.cc | |||
@@ -451,11 +451,8 @@ void FluxboxWindow::init() { | |||
451 | } | 451 | } |
452 | } | 452 | } |
453 | 453 | ||
454 | if (m_client->maxWidth() != 0 && m_client->maxHeight() != 0 && | 454 | if (!m_client->sizeHints().isResizable()) { |
455 | m_client->maxWidth() <= m_client->minWidth() && | 455 | functions.resize = functions.maximize = false; |
456 | m_client->maxHeight() <= m_client->minHeight()) { | ||
457 | decorations.maximize = decorations.handle = | ||
458 | functions.resize = functions.maximize = false; | ||
459 | decorations.tab = false; //no tab for this window | 456 | decorations.tab = false; //no tab for this window |
460 | } | 457 | } |
461 | 458 | ||
@@ -2187,27 +2184,17 @@ void FluxboxWindow::propertyNotifyEvent(WinClient &client, Atom atom) { | |||
2187 | client.maxWidth() != old_max_width || | 2184 | client.maxWidth() != old_max_width || |
2188 | client.minHeight() != old_min_height || | 2185 | client.minHeight() != old_min_height || |
2189 | client.maxHeight() != old_max_height) { | 2186 | client.maxHeight() != old_max_height) { |
2190 | if (client.maxWidth() != 0 && client.maxHeight() != 0 && | 2187 | if (!client.sizeHints().isResizable()) { |
2191 | client.maxWidth() <= client.minWidth() && | 2188 | if (functions.resize || |
2192 | client.maxHeight() <= client.minHeight()) { | ||
2193 | if (decorations.maximize || | ||
2194 | decorations.handle || | ||
2195 | functions.resize || | ||
2196 | functions.maximize) | 2189 | functions.maximize) |
2197 | changed = true; | 2190 | changed = true; |
2198 | decorations.maximize = false; | ||
2199 | decorations.handle = false; | ||
2200 | functions.resize=false; | 2191 | functions.resize=false; |
2201 | functions.maximize=false; | 2192 | functions.maximize=false; |
2202 | } else { | 2193 | } else { |
2203 | // TODO: is broken while handled by FbW, needs to be in WinClient | 2194 | // TODO: is broken while handled by FbW, needs to be in WinClient |
2204 | if (!client.isTransient() || screen().decorateTransient()) { | 2195 | if (!client.isTransient() || screen().decorateTransient()) { |
2205 | if (!decorations.maximize || | 2196 | if (!functions.maximize) |
2206 | !decorations.handle || | ||
2207 | !functions.maximize) | ||
2208 | changed = true; | 2197 | changed = true; |
2209 | decorations.maximize = true; | ||
2210 | decorations.handle = true; | ||
2211 | functions.maximize = true; | 2198 | functions.maximize = true; |
2212 | } | 2199 | } |
2213 | if (!functions.resize) | 2200 | if (!functions.resize) |