From 74ffd8d58bb48fdc313aa62b0bf21bb78f9cd425 Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Fri, 30 May 2014 20:58:08 +0200 Subject: [PATCH] Backport two fixes from git master These should fix a gedit crash and incorrect headerbar sizing. --- ...Ensure-controllers-stay-alive-during.patch | 33 +++++++++++ ...-Keep-gtk_misc_set_alignment-working.patch | 57 +++++++++++++++++++ gtk3.spec | 11 +++- 3 files changed, 100 insertions(+), 1 deletion(-) create mode 100644 0001-eventcontroller-Ensure-controllers-stay-alive-during.patch create mode 100644 0002-Revert-GtkMisc-Keep-gtk_misc_set_alignment-working.patch diff --git a/0001-eventcontroller-Ensure-controllers-stay-alive-during.patch b/0001-eventcontroller-Ensure-controllers-stay-alive-during.patch new file mode 100644 index 0000000..9552188 --- /dev/null +++ b/0001-eventcontroller-Ensure-controllers-stay-alive-during.patch @@ -0,0 +1,33 @@ +From 618e3d31570fca577cf374d7b318bc7ca44cadb1 Mon Sep 17 00:00:00 2001 +From: Carlos Garnacho +Date: Wed, 28 May 2014 19:39:07 +0200 +Subject: [PATCH] eventcontroller: Ensure controllers stay alive during event + emission + +Those might trigger the destruction of some widget that would dispose the +event controller while the event is still being handled, so keep an extra +ref on the controller during event processing. +--- + gtk/gtkeventcontroller.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/gtk/gtkeventcontroller.c b/gtk/gtkeventcontroller.c +index b674380..c0b828f 100644 +--- a/gtk/gtkeventcontroller.c ++++ b/gtk/gtkeventcontroller.c +@@ -205,7 +205,11 @@ gtk_event_controller_handle_event (GtkEventController *controller, + controller_class = GTK_EVENT_CONTROLLER_GET_CLASS (controller); + + if (controller_class->handle_event) +- retval = controller_class->handle_event (controller, event); ++ { ++ g_object_ref (controller); ++ retval = controller_class->handle_event (controller, event); ++ g_object_unref (controller); ++ } + + return retval; + } +-- +2.0.0 + diff --git a/0002-Revert-GtkMisc-Keep-gtk_misc_set_alignment-working.patch b/0002-Revert-GtkMisc-Keep-gtk_misc_set_alignment-working.patch new file mode 100644 index 0000000..3882772 --- /dev/null +++ b/0002-Revert-GtkMisc-Keep-gtk_misc_set_alignment-working.patch @@ -0,0 +1,57 @@ +From 489b59867ce752a19d01fa43a86bbcefe6e7d8cf Mon Sep 17 00:00:00 2001 +From: Matthias Clasen +Date: Thu, 29 May 2014 10:30:57 -0400 +Subject: [PATCH] Revert "GtkMisc: Keep gtk_misc_set_alignment working" + +This reverts commit aabc356b80fab025d460f61b6c08743b2c10e20d. + +Labels are back to looking at x/yalign (for now). +--- + gtk/deprecated/gtkmisc.c | 24 ------------------------ + 1 file changed, 24 deletions(-) + +diff --git a/gtk/deprecated/gtkmisc.c b/gtk/deprecated/gtkmisc.c +index ff4db12..303b5e7 100644 +--- a/gtk/deprecated/gtkmisc.c ++++ b/gtk/deprecated/gtkmisc.c +@@ -27,8 +27,6 @@ + #include "gtkmisc.h" + #include "gtkintl.h" + #include "gtkprivate.h" +-#include "gtkimage.h" +-#include "gtklabel.h" + + + G_GNUC_BEGIN_IGNORE_DEPRECATIONS +@@ -234,28 +232,6 @@ gtk_misc_set_alignment (GtkMisc *misc, + + priv = misc->priv; + +- if (GTK_IS_LABEL (misc) || GTK_IS_IMAGE (misc)) +- { +- GtkAlign halign, valign; +- +- if (xalign < 0.4) +- halign = GTK_ALIGN_START; +- else if (xalign > 0.6) +- halign = GTK_ALIGN_END; +- else +- halign = GTK_ALIGN_CENTER; +- +- if (yalign < 0.4) +- valign = GTK_ALIGN_START; +- else if (yalign > 0.6) +- valign = GTK_ALIGN_END; +- else +- valign = GTK_ALIGN_CENTER; +- +- gtk_widget_set_halign (GTK_WIDGET (misc), halign); +- gtk_widget_set_valign (GTK_WIDGET (misc), valign); +- } +- + if (xalign < 0.0) + xalign = 0.0; + else if (xalign > 1.0) +-- +2.0.0 + diff --git a/gtk3.spec b/gtk3.spec index 976a027..2c72c1c 100644 --- a/gtk3.spec +++ b/gtk3.spec @@ -17,13 +17,17 @@ Summary: The GIMP ToolKit (GTK+), a library for creating GUIs for X Name: gtk3 Version: 3.13.2 -Release: 1%{?dist} +Release: 2%{?dist} License: LGPLv2+ Group: System Environment/Libraries URL: http://www.gtk.org #VCS: git:git://git.gnome.org/gtk+ Source: http://download.gnome.org/sources/gtk+/3.13/gtk+-%{version}.tar.xz +# Backports from git master +Patch1: 0001-eventcontroller-Ensure-controllers-stay-alive-during.patch +Patch2: 0002-Revert-GtkMisc-Keep-gtk_misc_set_alignment-working.patch + BuildRequires: gnome-common autoconf automake intltool gettext BuildRequires: atk-devel >= %{atk_version} BuildRequires: at-spi2-atk-devel @@ -138,6 +142,8 @@ the functionality of the installed %{name} package. %prep %setup -q -n gtk+-%{version} +%patch1 -p1 +%patch2 -p1 %build @@ -303,6 +309,9 @@ gtk-query-immodules-3.0-%{__isa_bits} --update-cache %{_datadir}/installed-tests %changelog +* Fri May 30 2014 Kalev Lember - 3.13.2-2 +- Backport two fixes from git master + * Wed May 28 2014 Kalev Lember - 3.13.2-1 - Update to 3.13.2