diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/Window.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/Window.cc b/src/Window.cc index 578736a..5377965 100644 --- a/src/Window.cc +++ b/src/Window.cc | |||
@@ -548,8 +548,10 @@ void FluxboxWindow::init() { | |||
548 | // if we're a transient then we should be on the same layer and workspace | 548 | // if we're a transient then we should be on the same layer and workspace |
549 | FluxboxWindow* twin = m_client->transientFor() ? m_client->transientFor()->fbwindow() : 0; | 549 | FluxboxWindow* twin = m_client->transientFor() ? m_client->transientFor()->fbwindow() : 0; |
550 | if (twin && twin != this) { | 550 | if (twin && twin != this) { |
551 | layerItem().setLayer(twin->layerItem().getLayer()); | 551 | if (twin->layerNum() < ResourceLayer::DESKTOP) { // don't confine layer for desktops |
552 | m_state.layernum = twin->layerNum(); | 552 | layerItem().setLayer(twin->layerItem().getLayer()); |
553 | m_state.layernum = twin->layerNum(); | ||
554 | } | ||
553 | m_workspace_number = twin->workspaceNumber(); | 555 | m_workspace_number = twin->workspaceNumber(); |
554 | const int x = twin->frame().x() + int(twin->frame().width() - frame().width())/2; | 556 | const int x = twin->frame().x() + int(twin->frame().width() - frame().width())/2; |
555 | const int y = twin->frame().y() + int(twin->frame().height() - frame().height())/2; | 557 | const int y = twin->frame().y() + int(twin->frame().height() - frame().height())/2; |