summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexandre Rostovtsev <tetromino@gentoo.org>2012-07-15 22:13:56 +0000
committerAlexandre Rostovtsev <tetromino@gentoo.org>2012-07-15 22:13:56 +0000
commitf0facfa6904721e7194fe4b4c11f8253168b9026 (patch)
treeaf2acf1ebf813c000ed81534251875861ad8fe60 /gnome-extra
parentVersion bump (diff)
downloadgentoo-2-f0facfa6904721e7194fe4b4c11f8253168b9026.tar.gz
gentoo-2-f0facfa6904721e7194fe4b4c11f8253168b9026.tar.bz2
gentoo-2-f0facfa6904721e7194fe4b4c11f8253168b9026.zip
Fix screen lock problems on multi-monitor setups (bug #425070, thanks to Travis Hansen for tracking down the problematic commit) and remove broken 3.4.2 version.
(Portage version: 2.2.0_alpha118/cvs/Linux x86_64)
Diffstat (limited to 'gnome-extra')
-rw-r--r--gnome-extra/gnome-screensaver/ChangeLog11
-rw-r--r--gnome-extra/gnome-screensaver/files/gnome-screensaver-3.4.2-gtkrc.patch80
-rw-r--r--gnome-extra/gnome-screensaver/gnome-screensaver-3.4.2-r1.ebuild (renamed from gnome-extra/gnome-screensaver/gnome-screensaver-3.4.2.ebuild)9
3 files changed, 97 insertions, 3 deletions
diff --git a/gnome-extra/gnome-screensaver/ChangeLog b/gnome-extra/gnome-screensaver/ChangeLog
index 6841f49f7001..261071fb4d79 100644
--- a/gnome-extra/gnome-screensaver/ChangeLog
+++ b/gnome-extra/gnome-screensaver/ChangeLog
@@ -1,6 +1,15 @@
# ChangeLog for gnome-extra/gnome-screensaver
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/gnome-extra/gnome-screensaver/ChangeLog,v 1.156 2012/07/12 02:01:54 cardoe Exp $
+# $Header: /var/cvsroot/gentoo-x86/gnome-extra/gnome-screensaver/ChangeLog,v 1.157 2012/07/15 22:13:56 tetromino Exp $
+
+*gnome-screensaver-3.4.2-r1 (15 Jul 2012)
+
+ 15 Jul 2012; Alexandre Rostovtsev <tetromino@gentoo.org>
+ -gnome-screensaver-3.4.2.ebuild, +gnome-screensaver-3.4.2-r1.ebuild,
+ +files/gnome-screensaver-3.4.2-gtkrc.patch:
+ Fix screen lock problems on multi-monitor setups (bug #425070, thanks to
+ Travis Hansen for tracking down the problematic commit) and remove broken
+ 3.4.2 version.
11 Jul 2012; Doug Goldstein <cardoe@gentoo.org>
gnome-screensaver-3.4.1.ebuild, gnome-screensaver-3.4.2.ebuild:
diff --git a/gnome-extra/gnome-screensaver/files/gnome-screensaver-3.4.2-gtkrc.patch b/gnome-extra/gnome-screensaver/files/gnome-screensaver-3.4.2-gtkrc.patch
new file mode 100644
index 000000000000..41f9512d8e12
--- /dev/null
+++ b/gnome-extra/gnome-screensaver/files/gnome-screensaver-3.4.2-gtkrc.patch
@@ -0,0 +1,80 @@
+From 43ee32edaddb9b9b9f4b43c47ca73d7b4eea9fae Mon Sep 17 00:00:00 2001
+From: Cosimo Cecchi <cosimoc@gnome.org>
+Date: Mon, 25 Jun 2012 18:10:23 -0400
+Subject: [PATCH] window: don't use GtkRC to override drawing area's
+ background
+
+That won't work correctly with GTK3, even more so given that we set
+app_paintable = TRUE on the drawing area.
+Instead, set the background GdkRGBA to black directly on the
+GtkDrawingArea's GdkWindow.
+---
+ src/gs-window-x11.c | 33 +++++----------------------------
+ 1 files changed, 5 insertions(+), 28 deletions(-)
+
+diff --git a/src/gs-window-x11.c b/src/gs-window-x11.c
+index 43d383d..c278612 100644
+--- a/src/gs-window-x11.c
++++ b/src/gs-window-x11.c
+@@ -192,32 +192,6 @@ gs_window_override_user_time (GSWindow *window)
+ }
+
+ static void
+-force_no_pixmap_background (GtkWidget *widget)
+-{
+- static gboolean first_time = TRUE;
+-
+- if (first_time) {
+- gtk_rc_parse_string ("\n"
+- " style \"gs-theme-engine-style\"\n"
+- " {\n"
+- " bg_pixmap[NORMAL] = \"<none>\"\n"
+- " bg_pixmap[INSENSITIVE] = \"<none>\"\n"
+- " bg_pixmap[ACTIVE] = \"<none>\"\n"
+- " bg_pixmap[PRELIGHT] = \"<none>\"\n"
+- " bg[NORMAL] = { 0.0, 0.0, 0.0 }\n"
+- " bg[INSENSITIVE] = { 0.0, 0.0, 0.0 }\n"
+- " bg[ACTIVE] = { 0.0, 0.0, 0.0 }\n"
+- " bg[PRELIGHT] = { 0.0, 0.0, 0.0 }\n"
+- " }\n"
+- " widget \"gs-window-drawing-area*\" style : highest \"gs-theme-engine-style\"\n"
+- "\n");
+- first_time = FALSE;
+- }
+-
+- gtk_widget_set_name (widget, "gs-window-drawing-area");
+-}
+-
+-static void
+ gs_window_reset_background_surface (GSWindow *window)
+ {
+ cairo_pattern_t *pattern;
+@@ -2309,6 +2283,8 @@ create_panel (GSWindow *window)
+ static void
+ gs_window_init (GSWindow *window)
+ {
++ GdkRGBA black = { 0.0, 0.0, 0.0, 1.0 };
++
+ window->priv = GS_WINDOW_GET_PRIVATE (window);
+
+ window->priv->geometry.x = -1;
+@@ -2353,13 +2329,14 @@ gs_window_init (GSWindow *window)
+ gtk_widget_show (window->priv->drawing_area);
+ gtk_widget_set_app_paintable (window->priv->drawing_area, TRUE);
+ gtk_box_pack_start (GTK_BOX (window->priv->vbox), window->priv->drawing_area, TRUE, TRUE, 0);
++ gtk_widget_realize (window->priv->drawing_area);
++ gdk_window_set_background_rgba (gtk_widget_get_window (window->priv->drawing_area), &black);
++
+ create_info_bar (window);
+
+ window->priv->clock_tracker = g_object_new (GNOME_TYPE_WALL_CLOCK, NULL);
+ g_signal_connect (window->priv->clock_tracker, "notify::clock", G_CALLBACK (on_clock_changed), window);
+ update_clock (window);
+-
+- force_no_pixmap_background (window->priv->drawing_area);
+ }
+
+ static void
+--
+1.7.8.6
+
diff --git a/gnome-extra/gnome-screensaver/gnome-screensaver-3.4.2.ebuild b/gnome-extra/gnome-screensaver/gnome-screensaver-3.4.2-r1.ebuild
index bd955faaa77e..3246bba96539 100644
--- a/gnome-extra/gnome-screensaver/gnome-screensaver-3.4.2.ebuild
+++ b/gnome-extra/gnome-screensaver/gnome-screensaver-3.4.2-r1.ebuild
@@ -1,11 +1,11 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/gnome-extra/gnome-screensaver/gnome-screensaver-3.4.2.ebuild,v 1.2 2012/07/12 02:01:54 cardoe Exp $
+# $Header: /var/cvsroot/gentoo-x86/gnome-extra/gnome-screensaver/gnome-screensaver-3.4.2-r1.ebuild,v 1.1 2012/07/15 22:13:56 tetromino Exp $
EAPI="4"
GCONF_DEBUG="yes"
-inherit gnome2
+inherit eutils gnome2
DESCRIPTION="Replaces xscreensaver, integrating with the desktop."
HOMEPAGE="http://live.gnome.org/GnomeScreensaver"
@@ -69,6 +69,11 @@ pkg_setup() {
}
src_prepare() {
+ # Causes problems on multi-monitor setups; bug #425070,
+ # https://bugzilla.gnome.org/show_bug.cgi?id=679441
+ # Not fixed in 3.4.3!
+ epatch -R "${FILESDIR}/${PN}-3.4.2-gtkrc.patch"
+
epatch_user
# Regenerate marshaling code for <glib-2.31 compat
rm -v src/gs-marshal.{c,h} || die