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 98c10f4..8f97954 100644 --- a/src/Window.cc +++ b/src/Window.cc | |||
@@ -441,15 +441,8 @@ void FluxboxWindow::init() { | |||
441 | /* Read state above here, apply state below here. */ | 441 | /* Read state above here, apply state below here. */ |
442 | /**************************************************/ | 442 | /**************************************************/ |
443 | 443 | ||
444 | if (m_client->isTransient()) { | 444 | if (m_client->isTransient() && m_client->transientFor()->fbwindow()) |
445 | if (m_client->transientFor()->fbwindow()) | 445 | stuck = m_client->transientFor()->fbwindow()->isStuck(); |
446 | stuck = m_client->transientFor()->fbwindow()->isStuck(); | ||
447 | |||
448 | if (!screen().decorateTransient()) { | ||
449 | decorations.maximize = functions.maximize = false; | ||
450 | decorations.handle = false; | ||
451 | } | ||
452 | } | ||
453 | 446 | ||
454 | if (!m_client->sizeHints().isResizable()) { | 447 | if (!m_client->sizeHints().isResizable()) { |
455 | functions.resize = functions.maximize = false; | 448 | functions.resize = functions.maximize = false; |
@@ -2188,18 +2181,12 @@ void FluxboxWindow::propertyNotifyEvent(WinClient &client, Atom atom) { | |||
2188 | if (functions.resize || | 2181 | if (functions.resize || |
2189 | functions.maximize) | 2182 | functions.maximize) |
2190 | changed = true; | 2183 | changed = true; |
2191 | functions.resize=false; | 2184 | functions.resize = functions.maximize = false; |
2192 | functions.maximize=false; | ||
2193 | } else { | 2185 | } else { |
2194 | // TODO: is broken while handled by FbW, needs to be in WinClient | 2186 | // TODO: is broken while handled by FbW, needs to be in WinClient |
2195 | if (!client.isTransient() || screen().decorateTransient()) { | 2187 | if (!functions.maximize || !functions.resize) |
2196 | if (!functions.maximize) | ||
2197 | changed = true; | ||
2198 | functions.maximize = true; | ||
2199 | } | ||
2200 | if (!functions.resize) | ||
2201 | changed = true; | 2188 | changed = true; |
2202 | functions.resize = true; | 2189 | functions.maximize = functions.resize = true; |
2203 | } | 2190 | } |
2204 | 2191 | ||
2205 | if (changed) { | 2192 | if (changed) { |