From d776d7658f7d1e5b51444f287638e3231a11fca8903c61e566046569b402478f Mon Sep 17 00:00:00 2001
From: OBS User buildservice-autocommit <null@suse.de>
Date: Fri, 15 Oct 2010 11:50:05 +0000
Subject: [PATCH] Updating link to change in openSUSE:Factory/gtk3 revision 5.0

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gtk3?expand=0&rev=6a50de89c982247aa793f78ebc0152a9
---
 baselibs.conf                |  97 ++++++++++-
 gtk+-2.90.7.tar.bz2          |   3 -
 gtk+-2.91.0.tar.bz2          |   3 +
 gtk3-no-gtkapplication.patch | 179 ---------------------
 gtk3.changes                 | 101 ++++++++++++
 gtk3.spec                    | 301 ++++++++++++++++++++++++++++++-----
 macros.gtk3                  |  28 ++--
 7 files changed, 472 insertions(+), 240 deletions(-)
 delete mode 100644 gtk+-2.90.7.tar.bz2
 create mode 100644 gtk+-2.91.0.tar.bz2
 delete mode 100644 gtk3-no-gtkapplication.patch

diff --git a/baselibs.conf b/baselibs.conf
index b7dc674..6308249 100644
--- a/baselibs.conf
+++ b/baselibs.conf
@@ -1,6 +1,99 @@
 gtk3-tools
   +/usr/bin/gtk-query-immodules-3.0(-64)?
-  post "if [ $1 == 1 ]; then test -d %{_libdir}/gtk-3.0/3.0.0; if test $? -eq 0; then %{_bindir}/gtk-query-immodules-3.0 --update-cache; fi; fi"
+  post "%if "%_lib" == "lib64""
+  post "if [ $1 == 1 ]; then test -d <prefix>%{_libdir}/gtk-3.0/3.0.0; if test $? -eq 0; then <prefix>%{_bindir}/gtk-query-immodules-3.0-64 --update-cache; fi; fi"
+  post "%else"
+  post "if [ $1 == 1 ]; then test -d <prefix>%{_libdir}/gtk-3.0/3.0.0; if test $? -eq 0; then <prefix>%{_bindir}/gtk-query-immodules-3.0 --update-cache; fi; fi"
+  post "%endif"
 libgtk-3_0-0
+  requires "gtk3-tools-<targettype>"
   provides "gtk3-<targettype> = <version>"
