Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=ayatana.git;a=commitdiff;h=88cdecf84e2cbad27b46811571b0b346a5d4331a

commit 88cdecf84e2cbad27b46811571b0b346a5d4331a
Author: Devil505 <devil505li...@gmail.com>
Date:   Tue Feb 22 00:03:20 2011 +0100

gtk+2-2.24.0-1ayatana1-i686
* version bump
* added several patches

diff --git a/source/xlib/gtk+2/012_ubuntu-set-grab-add.patch 
b/source/xlib/gtk+2/012_ubuntu-set-grab-add.patch
index 2c1b654..50e848d 100644
--- a/source/xlib/gtk+2/012_ubuntu-set-grab-add.patch
+++ b/source/xlib/gtk+2/012_ubuntu-set-grab-add.patch
@@ -1,7 +1,9 @@
=== modified file 'gtk/gtk.symbols'
---- old/gtk/gtk.symbols        2010-07-29 17:26:15 +0000
-+++ new/gtk/gtk.symbols        2010-07-29 17:26:21 +0000
-@@ -5277,6 +5277,7 @@
+Index: gtk+-2.23.90/gtk/gtk.symbols
+===================================================================
+--- gtk+-2.23.90.orig/gtk/gtk.symbols  2011-01-07 12:30:26.293891001 +1100
++++ gtk+-2.23.90/gtk/gtk.symbols       2011-01-07 12:30:28.913891001 +1100
+@@ -5327,6 +5327,7 @@
gtk_widget_get_realized
gtk_widget_set_mapped
gtk_widget_get_mapped
@@ -9,11 +11,11 @@
#endif
#endif

-
-=== modified file 'gtk/gtkwidget.c'
---- old/gtk/gtkwidget.c        2010-07-29 17:24:37 +0000
-+++ new/gtk/gtkwidget.c        2010-07-29 17:29:04 +0000
-@@ -11399,5 +11399,15 @@
+Index: gtk+-2.23.90/gtk/gtkwidget.c
+===================================================================
+--- gtk+-2.23.90.orig/gtk/gtkwidget.c  2011-01-07 12:30:26.303891001 +1100
++++ gtk+-2.23.90/gtk/gtkwidget.c       2011-01-07 12:30:28.913891001 +1100
+@@ -11412,5 +11412,15 @@
return res;
}

@@ -29,11 +31,11 @@
+
#define __GTK_WIDGET_C__
#include "gtkaliasdef.c"
-
-=== modified file 'gtk/gtkwidget.h'
---- old/gtk/gtkwidget.h        2010-07-29 17:24:37 +0000
-+++ new/gtk/gtkwidget.h        2010-07-29 17:27:51 +0000
-@@ -1342,6 +1342,9 @@
+Index: gtk+-2.23.90/gtk/gtkwidget.h
+===================================================================
+--- gtk+-2.23.90.orig/gtk/gtkwidget.h  2011-01-07 12:30:26.313891001 +1100
++++ gtk+-2.23.90/gtk/gtkwidget.h       2011-01-07 12:30:28.913891001 +1100
+@@ -1346,6 +1346,9 @@
GtkWidget *toplevel,
gpointer   user_data);

@@ -43,4 +45,3 @@
G_END_DECLS

#endif /* __GTK_WIDGET_H__ */
-
diff --git a/source/xlib/gtk+2/043_ubuntu_menu_proxy.patch 
b/source/xlib/gtk+2/043_ubuntu_menu_proxy.patch
index 3c89edb..c484291 100644
--- a/source/xlib/gtk+2/043_ubuntu_menu_proxy.patch
+++ b/source/xlib/gtk+2/043_ubuntu_menu_proxy.patch
@@ -1,10 +1,10 @@
## Description: add some description
## Origin/Author: add some origin or author
## Bug: bug URL
-Index: gtk+2.0-2.21.6/gtk/Makefile.am
+Index: gtk+2.0-2.23.90/gtk/Makefile.am
===================================================================
---- gtk+2.0-2.21.6.orig/gtk/Makefile.am        2010-08-24 17:45:04.000000000 
+0200
-+++ gtk+2.0-2.21.6/gtk/Makefile.am     2010-08-24 17:45:04.000000000 +0200
+--- gtk+2.0-2.23.90.orig/gtk/Makefile.am       2011-01-21 09:23:55.728241188 
-0500
++++ gtk+2.0-2.23.90/gtk/Makefile.am    2011-01-21 09:23:58.638179868 -0500
@@ -249,6 +249,8 @@
gtkmenu.h               \
gtkmenubar.h            \
@@ -14,7 +14,7 @@ Index: gtk+2.0-2.21.6/gtk/Makefile.am
gtkmenushell.h          \
gtkmenutoolbutton.h     \
gtkmessagedialog.h      \
-@@ -517,6 +519,8 @@
+@@ -519,6 +521,8 @@
gtkmenu.c               \
gtkmenubar.c            \
gtkmenuitem.c           \
@@ -23,85 +23,10 @@ Index: gtk+2.0-2.21.6/gtk/Makefile.am
gtkmenushell.c          \
gtkmenutoolbutton.c     \
gtkmessagedialog.c      \
---- gtk+-2.22.1/gtk/Makefile.in.orig   2010-11-15 19:49:47.000000000 +0300
-+++ gtk+-2.22.1/gtk/Makefile.in        2010-12-26 15:28:00.000000000 +0300
-@@ -148,7 +148,7 @@
-       gtkinfobar.c gtkinputdialog.c gtkinvisible.c gtkitem.c \
-       gtkkeyhash.c gtklabel.c gtklayout.c gtklinkbutton.c \
-       gtkliststore.c gtkmain.c gtkmarshal.c gtkmarshalers.c \
--      gtkmenu.c gtkmenubar.c gtkmenuitem.c gtkmenushell.c \
-+      gtkmenu.c gtkmenubar.c gtkmenuitem.c ubuntumenuproxy.c 
ubuntumenuproxymodule.c gtkmenushell.c \
-       gtkmenutoolbutton.c gtkmessagedialog.c gtkmisc.c \
-       gtkmnemonichash.c gtkmodules.c gtkmountoperation.c \
-       gtknotebook.c gtkobject.c gtkoffscreenwindow.c gtkorientable.c \
-@@ -234,7 +234,7 @@
-       gtkinfobar.lo gtkinputdialog.lo gtkinvisible.lo gtkitem.lo \
-       gtkkeyhash.lo gtklabel.lo gtklayout.lo gtklinkbutton.lo \
-       gtkliststore.lo gtkmain.lo gtkmarshal.lo gtkmarshalers.lo \
--      gtkmenu.lo gtkmenubar.lo gtkmenuitem.lo gtkmenushell.lo \
-+      gtkmenu.lo gtkmenubar.lo gtkmenuitem.lo ubuntumenuproxy.lo 
ubuntumenuproxymodule.lo gtkmenushell.lo \
-       gtkmenutoolbutton.lo gtkmessagedialog.lo gtkmisc.lo \
-       gtkmnemonichash.lo gtkmodules.lo gtkmountoperation.lo \
-       gtknotebook.lo gtkobject.lo gtkoffscreenwindow.lo \
-@@ -339,7 +339,7 @@
-       gtkinfobar.c gtkinputdialog.c gtkinvisible.c gtkitem.c \
-       gtkkeyhash.c gtklabel.c gtklayout.c gtklinkbutton.c \
-       gtkliststore.c gtkmain.c gtkmarshal.c gtkmarshalers.c \
--      gtkmenu.c gtkmenubar.c gtkmenuitem.c gtkmenushell.c \
-+      gtkmenu.c gtkmenubar.c gtkmenuitem.c ubuntumenuproxy.c 
ubuntumenuproxymodule.c gtkmenushell.c \
-       gtkmenutoolbutton.c gtkmessagedialog.c gtkmisc.c \
-       gtkmnemonichash.c gtkmodules.c gtkmountoperation.c \
-       gtknotebook.c gtkobject.c gtkoffscreenwindow.c gtkorientable.c \
-@@ -426,7 +426,7 @@
-       gtkinfobar.c gtkinputdialog.c gtkinvisible.c gtkitem.c \
-       gtkkeyhash.c gtklabel.c gtklayout.c gtklinkbutton.c \
-       gtkliststore.c gtkmain.c gtkmarshal.c gtkmarshalers.c \
--      gtkmenu.c gtkmenubar.c gtkmenuitem.c gtkmenushell.c \
-+      gtkmenu.c gtkmenubar.c gtkmenuitem.c ubuntumenuproxy.c 
ubuntumenuproxymodule.c gtkmenushell.c \
-       gtkmenutoolbutton.c gtkmessagedialog.c gtkmisc.c \
-       gtkmnemonichash.c gtkmodules.c gtkmountoperation.c \
-       gtknotebook.c gtkobject.c gtkoffscreenwindow.c gtkorientable.c \
-@@ -513,7 +513,7 @@
-       gtkinfobar.c gtkinputdialog.c gtkinvisible.c gtkitem.c \
-       gtkkeyhash.c gtklabel.c gtklayout.c gtklinkbutton.c \
-       gtkliststore.c gtkmain.c gtkmarshal.c gtkmarshalers.c \
--      gtkmenu.c gtkmenubar.c gtkmenuitem.c gtkmenushell.c \
-+      gtkmenu.c gtkmenubar.c gtkmenuitem.c ubuntumenuproxy.c 
ubuntumenuproxymodule.c gtkmenushell.c \
-       gtkmenutoolbutton.c gtkmessagedialog.c gtkmisc.c \
-       gtkmnemonichash.c gtkmodules.c gtkmountoperation.c \
-       gtknotebook.c gtkobject.c gtkoffscreenwindow.c gtkorientable.c \
-@@ -1030,7 +1030,7 @@
-       gtkimmodule.h gtkimmulticontext.h gtkinfobar.h gtkinvisible.h \
-       gtkitem.h gtklabel.h gtklayout.h gtklinkbutton.h \
-       gtkliststore.h gtkmain.h gtkmenu.h gtkmenubar.h gtkmenuitem.h \
--      gtkmenushell.h gtkmenutoolbutton.h gtkmessagedialog.h \
-+      ubuntumenuproxy.h ubuntumenuproxymodule.h gtkmenushell.h 
gtkmenutoolbutton.h gtkmessagedialog.h \
-       gtkmisc.h gtkmodules.h gtkmountoperation.h gtknotebook.h \
-       gtkobject.h gtkoffscreenwindow.h gtkorientable.h \
-       gtkpagesetup.h gtkpaned.h gtkpapersize.h gtkplug.h \
-@@ -1131,7 +1131,7 @@
-       gtkinfobar.c gtkinputdialog.c gtkinvisible.c gtkitem.c \
-       gtkkeyhash.c gtklabel.c gtklayout.c gtklinkbutton.c \
-       gtkliststore.c gtkmain.c gtkmarshal.c gtkmarshalers.c \
--      gtkmenu.c gtkmenubar.c gtkmenuitem.c gtkmenushell.c \
-+      gtkmenu.c gtkmenubar.c gtkmenuitem.c ubuntumenuproxy.c 
ubuntumenuproxymodule.c gtkmenushell.c \
-       gtkmenutoolbutton.c gtkmessagedialog.c gtkmisc.c \
-       gtkmnemonichash.c gtkmodules.c gtkmountoperation.c \
-       gtknotebook.c gtkobject.c gtkoffscreenwindow.c gtkorientable.c \
-@@ -1888,6 +1888,8 @@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gtkmenu.Plo@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gtkmenubar.Plo@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gtkmenuitem.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ 
@am__quote@./$(DEPDIR)/ubuntumenuproxy.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ 
@am__quote@./$(DEPDIR)/ubuntumenuproxymodule.Plo@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gtkmenushell.Plo@am__quote@
- @AMDEP_TRUE@@am__include@ 
@am__quote@./$(DEPDIR)/gtkmenutoolbutton.Plo@am__quote@
- @AMDEP_TRUE@@am__include@ 
@am__quote@./$(DEPDIR)/gtkmessagedialog.Plo@am__quote@
-
-Index: gtk+2.0-2.21.6/gtk/gtk.h
+Index: gtk+2.0-2.23.90/gtk/gtk.h
===================================================================
---- gtk+2.0-2.21.6.orig/gtk/gtk.h      2010-08-16 22:57:55.000000000 +0200
-+++ gtk+2.0-2.21.6/gtk/gtk.h   2010-08-24 17:45:04.000000000 +0200
+--- gtk+2.0-2.23.90.orig/gtk/gtk.h     2011-01-06 12:15:12.000000000 -0500
++++ gtk+2.0-2.23.90/gtk/gtk.h  2011-01-21 09:23:58.638179868 -0500
@@ -65,6 +65,8 @@
#include <gtk/gtkcellview.h>
#include <gtk/gtkcheckbutton.h>
@@ -111,11 +36,11 @@ Index: gtk+2.0-2.21.6/gtk/gtk.h
#include <gtk/gtkclipboard.h>
#include <gtk/gtkcolorbutton.h>
#include <gtk/gtkcolorsel.h>
-Index: gtk+2.0-2.21.6/gtk/gtk.symbols
+Index: gtk+2.0-2.23.90/gtk/gtk.symbols
===================================================================
---- gtk+2.0-2.21.6.orig/gtk/gtk.symbols        2010-08-24 17:45:04.000000000 
+0200
-+++ gtk+2.0-2.21.6/gtk/gtk.symbols     2010-08-24 17:45:04.000000000 +0200
-@@ -2572,6 +2572,21 @@
+--- gtk+2.0-2.23.90.orig/gtk/gtk.symbols       2011-01-21 09:23:56.498221932 
-0500
++++ gtk+2.0-2.23.90/gtk/gtk.symbols    2011-01-21 09:23:58.638179868 -0500
+@@ -2606,6 +2606,21 @@
#endif
#endif

