gtk+-2.8.6: adapt patches from 2.6
authorPhilipp Zabel <philipp.zabel@gmail.com>
Wed, 7 Dec 2005 21:38:49 +0000 (21:38 +0000)
committerOpenEmbedded Project <openembedded-devel@lists.openembedded.org>
Wed, 7 Dec 2005 21:38:49 +0000 (21:38 +0000)
packages/gtk+/gtk+-2.8.6/gtk+-handhelds.patch
packages/gtk+/gtk+-2.8.6/no-demos.patch
packages/gtk+/gtk+-2.8.6/single-click.patch
packages/gtk+/gtk+_2.8.6.bb

index 20481f0..4b97373 100644 (file)
---- 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"
+--- gtk+-2.8.6/gtk/gtkrange.c.orig     2005-12-07 21:13:33 +0100
++++ gtk+-2.8.6/gtk/gtkrange.c  2005-12-07 21:21:12 +0100
+@@ -186,6 +186,7 @@
+ static GtkWidgetClass *parent_class = NULL;
+ static guint signals[LAST_SIGNAL];
++static GdkAtom recognize_protocols_atom, atom_atom;
+ GType
+ gtk_range_get_type (void)
+@@ -226,6 +227,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;
+@@ -860,6 +864,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);
+ }
+@@ -1229,7 +1239,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;
+@@ -1429,7 +1439,7 @@
+       return TRUE;
+     }
+-  return FALSE;
++  return TRUE;
+ }
+ /**
+--- gtk+-2.8.6/gtk/gtkentry.c.orig     2005-09-02 21:51:06 +0200
++++ gtk+-2.8.6/gtk/gtkentry.c  2005-12-07 21:21:12 +0100
+@@ -597,6 +597,15 @@
+                                                      0.0,
+                                                      GTK_PARAM_READWRITE));
+   
++  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),
+@@ -1227,7 +1236,7 @@
+ {
+   GtkEntry *entry = GTK_ENTRY (widget);
+   PangoFontMetrics *metrics;
+-  gint xborder, yborder;
++  gint xborder, yborder, min_width;
+   PangoContext *context;
+   
+   gtk_widget_ensure_style (widget);
+@@ -1243,9 +1252,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.8.6/gtk/gtkarrow.c.orig     2005-06-21 17:38:39 +0200
++++ gtk+-2.8.6/gtk/gtkarrow.c  2005-12-07 21:21:12 +0100
+@@ -31,7 +31,7 @@
  #include "gtkintl.h"
+ #include "gtkalias.h"
  
 -#define MIN_ARROW_SIZE  15
 +#define MIN_ARROW_SIZE  7
  
  enum {
    PROP_0,
-@@ -53,6 +53,8 @@
+@@ -55,6 +55,8 @@
                                    guint            prop_id,
                                    GValue          *value,
                                    GParamSpec      *pspec);
  
  GType
  gtk_arrow_get_type (void)
-@@ -111,6 +113,7 @@
-                                                       G_PARAM_READABLE | G_PARAM_WRITABLE));
+@@ -113,6 +115,7 @@
+                                                       GTK_PARAM_READWRITE));
    
    widget_class->expose_event = gtk_arrow_expose;
 +  widget_class->size_request = gtk_arrow_size_request;
  }
  
  static void
-@@ -166,13 +169,18 @@
+@@ -168,13 +171,18 @@
  }
  
  static void
    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);
+--- gtk+-2.8.6/gtk/gtkcalendar.c.orig  2005-12-07 21:36:14 +0100
++++ gtk+-2.8.6/gtk/gtkcalendar.c       2005-12-07 21:49:21 +0100
+@@ -692,6 +692,35 @@
+  ****************************************/
+ static void
++calendar_select_day (GtkCalendar *calendar, guint day)
++{
++  g_return_if_fail (GTK_IS_CALENDAR (calendar));
++  g_return_if_fail (day <= 31);
++  
++  /* Deselect the old day */
++  if (calendar->selected_day > 0)
++    {
++      gint selected_day;
++      
++      selected_day = calendar->selected_day;
++      calendar->selected_day = 0;
++      if (GTK_WIDGET_DRAWABLE (GTK_WIDGET (calendar)))
++      calendar_invalidate_day_num (calendar, selected_day);
++    }
++  
++  calendar->selected_day = day;
++  
++  /* Select the new day */
++  if (day != 0)
++    {
++      if (GTK_WIDGET_DRAWABLE (GTK_WIDGET (calendar)))
++      calendar_invalidate_day_num (calendar, day);
++    }
++  
++  g_object_notify (G_OBJECT (calendar), "day");
++}
 +