-  post "if test -f %{_bindir}/gtk-query-immodules-3.0; then %{_bindir}/gtk-query-immodules-3.0 --update-cache; fi"
+  post "%if "%_lib" == "lib64""
+  post "if test -f <prefix>%{_bindir}/gtk-query-immodules-3.0-64; then <prefix>%{_bindir}/gtk-query-immodules-3.0-64 --update-cache; fi"
+  post "%else"
+  post "if test -f <prefix>%{_bindir}/gtk-query-immodules-3.0; then <prefix>%{_bindir}/gtk-query-immodules-3.0 --update-cache; fi"
+  post "%endif"
+gtk3-immodule-amharic
+  requires "gtk3-<targettype>"
+  post "%if "%_lib" == "lib64""
+  post "<prefix>%{_bindir}/gtk-query-immodules-3.0-64 --update-cache"
+  post "%else"
+  post "<prefix>%{_bindir}/gtk-query-immodules-3.0 --update-cache"
+  post "%endif"
+  postun "%if "%_lib" == "lib64""
+  postun "<prefix>%{_bindir}/gtk-query-immodules-3.0-64 --update-cache"
+  postun "%else"
+  postun "<prefix>%{_bindir}/gtk-query-immodules-3.0 --update-cache"
+  postun "%endif"
+gtk3-immodule-inuktitut
+  requires "gtk3-<targettype>"
+  post "%if "%_lib" == "lib64""
+  post "<prefix>%{_bindir}/gtk-query-immodules-3.0-64 --update-cache"
+  post "%else"
+  post "<prefix>%{_bindir}/gtk-query-immodules-3.0 --update-cache"
+  post "%endif"
+  postun "%if "%_lib" == "lib64""
+  postun "<prefix>%{_bindir}/gtk-query-immodules-3.0-64 --update-cache"
+  postun "%else"
+  postun "<prefix>%{_bindir}/gtk-query-immodules-3.0 --update-cache"
+  postun "%endif"
+gtk3-immodule-multipress
+  requires "gtk3-<targettype>"
+  post "%if "%_lib" == "lib64""
+  post "<prefix>%{_bindir}/gtk-query-immodules-3.0-64 --update-cache"
+  post "%else"
+  post "<prefix>%{_bindir}/gtk-query-immodules-3.0 --update-cache"
+  post "%endif"
+  postun "%if "%_lib" == "lib64""
+  postun "<prefix>%{_bindir}/gtk-query-immodules-3.0-64 --update-cache"
+  postun "%else"
+  postun "<prefix>%{_bindir}/gtk-query-immodules-3.0 --update-cache"
+  postun "%endif"
+gtk3-immodule-thai
+  requires "gtk3-<targettype>"
+  post "%if "%_lib" == "lib64""
+  post "<prefix>%{_bindir}/gtk-query-immodules-3.0-64 --update-cache"
+  post "%else"
+  post "<prefix>%{_bindir}/gtk-query-immodules-3.0 --update-cache"
+  post "%endif"
+  postun "%if "%_lib" == "lib64""
+  postun "<prefix>%{_bindir}/gtk-query-immodules-3.0-64 --update-cache"
+  postun "%else"
+  postun "<prefix>%{_bindir}/gtk-query-immodules-3.0 --update-cache"
+  postun "%endif"
+gtk3-immodules-tigrigna
+  requires "gtk3-<targettype>"
+  post "%if "%_lib" == "lib64""
+  post "<prefix>%{_bindir}/gtk-query-immodules-3.0-64 --update-cache"
+  post "%else"
+  post "<prefix>%{_bindir}/gtk-query-immodules-3.0 --update-cache"
+  post "%endif"
+  postun "%if "%_lib" == "lib64""
+  postun "<prefix>%{_bindir}/gtk-query-immodules-3.0-64 --update-cache"
+  postun "%else"
+  postun "<prefix>%{_bindir}/gtk-query-immodules-3.0 --update-cache"
+  postun "%endif"
+gtk3-immodule-vietnamese
+  requires "gtk3-<targettype>"
+  post "%if "%_lib" == "lib64""
+  post "<prefix>%{_bindir}/gtk-query-immodules-3.0-64 --update-cache"
+  post "%else"
+  post "<prefix>%{_bindir}/gtk-query-immodules-3.0 --update-cache"
+  post "%endif"
+  postun "%if "%_lib" == "lib64""
+  postun "<prefix>%{_bindir}/gtk-query-immodules-3.0-64 --update-cache"
+  postun "%else"
+  postun "<prefix>%{_bindir}/gtk-query-immodules-3.0 --update-cache"
+  postun "%endif"
+gtk3-immodule-xim
+  requires "gtk3-<targettype>"
+  post "%if "%_lib" == "lib64""
+  post "<prefix>%{_bindir}/gtk-query-immodules-3.0-64 --update-cache"
+  post "%else"
+  post "<prefix>%{_bindir}/gtk-query-immodules-3.0 --update-cache"
+  post "%endif"
+  postun "%if "%_lib" == "lib64""
+  postun "<prefix>%{_bindir}/gtk-query-immodules-3.0-64 --update-cache"
+  postun "%else"
+  postun "<prefix>%{_bindir}/gtk-query-immodules-3.0 --update-cache"
+  postun "%endif"
diff --git a/gtk+-2.90.7.tar.bz2 b/gtk+-2.90.7.tar.bz2
deleted file mode 100644
index e31b467..0000000
--- a/gtk+-2.90.7.tar.bz2
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:ff8bff6a422c3e8dadfc4bc1448d5e63b1de0a244eb51a8edd33cfe6f06cc2aa
-size 16921313
diff --git a/gtk+-2.91.0.tar.bz2 b/gtk+-2.91.0.tar.bz2
new file mode 100644
index 0000000..453c3e9
--- /dev/null
+++ b/gtk+-2.91.0.tar.bz2
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:694e887b946a3aa28af10f776bc6f79bc566d0e1be679783d4e7469bc728aeac
+size 16898729
diff --git a/gtk3-no-gtkapplication.patch b/gtk3-no-gtkapplication.patch
deleted file mode 100644
index 7bb3090..0000000
--- a/gtk3-no-gtkapplication.patch
+++ /dev/null
@@ -1,179 +0,0 @@
-Index: gtk+-2.90.7/gtk/Makefile.am
-===================================================================
---- gtk+-2.90.7.orig/gtk/Makefile.am
-+++ gtk+-2.90.7/gtk/Makefile.am
-@@ -158,7 +158,6 @@ gtk_public_h_sources =          \
- 	gtkactivatable.h	\
- 	gtkadjustment.h		\
- 	gtkalignment.h		\
--	gtkapplication.h    \
- 	gtkarrow.h		\
- 	gtkaspectframe.h	\
- 	gtkassistant.h		\
-@@ -418,7 +417,6 @@ gtk_base_c_sources =            \
- 	gtkactivatable.c	\
- 	gtkadjustment.c		\
- 	gtkalignment.c		\
--	gtkapplication.c \
- 	gtkarrow.c		\
- 	gtkaspectframe.c	\
- 	gtkassistant.c		\
-Index: gtk+-2.90.7/gtk/Makefile.in
-===================================================================
---- gtk+-2.90.7.orig/gtk/Makefile.in
-+++ gtk+-2.90.7/gtk/Makefile.in
-@@ -120,7 +120,7 @@ am__libgtk_quartz_3_0_la_SOURCES_DIST =
- 	gtksearchenginesimple.c fnmatch.c gtkaboutdialog.c \
- 	gtkaccelgroup.c gtkaccellabel.c gtkaccelmap.c gtkaccessible.c \
- 	gtkaction.c gtkactiongroup.c gtkactivatable.c gtkadjustment.c \
--	gtkalignment.c gtkapplication.c gtkarrow.c gtkaspectframe.c \
-+	gtkalignment.c gtkarrow.c gtkaspectframe.c \
- 	gtkassistant.c gtkbbox.c gtkbin.c gtkbindings.c gtkbox.c \
- 	gtkbuildable.c gtkbuilder.c gtkbuilderparser.c gtkbutton.c \
- 	gtkcalendar.c gtkcelleditable.c gtkcelllayout.c \
-@@ -201,7 +201,7 @@ am__objects_2 = gtkquery.lo gtksearcheng
- 	gtkaccelgroup.lo gtkaccellabel.lo gtkaccelmap.lo \
- 	gtkaccessible.lo gtkaction.lo gtkactiongroup.lo \
- 	gtkactivatable.lo gtkadjustment.lo gtkalignment.lo \
--	gtkapplication.lo gtkarrow.lo gtkaspectframe.lo \
-+	gtkarrow.lo gtkaspectframe.lo \
- 	gtkassistant.lo gtkbbox.lo gtkbin.lo gtkbindings.lo gtkbox.lo \
- 	gtkbuildable.lo gtkbuilder.lo gtkbuilderparser.lo gtkbutton.lo \
- 	gtkcalendar.lo gtkcelleditable.lo gtkcelllayout.lo \
-@@ -304,7 +304,7 @@ am__libgtk_win32_3_0_la_SOURCES_DIST = g
- 	gtksearchenginesimple.c fnmatch.c gtkaboutdialog.c \
- 	gtkaccelgroup.c gtkaccellabel.c gtkaccelmap.c gtkaccessible.c \
- 	gtkaction.c gtkactiongroup.c gtkactivatable.c gtkadjustment.c \
--	gtkalignment.c gtkapplication.c gtkarrow.c gtkaspectframe.c \
-+	gtkalignment.c gtkarrow.c gtkaspectframe.c \
- 	gtkassistant.c gtkbbox.c gtkbin.c gtkbindings.c gtkbox.c \
- 	gtkbuildable.c gtkbuilder.c gtkbuilderparser.c gtkbutton.c \
- 	gtkcalendar.c gtkcelleditable.c gtkcelllayout.c \
-@@ -387,7 +387,7 @@ am__libgtk_x11_3_0_la_SOURCES_DIST = gtk
- 	gtksearchenginesimple.c fnmatch.c gtkaboutdialog.c \
- 	gtkaccelgroup.c gtkaccellabel.c gtkaccelmap.c gtkaccessible.c \
- 	gtkaction.c gtkactiongroup.c gtkactivatable.c gtkadjustment.c \
--	gtkalignment.c gtkapplication.c gtkarrow.c gtkaspectframe.c \
-+	gtkalignment.c gtkarrow.c gtkaspectframe.c \
- 	gtkassistant.c gtkbbox.c gtkbin.c gtkbindings.c gtkbox.c \
- 	gtkbuildable.c gtkbuilder.c gtkbuilderparser.c gtkbutton.c \
- 	gtkcalendar.c gtkcelleditable.c gtkcelllayout.c \
-@@ -910,7 +910,6 @@ gtk_public_h_sources = \
- 	gtkactivatable.h	\
- 	gtkadjustment.h		\
- 	gtkalignment.h		\
--	gtkapplication.h    \
- 	gtkarrow.h		\
- 	gtkaspectframe.h	\
- 	gtkassistant.h		\
-@@ -1142,7 +1141,6 @@ gtk_base_c_sources = \
- 	gtkactivatable.c	\
- 	gtkadjustment.c		\
- 	gtkalignment.c		\
--	gtkapplication.c \
- 	gtkarrow.c		\
- 	gtkaspectframe.c	\
- 	gtkassistant.c		\
-@@ -1947,7 +1945,6 @@ distclean-compile:
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gtkactivatable.Plo@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gtkadjustment.Plo@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gtkalignment.Plo@am__quote@
--@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gtkapplication.Plo@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gtkarrow.Plo@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gtkaspectframe.Plo@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gtkassistant.Plo@am__quote@
-Index: gtk+-2.90.7/gtk/gtk.h
-===================================================================
---- gtk+-2.90.7.orig/gtk/gtk.h
-+++ gtk+-2.90.7/gtk/gtk.h
-@@ -40,7 +40,6 @@
- #include <gtk/gtkactivatable.h>
- #include <gtk/gtkadjustment.h>
- #include <gtk/gtkalignment.h>
--#include <gtk/gtkapplication.h>
- #include <gtk/gtkarrow.h>
- #include <gtk/gtkaspectframe.h>
- #include <gtk/gtkassistant.h>
-Index: gtk+-2.90.7/gtk/tests/defaultvalue.c
-===================================================================
---- gtk+-2.90.7.orig/gtk/tests/defaultvalue.c
-+++ gtk+-2.90.7/gtk/tests/defaultvalue.c
-@@ -75,7 +75,7 @@ test_type (gconstpointer data)
- 
-   /* These can't be freely constructed/destroyed */
-   if (g_type_is_a (type, GTK_TYPE_PRINT_JOB) ||
--      g_type_is_a (type, GTK_TYPE_APPLICATION) ||
-+      /* g_type_is_a (type, GTK_TYPE_APPLICATION) || */
-       g_type_is_a (type, GDK_TYPE_PIXBUF_LOADER) ||
-       g_type_is_a (type, gdk_pixbuf_simple_anim_iter_get_type ()))
-     return;
-Index: gtk+-2.90.7/gtk/tests/Makefile.am
-===================================================================
---- gtk+-2.90.7.orig/gtk/tests/Makefile.am
-+++ gtk+-2.90.7/gtk/tests/Makefile.am
-@@ -92,7 +92,7 @@ TEST_PROGS			+= action
- action_SOURCES			 = action.c
- action_LDADD			 = $(progs_ldadd)
- 
--SAMPLE_PROGS = gtk-example-application
-+#SAMPLE_PROGS = gtk-example-application
- gtk_example_application_SOURCES	= gtk-example-application.c
- gtk_example_application_LDADD	= $(progs_ldadd)
- 
-Index: gtk+-2.90.7/gtk/tests/Makefile.in
-===================================================================
---- gtk+-2.90.7.orig/gtk/tests/Makefile.in
-+++ gtk+-2.90.7/gtk/tests/Makefile.in
-@@ -56,7 +56,7 @@ am__EXEEXT_2 = testing$(EXEEXT) liststor
- 	recentmanager$(EXEEXT) floating$(EXEEXT) object$(EXEEXT) \
- 	builder$(EXEEXT) $(am__EXEEXT_1) textbuffer$(EXEEXT) \
- 	filtermodel$(EXEEXT) expander$(EXEEXT) action$(EXEEXT)
--am__EXEEXT_3 = gtk-example-application$(EXEEXT)
-+#am__EXEEXT_3 = gtk-example-application$(EXEEXT)
- PROGRAMS = $(noinst_PROGRAMS)
- am_action_OBJECTS = action.$(OBJEXT)
- action_OBJECTS = $(am_action_OBJECTS)
-@@ -474,7 +474,7 @@ expander_SOURCES = expander.c
- expander_LDADD = $(progs_ldadd)
- action_SOURCES = action.c
- action_LDADD = $(progs_ldadd)
--SAMPLE_PROGS = gtk-example-application
-+#SAMPLE_PROGS = gtk-example-application
- gtk_example_application_SOURCES = gtk-example-application.c
- gtk_example_application_LDADD = $(progs_ldadd)
- all: all-am
-Index: gtk+-2.90.7/tests/Makefile.am
-===================================================================
---- gtk+-2.90.7.orig/tests/Makefile.am
-+++ gtk+-2.90.7/tests/Makefile.am
-@@ -93,7 +93,7 @@ noinst_PROGRAMS =  $(TEST_PROGS)	\
- 	testwrapbox
- 
- if USE_X11
--noinst_PROGRAMS += testapplication
-+#noinst_PROGRAMS += testapplication
- endif
- 
- if HAVE_CXX
-Index: gtk+-2.90.7/tests/Makefile.in
-===================================================================
---- gtk+-2.90.7.orig/tests/Makefile.in
-+++ gtk+-2.90.7/tests/Makefile.in
-@@ -69,7 +69,7 @@ noinst_PROGRAMS = $(am__EXEEXT_1) simple
- 	testtooltips$(EXEEXT) testexpander$(EXEEXT) \
- 	testvolumebutton$(EXEEXT) testwrapbox$(EXEEXT) $(am__EXEEXT_3) \
- 	$(am__EXEEXT_4)
--@USE_X11_TRUE@am__append_1 = testapplication
-+#@USE_X11_TRUE@am__append_1 = testapplication
- @HAVE_CXX_TRUE@am__append_2 = autotestkeywords
- @HAVE_CXX_TRUE@TESTS = autotestkeywords$(EXEEXT)
- @HAVE_CXX_TRUE@@HAVE_OBJC_TRUE@am__append_3 = -DHAVE_OBJC=1 -x objective-c++
-@@ -86,7 +86,7 @@ CONFIG_CLEAN_VPATH_FILES =
- am__EXEEXT_1 =
- @USE_X11_TRUE@am__EXEEXT_2 = testsocket$(EXEEXT) \
- @USE_X11_TRUE@	testsocket_child$(EXEEXT)
--@USE_X11_TRUE@am__EXEEXT_3 = testapplication$(EXEEXT)
-+#@USE_X11_TRUE@am__EXEEXT_3 = testapplication$(EXEEXT)
- @HAVE_CXX_TRUE@am__EXEEXT_4 = autotestkeywords$(EXEEXT)
- PROGRAMS = $(noinst_PROGRAMS)
- am__autotestkeywords_SOURCES_DIST = autotestkeywords.cc
diff --git a/gtk3.changes b/gtk3.changes
index 6049e9a..41c2a89 100644
--- a/gtk3.changes
+++ b/gtk3.changes
@@ -1,3 +1,104 @@
+-------------------------------------------------------------------
+Wed Oct 13 20:24:01 CEST 2010 - vuntz@opensuse.org
+
+- Change hicolor-icon-theme Recommends to a Requires in
+  libgtk-3-0_0 since we need to make sure it gets installed, and
+  libgtk-3-0_0 is low-level enough for this.
+- Put comments that are in the scriptlets area of the spec file in
+  "%if 0" statement: if we don't do that, they actually end up in
+  the scriplets and can even make them fail if the scriptlets were
+  just "-p /sbin/ldconfig".
+
+-------------------------------------------------------------------
+Mon Oct 11 13:44:31 CEST 2010 - vuntz@opensuse.org
+
+- Split input methods in subpackages:
+  + Create gtk3-immodule-amharic, gtk3-immodule-inuktitut,
+    gtk3-immodule-multipress, gtk3-immodule-thai,
+    gtk3-immodules-tigrigna, gtk3-immodule-vietnamese,
+    gtk3-immodule-xim subpackages. For the modules that are useful
+    for specific locales, we use a locale(gtk3:$locale) Provides to
+    make those packages installed by default when the locale is
+    used.
+  + Add Recommends to libgtk-3_0-0 for gtk3-immodule-amharic,
+    gtk3-immodule-inuktitut, gtk3-immodule-thai,
+    gtk3-immodules-tigrigna, gtk3-immodule-vietnamese. This makes
+    sense since this helps people discover them without having to
+    look for them.
+  + gtk3-immodule-multipress is not useful by default.
+  + gtk3-immodule-xim is creating performance issues, so we don't
+    want it by default.
+  + Fix bnc#629995.
+- Make the gtk3-data package own the directories of the themes,
+  instead of just the files.
+- Move the ferret module to the devel package: it's useful for
+  tests, but not in general.
+- Update the %gtk3_immodule_post and %gtk3_immodule_postun macros
+  to use --update-cache instead of redirecting the output to a
+  file. That's more solid.
+- Remove gtk3-tools Requires(postun) in libgtk-3_0-0: it's not
+  needed.
+- Do not version the Recommends on the lang package.
+- Update baselibs.conf to remove assumption in the scriptlets of
+  the generated packages that they are 32bit packages.
+- Use <prefix> in baselibs.conf since we use full paths there, and
+  this is needed for x86 packages that put files in
+  /emul/ia32-linux.
+
+-------------------------------------------------------------------
+Tue Oct  5 09:49:22 CEST 2010 - vuntz@opensuse.org
+
+- Update to version 2.91.0:
+  + The rendering cleanup work has landed. This is a large change
+    that affects many APIs.
+    - All gtkstyle functions have been changed to take a cairo_t
+      argument instead of a window + area.
+    - GdkPixmap is gone. APIs that took pixmaps are being replaced
+      by ones that take pixbufs or cairo surfaces, or regions
+      (where pixmaps were used as masks). In background handling,
+      pixmaps have been replaced by cairo patterns, see
+      gdk_window_set_background_pattern().
+    - GdkColormap is gone. It is replaced by visuals, see
+      gtk_widget_set_visual().
+    - The ::expose-event signal on GtkWidget has been replaced by a
+      ::draw signal.
+    - gtk_widget_get_snapshot() has been removed. Instead,
+      gtk_widget_draw() can render a widget onto an cairo_t.
+  + The GtkSizeRequest interface has been merged into GtkWidget,
+    and GtkCellSizeRequest has been merged into GtkCellRenderer.
+    The wrapper functions have been renamed to include 'preferred',
+    e.g gtk_size_request_get_width() is now
+    gtk_widget_get_preferred_width() and
+    gtk_cell_size_request_get_width_for_height() is now
+    gtk_cell_renderer_get_preferred_width_for_height().
+  + GtkObject has been removed. The ::destroy signal has been moved
+    to GtkWidget. At the same time, GtkWidgetFlags have been
+    removed, they already had getters and setters anyway.
+  + GtkWidget has gained generic alignment and padding properties:
+    halign, valign, margin-left, margin-right, margin-top,
+    margin-bottom. These can be used instead of container-specific
+    child properties or GtkMisc and GtkAlignment widgets.
+  + Container widgets can now let GTK+ handle border-width for
+    them, using gtk_container_class_handle_border_width()
+  + The GtkEditableClass struct has been renamed to
+    GtkEditableInterface
+  + Mouse wheel scrolling has been removed from GtkNotebook
+  + The default policy for scrolled windows has been changed to
+    'automatic'
+  + Global url hooks have been removed from GtkAboutDialog and
+    GtkLinkButton
+  + The global window creation hook has been removed from
+    GtkNotebook
+  + The error handling in GDK has been modernized and avoids
+    synchronizing X requests as much as possible
+  + Fixed Bugs: bgo#323904, bgo#339745, bgo#468672, bgo#486839,
+    bgo#601731, bgo#617316, bgo#621590, bgo#623664, bgo#628829,
+    bgo#629177, bgo#629277, bgo#629387, bgo#629598, bgo#629608,
+    bgo#629733, bgo#629748, bgo#629785, bgo#630033, bgo#630226,
+    bgo#630520, bgo#630521, bgo#630532.
+  + Updated translations.
+- Drop gtk3-no-gtkapplication.patch: we have glib 2.27.0 now.
+
 -------------------------------------------------------------------
 Sat Sep 18 12:35:00 CEST 2010 - vuntz@opensuse.org
 