@@ -137,7 +62,7 @@ Index: gtk+2.0-2.21.6/gtk/gtk.symbols
#if IN_HEADER(__GTK_MENU_SHELL_H__)
#if IN_FILE(__GTK_MENU_SHELL_C__)
gtk_menu_shell_activate_item
-@@ -2586,6 +2601,7 @@
+@@ -2620,6 +2635,7 @@
gtk_menu_shell_select_item
gtk_menu_shell_set_take_focus
gtk_menu_shell_get_take_focus
@@ -145,10 +70,10 @@ Index: gtk+2.0-2.21.6/gtk/gtk.symbols
#endif
#endif

-Index: gtk+2.0-2.21.6/gtk/gtkmenubar.c
+Index: gtk+2.0-2.23.90/gtk/gtkmenubar.c
===================================================================
---- gtk+2.0-2.21.6.orig/gtk/gtkmenubar.c       2010-08-16 22:57:55.000000000 
+0200
-+++ gtk+2.0-2.21.6/gtk/gtkmenubar.c    2010-08-24 17:45:04.000000000 +0200
+--- gtk+2.0-2.23.90.orig/gtk/gtkmenubar.c      2011-01-06 12:15:13.000000000 
-0500
++++ gtk+2.0-2.23.90/gtk/gtkmenubar.c   2011-01-21 09:23:58.638179868 -0500
@@ -107,7 +107,7 @@
widget_class->size_allocate = gtk_menu_bar_size_allocate;
widget_class->expose_event = gtk_menu_bar_expose;
@@ -225,10 +150,28 @@ Index: gtk+2.0-2.21.6/gtk/gtkmenubar.c
if (gtk_widget_get_visible (widget))
{
menu_bar = GTK_MENU_BAR (widget);
-Index: gtk+2.0-2.21.6/gtk/gtkmenushell.h
+@@ -626,8 +669,15 @@
+             GtkMenuShell *menu_shell = GTK_MENU_SHELL (menubars->data);
+
+               _gtk_menu_shell_set_keyboard_mode (menu_shell, TRUE);
+-            _gtk_menu_shell_activate (menu_shell);
+-            gtk_menu_shell_select_first (menu_shell, FALSE);
++              if (ubuntu_gtk_menu_shell_activate_first (GTK_MENU_SHELL 
(menu_shell), FALSE))
++              {
++                //g_print ("send activate to remote!\n");
++              }
++            else
++              {
++                _gtk_menu_shell_activate (menu_shell);
++                gtk_menu_shell_select_first (menu_shell, FALSE);
++              }
+
+             g_list_free (menubars);
+
+Index: gtk+2.0-2.23.90/gtk/gtkmenushell.h
===================================================================
---- gtk+2.0-2.21.6/gtk/gtkmenushell.h.orig 2010-11-15 15:13:10.000000000 +0300
-+++ gtk+2.0-2.21.6/gtk/gtkmenushell.h      2010-12-26 14:53:33.000000000 +0300
+--- gtk+2.0-2.23.90/gtk/gtkmenushell.h.orig 2010-11-15 15:13:10.000000000 +0300
++++ gtk+2.0-2.23.90/gtk/gtkmenushell.h      2010-12-26 14:53:33.000000000 +0300
@@ -135,6 +135,7 @@
void     _gtk_menu_shell_set_keyboard_mode (GtkMenuShell *menu_shell,
gboolean      keyboard_mode);
@@ -237,10 +180,10 @@ Index: gtk+2.0-2.21.6/gtk/gtkmenushell.h

G_END_DECLS

-Index: gtk+2.0-2.21.6/gtk/gtkmenushell.c
+Index: gtk+2.0-2.23.90/gtk/gtkmenushell.c
===================================================================
---- gtk+2.0-2.21.6.orig/gtk/gtkmenushell.c     2010-08-16 22:57:55.000000000 
+0200
-+++ gtk+2.0-2.21.6/gtk/gtkmenushell.c  2010-08-24 17:45:11.000000000 +0200
+--- gtk+2.0-2.23.90.orig/gtk/gtkmenushell.c    2011-01-06 12:15:13.000000000 
-0500
++++ gtk+2.0-2.23.90/gtk/gtkmenushell.c 2011-01-21 09:23:58.638179868 -0500
@@ -37,6 +37,7 @@
#include "gtkmenubar.h"
#include "gtkmenuitem.h"
@@ -401,7 +344,7 @@ Index: gtk+2.0-2.21.6/gtk/gtkmenushell.c
}

static void
-@@ -1815,5 +1883,25 @@
+@@ -1815,5 +1883,52 @@
}
}

