Accepting request 74759 from home:vuntz:branches:GNOME:Factory

Make empathy usable again with two patches in gtk3

OBS-URL: https://build.opensuse.org/request/show/74759
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gtk3?expand=0&rev=45
This commit is contained in:
Dominique Leuenberger 2011-06-28 10:35:27 +00:00 committed by Git OBS Bridge
parent e308f9dd4e
commit 6e4efb3536
4 changed files with 79 additions and 0 deletions

View File

@ -0,0 +1,46 @@
commit 1687127d7c791fcfc40e7cc22fc785a96b2076d9
Author: Vincent Untz <vuntz@gnome.org>
Date: Tue Jun 28 11:47:37 2011 +0200
gtkbox: Invalidate order on changes, even if the child is not visible
When we build the sibling path for the order, we do not skip hidden
children (since, quoting the comment, "we cannot reliably detect changes
in widget visibility"). So we need to invalidate the order when hidden
children are reordered and removed.
https://bugzilla.gnome.org/show_bug.cgi?id=652769
diff --git a/gtk/gtkbox.c b/gtk/gtkbox.c
index f97a80d..b711a52 100644
--- a/gtk/gtkbox.c
+++ b/gtk/gtkbox.c
@@ -1612,10 +1612,12 @@ gtk_box_reorder_child (GtkBox *box,
priv->children = g_list_insert_before (priv->children, new_link, child_info);
gtk_widget_child_notify (child, "position");
+
+ gtk_box_invalidate_order (box);
+
if (gtk_widget_get_visible (child)
&& gtk_widget_get_visible (GTK_WIDGET (box)))
{
- gtk_box_invalidate_order (box);
gtk_widget_queue_resize (child);
}
}
@@ -1799,12 +1801,13 @@ gtk_box_remove (GtkContainer *container,
g_list_free (children);
g_free (child);
+ gtk_box_invalidate_order (box);
+
/* queue resize regardless of gtk_widget_get_visible (container),
* since that's what is needed by toplevels.
*/
if (was_visible)
{
- gtk_box_invalidate_order (box);
gtk_widget_queue_resize (GTK_WIDGET (container));
}

19
gtk3-fix-crash.patch Normal file
View File

@ -0,0 +1,19 @@
commit c903ece96be6b307eb756430f0b0b9acfca4dbae
Author: Juan A. Suarez Romero <jasuarez@igalia.com>
Date: Tue Jun 14 09:49:23 2011 +0000
image: Initialize variable
diff --git a/gtk/gtkimage.c b/gtk/gtkimage.c
index 821f98c..6fbb718 100644
--- a/gtk/gtkimage.c
+++ b/gtk/gtkimage.c
@@ -1499,7 +1499,7 @@ ensure_stated_icon_from_info (GtkImage *image,
{
GtkImagePrivate *priv = image->priv;
GtkStyleContext *context;
- GdkPixbuf *destination;
+ GdkPixbuf *destination = NULL;
gboolean symbolic;
context = gtk_widget_get_style_context (GTK_WIDGET (image));

View File

@ -1,3 +1,11 @@
-------------------------------------------------------------------
Tue Jun 28 11:52:32 CEST 2011 - vuntz@opensuse.org
- Add gtk3-fix-100-empathy.patch to fix empathy taking 100% of the
CPU.
- Add gtk3-fix-crash.patch to fix a crash in empathy, when opening
the context menu for a contact.
-------------------------------------------------------------------
Thu Jun 16 19:31:53 CEST 2011 - vuntz@opensuse.org

View File

@ -42,6 +42,10 @@ Patch1: gtk3-path-local.patch
Patch2: gtk3-bnc129753-localize-font-style-name.patch
# PATCH-FIX-UPSTREAM gtk3-bnc130159-bgo319483-async-font-selection.patch bnc130159 bgo319483 federico@novell.com - Load fonts asynchronously in GtkFontSelection to make it appear faster for CJK languages
Patch3: gtk3-bnc130159-bgo319483-async-font-selection.patch
# PATCH-FIX-UPSTREAM gtk3-fix-100-empathy.patch bgo#652769 vuntz@opensuse.org -- Fix empathy taking 100% of the CPU, submitted upstream
Patch4: gtk3-fix-100-empathy.patch
# PATCH-FIX-UPSTREAM gtk3-fix-crash.patch vuntz@opensuse.org -- Initialize a variable to fix a crash in empathy
Patch5: gtk3-fix-crash.patch
BuildRequires: fdupes
BuildRequires: cups-devel
BuildRequires: gnome-patch-translation
@ -279,6 +283,8 @@ cp -a %{S:1} .
%patch1 -p0
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
gnome-patch-translation-update
%build