GNOME Bugzilla – Bug 344936
Screen does blank when the GTK theme has a pixmap as background
Last modified: 2014-08-19 20:51:50 UTC
Please describe the problem: I noticed this first in Ubuntu 6.06: if the theme has background patterns (pixmaps), for example "Smokey Blue", selecting "Blank Screen" in gnome-screensaver does not make the screen blank when the screensaver starts, but instead the background pattern is displayed. I tried with two different such themes and the behavior is the same. The same thing happened on a Fedora Core 5 installation, so it is probably due to gnome-screensaver. Steps to reproduce: 1. Choose "Smokey Blue" theme or any other with a pixmap background (not solid color) 2. Choose blank screen in the screensaver preferences 3. Wait (or force) screensaver to start Actual results: The pixmap of the theme is displayed on the entire screen Expected results: Screen shoud get blank Does this happen every time? Yes, with different themes (with pixmaps as background) and on different Linux distributions Other information:
Created attachment 67522 [details] [review] patch Neat. I've committed this patch to head and the 2-14 branch. Should be fixed. Thanks for the report.
I'm still seeing this bug on 2.20.0 (openSUSE 10.3, and there's nothing in any of the patches that would seem to touch the patch above). Reopening.
This has also been reported in Debian with 2.22: "I've tried different themes with version 2.22.2-1 of gnome-screensaver. I first noticed this bug the theme SphereCrystal. Theme: SphereCrystal Background: gray stripes screensaver: themes background mini preview: blank screen fullscreen preview: blank screen Theme: Aero Background: patterned background screensaver: blank screen mini preview: themes background fullscreen preview: themes background Theme: Amarenth, Clearlooks Background: solid color screensaver: blank screen mini preview: blank screen fullscreen preview: blank screen I don't seem to have any other themes with patterned background installed." See http://bugs.debian.org/472230 for the full report.
gnome-screensaver-2.24.0: The bug is still (or again) valid. Example of a theme with blank background: ftp://ftp.penguin.cz/pub/users/utx/Bumblebee/Bumblebee-2.0mix/gtk-2.0/
Created attachment 149373 [details] [review] patch to make gnome-screensaver to locally override bad RC-file Personally I would claim this to be a bug in the gtkrc files in the affected themes. These themes are a little bit to agressive when assigning the background pixmap of widgets. However, instead of trying to fix all broken themes, I created a small patch that removes the background pixmap for the widget classes that are used for the blanked screen, i.e. GSWindow (the background of the unlock dialog) and GtkDrawingArea (the blanked screen and the preferences preview panel).
Background pixmap allows to create nicer themes. Patch does what is expected, but I see this: ** (gnome-screensaver:9947): CRITICAL **: gnome_bg_create_pixmap: assertion `bg != NULL' failed (gnome-screensaver:9947): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed
Interesting. I developed my patch on top of the packaged version from Ubuntu 9.10 and there it works flawlessly. When I compile the same version (2.28.0) from scratch, without the Ubuntu patches, I manage to trip the assertion both with and without my patch.
gnome-screensaver is obsolete, and this particular bug has been fixed in gnome-shell itself, with the lock screen not relying on the GTK+ theme.