@@ -425,12 +368,39 @@ Index: gtk+2.0-2.21.6/gtk/gtkmenushell.c
+  return FALSE;
+}
+
++gboolean
++ubuntu_gtk_menu_shell_activate_first (GtkMenuShell *menu_shell,
++                                    gboolean      search_sensitive)
++{
++  GtkWidget *to_select = NULL;
++  GList *tmp_list;
++
++  tmp_list = menu_shell->children;
++  while (tmp_list)
++    {
++      GtkWidget *child = tmp_list->data;
++
++      if ((!search_sensitive && gtk_widget_get_visible (child)) ||
++        _gtk_menu_item_is_selectable (child))
++      {
++        to_select = child;
++        if (!GTK_IS_TEAROFF_MENU_ITEM (child))
++          break;
++      }
++
++      tmp_list = tmp_list->next;
++    }
++
++  return to_select &&
++         ubuntu_gtk_menu_shell_activate_mnemonic(menu_shell, to_select);
++}
++
#define __GTK_MENU_SHELL_C__
#include "gtkaliasdef.c"
-Index: gtk+2.0-2.21.6/gtk/tests/Makefile.am
+Index: gtk+2.0-2.23.90/gtk/tests/Makefile.am
===================================================================
---- gtk+2.0-2.21.6.orig/gtk/tests/Makefile.am  2010-08-16 22:57:56.000000000 
+0200
-+++ gtk+2.0-2.21.6/gtk/tests/Makefile.am       2010-08-24 17:45:04.000000000 
+0200
+--- gtk+2.0-2.23.90.orig/gtk/tests/Makefile.am 2011-01-06 12:15:15.000000000 
-0500
++++ gtk+2.0-2.23.90/gtk/tests/Makefile.am      2011-01-21 09:23:58.638179868 
-0500
@@ -45,6 +45,10 @@
recentmanager_SOURCES            = recentmanager.c
recentmanager_LDADD              = $(progs_ldadd)
@@ -442,10 +412,10 @@ Index: gtk+2.0-2.21.6/gtk/tests/Makefile.am
TEST_PROGS                      += floating
floating_SOURCES                 = floating.c
floating_LDADD                   = $(progs_ldadd)
-Index: gtk+2.0-2.21.6/gtk/tests/menuproxy.c
+Index: gtk+2.0-2.23.90/gtk/tests/menuproxy.c
===================================================================
--- /dev/null   1970-01-01 00:00:00.000000000 +0000
-+++ gtk+2.0-2.21.6/gtk/tests/menuproxy.c       2010-08-24 17:45:04.000000000 
+0200
++++ gtk+2.0-2.23.90/gtk/tests/menuproxy.c      2011-01-21 09:23:58.648179671 
-0500
@@ -0,0 +1,278 @@
+/*
+ * Copyright (C) 2009 Canonical, Ltd.
@@ -725,10 +695,10 @@ Index: gtk+2.0-2.21.6/gtk/tests/menuproxy.c
+
+  return g_test_run();
+}
-Index: gtk+2.0-2.21.6/gtk/ubuntumenuproxy.c
+Index: gtk+2.0-2.23.90/gtk/ubuntumenuproxy.c
===================================================================
--- /dev/null   1970-01-01 00:00:00.000000000 +0000
-+++ gtk+2.0-2.21.6/gtk/ubuntumenuproxy.c       2010-08-24 17:45:04.000000000 
+0200
++++ gtk+2.0-2.23.90/gtk/ubuntumenuproxy.c      2011-01-21 09:23:58.648179671 
-0500
@@ -0,0 +1,249 @@
+/*
+ * Copyright (C) 2010 Canonical, Ltd.
@@ -979,10 +949,10 @@ Index: gtk+2.0-2.21.6/gtk/ubuntumenuproxy.c
+
+#define __UBUNTU_MENU_PROXY_C__
+#include "gtkaliasdef.c"
-Index: gtk+2.0-2.21.6/gtk/ubuntumenuproxy.h
+Index: gtk+2.0-2.23.90/gtk/ubuntumenuproxy.h
===================================================================
--- /dev/null   1970-01-01 00:00:00.000000000 +0000
-+++ gtk+2.0-2.21.6/gtk/ubuntumenuproxy.h       2010-08-24 17:45:04.000000000 
+0200
++++ gtk+2.0-2.23.90/gtk/ubuntumenuproxy.h      2011-01-21 09:23:58.648179671 
-0500
@@ -0,0 +1,74 @@
+/*
+ * Copyright (C) 2010 Canonical, Ltd.
@@ -1058,10 +1028,10 @@ Index: gtk+2.0-2.21.6/gtk/ubuntumenuproxy.h
+G_END_DECLS
+
+#endif /* __UBUNTU_MENU_PROXY_H__ */
-Index: gtk+2.0-2.21.6/gtk/ubuntumenuproxymodule.c
+Index: gtk+2.0-2.23.90/gtk/ubuntumenuproxymodule.c
===================================================================
--- /dev/null   1970-01-01 00:00:00.000000000 +0000
-+++ gtk+2.0-2.21.6/gtk/ubuntumenuproxymodule.c 2010-08-24 17:45:04.000000000 
+0200
++++ gtk+2.0-2.23.90/gtk/ubuntumenuproxymodule.c        2011-01-21 
09:24:12.467904054 -0500
@@ -0,0 +1,212 @@
+/*
+ * Copyright (C) 2010 Canonical, Ltd.
@@ -1275,10 +1245,10 @@ Index: gtk+2.0-2.21.6/gtk/ubuntumenuproxymodule.c
+
+#define __UBUNTU_MENU_PROXY_MODULE_C__
+#include "gtkaliasdef.c"
-Index: gtk+2.0-2.21.6/gtk/ubuntumenuproxymodule.h
+Index: gtk+2.0-2.23.90/gtk/ubuntumenuproxymodule.h
===================================================================
--- /dev/null   1970-01-01 00:00:00.000000000 +0000
-+++ gtk+2.0-2.21.6/gtk/ubuntumenuproxymodule.h 2010-08-24 17:45:04.000000000 
+0200
++++ gtk+2.0-2.23.90/gtk/ubuntumenuproxymodule.h        2011-01-21 
09:23:58.648179671 -0500
@@ -0,0 +1,69 @@
+/*
+ * Copyright (C) 2010 Canonical, Ltd.
@@ -1349,10 +1319,10 @@ Index: gtk+2.0-2.21.6/gtk/ubuntumenuproxymodule.h
+G_END_DECLS
+
+#endif /* __UBUNTU_MENU_PROXY_MODULE_H__ */
-Index: gtk+2.0-2.21.6/gtk/gtkwindow.c
+Index: gtk+2.0-2.23.90/gtk/gtkwindow.c
===================================================================
---- gtk+2.0-2.21.6.orig/gtk/gtkwindow.c        2010-08-16 22:57:56.000000000 
+0200
-+++ gtk+2.0-2.21.6/gtk/gtkwindow.c     2010-08-24 17:45:04.000000000 +0200
+--- gtk+2.0-2.23.90.orig/gtk/gtkwindow.c       2011-01-21 09:23:52.318364336 
-0500
++++ gtk+2.0-2.23.90/gtk/gtkwindow.c    2011-01-21 09:23:58.648179671 -0500
@@ -94,7 +94,8 @@
PROP_GRAVITY,
PROP_TRANSIENT_FOR,
@@ -1407,10 +1377,10 @@ Index: gtk+2.0-2.21.6/gtk/gtkwindow.c
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
-Index: gtk+2.0-2.21.6/gtk/gtkmenuitem.c
+Index: gtk+2.0-2.23.90/gtk/gtkmenuitem.c
===================================================================
---- gtk+2.0-2.21.6.orig/gtk/gtkmenuitem.c      2010-08-16 22:57:55.000000000 
+0200
-+++ gtk+2.0-2.21.6/gtk/gtkmenuitem.c   2010-08-24 17:45:04.000000000 +0200
+--- gtk+2.0-2.23.90.orig/gtk/gtkmenuitem.c     2011-01-21 09:23:52.278365796 
-0500
++++ gtk+2.0-2.23.90/gtk/gtkmenuitem.c  2011-01-21 09:23:58.648179671 -0500
@@ -1395,7 +1395,17 @@
widget);
}
diff --git a/source/xlib/gtk+2/065_gir_set_packages.patch 
b/source/xlib/gtk+2/065_gir_set_packages.patch
new file mode 100644
index 0000000..b30c74a
--- /dev/null
+++ b/source/xlib/gtk+2/065_gir_set_packages.patch
@@ -0,0 +1,74 @@
+=== modified file 'gdk/Makefile.am'
+--- old/gdk/Makefile.am        2011-01-21 19:24:12 +0000
++++ new/gdk/Makefile.am        2011-01-21 19:28:52 +0000
+@@ -3,6 +3,7 @@
+ -include $(INTROSPECTION_MAKEFILE)
+ INTROSPECTION_GIRS =
+ INTROSPECTION_SCANNER_ARGS = \
++   --warn-all \
+    --add-include-path=../gdk
+ INTROSPECTION_COMPILER_ARGS = \
+    --includedir=$(srcdir) \
+@@ -197,10 +198,11 @@
+         gdkenumtypes.h
+
+ Gdk-2.0.gir: $(gdktargetlib) Makefile
+-Gdk_2_0_gir_SCANNERFLAGS = --warn-all
++Gdk_2_0_gir_SCANNERFLAGS = --c-include="gdk/gdk.h"
+ Gdk_2_0_gir_INCLUDES = Gio-2.0 GdkPixbuf-2.0 Pango-1.0 cairo-1.0
+ Gdk_2_0_gir_LIBS = $(gdktargetlib)
+ Gdk_2_0_gir_FILES = $(introspection_files)
++Gdk_2_0_gir_EXPORT_PACKAGES = gdk-2.0
+ Gdk_2_0_gir_CFLAGS = $(INCLUDES)
+ INTROSPECTION_GIRS += Gdk-2.0.gir
+
+@@ -238,10 +240,12 @@
+         x11/gdkx.h
+
+ GdkX11-2.0.gir: $(gdktargetlib) Gdk-2.0.gir Makefile
+-GdkX11_2_0_gir_SCANNERFLAGS = --warn-all --strip-prefix=Gdk
+-GdkX11_2_0_gir_INCLUDES = Gio-2.0 Gdk-2.0 GdkPixbuf-2.0 Pango-1.0 xlib-2.0
++GdkX11_2_0_gir_SCANNERFLAGS = --identifier-prefix=Gdk 
--include-uninstalled=Gdk-2.0.gir
++GdkX11_2_0_gir_INCLUDES = Gio-2.0 GdkPixbuf-2.0 Pango-1.0 xlib-2.0
++
+ GdkX11_2_0_gir_LIBS = $(gdktargetlib)
+ GdkX11_2_0_gir_FILES = $(x11_introspection_files)
++GdkX11_2_0_gir_EXPORT_PACKAGES = gdk-x11-2.0
+ GdkX11_2_0_gir_CFLAGS = $(INCLUDES) -L$(top_builddir)/gdk
+ INTROSPECTION_GIRS += GdkX11-2.0.gir
+
+
+=== modified file 'gtk/Makefile.am'
+--- old/gtk/Makefile.am        2011-01-21 19:23:36 +0000
++++ new/gtk/Makefile.am        2011-01-21 19:31:54 +0000
+@@ -3,6 +3,7 @@
+ -include $(INTROSPECTION_MAKEFILE)
+ INTROSPECTION_GIRS =
+ INTROSPECTION_SCANNER_ARGS = \
++      --warn-all \
+       --add-include-path=../gdk
+ INTROSPECTION_COMPILER_ARGS = \
+       --includedir=$(srcdir) \
+@@ -998,11 +999,11 @@
+     gtktypebuiltins.c
+
+ Gtk-2.0.gir: $(INTROSPECTION_SCANNER) $(gtktargetlib) 
$(top_builddir)/gdk/Gdk-2.0.gir Makefile
+-Gtk_2_0_gir_SCANNERFLAGS = --warn-all --add-include-path=$(top_builddir)/gdk
++Gtk_2_0_gir_SCANNERFLAGS = 
--include-uninstalled=$(top_builddir)/gdk/Gdk-2.0.gir
+ if USE_X11
+ Gtk_2_0_gir_SCANNERFLAGS += --add-include-path=$(top_builddir)/gdk/x11
+ endif
+-Gtk_2_0_gir_INCLUDES = Atk-1.0 Gdk-2.0
++Gtk_2_0_gir_INCLUDES = Atk-1.0
+ Gtk_2_0_gir_CFLAGS = \
+               $(INCLUDES) \
+               -UGDK_DISABLE_DEPRECATED \
+@@ -1010,6 +1011,7 @@
+               -DGTK_TEXT_USE_INTERNAL_UNSUPPORTED_API
+ Gtk_2_0_gir_LIBS = $(gtktargetlib)
+ Gtk_2_0_gir_FILES = $(addprefix $(srcdir)/, $(introspection_files))
++Gtk_2_0_gir_EXPORT_PACKAGES = gtk+-2.0
+ INTROSPECTION_GIRS += Gtk-2.0.gir
+
+ girdir = $(datadir)/gir-1.0
+
diff --git a/source/xlib/gtk+2/072_indicator_menu_update.patch 
b/source/xlib/gtk+2/072_indicator_menu_update.patch
new file mode 100644
index 0000000..4874692
--- /dev/null
+++ b/source/xlib/gtk+2/072_indicator_menu_update.patch
@@ -0,0 +1,110 @@
+## Description: Adding two signals that are needed for Application Indicator to
+##              keep up-to-date with changed GtkMenu(Item)s.
+## Origin/Author: Cody Russell <brats...@gnome.org>,
+##                Sense Hofstede <se...@ubuntu.com>
+## Bug: unknown and https://launchpad.net/bug/608219
+Index: gtk+-2.21.7/gtk/gtkcontainer.c
+===================================================================
+--- gtk+-2.21.7.orig/gtk/gtkcontainer.c        2010-08-31 01:09:37.000000000 
+1000
++++ gtk+-2.21.7/gtk/gtkcontainer.c     2010-09-01 12:22:01.612617000 +1000
+@@ -48,6 +48,8 @@
+   REMOVE,
+   CHECK_RESIZE,
+   SET_FOCUS_CHILD,
++  CHILD_ADDED,
++  CHILD_REMOVED,
+   LAST_SIGNAL
+ };
+
+@@ -291,6 +293,24 @@
+                 _gtk_marshal_VOID__OBJECT,
+                 G_TYPE_NONE, 1,
+                 GTK_TYPE_WIDGET);
++  container_signals[CHILD_ADDED] =
++    g_signal_new (I_("child-added"),
++                  G_OBJECT_CLASS_TYPE (object_class),
++                  G_SIGNAL_RUN_LAST,
++                  0,
++                  NULL, NULL,
++                  _gtk_marshal_VOID__OBJECT,
++                  G_TYPE_NONE, 1,
++                  GTK_TYPE_WIDGET);
++  container_signals[CHILD_REMOVED] =
++    g_signal_new (I_("child-removed"),
++                  G_OBJECT_CLASS_TYPE (object_class),
++                  G_SIGNAL_RUN_LAST,
++                  0,
++                  NULL, NULL,
++                  _gtk_marshal_VOID__OBJECT,
++                  G_TYPE_NONE, 1,
++                  GTK_TYPE_WIDGET);
+ }
+
+ static void
+Index: gtk+-2.21.7/gtk/gtkmenushell.c
+===================================================================
+--- gtk+-2.21.7.orig/gtk/gtkmenushell.c        2010-09-01 12:21:11.762617001 
+1000
++++ gtk+-2.21.7/gtk/gtkmenushell.c     2010-09-01 12:22:01.612617000 +1000
+@@ -567,6 +567,8 @@
+                               GTK_WIDGET (menu_shell),
+                               child,
+                               position);
++
++  g_signal_emit_by_name (menu_shell, "child-added", child);
+ }
+
+ static void
+Index: gtk+-2.21.7/gtk/gtkmenuitem.c
+===================================================================
+--- gtk+-2.21.7.orig/gtk/gtkmenuitem.c 2010-09-01 12:21:09.562617001 +1000
++++ gtk+-2.21.7/gtk/gtkmenuitem.c      2010-09-01 12:22:01.612617000 +1000
+@@ -52,6 +52,8 @@
+   ACTIVATE_ITEM,
+   TOGGLE_SIZE_REQUEST,
+   TOGGLE_SIZE_ALLOCATE,
++  SUBMENU_ADDED,
++  SUBMENU_REMOVED,
+   LAST_SIGNAL
+ };
+
+@@ -244,6 +246,25 @@
+                 G_TYPE_NONE, 1,
+                 G_TYPE_INT);
+
++  menu_item_signals[SUBMENU_ADDED] =
++    g_signal_new (I_("submenu-added"),
++                G_OBJECT_CLASS_TYPE (gobject_class),
++                G_SIGNAL_RUN_FIRST,
++                0,
++                NULL, NULL,
++                _gtk_marshal_VOID__OBJECT,
++                G_TYPE_NONE, 1,
++                GTK_TYPE_WIDGET);
++
++ menu_item_signals[SUBMENU_REMOVED] =
++    g_signal_new (I_("submenu-removed"),
++                G_OBJECT_CLASS_TYPE (gobject_class),
++                G_SIGNAL_RUN_FIRST,
++                0,
++                NULL, NULL,
++                _gtk_marshal_VOID__VOID,
++                G_TYPE_NONE, 0);
++
+   /**
+    * GtkMenuItem:right-justified:
+    *
+@@ -791,6 +812,14 @@
+       if (GTK_WIDGET (menu_item)->parent)
+       gtk_widget_queue_resize (GTK_WIDGET (menu_item));
+
++        if(submenu == NULL)
++      {
++        g_signal_emit_by_name (menu_item, "submenu-removed");
++      }
++        else
++      {
++        g_signal_emit_by_name (menu_item, "submenu-added", 
GTK_WIDGET(submenu));
++      }
+       g_object_notify (G_OBJECT (menu_item), "submenu");
+     }
+ }
diff --git a/source/xlib/gtk+2/091_bugzilla_tooltip_refresh.patch 
b/source/xlib/gtk+2/091_bugzilla_tooltip_refresh.patch
new file mode 100644
index 0000000..309bec1
--- /dev/null
+++ b/source/xlib/gtk+2/091_bugzilla_tooltip_refresh.patch
@@ -0,0 +1,344 @@
+# Description: better looking tooltips
+# Upstream: https://bugzilla.gnome.org/show_bug.cgi?id=599617
+# Ubuntu: https://launchpad.net/bugs/487208
+Index: gtk+-2.21.7/gtk/gtktooltip.c
+===================================================================
+--- gtk+-2.21.7.orig/gtk/gtktooltip.c  2010-09-01 12:22:03.992617001 +1000
++++ gtk+-2.21.7/gtk/gtktooltip.c       2010-09-01 12:22:11.252617001 +1000
+@@ -33,6 +33,10 @@
+ #include "gtkhbox.h"
+ #include "gtkalignment.h"
+
++#ifdef GDK_WINDOWING_X11
++#include "gdk/x11/gdkx.h"
++#endif
++
+ #include "gtkalias.h"
+
+ #undef DEBUG_TOOLTIP
+@@ -97,6 +101,7 @@
+                                                   GtkTooltip      *tooltip);
+ static void       gtk_tooltip_set_last_window      (GtkTooltip      *tooltip,
+                                                   GdkWindow       *window);
++static void       update_shape                     (GtkTooltip      *tooltip);
+
+
+ G_DEFINE_TYPE (GtkTooltip, gtk_tooltip, G_TYPE_OBJECT);
+@@ -112,8 +117,43 @@
+ }
+
+ static void
++on_composited_changed (GtkWidget  *window,
++                       GtkTooltip *tooltip)
++{
++  update_shape (tooltip);
++}
++
++static void
++on_screen_changed (GtkWidget  *window,
++                   GdkScreen  *previous,
++                   GtkTooltip *tooltip)
++{
++  GdkScreen *screen;
++  GdkColormap *cmap;
++
++  screen = gtk_widget_get_screen (window);
++
++  cmap = NULL;
++  if (gdk_screen_is_composited (screen))
++    cmap = gdk_screen_get_rgba_colormap (screen);
++  if (cmap == NULL)
++    cmap = gdk_screen_get_rgb_colormap (screen);
++
++  gtk_widget_set_colormap (window, cmap);
++}
++
++static void
++on_realized (GtkWidget  *window,
++             GtkTooltip *tooltip)
++{
++  update_shape (tooltip);
++}
++
++static void
+ gtk_tooltip_init (GtkTooltip *tooltip)
+ {
++  GdkScreen *screen;
++
+   tooltip->timeout_id = 0;
+   tooltip->browse_mode_timeout_id = 0;
+
+@@ -129,8 +169,12 @@
+   tooltip->last_window = NULL;
+
+   tooltip->window = g_object_ref (gtk_window_new (GTK_WINDOW_POPUP));
++
++  on_screen_changed (tooltip->window, NULL, tooltip);
++
+   gtk_window_set_type_hint (GTK_WINDOW (tooltip->window),
+                           GDK_WINDOW_TYPE_HINT_TOOLTIP);
++
+   gtk_widget_set_app_paintable (tooltip->window, TRUE);
+   gtk_window_set_resizable (GTK_WINDOW (tooltip->window), FALSE);
+   gtk_widget_set_name (tooltip->window, "gtk-tooltip");
+@@ -147,7 +191,7 @@
+   gtk_widget_show (tooltip->alignment);
+
+   g_signal_connect_swapped (tooltip->window, "style-set",
+-                          G_CALLBACK (gtk_tooltip_window_style_set), tooltip);
++                          G_CALLBACK (gtk_tooltip_window_style_set), tooltip);
+   g_signal_connect_swapped (tooltip->window, "expose-event",
+                           G_CALLBACK (gtk_tooltip_paint_window), tooltip);
+
+@@ -164,6 +208,13 @@
+   gtk_box_pack_start (GTK_BOX (tooltip->box), tooltip->label,
+                     FALSE, FALSE, 0);
+
++  g_signal_connect (tooltip->window, "composited-changed",
++                    G_CALLBACK (on_composited_changed), tooltip);
++  g_signal_connect (tooltip->window, "screen-changed",
++                    G_CALLBACK (on_screen_changed), tooltip);
++  g_signal_connect (tooltip->window, "realize",
++                    G_CALLBACK (on_realized), tooltip);
++
+   tooltip->custom_widget = NULL;
+ }
+
+@@ -510,19 +561,208 @@
+   gtk_widget_queue_draw (tooltip->window);
+ }
+
++static void
++draw_round_rect (cairo_t *cr,
++                 gdouble  aspect,
++                 gdouble  x,
++                 gdouble  y,
++                 gdouble  corner_radius,
++                 gdouble  width,
++                 gdouble  height)
++{
++  gdouble radius = corner_radius / aspect;
++
++  cairo_move_to (cr, x + radius, y);
++
++  /* top-right, left of the corner */
++  cairo_line_to (cr, x + width - radius, y);
++
++  /* top-right, below the corner */
++  cairo_arc (cr,
++             x + width - radius, y + radius, radius,
++             -90.0f * G_PI / 180.0f, 0.0f * G_PI / 180.0f);
++
++  /* bottom-right, above the corner */
++  cairo_line_to (cr, x + width, y + height - radius);
++
++  /* bottom-right, left of the corner */
++  cairo_arc (cr,
++             x + width - radius, y + height - radius, radius,
++             0.0f * G_PI / 180.0f, 90.0f * G_PI / 180.0f);
++
++  /* bottom-left, right of the corner */
++  cairo_line_to (cr, x + radius, y + height);
++
++  /* bottom-left, above the corner */
++  cairo_arc (cr,
++             x + radius, y + height - radius, radius,
++             90.0f * G_PI / 180.0f, 180.0f * G_PI / 180.0f);
++
++  /* top-left, below the corner */
++  cairo_line_to (cr, x, y + radius);
++
++  /* top-left, right of the corner */
++  cairo_arc (cr,
++             x + radius, y + radius, radius,
++             180.0f * G_PI / 180.0f, 270.0f * G_PI / 180.0f);
++
++  cairo_close_path (cr);
++}
++
++static void
++fill_background (GtkWidget  *widget,
++                 cairo_t    *cr)
++{
++  GdkColor color;
++  gdouble  r, g, b;
++  gint     radius;
++  gdouble  background_alpha;
++
++  if (gdk_screen_is_composited (gtk_widget_get_screen (widget)))
++    background_alpha = 0.85;
++  else
++    background_alpha = 1.0;
++
++  radius = MIN (widget->style->xthickness, widget->style->ythickness);
++  radius = MAX (radius, 1);
++
++  cairo_set_operator (cr, CAIRO_OPERATOR_CLEAR);
++  cairo_paint (cr);
++  cairo_set_operator (cr, CAIRO_OPERATOR_OVER);
++
++  draw_round_rect (cr,
++                   1.0, 0.5, 0.5, radius,
++                   widget->allocation.width - 1,
++                   widget->allocation.height - 1);
++
++  color = widget->style->bg [GTK_STATE_NORMAL];
++  r = (float)color.red / 65535.0;
++  g = (float)color.green / 65535.0;
++  b = (float)color.blue / 65535.0;
++  cairo_set_source_rgba (cr, r, g, b, background_alpha);
++  cairo_fill_preserve (cr);
++
++  color = widget->style->bg [GTK_STATE_SELECTED];
++  r = (float) color.red / 65535.0;
++  g = (float) color.green / 65535.0;
++  b = (float) color.blue / 65535.0;
++
++  cairo_set_source_rgba (cr, r, g, b, background_alpha);
++  cairo_set_line_width (cr, 1.0);
++  cairo_stroke (cr);
++}
++
++static void
++update_shape (GtkTooltip *tooltip)
++{
++  GdkScreen *screen;
++  GdkBitmap *mask;
++  cairo_t *cr;
++  gint width, height;
++  gboolean new_style;
++  gint radius;
++
++  gtk_widget_style_get (tooltip->window, "new-tooltip-style", &new_style, 
NULL);
++
++  if (!new_style)
++    {
++      gtk_widget_shape_combine_mask (tooltip->window, NULL, 0, 0);
++     return;
++    }
++
++  screen = gtk_widget_get_screen (tooltip->window);
++
++  gtk_window_get_size (GTK_WINDOW (tooltip->window), &width, &height);
++
++  if (gdk_screen_is_composited (screen))
++    {
++      GdkRectangle rect;
++      GdkRegion *region;
++      const char *wm;
++
++      gtk_widget_shape_combine_mask (tooltip->window, NULL, 0, 0);
++#ifdef GDK_WINDOWING_X11
++      /* This is a hack to keep the Metacity compositor from slapping a
++       * non-shaped shadow around the shaped tooltip
++       */
++      if (!gtk_widget_get_mapped (tooltip->window))
++        {
++          wm = gdk_x11_screen_get_window_manager_name (screen);
++          if (g_strcmp0 (wm, "Metacity") == 0)
++            gtk_window_set_type_hint (GTK_WINDOW (tooltip->window),
++                                     GDK_WINDOW_TYPE_HINT_DND);
++        }
++#endif
++      return;
++    }
++
++  radius = MIN (tooltip->window->style->xthickness,
++                tooltip->window->style->ythickness);
++  radius = MAX (radius, 1);
++  mask = (GdkBitmap *) gdk_pixmap_new (NULL, width, height, 1);
++  cr = gdk_cairo_create (mask);
++  if (cairo_status (cr) == CAIRO_STATUS_SUCCESS)
++    {
++      cairo_set_operator (cr, CAIRO_OPERATOR_CLEAR);
++      cairo_paint (cr);
++
++      cairo_set_operator (cr, CAIRO_OPERATOR_OVER);
++      cairo_set_source_rgb (cr, 1.0, 1.0, 1.0);
++      draw_round_rect (cr, 1.0, 0, 0, radius + 1, width, height);
++      cairo_fill (cr);
++
++      gtk_widget_shape_combine_mask (tooltip->window, mask, 0, 0);
++    }
++  cairo_destroy (cr);
++
++  g_object_unref (mask);
++}
++
+ static gboolean
+ gtk_tooltip_paint_window (GtkTooltip *tooltip)
+ {
+-  gtk_paint_flat_box (tooltip->window->style,
+-                    tooltip->window->window,
+-                    GTK_STATE_NORMAL,
+-                    GTK_SHADOW_OUT,
+-                    NULL,
+-                    tooltip->window,
+-                    "tooltip",
+-                    0, 0,
+-                    tooltip->window->allocation.width,
+-                    tooltip->window->allocation.height);
++  gboolean new_style;
++
++  gtk_widget_style_get (tooltip->window, "new-tooltip-style", &new_style, 
NULL);
++
++  if (new_style)
++    {
++      cairo_t         *context;
++      cairo_surface_t *surface;
++      cairo_t         *cr;
++
++      context = gdk_cairo_create (tooltip->window->window);
++
++      cairo_set_operator (context, CAIRO_OPERATOR_SOURCE);
++      surface = cairo_surface_create_similar (cairo_get_target (context),
++                                              CAIRO_CONTENT_COLOR_ALPHA,
++                                              
tooltip->window->allocation.width,
++                                              
tooltip->window->allocation.height);
++      cr = cairo_create (surface);
++
++      fill_background (tooltip->window, cr);
++
++      cairo_destroy (cr);
++      cairo_set_source_surface (context, surface, 0, 0);
++      cairo_paint (context);
++      cairo_surface_destroy (surface);
++      cairo_destroy (context);
++
++      update_shape (tooltip);
++    }
++  else
++    {
++      gtk_paint_flat_box (tooltip->window->style,
++                          tooltip->window->window,
++                          GTK_STATE_NORMAL,
++                          GTK_SHADOW_OUT,
++                          NULL,
++                          tooltip->window,
++                          "tooltip",
++                          0, 0,
++                          tooltip->window->allocation.width,
++                          tooltip->window->allocation.height);
++    }
+
+   return FALSE;
+ }
+Index: gtk+-2.21.7/gtk/gtkwidget.c
+===================================================================
+--- gtk+-2.21.7.orig/gtk/gtkwidget.c   2010-09-01 12:22:03.982617001 +1000
++++ gtk+-2.21.7/gtk/gtkwidget.c        2010-09-01 12:22:11.252617001 +1000
+@@ -2582,6 +2582,14 @@
+                                                              P_("The length 
of vertical scroll arrows"),
+                                                              1, G_MAXINT, 16,
+                                                              
GTK_PARAM_READABLE));
++
++  gtk_widget_class_install_style_property (klass,
++                                           g_param_spec_boolean 
("new-tooltip-style",
++                                                                 NULL,
++                                                                 NULL,
++                                                                 FALSE,
++                                                                 
GTK_PARAM_READABLE));
++
+ }
+
+ static void
diff --git a/source/xlib/gtk+2/FrugalBuild b/source/xlib/gtk+2/FrugalBuild
index d27db03..2a68126 100644
--- a/source/xlib/gtk+2/FrugalBuild
+++ b/source/xlib/gtk+2/FrugalBuild
@@ -3,22 +3,33 @@