diff --git a/gtk3.spec b/gtk3.spec
index 73a9493..f37892a 100644
--- a/gtk3.spec
+++ b/gtk3.spec
@@ -1,5 +1,5 @@
 #
-# spec file for package gtk3 (Version 2.90.7)
+# spec file for package gtk3 (Version 2.91.0)
 #
 # Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
 # Copyright (c) 2010 Dominique Leuenebrger, Amsterdam, Netherlands
@@ -17,12 +17,15 @@
 #
 
 
+# When updating the binary version, do not forget to also update baselibs.conf
+%define gtk_binary_version 3.0.0
 
 Name:           gtk3
 %define _name gtk+
-Version:        2.90.7
+Version:        2.91.0
 Release:        1
 # FIXME: 2.90.5 doesn't compile with parallel build (bgo#624304). Check if this is still true for later versions.
+# FIXME: once https://bugzilla.gnome.org/show_bug.cgi?id=631872 is fixed, distribute README.multipress
 License:        LGPLv2.1+
 Summary:        The GTK+ toolkit library (version 3)
 Url:            http://www.gtk.org/
@@ -40,8 +43,6 @@ 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-OPENSUSE gtk3-no-gtkapplication.patch vuntz@opensuse.org -- Drop GtkApplication. This is needed to keep gtk3 building against glib 2.25/2.26
-Patch4:         gtk3-no-gtkapplication.patch
 BuildRequires:  fdupes
 BuildRequires:  cups-devel
 BuildRequires:  gnome-patch-translation
