Xinerama problem with log out and unlock dialogues

Bug #67919 reported by Malcolm Parsons
4
Affects Status Importance Assigned to Milestone
gksu (Ubuntu)
Invalid
Undecided
Unassigned
gnome-screensaver (Ubuntu)
Fix Released
Medium
Oliver Grawert
gnome-session (Ubuntu)
Invalid
Medium
Ubuntu Desktop Bugs

Bug Description

I have an Xinerama setup where the second head (tvout) is a clone of the top left of the first head (monitor).

The log out and unlock dialogues doesn't seem to cope with cloned screens.

See attached screenshots.

Revision history for this message
Malcolm Parsons (malcolm-parsons) wrote :
Revision history for this message
Malcolm Parsons (malcolm-parsons) wrote :
Revision history for this message
Daniel Holbach (dholbach) wrote :

Marking as 'ubuntulove' task.

Changed in gnome-session:
assignee: nobody → desktop-bugs
importance: Undecided → Medium
description: updated
Revision history for this message
Daniel Holbach (dholbach) wrote :

This has nothing to do with gksu.

Changed in gksu:
status: Unconfirmed → Rejected
Revision history for this message
Malcolm Parsons (malcolm-parsons) wrote :

After a successful password entry, the screen temporarily looks like this

Revision history for this message
Christof Krüger (christofkr) wrote :

Gnome-session doesn't handle overlapping viewports well. It just creates a overlay window for every screen whether they overlap or not.

The different shades of transparency seen in lock.jpg should be less prominent with the latest patch on feisty and as all this fading is quite an ugly hack it should be acceptable. However having an overlay window overlap the gksu input window or the window for unlocking the screen is a bigger problem.

Changed in gnome-session:
status: Unconfirmed → Confirmed
Revision history for this message
Christof Krüger (christofkr) wrote :

Attached a patch to gnome-screensaver which should fix the issue.
The lock screen window has been overlaid because gnome-screensaver windows listen to x events and raise themselves whenever a MapNotify or ConfigureNotify event arrives in order to keep themselves on the very top.

Events caused by gnome-screensaver itself are ignored of course or there would be an infinite raising race on xinerama. However the unlock-window is created by a seperate program: gnome-screensaver-dialog and therefore gnome-screensaver does not recognize it as "own" window. Therefore, the other screensaver window raises itself above the other. If this actually happens depends on the order in which the events are delivered to both screensaver windows.

The patch does the following: With the current design a screensaver window can't easily see if another screensaver window is currently displaying the unlock screen. Thus, the easiest way to handle the problem is to make the unlocking-window reraise itself even it the x event came from gnome-screensaver itself. This way, even if another screensaver window raises itself as a reaction of the unlock screen appearing, the screensaver window with the unlock screen will notice and reraise itself.

@Malcolm Parsons:
I cannot reproduce the problem with gksu. Could you please give exact instructions how to reproduce?

Revision history for this message
Christof Krüger (christofkr) wrote :

Closing on gnome-session, because the screen locking is actually performed by gnome-screensaver and the logout-dialog problem has been fixed in a recent feisty update.

Changed in gnome-session:
status: Confirmed → Rejected
Revision history for this message
Malcolm Parsons (malcolm-parsons) wrote :

Run gksu, enter password, press ok, watch screen.

The gksu dialog is displayed ok, and the desktop is ok when gksu has finished,
but briefly during the unfade you can see that the second head was unfaded first.

It's a very minor problem.

Revision history for this message
Christof Krüger (christofkr) wrote :

Thank you, now I understand what you meant.
This has been already fixed in feisty, see bug #89176.

Thank you for your bug reports!

Changed in gnome-screensaver:
importance: Undecided → Medium
status: Unconfirmed → Confirmed
Tollef Fog Heen (tfheen)
Changed in gnome-screensaver:
assignee: nobody → ogra
Revision history for this message
Oliver Grawert (ogra) wrote :

gnome-screensaver (2.18.0-0ubuntu2) feisty; urgency=low
 .
   * add patch from LP #67919 to fix unlock on xinerama screens,
     thanks to Christof Krueger (closes LP #67919)

Changed in gnome-screensaver:
status: Confirmed → Fix Released
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.