> On Aug. 8, 2014, 3:35 nachm., Thomas Lübking wrote: > > Would it be sufficient to set the cursor on "target" instead of an > > application wide override? > > > > setOverrideCursor has this "nasty" stack behavior which could be > > troublesome in a library and I could eg. think of "screensavers" > > implementing a little game (ie. run kpatience or so ;-) > > In case they should have nice control over the cursor w/o having to rewind > > a stack (or using an override on top ...) > > Wolfgang Bauer wrote: > > Would it be sufficient to set the cursor on "target" instead of an > application wide override? > > No, unfortunately not. > That was the first thing I tried, but it had no effect at all (no matter > whether it is done before target->show() or after). > > The only other way I see is explicitely set a blank mouse cursor in all > of the affected screen savers (I tried this with Euphoria and it worked), but > that would be much more work of course. > > > setOverrideCursor has this "nasty" stack behavior which could be > troublesome in a library and I could eg. think of "screensavers" implementing > a little game (ie. run kpatience or so ;-) > > Does this actually make sense? > When used as screensaver, it would immediately disappear anyway when you > move the mouse, no? > > A side-note: xscreensaver's "julia" screensaver does something like this: > it allows you to choose a new starting point for its animation by clicking > with the mouse. But when used as screensaver, the xscreensaver daemon forces > a blank cursor somehow (I haven't looked at the source code how exactly, but > I would guess via XGrabPointer()), so even this one does not show a cursor > then. When used with KDE's screen locker, the cursor does show (that's of > course not changed by this patch, as that screensaver obviously doesn't use > libkscreensaver), still you can do that only in demo mode/in the > systemsettings preview because otherwise the screensaver disappears on every > input event.
> Does this actually make sense? Dunno, don't use screensavers ;-) > When used as screensaver, it would immediately disappear anyway when you move > the mouse, no? For the moment, yes. Since the screensaver will not be the grabbing client (other process) it would require a hint to the locker to not exit the screensaver on mousemove but forward input instead. > No, unfortunately not. There'll be a "QGuiApplication::overrideCursor()" then. See how nasty that is? ;-) while (qApp->overrideCursor()) qApp->restoreOverrideCursor(); - Thomas ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/119663/#review64072 ----------------------------------------------------------- On Aug. 8, 2014, 12:37 nachm., Wolfgang Bauer wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://git.reviewboard.kde.org/r/119663/ > ----------------------------------------------------------- > > (Updated Aug. 8, 2014, 12:37 nachm.) > > > Review request for kde-workspace. > > > Bugs: 334762 > http://bugs.kde.org/show_bug.cgi?id=334762 > > > Repository: kde-workspace > > > Description > ------- > > Qt's QGLWidget apparently explicitely sets a standard mouse pointer for the > screensaver widget. > This patch prevents the mouse cursor from being shown for KDE's OpenGL > screensavers by setting a blank override cursor for the screensaver > application when not run in demo mode. > > > Diffs > ----- > > kscreensaver/libkscreensaver/main.cpp 561205a > > Diff: https://git.reviewboard.kde.org/r/119663/diff/ > > > Testing > ------- > > Set one of KDE's OpenGL screensavers in systemsettings->Display and > Monitor->Screen Locker, like Euphoria or Solarwinds. > Wait for the screensaver to kick in. > Notice that the mouse pointer is blanked now, whereas it was shown without > this patch. > > If a password is required, the mouse cursor does correctly re-appear for the > greeter as it should if you move the mouse/press a key to get rid of the > screensaver. > > I'm using the patch on my systems for over two months now and haven't noticed > any unexpected results. > > > Thanks, > > Wolfgang Bauer > >