@@ -72,22 +73,147 @@ ranging from small one-off projects to complete application suites.
 License:        LGPLv2.1+
 Summary:        The GTK+ toolkit library (version 3)
 Group:          System/Libraries
-# Provide %{name} to make the lang package installable
-Provides:       %{name} = %{version}
 Requires(post): %{name}-tools
-Requires(postun): %{name}-tools
+# While hicolor is not a Requires strictly speaking, we put it as
+# such instead of as a Recommends because many applications just
+# assume it's there and we need to have a low-level package to
+# bring it in.
+Requires:       hicolor-icon-theme
 # gtk+ can work without branding/data/translations. Built in defaults will be used then.
 Recommends:     %{name}-branding
 Recommends:     %{name}-data = %{version}
-Recommends:     %{name}-lang = %{version}
+# it's nice to have input modules for various locales installed by default
+Recommends:     %{name}-immodule-amharic = %{version}
+Recommends:     %{name}-immodule-inuktitut = %{version}
+Recommends:     %{name}-immodule-thai = %{version}
+Recommends:     %{name}-immodule-tigrigna = %{version}
+Recommends:     %{name}-immodule-vietnamese = %{version}
+Recommends:     %{name}-lang
 Recommends:     gvfs
-Recommends:     hicolor-icon-theme
+# Provide %{name} to make the lang and immodules packages installable
+Provides:       %{name} = %{version}
 
 %description -n libgtk-3_0-0
 GTK+ is a multi-platform toolkit for creating graphical user interfaces.
 Offering a complete set of widgets, GTK+ is suitable for projects
 ranging from small one-off projects to complete application suites.
 
