After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 547865 - Mouse cursor should be hidden before desktop fades to screensaver
Mouse cursor should be hidden before desktop fades to screensaver
Status: RESOLVED OBSOLETE
Product: gnome-shell
Classification: Core
Component: lock-screen
unspecified
Other All
: Normal enhancement
: ---
Assigned To: gnome-shell-maint
gnome-shell-maint
Depends on:
Blocks:
 
 
Reported: 2008-08-15 02:24 UTC by Andreas Moog
Modified: 2021-07-05 14:27 UTC
See Also:
GNOME target: ---
GNOME version: Unversioned Enhancement



Description Andreas Moog 2008-08-15 02:24:36 UTC
This feature request has been added by an user of Ubuntu on launchpad:

At present, the desktop fades to black, then the screensaver comes on. But during that fade, the mouse cursor is still visible onscreen -- creating a white distraction as the screen is fading.

It shouldn't be difficult to hide the cursor at the beginning of the fade, therefore giving the impression that the desktop is very smoothly transitioning to the screensaver.
Comment 1 William Jon McCann 2009-08-21 03:39:34 UTC
Sure.  Sounds ok.  Have a patch?
Comment 2 Bastien Nocera 2014-08-20 19:19:03 UTC
The screen lock is now implemented directly in gnome-shell, not in
gnome-screensaver (as it was with older version of GNOME 3 and GNOME 2.x).
gnome-shell handles the fade, so reassigning there.
Comment 3 Emmanuele Bassi (:ebassi) 2015-03-16 15:43:29 UTC
The screen lock toggles the visibility of the cursor as soon as the shield falls, and before it starts the fade to black animation. The cursor is shown again as soon as an event arrives.

I think this bug should be resolved, unless there are other issues lying around.
Comment 4 Bastien Nocera 2015-03-16 20:43:43 UTC
(In reply to Emmanuele Bassi (:ebassi) from comment #3)
> The screen lock toggles the visibility of the cursor as soon as the shield
> falls, and before it starts the fade to black animation. The cursor is shown
> again as soon as an event arrives.
> 
> I think this bug should be resolved, unless there are other issues lying
> around.

The problem isn't the shield, the problem is before, when the screen starts fading. The cursor is still visible when the fading starts, and it doesn't fade with the rest of the UI, as it's above the fade screen.

Either it should be hidden when the fade starts, or it should be placed underneath the fade box (which I don't even know if it's technically possible).
Comment 5 Emmanuele Bassi (:ebassi) 2015-03-16 20:51:04 UTC
(In reply to Bastien Nocera from comment #4)
> (In reply to Emmanuele Bassi (:ebassi) from comment #3)
> > The screen lock toggles the visibility of the cursor as soon as the shield
> > falls, and before it starts the fade to black animation. The cursor is shown
> > again as soon as an event arrives.
> > 
> > I think this bug should be resolved, unless there are other issues lying
> > around.
> 
> The problem isn't the shield, the problem is before, when the screen starts
> fading. The cursor is still visible when the fading starts, and it doesn't
> fade with the rest of the UI, as it's above the fade screen.

I think this is where I lost the bug: if I lock the session, the shield comes down, the cursor disappears, and then the fading starts.

I understand now that the bug describes what happens when the screen locks itself, i.e. it's been idle for a while.

I assume that we should be able to hide the cursor as soon as the system is notified of an idle state and before we start the fade out animation, since we already have a case where we do that.

> Either it should be hidden when the fade starts, or it should be placed
> underneath the fade box (which I don't even know if it's technically
> possible).

Under X that's really not possible, since the cursor is managed by the server; I guess we could do something like this in Wayland, though.
Comment 6 Jasper St. Pierre (not reading bugmail) 2015-03-16 20:53:11 UTC
It's not. The cursor is on a separate KMS plane than the shell.
Comment 7 Emmanuele Bassi (:ebassi) 2015-03-16 20:53:31 UTC
(In reply to Emmanuele Bassi (:ebassi) from comment #5)

> I assume that we should be able to hide the cursor as soon as the system is
> notified of an idle state and before we start the fade out animation, since
> we already have a case where we do that.

As Ray noticed on IRC, we could have the cursor hide itself after any inactivity period, and that would take care of this bug as well. Since the shell is responsible for handling the cursor state and the idle tracking, these days, the reliability of that operation should be better than it used to be.
Comment 8 Emmanuele Bassi (:ebassi) 2015-03-16 20:54:18 UTC
(In reply to Jasper St. Pierre from comment #6)
> It's not. The cursor is on a separate KMS plane than the shell.

Aaw. Oh, well.
Comment 9 Ray Strode [halfline] 2015-03-17 11:44:52 UTC
of course we could also hide the cursor right away and put a transient actor on the stage where the mouse location is. (in the same vein as how we hide actors and put transient clones on screen sometimes)
Comment 10 GNOME Infrastructure Team 2021-07-05 14:27:43 UTC
GNOME is going to shut down bugzilla.gnome.org in favor of  gitlab.gnome.org.
As part of that, we are mass-closing older open tickets in bugzilla.gnome.org
which have not seen updates for a longer time (resources are unfortunately
quite limited so not every ticket can get handled).

If you can still reproduce the situation described in this ticket in a recent
and supported software version, then please follow
  https://wiki.gnome.org/GettingInTouch/BugReportingGuidelines
and create a new ticket at
  https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/

Thank you for your understanding and your help.