Review Request 124912: [screenlocker] Delay uninhibiting sleep till the lock window is shown
David Edmundson
david at davidedmundson.co.uk
Tue Aug 25 11:04:59 UTC 2015
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/124912/#review84330
-----------------------------------------------------------
ksmserver/screenlocker/lockwindow.h (line 54)
<https://git.reviewboard.kde.org/r/124912/#comment58399>
this is a pretty silly class name now, given it's not a window
ksmserver/screenlocker/lockwindow.cpp (line 150)
<https://git.reviewboard.kde.org/r/124912/#comment58400>
I know you're just editing it, but
having just hidden the background window, we then set a background colour and event mask on it then move it....
this literally makes no sense.
ksmserver/screenlocker/lockwindow.cpp (line 406)
<https://git.reviewboard.kde.org/r/124912/#comment58401>
we can move this to background window constructor
- David Edmundson
On Aug. 25, 2015, 7:54 a.m., Martin Gräßlin wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/124912/
> -----------------------------------------------------------
>
> (Updated Aug. 25, 2015, 7:54 a.m.)
>
>
> Review request for Plasma, Kai Uwe Broulik and David Edmundson.
>
>
> Bugs: 348850
> https://bugs.kde.org/show_bug.cgi?id=348850
>
>
> Repository: plasma-workspace
>
>
> Description
> -------
>
> LockWindow is mostly just the logic to ensure that the greeter is kept
> on top of the stack. In addition it did render a black qwidget. Testing
> showed that the paintEvent never got invoked, though, so the rendering
> did not really work.
>
> The rendering feature is now split out into a dedicated QRasterWindow
> as we don't need a full QWidget for it. It also needed to be split into
> a dedicated class as it's not possible to inherit from QSurface and mix
> with XLib code (QSurface defines a Window type which bites with XLib).
>
> [screenlocker] Emit locked once the lock window is shown
>
> The screen is only truly locked once our black background window is
> shown. So far we locked once the greeter process was started. At this
> point the screen was still unlocked and a suspend would result in system
> waking up with an unlocked screen for a brief period.
>
> This change emits the locked signal once we got a MapNotify event for
> our black background window which means the screen is properly turned
> black and we can allow e.g. going to suspend.
>
>
> Diffs
> -----
>
> ksmserver/screenlocker/ksldapp.cpp d0636b8785101cb9896cea6399952dac0e4cd227
> ksmserver/screenlocker/lockwindow.h 265699a9789703ad099eee043a14d4700e90c243
> ksmserver/screenlocker/lockwindow.cpp 41af0e23f8442d75b7295debe50d9b29fbda7e7a
>
> Diff: https://git.reviewboard.kde.org/r/124912/diff/
>
>
> Testing
> -------
>
> Added debug statements, tail -f on .xsession-errors:
> we call uninhibit before system goes to suspend
>
> Unfortunately on wakeup I still see a flicker of the desktop. I'm not sure where it comes from, I assume X weirdness on resume from suspend.
>
>
> Thanks,
>
> Martin Gräßlin
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20150825/bcf521bf/attachment-0001.html>
More information about the Plasma-devel
mailing list