diff options
| author | Paul Sokolovsky <pmiscml@gmail.com> | 2006-09-29 01:53:49 +0000 |
|---|---|---|
| committer | Paul Sokolovsky <pmiscml@gmail.com> | 2006-09-29 01:53:49 +0000 |
| commit | 32cfcbd4b3a9db64adbe98fa84363f2352bec05e (patch) | |
| tree | 70dab6e7190faf12b58c0879f78cf2e1f6c04fbc /packages | |
| parent | 8c3b8c97db1b8fbef02db8b6dc41cd7adc281e7e (diff) | |
| parent | 25c52e178047a53799c21ceddfb83d1fa134508d (diff) | |
merge of '6867f0ae417cb46146424365283886d722fc2431'
and '9a846512d8d824d05d745bcdc6285cc8c247b078'
Diffstat (limited to 'packages')
51 files changed, 2126 insertions, 57 deletions
diff --git a/packages/glib-2.0/glib-2.0-2.12.3/.mtn2git_empty b/packages/glib-2.0/glib-2.0-2.12.3/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/glib-2.0/glib-2.0-2.12.3/.mtn2git_empty diff --git a/packages/glib-2.0/glib-2.0-2.12.3/configure-libtool.patch b/packages/glib-2.0/glib-2.0-2.12.3/configure-libtool.patch new file mode 100644 index 0000000000..478ef132af --- /dev/null +++ b/packages/glib-2.0/glib-2.0-2.12.3/configure-libtool.patch @@ -0,0 +1,20 @@ +--- glib-2.12.0/configure.in.orig 2006-07-07 09:21:56.000000000 +0100 ++++ glib-2.12.0/configure.in 2006-07-07 09:25:44.000000000 +0100 +@@ -1169,7 +1169,7 @@ + dnl No use for this on Win32 + G_MODULE_LDFLAGS= + else +- G_MODULE_LDFLAGS=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh` ++ G_MODULE_LDFLAGS=`(./$host_alias-libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh` + fi + dnl G_MODULE_IMPL= don't reset, so cmd-line can override + G_MODULE_NEED_USCORE=0 +@@ -1234,7 +1234,7 @@ + LDFLAGS="$LDFLAGS $G_MODULE_LDFLAGS" + dnl *** check for OSF1/5.0 RTLD_GLOBAL brokenness + echo "void glib_plugin_test(void) { }" > plugin.c +- ${SHELL} ./libtool --mode=compile ${CC} -shared \ ++ ${SHELL} ./$host_alias-libtool --mode=compile ${CC} -shared \ + -export-dynamic -o plugin.o plugin.c 2>&1 >/dev/null + AC_CACHE_CHECK([for RTLD_GLOBAL brokenness], + glib_cv_rtldglobal_broken,[ diff --git a/packages/glib-2.0/glib-2.0_2.12.3.bb b/packages/glib-2.0/glib-2.0_2.12.3.bb new file mode 100644 index 0000000000..c796f08090 --- /dev/null +++ b/packages/glib-2.0/glib-2.0_2.12.3.bb @@ -0,0 +1,49 @@ +DESCRIPTION = "GLib is a general-purpose utility library, \ +which provides many useful data types, macros, \ +type conversions, string utilities, file utilities, a main \ +loop abstraction, and so on. It works on many \ +UNIX-like platforms, Windows, OS/2 and BeOS." +LICENSE = "LGPL" +SECTION = "libs" +PRIORITY = "optional" +MAINTAINER = "Philip Blundell <pb@handhelds.org>" +DEPENDS += "glib-2.0-native gtk-doc" +DEPENDS += "virtual/libiconv virtual/libintl" +PACKAGES =+ "glib-2.0-utils " +PR = "r0" + +LEAD_SONAME = "libglib-2.0.*" +FILES_glib-2.0-utils = "${bindir}/*" + +EXTRA_OECONF = "--disable-debug" + +SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/glib/2.12/glib-${PV}.tar.bz2 \ + file://glibconfig-sysdefs.h \ + file://configure-libtool.patch;patch=1" + +S = "${WORKDIR}/glib-${PV}" + +inherit autotools pkgconfig gettext + +python () { + if bb.data.getVar("USE_NLS", d, 1) == "no": + raise bb.parse.SkipPackage("${PN} requires native language support.") +} + +acpaths = "" +do_configure_prepend () { + install -m 0644 ${WORKDIR}/glibconfig-sysdefs.h . +} + +do_stage () { + oe_libinstall -so -C glib libglib-2.0 ${STAGING_LIBDIR} + oe_libinstall -so -C gmodule libgmodule-2.0 ${STAGING_LIBDIR} + oe_libinstall -so -C gthread libgthread-2.0 ${STAGING_LIBDIR} + oe_libinstall -so -C gobject libgobject-2.0 ${STAGING_LIBDIR} + autotools_stage_includes + install -d ${STAGING_INCDIR}/glib-2.0/glib + install -m 0755 ${S}/glibconfig.h ${STAGING_INCDIR}/glib-2.0/glibconfig.h + install -d ${STAGING_DATADIR}/aclocal + install -m 0644 ${S}/m4macros/glib-2.0.m4 ${STAGING_DATADIR}/aclocal/glib-2.0.m4 + install -m 0644 ${S}/m4macros/glib-gettext.m4 ${STAGING_DATADIR}/aclocal/glib-gettext.m4 +} diff --git a/packages/gnu-config/gnu-config-native_20050701.bb b/packages/gnu-config/gnu-config-native_20050701.bb index e729520d60..43df124f7f 100644 --- a/packages/gnu-config/gnu-config-native_20050701.bb +++ b/packages/gnu-config/gnu-config-native_20050701.bb @@ -6,7 +6,8 @@ inherit native FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/gnu-config" do_stage () { - install -d ${STAGING_DATADIR}/gnu-config + install -d ${STAGING_DATADIR}/gnu-config/ + install -d ${STAGING_BINDIR}/ cat ${WORKDIR}/gnu-configize.in | \ sed -e 's,@gnu-configdir@,${STAGING_DATADIR}/gnu-config,' \ -e 's,@autom4te_perllibdir@,${STAGING_DATADIR}/autoconf,' > ${STAGING_BINDIR}/gnu-configize diff --git a/packages/gtk+/gtk+-2.10.3/.mtn2git_empty b/packages/gtk+/gtk+-2.10.3/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/gtk+/gtk+-2.10.3/.mtn2git_empty diff --git a/packages/gtk+/gtk+-2.10.3/automake-lossage.patch b/packages/gtk+/gtk+-2.10.3/automake-lossage.patch new file mode 100644 index 0000000000..0d423ddbb9 --- /dev/null +++ b/packages/gtk+/gtk+-2.10.3/automake-lossage.patch @@ -0,0 +1,24 @@ +--- gtk+-2.4.1/docs/tutorial/Makefile.am~ 2003-05-06 22:54:20.000000000 +0100 ++++ gtk+-2.4.1/docs/tutorial/Makefile.am 2004-05-08 12:31:41.000000000 +0100 +@@ -52,21 +52,5 @@ + + dist-hook: html + cp -Rp $(srcdir)/html $(distdir) +-else +-html: +- echo "***" +- echo "*** Warning: Tutorial not built" +- echo "***" +- +-pdf: +- echo "***" +- echo "*** Warning: Tutorial not built" +- echo "***" +- +-dist-hook: +- echo "***" +- echo "*** Warning: Tutorial not built" +- echo "*** DISTRIBUTION IS INCOMPLETE" +- echo "***" + endif + diff --git a/packages/gtk+/gtk+-2.10.3/disable-print.patch b/packages/gtk+/gtk+-2.10.3/disable-print.patch new file mode 100644 index 0000000000..1067773f12 --- /dev/null +++ b/packages/gtk+/gtk+-2.10.3/disable-print.patch @@ -0,0 +1,50 @@ +--- gtk+-2.10.0/configure.in~ 2006-07-05 18:11:44.000000000 +0200 ++++ gtk+-2.10.0/configure.in 2006-07-05 18:11:44.000000000 +0200 +@@ -1539,26 +1539,27 @@ + # Printing system checks + ################################################################ + +-AC_PATH_PROG(CUPS_CONFIG, cups-config, no) +-if test "x$CUPS_CONFIG" != "xno"; then +- CUPS_CFLAGS=`cups-config --cflags | sed 's/-O[0-9]*//' | sed 's/-m[^\t]*//g'` +- CUPS_LIBS=`cups-config --libs` +- +- CUPS_API_VERSION=`cups-config --api-version` +- CUPS_API_MAJOR=`echo -n $CUPS_API_VERSION | awk -F. '{print $1}'` +- CUPS_API_MINOR=`echo -n $CUPS_API_VERSION | awk -F. '{print $2}'` +- +- if test $CUPS_API_MAJOR -gt 1 -o \ +- $CUPS_API_MAJOR -eq 1 -a $CUPS_API_MINOR -ge 2; then +- AC_DEFINE(HAVE_CUPS_API_1_2) +- fi +- +- AC_SUBST(CUPS_API_MAJOR) +- AC_SUBST(CUPS_API_MINOR) +- AC_SUBST(CUPS_CFLAGS) +- AC_SUBST(CUPS_LIBS) +-fi +-AM_CONDITIONAL(HAVE_CUPS, test "x$CUPS_CONFIG" != "xno") ++#AC_PATH_PROG(CUPS_CONFIG, cups-config, no) ++#if test "x$CUPS_CONFIG" != "xno"; then ++# CUPS_CFLAGS=`cups-config --cflags | sed 's/-O[0-9]*//' | sed 's/-m[^\t]*//g'` ++# CUPS_LIBS=`cups-config --libs` ++# ++# CUPS_API_VERSION=`cups-config --api-version` ++# CUPS_API_MAJOR=`echo -n $CUPS_API_VERSION | awk -F. '{print $1}'` ++# CUPS_API_MINOR=`echo -n $CUPS_API_VERSION | awk -F. '{print $2}'` ++# ++# if test $CUPS_API_MAJOR -gt 1 -o \ ++# $CUPS_API_MAJOR -eq 1 -a $CUPS_API_MINOR -ge 2; then ++# AC_DEFINE(HAVE_CUPS_API_1_2) ++# fi ++# ++# AC_SUBST(CUPS_API_MAJOR) ++# AC_SUBST(CUPS_API_MINOR) ++# AC_SUBST(CUPS_CFLAGS) ++# AC_SUBST(CUPS_LIBS) ++#fi ++#AM_CONDITIONAL(HAVE_CUPS, test "x$CUPS_CONFIG" != "xno") ++AM_CONDITIONAL(HAVE_CUPS,false) + + gtk_save_cppflags="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS $GTK_DEP_CFLAGS" diff --git a/packages/gtk+/gtk+-2.10.3/disable-tooltips.patch b/packages/gtk+/gtk+-2.10.3/disable-tooltips.patch new file mode 100644 index 0000000000..d71d839c3c --- /dev/null +++ b/packages/gtk+/gtk+-2.10.3/disable-tooltips.patch @@ -0,0 +1,11 @@ +--- gtk+-2.4.3/gtk/gtktooltips.c.old 2004-07-04 18:52:04.000000000 +0100 ++++ gtk+-2.4.3/gtk/gtktooltips.c 2004-07-04 18:52:08.000000000 +0100 +@@ -118,7 +118,7 @@ + tooltips->tips_data_list = NULL; + + tooltips->delay = DEFAULT_DELAY; +- tooltips->enabled = TRUE; ++ tooltips->enabled = FALSE; + tooltips->timer_tag = 0; + tooltips->use_sticky_delay = FALSE; + tooltips->last_popdown.tv_sec = -1; diff --git a/packages/gtk+/gtk+-2.10.3/gtk+-handhelds.patch b/packages/gtk+/gtk+-2.10.3/gtk+-handhelds.patch new file mode 100644 index 0000000000..20481f059b --- /dev/null +++ b/packages/gtk+/gtk+-2.10.3/gtk+-handhelds.patch @@ -0,0 +1,236 @@ +--- gtk+-2.4.1/gtk/gtkarrow.c 2004-03-13 09:51:13.000000000 +1100 ++++ gtk+-2.4.1/gtk/gtkarrow.c 2004-05-26 14:52:17.000000000 +1000 +@@ -29,7 +29,7 @@ + #include "gtkarrow.h" + #include "gtkintl.h" + +-#define MIN_ARROW_SIZE 15 ++#define MIN_ARROW_SIZE 7 + + enum { + PROP_0, +@@ -53,6 +53,8 @@ + guint prop_id, + GValue *value, + GParamSpec *pspec); ++static void gtk_arrow_size_request (GtkWidget *arrow, ++ GtkRequisition *requisition); + + GType + gtk_arrow_get_type (void) +@@ -111,6 +113,7 @@ + G_PARAM_READABLE | G_PARAM_WRITABLE)); + + widget_class->expose_event = gtk_arrow_expose; ++ widget_class->size_request = gtk_arrow_size_request; + } + + static void +@@ -166,13 +169,18 @@ + } + + static void ++gtk_arrow_size_request (GtkWidget *arrow, ++ GtkRequisition *requisition) ++{ ++ requisition->width = MIN_ARROW_SIZE + GTK_MISC (arrow)->xpad * 2; ++ requisition->height = MIN_ARROW_SIZE + GTK_MISC (arrow)->ypad * 2; ++} ++ ++static void + gtk_arrow_init (GtkArrow *arrow) + { + GTK_WIDGET_SET_FLAGS (arrow, GTK_NO_WINDOW); + +- GTK_WIDGET (arrow)->requisition.width = MIN_ARROW_SIZE + GTK_MISC (arrow)->xpad * 2; +- GTK_WIDGET (arrow)->requisition.height = MIN_ARROW_SIZE + GTK_MISC (arrow)->ypad * 2; +- + arrow->arrow_type = GTK_ARROW_RIGHT; + arrow->shadow_type = GTK_SHADOW_OUT; + } +--- gtk+-2.4.1/gtk/gtkcalendar.c 2004-03-06 14:37:26.000000000 +1100 ++++ gtk+-2.4.1/gtk/gtkcalendar.c 2004-05-26 14:58:57.000000000 +1000 +@@ -340,6 +340,9 @@ + static void gtk_calendar_select_and_focus_day (GtkCalendar *calendar, + guint day); + ++static void gtk_calendar_do_select_day (GtkCalendar *calendar, ++ guint day); ++ + static void gtk_calendar_paint_arrow (GtkWidget *widget, + guint arrow); + static void gtk_calendar_paint_day_num (GtkWidget *widget, +@@ -861,13 +864,13 @@ + if (month_len < calendar->selected_day) + { + calendar->selected_day = 0; +- gtk_calendar_select_day (calendar, month_len); ++ gtk_calendar_do_select_day (calendar, month_len); + } + else + { + if (calendar->selected_day < 0) + calendar->selected_day = calendar->selected_day + 1 + month_length[leap (calendar->year)][calendar->month + 1]; +- gtk_calendar_select_day (calendar, calendar->selected_day); ++ gtk_calendar_do_select_day (calendar, calendar->selected_day); + } + + gtk_widget_queue_draw (GTK_WIDGET (calendar)); +@@ -908,10 +911,10 @@ + if (month_len < calendar->selected_day) + { + calendar->selected_day = 0; +- gtk_calendar_select_day (calendar, month_len); ++ gtk_calendar_do_select_day (calendar, month_len); + } + else +- gtk_calendar_select_day (calendar, calendar->selected_day); ++ gtk_calendar_do_select_day (calendar, calendar->selected_day); + + gtk_widget_queue_draw (GTK_WIDGET (calendar)); + gtk_calendar_thaw (calendar); +@@ -939,10 +942,10 @@ + if (month_len < calendar->selected_day) + { + calendar->selected_day = 0; +- gtk_calendar_select_day (calendar, month_len); ++ gtk_calendar_do_select_day (calendar, month_len); + } + else +- gtk_calendar_select_day (calendar, calendar->selected_day); ++ gtk_calendar_do_select_day (calendar, calendar->selected_day); + + gtk_widget_queue_draw (GTK_WIDGET (calendar)); + gtk_calendar_thaw (calendar); +@@ -974,10 +977,10 @@ + if (month_len < calendar->selected_day) + { + calendar->selected_day = 0; +- gtk_calendar_select_day (calendar, month_len); ++ gtk_calendar_do_select_day (calendar, month_len); + } + else +- gtk_calendar_select_day (calendar, calendar->selected_day); ++ gtk_calendar_do_select_day (calendar, calendar->selected_day); + + gtk_widget_queue_draw (GTK_WIDGET (calendar)); + gtk_calendar_thaw (calendar); +@@ -2480,9 +2483,9 @@ + return TRUE; + } + +-void +-gtk_calendar_select_day (GtkCalendar *calendar, +- guint day) ++static void ++gtk_calendar_do_select_day (GtkCalendar *calendar, ++ guint day) + { + g_return_if_fail (GTK_IS_CALENDAR (calendar)); + g_return_if_fail (day <= 31); +@@ -2499,6 +2502,13 @@ + if (GTK_WIDGET_DRAWABLE (GTK_WIDGET (calendar))) + gtk_calendar_paint_day_num (GTK_WIDGET (calendar), selected_day); + } ++} ++ ++void ++gtk_calendar_select_day (GtkCalendar *calendar, ++ guint day) ++{ ++ gtk_calendar_do_select_day (calendar, day); + + calendar->selected_day = day; + +--- gtk+-2.4.1/gtk/gtkentry.c 2004-04-22 08:08:08.000000000 +1000 ++++ gtk+-2.4.1/gtk/gtkentry.c 2004-05-26 14:52:17.000000000 +1000 +@@ -557,6 +557,15 @@ + 0.0, + G_PARAM_READABLE | G_PARAM_WRITABLE)); + ++ gtk_widget_class_install_style_property (widget_class, ++ g_param_spec_int ("min_width", ++ _("Minimum width"), ++ _("Minimum width of the entry field"), ++ 0, ++ G_MAXINT, ++ MIN_ENTRY_WIDTH, ++ G_PARAM_READABLE)); ++ + signals[POPULATE_POPUP] = + g_signal_new ("populate_popup", + G_OBJECT_CLASS_TYPE (gobject_class), +@@ -1124,7 +1133,7 @@ + { + GtkEntry *entry = GTK_ENTRY (widget); + PangoFontMetrics *metrics; +- gint xborder, yborder; ++ gint xborder, yborder, min_width; + PangoContext *context; + + gtk_widget_ensure_style (widget); +@@ -1140,9 +1149,11 @@ + + xborder += INNER_BORDER; + yborder += INNER_BORDER; +- ++ ++ gtk_widget_style_get (widget, "min_width", &min_width, NULL); ++ + if (entry->width_chars < 0) +- requisition->width = MIN_ENTRY_WIDTH + xborder * 2; ++ requisition->width = min_width + xborder * 2; + else + { + gint char_width = pango_font_metrics_get_approximate_char_width (metrics); +--- gtk+-2.4.1/gtk/gtkrange.c 2004-03-06 14:38:08.000000000 +1100 ++++ gtk+-2.4.1/gtk/gtkrange.c 2004-05-26 14:52:17.000000000 +1000 +@@ -180,6 +180,7 @@ + static GtkWidgetClass *parent_class = NULL; + static guint signals[LAST_SIGNAL]; + ++static GdkAtom recognize_protocols_atom, atom_atom; + + GType + gtk_range_get_type (void) +@@ -220,6 +221,9 @@ + object_class = (GtkObjectClass*) class; + widget_class = (GtkWidgetClass*) class; + ++ recognize_protocols_atom = gdk_atom_intern ("RECOGNIZE_PROTOCOLS", FALSE); ++ atom_atom = gdk_atom_intern ("ATOM", FALSE); ++ + parent_class = g_type_class_peek_parent (class); + + gobject_class->set_property = gtk_range_set_property; +@@ -815,6 +819,12 @@ + &attributes, attributes_mask); + gdk_window_set_user_data (range->event_window, range); + ++ gdk_property_change (range->event_window, ++ recognize_protocols_atom, ++ atom_atom, ++ 32, GDK_PROP_MODE_REPLACE, ++ NULL, 0); ++ + widget->style = gtk_style_attach (widget->style, widget->window); + } + +@@ -1186,7 +1196,7 @@ + + /* ignore presses when we're already doing something else. */ + if (range->layout->grab_location != MOUSE_OUTSIDE) +- return FALSE; ++ return TRUE; + + range->layout->mouse_x = event->x; + range->layout->mouse_y = event->y; +@@ -1364,7 +1374,7 @@ + return TRUE; + } + +- return FALSE; ++ return TRUE; + } + + /** diff --git a/packages/gtk+/gtk+-2.10.3/gtklabel-resize-patch b/packages/gtk+/gtk+-2.10.3/gtklabel-resize-patch new file mode 100644 index 0000000000..df29656343 --- /dev/null +++ b/packages/gtk+/gtk+-2.10.3/gtklabel-resize-patch @@ -0,0 +1,10 @@ +--- gtk+-2.4.3/gtk/gtklabel.c~ 2004-06-11 13:50:34.000000000 +0100 ++++ gtk+-2.4.3/gtk/gtklabel.c 2004-07-05 13:33:57.000000000 +0100 +@@ -1623,6 +1623,7 @@ + + /* We have to clear the layout, fonts etc. may have changed */ + gtk_label_clear_layout (label); ++ gtk_widget_queue_resize (GTK_WIDGET (label)); + } + + static void diff --git a/packages/gtk+/gtk+-2.10.3/hardcoded_libtool.patch b/packages/gtk+/gtk+-2.10.3/hardcoded_libtool.patch new file mode 100644 index 0000000000..bdbdb32f97 --- /dev/null +++ b/packages/gtk+/gtk+-2.10.3/hardcoded_libtool.patch @@ -0,0 +1,29 @@ +--- gtk+-2.10.0/configure.in.orig 2006-07-07 09:31:34.000000000 +0100 ++++ gtk+-2.10.0/configure.in 2006-07-07 09:32:49.000000000 +0100 +@@ -370,7 +370,7 @@ + AC_MSG_CHECKING([Whether to write dependencies into .pc files]) + case $enable_explicit_deps in + auto) +- deplibs_check_method=`(./libtool --config; echo eval echo \\$deplibs_check_method) | sh` ++ deplibs_check_method=`(./$host_alias-libtool --config; echo eval echo \\$deplibs_check_method) | sh` + if test "x$deplibs_check_method" '!=' xpass_all || test "x$enable_static" = xyes ; then + enable_explicit_deps=yes + else +@@ -768,7 +768,7 @@ + dnl Now we check to see if our libtool supports shared lib deps + dnl (in a rather ugly way even) + if $dynworks; then +- pixbuf_libtool_config="${CONFIG_SHELL-/bin/sh} ./libtool --config" ++ pixbuf_libtool_config="${CONFIG_SHELL-/bin/sh} ./$host_alias-libtool --config" + pixbuf_deplibs_check=`$pixbuf_libtool_config | \ + grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \ + sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'` +@@ -1600,7 +1600,7 @@ + # + # We are using gmodule-no-export now, but I'm leaving the stripping + # code in place for now, since pango and atk still require gmodule. +-export_dynamic=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh` ++export_dynamic=`(./$host_alias-libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh` + if test -n "$export_dynamic"; then + GDK_PIXBUF_DEP_LIBS=`echo $GDK_PIXBUF_DEP_LIBS | sed -e "s/$export_dynamic//"` + GDK_PIXBUF_XLIB_DEP_LIBS=`echo $GDK_PIXBUF_XLIB_DEP_LIBS | sed -e "s/$export_dynamic//"` diff --git a/packages/gtk+/gtk+-2.10.3/menu-deactivate.patch b/packages/gtk+/gtk+-2.10.3/menu-deactivate.patch new file mode 100644 index 0000000000..cfb8849e9f --- /dev/null +++ b/packages/gtk+/gtk+-2.10.3/menu-deactivate.patch @@ -0,0 +1,51 @@ +--- gtk+-2.10.0/gtk/gtkmenushell.c.orig 2006-07-05 17:17:34.000000000 +0200 ++++ gtk+-2.10.0/gtk/gtkmenushell.c 2006-07-05 17:19:01.000000000 +0200 +@@ -42,7 +42,7 @@ + #include "gtkintl.h" + #include "gtkalias.h" + +-#define MENU_SHELL_TIMEOUT 500 ++#define MENU_SHELL_TIMEOUT 2000 + + #define PACK_DIRECTION(m) \ + (GTK_IS_MENU_BAR (m) \ +@@ -203,6 +203,8 @@ + + G_DEFINE_TYPE (GtkMenuShell, gtk_menu_shell, GTK_TYPE_CONTAINER) + ++static int last_crossing_time; ++ + static void + gtk_menu_shell_class_init (GtkMenuShellClass *klass) + { +@@ -517,6 +519,7 @@ + gtk_grab_add (GTK_WIDGET (menu_shell)); + menu_shell->have_grab = TRUE; + menu_shell->active = TRUE; ++ last_crossing_time = 0; + } + } + +@@ -669,6 +672,13 @@ + menu_shell->activate_time = 0; + deactivate = FALSE; + } ++ ++ if (last_crossing_time != 0 ++ && ((event->time - last_crossing_time) < 500)) ++ { ++ last_crossing_time = 0; ++ deactivate = FALSE; ++ } + + if (deactivate) + { +@@ -716,6 +726,8 @@ + { + menu_item = gtk_get_event_widget ((GdkEvent*) event); + ++ last_crossing_time = event->time; ++ + if (!menu_item || + (GTK_IS_MENU_ITEM (menu_item) && + !_gtk_menu_item_is_selectable (menu_item))) diff --git a/packages/gtk+/gtk+-2.10.3/migration.patch b/packages |
