Screen not locking when hovering mouse over notification applets

Bug #941618 reported by Joseph Reeves
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
gnome-screensaver (Ubuntu)
Triaged
Medium
Unassigned

Bug Description

Ubuntu 11.10 screen not locking if user hover mouse over notification elements on screen (User picker, volume, etc).

Steps to reproduce:

1: Set screen timeout to 1 minute
2: Wait a minute and allow screen to lock - move mouse to unlock: Password input box displayed
3: Expand volume applet and hover mouse over volume controls. Wait a minute and allow screen to lock - move mouse to unlock: Password input box not displayed but screen unlocked

Real world scenario: User's machine is left open to use by others if they leave it alone having performed an action using the notification applets - pausing Banshee, for example - and haven't unfocused the applet.

Expected behaviour: Screen unlock dialogue appears regardless of in-focus elements.

Revision history for this message
Joseph Reeves (iknowjoseph) wrote :

Have tested this bug in 12.04 and can confirm that it exists in this release.

If screen lock activates whilst hovering over a drop down element (calender, sound, etc), the screen will unlock without requiring authentication.

Unlike 11.10, however, the user will be asked for a password after a brief period of time. Before this time is up, however, the user will have complete access to the machine.

Revision history for this message
Matt Fischer (mfisch) wrote :

I also see this in 12.04, but I have no confirmed it in later releases.

Changed in gnome-screensaver (Ubuntu):
status: New → Confirmed
importance: Undecided → Medium
Revision history for this message
Matt Fischer (mfisch) wrote :

Confirmed in saucy.

Changed in gnome-screensaver (Ubuntu):
status: Confirmed → Triaged
Revision history for this message
Matt Fischer (mfisch) wrote :
Download full text (3.2 KiB)

When I ran gnome-screensaver in debug mode it seems that it cannot get the focus, so it bails. Log below:

[main] gnome-screensaver.c:86 (11:19:14): initializing gnome-screensaver 3.4.1
[init_session_id] gs-listener-dbus.c:1473 (11:19:14): Got session-id: /org/freedesktop/ConsoleKit/Session12
[gs_fade_init] gs-fade.c:920 (11:19:15): Fade type: 3
[set_status] gs-watcher-x11.c:346 (11:19:15): GSWatcher: not active, ignoring status changes
[gs_watcher_set_active] gs-watcher-x11.c:277 (11:19:15): turning watcher: ON
[listener_dbus_handle_system_message] gs-listener-dbus.c:854 (11:19:15): obj_path=/org/freedesktop/DBus interface=org.freedesktop.DBus method=NameAcquired destination=:1.1608
[gs_watcher_set_active] gs-watcher-x11.c:277 (11:19:15): turning watcher: ON
[gs_watcher_set_active] gs-watcher-x11.c:281 (11:19:15): Idle detection is already active
[on_bg_changed] gs-manager.c:596 (11:19:15): background changed
[gs_manager_set_lock_active] gs-manager.c:168 (11:19:20): Setting lock active: 1
[gs_grab_grab_root] gs-grab-x11.c:536 (11:19:20): Grabbing the root window
[gs_grab_get_keyboard] gs-grab-x11.c:153 (11:19:20): Grabbing keyboard widget=B8
[gs_grab_get_keyboard] gs-grab-x11.c:168 (11:19:20): Couldn't grab keyboard! (AlreadyGrabbed)
[gs_grab_get_keyboard] gs-grab-x11.c:153 (11:19:21): Grabbing keyboard widget=B8
[gs_grab_get_keyboard] gs-grab-x11.c:168 (11:19:21): Couldn't grab keyboard! (AlreadyGrabbed)
[gs_grab_get_keyboard] gs-grab-x11.c:153 (11:19:22): Grabbing keyboard widget=B8
[gs_grab_get_keyboard] gs-grab-x11.c:168 (11:19:22): Couldn't grab keyboard! (AlreadyGrabbed)
[gs_grab_get_keyboard] gs-grab-x11.c:153 (11:19:23): Grabbing keyboard widget=B8
[gs_grab_get_keyboard] gs-grab-x11.c:168 (11:19:23): Couldn't grab keyboard! (AlreadyGrabbed)
[gs_grab_nuke_focus] gs-grab-x11.c:385 (11:19:24): Nuking focus
[gs_grab_get_keyboard] gs-grab-x11.c:153 (11:19:24): Grabbing keyboard widget=B8
[gs_grab_get_keyboard] gs-grab-x11.c:168 (11:19:24): Couldn't grab keyboard! (AlreadyGrabbed)
[gs_grab_get_keyboard] gs-grab-x11.c:153 (11:19:25): Grabbing keyboard widget=B8
[gs_grab_get_keyboard] gs-grab-x11.c:168 (11:19:25): Couldn't grab keyboard! (AlreadyGrabbed)
[gs_grab_get_keyboard] gs-grab-x11.c:153 (11:19:26): Grabbing keyboard widget=B8
[gs_grab_get_keyboard] gs-grab-x11.c:168 (11:19:26): Couldn't grab keyboard! (AlreadyGrabbed)
[gs_grab_get_keyboard] gs-grab-x11.c:153 (11:19:27): Grabbing keyboard widget=B8
[gs_grab_get_keyboard] gs-grab-x11.c:168 (11:19:27): Couldn't grab keyboard! (AlreadyGrabbed)
[gs_grab_get_mouse] gs-grab-x11.c:188 (11:19:28): Grabbing mouse widget=B8
[gs_grab_get_mouse] gs-grab-x11.c:188 (11:19:29): Grabbing mouse widget=B8
[gs_grab_get_mouse] gs-grab-x11.c:188 (11:19:30): Grabbing mouse widget=B8
[gs_grab_get_mouse] gs-grab-x11.c:188 (11:19:31): Grabbing mouse widget=B8
[gs_grab_grab_window] gs-grab-x11.c:489 (11:19:32): Couldn't grab pointer! (AlreadyGrabbed)
[listener_active_changed_cb] gs-monitor.c:292 (11:19:32): Unable to set manager active: 1
[gs_listener_set_active] gs-listener-dbus.c:265 (11:19:32): Active-changed signal not handled
[gs_manager_set_lock_active] gs-mana...

Read more...

Revision history for this message
Marc Deslauriers (mdeslaur) wrote :

That's because gtk is grabbing the mouse and/or keyboard. There's no good way around this with xorg.

If we modify gnome-screensaver to ignore the grab fail, your password will leak into whatever application actually has the grab when you type it into the screensaver dialog box.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.