pkgname=gtk+2
_F_gnome_name=gtk+
-pkgver=2.22.1
-pkgrel=1
+pkgver=2.24.0
+pkgrel=1ayatana1
pkgdesc="The GTK+ Toolkit (2.x series)"
depends=('libxext' 'libxfixes' 'cairo>=1.8.10-2' 'libgcc' 'libjpeg>=8a' 
'libtiff' 'libcups>=1.3.11-4' 'gdk-pixbuf2')
rodepends=('gnome-icon-theme' 'shared-mime-info')
groups=('xlib')
-makedepends=('gtk-doc' 'cups' 'inputproto' 'gobject-introspection')
+makedepends=('gtk-doc' 'cups' 'inputproto' 'gobject-introspection' 
'gnome-common')
archs=('i686' 'x86_64' 'ppc')
Finclude gnome
up2date=$pkgver
url="http://www.gtk.org/";
_F_cd_path="gtk+-$pkgver"
-source=($source 012_ubuntu-set-grab-add.patch 043_ubuntu_menu_proxy.patch)
-sha1sums=('c88d8be4aebd6e59d6ca44d57f6acd18e2be1c08' \
-          'b29a0761a169b7813106e9a7478320f89fcc1550' \
-          '952a34623e2ca177dae56b5ca5d16ed643420c13')
+source=($source \
+        xid-collision-debug.patch old-icon-symlinks.patch
+        012_ubuntu-set-grab-add.patch \
+        043_ubuntu_menu_proxy.patch \
+        065_gir_set_packages.patch \
+        072_indicator_menu_update.patch \
+        091_bugzilla_tooltip_refresh.patch)
+sha1sums=('17c52460854b3b17410204d5eefe8d783e894add' \
+          '75c461740e18696a792739cd1f9a20327dbb23bb' \
+          'a320f04468900b94d7f336368228dfdefc240c6e' \
+          'b4a6b53cd07a63f0df59fe80be597910e8db90c5' \
+          '907f88cf3ec8c102699f58d714c10fe14f63b3b1' \
+          'b48134a8c2a81e24539904e7ddf780ced75d4d93' \
+          '7a6606c8cf3cecba86c5f264208eb9c7cc405072' \
+          'd8d23cead06029d8f3bfe59b63a629bb38c3d3c6')