+%package immodule-amharic
+License:        LGPLv2.1+
+Summary:        The GTK+ toolkit library (version 3) -- Amharic Input Method
+Group:          System/Libraries
+Requires:       %{name} = %{version}
+Requires(post): %{name}-tools
+Requires(postun): %{name}-tools
+Provides:       locale(%{name}:am)
+
+%description immodule-amharic
+GTK+ is a multi-platform toolkit for creating graphical user interfaces.
+Offering a complete set of widgets, GTK+ is suitable for projects
+ranging from small one-off projects to complete application suites.
+
+This package provides an input method for Amharic.
+
+%package immodule-inuktitut
+License:        LGPLv2.1+
+Summary:        The GTK+ toolkit library (version 3) -- Inuktitut Input Method
+Group:          System/Libraries
+Requires:       %{name} = %{version}
+Requires(post): %{name}-tools
+Requires(postun): %{name}-tools
+Provides:       locale(%{name}:iu)
+
+%description immodule-inuktitut
+GTK+ is a multi-platform toolkit for creating graphical user interfaces.
+Offering a complete set of widgets, GTK+ is suitable for projects
+ranging from small one-off projects to complete application suites.
+
+This package provides an input method for Inuktitut.
+
+%package immodule-multipress
+License:        LGPLv2.1+
+Summary:        The GTK+ toolkit library (version 3) -- Multipress Input Method
+Group:          System/Libraries
+Requires:       %{name} = %{version}
+Requires(post): %{name}-tools
+Requires(postun): %{name}-tools
+
+%description immodule-multipress
+GTK+ is a multi-platform toolkit for creating graphical user interfaces.
+Offering a complete set of widgets, GTK+ is suitable for projects
+ranging from small one-off projects to complete application suites.
+
+This package provides an input method which allows text entry via the
+multi-press method, as on a mobile phone.
+
+%package immodule-thai
+License:        LGPLv2.1+
+Summary:        The GTK+ toolkit library (version 3) -- Thai-Lao Input Method
+Group:          System/Libraries
+Requires:       %{name} = %{version}
+Requires(post): %{name}-tools
+Requires(postun): %{name}-tools
+Provides:       locale(%{name}:lo)
+Provides:       locale(%{name}:th)
+
+%description immodule-thai
+GTK+ is a multi-platform toolkit for creating graphical user interfaces.
+Offering a complete set of widgets, GTK+ is suitable for projects
+ranging from small one-off projects to complete application suites.
+
+This package provides an input method for Thai-Lao.
+
+%package immodules-tigrigna
+License:        LGPLv2.1+
+Summary:        The GTK+ toolkit library (version 3) -- Tigrigna Input Methods
+Group:          System/Libraries
+Requires:       %{name} = %{version}
+Requires(post): %{name}-tools
+Requires(postun): %{name}-tools
+Provides:       locale(%{name}:ti)
+
+%description immodules-tigrigna
+GTK+ is a multi-platform toolkit for creating graphical user interfaces.
+Offering a complete set of widgets, GTK+ is suitable for projects
+ranging from small one-off projects to complete application suites.
+
+This package provides two input methods for Tigrigna.
+
+%package immodule-vietnamese
+License:        LGPLv2.1+
+Summary:        The GTK+ toolkit library (version 3) -- Vietnamese Input Method
+Group:          System/Libraries
+Requires:       %{name} = %{version}
+Requires(post): %{name}-tools
+Requires(postun): %{name}-tools
+Provides:       locale(%{name}:vi)
+
+%description immodule-vietnamese
+GTK+ is a multi-platform toolkit for creating graphical user interfaces.
+Offering a complete set of widgets, GTK+ is suitable for projects
+ranging from small one-off projects to complete application suites.
+
+This package provides an input method for Vietnamese.
+
+%package immodule-xim
+License:        LGPLv2.1+
+Summary:        The GTK+ toolkit library (version 3) -- X Input Method
+Group:          System/Libraries
+Requires:       %{name} = %{version}
+Requires(post): %{name}-tools
+Requires(postun): %{name}-tools
+Provides:       locale(%{name}:ko)
+Provides:       locale(%{name}:ja)
+Provides:       locale(%{name}:th)
+Provides:       locale(%{name}:zh)
+
+%description immodule-xim
+GTK+ is a multi-platform toolkit for creating graphical user interfaces.
+Offering a complete set of widgets, GTK+ is suitable for projects
+ranging from small one-off projects to complete application suites.
+
+This package provides an input method based on the X Input Method.
+
 %package tools
 License:        LGPLv2.1+
 Summary:        The GTK+ toolkit library (version 3) -- Tools
