diff options
Diffstat (limited to 'src/Window.cc')
-rw-r--r-- | src/Window.cc | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/src/Window.cc b/src/Window.cc index 39f82b6..80b7ef6 100644 --- a/src/Window.cc +++ b/src/Window.cc | |||
@@ -495,11 +495,6 @@ void FluxboxWindow::init() { | |||
495 | decorations.tab = false; //no tab for this window | 495 | decorations.tab = false; //no tab for this window |
496 | } | 496 | } |
497 | 497 | ||
498 | |||
499 | if (m_client->normal_hint_flags & (PPosition|USPosition)) { | ||
500 | frame().gravityTranslate(wattrib.x, wattrib.y, m_client->gravity(), m_client->old_bw, false); | ||
501 | } | ||
502 | |||
503 | associateClientWindow(true, wattrib.x, wattrib.y, wattrib.width, wattrib.height, m_client->gravity(), m_client->old_bw); | 498 | associateClientWindow(true, wattrib.x, wattrib.y, wattrib.width, wattrib.height, m_client->gravity(), m_client->old_bw); |
504 | 499 | ||
505 | Fluxbox::instance()->attachSignals(*this); | 500 | Fluxbox::instance()->attachSignals(*this); |
@@ -543,8 +538,6 @@ void FluxboxWindow::init() { | |||
543 | wattrib.height = 1; | 538 | wattrib.height = 1; |
544 | */ | 539 | */ |
545 | 540 | ||
546 | |||
547 | |||
548 | // if we're a transient then we should be on the same layer as our parent | 541 | // if we're a transient then we should be on the same layer as our parent |
549 | if (m_client->isTransient() && | 542 | if (m_client->isTransient() && |
550 | m_client->transientFor()->fbwindow() && | 543 | m_client->transientFor()->fbwindow() && |
@@ -561,9 +554,13 @@ void FluxboxWindow::init() { | |||
561 | } | 554 | } |
562 | #endif // DEBUG | 555 | #endif // DEBUG |
563 | 556 | ||
557 | int real_width = frame().width(); | ||
558 | int real_height = frame().height() - frame().titlebarHeight() - frame().handleHeight(); | ||
559 | m_client->applySizeHints(real_width, real_height); | ||
560 | real_height += frame().titlebarHeight() + frame().handleHeight(); | ||
564 | 561 | ||
565 | if (!place_window) | 562 | if (!place_window) |
566 | moveResize(frame().x(), frame().y(), frame().width(), frame().height()); | 563 | moveResize(frame().x(), frame().y(), real_width, real_height); |
567 | 564 | ||
568 | screen().getWorkspace(m_workspace_number)->addWindow(*this, place_window); | 565 | screen().getWorkspace(m_workspace_number)->addWindow(*this, place_window); |
569 | setWorkspace(m_workspace_number); | 566 | setWorkspace(m_workspace_number); |
@@ -1376,7 +1373,7 @@ void FluxboxWindow::moveResizeForClient(int new_x, int new_y, | |||
1376 | // magic to detect if moved during initialisation | 1373 | // magic to detect if moved during initialisation |
1377 | if (!isInitialized()) | 1374 | if (!isInitialized()) |
1378 | m_old_pos_x = 1; | 1375 | m_old_pos_x = 1; |
1379 | frame().moveResizeForClient(new_x, new_y, new_width, new_height, true, true, gravity, client_bw); | 1376 | frame().moveResizeForClient(new_x, new_y, new_width, new_height, gravity, client_bw); |
1380 | setFocusFlag(focused); | 1377 | setFocusFlag(focused); |
1381 | shaded = false; | 1378 | shaded = false; |
1382 | sendConfigureNotify(); | 1379 | sendConfigureNotify(); |