- static void gtk_calendar_paint_arrow  (GtkWidget    *widget,
-                                        guint         arrow);
- static void gtk_calendar_paint_day_num        (GtkWidget    *widget,
-@@ -861,13 +864,13 @@
++static void
+ calendar_set_month_next (GtkCalendar *calendar)
+ {
+   gint month_len;
+@@ -723,10 +752,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);
++      calendar_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_calendar_select_day (calendar, calendar->selected_day);
++    calendar_select_day (calendar, calendar->selected_day);
  
    gtk_widget_queue_draw (GTK_WIDGET (calendar));
-@@ -908,10 +911,10 @@
+ }
+@@ -752,10 +781,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);
++      calendar_select_day (calendar, month_len);
      }
    else
 -    gtk_calendar_select_day (calendar, calendar->selected_day);
-+    gtk_calendar_do_select_day (calendar, calendar->selected_day);
++    calendar_select_day (calendar, calendar->selected_day);
+   
    gtk_widget_queue_draw (GTK_WIDGET (calendar));
-   gtk_calendar_thaw (calendar);
-@@ -939,10 +942,10 @@
+ }
+@@ -784,10 +813,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);
++      calendar_select_day (calendar, month_len);
      }
    else
 -    gtk_calendar_select_day (calendar, calendar->selected_day);
-+    gtk_calendar_do_select_day (calendar, calendar->selected_day);
++    calendar_select_day (calendar, calendar->selected_day);
    
    gtk_widget_queue_draw (GTK_WIDGET (calendar));
-   gtk_calendar_thaw (calendar);
-@@ -974,10 +977,10 @@
+ }
+@@ -1088,13 +1117,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);
++      calendar_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;
- }
+     {
+       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);
++      calendar_select_day (calendar, calendar->selected_day);
+     }
  
--void
--gtk_calendar_select_day (GtkCalendar *calendar,
--                       guint        day)
-+static void
-+gtk_calendar_do_select_day (GtkCalendar *calendar,
-+                          guint             day)
- {
+   gtk_widget_queue_draw (GTK_WIDGET (calendar));
+@@ -3285,27 +3314,7 @@
    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;
+-  /* Deselect the old day */
+-  if (calendar->selected_day > 0)
+-    {
+-      gint selected_day;
+-      
+-      selected_day = calendar->selected_day;
+-      calendar->selected_day = 0;
+-      if (GTK_WIDGET_DRAWABLE (GTK_WIDGET (calendar)))
+-      calendar_invalidate_day_num (calendar, selected_day);
+-    }
 -  
-+
-+  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;
- }
+-  calendar->selected_day = day;
+-  
+-  /* Select the new day */
+-  if (day != 0)
+-    {
+-      if (GTK_WIDGET_DRAWABLE (GTK_WIDGET (calendar)))
+-      calendar_invalidate_day_num (calendar, day);
+-    }
+-  
+-  g_object_notify (G_OBJECT (calendar), "day");
++  calendar_select_day (calendar, day);
  