@@ -148,9 +274,6 @@ cp -a %{S:1} .
 %patch1 -p0
 %patch2 -p1
 %patch3 -p1
-# Hack to make sure we're right to remove GtkApplication
-test ! -f %{_includedir}/glib-2.0/gio/gapplication.h
-%patch4 -p1
 gnome-patch-translation-update
 
 %build
@@ -169,7 +292,7 @@ find %{buildroot}%{_libdir} -name '*.la' -delete -print
 %find_lang gtk30
 %find_lang gtk30-properties
 install -m 644 -D %{S:2} %{buildroot}%{_sysconfdir}/gtk-3.0/gtkrc
-touch %{buildroot}%{_libdir}/gtk-3.0/3.0.0/immodules.cache
+touch %{buildroot}%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules.cache
 %if "%_lib" == "lib64"
   mv %{buildroot}%{_bindir}/gtk-query-immodules-3.0 %{buildroot}%{_bindir}/gtk-query-immodules-3.0-64
   mv %{buildroot}%{_mandir}/man1/gtk-query-immodules-3.0.1 %{buildroot}%{_mandir}/man1/gtk-query-immodules-3.0-64.1
@@ -183,62 +306,153 @@ cp %{S:3} %{buildroot}%{_sysconfdir}/rpm
 %clean
 rm -rf %{buildroot}
 
