summaryrefslogtreecommitdiffstats
path: root/meta/packages/gtk+/gtk+-2.6.8/gtk+-handhelds.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/packages/gtk+/gtk+-2.6.8/gtk+-handhelds.patch')
-rw-r--r--meta/packages/gtk+/gtk+-2.6.8/gtk+-handhelds.patch186
1 files changed, 186 insertions, 0 deletions
diff --git a/meta/packages/gtk+/gtk+-2.6.8/gtk+-handhelds.patch b/meta/packages/gtk+/gtk+-2.6.8/gtk+-handhelds.patch
new file mode 100644
index 0000000000..2c5fc39d23
--- /dev/null
+++ b/meta/packages/gtk+/gtk+-2.6.8/gtk+-handhelds.patch
@@ -0,0 +1,186 @@
1--- gtk+-2.4.1/gtk/gtkcalendar.c 2004-03-06 14:37:26.000000000 +1100
2+++ gtk+-2.4.1/gtk/gtkcalendar.c 2004-05-26 14:58:57.000000000 +1000
3@@ -340,6 +340,9 @@
4 static void gtk_calendar_select_and_focus_day (GtkCalendar *calendar,
5 guint day);
6
7+static void gtk_calendar_do_select_day (GtkCalendar *calendar,
8+ guint day);
9+
10 static void gtk_calendar_paint_arrow (GtkWidget *widget,
11 guint arrow);
12 static void gtk_calendar_paint_day_num (GtkWidget *widget,
13@@ -861,13 +864,13 @@
14 if (month_len < calendar->selected_day)
15 {
16 calendar->selected_day = 0;
17- gtk_calendar_select_day (calendar, month_len);
18+ gtk_calendar_do_select_day (calendar, month_len);
19 }
20 else
21 {
22 if (calendar->selected_day < 0)
23 calendar->selected_day = calendar->selected_day + 1 + month_length[leap (calendar->year)][calendar->month + 1];
24- gtk_calendar_select_day (calendar, calendar->selected_day);
25+ gtk_calendar_do_select_day (calendar, calendar->selected_day);
26 }
27
28 gtk_widget_queue_draw (GTK_WIDGET (calendar));
29@@ -908,10 +911,10 @@
30 if (month_len < calendar->selected_day)
31 {
32 calendar->selected_day = 0;
33- gtk_calendar_select_day (calendar, month_len);
34+ gtk_calendar_do_select_day (calendar, month_len);
35 }
36 else
37- gtk_calendar_select_day (calendar, calendar->selected_day);
38+ gtk_calendar_do_select_day (calendar, calendar->selected_day);
39
40 gtk_widget_queue_draw (GTK_WIDGET (calendar));
41 gtk_calendar_thaw (calendar);
42@@ -939,10 +942,10 @@
43 if (month_len < calendar->selected_day)
44 {
45 calendar->selected_day = 0;
46- gtk_calendar_select_day (calendar, month_len);
47+ gtk_calendar_do_select_day (calendar, month_len);
48 }
49 else
50- gtk_calendar_select_day (calendar, calendar->selected_day);
51+ gtk_calendar_do_select_day (calendar, calendar->selected_day);
52
53 gtk_widget_queue_draw (GTK_WIDGET (calendar));
54 gtk_calendar_thaw (calendar);
55@@ -974,10 +977,10 @@
56 if (month_len < calendar->selected_day)
57 {
58 calendar->selected_day = 0;
59- gtk_calendar_select_day (calendar, month_len);
60+ gtk_calendar_do_select_day (calendar, month_len);
61 }
62 else
63- gtk_calendar_select_day (calendar, calendar->selected_day);
64+ gtk_calendar_do_select_day (calendar, calendar->selected_day);
65
66 gtk_widget_queue_draw (GTK_WIDGET (calendar));
67 gtk_calendar_thaw (calendar);
68@@ -2480,9 +2483,9 @@
69 return TRUE;
70 }
71
72-void
73-gtk_calendar_select_day (GtkCalendar *calendar,
74- guint day)
75+static void
76+gtk_calendar_do_select_day (GtkCalendar *calendar,
77+ guint day)
78 {
79 g_return_if_fail (GTK_IS_CALENDAR (calendar));
80 g_return_if_fail (day <= 31);
81@@ -2499,6 +2502,13 @@
82 if (GTK_WIDGET_DRAWABLE (GTK_WIDGET (calendar)))
83 gtk_calendar_paint_day_num (GTK_WIDGET (calendar), selected_day);
84 }
85+}
86+
87+void
88+gtk_calendar_select_day (GtkCalendar *calendar,
89+ guint day)
90+{
91+ gtk_calendar_do_select_day (calendar, day);
92
93 calendar->selected_day = day;
94
95--- gtk+-2.4.1/gtk/gtkentry.c 2004-04-22 08:08:08.000000000 +1000
96+++ gtk+-2.4.1/gtk/gtkentry.c 2004-05-26 14:52:17.000000000 +1000
97@@ -557,6 +557,15 @@
98 0.0,
99 G_PARAM_READABLE | G_PARAM_WRITABLE));
100
101+ gtk_widget_class_install_style_property (widget_class,
102+ g_param_spec_int ("min_width",
103+ _("Minimum width"),
104+ _("Minimum width of the entry field"),
105+ 0,
106+ G_MAXINT,
107+ MIN_ENTRY_WIDTH,
108+ G_PARAM_READABLE));
109+
110 signals[POPULATE_POPUP] =
111 g_signal_new ("populate_popup",
112 G_OBJECT_CLASS_TYPE (gobject_class),
113@@ -1124,7 +1133,7 @@
114 {
115 GtkEntry *entry = GTK_ENTRY (widget);
116 PangoFontMetrics *metrics;
117- gint xborder, yborder;
118+ gint xborder, yborder, min_width;
119 PangoContext *context;
120
121 gtk_widget_ensure_style (widget);
122@@ -1140,9 +1149,11 @@
123
124 xborder += INNER_BORDER;
125 yborder += INNER_BORDER;
126-
127+
128+ gtk_widget_style_get (widget, "min_width", &min_width, NULL);
129+
130 if (entry->width_chars < 0)
131- requisition->width = MIN_ENTRY_WIDTH + xborder * 2;
132+ requisition->width = min_width + xborder * 2;
133 else
134 {
135 gint char_width = pango_font_metrics_get_approximate_char_width (metrics);
136--- gtk+-2.4.1/gtk/gtkrange.c 2004-03-06 14:38:08.000000000 +1100
137+++ gtk+-2.4.1/gtk/gtkrange.c 2004-05-26 14:52:17.000000000 +1000
138@@ -180,6 +180,7 @@
139 static GtkWidgetClass *parent_class = NULL;
140 static guint signals[LAST_SIGNAL];
141
142+static GdkAtom recognize_protocols_atom, atom_atom;
143
144 GType
145 gtk_range_get_type (void)
146@@ -220,6 +221,9 @@
147 object_class = (GtkObjectClass*) class;
148 widget_class = (GtkWidgetClass*) class;
149
150+ recognize_protocols_atom = gdk_atom_intern ("RECOGNIZE_PROTOCOLS", FALSE);
151+ atom_atom = gdk_atom_intern ("ATOM", FALSE);
152+
153 parent_class = g_type_class_peek_parent (class);
154
155 gobject_class->set_property = gtk_range_set_property;
156@@ -815,6 +819,12 @@
157 &attributes, attributes_mask);
158 gdk_window_set_user_data (range->event_window, range);
159
160+ gdk_property_change (range->event_window,
161+ recognize_protocols_atom,
162+ atom_atom,
163+ 32, GDK_PROP_MODE_REPLACE,
164+ NULL, 0);
165+
166 widget->style = gtk_style_attach (widget->style, widget->window);
167 }
168
169@@ -1186,7 +1196,7 @@
170
171 /* ignore presses when we're already doing something else. */
172 if (range->layout->grab_location != MOUSE_OUTSIDE)
173- return FALSE;
174+ return TRUE;
175
176 range->layout->mouse_x = event->x;
177 range->layout->mouse_y = event->y;
178@@ -1364,7 +1374,7 @@
179 return TRUE;
180 }
181
182- return FALSE;
183+ return TRUE;
184 }
185
186 /**