subpkgs=("${subpkgs[@]}" "$pkgname-libs")
subdescs=("${subdescs[@]}" "GTK+2 core libraries.")
@@ -32,8 +43,8 @@ subarchs=("${subarchs[@]}" 'i686 x86_64 ppc')
## split more maybe ?
subpkgs=("${subpkgs[@]}" "$pkgname-tools")
subdescs=("${subdescs[@]}" "GTK+2 commandline tools.")
-subdepends=("${subdepends[@]}" "glib2>=2.22.4")
-subrodepends=("${subrodepends[@]}" "$pkgname-libs>=$pkgver")
+subdepends=("${subdepends[@]}" "glib2>=2.22.4 gdk-pixbuf2")
+subrodepends=("${subrodepends[@]}" "")
subconflicts=("${subconflicts[@]}" "")
subgroups=("${subgroups[@]}" 'xapps')
subarchs=("${subarchs[@]}" 'i686 x86_64 ppc')
@@ -67,8 +78,10 @@ subgroups=("${subgroups[@]}" 'xapps-extra')
subarchs=("${subarchs[@]}" 'i686 x86_64 ppc')

build() {
-
-       Fbuild \
+    Fcd
+    Fpatchall
+    Fautoreconf
+       Fconf \
--with-xinput=yes \
--enable-gtk-doc \
--enable-man \
@@ -76,6 +89,8 @@ build() {
--with-libpng \
--disable-dependency-tracking \
--with-x
+    Fmake
+    Fmakeinstall

#Split gail
Fsplit gail usr/include/gail-*
@@ -91,7 +106,9 @@ build() {

## split also gtk-update-icon-cache , install scripts need that
Fsplit $pkgname-tools usr/bin/gtk-update-icon-cache
-       Fsplit $pkgname-tools usr/share/man/man1/gtk-update-icon-cache*
+       #Fsplit $pkgname-tools usr/share/man/man1/gtk-update-icon-cache*
+       Fsplit $pkgname-tools usr/bin/gtk-builder-convert
+       #Fsplit $pkgname-tools usr/share/man/man1/gtk-builder-convert*

## -demos
Fsplit $pkgname-demos usr/share/gtk-2.0/demo
@@ -104,3 +121,4 @@ build() {

# optimization OK

+
diff --git a/source/xlib/gtk+2/gtk+-2.12.0-flash-workaround.patch 
b/source/xlib/gtk+2/gtk+-2.12.0-flash-workaround.patch
deleted file mode 100644
index 7beccc3..0000000
--- a/source/xlib/gtk+2/gtk+-2.12.0-flash-workaround.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-Index: gtk+2.0-2.11.6/gtk/gtkclipboard.c
-===================================================================
---- gtk+2.0-2.11.6.orig/gtk/gtkclipboard.c     2007-08-31 16:52:48.000000000 
+0200
-+++ gtk+2.0-2.11.6/gtk/gtkclipboard.c  2007-08-31 16:53:16.000000000 +0200
-@@ -287,6 +287,7 @@
- gtk_clipboard_get_for_display (GdkDisplay *display,
-                              GdkAtom     selection)
- {
-+  g_return_val_if_fail (display != NULL, NULL);
-   g_return_val_if_fail (GDK_IS_DISPLAY (display), NULL);
-   g_return_val_if_fail (!display->closed, NULL);
-
diff --git a/source/xlib/gtk+2/gtk+-2.20.1-x86_64_pngfix.patch 
b/source/xlib/gtk+2/gtk+-2.20.1-x86_64_pngfix.patch
deleted file mode 100644
index 7f7bec7..0000000
--- a/source/xlib/gtk+2/gtk+-2.20.1-x86_64_pngfix.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From 02d8976176fb25633bcdc1cffe842538ab6e2188 Mon Sep 17 00:00:00 2001
-From: Matthias Clasen <mcla...@redhat.com>
-Date: Wed, 12 May 2010 19:02:02 +0000
-Subject: Another attempt to handle pngs changing int types
-
-(cherry picked from commit 006d5718fa927d9d3509fca1a1c1ca6522110b57)
----
-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);
-         }
---
-cgit v0.8.3.1
diff --git a/source/xlib/gtk+2/old-icon-symlinks.patch 
b/source/xlib/gtk+2/old-icon-symlinks.patch
new file mode 100644
index 0000000..046dd4d
--- /dev/null
+++ b/source/xlib/gtk+2/old-icon-symlinks.patch
@@ -0,0 +1,269 @@
+diff -aur gtk+-2.22.0.orig//gtk/Makefile.in gtk+-2.22.0/gtk/Makefile.in
+--- gtk+-2.22.0.orig//gtk/Makefile.in  2010-10-15 04:57:50.810006145 +0800
++++ gtk+-2.22.0/gtk/Makefile.in        2010-10-15 05:13:49.083339478 +0800
+@@ -1598,7 +1598,172 @@
+       stock-icons/24/folder-remote.png                \
+       stock-icons/24/user-home.png                    \
+       stock-icons/24/user-desktop.png                 \
+-      stock-icons/24/text-x-generic.png
++      stock-icons/24/text-x-generic.png               \
++      stock-icons/16/gtk-quit.png                     \
++      stock-icons/16/gtk-info.png                     \
++      stock-icons/16/gtk-file.png                     \
++      stock-icons/16/gtk-open.png                     \
++      stock-icons/16/gtk-print-preview.png            \
++      stock-icons/16/gtk-print.png                    \
++      stock-icons/16/gtk-properties.png               \
++      stock-icons/16/gtk-revert-to-saved-ltr.png      \
++      stock-icons/16/gtk-revert-to-saved-rtl.png      \
++      stock-icons/16/gtk-save-as.png                  \
++      stock-icons/16/gtk-new.png                      \
++      stock-icons/16/gtk-harddisk.png                 \
++      stock-icons/16/gtk-clear.png                    \
++      stock-icons/16/gtk-copy.png                     \
++      stock-icons/16/gtk-cut.png                      \
++      stock-icons/16/gtk-delete.png                   \
++      stock-icons/16/gtk-find-and-replace.png         \
++      stock-icons/16/gtk-find.png                     \
++      stock-icons/16/gtk-paste.png                    \
++      stock-icons/16/gtk-redo-ltr.png                 \
++      stock-icons/16/gtk-redo-rtl.png                 \
++      stock-icons/16/gtk-select-all.png               \
++      stock-icons/16/gtk-undo-ltr.png                 \
++      stock-icons/16/gtk-undo-rtl.png                 \
++      stock-icons/16/gtk-directory.png                \
++      stock-icons/16/gtk-unindent-ltr.png             \
++      stock-icons/16/gtk-unindent-rtl.png             \
++      stock-icons/16/gtk-indent-ltr.png               \
++      stock-icons/16/gtk-indent-rtl.png               \
++      stock-icons/16/gtk-justify-center.png           \
++      stock-icons/16/gtk-justify-fill.png             \
++      stock-icons/16/gtk-justify-left.png             \
++      stock-icons/16/gtk-justify-right.png            \
++      stock-icons/16/gtk-bold.png                     \
++      stock-icons/16/gtk-italic.png                   \
++      stock-icons/16/gtk-strikethrough.png            \
++      stock-icons/16/gtk-underline.png                \
++      stock-icons/16/gtk-goto-bottom.png              \
++      stock-icons/16/gtk-go-down.png                  \
++      stock-icons/16/gtk-goto-first-ltr.png           \
++      stock-icons/16/gtk-home.png                     \
++      stock-icons/16/gtk-jump-to-ltr.png              \
++      stock-icons/16/gtk-jump-to-rtl.png              \
++      stock-icons/16/gtk-goto-last-ltr.png            \
++      stock-icons/16/gtk-go-forward-ltr.png           \
++      stock-icons/16/gtk-go-back-ltr.png              \
++      stock-icons/16/gtk-goto-top.png                 \
++      stock-icons/16/gtk-go-up.png                    \
++      stock-icons/16/gtk-about.png                    \
++      stock-icons/16/gtk-help.png                     \
++      stock-icons/16/gtk-missing-image.png            \
++      stock-icons/16/gtk-add.png                      \
++      stock-icons/16/gtk-remove.png                   \
++      stock-icons/16/gtk-floppy.png                   \
++      stock-icons/16/gtk-cdrom.png                    \
++      stock-icons/16/gtk-media-pause.png              \
++      stock-icons/16/gtk-media-play-ltr.png           \
++      stock-icons/16/gtk-media-play-rtl.png           \
++      stock-icons/16/gtk-media-stop.png               \
++      stock-icons/16/gtk-media-record.png             \
++      stock-icons/16/gtk-media-rewind-ltr.png         \
++      stock-icons/16/gtk-media-forward-ltr.png        \
++      stock-icons/16/gtk-media-previous-ltr.png       \
++      stock-icons/16/gtk-media-next-ltr.png           \
++      stock-icons/16/gtk-network.png                  \
++      stock-icons/16/gtk-print-error.png              \
++      stock-icons/16/gtk-print-report.png             \
++      stock-icons/16/gtk-print-paused.png             \
++      stock-icons/16/gtk-print-warning.png            \
++      stock-icons/16/gtk-stop.png                     \
++      stock-icons/16/gtk-execute.png                  \
++      stock-icons/16/gtk-spell-check.png              \
++      stock-icons/16/gtk-fullscreen.png               \
++      stock-icons/16/gtk-refresh.png                  \
++      stock-icons/16/gtk-leave-fullscreen.png         \
++      stock-icons/16/gtk-sort-ascending.png           \
++      stock-icons/16/gtk-sort-descending.png          \
++      stock-icons/16/gtk-close.png                    \
++      stock-icons/16/gtk-zoom-fit.png                 \
++      stock-icons/16/gtk-zoom-in.png                  \
++      stock-icons/16/gtk-zoom-100.png                 \
++      stock-icons/16/gtk-zoom-out.png                 \
++      stock-icons/24/gtk-quit.png                     \
++      stock-icons/24/gtk-info.png                     \
++      stock-icons/24/gtk-file.png                     \
++      stock-icons/24/gtk-open.png                     \
++      stock-icons/24/gtk-print-preview.png            \
++      stock-icons/24/gtk-print.png                    \
++      stock-icons/24/gtk-properties.png               \
++      stock-icons/24/gtk-revert-to-saved-ltr.png      \
++      stock-icons/24/gtk-revert-to-saved-rtl.png      \
++      stock-icons/24/gtk-save-as.png                  \
++      stock-icons/24/gtk-new.png                      \
++      stock-icons/24/gtk-harddisk.png                 \
++      stock-icons/24/gtk-clear.png                    \
++      stock-icons/24/gtk-copy.png                     \
++      stock-icons/24/gtk-cut.png                      \
++      stock-icons/24/gtk-delete.png                   \
++      stock-icons/24/gtk-find-and-replace.png         \
++      stock-icons/24/gtk-find.png                     \
++      stock-icons/24/gtk-paste.png                    \
++      stock-icons/24/gtk-redo-ltr.png                 \
++      stock-icons/24/gtk-redo-rtl.png                 \
++      stock-icons/24/gtk-select-all.png               \
++      stock-icons/24/gtk-undo-ltr.png                 \
++      stock-icons/24/gtk-undo-rtl.png                 \
++      stock-icons/24/gtk-directory.png                \
++      stock-icons/24/gtk-unindent-ltr.png             \
++      stock-icons/24/gtk-unindent-rtl.png             \
++      stock-icons/24/gtk-indent-ltr.png               \
++      stock-icons/24/gtk-indent-rtl.png               \
++      stock-icons/24/gtk-justify-center.png           \
++      stock-icons/24/gtk-justify-fill.png             \
++      stock-icons/24/gtk-justify-left.png             \
++      stock-icons/24/gtk-justify-right.png            \
++      stock-icons/24/gtk-bold.png                     \
++      stock-icons/24/gtk-italic.png                   \
++      stock-icons/24/gtk-strikethrough.png            \
++      stock-icons/24/gtk-underline.png                \
++      stock-icons/24/gtk-goto-bottom.png              \
++      stock-icons/24/gtk-go-down.png                  \
++      stock-icons/24/gtk-goto-first-ltr.png           \
++      stock-icons/24/gtk-home.png                     \
++      stock-icons/24/gtk-jump-to-ltr.png              \
++      stock-icons/24/gtk-jump-to-rtl.png              \
++      stock-icons/24/gtk-goto-last-ltr.png            \
++      stock-icons/24/gtk-go-forward-ltr.png           \
++      stock-icons/24/gtk-go-back-ltr.png              \
++      stock-icons/24/gtk-goto-top.png                 \
++      stock-icons/24/gtk-go-up.png                    \
++      stock-icons/24/gtk-about.png                    \
++      stock-icons/24/gtk-help.png                     \
++      stock-icons/24/gtk-missing-image.png            \
++      stock-icons/24/gtk-add.png                      \
++      stock-icons/24/gtk-remove.png                   \
++      stock-icons/24/gtk-floppy.png                   \
++      stock-icons/24/gtk-cdrom.png                    \
++      stock-icons/24/gtk-media-pause.png              \
++      stock-icons/24/gtk-media-play-ltr.png           \
++      stock-icons/24/gtk-media-play-rtl.png           \
++      stock-icons/24/gtk-media-stop.png               \
++      stock-icons/24/gtk-media-record.png             \
++      stock-icons/24/gtk-media-rewind-ltr.png         \
++      stock-icons/24/gtk-media-forward-ltr.png        \
++      stock-icons/24/gtk-media-previous-ltr.png       \
++      stock-icons/24/gtk-media-next-ltr.png           \
++      stock-icons/24/gtk-network.png                  \
++      stock-icons/24/gtk-print-error.png              \
++      stock-icons/24/gtk-print-report.png             \
++      stock-icons/24/gtk-print-paused.png             \
++      stock-icons/24/gtk-print-warning.png            \
++      stock-icons/24/gtk-stop.png                     \
++      stock-icons/24/gtk-execute.png                  \
++      stock-icons/24/gtk-spell-check.png              \
++      stock-icons/24/gtk-fullscreen.png               \
++      stock-icons/24/gtk-refresh.png                  \
++      stock-icons/24/gtk-leave-fullscreen.png         \
++      stock-icons/24/gtk-sort-ascending.png           \
++      stock-icons/24/gtk-sort-descending.png          \
++      stock-icons/24/gtk-close.png                    \
++      stock-icons/24/gtk-zoom-fit.png                 \
++      stock-icons/24/gtk-zoom-in.png                  \
++      stock-icons/24/gtk-zoom-100.png                 \
++      stock-icons/24/gtk-zoom-out.png                 \
++      stock-icons/48/gtk-dialog-error.png
+
+ @CROSS_COMPILING_FALSE@gtk_update_icon_cache_program = \
+ @CROSS_COMPILING_FALSE@          ./gtk-update-icon-cache
+@@ -2869,7 +3034,91 @@
+          && $(LN_S) folder.png user-desktop.png                       \
+          && $(RM) text-x-generic.png                                  \
+          && $(LN_S) document-x-generic.png text-x-generic.png         \
++         && $(LN_S) application-exit.png gtk-quit.png                 \
++         && $(LN_S) dialog-information.png gtk-info.png                       
\
++         && $(LN_S) document-new.png gtk-file.png                     \
++         && $(LN_S) document-open.png gtk-open.png                    \
++         && $(LN_S) document-print-preview.png gtk-print-preview.png          
        \
++         && $(LN_S) document-print.png gtk-print.png                  \
++         && $(LN_S) document-properties.png gtk-properties.png                
        \
++         && $(LN_S) document-revert-ltr.png gtk-revert-to-saved-ltr.png       
                \
++         && $(LN_S) document-revert-rtl.png gtk-revert-to-saved-rtl.png       
                \
++         && $(LN_S) document-save-as.png gtk-save-as.png                      
\
++         && $(LN_S) document-x-generic.png gtk-new.png                        
\
++         && $(LN_S) drive-harddisk.png gtk-harddisk.png                       
\
++         && $(LN_S) edit-clear.png gtk-clear.png                      \
++         && $(LN_S) edit-copy.png gtk-copy.png                        \
++         && $(LN_S) edit-cut.png gtk-cut.png                  \
++         && $(LN_S) edit-delete.png gtk-delete.png                    \
++         && $(LN_S) edit-find-replace.png gtk-find-and-replace.png            
        \
++         && $(LN_S) edit-find.png gtk-find.png                        \
++         && $(LN_S) edit-paste.png gtk-paste.png                      \
++         && $(LN_S) edit-redo-ltr.png gtk-redo-ltr.png                        
\
++         && $(LN_S) edit-redo-rtl.png gtk-redo-rtl.png                        
\
++         && $(LN_S) edit-select-all.png gtk-select-all.png                    
\
++         && $(LN_S) edit-undo-ltr.png gtk-undo-ltr.png                        
\
++         && $(LN_S) edit-undo-rtl.png gtk-undo-rtl.png                        
\
++         && $(LN_S) folder.png gtk-directory.png                      \
++         && $(LN_S) format-indent-less-ltr.png gtk-unindent-ltr.png           
        \
++         && $(LN_S) format-indent-less-rtl.png gtk-unindent-rtl.png           
        \
++         && $(LN_S) format-indent-more-ltr.png gtk-indent-ltr.png             
        \
++         && $(LN_S) format-indent-more-rtl.png gtk-indent-rtl.png             
        \
++         && $(LN_S) format-justify-center.png gtk-justify-center.png          
        \
++         && $(LN_S) format-justify-fill.png gtk-justify-fill.png              
        \
++         && $(LN_S) format-justify-left.png gtk-justify-left.png              
        \
++         && $(LN_S) format-justify-right.png gtk-justify-right.png            
        \
++         && $(LN_S) format-text-bold.png gtk-bold.png                 \
++         && $(LN_S) format-text-italic.png gtk-italic.png                     
\
++         && $(LN_S) format-text-strikethrough.png gtk-strikethrough.png       
                \
++         && $(LN_S) format-text-underline.png gtk-underline.png               
        \
++         && $(LN_S) go-bottom.png gtk-goto-bottom.png                 \
++         && $(LN_S) go-down.png gtk-go-down.png                       \
++         && $(LN_S) go-first-ltr.png gtk-goto-first-ltr.png                   
\
++         && $(LN_S) go-home.png gtk-home.png                  \
++         && $(LN_S) go-jump-ltr.png gtk-jump-to-ltr.png                       
\
++         && $(LN_S) go-jump-rtl.png gtk-jump-to-rtl.png                       
\
++         && $(LN_S) go-last-ltr.png gtk-goto-last-ltr.png                     
\
++         && $(LN_S) go-next-ltr.png gtk-go-forward-ltr.png                    
\
++         && $(LN_S) go-previous-ltr.png gtk-go-back-ltr.png                   
\
++         && $(LN_S) go-top.png gtk-goto-top.png                       \
++         && $(LN_S) go-up.png gtk-go-up.png                   \
++         && $(LN_S) help-about.png gtk-about.png                      \
++         && $(LN_S) help-contents.png gtk-help.png                    \
++         && $(LN_S) image-missing.png gtk-missing-image.png                   
\
++         && $(LN_S) list-add.png gtk-add.png                  \
++         && $(LN_S) list-remove.png gtk-remove.png                    \
++         && $(LN_S) media-floppy.png gtk-floppy.png                   \
++         && $(LN_S) media-optical.png gtk-cdrom.png                   \
++         && $(LN_S) media-playback-pause.png gtk-media-pause.png              
        \
++         && $(LN_S) media-playback-start-ltr.png gtk-media-play-ltr.png       
                \
++         && $(LN_S) media-playback-start-rtl.png gtk-media-play-rtl.png       
                \
++         && $(LN_S) media-playback-stop.png gtk-media-stop.png                
        \
++         && $(LN_S) media-record.png gtk-media-record.png                     
\
++         && $(LN_S) media-seek-backward-ltr.png gtk-media-rewind-ltr.png      
                \
++         && $(LN_S) media-seek-forward-ltr.png gtk-media-forward-ltr.png      
                \
++         && $(LN_S) media-skip-backward-ltr.png gtk-media-previous-ltr.png    
                \
++         && $(LN_S) media-skip-forward-ltr.png gtk-media-next-ltr.png         
        \
++         && $(LN_S) network-idle.png gtk-network.png                  \
++         && $(LN_S) printer-error.png gtk-print-error.png                     
\
++         && $(LN_S) printer-info.png gtk-print-report.png                     
\
++         && $(LN_S) printer-paused.png gtk-print-paused.png                   
\
++         && $(LN_S) printer-warning.png gtk-print-warning.png                 
\
++         && $(LN_S) process-stop.png gtk-stop.png                     \
++         && $(LN_S) system-run.png gtk-execute.png                    \
++         && $(LN_S) tools-check-spelling.png gtk-spell-check.png              
        \
++         && $(LN_S) view-fullscreen.png gtk-fullscreen.png                    
\
++         && $(LN_S) view-refresh.png gtk-refresh.png                  \
++         && $(LN_S) view-restore.png gtk-leave-fullscreen.png                 
\
++         && $(LN_S) view-sort-ascending.png gtk-sort-ascending.png            
        \
++         && $(LN_S) view-sort-descending.png gtk-sort-descending.png          
        \
++         && $(LN_S) window-close.png gtk-close.png                    \
++         && $(LN_S) zoom-fit-best.png gtk-zoom-fit.png                        
\
++         && $(LN_S) zoom-in.png gtk-zoom-in.png                       \
++         && $(LN_S) zoom-original.png gtk-zoom-100.png                        
\
++         && $(LN_S) zoom-out.png gtk-zoom-out.png                     \
+       ) done                                                          \
++      && (cd stock-icons/48                                           \
++         && $(LN_S) dialog-error.png gtk-dialog-error.png)            \
+       && touch stamp-icons
+
+ gtkbuiltincache.h: @REBUILD@ stamp-icons
diff --git a/source/xlib/gtk+2/xid-collision-debug.patch 
b/source/xlib/gtk+2/xid-collision-debug.patch
new file mode 100644
index 0000000..d61238c
--- /dev/null
+++ b/source/xlib/gtk+2/xid-collision-debug.patch
@@ -0,0 +1,15 @@
+--- gtk+-2.18.3/gdk/x11/gdkxid.c       2009-06-19 04:59:18.000000000 +0200
++++ gtk+-2.18.3/gdk/x11/gdkxid.c.new   2009-07-22 11:30:12.000000000 +0200
+@@ -56,10 +56,10 @@
+   if (!display_x11->xid_ht)
+     display_x11->xid_ht = g_hash_table_new ((GHashFunc) gdk_xid_hash,
+                                           (GEqualFunc) gdk_xid_equal);
+-
++/*
+   if (g_hash_table_lookup (display_x11->xid_ht, xid))
+     g_warning ("XID collision, trouble ahead");
+-
++*/
+   g_hash_table_insert (display_x11->xid_ht, xid, data);
+ }
+
_______________________________________________
Frugalware-git mailing list
Frugalware-git@frugalware.org
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to