- /**
+   g_signal_emit (calendar,
+                gtk_calendar_signals[DAY_SELECTED_SIGNAL],
index 2f10a30..0145067 100644 (file)
@@ -1,10 +1,10 @@
---- gtk+-2.4.1/Makefile.am~    2004-01-17 22:15:56.000000000 +0000
-+++ gtk+-2.4.1/Makefile.am     2004-05-08 12:25:32.000000000 +0100
+--- gtk+-2.8.6/Makefile.am.orig        2005-12-07 21:30:56 +0100
++++ gtk+-2.8.6/Makefile.am     2005-12-07 21:31:10 +0100
 @@ -1,6 +1,6 @@
  ## Makefile.am for GTK+
  
--SRC_SUBDIRS = gdk-pixbuf gdk gtk modules demos tests contrib
-+SRC_SUBDIRS = gdk-pixbuf gdk gtk modules tests contrib
- SUBDIRS = po po-properties $(SRC_SUBDIRS) docs build m4macros
+-SRC_SUBDIRS = gdk-pixbuf gdk gtk modules demos tests perf contrib
++SRC_SUBDIRS = gdk-pixbuf gdk gtk modules tests perf contrib
+ SUBDIRS = po po-properties $(SRC_SUBDIRS) docs m4macros
  
  # require automake 1.4
index 3bb208d..1bf0db1 100644 (file)
@@ -1,24 +1,6 @@
-diff -urNd ../gtk+-2.6.3-r0.old/gtk+-2.6.3/gtk/gtkcalendar.c gtk+-2.6.3/gtk/gtkcalendar.c
---- ../gtk+-2.6.3-r0.old/gtk+-2.6.3/gtk/gtkcalendar.c  2005-04-06 16:57:04 +01:00
-+++ gtk+-2.6.3/gtk/gtkcalendar.c       2005-04-06 20:05:18 +01:00
-@@ -1023,9 +1023,11 @@
-       }
-       gtk_calendar_select_and_focus_day (calendar, day);
--    }
-+      
-+      // This change causes the calendar to disappear after choosing a day
-+/*    }
-   else if (event->type == GDK_2BUTTON_PRESS)
--    {
-+    {*/
-       private_data->in_drag = 0;
-       if (day_month == MONTH_CURRENT)
-       g_signal_emit (calendar,
-diff -urNd ../gtk+-2.6.3-r0.old/gtk+-2.6.3/gtk/gtkfilesel.c gtk+-2.6.3/gtk/gtkfilesel.c
---- ../gtk+-2.6.3-r0.old/gtk+-2.6.3/gtk/gtkfilesel.c   2005-04-06 16:57:07 +01:00
-+++ gtk+-2.6.3/gtk/gtkfilesel.c        2005-04-07 13:40:32 +01:00
-@@ -2468,6 +2468,33 @@
+--- gtk+-2.8.6/gtk/gtkfilesel.c.orig   2005-12-07 21:13:33 +0100
++++ gtk+-2.8.6/gtk/gtkfilesel.c        2005-12-07 21:14:56 +0100
+@@ -2461,6 +2461,33 @@
        if (fs->last_selected != NULL)
        g_free (fs->last_selected);
  
index 126bc22..e6f0388 100644 (file)
@@ -6,7 +6,7 @@ SECTION = "libs"
 PRIORITY = "optional"
 MAINTAINER = "Philip Blundell <pb@handhelds.org>"
 DEPENDS = "glib-2.0 pango atk jpeg libpng xext libxcursor gtk-doc libgcrypt cairo"
-PR = "r0"
+PR = "r1"
 
 SRC_URI = "ftp://ftp.gtk.org/pub/gtk/v2.8/gtk+-${PV}.tar.bz2 \
            file://no-xwc.patch;patch=1 \
@@ -19,10 +19,10 @@ SRC_URI = "ftp://ftp.gtk.org/pub/gtk/v2.8/gtk+-${PV}.tar.bz2 \
           file://xsettings.patch;patch=1 \
           file://scroll-timings.patch;patch=1 \
           file://small-gtkfilesel.patch;patch=1 \
-          file://migration.patch;patch=1;pnum=0"
-#           file://no-demos.patch;patch=1
-#           file://gtk+-handhelds.patch;patch=1
-#         file://single-click.patch;patch=1
+          file://migration.patch;patch=1;pnum=0 \
+          file://no-demos.patch;patch=1 \
+          file://gtk+-handhelds.patch;patch=1 \
+          file://single-click.patch;patch=1"
 
 inherit autotools pkgconfig