+###########################################################################
+# Note: when updating scriptlets, don't forget to also update baselibs.conf
+###########################################################################
+
 # Convenient %define for the scriplets
 %if "%_lib" == "lib64"
-%define GTK_QUERY_IMMODULES %{_bindir}/gtk-query-immodules-3.0-64
+%define _gtk_query_immodules %{_bindir}/gtk-query-immodules-3.0-64
 %else
-%define GTK_QUERY_IMMODULES %{_bindir}/gtk-query-immodules-3.0
+%define _gtk_query_immodules %{_bindir}/gtk-query-immodules-3.0
 %endif
-
-# In case libgtk-3_0-0 gets installed before
-# gtk3-tools, we don't want to fail. So we make the call to
-# gtk-query-immodules-3.0 dependent on the existence of
-# the binary. This is why we also have a %post for
-# gtk3-tools.
+%define _gtk_query_immodules_update_cache %{_gtk_query_immodules} --update-cache
 
 %post -n libgtk-3_0-0
 /sbin/ldconfig
-if test -f %{GTK_QUERY_IMMODULES}; then
-  %{GTK_QUERY_IMMODULES} --update-cache
+%if 0
+# In case libgtk-3_0-0 gets installed before gtk3-tools, we don't want to fail.
+# So we make the call to gtk-query-immodules-3.0 dependent on the existence of
+# the binary. This is why we also have a %post for gtk3-tools.
+%endif
+if test -f %{_gtk_query_immodules}; then
+  %{_gtk_query_immodules_update_cache}
 fi
 
-# If we install gtk3-tools for the first time,
-# then we should run it in case libgtk-3_0-0 was installed
-# first (ie, if %{_libdir}/gtk-3.0/3.0.0 already exists) which means
-# gtk-query-immodules-3.0 couldn't run there.
+%post immodule-amharic
+%{_gtk_query_immodules_update_cache}
+
+%post immodule-inuktitut
+%{_gtk_query_immodules_update_cache}
+
+%post immodule-multipress
+%{_gtk_query_immodules_update_cache}
+
+%post immodule-thai
+%{_gtk_query_immodules_update_cache}
+
+%post immodules-tigrigna
+%{_gtk_query_immodules_update_cache}
+
+%post immodule-vietnamese
+%{_gtk_query_immodules_update_cache}
+
+%post immodule-xim
+%{_gtk_query_immodules_update_cache}
 
 %post tools
+%if 0
+# If we install gtk3-tools for the first time, then we should run it in case
+# libgtk-3_0-0 was installed first (ie, if
+# %{_libdir}/gtk-3.0/%{gtk_binary_version} already exists) which means
+# gtk-query-immodules-3.0 couldn't run there.
+%endif
 if [ $1 == 1 ]; then
-  test -d %{_libdir}/gtk-3.0/3.0.0
+  test -d %{_libdir}/gtk-3.0/%{gtk_binary_version}
   if test $? -eq 0; then
-    %{GTK_QUERY_IMMODULES} --update-cache
+    %{_gtk_query_immodules_update_cache}
   fi
 fi
 
+%if 0
 # No need to call gtk-query-immodules-3.0 in postun:
 # - if it's an upgrade, it will have been called in post
 # - if it's an uninstall, we don't care about this anymore
+%endif
 
 %postun -n libgtk-3_0-0 -p /sbin/ldconfig
 
+%postun immodule-amharic
+%{_gtk_query_immodules_update_cache}
+
+%postun immodule-inuktitut
+%{_gtk_query_immodules_update_cache}
+
+%postun immodule-multipress
+%{_gtk_query_immodules_update_cache}
+
+%postun immodule-thai
+%{_gtk_query_immodules_update_cache}
+
+%postun immodules-tigrigna
+%{_gtk_query_immodules_update_cache}
+
+%postun immodule-vietnamese
+%{_gtk_query_immodules_update_cache}
+
+%postun immodule-xim
+%{_gtk_query_immodules_update_cache}
+
 %files -n libgtk-3_0-0
 %defattr(-, root, root)
 %doc AUTHORS COPYING README NEWS ChangeLog
 %if "%_lib" == "lib64"
 %doc README.SUSE
 %endif
-%config %{_sysconfdir}/gtk-3.0/im-multipress.conf
+%dir %{_sysconfdir}/gtk-3.0
 %dir %{_libdir}/gtk-3.0
