all repos — fluxbox @ 721c02204a5f00e7f1c59983df0b1549fe1e971b

custom fork of the fluxbox windowmanager

a little fix for auto-grouping after restart
markt markt
commit

721c02204a5f00e7f1c59983df0b1549fe1e971b

parent

c65b949f97ea1eecd01fad961a42f2bd3be1ed0b

3 files changed, 7 insertions(+), 7 deletions(-)

jump to
M src/Remember.ccsrc/Remember.cc

@@ -965,7 +965,8 @@

// first, set the options that aren't preserved as window properties on // restart, then return if fluxbox is starting up -- we want restart to // disturb the current window state as little as possible - if (app->is_grouped && app->group == 0) + Window leftwin = winclient.getGroupLeftWindow(); + if (app->is_grouped && app->group == 0 && leftwin == None) app->group = &win; if (app->focushiddenstate_remember)
M src/Screen.ccsrc/Screen.cc

@@ -2073,11 +2073,9 @@ // yay, this'll do.

WinClient *other = it->second; m_expecting_groups.erase(it); // don't expect it anymore - // forget about it if it isn't the left-most client in the group, plus - // it must have the atom set on it (i.e. previously encountered by fluxbox) - // for us to check our expecting - if (!winclient.hasGroupLeftWindow() || - other->getGroupLeftWindow() != None) + // forget about it if it isn't the left-most client in the group + Window leftwin = other->getGroupLeftWindow(); + if (leftwin != None && leftwin != winclient.window()) return 0; return other;
M src/Window.ccsrc/Window.cc

@@ -386,7 +386,8 @@ m_old_pos_x = 0;

assert(m_client); m_client->setFluxboxWindow(this); - m_client->setGroupLeftWindow(None); // nothing to the left. + if (!m_client->hasGroupLeftWindow()) + m_client->setGroupLeftWindow(None); // nothing to the left. // check for shape extension and whether the window is shaped m_shaped = false;