> On Jan. 26, 2013, 2:03 p.m., Oliver Henshaw wrote: > > I don't have multiple monitors to test with, but can you test with the the > > LockWindow set to some colour other than black? Just so that any bizarre > > side effects are more obvious. > > Thomas Lübking wrote: > What "bizarre side effects" would you expect? > My screens are ok ;-P > > (I could see the clock from the WM on where the exposed area would have > been and that area was now black) > > I'll try by a nice dodgerblue nevertheless. > > Oliver Henshaw wrote: > I wanted to be completely sure that it is the lockwindow that is covering > the screen and not some other component. Perhaps that's overly paranoid, but > I suppose we should err towards the paranoid. > > Thomas Lübking wrote: > Turns nicely blue, i also debugged me the geometry and that the slot is > caught (twice for the screecount change AND the resize) > > Btw and while at it - the code is partially a bit "weird": > > QPalette p = palette(); > p.setColor(backgroundRole(), Qt::transparent); // this is what you got > to turn blue > ** Q: wtf is the background color "transparent" - this is black for > 24bit, but guess what it is on a 32 drawable (hint: it's not pink) > --> Reason? > setPalette(p); // good > setAttribute(Qt::WA_PaintOnScreen, true); // bypasses doublebuffer, saves > RAM - good > setAttribute(Qt::WA_NoSystemBackground, false); // iirc default, but good > setAttribute(Qt::WA_PaintOutsidePaintEvent, true); // for bitBlt in > resume() > ** Q: what ::resume() and what bitBlt? - bitBlt is afair not evel legally > supported since Qt 4 and "grep -r resume *" in the screenlocker path is this > lone and a label content. > > void LockWindow::paintEvent(QPaintEvent* ) > { > QPainter p(this); > p.setBrush(Qt::black); // set only this to Qt::blue, attempt a resize > (no matter on how many screens) and watch the result > p.drawRect(geometry()); > } > > ** Q: "why"? - everything on top says "no paint events", so why is > paintevent implemented at all (it will for other reasons once shadow the > contents) > ** Q: p.setPen(Qt::black)? > > Does anybody know about the legacy of this? > Some Qt3 port that requires cleanup or is this to work-a-round special > system issues? > Quite some of it also is only supported on X11, not Windows or MacOS and > i'm not sure about Wayland and Symbian. > > To test this, one btw. does not necessarily require a multiscreen setup - > it's sufficient to "xrandr -s 1024x768", lock screen, VT1, export DISPLAY=:0; > xrandr -s 0 and "sleep 5; pkill kscreenlocker_g" (or so) -> VT7, see > lockwindow
suspend()/resume() seem to have been methods in the 4.9 krunner/lock to stop/start the 4.9 screensaver if e.g. it couldn't be seen. The bitBlt comment was introduced in commit 71b8c4e239d1b9f7f4884d75afefda794e011034; the bitBlt use in resume() was removed/replaced in commit 2a23308ce7fb6f5918b3f7c25ed3b2a70cbcc0e7. - Oliver ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: http://git.reviewboard.kde.org/r/108585/#review26205 ----------------------------------------------------------- On Jan. 25, 2013, 11:04 p.m., Thomas Lübking wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > http://git.reviewboard.kde.org/r/108585/ > ----------------------------------------------------------- > > (Updated Jan. 25, 2013, 11:04 p.m.) > > > Review request for kwin, Plasma, Aaron J. Seigo, and Martin Gräßlin. > > > Description > ------- > > Actually was wrong, we do get the signals from QDesktopWidget - so the fix > is pretty trivial ;-) > > Reg. bug #313835 i assume you're using some plasma screenlocker with widgets > on it (which has a translucent background when compositing is active and > relies on the lockwindow to cover the screen) > > I've not checked such screen"saver" and have to admit, i'd not even know > where to check for the sources. > > > This addresses bug 313835. > http://bugs.kde.org/show_bug.cgi?id=313835 > > > Diffs > ----- > > ksmserver/screenlocker/lockwindow.h 5cbc769 > ksmserver/screenlocker/lockwindow.cpp 147853b > > Diff: http://git.reviewboard.kde.org/r/108585/diff/ > > > Testing > ------- > > recompiled _all_ ksmserver, logged out, in, locked the screen, updated the > screen geometry ("arrrgghhh... geeezzz... goddamnfuckinghdmiinthedark"), > killed the gretter (noticed that i could have simply xrandr'd the geometry > from VT1 as well - "blast!") > > everything is nicely black (with compositing) > > > Thanks, > > Thomas Lübking > >
_______________________________________________ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel