https://bugs.kde.org/show_bug.cgi?id=371220

Martin Gräßlin <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|Window rule minimize on     |Kate aggressively activates
                   |initial doesn't work        |it's window breaking
                   |                            |minimize on show KWin rule
                 CC|                            |[email protected]
            Product|kwin                        |kate
          Component|rules                       |general
           Assignee|[email protected]      |[email protected]
            Version|5.8.2                       |16.08

--- Comment #6 from Martin Gräßlin <[email protected]> ---
This is not a bug in KWin. KWin works as expected and does minimize the window
initially (I verified by adjusting KWin code). But Kate performs a very
aggressive "activate me", which results in KWin showing the window again.

void KateAppAdaptor::activate()
{
    KateMainWindow *win = m_app->activeKateMainWindow();
    if (!win) {
        return;
    }

    win->show();
    win->activateWindow();
    win->raise();

    KWindowSystem::forceActiveWindow(win->winId());
    KWindowSystem::raiseWindow(win->winId());
    KWindowSystem::demandAttention(win->winId());
}

So Kate shows the window, activates it and raises it. And then force activates
it, raises it again and also demands attention. It looks like Kate devs try
really hard to make sure Kate gets activated. I'm going to quote the
documentation of forceActiveWindow:

"Note that this should be called only in special cases, applications shouldn't
force themselves or other windows to be the active window. Generally, this call
should used only by pagers and similar tools."

Could Kate try to be less aggressive for window showing? In general KWin will
activate new windows and I'm wondering why it needs to be that aggressive.
Especially the demandsAttention call looks to me like that Kate just tries
everything to be active. DemandsAttention is a state not available to active
windows: so after the force activate it doesn't make any sense to demand
attention. It has all the attention it can get. Furthermore if a window manager
refuses activation it will set it to demandsAttention by itself.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to