> On April 8, 2015, 4:08 p.m., Martin Gräßlin wrote: > > AuthDialog.cpp, lines 320-321 > > <https://git.reviewboard.kde.org/r/123294/diff/1/?file=360483#file360483line320> > > > > one event cycle might not be sufficient to figure out whether it's the > > active window. > > > > And honestly I have no idea how one could get the information whether > > the window manager processed it in a reliable way. What might be the most > > reliable is to wait for the window being added to > > KWindowSystem::stackingOrder (there's a changed signal). It would give at > > least the hint that the window manager processed the window being shown. > > David Edmundson wrote: > The check to see if we're on top is currently broken. It looks at > kwindowsystem::activeWindow which indirectly comes from looking a property on > the root window. KWindowsystem only updates changes from the root window > system every event loop. So we can't use the value directly after we've > opened our dialog. > > Given we're calling forceWindowActive in policykitlistener when we show, > so I don't actually need to see what the window manager has to say as I know > we'll always be on top. To some extent we don't need this notification code > at all, and I could just remove it. > > However, for the case that forceWindowActive doesn't work (such as > running on Wayland) I left the code in.
forceWindowActive does not guarantee that you will have focus afterwards. It will also not (even less) guarantee that it's the top most window. - Martin ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123294/#review78671 ----------------------------------------------------------- On April 8, 2015, 3:16 p.m., David Edmundson wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://git.reviewboard.kde.org/r/123294/ > ----------------------------------------------------------- > > (Updated April 8, 2015, 3:16 p.m.) > > > Review request for Plasma. > > > Repository: polkit-kde-agent-1 > > > Description > ------- > > KWindowSystem::activeWindow result is cached, we need to process an > event loop for it to update. > > > Diffs > ----- > > AuthDialog.h 561c6a0 > AuthDialog.cpp 16ee64d > > Diff: https://git.reviewboard.kde.org/r/123294/diff/ > > > Testing > ------- > > > Thanks, > > David Edmundson > >
_______________________________________________ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel