fixed some strange behavior with tabbing a transient to its main window

This commit is contained in:
markt 2007-02-19 16:04:59 +00:00
parent ca710b371b
commit bd3d8d5c8d
2 changed files with 4 additions and 1 deletions

View file

@ -328,6 +328,8 @@ void Ewmh::setupFrame(FluxboxWindow &win) {
changeProperty(m_net_wm_window_type,
XA_ATOM, 32, PropModeReplace,
(unsigned char*)&m_net_wm_window_type_dialog, 1);
// and then we should treat it like a dialog
win.setTabable(false);
}
}

View file

@ -1887,7 +1887,8 @@ void FluxboxWindow::raise() {
// raise this window and every transient in it with this one last
if (client->fbwindow()) {
// doing this on startup messes up the focus order
if (!Fluxbox::instance()->isStartup())
if (!Fluxbox::instance()->isStartup() && client->fbwindow() != this &&
&client->fbwindow()->winClient() != client)
// activate the client so the transient won't get pushed back down
client->fbwindow()->setCurrentClient(*client, false);
raiseFluxboxWindow(*client->fbwindow());