summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPacho Ramos <pacho@gentoo.org>2010-06-13 18:47:29 +0000
committerPacho Ramos <pacho@gentoo.org>2010-06-13 18:47:29 +0000
commitb4b625a8bfe2181375df36fc03afe616fb295fb4 (patch)
tree8b07a1afb9eea251c090b54037f7adf4bb18e647 /x11-libs/gtk+
parentAdd new version for Gnome 2.30 (diff)
downloadgentoo-2-b4b625a8bfe2181375df36fc03afe616fb295fb4.tar.gz
gentoo-2-b4b625a8bfe2181375df36fc03afe616fb295fb4.tar.bz2
gentoo-2-b4b625a8bfe2181375df36fc03afe616fb295fb4.zip
Really adding needed patches, thanks Kaleb Elwert and Lars Wendler for reporting.
(Portage version: 2.1.8.3/cvs/Linux x86_64)
Diffstat (limited to 'x11-libs/gtk+')
-rw-r--r--x11-libs/gtk+/ChangeLog11
-rw-r--r--x11-libs/gtk+/files/gtk+-2.20.1-GtkOffscreenWindow.patch26
-rw-r--r--x11-libs/gtk+/files/gtk+-2.20.1-gail_cell_type.patch68
-rw-r--r--x11-libs/gtk+/files/gtk+-2.20.1-gtkrange.patch34
-rw-r--r--x11-libs/gtk+/files/gtk+-2.20.1-libpixbufloader-warning.patch46
-rw-r--r--x11-libs/gtk+/files/gtk+-2.20.1-libpng-fix.patch49
6 files changed, 233 insertions, 1 deletions
diff --git a/x11-libs/gtk+/ChangeLog b/x11-libs/gtk+/ChangeLog
index 400a95459801..e9b10d1f87b1 100644
--- a/x11-libs/gtk+/ChangeLog
+++ b/x11-libs/gtk+/ChangeLog
@@ -1,6 +1,15 @@
# ChangeLog for x11-libs/gtk+
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/ChangeLog,v 1.458 2010/06/13 15:43:44 pacho Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/ChangeLog,v 1.459 2010/06/13 18:47:29 pacho Exp $
+
+ 13 Jun 2010; Pacho Ramos <pacho@gentoo.org>
+ +files/gtk+-2.20.1-GtkOffscreenWindow.patch,
+ +files/gtk+-2.20.1-gail_cell_type.patch,
+ +files/gtk+-2.20.1-gtkrange.patch,
+ +files/gtk+-2.20.1-libpixbufloader-warning.patch,
+ +files/gtk+-2.20.1-libpng-fix.patch:
+ Really adding needed patches, thanks Kaleb Elwert and Lars Wendler for
+ reporting.
*gtk+-2.20.1-r1 (13 Jun 2010)
diff --git a/x11-libs/gtk+/files/gtk+-2.20.1-GtkOffscreenWindow.patch b/x11-libs/gtk+/files/gtk+-2.20.1-GtkOffscreenWindow.patch
new file mode 100644
index 000000000000..7845bfa478c5
--- /dev/null
+++ b/x11-libs/gtk+/files/gtk+-2.20.1-GtkOffscreenWindow.patch
@@ -0,0 +1,26 @@
+From 4cf1f2c55c8d27052e43da932a5d5444bf1ed1f6 Mon Sep 17 00:00:00 2001
+From: Cody Russell <bratsche@gnome.org>
+Date: Tue, 01 Jun 2010 15:32:18 +0000
+Subject: Bug 608218 - GtkOffscreenWindow causes bad window with GtkEntry
+
+We now exit early from gdk_window_register_dnd() to avoid crashing if the
+window type is GDK_WINDOW_OFFSCREEN and does not support dnd operations.
+This makes it possible to use any dnd-enabled widgets, such as GtkEntry,
+within a GtkOffscreenWindow.
+---
+diff --git a/gdk/x11/gdkdnd-x11.c b/gdk/x11/gdkdnd-x11.c
+index 4b7fd85..c0ad26d 100644
+--- a/gdk/x11/gdkdnd-x11.c
++++ b/gdk/x11/gdkdnd-x11.c
+@@ -3879,6 +3879,9 @@ gdk_window_register_dnd (GdkWindow *window)
+
+ g_return_if_fail (window != NULL);
+
++ if (gdk_window_get_window_type (window) == GDK_WINDOW_OFFSCREEN)
++ return;
++
+ base_precache_atoms (display);
+
+ if (g_object_get_data (G_OBJECT (window), "gdk-dnd-registered") != NULL)
+--
+cgit v0.8.3.1
diff --git a/x11-libs/gtk+/files/gtk+-2.20.1-gail_cell_type.patch b/x11-libs/gtk+/files/gtk+-2.20.1-gail_cell_type.patch
new file mode 100644
index 000000000000..91c51a65e04e
--- /dev/null
+++ b/x11-libs/gtk+/files/gtk+-2.20.1-gail_cell_type.patch
@@ -0,0 +1,68 @@
+From 5d6ebcc17703e20560d55e34c8bef87d27ef0127 Mon Sep 17 00:00:00 2001
+From: Mike Gorse <mgorse@novell.com>
+Date: Fri, 21 May 2010 14:40:46 +0000
+Subject: Implement action interface for gailcell.
+
+ Bug #580889.
+---
+diff --git a/modules/other/gail/gailbooleancell.c b/modules/other/gail/gailbooleancell.c
+index 5c86d04..0aefcfa 100644
+--- a/modules/other/gail/gailbooleancell.c
++++ b/modules/other/gail/gailbooleancell.c
+@@ -36,8 +36,7 @@ gchar *gail_boolean_cell_property_list[] = {
+ NULL
+ };
+
+-G_DEFINE_TYPE_WITH_CODE (GailBooleanCell, gail_boolean_cell, GAIL_TYPE_RENDERER_CELL,
+- gail_cell_type_add_action_interface (g_define_type_id))
++G_DEFINE_TYPE (GailBooleanCell, gail_boolean_cell, GAIL_TYPE_RENDERER_CELL)
+
+ static void
+ gail_boolean_cell_class_init (GailBooleanCellClass *klass)
+diff --git a/modules/other/gail/gailcell.c b/modules/other/gail/gailcell.c
+index 35e531e..bc8dd13 100644
+--- a/modules/other/gail/gailcell.c
++++ b/modules/other/gail/gailcell.c
+@@ -37,7 +37,7 @@ static gint gail_cell_get_index_in_parent (AtkObject *obj);
+
+ /* AtkAction */
+
+-static void gail_cell_atk_action_interface_init
++static void atk_action_interface_init
+ (AtkActionIface *iface);
+ static ActionInfo * _gail_cell_get_action_info (GailCell *cell,
+ gint index);
+@@ -76,6 +76,7 @@ static void gail_cell_get_extents (AtkComponent *componen
+ static gboolean gail_cell_grab_focus (AtkComponent *component);
+
+ G_DEFINE_TYPE_WITH_CODE (GailCell, gail_cell, ATK_TYPE_OBJECT,
++ G_IMPLEMENT_INTERFACE (ATK_TYPE_ACTION, atk_action_interface_init)
+ G_IMPLEMENT_INTERFACE (ATK_TYPE_COMPONENT, atk_component_interface_init))
+
+ static void
+@@ -285,7 +286,7 @@ gail_cell_get_index_in_parent (AtkObject *obj)
+ }
+
+ static void
+-gail_cell_atk_action_interface_init (AtkActionIface *iface)
++atk_action_interface_init (AtkActionIface *iface)
+ {
+ iface->get_n_actions = gail_cell_action_get_n_actions;
+ iface->do_action = gail_cell_action_do_action;
+@@ -298,14 +299,6 @@ gail_cell_atk_action_interface_init (AtkActionIface *iface)
+ void
+ gail_cell_type_add_action_interface (GType type)
+ {
+- const GInterfaceInfo atk_action_info =
+- {
+- (GInterfaceInitFunc) gail_cell_atk_action_interface_init,
+- (GInterfaceFinalizeFunc) NULL,
+- NULL
+- };
+- g_type_add_interface_static (type, ATK_TYPE_ACTION,
+- &atk_action_info);
+ }
+
+ gboolean
+--
+cgit v0.8.3.1
diff --git a/x11-libs/gtk+/files/gtk+-2.20.1-gtkrange.patch b/x11-libs/gtk+/files/gtk+-2.20.1-gtkrange.patch
new file mode 100644
index 000000000000..50d7c5a6fca5
--- /dev/null
+++ b/x11-libs/gtk+/files/gtk+-2.20.1-gtkrange.patch
@@ -0,0 +1,34 @@
+From 84f88bbb1d2e12b1c582e87fa098b823e91bbf33 Mon Sep 17 00:00:00 2001
+From: Jan Arne Petersen <jap@gnome.org>
+Date: Tue, 18 May 2010 06:46:42 +0000
+Subject: GtkRange: Redraw if GtkRange is a GtkScale and value is drawn.
+
+* gtk/gtkrange.c: (gtk_range_adjustment_value_change):
+Queue the draw also if the range is a scale and the value is drawn,
+fixing bug #533946 (Markus Brinkmann), when two HScales use one
+adjustment.
+---
+diff --git a/gtk/gtkrange.c b/gtk/gtkrange.c
+index 552eac7..a4fcee4 100644
+--- a/gtk/gtkrange.c
++++ b/gtk/gtkrange.c
+@@ -35,6 +35,7 @@
+ #include "gtkmarshalers.h"
+ #include "gtkorientable.h"
+ #include "gtkrange.h"
++#include "gtkscale.h"
+ #include "gtkscrollbar.h"
+ #include "gtkprivate.h"
+ #include "gtkintl.h"
+@@ -2618,7 +2619,8 @@ gtk_range_adjustment_value_changed (GtkAdjustment *adjustment,
+ gtk_range_calc_layout (range, range->adjustment->value);
+
+ /* now check whether the layout changed */
+- if (layout_changed (range->layout, &layout))
++ if (layout_changed (range->layout, &layout) ||
++ (GTK_IS_SCALE (range) && GTK_SCALE (range)->draw_value))
+ {
+ gtk_widget_queue_draw (GTK_WIDGET (range));
+ /* setup a timer to ensure the range isn't lagging too much behind the scroll position */
+--
+cgit v0.8.3.1
diff --git a/x11-libs/gtk+/files/gtk+-2.20.1-libpixbufloader-warning.patch b/x11-libs/gtk+/files/gtk+-2.20.1-libpixbufloader-warning.patch
new file mode 100644
index 000000000000..d2759b905d83
--- /dev/null
+++ b/x11-libs/gtk+/files/gtk+-2.20.1-libpixbufloader-warning.patch
@@ -0,0 +1,46 @@
+From a6c4833d9a307a1905516fb497dfaf0f141e1c0d Mon Sep 17 00:00:00 2001
+From: Javier Jardón <jjardon@gnome.org>
+Date: Tue, 04 May 2010 13:27:08 +0000
+Subject: Remove the definition of libpixbufloader_gdip_png_la_*
+
+libstatic-pixbufloader-gdip-png.la should not be built or at least not
+included in STATIC_GDIPLUS_LIBS as we don't want to use the GDI+-based
+loader for PNG, because if we do, we can't get (or was it set?) the
+options of a PNG pixbuf that for instance some code in GIMP wants to do.
+
+Fixes https://bugzilla.gnome.org/show_bug.cgi?id=607839
+---
+diff --git a/gdk-pixbuf/Makefile.am b/gdk-pixbuf/Makefile.am
+index cf1769b..52fd710 100644
+--- a/gdk-pixbuf/Makefile.am
++++ b/gdk-pixbuf/Makefile.am
+@@ -244,9 +244,6 @@ libstatic_pixbufloader_gdip_gif_la_SOURCES = \
+ libstatic_pixbufloader_gdip_jpeg_la_SOURCES = \
+ io-gdip-jpeg.c
+
+-libstatic_pixbufloader_gdip_png_la_SOURCES = \
+- io-gdip-png.c
+-
+ libstatic_pixbufloader_gdip_tiff_la_SOURCES = \
+ io-gdip-tiff.c
+
+@@ -327,17 +324,6 @@ libpixbufloader_gdip_jpeg_la_SOURCES = \
+ io-gdip-jpeg.c
+ libpixbufloader_gdip_jpeg_la_LIBADD = $(module_libs) $(libole32)
+
+-libpixbufloader_gdip_png_la_LDFLAGS = -avoid-version -module -no-undefined
+-libpixbufloader_gdip_png_la_SOURCES = \
+- io-gdip-native.h \
+- io-gdip-propertytags.h \
+- io-gdip-utils.h \
+- io-gdip-utils.c \
+- io-gdip-animation.c \
+- io-gdip-animation.h \
+- io-gdip-png.c
+-libpixbufloader_gdip_png_la_LIBADD = $(module_libs) $(libole32)
+-
+ libpixbufloader_gdip_tiff_la_LDFLAGS = -avoid-version -module -no-undefined
+ libpixbufloader_gdip_tiff_la_SOURCES = \
+ io-gdip-native.h \
+--
+cgit v0.8.3.1
diff --git a/x11-libs/gtk+/files/gtk+-2.20.1-libpng-fix.patch b/x11-libs/gtk+/files/gtk+-2.20.1-libpng-fix.patch
new file mode 100644
index 000000000000..5c7332777d09
--- /dev/null
+++ b/x11-libs/gtk+/files/gtk+-2.20.1-libpng-fix.patch
@@ -0,0 +1,49 @@
+commit 006d5718fa927d9d3509fca1a1c1ca6522110b57
+Author: Matthias Clasen <mclasen@redhat.com>
+Date: Wed May 12 15:02:02 2010 -0400
+
+ Another attempt to handle pngs changing int types
+
+diff --git a/gdk-pixbuf/io-png.c b/gdk-pixbuf/io-png.c
+index 43db70a..844064a 100644
+--- a/gdk-pixbuf/io-png.c
++++ b/gdk-pixbuf/io-png.c
+@@ -261,7 +261,7 @@ gdk_pixbuf__png_image_load (FILE *f, GError **error)
+ gchar *icc_profile_base64;
+ const gchar *icc_profile_title;
+ const gchar *icc_profile;
+- gulong icc_profile_size;
++ png_uint_32 icc_profile_size;
+ guint32 retval;
+ gint compression_type;
+
+@@ -344,7 +344,7 @@ gdk_pixbuf__png_image_load (FILE *f, GError **error)
+ (png_charpp) &icc_profile_title, &compression_type,
+ (png_charpp) &icc_profile, (png_uint_32*) &icc_profile_size);
+ if (retval != 0) {
+- icc_profile_base64 = g_base64_encode ((const guchar *) icc_profile, icc_profile_size);
++ icc_profile_base64 = g_base64_encode ((const guchar *) icc_profile, (gsize)icc_profile_size);
+ gdk_pixbuf_set_option (pixbuf, "icc-profile", icc_profile_base64);
+ g_free (icc_profile_base64);
+ }
+@@ -607,7 +607,7 @@ png_info_callback (png_structp png_read_ptr,
+ gchar *icc_profile_base64;
+ const gchar *icc_profile_title;
+ const gchar *icc_profile;
+- gulong icc_profile_size;
++ png_uint_32 icc_profile_size;
+ guint32 retval;
+ gint compression_type;
+
+@@ -679,9 +679,9 @@ png_info_callback (png_structp png_read_ptr,
+ /* Extract embedded ICC profile */
+ retval = png_get_iCCP (png_read_ptr, png_info_ptr,
+ (png_charpp) &icc_profile_title, &compression_type,
+- (png_charpp) &icc_profile, (png_uint_32*) &icc_profile_size);
++ (png_charpp) &icc_profile, &icc_profile_size);
+ if (retval != 0) {
+- icc_profile_base64 = g_base64_encode ((const guchar *) icc_profile, icc_profile_size);
++ icc_profile_base64 = g_base64_encode ((const guchar *) icc_profile, (gsize)icc_profile_size);
+ gdk_pixbuf_set_option (lc->pixbuf, "icc-profile", icc_profile_base64);
+ g_free (icc_profile_base64);
+ }