From bd3d8d5c8da9a1db58108c3b26257d7bb3d3139c Mon Sep 17 00:00:00 2001 From: markt Date: Mon, 19 Feb 2007 16:04:59 +0000 Subject: fixed some strange behavior with tabbing a transient to its main window --- src/Ewmh.cc | 2 ++ src/Window.cc | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Ewmh.cc b/src/Ewmh.cc index 646fa0e..ce5f1a3 100644 --- a/src/Ewmh.cc +++ b/src/Ewmh.cc @@ -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); } } diff --git a/src/Window.cc b/src/Window.cc index 36bd271..ccdb477 100644 --- a/src/Window.cc +++ b/src/Window.cc @@ -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()); -- cgit v0.11.2