-%dir %{_libdir}/gtk-3.0/3.0.0
-%{_libdir}/gtk-3.0/modules/
-%{_libdir}/gtk-3.0/3.0.0/engines/
-%{_libdir}/gtk-3.0/3.0.0/immodules/
-%{_libdir}/gtk-3.0/3.0.0/printbackends/
-%ghost %{_libdir}/gtk-3.0/3.0.0/immodules.cache
+%dir %{_libdir}/gtk-3.0/%{gtk_binary_version}
+%dir %{_libdir}/gtk-3.0/%{gtk_binary_version}/engines
+%{_libdir}/gtk-3.0/%{gtk_binary_version}/engines/libpixmap.so
+%dir %{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/
+%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-cedilla.so
+%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-cyrillic-translit.so
+%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-ipa.so
+%dir %{_libdir}/gtk-3.0/%{gtk_binary_version}/printbackends/
+%{_libdir}/gtk-3.0/%{gtk_binary_version}/printbackends/libprintbackend-cups.so
+%{_libdir}/gtk-3.0/%{gtk_binary_version}/printbackends/libprintbackend-file.so
+%{_libdir}/gtk-3.0/%{gtk_binary_version}/printbackends/libprintbackend-lpr.so
+%ghost %{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules.cache
+%dir %{_libdir}/gtk-3.0/modules
+%{_libdir}/gtk-3.0/modules/libgail.so
 %{_libdir}/libgailutil-3.0.so.*
 %{_libdir}/libgdk-x11-3.0.so.*
 %{_libdir}/libgtk-x11-3.0.so.*
-%{_libdir}/girepository-1.0/*.typelib
+%{_libdir}/girepository-1.0/Gdk-3.0.typelib
+%{_libdir}/girepository-1.0/GdkX11-3.0.typelib
+%{_libdir}/girepository-1.0/Gtk-3.0.typelib
+
+%files immodule-amharic
+%defattr(-,root,root)
+%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-am-et.so
+
+%files immodule-inuktitut
+%defattr(-,root,root)
+%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-inuktitut.so
+
+%files immodule-multipress
+%defattr(-,root,root)
+# Not in tarball
+#%doc modules/input/README.multipress
+%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-multipress.so
+%config %{_sysconfdir}/gtk-3.0/im-multipress.conf
+
+%files immodule-thai
+%defattr(-,root,root)
+%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-thai.so
+
+%files immodules-tigrigna
+%defattr(-,root,root)
+%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-ti-er.so
+%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-ti-et.so
+
+%files immodule-vietnamese
+%defattr(-,root,root)
+%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-viqr.so
+
+%files immodule-xim
+%defattr(-,root,root)
+%{_libdir}/gtk-3.0/%{gtk_binary_version}/immodules/im-xim.so
 
 %files tools
 %defattr(-,root,root)
@@ -249,9 +463,9 @@ fi
 
 %files data
 %defattr(-,root,root)
-%{_datadir}/themes/Default/gtk-3.0-key/gtkrc
-%{_datadir}/themes/Emacs/gtk-3.0-key/gtkrc
-%{_datadir}/themes/Raleigh/gtk-3.0/gtkrc
+%{_datadir}/themes/Default/
+%{_datadir}/themes/Emacs/
+%{_datadir}/themes/Raleigh/
 
 %files branding-upstream
 %defattr(-,root,root)
@@ -261,17 +475,20 @@ fi
 
 %files devel
 %defattr(-,root,root)
-%doc %{_datadir}/gtk-doc/html/*
+%doc %{_datadir}/gtk-doc/html/gail-libgail-util3/
+%doc %{_datadir}/gtk-doc/html/gdk3/
+%doc %{_datadir}/gtk-doc/html/gtk3/
 %{_bindir}/gtk3-demo
 %{_bindir}/gtk-builder-convert-3.0
 %{_mandir}/man1/gtk-builder-convert-3.0.1*
 %{_datadir}/aclocal/gtk-3.0.m4
+%{_datadir}/gir-1.0/*.gir
 %dir %{_datadir}/gtk-3.0
 %{_datadir}/gtk-3.0/demo/
-%{_datadir}/gir-1.0/*.gir
 %{_includedir}/gail-3.0/
 %{_includedir}/gtk-3.0/
 %{_libdir}/gtk-3.0/include/
+%{_libdir}/gtk-3.0/modules/libferret.so
 %{_libdir}/pkgconfig/gail-3.0.pc
 %{_libdir}/pkgconfig/gdk-3.0.pc
 %{_libdir}/pkgconfig/gdk-x11-3.0.pc
diff --git a/macros.gtk3 b/macros.gtk3
index 3e0938b..3d4a650 100644
--- a/macros.gtk3
+++ b/macros.gtk3
@@ -11,25 +11,25 @@
 #
 ###
 
-%gtk3_immodule_requires                                                 \
-Requires(post): gtk3-tools                                              \
+%gtk3_immodule_requires                                  \
+Requires(post): gtk3-tools                               \
 Requires(postun): gtk3-tools
 
 # On install, update the cache
-%gtk3_immodule_post                                                     \
-%if "%_lib" == "lib64"                                                  \
-  %{_bindir}/gtk-query-immodules-3.0-64 > {_sysconfdir}/gtk.immodules   \
-%else                                                                   \
-  %{_bindir}/gtk-query-immodules-3.0 > {_sysconfdir}/gtk64.immodules    \
+%gtk3_immodule_post                                      \
+%if "%_lib" == "lib64"                                   \
+  %{_bindir}/gtk-query-immodules-3.0-64 --update-cache   \
+%else                                                    \
+  %{_bindir}/gtk-query-immodules-3.0 --update-cache      \
 %endif
 
 # On uninstall, update the cache. Note: we ignore upgrades (already
 # handled in %post of the new package).
-%gtk3_immodule_postun                                                   \
-if [ $1 -eq 0 ]; then                                                   \
-  %if "%_lib" == "lib64"                                                \
-    %{_bindir}/gtk-query-immodules-3.0-64 > {_sysconfdir}/gtk.immodules \
-  %else                                                                 \
-    %{_bindir}/gtk-query-immodules-3.0 > {_sysconfdir}/gtk64.immodules  \
-  %endif                                                                \
+%gtk3_immodule_postun                                    \
+if [ $1 -eq 0 ]; then                                    \
+  %if "%_lib" == "lib64"                                 \
+    %{_bindir}/gtk-query-immodules-3.0-64 --update-cache \
+  %else                                                  \
+    %{_bindir}/gtk-query-immodules-3.0 --update-cache    \
+  %endif                                                 \
 fi