diff --git a/ChangeLog b/ChangeLog index c327f3dc..13f8b6a0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ (Format: Year/Month/Day) Changes for 1.0rc3: +*06/07/04: + * New windows don't steal focus from fullscreen windows; instead, flash the + titlebar and iconbar button (Mark) + Window.cc *06/07/03: * fix+improve handling of window gravity, was very broken (Simon) - caused (among others) windows with gravity set to get relocated diff --git a/src/Window.cc b/src/Window.cc index abbe6d5e..39f82b63 100644 --- a/src/Window.cc +++ b/src/Window.cc @@ -2478,9 +2478,16 @@ void FluxboxWindow::mapNotifyEvent(XMapEvent &ne) { setState(NormalState, false); - if (client->isTransient() || screen().focusControl().focusNew()) + if (client->isTransient()) setCurrentClient(*client, true); - else + else if (screen().focusControl().focusNew()) { + FluxboxWindow *cur = FocusControl::focusedFbWindow(); + if (cur && cur->isFullscreen()) { + setFocusFlag(false); + Fluxbox::instance()->attentionHandler().addAttention(*client); + } else + setCurrentClient(*client, true); + } else setFocusFlag(false); iconic = false;