]> Pileus Git - ~andy/gtk/blob - ChangeLog
Use ngettext for plurals (#123847).
[~andy/gtk] / ChangeLog
1 2003-12-31  Christian Neumair  <chris@gnome-de.org>
2
3         * gdk-pixbuf/gdk-pixdata.c: (gdk_pixbuf_from_pixdata):
4         * gtk/gtkfilechooserdefault.c: (list_size_data_func): Use ngettext for
5         plurals (#123847).
6
7 Wed Dec 31 02:05:39 2003  Matthias Clasen  <maclas@gmx.de>
8
9         * gtk/gtkactiongroup.c (gtk_action_group_add_actions_full): 
10         (gtk_action_group_add_toggle_actions_full):
11         (gtk_action_group_add_radio_actions_full): Pull accelerator key
12         from the stock item if stock_id is given, but accelerator 
13         not.  (Noticed by Jeff Franks and Jody Goldberg)
14
15         * tests/testmerge.c: Remove the accelerator from the "Open" entry
16         to test the above change.
17         
18 2003-12-29  Federico Mena Quintero  <federico@ximian.com>
19
20         Make show_all() work for the extra and preview widgets; reported
21         by Paolo Maggi.
22
23         * gtk/gtkfilechooserdefault.c (set_preview_widget): show_all() the
24         preview widget.
25         (set_extra_widget): show_all() the extra widget.
26
27 Mon Dec 29 12:22:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
28
29         * gtk/gtkuimanager.c (do_updates): 
30         * gtk/gtktoolbar.c (slide_idle_handler): 
31         * gtk/gtkdnd.c (gtk_drag_update_idle): 
32
33         Add GDK_THREADS_ENTER()/GDK_THREADS_LEAVE() pairs around idle
34         functions. (#130157, patch from Olexiy Avramchenko).
35         
36 2003-12-29  Anders Carlsson  <andersca@gnome.org>
37
38         * gtk/gtkradiotoolbutton.c:
39         * gtk/gtkradiotoolbutton.h:
40         * gtk/gtkseparatortoolitem.c:
41         * gtk/gtkseparatortoolitem.h:
42         * gtk/gtktoggletoolbutton.c:
43         * gtk/gtktoggletoolbutton.h:
44         * gtk/gtktoolbar.c:
45         * gtk/gtktoolbar.h:
46         * gtk/gtktoolbutton.c:
47         * gtk/gtktoolbutton.h:
48         * gtk/gtktoolitem.c:
49         * gtk/gtktoolitem.h:
50         Update my e-mail address.
51         
52 Mon Dec 29 01:36:22 2003  Matthias Clasen  <maclas@gmx.de>
53
54         * gtk/gtkaccelmap.[hc]: (gtk_accel_map_lock_path, 
55         gtk_accel_map_unlock_path): Add a way to lock individual accelerator
56         paths.  (#73207, reported by Havoc Pennington)
57
58 Sat Dec 27 23:17:56 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
59
60         * gtk/gtktoolbar.c (slide_idle_handler): use CHILD_VISIBLE
61         instead of VISIBLE to determine whether we should stop
62         sliding. (#130018, reported by Christian Persch).
63
64 Fri Dec 26 23:24:35 2003  Matthias Clasen  <maclas@gmx.de>
65
66         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full): 
67         Don't use first_action without initializing it if n_entries is 0.
68
69 Thu Dec 25 00:26:34 2003  Matthias Clasen  <maclas@gmx.de>
70
71         * gdk/x11/gdkcursor-x11.c (gdk_display_get_default_cursor_size):
72         Add the missing _get_ to the name of the non-Xcursor version of
73         this function.  (noticed by Torsten Schoenfeld)
74
75 Tue Dec 23 22:34:50 2003  Manish Singh  <yosh@gimp.org>
76
77         * gtk/gtkicontheme.h: fix GTK_TYPE_ICON_INFO macro, reported by
78         muppet.
79
80 Wed Dec 24 01:12:53 2003  Matthias Clasen  <maclas@gmx.de>
81
82         * gtk/gtkclipboard.[hc]: Add GtkClipboardTargetReceivedFunc,
83         gtk_clipboard_request_targets() and 
84         gtk_clipboard_wait_for_targets().  (#101774, Dom Lachowicz)
85
86 Mon Dec 22 00:40:39 2003  Matthias Clasen  <maclas@gmx.de>
87
88         * gtk/gtkcalendar.c (gtk_calendar_paint_arrow): Use 
89         gtk_paint_arrow instead of draw_arrow_left/draw_arrow_right.
90         * gtk/gtkcalendar.c (draw_arrow_left):
91         (draw_arrow_right): Removed. 
92         * gtk/gtkcalendar.c (gtk_calendar_realize_arrows): 
93         * gtk/gtkcalendar.c (gtk_calendar_state_changed): Set the
94         arrow_state to GTK_STATE_INSENSITIVE if the calendar is 
95         insensitive.  (#97376)
96
97 Sun Dec 21 23:17:01 2003  Matthias Clasen  <maclas@gmx.de>
98
99         * gtk/gtkuimanager.c (update_node): 
100         (update_smart_separators): 
101         (_gtk_menu_is_empty): 
102         (find_menu_position): 
103         * gtk/gtktreeview.c (gtk_tree_view_search_dialog_destroy): 
104         * gtk/gtkcombobox.c (gtk_combo_box_relayout_item): 
105         (gtk_combo_box_relayout): Fix memory leaks caused by the
106         failure to free the result of gtk_container_get_children().
107
108 Sun Dec 21 17:34:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
109
110         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): Set the right
111         properties when the window becomes a toplevel. When a window that
112         was previously a toplevel becomes a toplevel again, restore its
113         window type. Also make sure the focus window is removed from the
114         XID hash when it is destroyed. (#117579, reported by Morten
115         Welinder, patch reviewed by Owen Taylor).
116
117 Sun Dec 21 01:54:40 2003  Matthias Clasen  <maclas@gmx.de>
118
119         * gtk/gtkmenushell.h: 
120         * gtk/gtkmenushell.c (gtk_menu_shell_cancel): New function 
121         to emit the "cancel" signal on a menu shell.
122
123         * gtk/gtkmenu.c (gtk_menu_key_press): 
124         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_menu): 
125         * gtk/gtkmenubar.c (_gtk_menu_bar_cycle_focus): Use the 
126         new function instead of directly emitting the 
127         signal.  (#81803, Owen Taylor)
128
129 Sun Dec 21 00:39:50 2003  Matthias Clasen  <maclas@gmx.de>
130
131         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): 
132         Fix the "language_set" blurb.  
133         
134 Sat Dec 20 22:06:03 2003  Kristian Rietveld  <kris@gtk.org>
135
136         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): do not invalidate
137         all of treeview when resizing (#110074, patch from Soeren Sandmann).
138
139 Fri Dec 19 23:36:00 2003  Kristian Rietveld  <kris@gtk.org>
140
141         Fixes #108458.
142
143         * gtk/gtkcelllayout.[ch]: added a reorder method.
144
145         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_layout_init),
146         (gtk_tree_view_column_cell_layout_reorder): implement reorder.
147
148         * gtk/gtkcellview.c (gtk_cell_view_cell_layout_init),
149         (gtk_cell_view_cell_layout_reorder): ditto.
150
151         * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_init),
152         (gtk_combo_box_cell_layout_reorder): ditto.
153
154         * gtk/gtkentrycompletion.c (gtk_entry_completion_cell_layout_init),
155         (gtk_entry_completion_reorder): ditto.
156
157 Fri Dec 19 22:18:19 2003  Kristian Rietveld  <kris@gtk.org>
158
159         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): use strstr
160         instead of strcmp (#117127, suggestion from Soeren Sandmann).
161
162 Fri Dec 19 21:52:46 2003  Kristian Rietveld  <kris@gtk.org>
163
164         * gtk/gtkmenu.c (gtk_menu_do_insert): move item insertion logic
165         here from gtk_menu_real_insert(),
166         (gtk_menu_real_insert): just call gtk_menu_do_insert(),
167         (gtk_menu_reorder_child): run _do_insert after inserting the child
168         (unbreaks _reorder_child, reported by Tim Janik).
169
170 2003-12-19  Federico Mena Quintero  <federico@ximian.com>
171
172         * gtk/gtkfilechooserdefault.c (list_mtime_data_func): Use
173         g_date_strftime() for UTF-8 correctness; use Julian dates to
174         simplify the function.
175
176 Fri Dec 19 01:47:34 2003  Matthias Clasen  <maclas@gmx.de>
177
178         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): 
179         Test extra_width, not extra_height, when determining whether to
180         set extra_width.  (#129647, Jan Arne Petersen)
181
182 Fri Dec 19 01:35:34 2003  Matthias Clasen  <maclas@gmx.de>
183
184         Fix the behaviour of insensitive actions, which was broken
185         when gtk_action_activate() was changed to pay attention to 
186         sensitivity  (#129557, Christian Persch)
187         
188         * gtk/gtkaction.h: 
189         * gtk/gtkaction.c (_gtk_action_emit_activate): New auxiliary
190         function to emit an activate signal without regard to sensitivity.
191
192         * gtk/gtkradioaction.c: 
193         * gtk/gtktoggleaction.c: Always use _gtk_action_emit_activate()
194         instead of gtk_action_activate().
195
196 Thu Dec 18 19:13:12 2003  Kristian Rietveld  <kris@gtk.org>
197
198         Fixes #110249, reworked patch from Joshua N Pritikin.
199
200         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_type),
201         (gtk_tree_model_sort_tree_drag_source_init),
202         (gtk_tree_model_sort_row_draggable),
203         (gtk_tree_model_sort_drag_data_get),
204         (gtk_tree_model_sort_drag_data_delete): implement GtkTreeDragSource.
205
206         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_get_type),
207         (gtk_tree_model_filter_tree_drag_source_init),
208         (gtk_tree_model_filter_row_draggable),
209         (gtk_tree_model_filter_drag_data_get),
210         (gtk_tree_model_filter_drag_data_delete): ditto.
211
212 Thu Dec 18 18:01:01 2003  Kristian Rietveld  <kris@gtk.org>
213
214         * gtk/gtktreeview.c (gtk_tree_view_class_init): add key bindings
215         for "*" and "/" (expand/collapse all). (#110195, reported by
216         Calum Benson).
217
218 Thu Dec 18 17:52:56 2003  Kristian Rietveld  <kris@gtk.org>
219
220         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
221         clear the extra_attrs list if we set "text" after "markup".
222         (Fixes #121933, Federico Mena Quintero).
223
224 2003-12-18  Alexander Larsson  <alexl@redhat.com>
225
226         * gtk/gtkicontheme.c (gtk_icon_info_get_embedded_rect):
227         Fix typo that used the wrong x/y values for the x1, y1 point
228         (#129605)
229
230 Thu Dec 18 01:41:50 2003  Kristian Rietveld  <kris@gtk.org>
231
232         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init),
233         (gtk_cell_renderer_text_finalize),
234         (gtk_cell_renderer_text_get_property),
235         (gtk_cell_renderer_text_set_property), (get_layout): added language
236         and language_set properties like GtkTextTag has. (#103800, reported
237         by Owen Taylor).
238
239 Thu Dec 18 01:37:59 2003  Matthias Clasen  <maclas@gmx.de>
240
241         * gtk/gtkwidget.c (gtk_widget_activate): Correct misleading docs.
242         * gtk/gtkbutton.c (gtk_button_class_init): Add docs for the 
243         "activate" signal.  (#129358, Ka-Hing Cheung)
244
245 Thu Dec 18 01:21:59 2003  Kristian Rietveld  <kris@gtk.org>
246
247         * gtk/gtktreeview.c (gtk_tree_view_class_init): Jonathan got
248         the logical flag backwards in the expand_collapse_cursor_row
249         bindings, fixing.
250         (gtk_tree_view_real_expand_collapse_cursor_row): invert expand
251         flag when !logical and in RTL. (Fixes #107527, reported by
252         Noah Levitt).
253
254 Thu Dec 18 01:10:16 2003  Kristian Rietveld  <kris@gtk.org>
255
256         * gtk/gtktreeview.c (gtk_tree_view_button_press): only start
257         editing when activated by the left mouse button. (#106869,
258         patch from Evan Martin).
259
260 Thu Dec 18 00:57:18 2003  Kristian Rietveld  <kris@gtk.org>
261
262         Migrating all cell renderers to use the new instance private data
263         construction.
264
265         * gtk/gtktreeprivate.h: remove GtkCellRendererInfo, as it is no
266         longer being used.
267
268         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init),
269         (gtk_cell_renderer_class_init), (gtk_cell_renderer_get_property),
270         (set_cell_bg_color), (gtk_cell_renderer_render): remove old
271         GtkCellRendererInfo handling, migrate to instance private data.
272
273         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_editing_done),
274         (gtk_cell_renderer_text_start_editing): moved focus_out_id
275         from GtkCellRendererInfo to text renderer private data.
276
277         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_init),
278         (gtk_cell_renderer_pixbuf_class_init),
279         (gtk_cell_renderer_pixbuf_finalize),
280         (gtk_cell_renderer_pixbuf_get_property),
281         (gtk_cell_renderer_pixbuf_set_property),
282         (gtk_cell_renderer_pixbuf_create_stock_pixbuf),
283         (gtk_cell_renderer_pixbuf_get_size), (gtk_cell_renderer_pixbuf_render):
284         migrate to instance private data.
285
286         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_class_init),
287         (gtk_cell_renderer_toggle_get_property),
288         (gtk_cell_renderer_toggle_set_property),
289         (gtk_cell_renderer_toggle_render): migrate to instance private data.
290
291 Thu Dec 18 00:24:32 2003  Kristian Rietveld  <kris@gtk.org>
292
293         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init),
294         (gtk_cell_renderer_text_get_property),
295         (gtk_cell_renderer_text_set_property), (get_layout): add a
296         single-paragraph-mode property, use private instance data.
297         (Fixes #114943, reported by Morten Welinder).
298
299 Thu Dec 18 00:07:01 2003  Kristian Rietveld  <kris@gtk.org>
300
301         * gtk/gtktreemodel.h (gtk_tree_path_new_root),
302         (gtk_tree_model_get_iter_root): now deprecated (#106953, reported
303         by Matthias Clasen).
304
305 Wed Dec 17 23:50:56 2003  Kristian Rietveld  <kris@gtk.org>
306
307         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
308         if we set a new stock_id and there was a previous stock_id, unref
309         the pixbuf (since it was used to renderer the previous stock_id
310         and stock_id might have been set to NULL now). (Fixes #122966).
311
312 2003-12-17  Marco Pesenti Gritti  <marco@gnome.org>
313
314         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_get_iter):
315
316         Check that index is not bigger than level array length
317         also when depth is 1. Now get_iter_first correctly return
318         FALSE when the model is empty (#129411).
319
320 Wed Dec 17 23:31:19 2003  Kristian Rietveld  <kris@gtk.org>
321
322         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): only
323         try to strcmp or strlen if we managed to normalize and casefold
324         the string correctly. Fixes crashes with non-UTF8 strings.
325         (#121617, Patch from Tim-Philipp Müller).
326
327 Wed Dec 17 23:20:23 2003  Matthias Clasen  <maclas@gmx.de>
328
329         * gtk/gtkexpander.c (gtk_expander_animation_timeout): Add missing
330         GDK_THREADS_ENTER()/GDK_THREADS_LEAVE().
331         * gtk/gtkcalendar.c, gtk/gtkclist.c, gtk/gtkexpander.c, 
332         gtk/gtklist.c, gtk/gtknotebook.c, gtk/gtkselection.c, 
333         gtk/gtkspinbutton.c: Cast second argument to g_timeout_add() to
334         GSourceFunc instead of GtkFunction.  (#129525, Olexiy Avramchenko) 
335
336 Wed Dec 17 23:16:45 2003  Kristian Rietveld  <kris@gtk.org>
337
338         * gtk/gtktreeview.c (gtk_tree_view_button_press): fix compile warning.
339         (#122727, patch from Kjartan Maraas).
340
341 Wed Dec 17 21:23:01 2003  Kristian Rietveld  <kris@gtk.org>
342
343         Yay! Fixed height mode! Hooray! (Part 2 of #80868).
344
345         * gtk/gtktreeview.c (gtk_tree_view_class_init),
346         (gtk_tree_view_init), (gtk_tree_view_set_property),
347         (gtk_tree_view_get_property), (gtk_tree_view_set_model): add a
348         fixed_height_mode property,
349         (intialize_fixed_height_mode), (do_validate_rows),
350         (column_sizing_notify), (gtk_tree_view_set_fixed_height_mode),
351         (gtk_tree_view_style_set), (gtk_tree_view_row_changed),
352         (gtk_tree_view_row_inserted), (gtk_tree_view_remove_column),
353         (gtk_tree_view_insert_column): implement fixed height mode,
354         (gtk_tree_view_append_column), (gtk_tree_view_insert_column),
355         (gtk_tree_view_insert_column_with_attributes),
356         (gtk_tree_view_insert_column_with_data_func): update docs.
357
358         * gtk/gtktreeprivate.h: add two fields to GtkTreePrivate.
359
360 2003-12-07  Murray Cumming  <murrayc@usa.net>
361  
362         * gtk/gtktreemodel.c:
363         (row_inserted_marshal, row_deleted_marshal, rows_reorderered_marshal)
364         Actually call the default signal handlers instead of calling the
365         marshallers themselves in an endless loop. These default signal handler
366         callbacks are not actually set so this is only noticed by gtkmm at
367         the moment. Bug 123923.
368
369 2003-12-16  Federico Mena Quintero  <federico@ximian.com>
370
371         * gtk/gtkfilesystem.h (struct _GtkFileSystemIface): Added a
372         "volumes-changed" signal.  Added the following methods:
373                 list_volumes
374                 volume_free
375                 volume_get_base_path
376                 volume_get_is_mounted
377                 volume_mount
378                 volume_get_display_name
379                 volume_render_icon
380
381         * gtk/gtkfilesystem.c (gtk_file_system_base_init): Create the
382         "volumes-changed" signal.
383         (gtk_file_system_list_volumes): New function.
384         (gtk_file_system_volume_free): New function.
385         (gtk_file_system_volume_get_base_path): New function.
386         (gtk_file_system_volume_get_is_mounted): New function.
387         (gtk_file_system_volume_mount): New function.
388         (gtk_file_system_volume_get_display_name): New function.
389         (gtk_file_system_volume_render_icon): New function.
390
391         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_free): Implement.
392         (gtk_file_system_unix_volume_get_base_path): Implement.
393         (gtk_file_system_unix_volume_get_is_mounted): Implement.
394         (gtk_file_system_unix_volume_mount): Implement.
395         (gtk_file_system_unix_volume_get_display_name): Implement.
396         (gtk_file_system_unix_volume_render_icon): Implement.
397
398         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
399         Added a field for the "volumes-changed" signal connection.
400         (gtk_file_chooser_default_set_property): Connect to
401         "volumes-changed" on the file system.
402         (gtk_file_chooser_default_finalize): Disconnect from
403         "volumes-changed".
404
405         * gtk/gtkfilechooserdefault.c (shortcuts_remove_rows): New helper
406         function.
407         (shortcuts_get_index): New helper function.
408         (shortcuts_insert_path): Can now insert volumes as well as paths.
409         (shortcuts_append_paths): Don't take is_file_system_root.
410         (shortcuts_add_volumes): New function.
411         (shortcuts_append_file_system_roots): Removed.
412         (create_shortcuts_model): Use shortcuts_add_volumes().
413         (remove_bookmark_button_clicked_cb): Check that the index is
414         within range.
415         (bookmarks_check_add_sensitivity): Take volumes into account.
416         (shortcuts_get_selected_index): New helper function.
417         (remove_bookmark_button_clicked_cb): Use
418         shortcuts_get_selected_index().
419         (bookmarks_check_remove_sensitivity): Likewise.
420         (shortcuts_select_func): Likewise.
421         (shortcuts_row_activated_cb): Handle volumes as well as normal
422         paths.
423         (shortcuts_activate_volume): New function.
424         (struct _GtkFileChooserDefault): Removed the bookmarks_set and
425         bookmarks_iter fields.
426         (shortcuts_append_bookmarks): Use shortcuts_remove_rows().
427         (bookmarks_changed_cb): Use shortcuts_add_bookmarks().
428         (remove_bookmark_rows): Removed.
429         (shortcuts_add_bookmarks): New function; moved most of the code
430         over from shortcuts_append_bookmarks().
431         (shortcuts_append_bookmarks): Add the separator node here, and
432         then call shortcuts_add_bookmarks().
433
434 Tue Dec 16 15:01:10 2003  Manish Singh  <yosh@gimp.org>
435
436         * gtk/gtkfilechooserwidget.c: fix preprocessor conditional confusion.
437         (G_OS_UNIX/G_OS_WIN32 stuff)
438
439 Tue Dec 16 01:46:46 2003  Matthias Clasen  <maclas@gmx.de>
440
441         Do not interpret distant clicks as double-clicks  (#116541,
442         Bernhard Walle):
443         
444         * gdk/gdkdisplay.h (struct GdkDisplay): Add new fields
445         double_click_distance, button_x and button_y.
446         * gdk/gdkdisplay.c (gdk_display_init): Initialize the new fields.
447
448         * gdk/gdkdisplay.h: 
449         * gdk/gdkevents.c (gdk_display_set_double_click_distance): 
450         New function to set the double click distance on a display.
451
452         * gdk/gdkevents.c: Take double click distance into account
453         when generating single, double or triple clicks.
454
455         * gtk/gtksettings.c: Add new setting "gtk-double-click-distance".
456
457         * gdk/x11/gdkevents-x11.c: Add the XSetting 
458         "Net/DoubleClickDistance" and map it to "gtk-double-click-distance".
459
460 2003-12-15  Federico Mena Quintero  <federico@ximian.com>
461
462         * gtk/gtkdialog.c: Sigh, revert the change.
463
464 2003-12-15  Federico Mena Quintero  <federico@ximian.com>
465
466         * gtk/gtkdialog.c (dialog_has_cancel): Removed.
467         (gtk_dialog_close): Don't call dialog_has_cancel().  At least
468         allows sane behavior for #101293.
469
470 Mon Dec 15 00:56:54 2003  Matthias Clasen  <maclas@gmx.de>
471
472         * gtk/gtkbutton.[hc]: Add new properties, xalign and yalign, with
473         getter and setter gtk_button_[sg]et_alignment(), to set the
474         alignment of the child.  (#70961, Jody Goldberg)
475
476 2003-12-14  Hans Breuer  <hans@breuer.org>
477
478         * gtk/gtkprivate.h gtk/gtkmain.c : handle GTK_DATADIR
479         similar as the other filesystem placement 'constants' (dynamic
480         resolving on win32)
481
482         * gtk/gtkfilechooserwidget.c : handle file system to win32
483         renaming here as will
484         * gtk/gtkfilesystemwin32.c : implement render_icon
485
486         * gtk/gtk.def gdk/gdk.def : updated externals
487
488         * gdk/win32/gdkdisplay-win32.c : make it compile without
489         <multimon.h> - i.e. even older sdk
490
491         * gdk/win32/gdkevents-win32.c : match resize_timer_proc
492         with TIMERPROC prototype
493
494         * gdk/win32/gdkwindow-win32.c : older msvc does not know
495         BITMAPV5HEADER (from win xp) either
496
497         * gtk/gtkimmodule.c : make it compile even if GTK_LOCALEDIR is
498         not defined
499
500         * tests/testfilechooser.c : recent GLib crashes on 
501         g_print ("%s", NULL) so avoid this
502
503 2003-12-14  Tor Lillqvist  <tml@iki.fi>
504
505         * gdk/win32/gdkselection-win32.c: Calls to OpenClipboard() must be
506         followed by calls to CloseClipboard(). Add a missing call to
507         CloseClipboard(). Found by Adam Wright, fixes #104944. Use
508         API_CALL macro in more places.
509
510 2003-12-14  Tor Lillqvist  <tml@iki.fi>
511
512         Merge from stable:
513
514         * gdk/gdkdisplaymanager.c: Mark default_display static.
515
516         * gdk/win32/gdkdnd-win32.c: Mark current_dest_drag static.
517
518         * gdk/win32/gdkkeys-win32.c: Disable some overly verbose debugging
519         output.
520
521         * gdk/win32/gdkevents-win32.c: Clean up the debugging output from
522         --gdk-debug=events. In general, output just one line of debugging
523         output for each Windows message, plus one line for each GDK event
524         generated. Indent all lines according to window procedure nesting
525         level.
526
527         (inner_window_procedure): Rename from real_window_procedure.
528
529         (find_real_window_for_grabbed_mouse_event): Don't get misled when
530         the point is in the non-client (decoration) area of the window
531         returned by WindowFromPoint(). Return the root window in that
532         case.
533
534         (build_pointer_event_state): Test also MK_XBUTTON1 and
535         MK_XBUTTON2 (buttons 4 and 5).
536
537         (synthesize_enter_event): Track the mouse leaving the window in
538         the event being generated, not the one mentioned in the Windows
539         message.
540
541         (propagate): Test for NULL parent earlier. Improves event
542         generation from a grabbed pointer. Part of fix for #107320.
543
544         (handle_stuff_while_moving_or_resizing): New function, to
545         dispatch the main loop (once).
546
547         (resize_timer_proc): New function, set to be called by an inerval
548         timer during resizes/moves. Calls handle_stuff_while_moving_or_resizing().
549
550         (gdk_event_translate): Drop unused return_exposes parameter.
551
552         Handle WM_XBUTTONDOWN and UP messages (buttons 4 and 5).
553
554         On WM_SYSKEYUP, generate a key release event also for just the Alt
555         key.
556
557         On WM_MOUSELEAVE, generate a leave event of type
558         GDK_NOTIFY_ANCESTOR (and not UNKNOWN) if the mouse left a
559         top-level window, and left the app completely.
560
561         On WM_ENTERSIZEMOVE, set a flag, and start an interval timer that
562         calls resize_timer_proc() at regular intervals. On
563         WM_EXITSIZEMOVE, kill the timer.
564
565         On WM_WINDOWPOSCHANGED, generate a configure event if necessary,
566         and dispatch the main loop (by calling
567         handle_stuff_while_moving_or_resizing()). Fixes #99540, idea by
568         Herman Bloggs.
569
570         * gdk/win32/gdkmain-win32.c (_gdk_win32_message_to_string): Handle
571         also wintab messages.
572
573         * gdk/win32/gdkwindow-win32.c (gdk_window_set_skip_taskbar_hint):
574         Instead of using WS_EX_TOOLWINDOW, implement by setting/unsetting
575         the window's owner. Fixes #118093, reported by Maxime Romano.
576
577 Tue Dec  8 09:41:00 2003  Tim Evans  <t.evans@aranz.com>
578
579         * gdk/win32/gdkwindow-win32.[ch]: Implement
580         gdk_window_set_icon_list() for Win32, with support for big and
581         small icons and support for alpha-channel icons under Windows
582         XP. Replaces the previous implementation of gdk_window_set_icon().
583         (#128762)
584         
585 Sun Dec 14 01:28:23 2003  Matthias Clasen  <maclas@gmx.de>
586
587         * gdk/x11/gdkprivate-x11.h: 
588         * gdk/x11/gdkx.h: 
589         * gdk/x11/gdkevents-x11.c (gdk_x11_register_standard_event_type): 
590         Rename from _gdk_x11_register_event_type(), added API docs.
591         * gdk/x11/gdkinput-x11.c (_gdk_input_common_init): 
592         * gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init): Adjust
593         all callers.  (#121471, Bill Haneman)
594
595 Sat Dec 13 23:37:50 2003  Matthias Clasen  <maclas@gmx.de>
596
597         * gdk/gdkdraw.c (gdk_draw_pixbuf): Document that the clip mask
598         of gc is ignored.  (#101983, Sebastian Rittau)
599
600 Sat Dec 13 16:13:27 2003  Kristian Rietveld  <kris@gtk.org>
601
602         A trick for a faster treeview, step 1. Patch to short circuit
603         _build_tree(), inspired by Jonathan (#80868).
604
605         * gtk/gtktreeview.c (gtk_tree_view_init): don't put _IS_LIST in
606         flags by default,
607         (gtk_tree_view_build_tree): don't even try to recurse when the
608         model says that it is a list, remove flag unsetter,
609         (gtk_tree_view_set_model): change flag setting logic.
610
611         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_flags):
612         propagate whether or not the child model has _IS_LIST set.
613
614         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_get_flags):
615         ditto.
616
617 Sat Dec 13 02:33:17 2003  Matthias Clasen  <maclas@gmx.de>
618
619         * gtk/gtkrange.c (gtk_range_scroll): Undo the last change, 
620         since it broke logical keynav. 
621         * gtk/gtkrange.c (range_get_scroll_for_grab): Fix stepper
622         direction in inverted scrollbars here instead.
623
624 Sat Dec 13 00:39:24 2003  Matthias Clasen  <maclas@gmx.de>
625
626         * gtk/gtkviewport.c (viewport_set_hadjustment_values): Implement
627         "gravity" for RTL mode in a better way: Keep the distance from 
628         the upper end of the page to the upper bound constant. This also 
629         fixes problems with the initial position of the viewport in RTL 
630         mode.  (#129063)
631         
632 Fri Dec 12 21:00:12 2003  Kristian Rietveld  <kris@gtk.org>
633
634         Combo box flipping support.
635
636         * gtk/gtkcombobox.c (gtk_combo_box_menu_position),
637         (gtk_combo_box_size_allocate): support RTL flipping (#126518,
638         patch from Matthias Clasen),
639         (gtk_combo_box_popup): fix popup window alignment if there's a
640         cell view frame visible (#126518, patch from Semion Chichelnitsky).
641
642         * gtk/gtkcellview.c (gtk_cell_view_expose): support RTL flipping
643         (#128348, patch from Semion Chichelnitsky).
644
645 Fri Dec 12 01:13:34 2003  Matthias Clasen  <maclas@gmx.de>
646
647         * examples/gtkdial/gtkdial.c:
648         * examples/menu/menu.c:
649         * examples/scribble-xinput/scribble-xinput.c:
650         * examples/progressbar/progressbar.c:
651         * docs/tutorial/gtk-tut.sgml: Remove deprecated functions
652         in examples. (#129074, Olexiy Avramchenko)
653         * examples/calendar/Makefile:
654         * examples/rangewidgets/Makefile:
655         * examples/menu/Makefile: Allow deprecated functions in
656         examples which use deprecated widgets.
657
658 Fri Dec 12 00:43:16 2003  Matthias Clasen  <maclas@gmx.de>
659
660         * gdk/gdk.c (gdk_threads_set_lock_functions): 
661         * gdk/x11/gdkspawn-x11.c: Add "Since: 2.4" to doc comments.
662
663 Fri Dec 12 00:05:31 2003  Matthias Clasen  <maclas@gmx.de>
664
665         * gtk/gtkrange.c (gtk_range_scroll): Fix direction of 
666         steppers in inverted scrollbars.  (#129084, Olexiy Avramchenko)
667
668 Thu Dec 11 23:50:30 2003  Matthias Clasen  <maclas@gmx.de>
669
670         * gtk/gtknotebook.c (gtk_notebook_pages_allocate): Don't 
671         unnecessarily reserve space for arrows in RTL mode.  (#129075,
672         Semion Chichelnitsky)
673
674 Thu Dec 11 00:35:12 2003  Matthias Clasen  <maclas@gmx.de>
675
676         Changes to allow "no input" windows (#64613):
677         
678         * gdk/gdkwindow.h (struct _GdkWindowObject): Add a new boolean
679         field accept_focus.
680         
681         * gdk/gdkwindow.h (gdk_window_set_accept_focus): New function to
682         set it.
683
684         * gtk/gtkwindow.[hc]: Add a boolean property "accept_focus"
685         and gtk_window_get_focus() and gtk_window_set_focus().
686
687         * gdk/win32/gdkwindow-win32.c (gdk_window_new): 
688         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new): 
689         * gdk/x11/gdkwindow-x11.c (gdk_window_set_new):
690         Initialize the accept_focus field to TRUE.
691
692         * gdk/win32/gdkwindow-win32.c (gdk_window_set_accept_focus): 
693         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_accept_focus): 
694         * gdk/x11/gdkwindow-x11.c (gdk_window_set_accept_focus): 
695         Implementations for the various backends. The Win32 and linux-fb
696         implementations set the accept_focus field, but don't use it yet 
697         to actually implement noinput windows. The X implementation updates
698         the WM_HINTS to select the globally active input model (see the
699         ICCCM) if accept_focus is FALSE.
700
701         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Ignore the
702         WM_TAKE_FOCUS message if accept_focus is FALSE.
703         
704 2003-12-10  Federico Mena Quintero  <federico@ximian.com>
705
706         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
707         Added toolbar items for the filter separator and the filter item.
708         (toolbar_create): Add the filter widgets here.
709         (filter_create): Renamed from create_filter().  Don't store the
710         alignment in the impl structure, just return it.
711         (toolbar_show_filters): New function.
712         (gtk_file_chooser_default_add_filter): Use toolbar_show_filters().
713         (gtk_file_chooser_default_remove_filter): Likewise.
714         (gtk_file_chooser_default_constructor): Don't create the filter
715         widget here.
716         (struct _GtkFileChooserDefault): Added a field for a current
717         folder label.
718         (gtk_file_chooser_default_constructor): Create the folder label.
719         (gtk_file_chooser_default_set_current_folder): Set the current
720         folder label.
721
722         * tests/testfilechooser.c (main): Dramatically improved the
723         usability of the extra widget through careful word choice.
724
725 2003-12-10  Mark McLoughlin  <mark@skynet.ie>
726
727         * gdk/gdk.h: include gdkspawn.h.
728
729 2003-12-10  Mark McLoughlin  <mark@skynet.ie>
730
731         * gdk/linux-fb/gdkspawn-fb.c,
732           gdk/win32/gdkspawn-win32.c,
733           gdk/x11/gdkspawn-x11.c: (gdk_spawn_command_line_on_screen):
734         s/gdk_spawn/gdk_spawn_on_screen/.
735
736 2003-12-10  Mark McLoughlin  <mark@skynet.ie>
737
738         Utility functions for multi-screen applications which need
739         to ensure launched applications appear on a certain screen.
740         See bug #95897.
741         
742         * gdk/gdkspawn.h: header for multi-screen launching
743         support.
744         
745         * gdk/Makefile.am: install gdkspawn.h.
746         
747         * gdk/x11/Makefile.am:
748         * gdk/x11/gdkspawn-x11.c:
749         (gdk_spawn_make_environment_for_screen): private function
750         to create an environment vector with DISPLAY set appropriately
751         for the screen.
752         (gdk_spawn_on_screen): multi-screen version of g_spawn_async().
753         (gdk_spawn_on_screen_with_pipes): version of g_spawn_async_with_pipes().
754         (gdk_spawn_command_line_on_screen): version of g_spawn_command_line_async().
755         
756         * gdk/linux-fb/Makefile.am,
757           gdk/linux-fb/gdkspawn-fb.c: linux-fb impl.
758         
759         * gdk/win32/Makefile.am,
760           gdk/win32/gdkspawn-win32.c: win32 impl.
761
762 2003-12-09  Federico Mena Quintero  <federico@ximian.com>
763
764         * gtk/gtkfilechooserdefault.c (shortcuts_append_home): Use "Home"
765         rather than "Username's Home" (#125964).
766         (shortcuts_selection_changed_cb): New callback, check the
767         sensitivity of the Remove Bookmark button at the right time.
768         (shortcuts_row_activated_cb): It is not necessary to check the
769         sensitivity here.
770
771 Wed Dec 10 00:06:24 2003  Matthias Clasen  <maclas@gmx.de>
772
773         Improve the GDK API for dealing with group leaders (#119375):
774         
775         * gdk/gdkwindow.h: 
776         * gdk/x11/gdkwindow-x11.c (gdk_window_get_group): New function to 
777         get the group leader of a toplevel window as a GdkWindow.
778
779         * gdk/gdkdisplay.h: 
780         * gdk/x11/gdkdisplay-x11.c (gdk_display_get_default_group): New 
781         function to get the default group leader as a GdkWindow.
782
783         * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add a field for
784         the GdkWindow of the default group leader.
785         
786         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Construct the GdkWindow
787         for the default group leader.
788
789 2003-12-09  Noah Levitt  <nlevitt@columbia.edu>
790
791         * gdk/gdkkeysyms.h:
792         * gdk/gdkkeyuni.c: Add keysyms Ukrainian_ghe_with_upturn,
793         Ukrainian_GHE_WITH_UPTURN. (#128529)
794
795 2003-12-08  Jan Arne Petersen  <jpetersen@uni-bonn.de>
796
797         * gtk/gtkfilechooserdefault.c:
798         (gtk_file_chooser_default_get_paths), (entry_activate): Use the
799         behavior of the GtkFileSelection to determine selected paths in
800         single selected, GTK_FILE_CHOOSER_ACTION_SAVE mode.
801
802 2003-12-08  Federico Mena Quintero  <federico@ximian.com>
803
804         * gtk/gtkfilechooserdefault.c
805         (gtk_file_chooser_default_get_paths): Don't declare the closure
806         struct twice.
807         (get_paths_foreach): Likewise.
808
809 Tue Dec  9 00:12:36 2003  Matthias Clasen  <maclas@gmx.de>
810
811         * gtk/gtkfilesystemwin32.[hc]: s/Unix/Win32/g. 
812
813 2003-12-08  Tor Lillqvist  <tml@iki.fi>
814
815         * gdk/win32/gdkdisplay-win32.c: Use <multimon.h> when compiling
816         with MSVC and old headers. (#126933, John Ehresman)
817
818 Mon Dec  8 10:54:44 2003  Owen Taylor  <otaylor@redhat.com>
819          
820         * === Released 2.3.1 ===
821
822         * NEWS: Updates for 2.3.1
823
824         * configure.in: Version 2.3.1, interface age 0, binary age 301.
825
826         * gtk/gtkmenuitem.c (gtk_menu_item_can_activate_accel):
827         Rename from gtk_menu_item_real_can_activate_accel() to
828         match GTK+ convention, improve comment.
829
830         * gtk/gtkwidget.c: Document gtk_widget_can_activate_accel(),
831         can ::can-activate-accel signal.
832
833         * gtk/gtkwidget.c (closure_accel_activate): Fix spelling
834         in comment.
835
836         * gtk/gtkmenu.c (gtk_menu_real_can_activate_accel): Clean 
837         up comment.
838         
839         * gtk/gtkcellview{,menuitem}.[ch]: Move GET_PRIVATE() macros
840         into the .c file.
841
842 Mon Dec  8 12:09:21 2003  Owen Taylor  <otaylor@redhat.com>
843
844         * gtk/gtkicontheme.c (find_builtin_icon): Fix a
845         missing 'else'. (#128816, Jorn Baayen)
846
847 2003-12-02  Michael Meeks  <michael@ximian.com>
848
849         Based on a patch by Martin Kretzschmar; #122448
850         
851         * gdk/gdk.h: new gdk_threads_lock, gdk_threads_unlock, point to
852         implementation of GDK_THREADS_ENTER / GDK_THREADS_LEAVE.
853         (GDK_THREADS_ENTER, GDK_THREADS_LEAVE): use gdk_threads_[un]lock
854         function pointers. Deprecate the global gdk_threads_mutex variable.
855         
856         * gdk/gdk.c (gdk_threads_impl_lock, gdk_threads_impl_unlock): new,
857         extracted from GTK_THREADS_ENTER/LEAVE macros.
858         (gdk_threads_init): init gtk_threads_[un]lock if not set.
859         (gdk_threads_set_lock_functions): impl.
860
861         * gdk/gdkglobals.c: add definitions of gdk_threads_[un]lock.
862
863 Sun Dec  7 23:45:40 2003  Matthias Clasen  <maclas@gmx.de>
864
865         * gtk/gtkicontheme.c (gtk_icon_theme_has_icon): Don't crash if
866         icon_theme_builtin_icons hasn't been initialized.  (#128726, Diego
867         Gonzalez)
868
869 2003-12-07  Tor Lillqvist  <tml@iki.fi>
870
871         * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon): Don't use the
872         return value from SendMessage(WM_SETICON). That is the old
873         icon. Fixes GDI resource leak. (#128559, Tim Evans)
874
875         * gdk/win32/gdkevents-win32.c (gdk_pointer_grab): If we already
876         have a pointer grab active with a grab cursor set, destroy that
877         cursor to avoid a GDI resource leak. (#128410, Tim Evans)
878
879 2003-12-05  Paisa Seeluangsawat  <paisa@users.sf.net>
880
881         * configure.in: Added Thai (th) to ALL_LINGUAS.
882
883 Sat Dec  6 01:42:04 2003  Matthias Clasen  <maclas@gmx.de>
884
885         * gtk/gtkalignment.c (gtk_alignment_size_allocate): Implement
886         RTL flipping for GtkAlignment.  (#127585)
887
888 Sat Dec  6 01:13:09 2003  Matthias Clasen  <maclas@gmx.de>
889
890         * gtk/gtkcombo.c (gtk_combo_get_pos): Fix the position of the 
891         popup window when in RTL mode.  (#127578)
892
893 Fri Dec  5 15:30:16 2003  Manish Singh  <yosh@gimp.org>
894
895         * gtk/gtkaccelgroup.c (quick_accel_find): Applied patch from
896         Ross McFarland <rwmcfa1@neces.com>, initialize *count_p to 0
897         before doing anything to prevent garbage returns.
898
899 Sat Dec  6 00:23:46 2003  Matthias Clasen  <maclas@gmx.de>
900
901         * gtk/gtkviewport.c: Implement RTL flipping for 
902         GtkViewport: Adjust the "gravity" when resizing
903         This is a bit flickery in RTL mode.  (#107526)
904
905 Sat Dec  6 00:22:14 2003  Matthias Clasen  <maclas@gmx.de>
906
907         * gtk/gtkscrolledwindow.c: Implement RTL flipping for 
908         GtkScrolledWindow: the vertical scrollbar shows up on the left
909         side in RTL mode.  (#107526)
910
911 Fri Dec  5 01:58:33 2003  Matthias Clasen  <maclas@gmx.de>
912
913         * gtk/gtknotebook.c: Implement RTL flipping for GtkNotebook:
914         tabs displayed at the top/bottom are rearranged, and tabs on
915         the left/right are displayed at the opposite edge.  (#96630)
916
917 2003-12-04  Mark McLoughlin  <mark@skynet.ie>
918
919         * gtk/gtklabel.c: (gtk_label_set_attributes_internal): Allow
920         gtk_label_set_attributes() take NULL. See bug #128517.
921
922 2003-12-03  Federico Mena Quintero  <federico@ximian.com>
923
924         * gtk/gtkfilechooserentry.c (struct _GtkFileChooserEntry): Removed
925         the in_change flag.
926         (completion_idle_callback): Use a temporary list store and re-set
927         it on the completion rather than modifying the old one.  We are
928         re-reading the folder anyway, and this gets rid of non-atomicity
929         problems.
930
931 2003-12-01  Federico Mena Quintero  <federico@ximian.com>
932
933         Decouple impl->current_folder from the selection in the folder
934         tree.  This is so that going to /home/federico/.foo (e.g. from a
935         bookmark) will work even if show_hidden == FALSE.  The folder tree
936         needs to be fixed in this case to show such folders explicitly.
937
938         * gtk/gtkfilechooserdefault.c
939         (gtk_file_chooser_default_set_current_folder): When changing
940         folders, do the entry and list model work here, instead of
941         tree_selection_changed().
942         (struct _GtkFileChooserDefault): Added a changing_folder flag
943         again, dum de dum.
944         (tree_selection_changed): Use _gtk_file_chooser_set_current_folder_path().
945
946 Tue Dec  2 01:01:54 2003  Matthias Clasen  <maclas@gmx.de>
947
948         * gtk/gtkiconfactory.h: Remove duplicate declaration of 
949         gtk_icon_source_set_icon_name().  (#Jeff Franks, #128269)
950
951 2003-12-01  Federico Mena Quintero  <federico@ximian.com>
952
953         Patch from Hans-Petter Jansson <hpj@ximian.com> to align the
954         bookmarks buttons with the location entry.
955
956         * gtk/gtkfilechooserdefault.c
957         (gtk_file_chooser_default_constructor): Use a GtkSizeGroup for the
958         bookmarks buttons and the location entry.
959
960 2003-12-01  Federico Mena Quintero  <federico@ximian.com>
961
962         * gtk/gtkfilechooserdefault.c (create_shortcuts_tree): Set the
963         shortcuts tree as a drag destination.
964         (shortcuts_drag_data_received_cb): New callback.
965         (get_file_info): Also fetch information on whether the file is a folder.
966         (add_bookmark_button_clicked_cb): Use error_could_not_add_bookmark_dialog().
967         (error_could_not_add_bookmark_dialog): New function.
968         (shortcuts_add_bookmark_from_path): New helper function.
969         (add_bookmark_button_clicked_cb): Use shortcuts_add_bookmark_from_path().
970         (shortcuts_row_activated): We no longer need the changing_folder flag.
971         (struct _GtkFileChooserDefault): Likewise.
972
973 Sun Nov 30 17:31:32 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
974
975         * gtk/gtktoolbar.c (slide_idle_handler): return TRUE if there are
976         disappearing placeholders that are still visible.
977
978         * gtk/gtktoolbar.c: formatting fixes
979
980         * gtk/gtktoolbar.c (struct _ToolbarContent): new bit:
981         disappearing, for placeholders that are going to disappear.
982
983         * gtk/gtktoolbar.c (get_item_size): return 0 for disappearing placeholders
984
985 Sat Nov 29 00:55:28 2003  Jonathan Blandford  <jrb@gnome.org>
986
987         * gtk/gtktreeview.c (gtk_tree_view_new_column_width): 
988         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
989         Patch from <chinen@jp.ibm.com> to handle RTL support for column
990         resizers, #127874
991
992 Fri Nov 28 00:26:24 2003  Matthias Clasen  <maclas@gmx.de>
993
994         * gtk/gtkfilesystemmodel.c (gtk_file_system_model_finalize): 
995         Don't use freed memory.  (#127698, Taavi Talvik) 
996
997 Fri Nov 28 00:09:10 2003  Matthias Clasen  <maclas@gmx.de>
998
999         * gtk/gtkfilechooserentry.c: Remove debug g_print()s. 
1000
1001 Thu Nov 27 22:17:50 2003  Matthias Clasen  <maclas@gmx.de>
1002
1003         * gtk/gtkuimanager.c: Remove debug define.
1004
1005 Thu Nov 27 16:19:03 2003  Tim Janik  <timj@gtk.org>
1006
1007         * gtk/gtkmenu.c: allow accel activation depending on sensitivity
1008         and the attach widget.
1009
1010         * gtk/gtkmenuitem.c: allow accel activation depending on visibility,
1011         sensitivity and the parent menu.
1012
1013         * gtk/gtkwidget.[hc]: introduced ::can-activate-accel signal which
1014         checks whether accelerators may activate a widget. the default handler
1015         demands the widget be sensitive and visible+viewable.
1016
1017         * gtk/gtkaccelgroup.[hc]: export gtk_accel_group_activate().
1018
1019 Tue Nov 25 00:10:05 2003  Matthias Clasen  <maclas@gmx.de>
1020
1021         * gtk/gtkuimanager.c (update_node): Don't show accelerators in
1022         popup menus.  (#127227)
1023
1024 Mon Nov 24 13:47:39 GMT 2003  Tony Gale <gale@gtk.org>
1025
1026         * docs/faq/gtk-faq.sgml: start 2.x Section 4 updates
1027
1028 Mon Nov 24 04:05:15 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1029
1030         * gtk/gtkradiotoolbutton.[ch]
1031         (gtk_radio_tool_button_new_from_widget): Make this function take a
1032         GtkRadioToolButton instead of a GtkWidget. (#127729, Murray
1033         Cumming)
1034
1035 Mon Nov 24 02:34:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1036
1037         * gtk/gtktoolbar.c: remove variables in_dnd and leaving_dnd
1038
1039 Mon Nov 24 02:19:33 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1040
1041         * gtk/gtktoolbar.c: remove variable
1042         n_overflowed_menu_items_when_dnd_started
1043
1044 Mon Nov 24 01:47:10 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1045
1046         Rework sliding algorithm.
1047         - No more weird jumping when items are dragged off and added to
1048         the toolbar,
1049         - More natural item movement
1050
1051         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Many changes. This
1052         function is now responsible for calculating intermediate positions
1053         during item sliding. It is also responsible for starting sliding
1054         if items disappear.  Also turn off expanding when there is an
1055         overflow menu.
1056         (gtk_toolbar_begin_sliding, stop_sliding): New functions.
1057         (slide_idle_handler): New function. All the sliding is now done by
1058         gtk_toolbar_size_allocate(), so the idle handler now just checks
1059         if there is more sliding to be done.
1060         (compute_intermediate_allocation, position): new functions
1061         calculating intermediate steps in the slide animations. The new
1062         animation algorithm uses a constant speed instead of a constant
1063         must-be-finished-within time.
1064         (struct _ToolbarContent): use 
1065         GtkAllocation goal_allocation; and 
1066         GtkAllocation start_allocation; instead of 
1067         gint start/goal_width;
1068
1069         * gtk/gtktoolitem.c (gtk_tool_item_set_tooltip): fix typo in
1070         documentation
1071
1072 Sun Nov 23 22:26:25 2003  Matthias Clasen  <maclas@gmx.de>
1073
1074         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): Make tooltip 
1075         positioning Xinerama-aware.  (#127332)
1076
1077 Fri Nov 21 01:57:21 2003  Matthias Clasen  <maclas@gmx.de>
1078
1079         * gdk/x11/gdkscreen-x11.c (init_xinerama_support): Make monitor
1080         boundaries visible in fake Xinerama mode.
1081
1082 Thu Nov 20 15:41:56 2003  Manish Singh  <yosh@gimp.org>
1083
1084         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state): cast to GTK_WIDGET()
1085         for the gtk_widget_hide() call.
1086
1087 Thu Nov 20 14:51:41 2003  Jonathan Blandford  <jrb@redhat.com>
1088
1089         * gtk/gtktreedatalist.c (gtk_tree_data_list_compare_func): Patch
1090         from David Hampton to fix sorting on booleans.
1091
1092 Thu Nov 20 15:48:03 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1093
1094         * gtk/gtksocket.c (gtk_socket_focus): Use gtk_widget_is_focus()
1095         instead of GTK_WIDGET_HAS_FOCUS. (#122327, Owen Taylor. Reported
1096         by Frederic Crozat).
1097
1098 Thu Nov 20 13:10:29 GMT 2003  Tony Gale <gale@gtk.org>
1099
1100         * docs/faq/gtk-faq.sgml: Update Section 3 to 2.x
1101
1102 2003-11-19  Federico Mena Quintero  <federico@ximian.com>
1103
1104         Fixes to problems reported by Iain Holmes:
1105
1106         * gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Do not
1107         throw up an error dialog if the desktop doesn't exist.
1108         (error_message): Handle the case where there is no real toplevel
1109
1110         yet.
1111         (list_model_filter_func): Always let folders pass through (patch
1112         by Dave Malcolm).
1113
1114 Wed Nov 19 23:19:23 2003  Kristian Rietveld  <kris@gtk.org>
1115
1116         * gtk/gtkcombobox.[ch] (gtk_combo_box_scroll_event): move function
1117         to a somewhat more logical place,
1118         (gtk_combo_box_remove_text): New function (#125262, Owen Taylor).
1119
1120 Wed Nov 19 22:15:01 2003  Kristian Rietveld  <kris@gtk.org>
1121
1122         * gtk/gtkentry.c (gtk_entry_completion_timeout): always resize
1123         the popup when it is visible, popdown when there are less chars
1124         than the minimum key length in the entry,
1125         (gtk_entry_completion_changed): popdown when the entry is empty.
1126
1127         * gtk/gtkentrycompletion.c (gtk_entry_completion_init): set the
1128         size request of the vscrollbar to (-1, 0), to get a nicely sized
1129         completion treeview (Fixes #126573, reported by Piers Cornwell),
1130         (_gtk_entry_completion_resize_popup): show/hide the action_view
1131         based on items.
1132
1133 2003-11-19  Federico Mena Quintero  <federico@ximian.com>
1134
1135         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_init): Turn
1136         off the dialog's separator (thanks to Iain Holmes).
1137
1138 Wed Nov 19 18:15:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1139
1140         * gtk/gtkmenu.c (DEFAULT_POPUP_DELAY): set to 200 instead of 225
1141         * gtk/gtkmenuitem.c (get_minimum_width): Impose a minimum width
1142         on items that have a submenu. (#120104).
1143
1144 Wed Nov 19 18:11:08 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1145
1146         * gtk/gtktoolbar.c (struct _ToolbarContent): Add a new
1147         "ItemState" field indicating the overflowed-ness etc. of the item.
1148         (gtk_toolbar_size_allocate): update the field here.
1149
1150 2003-11-19  Federico Mena Quintero  <federico@ximian.com>
1151
1152         * gtk/gtkfilechooserdefault.c (create_filter): Don't add padding
1153         to the alignment.  Use the HIG-specified spacing between the
1154         filter label and the combo.
1155         (create_filename_entry): Use HIG-specified spacing between the
1156         location label and the entry.
1157         (gtk_file_chooser_default_constructor): Don't use vertical padding
1158         around the filename entry.
1159
1160 2003-11-19  Federico Mena Quintero  <federico@ximian.com>
1161
1162         * gtk/gtkfilesystem.h (struct _GtkFileSystemIface): Added a
1163         render_icon virtual method.
1164
1165         * gtk/gtkfilesystem.c (gtk_file_system_render_icon): New function.
1166
1167         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_render_icon):
1168         Implement as a stub for now.
1169
1170         * gtk/gtkfilechooserdefault.c (shortcuts_insert_path): Use
1171         gtk_file_system_render_icon().
1172         (list_icon_data_func): Likewise.
1173         (toolbar_create): Set the toolbar style to icons only.
1174
1175         * gtk/gtkfilechooser.c (gtk_file_chooser_add_shortcut_folder_uri):
1176         Fix doc comments.
1177
1178 Wed Nov 19 02:18:37 2003  Matthias Clasen  <maclas@gmx.de>
1179
1180         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state): Call 
1181         gtk_widget_hide(menu) when reattaching the menu.  (#126057) 
1182
1183 Wed Nov 19 00:06:04 2003  Kristian Rietveld  <kris@gtk.org>
1184
1185         * gtk/gtkentrycompletion.c (gtk_entry_completion_selection_changed):
1186         only unselect all items if the treeview has focus. (Fixes bug
1187         reported by Marco Pesenti Gritti).
1188
1189 Tue Nov 18 22:26:30 2003  Kristian Rietveld  <kris@gtk.org>
1190
1191         * gtk/gtkentry.c (gtk_entry_completion_key_press): the total
1192         number of actions is "matches + actions - 1". (Fixes #126572).
1193
1194 Tue Nov 18 21:05:05 2003  Christian Persch  <chp@cvs.gnome.org>
1195
1196         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_inserted): fix
1197         mem leaks (#119435).
1198
1199 Tue Nov 18 20:51:38 2003  Kristian Rietveld  <kris@gtk.org>
1200
1201         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_deleted): don't
1202         try to fetch the child back, since we do know that it is already
1203         gone by now (#126493, Marco Pesenti Gritti).
1204
1205 Tue Nov 18 19:47:59 2003  Kristian Rietveld  <kris@gtk.org>
1206
1207         Fixes based on comments from Owen Taylor, #125264.
1208
1209         * gtk/gtkcellview.[ch] (gtk_cell_view_finalize): remove unused
1210         variable,
1211         (gtk_cell_view_set_value), (gtk_cell_view_set_displayed_model): queue
1212         a resize,
1213         (gtk_cell_view_get_size_of_row): new function,
1214         (gtk_cell_view_set_value), (gtk_cell_view_set_valuesv),
1215         (gtk_cell_view_set_values), (gtk_cell_view_set_model),
1216         (gtk_cell_view_set_displayed_row), (gtk_cell_view_get_displayed_row):
1217         s/cellview/cell_view/ in the function definitions, so they match
1218         with the header file.
1219
1220         * gtk/gtkcombobox.c (gtk_combo_box_remeasure): remove the resize
1221         flag again (:, and use gtk_cell_view_get_size_of_row instead of
1222         the measurer, remove _set_size_request call,
1223         (gtk_combo_box_calc_requested_width): use gtk_cell_view_get_size_of_row
1224         instead of the measurer,
1225         (gtk_combo_box_style_set): queue a resize,
1226         (gtk_combo_box_size_request): update of _remeasure call,
1227         (gtk_combo_box_init), (gtk_combo_box_cell_layout_pack_start),
1228         (gtk_combo_box_cell_layout_pack_end),
1229         (gtk_combo_box_cell_layout_clear),
1230         (gtk_combo_box_set_model): get rid of the measurer,
1231         (gtk_combo_box_cell_layout_add_attribute),
1232         (gtk_combo_box_cell_layout_set_cell_data_func),
1233         (gtk_combo_box_cell_layout_clear_attributes): ditto and queue a
1234         resize instead of calling _remeasure.
1235
1236 Mon Nov 17 16:25:04 2003  Manish Singh <yosh@gimp.org>
1237
1238         * gdk-pixbuf/Makefile.am
1239         * modules/input/Makefile.am: Use install-data-hook for
1240         gdk-pixbuf.loaders and gtk.immodules install generation targets.
1241         Fixes #112806.
1242
1243         * gtk/gtkexpander.h: Apply missing declarations from #124449.
1244
1245 Tue Nov 18 00:12:55 2003  Matthias Clasen  <maclas@gmx.de>
1246
1247         Fix for #119555, Peter Zelezny:
1248         
1249         * gdk/gdkdrawable.h: Declare gdk_drawable_copy_to_image.
1250         * gdk/gdkdraw.c (gdk_drawable_copy_to_image): Make public
1251         by removing the _ prefix. 
1252         * gdk/gdkdraw.c, gdk/gdkpixbuf-drawable.c, gdk/gdkpixmap.c, 
1253         gdk/gdkwindow.c: Adjust all callers.
1254
1255 Mon Nov 17 23:36:02 2003  Matthias Clasen  <maclas@gmx.de>
1256
1257         * gtk/gtkaction.c (gtk_action_activate): Only activate if 
1258         the action is sensitive.  (#127187, Christian Persch)
1259
1260 Mon Nov 17 23:23:49 2003  Matthias Clasen  <maclas@gmx.de>
1261
1262         * gtk/gtkcombobox.c: Add mouse wheel support.  (#126517)
1263
1264 Mon Nov 17 22:56:09 2003  Kristian Rietveld  <kris@gtk.org>
1265
1266         * gtk/gtkentryprivate.h: add _gtk_entry_completion_resize_popup.
1267
1268         * gtk/gtkentry.c (gtk_entry_completion_timeout): popup when not
1269         mapped, else resize_popup.
1270
1271         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup),
1272         (_gtk_entry_completion_popup): moved all popup resizing code to
1273         _gtk_entry_completion_resize_popup, and show the window when there
1274         are more than zero items in the completion list again (sigh).
1275
1276 2003-11-17  Mark McLoughlin  <mark@skynet.ie>
1277
1278         Patch from Jaiserca <jaiserca@inf.upv.es> to add a
1279         "use_markup" property. See bug #124449.
1280
1281         * gtk/gtkexpander.c:
1282         (gtk_expander_class_init),
1283         (gtk_expander_init), (gtk_expander_set_property),
1284         (gtk_expander_get_property), (gtk_expander_set_label),
1285         (gtk_expander_set_use_markup),  (gtk_expander_get_use_markup):
1286         Add a "use_markup" property and use it when creating the
1287         child label.
1288
1289 Mon Nov 17 12:58:32 2003  Kristian Rietveld  <kris@gtk.org>
1290
1291         Temporary size requisition fix. Will fix it for real tonight.
1292
1293         * gtk/gtkcombobox.c (gtk_combo_box_remeasure): add a resize flag,
1294         (gtk_combo_box_size_request): use gtk_combo_box_remeasure to determine
1295         a good width for the child,
1296         (gtk_combo_box_cell_layout_add_attribute),
1297         (gtk_combo_box_set_cell_data_func),
1298         (gtk_combo_box_cell_layout_clear_attributes): update.
1299
1300 Mon Nov 17 00:11:21 2003  Kristian Rietveld  <kris@gtk.org>
1301
1302         Fixes #124373, Murray Cumming.
1303
1304         * gtk/gtkcombobox.[ch] (gtk_combo_box_class_init): the model property
1305         is no longer construct only,
1306         (gtk_combo_box_unset_model), (gtk_combo_box_set_model_internal),
1307         (gtk_combo_box_menu_fill): new functions,
1308         (gtk_combo_box_menu_setup), (gtk_combo_box_menu_destroy),
1309         (gtk_combo_box_menu_row_*), (gtk_combo_box_list_setup),
1310         (gtk_combo_box_list_destroy): updated,
1311         (gtk_combo_box_new), (gtk_combo_box_new_with_model): new/changed
1312         functions,
1313         (gtk_combo_box_set_model): is now public, updated,
1314         (gtk_combo_box_get_model): small update.
1315
1316         * gtk/gtkcomboboxentry.[ch] (gtk_combo_box_entry_class_init): the
1317         text_column property is no longer construct only,
1318         (gtk_combo_box_entry_set_text_column): now public,
1319         (gtk_combo_box_entry_new), (gtk_combo_box_entry_new_with_model):
1320         new/changed functions.
1321
1322         * tests/testcombo.c: updated.
1323
1324 Sun Nov 16 22:50:58 2003  Matthias Clasen  <maclas@gmx.de>
1325
1326         Reinstate fixes for (#124212, Marco Pesenti Gritti):
1327         
1328         * gtk/gtkuimanager.c (update_smart_separators): Don't spit 
1329         warnings for popups.
1330         (_gtk_menu_is_empty): Return FALSE for non-menus.
1331
1332 Sun Nov 16 21:48:40 2003  Kristian Rietveld  <kris@gtk.org>
1333
1334         * gtk/gtkcellview.c (gtk_cell_view_finalize): just call
1335         gtk_cell_view_cell_layout_clear instead of trying to free the
1336         structure ourselves here. (#125726, Morten Welinder).
1337
1338 Sun Nov 16 00:35:29 2003  Matthias Clasen  <maclas@gmx.de>
1339
1340         * gtk/gtkfilechooser.[hc]: 
1341         * gtk/gtkentrycompletion.h: Fix parameter name mismatches which
1342         confuse gtk-doc.
1343
1344 2003-11-15  Hans Breuer  <hans@breuer.org>
1345
1346         * gdk/makefile.msc gdk/gdk.def 
1347             gtk/gtk.def gtk/makefile.msc.in : updated
1348         * tests/makefile.msc : added all the new tests
1349
1350         * gtk/gtkfilefilter.c(finalize) : initialize filter
1351         from object not from itself
1352
1353         * gtk/gtkfilesystemwin32.[hc] : copied from gtkfilesystemunix.[hc]
1354         modified as less as posible to have aworking implementation
1355         on win32. There maybe the desire to merge the unchanged pats into
1356         a common base class.
1357         Also implemented a simple glib based bookmark handling, which
1358         is currently missing in gtkfilesystemunix.[hc] but can be copied
1359         over there.
1360         * gtk/gtkfilechooserwidget.c : conditional include gtkfilesystemwin32.h
1361
1362         * gdk/win32/gdkwindow-win32.c : implement 
1363         gdk_window_set_keep_above() and gdk_window_set_keep_below()
1364
1365         * tests/testmerge.c : don't include unistd.h unconditionally,
1366         #define STDOUT_FILENO if it isn't defined
1367
1368         * tests/testfilechooser.c : make it compile on win32
1369
1370 2003-11-15  Tor Lillqvist  <tml@iki.fi>
1371
1372         * gdk/win32/gdkwindow-win32.c (gdk_window_focus): If the window is
1373         maximized, use SW_SHOWMAXIMIZED. (#126986, John Ehresman)
1374
1375 Thu Nov 13 12:55:29 GMT 2003  Tony Gale <gale@gtk.org>
1376
1377         * docs/faq/gtk-faq.sgml: Update the rest of Section 2
1378
1379 Thu Nov 13 01:46:32 2003  Matthias Clasen  <maclas@gmx.de>
1380
1381         * gtk/gtkicontheme.c (gtk_icon_theme_init): Use 
1382         GTK_DATADIR/{icons,pixmaps} instead of 
1383         GTK_DATA_PREFIX/{icons,pixmaps}.  (#123365, Marco Pesenti Gritti)
1384
1385 Wed Nov 12 21:40:10 2003  Matthias Clasen  <maclas@gmx.de>
1386
1387         Changes to improve menu positioning on Xinerama (#108328, #126150):
1388         
1389         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Use the event 
1390         window of the menuitem to determine the monitor. This fixes some
1391
1392         * gtk/gtkmenu.c (struct _GtkMenuPrivate): Add a menu_num field
1393         to store the monitor on which the menu is to be positioned.
1394
1395         * gtk/gtkmenu.[hc] (gtk_menu_position): Store the monitor number
1396         in the GtkMenuPrivate struct and fetch the monitor geometry after
1397         calling the position_func, in case it has been changed.
1398
1399         * gtk/gtkmenu.c (gtk_menu_set_monitor): New function 
1400         to be used in GtkMenuPositionFunc implementations for setting
1401         the monitor_num field in GtkMenuPrivate.
1402
1403         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Call 
1404         gtk_menu_set_monitor.
1405
1406 Wed Nov 12 21:00:10 2003  Matthias Clasen  <maclas@gmx.de>
1407
1408         * gtk/gtkinputdialog.c (gtk_input_dialog_init): Clarify the
1409         label for the empty list. String change.  (#95446, Tomas Ã–gren)
1410
1411 Wed Nov 12 20:57:50 2003  Matthias Clasen  <maclas@gmx.de>
1412
1413         * gtk/gtkicontheme.h (enum GtkIconLookupFlags): Correct
1414         the definition of the values.  (#123361, Marco Pesenti Gritti)
1415
1416 Wed Nov 12 20:54:02 2003  Matthias Clasen  <maclas@gmx.de>
1417
1418         * gdk/gdkkeyuni.c: Map KP_Separator to ','.
1419         (#122941, Egmont Koblinger)
1420
1421 2003-11-12  Padraig O'Briain  <padraig.obriain@sun.com>
1422
1423         *gtk/gtkcolorsel.c (gtk_color_selection_init): Add tooltip for
1424         opacity entry widget. Change tooltip for opacity widgets. (#126426)
1425
1426 2003-11-12  Padraig O'Briain  <padraig.obriain@sun.com>
1427
1428         * gtk/gtkmenu.c (gtk_menu_popup): Do not let pointer position
1429         affect window menu position when popped from keyboard. (#102660)
1430
1431 Wed Nov 12 01:29:32 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1432
1433         * gtk/gtktoolbar.c (gtk_toolbar_internal_insert_element): When we
1434         are using the old API, make all items "is_important". That way
1435         BOTH_HORIZ will continue to show both icon and label in old API
1436         mode.
1437
1438 Mon Nov 10 00:40:41 2003  Matthias Clasen  <maclas@gmx.de>
1439
1440         * gtk/gtkeventbox.c (gtk_event_box_set_above_child): 
1441         Remember the new value in all cases.  (#126276, Damon Chaplin)
1442
1443 Sat Nov  8 23:06:02 2003  Matthias Clasen  <maclas@gmx.de>
1444
1445         * demos/gtk-demo/main.c (row_activated_cb): Call the do_
1446         functions with the toplevel as argument.
1447
1448         * demos/gtk-demo/geninclude.pl.in: Change the signature
1449         of GDoDemoFunc to take a widget argument
1450
1451         * demos/gtk-demo/ui_manager.c (do_ui_manager): 
1452         * demos/gtk-demo/tree_store.c (do_tree_store): 
1453         * demos/gtk-demo/textview.c (do_textview): 
1454         * demos/gtk-demo/stock_browser.c (do_stock_browser): 
1455         * demos/gtk-demo/sizegroup.c (do_sizegroup): 
1456         * demos/gtk-demo/pixbufs.c (do_pixbufs): 
1457         * demos/gtk-demo/panes.c (do_panes): 
1458         * demos/gtk-demo/menus.c (do_menus): 
1459         * demos/gtk-demo/list_store.c (do_list_store): 
1460         * demos/gtk-demo/images.c (do_images): 
1461         * demos/gtk-demo/hypertext.c (do_hypertext): 
1462         * demos/gtk-demo/editable_cells.c (do_editable_cells): 
1463         * demos/gtk-demo/drawingarea.c (do_drawingarea): 
1464         * demos/gtk-demo/dialog.c (do_dialog): 
1465         * demos/gtk-demo/colorsel.c (do_colorsel): 
1466         * demos/gtk-demo/changedisplay.c (do_changedisplay): 
1467         * demos/gtk-demo/button_box.c (do_button_box): 
1468         * demos/gtk-demo/appwindow.c (do_appwindow): Take a widget
1469         as argument, and make new windows or dialogs appear on the
1470         same screen.  (#80388)
1471
1472 Sat Nov  8 21:59:30 2003  Matthias Clasen  <maclas@gmx.de>
1473
1474         * gtk/gtkeventbox.c (gtk_event_box_class_init): Let 
1475         visible-window default to TRUE, as documented and 
1476         implemented. (#126270 Damon Chaplin)
1477
1478 Sat Nov  8 01:50:17 2003  Matthias Clasen  <maclas@gmx.de>
1479
1480         * gtk/gtkicontheme.c: 
1481         * gtk/gtkfilechooserwidget.c (gtk_file_chooser_widget_new): 
1482         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_new): 
1483         * gtk/gtkfilechooser.c (gtk_file_chooser_[un]select_all): Mark as
1484         2.4 additions.
1485
1486 2003-11-07  Federico Mena Quintero  <federico@ximian.com>
1487
1488         Changing GtkFileChooserEntry to use GtkEntryCompletion.
1489
1490         * gtk/gtkfilechooserentry.c (gtk_file_chooser_entry_init): Create
1491         a GtkListStore for the completion list.  Create a
1492         GtkEntryCompletion and attach it to the chooser entry.
1493         (gtk_file_chooser_entry_finalize): Unref the completion store.
1494         (completion_match_func): New callback for the GtkEntryCompletion.
1495         (completion_idle_callback): Fill the completion store with filenames.
1496
1497 Fri Nov  7 22:55:49 2003  Matthias Clasen  <maclas@gmx.de>
1498
1499         * gtk/gtkwindow.c (gtk_window_set_role): 
1500         * gtk/gtkwindow.c (gtk_window_set_title): 
1501         * gtk/gtkwidget.c (gtk_widget_set_name): 
1502         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_title): 
1503         * gtk/gtkbutton.c (gtk_button_set_label): Make string setters
1504         safe for self-assignment.  (#122745, Soeren Sandmann)
1505
1506 Thu Nov  6 20:41:40 2003  Matthias Clasen  <maclas@gmx.de>
1507
1508         * gtk/gtkstyle.c (gtk_style_attach): Fix doc comment.
1509         (#126369, Olexiy Avramchenko)
1510
1511 Thu Nov  6 00:21:41 2003  Matthias Clasen  <maclas@gmx.de>
1512
1513         * gtk/gtkcolorbutton.c (gtk_color_button_init): 
1514         * gtk/gtkfontbutton.c (gtk_font_button_init): Improve the 
1515         consistency of titles.  (#126193, Damon Chaplin)
1516
1517 Wed Nov  5 22:49:36 2003  Matthias Clasen  <maclas@gmx.de>
1518
1519         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state): Set torn off 
1520         menus to be transient for the toplevel they were torn off from.
1521         (gtk_menu_get_toplevel): Auxiliary function to find the
1522         toplevel of a menu.  (#54775, Jon-Kare Hellan)
1523
1524 Wed Nov  5 21:07:58 2003  Matthias Clasen  <maclas@gmx.de>
1525
1526         * gtk/gtkpaned.c (gtk_paned_class_init): Add readonly properties
1527         min-position and max-position.  (#58431, Padraig O'Briain)
1528
1529 Wed Nov  5 21:02:26 2003  Matthias Clasen  <maclas@gmx.de>
1530
1531         * gtk/gtkcolorsel.c (update_color): 
1532         (make_label_spinbutton): 
1533         (adjustment_changed): Change the ranges for Saturation and
1534         Value to be 0-100 instead of 0-255, since these axes of HSV
1535         are usually expressed in percent.  (#121519, Gregory Merchan)
1536
1537 Wed Nov  5 08:51:48 GMT 2003  Tony Gale <gale@gtk.org>
1538
1539         * docs/faq/gtk-faq.sgml: More 2.x updates
1540
1541 Tue Nov  4 15:00:33 GMT 2003  Tony Gale <gale@gtk.org>
1542
1543         * docs/faq/gtk-faq.sgml: More 2.x updates, fix
1544         pkg-config command error, update copyright.
1545
1546 2003-11-03  Federico Mena Quintero  <federico@ximian.com>
1547
1548         * gtk/gtkfilechooserdefault.c (error_dialog): Take in a path as
1549         well.  Use a helper function.
1550         (shortcuts_append_home): Display an error box if necessary.
1551         (shortcuts_append_desktop): Likewise.
1552         (add_bookmark_button_clicked_cb): Likewise.
1553         (gtk_file_chooser_default_select_path): Likewise.
1554         (entry_activate): Likewise.
1555         (shortcuts_append_paths): New helper function.
1556         (shortcuts_append_file_system_roots): Use
1557         shortcuts_append_paths().
1558         (shortcuts_append_bookmarks): Likewise.
1559
1560 Mon Nov  3 23:12:41 2003  Matthias Clasen  <maclas@gmx.de>
1561
1562         * gtk/gtkuimanager.c (_gtk_menu_is_empty): Return TRUE if 
1563         menu is NULL.
1564         (update_smart_separators): Remove some unneeded ifs.
1565
1566 Mon Nov  3 22:45:58 2003  Matthias Clasen  <maclas@gmx.de>
1567
1568         * gtk/gtkwindow-decorate.h: Add G_BEGIN_DECLS/G_END_DECLS to make 
1569         these usable in C++. Forgot this file in my Oct 11 commit.
1570
1571 2003-11-03  Federico Mena Quintero  <federico@ximian.com>
1572
1573         * gtk/gtkfilechooserdefault.c (create_shortcuts_tree): Add a stock
1574         icon to the "Add bookmark" button.
1575
1576         * gtk/gtkfilesystemunix.c: Mark missing strings for translation.
1577         * gtk/gtkfilesystemmodel.c: Likewise.
1578         * gtk/gtkfilechooser.c: Likewise.
1579         * gtk/gtkfilechooserdefault.c: Likewise.
1580
1581 Mon Nov  3 20:56:28 2003  Matthias Clasen  <maclas@gmx.de>
1582
1583         * gdk/gdk.c: 
1584         * gdk/gdkinternals.h: 
1585         * gdk/x11/gdkscreen-x11.c (init_xinerama_support): Introduce a
1586         GDK_DEBUG_XINERAMA debug flag, and make it trigger a fake 2x2
1587         Xinerama mode when no actual Xinerama setup is found. 
1588
1589 2003-11-03  Federico Mena Quintero  <federico@ximian.com>
1590
1591         * gtk/gtkfilechooserdefault.c (shortcuts_select_folder): Removed.
1592         (create_shortcuts_tree): Don't call the above.
1593         (bookmarks_changed_cb): Likewise.
1594         (tree_selection_changed): Unselect everything from the shortcuts
1595         list.  This is the behavior that Mac OS has.
1596         (toolbar_add_item): Return the item.
1597         (toolbar_create): Store the up_button in the impl structure.
1598         (toolbar_check_sensitivity): New function to set the sensitivity
1599         of the "Up" button in the toolbar.
1600         (tree_selection_changed): Call toolbar_check_sensitivity().
1601
1602 2003-11-02  Federico Mena Quintero  <federico@ximian.com>
1603
1604         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): Do
1605         not set a border width for the toplevel container.
1606         (toolbar_create): New function; create a simple toolbar for the
1607         file chooser.
1608         (gtk_file_chooser_default_constructor): Use a spacing of 12 for
1609         the table, as per the HIG.
1610         (gtk_file_chooser_default_init): Likewise, for the default
1611         implementation's vbox.
1612
1613         * gtk/gtkfilesystem.c (gtk_file_system_get_parent): Added docs to
1614         note that NULL is a valid return value for the parent path.
1615
1616 Sat Nov  1 14:59:27 2003  Owen Taylor  <otaylor@redhat.com>
1617
1618         * gtk/gtkfilechooserdefault.c (shortcuts_row_activated): 
1619         Change on activation, not selection change (temporary
1620         workaround for #125955, needed for keynav, likely
1621         the right UI anyways.)
1622
1623         * gtk/gtkfilechooserdefault.c (shortcuts_select_func): 
1624         Don't allow the separator node to be selected.
1625
1626         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_constructor):
1627         Set the focus chain so that the entry gets focused first.
1628         (Not really right after initial focusing, maybe we
1629         should just have a gtk_file_chooser_focus_entry() that
1630         we call from gtk_file_chooser_dialog on creation.)
1631
1632 Sat Nov  1 12:41:04 2003  Owen Taylor  <otaylor@redhat.com>
1633
1634         * gtk/gtkwindow.c (gtk_window_unfullscreen): Fix a
1635         residual call to gtk_window_get_private().
1636
1637 Sat Nov  1 09:10:13 2003  Owen Taylor  <otaylor@redhat.com>
1638
1639         * gtk/gtkwindow.[ch]: Move above_initially, below_initially
1640         into GtkWindowPrivate structure, fixing ABI breakage
1641         on Win32. (Hans Breuer). Switch GtkWindowPrivate over
1642         to instance-private-data.
1643
1644 Fri Oct 31 02:43:34 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1645
1646         * gtk/gtktoolbar.c (get_item_requisition): delete this function
1647         (toolbar_item_is_homogeneous): cache max_homogeneous_pixels
1648         instead of re-calculating for each item.
1649         (gtk_toolbar_size_allocate): Update comments
1650
1651 Thu Oct 30 22:04:31 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1652
1653         * gtk/gtktoolbar.c (gtk_toolbar_forall): Only include
1654         placeholders when include_internals is TRUE.
1655
1656 Thu Oct 30 17:57:53 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1657
1658         * gtk/gtktoolbar.c (logical_to_physical): Make it work even when
1659         item 0 is a placeholder. (#125826)
1660         * tests/testtoolbar.c: add an assertion that 
1661         gtk_toolbar_get_nth_item (0) != NULL
1662
1663 Thu Oct 30 17:40:26 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1664
1665         * gtk/gtktoolbar.c (logical_to_physical): Make it work for
1666         logical == 0.(#125826)
1667
1668 Thu Oct 30 16:20:58 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1669
1670         * gtk/gtktoolbar.c (logical_to_physical): Make sure we actually
1671         return the index of a real item.
1672         (get_nth_item) assert that the returned items is not a
1673         placeholder.  (#125826, Marco Pesenti Gritti).
1674         
1675 2003-10-29  Federico Mena Quintero  <federico@ximian.com>
1676
1677         * gtk/gtkcellrendererseptext.c
1678         (gtk_cell_renderer_sep_text_render): Only paint a separator if the
1679         text is NULL, rather than also doing it if it is an empty string.
1680
1681 Wed Oct 29 15:40:26 2003  Owen Taylor  <otaylor@redhat.com>
1682
1683         * gtk/gtkmessagedialog.c (gtk_message_dialog_new/
1684         gtk_message_dialog_new_with_format): Allow NULL
1685         for message_format, as described in the docs and
1686         as worked previously. (#125759, Richard Hult)
1687
1688         * gtk/gtkmessagedialog.c (gtk_message_dialog_new_with_markup):
1689         Use g_markup_vprintf_escaped() to escape arguments.
1690
1691         * gtk/gtkmessagedialog.[ch]: Add gtk_message_dialog_set_markup()
1692         so there is some way to set literal markup.
1693
1694 Wed Oct 29 15:01:32 2003  Owen Taylor  <otaylor@redhat.com>
1695  
1696         * gdk/x11/gdkimage-x11.c (_gdk_x11_copy_to_image): Move
1697         the call to gdk_error_trap_pop() to the right place,
1698         fixing a problem where we'd pop() too many times 
1699         when bailing out. (#123302, Thomas Leonard)
1700         
1701 Wed Oct 29 12:50:02 2003  Owen Taylor  <otaylor@redhat.com>
1702
1703         * gtk/gtkfilechooserutils.c (delegate_set_current_folder): 
1704         Fix infinite recursion. (#125679, Christian Persch)
1705
1706 Wed Oct 29 13:29:15 GMT 2003  Tony Gale <gale@gtk.org>
1707
1708         * docs/faq/gtk-faq.sgml: further 2.x updates:
1709         mirrors,compiling,g_main_context_iteration
1710
1711 Wed Oct 29 02:54:35 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1712
1713         * gtk/gtktoolbar.[ch] (gtk_toolbar_set_drop_highlight_item): Add this
1714         function; remove gtk_toolbar_highlight_drop_location() and
1715         gtk_toolbar_unhighlight_drop_location().
1716
1717         Also fix bug where the number of overflowed items were miscounted.
1718
1719 Tue Oct 28 12:20:16 2003  Owen Taylor  <otaylor@redhat.com>
1720
1721         * gtk/gtkwindow.c (gtk_window_has_toplevel_focus): Remove
1722         some accidentally committed duplicate code.
1723
1724 Tue Oct 28 17:06:17 GMT 2003  Tony Gale <gale@gtk.org>
1725
1726         * docs/faq/gtk-faq.sgml: Update info on compiling GTK+
1727
1728 Tue Oct 28 10:34:24 2003  Owen Taylor  <otaylor@redhat.com>
1729
1730         * gtk/gtkwindow.[ch] (gtk_window_is_active, 
1731         gtk_has_toplevel_focus): Add getters corresponding to
1732         the is_active and has_toplevel_focus properties.
1733         (#122531)
1734
1735 2003-10-28  Mark McLoughlin  <mark@skynet.ie>
1736
1737         * gtk/gtkexpander.c:
1738         (gtk_expander_class_init): hook up the destroy handler.
1739         (gtk_expander_destroy), (gtk_expander_unrealize):
1740         remove the expand/collapse timeout on destroy instead
1741         of unrealize to avoid leaving the expander in a inconsistent
1742         state when unrealizing during animation.
1743         (gtk_expander_start_animation): remove realized check.
1744         (gtk_expander_set_expanded): if the widget isn't realized,
1745         expand immediately.
1746
1747 Tue Oct 28 09:44:16 2003  Owen Taylor  <otaylor@redhat.com>
1748
1749         * gtk/gtkxembed.c (_gtk_xembed_send_focus_message): Silently
1750         do nothing when recipient is NULL, as described in the
1751         doc comment. (#123107, Thomas Leonard)
1752
1753 Tue Oct 28 09:21:29 2003  Owen Taylor  <otaylor@redhat.com>
1754
1755         * gtk/gtkmain.c (gtk_check_version): Move docs inline,
1756         rewrite docs, mention memory management for the return
1757         value. (Partly addresses #125549, Michael Natterer)
1758
1759 2003-10-28  Padraig O'Briain  <padraig.obriain@sun.com>
1760
1761         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_remove_filter):
1762         Change index to filter_index to fix compilation error.
1763
1764         * gtk/gtkfilesystem.h: Correct definition of gtk_file_path_get_string.
1765
1766 Mon Oct 27 15:47:58 2003  Manish Singh  <yosh@gimp.org>
1767
1768         * gdk/x11/gdkscreen-x11.c: #include <X11/extensions/Xrandr.h> if
1769         we have RandR support, for XRRUpdateConfiguration declaration.
1770
1771         * gtk/gtkfilefilter.c: #include "gtkprivate.h" for _gtk_fnmatch
1772         declaration.
1773
1774         * gtk/gtkuimanager.c (gtk_ui_manager_add_ui_from_file): Make
1775         length a gsize variable, since that's what g_file_get_contents()
1776         expects.
1777
1778 Mon Oct 27 12:18:49 2003  Owen Taylor  <otaylor@redhat.com>
1779
1780         * NEWS: Fix attribution for above/below EWMH work.
1781
1782 Sat Oct 25 23:30:13 2003  Matthias Clasen  <maclas@gmx.de>
1783
1784         * gtk/gtkactiongroup.c (gtk_action_group_class_init): Add "name" 
1785         as a construct-only property.  (#125475, Murray Cumming)
1786
1787 Thu Oct 23 21:55:10 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1788
1789         Fix bug 116297 and 125472
1790         
1791         * gtk/gtktoolbar.c (gtk_toolbar_highlight_drop_location): Make
1792         this function take an index and a GtkToolItem.
1793
1794         * tests/testtoolbar.c (main): Make "Show Arrow" default to
1795         true. Make one of the separators !draw and expand.
1796         Update for new highlight_drop_location() API.
1797
1798         * gtk/gtktoolitem.[ch]: Remove "pack_end" property
1799
1800         * gtk/gtktoolbar.h: Formatting fixes.
1801
1802         * gtk/gtktoolbar.c: Remove "pack_end" child property. Allow
1803         separator tool items to expand.
1804         (logical_to_physical, physical_to_logical): Fix off-by-one errors
1805         (Fix #125472, Marco Pesenti Gritti)
1806
1807         * gtk/gtkseparatortoolitem.[ch]: Add new "draw" property.
1808         (gtk_separator_tool_item_expose) only draw if "draw" is TRUE. Also
1809         return FALSE, not TRUE.
1810         (gtk_separator_too_item_{set|get}_property,
1811         (gtk_separator_tool_item_{set|get}_draw): new functions
1812
1813 Fri Oct 24 16:54:04 2003  Owen Taylor  <otaylor@redhat.com>
1814
1815         * === Released 2.3.0 ===
1816
1817         * configure.in: Remove a stray comma.
1818
1819         * README.in: Fix a few notes about Xft 1 and pango-1.0.
1820
1821         * NEWS: Finish updates for 2.3.0.
1822
1823         * po/Makefile.in.in: Update to latest GLib version.
1824
1825 Fri Oct 24 20:31:35 2003  Kristian Rietveld  <kris@gtk.org>
1826
1827         * gtk/gtkcellview.[ch], gtk/gtkcellviewmenuitem.[ch],
1828         gtk/gtkcombobox.[ch], gtk/gtkcomboboxentry.[ch],
1829         gtk/gtktreemodelfilter.[ch]: Fix licensing (I managed to put it
1830         under GPL licensing instead of LGPL...). (Fixes #125381, Soeren
1831         Sandmann).
1832
1833 Fri Oct 24 20:22:40 2003  Kristian Rietveld  <kris@gtk.org>
1834
1835         * gtk/gtktreemodelfilter.h: add padding to the class structure.
1836
1837 2003-10-23  Federico Mena Quintero  <federico@ximian.com>
1838
1839         * gtk/gtkfilechooser.c (gtk_file_chooser_get_preview_uri): Fixed docs.
1840         (gtk_file_chooser_remove_filter): Likewise.
1841         (gtk_file_chooser_select_all): Added docs.
1842         (gtk_file_chooser_unselect_all): Likewise.
1843
1844         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_new): Added docs.
1845
1846         * gtk/gtkfilechooserwidget.c (gtk_file_chooser_widget_new): Added docs.
1847
1848 Thu Oct 23 23:22:15 2003  Matthias Clasen  <maclas@gmx.de>
1849
1850         * gtk/gtkfilefilter.c: 
1851         * gtk/gtkfilechooser.c: Add "Since: 2.4" to all API doc comments.
1852
1853 Thu Oct 23 22:33:47 2003  Matthias Clasen  <maclas@gmx.de>
1854
1855         * gtk/gtkfilefilter.c (gtk_file_filter_new): Fix doc markup.
1856
1857 Thu Oct 23 21:49:05 2003  Matthias Clasen  <maclas@gmx.de>
1858
1859         * NEWS: Remove a few duplicates, group the menu changes.
1860
1861 Thu Oct 23 21:12:50 2003  Kristian Rietveld  <kris@gtk.org>
1862
1863         * NEWS: Updates for 2.3.0; changed header to match the style we used
1864         for 2.1.0.
1865
1866 Thu Oct 23 20:47:44 2003  Matthias Clasen  <maclas@gmx.de>
1867
1868         * gdk/x11/gdkwindow-x11.c (gdk_window_set_group): Actually
1869         assign the new leader.  (#125168, Mariano Suarez-Alvarez)
1870
1871 Thu Oct 23 20:21:16 2003  Kristian Rietveld  <kris@gtk.org>
1872
1873         * gtk/gtkcelllayout.c, gtk/gtkcellview.c gtk/gtkcellviewmenuitem.c,
1874         gtk/gtkcombobox.c, gtk/gtkcomboboxentry.c, gtk/gtkentrycompletion.c,
1875         gtk/gtktreemodelfilter.c, gtk/gtkcellrenderertoggle.c: Fix includes.
1876
1877 Thu Oct 23 15:13:56 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1878
1879         * NEWS: Partial update for 2.3.0.
1880
1881 Thu Oct 23 01:09:04 2003  Owen Taylor  <otaylor@redhat.com>
1882
1883         * gtk/gtkfilechooserdefault.c: Convert GtkOptionMenu to
1884         GtkComboBox.
1885
1886 Wed Oct 22 23:20:04 2003  Owen Taylor  <otaylor@redhat.com>
1887
1888         * gtk/gtkfilechooser.[ch] gtk/gtkfilefilter.[ch] 
1889         gtk/gtkfilechooserwidget.[ch] gtk/gtkfilechooserdialog.[ch]:
1890         gtk/gtkfilechooserutils.c gtk/gtkfilechooserprivate.[ch]:
1891         Basic framework for the new file selector widget.
1892
1893         * gtk/gtkfilechooserdefault.[ch] gtk/gtkcellrenderersep.[ch] 
1894         gtk/gtkfilechooserentry.[ch] gtk/gtkfilesystemmodel.[ch]:
1895         Initial implementation of the GtkFileChooser user interface.
1896
1897         * gtk/gtkfilesystemunix.[ch]: GtkFileSystem implementation
1898         for Unix files.
1899
1900         * configure.in gtk/Makefile.am gtk/xdgmime: Build code
1901         for freedesktop.org MIME system on Unix.
1902
1903         * tests/testfilechooser.c: Test program for GtkFileChooser
1904
1905         * tests/prop-editor.c: Add support for properties on interfaces.
1906
1907 Tue Oct 21 16:12:51 2003  Owen Taylor  <otaylor@redhat.com>
1908
1909         * demos/gtk-demo/menus.c (do_menus): Fix some unused
1910         variables.
1911
1912         * gtk/gtkmain.c (_gtk_get_lc_ctype): Fix an unused
1913         variable warning.
1914
1915 Thu Oct 23 00:04:50 2003  Matthias Clasen  <maclas@gmx.de>
1916
1917         * NEWS: Partial update for 2.3.0.
1918
1919 Tue Oct 21 22:07:12 2003  Kristian Rietveld  <kris@gtk.org>
1920
1921         * gtk/gtktreeview.c (gtk_tree_view_real_move_cursor): set
1922         ctrl_pressed and shift_pressed according to the current event
1923         state (if there is one). (Fixes #125063, reported by Sebastien Bacher).
1924
1925 Mon Oct 20 23:24:27 2003  Kristian Rietveld  <kris@gtk.org>
1926
1927         * gtk/gtkentry.c (gtk_entry_key_press): remove the completion
1928         timeout when the user pressed on Enter/ESC. Fixes the bug where the
1929         completion popup popped up after the user pressed on Enter (which is
1930         just weird). Reported by the Epiphany people (all of them).
1931
1932 Mon Oct 20 20:27:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1933
1934         Add support for OS X like sliding of toolbar items during drag and
1935         drop, (#110919, Dave Bordoley)
1936
1937         Make dnd highlighting the responsibility of the
1938         application. (Fixes #116298, Owen Taylor)
1939
1940         * gtk/gtktoolbar.h: Add prototypes for new API.
1941         
1942         * gtk/gtktoolbar.c
1943         (physical_to_logical, logical_to_physical): new functions
1944         converting between "position including placeholders" and "position
1945         excluding placeholders".
1946         (gtk_toolbar_class_init): remove drag_leave and drag_motion
1947         handlers
1948         (struct _ToolbarContent): new struct containing information
1949         related to toolbar items.
1950         (gtk_toolbar_highlight_drop_location): new public function
1951         (gtk_toolbar_unhighlight_drop_location): new public function
1952         
1953         * tests/testtoolbar.c
1954         (toolbar_drag_motion, toolbar_drag_leave): new functions
1955         (main): connect to dnd signals.  Make the "New" item expand to
1956         make drag and drop more exciting.
1957
1958 Wed Oct 15 22:39:23 2003  Kristian Rietveld  <kris@gtk.org>
1959
1960         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): it's
1961         _set_active, not _set_active_item.
1962
1963 Wed Oct 15 22:31:09 2003  Kristian Rietveld  <kris@gtk.org>
1964
1965         * gtk/gtkcombobox.h: add padding to the class structure.
1966         * gtk/gtkcomboboxentry.h: ditto.
1967         * gtk/gtkentrycompletion.h: ditto.
1968
1969 Wed Oct 15 22:04:59 2003  Kristian Rietveld  <kris@gtk.org>
1970
1971         * gtk/gtkcombobox.c (gtk_combo_box_get_active),
1972         (gtk_combo_box_set_active): mention in the docs that -1 is a valid
1973         value and what it means.
1974
1975         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): set the active
1976         item to -1 (default),
1977         (gtk_combo_box_entry_active_changed): do nothing when the index is
1978         < 0.
1979
1980 Tue Oct 14 16:10:21 2003  Jonathan Blandford  <jrb@redhat.com>
1981
1982         * gtk/gtkcombobox.c (gtk_combo_box_set_active_iter): New function
1983         to set the active row by iter.
1984
1985         * gtk/gtkcombobox.c (gtk_combo_box_get_active_iter): New function
1986         to get the active row by iter.
1987
1988 2003-10-13  Federico Mena Quintero  <federico@ximian.com>
1989
1990         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Don't do
1991         operations on windows if the tree view is not mapped.
1992         (gtk_tree_view_button_press): Compare equal types of pointers, not
1993         GtkWidget* vs. GtkTreeView*.
1994
1995 Mon Oct 13 21:01:43 2003  Kristian Rietveld  <kris@gtk.org>
1996
1997         * gtk/gtkentrycompletion.c (gtk_entry_completion_popup): remove
1998         the reset of first_sel_changed, as after the first popup the treeview
1999         will always have a row selected and will thus not focus_to_cursor.
2000
2001         * gtk/gtkentry.c (keyval_is_cursor_move): new function to determine
2002         whether the keyval should move the completion selection cursor (used
2003         to avoid ending up with extreme cluttered code), also added
2004         all KP_ equivalents of the keys here,
2005         (gtk_entry_completion_key_press): Keynav tweaks based on comments
2006         from Dave Bordoley and Marco Pesenti Gritti; add the -1 state
2007         as possible current selection, implement Home/End keys, modified
2008         the down key to stop cycling. Maybe page up/down should be implemented
2009         at some later time.
2010
2011 Mon Oct 13 20:58:07 2003  Matthias Clasen  <maclas@gmx.de>
2012
2013         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon): Make it work 
2014         as documented when pixmap or mask is NULL.  (#124081) 
2015
2016 Mon Oct 13 20:21:38 2003  Kristian Rietveld  <kris@gtk.org>
2017
2018         * gtk/gtkentry.c (gtk_entry_set_text): I overlooked a return when
2019         I was adding the signal block/unblock code. Oops. (Noticed by
2020         Marco Pesenti Gritti).
2021
2022 Mon Oct 13 20:21:55 2003  Kristian Rietveld  <kris@gtk.org>
2023
2024         * demos/testpixbuf-scale.c: enable GTK_DISABLE_DEPRECATED again,
2025         (set_interp_type), (main): port over from option menu to GtkComboBox.
2026
2027 Mon Oct 13 19:41:55 2003  Kristian Rietveld  <kris@gtk.org>
2028
2029         * tests/testmenus.c: Still uses option menus, so turn off
2030         GTK_DISABLE_DEPRECATED.
2031
2032 Sun Oct 12 01:10:29 2003  Matthias Clasen  <maclas@gmx.de>
2033
2034         * gtk/gtkalignment.[hc]: 
2035         * gtk/gtkcombobox.[hc]: 
2036         * gtk/gtkcomboboxentry.[hc]: 
2037         * gtk/gtktreemodelfilter.[hc]: Move GET_PRIVATE macros
2038         from header to implementation.
2039
2040 Sun Oct 12 00:18:02 2003  Matthias Clasen  <maclas@gmx.de>
2041
2042         * tests/testtreeview.c: 
2043         * demos/testpixbuf-scale.c: 
2044         * tests/prop-editor.c: These files still use option menus,
2045         so turn off GTK_DISABLE_DEPRECATED to fix the build. 
2046
2047 Sat Oct 11 23:14:36 2003  Matthias Clasen  <maclas@gmx.de>
2048
2049         * gtk/gtkactiongroup.h: 
2050         * gtk/gtkaction.h: 
2051         * gtk/gtkradioaction.h: 
2052         * gtk/gtkradiotoolbutton.h: 
2053         * gtk/gtkseparatortoolitem.h: 
2054         * gtk/gtktoggleaction.h: 
2055         * gtk/gtktoolitem.h: 
2056         * gtk/gtkuimanager.h: Add G_BEGIN_DECLS/G_END_DECLS to make 
2057         these usable in C++.  (#124351, Murray Cumming)
2058
2059 Sat Oct 11 19:09:05 2003  Kristian Rietveld  <kris@gtk.org>
2060
2061         * gtk/gtkentry.c (gtk_entry_set_text): Check if completion is
2062         non-NULL before accessing it. Oops.
2063
2064 Sat Oct 11 15:47:03 2003  Kristian Rietveld  <kris@gtk.org>
2065
2066         * gtk/gtkentrycompletion.[ch] (gtk_entry_completion_insert_action),
2067         (gtk_entry_completion_insert_action_text),
2068         (gtk_entry_completion_insert_action_markup): the gchar* parameters
2069         should be const (pointed out by both Marco Pesenti Gritti and
2070         Murray Cumming (#124356).
2071
2072 Sat Oct 11 15:37:19 2003  Kristian Rietveld  <kris@gtk.org>
2073
2074         * gtk/gtkcombobox.c (gtk_combo_box_size_allocate): for the custom
2075         child list mode, allocate the height allocation->height to the
2076         button instead of the height requested by the button. (Tiny
2077         size allocation screwup noticed by Macro Pesenti Gritti).
2078
2079 Sat Oct 11 15:23:27 2003  Kristian Rietveld  <kris@gtk.org>
2080
2081         Fixes based on comments from Marco Pesenti Gritti.
2082
2083         * gtk/gtkentry.c (gtk_entry_set_text): block the completion changed
2084         signal handler, avoids the completion popup to popup when text is
2085         set programmatically in most cases (we actually have to handle this
2086         in the _editable functions as well, but that will break popping up
2087         when the user actually typed something :),
2088         (gtk_entry_completion_key_press): when handling enter, bail out
2089         when nothing has been selected,
2090         (gtk_entry_completion_changed): don't popdown when the entry content
2091         changed.
2092
2093         * gtk/gtkentrycompletion.c (gtk_entry_completion_init),
2094         (gtk_entry_completion_selected_changed): unselect_all on the
2095         first selected changed signal. Avoids having a default row selected,
2096         (_gtk_entry_completion_popup): don't select the first row by default.
2097
2098         * gtk/gtkentryprivate.h (struct _GtkEntryCompletionPrivate): add a
2099         first_sel_changed field.
2100
2101 Fri Oct 10 23:02:58 2003  Matthias Clasen  <maclas@gmx.de>
2102
2103         * demos/gtk-demo/menus.c: Replace GtkItemFactory by GtkUIManager 
2104         in the intro (again).
2105
2106 Fri Oct 10 22:50:05 2003  Matthias Clasen  <maclas@gmx.de>
2107
2108         Fixes for (#124212, Marco Pesenti Gritti):
2109         
2110         * gtk/gtkuimanager.c (update_smart_separators): Don't spit 
2111         warnings for popups.
2112         (_gtk_menu_is_empty): Return FALSE for non-menus.
2113
2114 Fri Oct 10 19:10:12 2003  Kristian Rietveld  <kris@gtk.org>
2115
2116         * gtk/gtkcombo.h: Deprecate.
2117         * gtk/gtkoptionmenu.h: Ditto.
2118
2119         * gtk/gtkcombobox.c (gtk_combo_box_size_request),
2120         (gtk_combo_box_size_allocate): Rework, things behave better now. Still
2121         needs some work on requesting enough size when taking the items in
2122         the list into account.
2123
2124         * gtk/gtkfilesel.c: put gtkoptionmenu.h include inside "enable
2125         deprecated" guards.
2126         * gtk/gtkinputdialog.c: ditto.
2127         * gtk/gtkitemfactory.c: ditto.
2128         * gtk/gtkoptionmenu.c: ditto.
2129
2130         * demos/gtk-demo/menus.c: remove the option menu.
2131         * demos/gtk-demo/sizegroup.c: replace the option menus with
2132         GtkComboBox.
2133         * demos/gtk-demo/textview.c: ditto.
2134         (A general GtkComboBox demo will be added later on).
2135
2136 Wed Oct  8 00:06:17 2003  Matthias Clasen  <maclas@gmx.de>
2137
2138         * demos/gtk-demo/ui_manager.c (activate_radio_action): New
2139         callback to propertly report radio actions.
2140
2141         * demos/gtk-demo/ui_manager.c (do_ui_manager): Use it here.
2142
2143 Tue Oct  7 23:23:05 2003  Matthias Clasen  <maclas@gmx.de>
2144
2145         * gtk/gtkplug.c (xembed_set_info): Put the supported protocol
2146         version in in the right field of the _XEMBED_INFO property.  
2147         (#123885, Denis Mikhalkin)
2148
2149 Mon Oct  6 14:18:47 2003  Jonathan Blandford  <jrb@redhat.com>
2150
2151         * gtk/gtkexpander.c (gtk_expander_animation_timeout): only show
2152         the child if we have one.
2153
2154         (gtk_expander_button_release): use
2155         gtk_widget_activate instead.
2156
2157 Mon Oct  6 21:05:46 2003  Matthias Clasen  <maclas@gmx.de>
2158
2159         * gtk/gtktable.c (gtk_table_class_init): Start the blurb for 
2160         "right_attach" with a capital.  (#123945, Christian Rose)
2161
2162 Sun Oct  5 23:59:03 2003  Matthias Clasen  <maclas@gmx.de>
2163
2164         * tests/testsocket.c (child_read_watch): Remove an
2165         extraneous unref.  (#122336, Frederic Crozat)
2166
2167 Sun Oct  5 22:38:22 2003  Matthias Clasen  <maclas@gmx.de>
2168
2169         * gtk/gtkeventbox.c (gtk_event_box_class_init): Trim 
2170         whitespace in "visible-window" blurb.  (#123910, Christian Rose)
2171
2172 Sun Oct  5 00:53:15 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2173
2174         * gtk/gtktoolbar.c (gtk_toolbar_list_children_in_focus_order):
2175         focus arrow before pack_end items (#123851, Matthias Clasen)
2176
2177 Fri Oct  3 20:50:48 2003  Kristian Rietveld  <kris@gtk.org>
2178
2179         * gtk/gtkcombobox.c (gtk_combo_box_set_model): only set the model
2180         on ->priv->cell_view if ->priv->cell_view is non-NULL.
2181
2182         * gtk/gtkcomboboxentry.c: include gtkintl.h, add text_renderer
2183         field to GtkComboBoxEntryPrivate,
2184         (gtk_combo_box_entry_class_init), (gtk_combo_box_entry_init),
2185         (gtk_combo_box_entry_set_property), (gtk_combo_box_entry_get_property),
2186         (gtk_combo_box_entry_set_text_column), (gtk_combo_box_entry_new): add
2187         a construct-only "text_column" property and reorder code to use it
2188         and support inheriting this widget.
2189
2190 Thu Oct  2 23:28:02 2003  Kristian Rietveld  <kris@gtk.org>
2191
2192         * gtk/gtkcombobox.c: Added API doc comments.
2193
2194         * gtk/gtkcomboboxentry.c: Ditto.
2195
2196 2003-10-02  Matthias Clasen  <maclas@gmx.de>
2197
2198         * gtk/gtktoggleaction.c: Documentation tweaks.
2199
2200 Wed Oct  1 22:43:40 2003  Kristian Rietveld  <kris@gtk.org>
2201
2202         * gtk/gtkcellview.[ch]: implement the GtkCellLayout interface, drop
2203         packing/attribute/cell data functions from the header,
2204         (gtk_cell_view_set_cell_data): added support for cell data funcs.
2205
2206         * gtk/gtkcombobox.[ch]: implement the GtkCellLayout interface, drop
2207         packing/attribute/cell data functions from the header, implemented
2208         cell data func support.
2209
2210         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_new): updated
2211         for the move to GtkCellLayout.
2212
2213         * tests/testcombo.c (create_combo_box_grid_demo), (main): ditto.
2214
2215 2003-10-01  Matthias Clasen  <maclas@gmx.de>
2216
2217         * gtk/gtkaction.c (gtk_action_class_init): 
2218         (gtk_action_[gs]et_property): Introduce a separate
2219         "hide_if_empty" property for empty menu handling.
2220         (_gtk_action_sync_menu_visible): ...and use it here.
2221
2222         * tests/testmerge.c (main): ...and here.
2223
2224         * gtk/gtktoolitem.c (gtk_tool_item_class_init): Fix signal doc 
2225         comments to pacify gtk-doc.
2226
2227         * gtk/gtkmain.c: Doc formatting tweaks.
2228
2229         * gtk/gtktoolitem.c (gtk_tool_item_set_is_important): Fix a typo.
2230
2231         * gtk/gtkcheckmenuitem.h (gtk_check_menu_item_set_draw_as_radio): 
2232         Use the same parameter names as in .c file, to pacify gtk-doc.
2233
2234         * gtk/gtktoggletoolbutton.[hc]: 
2235         * gtk/gtktoolbutton.[hc]: 
2236         * gtk/gtktoolitem.[hc]:
2237         * gtk/gtktoolbar.[hc]: 
2238         * gtk/gtkcolorbutton.[hc]: 
2239         * gtk/gtkfontbutton.[hc]: 
2240         * gtk/gtkalignment.[hc]: Define GET_PRIVATE macros in the 
2241         source, not in the header.
2242
2243         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_[sg]et_draw_as_radio): 
2244         Document these as 2.4 API additions.
2245
2246 Tue Sep 30 23:42:56 2003  Kristian Rietveld  <kris@gtk.org>
2247
2248         * gtk/gtkentry.c (gtk_entry_set_completion),
2249         (gtk_entry_get_completion): Add API doc comments.
2250
2251         * gtk/gtkentrycompletion.c: Fix #includes and add API doc comments.
2252
2253 Tue Sep 30 23:12:34 2003  Kristian Rietveld  <kris@gtk.org>
2254
2255         * gtk/gtktreemodelfilter.c: Add "Since: 2.4" to all API doc comments.
2256
2257 Tue Sep 30 22:59:58 2003  Kristian Rietveld  <kris@gtk.org>
2258
2259         * gtk/gtktreeviewcolumn.c: Some API doc comment fixes.
2260
2261         * gtk/gtkcellayout.c: Fix #include and oooooh API doc comments!
2262
2263 2003-09-30  Matthias Clasen  <maclas@gmx.de>
2264
2265         * tests/merge-*.ui: 
2266         * tests/testmerge.c: Test handling of empty menus.
2267
2268         * gtk/gtkuimanager.c (_gtk_menu_is_empty): New function to determine
2269         whether a menu is empty. Used in gtkaction.c.
2270         (update_smart_separators): Also update the visibility of empty menus.
2271         (update_node): When creating a new menu proxy, insert an "Empty" menu 
2272         item which only gets shown if the menu is empty. 
2273
2274         * gtk/gtkaction.c (gtk_action_class_init): Document the meaning of
2275         "is_important" for menu proxies.
2276         (_gtk_action_sync_menu_visible): New function to sync the visibility
2277         of menu proxies. Used in gtkuimanager.c.
2278         (gtk_action_sync_visible): New function to sync the visibility of 
2279         proxies.
2280
2281 Tue Sep 30 21:43:34 2003  Kristian Rietveld  <kris@gtk.org>
2282
2283         * gtk/gtkcombobox.c (gtk_combo_box_menu_button_press): set
2284         popup_in_progress to TRUE,
2285         (gtk_combo_box_menu_show): and back to FALSE here; the menu now
2286         won't disappear on the first button release. (Reported by Matthias
2287         Clasen).
2288
2289 Tue Sep 30 21:08:43 2003  Kristian Rietveld  <kris@gtk.org>
2290
2291         * gtk/gtkcombobox.c (gtk_combo_box_init): actually show the child.
2292
2293         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): ditto. (#123543,
2294         Marco Pesenti Gritti).
2295
2296 2003-09-30  Murray Cumming  <murrayc@usa.net>
2297  
2298         * gtk/gtkcellrenderer.h: The render vfunc takes a GdkDrawable*
2299         instead of a GdkWindow*, because that what it is given. The 
2300         documentation was already correct. This should cause no API/ABI
2301         breakage with C compilers.
2302         * gtk/gtkcellrenderertext.c, gtkcellrendererpixbuf.c, 
2303         gtkcellrenderertogger.c: Updated the declarations of the render vfunc
2304         implementation accordingly.
2305
2306 2003-09-30  Matthias Clasen  <maclas@gmx.de>
2307
2308         * gdk/gdkkeys.c (gdk_keymap_class_init): Document the
2309         "direction-changed" and "keys-changed" signals.
2310
2311         * gdk/gdkscreen.c (gdk_screen_class_init): Document the 
2312         "size-changed" signal.
2313
2314         * gdk/gdkdisplaymanager.c (gdk_display_manager_class_init): 
2315         Document the "display-opened" signal.
2316
2317         * gdk/gdkdisplay.c (gdk_display_close): Doc tweak.
2318         (gdk_display_class_init): Document the "closed" signal.
2319
2320 Sat Sep 27 16:02:40 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2321
2322         * gtk/gtktextview.[ch]: rename property tab_moves_focus to
2323         accepts_tab. (#122709 again).
2324
2325 2003-09-27  Matthias Clasen  <maclas@gmx.de>
2326
2327         * gtk/gtkwindow.c (gtk_window_new):
2328         * gtk/gtkitemfactory.c (gtk_item_factory_new): Document 
2329         the fact that the newly created object does not come with 
2330         a floating reference.  (#103068, patch by Frederic Lespez)
2331         
2332         * gtk/gtkitemfactory.h: Deprecate GtkItemFactory in favor 
2333         of GtkUIManager. Just leave GtkTranslateFunc undeprecated, 
2334         since GtkActionGroup uses it.
2335
2336         * tests/testtext.c: Turn off GTK_DISABLE_DEPRECATED, since
2337         this test uses the soon-to-be-deprecated GtkItemFactory.
2338
2339         * demos/gtk-demo/Makefile.am (demos): Add ui_manager.c,
2340         remove item_factory.c
2341
2342         * demos/gtk-demo/ui_manager.c: Duplicate of item_factory.c 
2343         using GtkUIManager instead of GtkItemFactory.
2344
2345         * tests/testmerge.c: Demonstrate the use of the 
2346         connect-proxy signal.
2347
2348         * gtk/gtkaction.c (connect_proxy): Add connect-proxy and 
2349         disconnect-proxy signals to do small customizations 
2350         like displaying tooltips in the statusbar without 
2351         custom actions.  (#122894, Philip Langdale)
2352
2353         * gtk/gtkuimanager.c (update_node): Don't leak tooltip.
2354
2355 Fri Sep 26 23:49:44 2003  Kristian Rietveld  <kris@gtk.org>
2356
2357         Landing the new ComboBox. Note that only gtkcombobox.h and
2358         gtkcomboboxentry.h are public.
2359
2360         * gtk/gtkcellview.[ch], gtk/gtkcellviewmenuitem.[ch],
2361         gtk/gtkcombobox.[ch], gtk/gtkcomboboxentry.[ch]: new files.
2362
2363         * gtk/Makefile.am, gtk/gtk.h: adding the new files.
2364
2365         * tests/testcombo.c: and a new test.
2366
2367         * tests/Makefile.am: adding the new test.
2368
2369 2003-09-25  Tor Lillqvist  <tml@iki.fi>
2370
2371         * demos/gtk-demo/main.c: Don't use hardcoded DEMOCODEDIR on Windows.
2372
2373 2003-09-21  Tor Lillqvist  <tml@iki.fi>
2374
2375         * gdk/win32/gdkevents-win32.c (handle_wm_paint): New
2376         function. Code split out from gdk_event_translate(). Needed
2377         because gdk_event_get_graphics_expose() couldn't do anything
2378         sensible otherwise. (Not that I think graphics exposes work anyway
2379         in gdk/win32, but at least now the code could work.)
2380
2381         (gdk_event_get_graphics_expose): Call handle_wm_paint() instead of
2382         gdk_event_translate(), which couldn't have worked as it doesn't
2383         take any pre-allocated GdkEvent parameter any longer.
2384         
2385         (gdk_event_translate): Handle WM_MOUSEACTIVATE: Don't let
2386         GDK_WINDOW_TEMP windows be activated. (#122578, John Ehresman)
2387
2388 2003-09-24  Matthias Clasen  <maclas@gmx.de>
2389
2390         * demos/gtk-demo/appwindow.c (do_appwindow): Demonstrate tooltips
2391         on toolitems.
2392
2393         * gtk/gtkaction.c (connect_proxy): Sync tooltips on toolitems.
2394
2395         * gtk/gtkuimanager.c (update_node): Don't complain about missing
2396         actions on popups. Re-set "tooltip" property on toolitems after
2397         adding them to parent to trigger proxy update.
2398
2399 2003-09-22  Matthias Clasen  <maclas@gmx.de>
2400
2401         * tests/testmerge.c (main): Initially activate the JUSTIFY_RIGHT
2402         group member to test the fix for #122904.
2403
2404         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full): 
2405         Add the action to the group before activating it, otherwise we
2406         may end up with multiple active group members.  (#122904, Marco
2407         Pesenti Gritti)
2408
2409 2003-09-21  Matthias Clasen  <maclas@gmx.de>
2410
2411         Changes to make cross-process merging feasible:
2412         
2413         * gtk/gtkuimanager.[hc]: Add a readonly "ui" property which holds the
2414         merged UI definition. Remove the "changed" signal, since its role
2415         is now filled by "notify::ui". Instead add a "actions-changed" signal
2416         which gets emitted when the set of actions changes.
2417
2418         * gtk/gtktoggleactionprivate.h:
2419         * gtk/gtktoggleaction.[hc] (gtk_toggle_action_[sg]et_draw_as_radio):
2420         Add a "draw_as_radio" property to toggle actions so that they can be
2421         used as proxies for radio actions much like the "draw_as_radio" 
2422         property on check menu items enables them to operate as proxies for
2423         radio actions.
2424
2425         Prevent the "show_all" trap for action-based menus (see
2426         http://mail.gnome.org/archives/gtk-devel-list/2003-September/
2427         msg00260.html):
2428
2429         * gtk/gtkmenu.c (gtk_menu_{hide,show}_all): Remove g_return_if_fail()
2430         calls from static functions.
2431
2432         * gtk/gtkuimanager.c (update_node): 
2433         * gtk/gtkaction.c (connect_proxy): Set "no_show_all" on constructed
2434         widgets whose visibility is externally controlled.
2435
2436         * gtk/gtkwidget.[hc] (gtk_widget_[gs]et_no_show_all): Add a boolean 
2437         "no_show_all" property with setter and getter. When TRUE, it keeps
2438         gtk_widget_{hide,show}_all() from modifying the visibility of the 
2439         widget and its children.
2440
2441 Sun Sep 21 23:13:37 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2442
2443         * gtk/gtktextview.[ch]: Add new "tab moves focus" property (#122709)
2444
2445 2003-09-20  Tor Lillqvist  <tml@iki.fi>
2446
2447         * gtk-zip.sh.in: Don't use zip -r on the etc directory, to avoid
2448         including editor backup files. List files we want explicitly.
2449
2450         * gtk/gtkmain.c (_gtk_get_lc_ctype): New function. On Unix, just
2451         calls setlocale (LC_CTYPE, NULL). On Windows, looks for the
2452         LC_ALL, LC_CTYPE and LANG environment variables, than calls
2453         g_win32_getlocale().
2454
2455         (gtk_get_default_language): Code snippet moved to above function,
2456         call it.
2457
2458         * gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave)
2459         * gtk/gtkrc.c (gtk_rc_context_parse_file): Call
2460         _gtk_get_lc_ctype() instead of setlocale().
2461
2462 Fri Sep 19 18:15:31 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2463
2464         * gtk/gtkpaned.c, gtk/gtkhpaned.c: implement RTL flipping
2465         (#96632)
2466
2467 Fri Sep 19 13:24:54 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2468
2469         * gtk/gtktreeview.c (gtk_tree_view_get_cursor): Improve
2470         documentation. (#117306, Steve Chaplin)
2471
2472 2003-09-19  Tor Lillqvist  <tml@iki.fi>
2473
2474         * gdk/win32/gdkkeys-win32.c (update_keymap): Handle dead keysyms
2475         present on the US-International keyboard. For clarity, order
2476         keysyms in case statement according to numeric value.
2477
2478         (gdk_keymap_translate_keyboard_state): Handle Caps Lock
2479         correctly. (#120176, Ken Rastatter and Owen Taylor)
2480
2481 2003-09-18  Matthias Clasen  <maclas@gmx.de>
2482
2483         * gtk/gtkaction.c (gtk_action_finalize): Call g_closure_unref() to
2484         unref a closure, not g_object_unref().  (#122637, Marco Pesenti Gritti)
2485
2486         Install accelerators on actions, not on proxies, support
2487         accelerator-only actions:
2488         
2489         * gtk/gtkmenu.c (get_accel_path): New function to get the accel path
2490         and its lock status either via _gtk_widget_get_accel_path() or by 
2491         looking at the accel_path stored in the menu item itself and determining
2492         its lock status by peeking into the contained accel label. This was
2493         already (accidentally) committed a week ago.
2494
2495         * gtk/gtkaction.h (gtk_action_set_accel_group):
2496         (gtk_action_[dis]connect_accelerator): New functions.
2497
2498         * gtk/gtkaction.c (struct _GtkActionPrivate): Add accel_group,
2499         accel_closure and accel_count. We must have a reference to the 
2500         accel_group, since we need it in connect_proxy. The count is necessary
2501         to ensure that the accelerator isn't removed before the last proxy 
2502         requesting it has been unmerged.
2503         (connect_proxy): Connect the accelerator to the 
2504         action now, only set the accel_path on the menuitem.
2505         (remove_proxy): Disconnect the accelerator from the action, not from
2506         the menuitem.
2507         (gtk_action_set_accel_group): Set the accel group. 
2508         (gtk_action_[dis]connect_accelerator): Count the number of times
2509         this functions have been called and install/remove the accelerator if
2510         the count leaves/reaches zero.
2511
2512         * gtk/gtkuimanager.h (GtkUIManagerItemType): Add 
2513         GTK_UI_MANAGER_ACCELERATOR.
2514
2515         * gtk/gtkuimanager.c (NodeType): Add NODE_TYPE_ACCELERATOR.
2516         (start_element_handler): Create NODE_TYPE_ACCELERATOR nodes from
2517         <accelerator> elements.
2518         (gtk_ui_manager_add_ui): Create NODE_TYPE_ACCELERATOR nodes when
2519         type is GTK_UI_MANAGER_ACCELERATOR.
2520         (update_node): Set the accel group on actions before creating their
2521         proxies. Don't set the accel group on created menus. For 
2522         NODE_TYPE_ACCELERATOR nodes, [dis]connect the actions' accelerator.
2523         (print_node): Also emit <accelerator> elements.
2524
2525         * tests/testmerge.c (dump_accels): Add a "Dump Accels" button. 
2526
2527         * gtk/gtkuimanager.c (update_node): Robustness improvements.
2528
2529 2003-09-17  Matthias Clasen  <maclas@gmx.de>
2530
2531         * gtk/gtkuimanager.c (text_handler): Report unexpected character
2532         data as error from the GMarkup parser, otherwise things like
2533         gtk_ui_manager_add_ui_from_string (ui, "Hi there!", -1, &error) 
2534         pass unexpectedly.
2535
2536 Wed Sep 17 02:38:53 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2537
2538         * gtk/gtktoolbar.c (gtk_toolbar_class_init): revert accidentally
2539         committed redraw_on_allocate change.
2540
2541 Tue Sep 16 10:42:00 2003  Eric Warmenhoven  <eric@warmenhoven.org>
2542
2543         * gdk/linux-fb/gdkwindow-fb.c: Add gdk_window_set_keep_{above,below}
2544         stubs to fix compilation
2545
2546         * gdk/linux-fb/gdkrender-fb.c: Add gdk_shadow_fb_stop_updates stub for
2547         when shadowfb is disabled. Patch from pjm@cctechnol.com (#120847).
2548
2549         * gdk/linux-fb/gdkmouse-fb.c: Add GDK_MOUSE_DEVICE environment
2550         variable. Patch from Marc Welz (#121347).
2551
2552 2003-09-16  Matthias Clasen  <maclas@gmx.de>
2553
2554         * gtk/gtkaction.h: Apply egtk-format-protos.
2555
2556 2003-09-15  Matthias Clasen  <maclas@gmx.de>
2557
2558         * gtk/gtkuimanager.c: Doc tweaks.
2559
2560         Smart separators; see 
2561         http://mail.gnome.org/archives/gtk-devel-list/2003-September/msg00133.html:
2562         
2563         * gtk/gtkuimanager.c (update_smart_separators): New function which 
2564         implements "smart" separators by iterating once over the entries of a 
2565         menu, hiding and showing separators as necessary.
2566         (update_node): Mark separators used as fences of placeholders as
2567         hidden. Explicitly added separators are marked as smart. Call 
2568         update_smart_separators after updating a menu or toolbar node. 
2569         Connect update_smart_separators to "notify::visible" signal on menu
2570         and tool items.
2571         
2572         * tests/merge-[12].ui: Test smart separators.
2573
2574         Changes to allow setting action state before connecting signal; see
2575         the thread starting at 
2576         http://mail.gnome.org/archives/gtk-devel-list/2003-September/msg00140.html:
2577         
2578         * gtk/gtkactiongroup.[hc]: (gtk_action_group_add_radio_actions):
2579         (gtk_action_group_add_radio_actions_full): Add value parameter to allow
2580         setting the currently selected group member before connecting signals.
2581         (GtkToggleActionEntry): Separate struct for constructing toggle actions,
2582         including a boolean to initialize the action state before connecting
2583         signals.
2584         (gtk_action_group_add_toggle_actions):
2585         (gtk_action_group_add_toggle_actions_full): New functions to construct
2586         toggle actions from an array of GtkToggleActionEntries.
2587
2588         * demos/gtk-demo/appwindow.c: 
2589         * tests/testactions.c: 
2590         * tests/testmerge.c: Adjust to new action group API.
2591
2592 Sun Sep 14 16:59:52 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2593
2594         * gtk/gtktoolbar.c (gtk_toolbar_init): Name the arrow 
2595         "gtk-toolbar-arrow" so themes can special-case it.
2596
2597 Sun Sep 14 16:07:49 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2598
2599         * gtk/Makefile.am (gtk_c_sources): sort the list of files.
2600
2601 Sun Sep 14 15:49:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2602
2603         * gtk/gtktoolbar.c (toolbar_item_is_homogeneous): Unref the
2604         PangoFontMetrics. Patch from Steve Chaplin (#122257).
2605
2606 2003-09-14  Tor Lillqvist  <tml@iki.fi>
2607
2608         * gdk/win32/gdkwindow-win32.c (show_window_internal): Remove
2609         special-case code for WS_EX_TRANSPARENT (GDK_INPUT_ONLY) windows,
2610         the usefulness of which was already in doubt. Removing it fixes
2611         bugs #118575 and #121851.
2612
2613 Fri Sep 12 16:32:53 2003  Jonathan Blandford  <jrb@redhat.com>
2614
2615         Merge from stable.
2616
2617         * gtk/gtktreeview.c (gtk_tree_view_button_press): only save the
2618         pressed button (used to determine if we want to initiate a drag later
2619         on) if the current grab widget is either NULL or tree_view (Reported
2620         by Jeroen Zwartepoorte).
2621
2622 2003-09-12  Matthias Clasen  <maclas@gmx.de>
2623
2624         * gdk/gdkdraw.c (gdk_draw_string, gdk_draw_text) 
2625         (gdk_draw_text_wc): Add deprecation notes.  (#121955, Martin Pool)
2626
2627 2003-09-11  Matthias Clasen  <maclas@gmx.de>
2628
2629         * gdk/gdkpango.c: Doc tweaks.
2630
2631         * tests/testgtk.c: Add table menu tests.
2632
2633         * gtk/gtkmenu.c (gtk_menu_free_private): Don't forget to free the 
2634         GtkMenuPrivate struct itself. Pointed out by valgrind.
2635
2636         * gtk/gtkuimanager.c (gtk_ui_manager_finalize): Clean up 
2637         properly.  (#121998)
2638
2639 Wed Sep 10 22:25:04 2003  Kristian Rietveld  <kris@gtk.org>
2640
2641         The table menu patch! Turns GtkMenu into a table, so you can attach
2642         menu items in numerous new ways! Be creative!
2643
2644         Contains some bug fixes and RTL adaptions from Matthias Clasen.
2645
2646         * gtk/gtkmenu.c [toplevel]: introduce ATTACH_INFO_KEY, extend
2647         GtkMenuPrivate, introduce AttachInfo, add child properties enum,
2648         (gtk_menu_free_private), (gtk_menu_get_private): we have to free
2649         the heights array in the private struct,
2650         (gtk_menu_class_init): reorder code a bit, install child properties,
2651         (get_attach_info), (get_child_attach): new utility functions,
2652         (gtk_menu_set_child_property), (gtk_menu_get_child_property): introduce
2653         child properties, for the attach info,
2654         (gtk_menu_remove): remove AttachInfo from menu item,
2655         (gtk_menu_real_insert): implemented algorithm to automagically place
2656         inserted menu items at the correct place in the table,
2657         (gtk_menu_size_request), (gtk_menu_size_allocate),
2658         (compute_child_offset): reworked/rewritten to support table menus,
2659         (gtk_menu_attach): new function,
2660         (find_child_containing), (gtk_menu_move_current): new functions to
2661         get table menu keynav right.
2662
2663         * gtk/gtkmenu.h: add gtk_menu_attach() prototype.
2664
2665 2003-09-10  Matthias Clasen  <maclas@gmx.de>
2666
2667         * gtk/gtksocket.c (gtk_socket_filter_func): Only remove 
2668         PropertyNotify events from the stream if they have been handled,
2669         in order to enable extending the plug<->socket communication via
2670         properties.
2671
2672 Wed Sep 10 01:06:44 2003  Kristian Rietveld  <kris@gtk.org>
2673
2674         Big TreeView DnD fixage, makes drops on empty models work, makes
2675         TreeStore DnD work and gets rid of gtk-tree-model-drop-append.
2676         Related bugs #95362 and #113314. I don't want to touch this code
2677         ever again.
2678
2679         * gtk/gtktreeprivate.h (GtkTreePrivate): add empty_view_drop field.
2680
2681         * gtk/gtktreednd.c (gtk_tree_get_row_drag_data): add check
2682         for selection_data->length.
2683
2684         * gtk/gtktreeview.c (struct DestRow), (dest_row_free),
2685         (set_dest_row), (get_dest_row): we don't store just the row ref
2686         anymore, but a struct with the row ref and additional info,
2687         (set_destination_row): handle drops on empty space and some
2688         style fixes,
2689         (get_logical_dest_row): also return path_down_mode/drop_append_mode
2690         flags, handle dropping childs on their new parents, rewrite
2691         drop append handling into something saner,
2692         (gtk_tree_view_drag_motion): show a "drop possible arrow" on empty
2693         spaces,
2694         (gtk_tree_view_drag_drop): updates for updated backend,
2695         (gtk_tree_view_drag_data_received): updates for updated backend,
2696         path down mode (treestore DnD) handling,
2697         (gtk_tree_view_set_drag_dest_row): set empty_view_drop flag,
2698         when we are trying to drop a row on an empty model,
2699         (gtk_tree_view_get_drag_dest_row): handle empty_view_drop flag.
2700
2701         * gtk/gtkliststore.c (gtk_list_store_drag_data_received),
2702         (gtk_list_store_row_drop_possible): style and drop-append fixes.
2703
2704         * gtk/gtktreestore.c (gtk_tree_store_drag_data_received): ditto.
2705
2706 2003-09-08  Alexander Larsson  <alexl@redhat.com>
2707
2708         * gtk/gtkeventbox.[hc]:
2709         Implement gtk_event_box_get/set_input_only()
2710         
2711         * tests/testgtk.c:
2712         Tests for the new input only event boxes
2713
2714 Mon Sep  8 21:44:20 2003  Kristian Rietveld  <kris@gtk.org>
2715
2716         Fixes from David Hampton <hampton@employees.org> via gtk-devel-list.
2717
2718         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_elt_get_path): fix
2719         the call to gtk_tree_model_filter_add_root,
2720         (gtk_tree_model_filter_row_changed): bail out if c_path is not above
2721         the virtual root, allow building levels on the second try to convert
2722         the child path to a filter path,
2723         (gtk_tree_model_filter_convert_iter_to_child_iter): pass the virtual
2724         root when calling gtk_tree_model_filter_elt_get_path.
2725
2726 2003-09-07  Matthias Clasen  <maclas@gmx.de>
2727
2728         * gtk/gtkuimanager.c (update_node): Fix a C99ism.  (#121640,
2729         Josh Beam)
2730
2731         Fixes for accelerator handling during (un)merging:
2732         
2733         * gtk/gtkuimanager.c (update_node): Move setting info-action
2734         after the switch, since the old action is needed in some cases.
2735         In cases of proxy type mismatch, disconnect the old proxy from
2736         the old action.
2737
2738         * gtk/gtkaction.c (remove_proxy): Renamed from 
2739         gtk_action_remove_proxy(). Move unsetting of the accelerator
2740         here from disconnect_proxy() in order to catch all cases of 
2741         removing a proxy.
2742         (gtk_action_disconnect_proxy): Fix logic in g_return_if_fail()
2743         to fail if proxy isn't a proxy of action.
2744
2745 2003-09-07  Pablo Saratxaga  <pablo@mandrakesoft.com>
2746
2747         * configure.in: Added Uzbek latin (uz) and cyrillic (uz@Cyrl) to
2748         ALL_LINGUAS
2749
2750 2003-09-07  Matthias Clasen  <maclas@gmx.de>
2751
2752         * gtk/gtkaction.c (disconnect_proxy): Make disconnect work
2753         for toolitems.
2754
2755 2003-09-06  Matthias Clasen  <maclas@gmx.de>
2756
2757         * gtk/gtkaction.c (gtk_action_connect_proxy): Disconnect from 
2758         prev_action, not from action.  (Fix by David Hampton)
2759
2760 Fri Sep  5 14:15:10 2003  Owen Taylor  <otaylor@redhat.com>
2761  
2762         * Back out locale-dependent interpretation of
2763         KP_Decimal, the official XFree86 interpretation
2764         is that KP_Decimal => . KP_Separator => ,
2765         always, independent of locale. 
2766         (#105161, Frederic Crozat, 
2767         http://bugs.xfree86.org/show_bug.cgi?id=534)
2768  
2769 2003-09-04  Matthias Clasen  <maclas@gmx.de>
2770
2771         * tests/testmerge.c: Test buttons and toggle buttons as proxies.
2772
2773         * gtk/gtktoggleaction.c (connect_proxy): 
2774         (gtk_toggle_action_real_toggled): Support toggle buttons as proxies. Note 
2775         that a "draw_as_radio" property is needed for check buttons similar to 
2776         check menu items, in order to fully support button proxies for radio actions.
2777
2778         * gtk/gtkaction.c (connect_proxy): Allow buttons as proxies.
2779
2780         * tests/testmerge.c (toggle_dynamic): Test gtk_ui_manager_add_ui(). 
2781
2782         * gtk/gtkuimanager.h: Add GtkUIManagerItemType enum which is needed for the
2783         'type' argument of gtk_ui_manager_add_ui().
2784
2785         * gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui): Add 'type' and 'top' arguments
2786         to make this function as powerful as the XML methods of adding UI.  (#120647)
2787
2788 Thu Sep  4 19:11:23 2003  Kristian Rietveld  <kris@gtk.org>
2789
2790         Merge from stable.
2791
2792         * docs/RELEASE-HOWTO: updates.
2793
2794 2003-09-04  Matthias Clasen  <maclas@gmx.de>
2795
2796         * tests/merge-2.ui: Use "position" instead of "pos".
2797
2798         * gtk/gtkuimanager.c (start_element_handler): No need 
2799         to be terse: Change the name of the "pos" attribute
2800         to "position".
2801
2802 2003-09-04  Matthias Clasen  <maclas@gmx.de>
2803
2804         * gtk/gtkuimanager.c: Un-prefix GtkUIManagerNodeType and 
2805         GtkUIManagerNode to shorten the names and to make the
2806         GTK_UI_MANAGER_<TYPE> names available for a public enum.
2807
2808         * gtk/gtkactiongroup.c:
2809         * gtk/gtkuimanager.c: Various doc tweaks.       
2810
2811         * gtk/gtkuimanager.c (start_element_handler):
2812         (end_element_handler): Improve error reporting. 
2813
2814 Wed Sep  3 23:18:17 2003  Kristian Rietveld  <kris@gtk.org>
2815
2816         Merge from stable.
2817
2818         * gtk/gtkmenu.c (gtk_menu_real_move_scroll): for the END case,
2819         use end_position - page_size instead of G_MAXINT, since
2820         gtk_menu_scroll_to doesn't CLAMP anymore internally. (Fixes #121237,
2821         reported by Havoc Pennington).
2822
2823 Wed Sep  3 21:58:03 2003  Kristian Rietveld  <kris@gtk.org>
2824
2825         Merge from stable.
2826
2827         * gtk/gtkiconfactory.c (cached_icon_free): if icon->style != NULL,
2828         unref it. (Fixes memleak, patch from Kjartan Maraas).
2829
2830 Wed Sep  3 21:38:26 2003  Kristian Rietveld  <kris@gtk.org>
2831
2832         * gdk/Makefile.am, gdk/linux-fb/gdkfbmanager.c, gdk/x11/gdkcolor-x11.c,
2833         gdk-pixbuf/io-gif.c, gtk/Makefile.am, gtk/gtkcalendar.c,
2834         gtk/gtkclist.c, gtk/gtkctree.c, gtk/gtkdnd.c, gtk/gtkentry.c,
2835         gtk/gtkhandlebox.c, gtk/gtkitemfactory.c, gtk/gtkmenu.c,
2836         gtk/gtknotebook.c, gtk/gtkrange.c, gtk/gtkrc.h, gtk/gtktree.c,
2837         gtk/gtktypeutils.h: big patch from Kjartan Maraas
2838         to fix numerous typos.
2839
2840 Wed Sep  3 17:38:01 BST 2003  Tony Gale <gale@gtk.org>
2841
2842         * docs/faq/gtk-faq.sgml: Correct compile line for threads example.
2843
2844 2003-09-02  Tor Lillqvist  <tml@iki.fi>
2845
2846         * gdk/win32/gdkdisplay-win32.c (gdk_display_open): Don't call
2847         CloseHandle() on the HMODULE returned from GetModuleHandle().
2848         Didn't cause any harm, but didn't do anything useful either. When
2849         running a GTK+ program under MS's debugger, the CloseHandle() call
2850         would cause a "first-chance exception" in ntdll.dll to show up.
2851         (The exception is caught appropriately if you let it proceed, but
2852         it confuses the person using the debugger). Thanks to Bruce
2853         Hochstetler for noticing.
2854
2855 Tue Sep  2 21:01:19 2003  Kristian Rietveld  <kris@gtk.org>
2856
2857         Merge from stable.
2858
2859         * gtk/gtktreeview.c (gtk_tree_view_button_press): revert the change
2860         to only select when button 1 is pressed introduced in the fix of
2861         bug #120187.
2862
2863 2003-09-02  Matthias Clasen  <maclas@gmx.de>
2864
2865         * gtk/gtkactiongroup.c (gtk_action_group_new): Doc addition.
2866
2867         * gtk/gtkuimanager.c: Shorten the names of some static 
2868         functions.
2869
2870         Support adding and removing merge nodes dynamically (#120647, 
2871         Anders Carlsson):
2872         
2873         * gtk/gtkuimanager.[ch] (gtk_ui_manager_new_merge_id): Renamed 
2874         gtk_ui_manager_next_merge_id to gtk_ui_manager_new_merge_id 
2875         and made it public.
2876         (gtk_ui_manager_add_ui): New function to add UI elements
2877         without juggling XML fragments, currently restricted to menuitems,
2878         toolitems and separators. Actions still come from registered 
2879         action groups.
2880
2881 Mon Sep  1 19:39:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2882
2883         * gdk/gdkwindow.c (gdk_window_get_bg_gc): Fix bug where the
2884         background pixmap was being offset twice, once by the ts_origin in
2885         gdk_window_get_bg_gc(), and once by gdk_draw_rectangle().
2886
2887 2003-09-01  Matthias Clasen  <maclas@gmx.de>
2888
2889         * gtk/gtkuimanager.[ch] (gtk_ui_manager_ensure_update): Make
2890         this public again, since it's occasionally useful.  (#121128,
2891         Marco Pesenti Gritti)
2892
2893         * gtk/gtkaction.c: Add an "is_important" property and propagate
2894         it to toolitem proxies.  (#121058, Marco Pesenti Gritti)
2895
2896 Mon Sep  1 00:32:30 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2897
2898         * tests/testtoolbar.c (main): connect to "delete_event" so the
2899         application will actually quit when you close the window
2900
2901 2003-09-01  Matthias Clasen  <maclas@gmx.de>
2902
2903         * gtk/gtkuimanager.c (gtk_ui_manager_get_widget) 
2904         (gtk_ui_manager_get_action): g_return_if_fail() if
2905         path is NULL.
2906         (gtk_ui_manager_get_node): Avoid a segfault if path is empty.
2907         (gtk_ui_manager_finalize): Remove the idle on finalize. (#121125, 
2908         Marco Pesenti Gritti)
2909
2910 2003-08-31  Matthias Clasen  <maclas@gmx.de>
2911
2912         * gtk/gtktoolitem.c: Fix some typos in docs.
2913
2914         * gtk/gtkuimanager.[ch] (gtk_ui_manager_get_action): New function,
2915         replaces gtk_ui_manager_activate().  (#120658)
2916
2917         * tests/testmerge.c: Use gtk_ui_manager_get_action() instead of
2918         gtk_ui_manager_activate().
2919
2920         * gtk/gtkaction.c: 
2921         * gtk/gtkactiongroup.c: Some doc tweaks.
2922
2923         * gtk/gtkuimanager.[hc]: Get rid of the remove_widget signal. It
2924         wasn't emitted anyway. Some doc tweaks.
2925
2926 2003-08-30  Matthias Clasen  <maclas@gmx.de>
2927
2928         * tests/testmerge.c (add_widget): Connect to "destroy" on toolbar,
2929         rather than to "remove" on handlebox. 
2930
2931         * gtk/gtkuimanager.[hc] (gtk_ui_manager_activate): New method to
2932         activate an action found by following a path.  (#120658)
2933
2934         * tests/testmerge.c: Add a button to test gtk_ui_manager_activate().
2935
2936         * tests/testmerge.c (add_widget): Put toolbars in handleboxes.
2937
2938         * gtk/gtkuimanager.[hc]: Add a boolean property, "add_tearoffs" with 
2939         setter and getter. If it is set, add tearoff menu items to regular 
2940         menus, but not to popups. Add a signal "changed", which gets emitted
2941         when the merged ui has changed.  (#120649, #120656)
2942
2943         * tests/testmerge.c: Add button to test the generation of tearoff 
2944         menu items.
2945
2946 2003-08-29  Matthias Clasen  <maclas@gmx.de>
2947
2948         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full): 
2949         Actually group the actions together rather than putting each in its 
2950         own group.
2951
2952         * gtk/gtkradioaction.c (create_menu_item): Set "draw_as_radio" on 
2953         proxy menu items for radio actions.
2954
2955         * gtk/gtkgamma.c (gamma_ok_callback): Use g_strtod instead of strtod.
2956
2957 Fri Aug 29 21:40:01 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2958
2959         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
2960         Fix use of uninitialized variable.
2961
2962         * gtk/gtktextutil.c
2963         (_gtk_text_util_append_special_char_menuitems): add const cast to
2964         get rid of warning
2965
2966 2003-08-29  Matthias Clasen  <maclas@gmx.de>
2967
2968         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Install 
2969         "draw_as_radio" as a separate property, not as an alias of 
2970         "inconsistent".
2971         (gtk_check_menu_item_get_property): 
2972         (gtk_check_menu_item_set_property): Also support "draw_as_radio".
2973
2974 Fri Aug 29 20:32:07 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2975
2976         * gtk/gtktoolbar.c: Only treat buttons as homogeneous when they
2977         are narrower than 13 time the estimated character width of the
2978         font. (#107781, David Bordoley)
2979
2980         * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): Check
2981         here if the GtkToggleButton is active. This may be the case if it
2982         is a radio button.
2983
2984         * gtk/gtktoolbar.c: Clarify documentation wrt. GtkSignalFunc
2985         vs. void (*) (GtkWidget, gpointer). (#107495, Mariano
2986         Suarez-Alvarez).
2987
2988         * gtk/gtkcheckmenuitem.[ch]: new "draw_as_radio"
2989         property. (#111207, David Bordoley).
2990
2991         * gtk/gtktoggletoolbutton.c
2992         (gtk_toggle_tool_button_create_menu_proxy): use new
2993         "draw_as_radio" property on the menu item when the item is a radio
2994         tool button
2995
2996         * gtk/gtktoolbutton.c (gtk_tool_button_create_menu_proxy): Fixes
2997         to only pay attention to the "use_underline" property when the
2998         button label comes from the "label" property.
2999
3000 2003-08-29  Laurent Dhima  <laurenti@alblinux.net>
3001
3002         * configure.in: Added "sq" to ALL_LINGUAS.
3003         
3004 2003-08-28  Matthias Clasen  <maclas@gmx.de>
3005
3006         * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): Markup
3007         fix in the docs.
3008
3009         * gtk/gtkuimanager.c: Change the XML format:
3010         <Root> element is replaced by <ui>,
3011         <menu> element is replaced by <menubar>,
3012         <submenu> element is replaced by <menu>,
3013         <dockitem> element is replaced by <toolbar>,
3014         <popups> element is gone,
3015         verb attribute is replaced by action,
3016         name defaults to action or the element name. 
3017
3018         * gtk/gtkactiongroup.[hc]: Replace GtkActionGroupEntry by 
3019         GtkActionEntry and GtkRadioActionEntry. GtkActionEntry is simplified 
3020         by removing the user_data, entry_type and extra_data fields, 
3021         GtkRadioActionEntry is further simplified by removing the callback. 
3022         The user_data can now be specified as an argument to 
3023         gtk_action_group_add_actions(). There is a new method 
3024         gtk_action_group_add_radio_actions(), which is similar to 
3025         gtk_action_group_add_actions(), but takes GtkRadioActionEntrys
3026         and a callback parameter in addition to the user_data. The callback
3027         is connected to the ::changed signal of the first group member.
3028         There are _full() variants taking a GDestroyNotify of 
3029         gtk_action_group_add_[radio_]actions().
3030
3031         * gtk/gtkradioaction.[hc]: Add a ::changed signal which gets emitted 
3032         on every member of the radio group when the active member is changed. 
3033         Add an integer property "value", and a getter for the value of "value"
3034         on the currently active group member. 
3035
3036         * tests/testactions.c: 
3037         * tests/testmerge.c: 
3038         * tests/merge-[123].ui:  
3039         * demos/gtk-demo/appwindow.c: Adjust to these changes.
3040
3041         * gtk/gtktoolbar.c (gtk_toolbar_append_element): Trivial doc fix.
3042
3043 2003-08-27  Anders Carlsson  <andersca@gnome.org>
3044
3045         * demos/gtk-demo/appwindow.c (do_appwindow): Focus the
3046         text view, so the tool bar won't have focus.
3047
3048 Tue Aug 26 09:57:38 2003  Owen Taylor  <otaylor@redhat.com>
3049
3050         * gdk/x11/gdkkeys-x11.c (update_keymaps): Fix variable
3051         declaration not at start of block. (#120371, Damien Carbery)
3052
3053 2003-08-26  Matthias Clasen  <maclas@gmx.de>
3054
3055         * gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui_from_string): Use gssize 
3056         for length, not gsize.
3057
3058         * gtk/gtkuimanager.c: Refactor the XML format a bit: rename <Root> to 
3059         <ui> and make it optional in strings. Rename verb to action, <dockitem> 
3060         to <toolbar>, <menu> to <menubar>, <submenu> to <menu>.
3061
3062         * demos/gtk-demo/appwindow.c: 
3063         * tests/testactions.c: 
3064         * tests/testmerge.c:
3065         * tests/merge-1.ui:
3066         * tests/merge-2.ui:
3067         * tests/merge-3.ui: Adjust to the new XML format.
3068
3069 Mon Aug 25 19:55:55 2003  Owen Taylor  <otaylor@redhat.com>
3070
3071         * gtk/gtktextview.c (gtk_text_view_update_layout_width): 
3072         Since we add one to the layout's reported width to
3073         account for the cursor, we need to subtract one when
3074         setting the wrap width for the layout. (Fixes infinite
3075         loop (#120325, Frederic Crozat)
3076
3077         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
3078         Be a bit more careful about rounding when converting
3079         wrapped width from Pango units to pixels.
3080
3081 2003-08-26  Matthias Clasen  <maclas@gmx.de>
3082
3083         Rename GtkMenuMerge to GtkUIManager. 
3084         
3085         * gtk/gtkuimanager.[hc]: New files. 
3086         * gtk/gtkmenumerge.[hc]: Removed. 
3087
3088         * gtk/Makefile.am: 
3089         * gtk/gtk.h:
3090         * tests/testmerge.c: 
3091         * tests/testactions.c: 
3092         * demos/gtk-demo/appwindow.c: Replace all uses of GtkMenuMerge by 
3093         GtkUIManager.
3094
3095         * demos/gtk-demo/appwindow.c: Make GtkMenuMerge demo less intimidating: 
3096         add comments to entries array, remove newlines from ui definition. Don't 
3097         use the ::add_widget signal.
3098
3099 Mon Aug 25 17:28:04 2003  Owen Taylor  <otaylor@redhat.com>
3100
3101         * gtk/gtknotebook.c (gtk_notebook_forall): Don't
3102         include page->menu_label - causes various problems,
3103         including #12047.
3104
3105 Mon Aug 25 23:21:43 2003  Kristian Rietveld  <kris@gtk.org>
3106
3107         Merge from stable.
3108
3109         Fixes #115871, reported by Michael Natterer.
3110
3111         * gtk/gtktreeprivate.h: added GtkTreeSelectMode enum,
3112         added ctrl_pressed and shift_pressed bitfields,
3113         (_gtk_tree_selection_internal_select_node): replace GdkModifierType
3114         arg with GtkTreeSelectMode.
3115
3116         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode),
3117         (gtk_tree_selection_select_path), (gtk_tree_selection_unselect_path),
3118         (_gtk_tree_selection_internal_select_node): all updated for
3119         GdkModifierType -> GtkTreeSelectMode move.
3120
3121         * gtk/gtktreeview.c (gtk_tree_view_button_press): set ctrl_pressed
3122         and shift_pressed around selection handling block,
3123         (gtk_tree_view_real_select_cursor_row),
3124         (gtk_tree_view_real_toggle_cursor_row),
3125         (gtk_tree_view_real_selection_cursor_parent),
3126         (gtk_tree_view_real_set_cursor): use ctrl_pressed and shift_pressed,
3127         instead of checking the event state. And also updates for the
3128         GdkModifierType -> GtkTreeSelectMode move.
3129
3130 Wed Aug 20 21:26:49 2003  Owen Taylor  <otaylor@redhat.com>
3131
3132         * gtk/gtkplug.c (gtk_plug_focus): Send the focus on
3133         to the parent when there was no focus widget before
3134         and no focus widget after - that is, when there are
3135         no focusable widgets. (#108678, help tracking it
3136         down from Padraig O'Briain, Federico Mena Quintero, )
3137
3138         * gtk/gtkxembed.[ch]: Move various shared utilities
3139         for the XEMBED protocol eused by GtkPlug and GtkSocket 
3140         here.
3141
3142         * gtk/gtkxembed.[ch] gtkplug.c gtksocket.c: Implement
3143         a flag bit that is sent with focus mesages to indicate
3144         that the focus has wrapped around on the toplevel;
3145         use this bit to catch infinite loops when there is no
3146         focusable widget at ll in the entire toplevel.
3147
3148         * tests/testsocket.c (child_read_watch): Remove an
3149         extraneous unref.
3150
3151         * gtk/gtkplug.c gtk/gtksocket.c gtk/gtkxembed.h: 
3152         Up XEMBED protocol version to 1, add logic for 
3153         sending the right version in XEMBED_EMBEDDED_NOTIFY.
3154
3155         * gtk/gtksocket.c (gtk_socket_add_window): Send
3156         the embedder window in the XEMBED_EMBEDDED_NOTIFY
3157         as the spec requires.
3158
3159 Mon Aug 25 16:15:41 2003  Owen Taylor  <otaylor@redhat.com>
3160
3161         * gdk/x11/gdkkeys-x11.c: Fix up CapsLock and 
3162         NumLock handling for non-XKB. Add a special case
3163         hack for NumLock on Sun servers. (Patch from
3164         Robert Basch, #115819)
3165
3166 2003-08-25  Matthias Clasen  <maclas@gmx.de>
3167
3168         * gtk/gtkactiongroup.c (gtk_action_group_add_actions): Remove C99isms. (Morten 
3169         Welinder)
3170
3171         * gtk/gtkactiongroup.[hc] (gtk_action_group_set_translate_func,
3172         gtk_action_group_set_translation_domain): Hooks for translation of
3173         label and tooltip in GtkActionGroupEntries.  (#120620)
3174
3175 2003-08-25  Matthias Clasen  <maclas@gmx.de>
3176
3177         * gtk/gtkactiongroup.h (GtkActionGroupEntryType): Namespace the enum
3178         values properly. Sorry about the resize grip trouble, Owen.  (#120621)
3179         
3180         * gtk/gtkactiongroup.c: 
3181         * demos/gtk-demo/appwindow.c: 
3182         * tests/testmerge.c: 
3183         * tests/testactions.c: Use new GtkActionGroupEntryType enum.  
3184
3185 Sun Aug 24 17:14:44 2003  Owen Taylor  <otaylor@redhat.com>
3186
3187         * gtk/gtk.h: Remove reference to gtkresizegrip.h.
3188
3189 Sun Aug 24 17:03:44 2003  Owen Taylor  <otaylor@redhat.com>
3190
3191         * gtk/Makefile.am: Fix accidental commit of references
3192         to gtkresizegrip.[ch]
3193
3194 Sun Aug 24 17:00:03 2003  Owen Taylor  <otaylor@redhat.com>
3195
3196         * gtk/gtkrc.c: Fix some missing initializations of
3197         rc_file->directory.
3198
3199 2003-08-24  Matthias Clasen  <maclas@gmx.de>
3200
3201         * gtk/gtkaction.[ch]: 
3202         * gtk/gtktoggleaction.[ch]: 
3203         * gtk/gtktoggleactionprivate.h: 
3204         * gtk/gtkradioaction.[ch]: 
3205         * gtk/gtkactiongroup.[ch]: 
3206         * gtk/gtkmenumerge.[ch]: A model-view separation for menus and
3207         toolbars, using the EggMenu code by James Henstridge.
3208
3209         * gtk/gtk.h: Include new headers.
3210         * gtk/Makefile.am: Add new files.
3211
3212         * tests/testactions.c: Test for actions.
3213         * tests/testmerge.c: Test for menu merging.
3214         * tests/merge-[123].ui: Test data for testmerge. 
3215         * tests/Makefile.am: Add testactions and testmerge.
3216
3217         * demos/gtk-demo/appwindow.c: Use GtkMenuMerge to construct the 
3218         menubar and toolbar.
3219         
3220 Sat Aug 23 21:40:18 2003  Owen Taylor  <otaylor@redhat.com>
3221  
3222         * gtk/gtkrc.c (gtk_rc_context_parse_one_file): Fix 
3223         problem where rc_file->directory wasn't always getting
3224         set. (#120549, Luis Villa)
3225  
3226 2003-08-22  Christian Rose  <menthos@menthos.com>
3227
3228         * configure.in: Added "ne" to ALL_LINGUAS.
3229
3230 Thu Aug 21 16:00:36 2003  Owen Taylor  <otaylor@redhat.com>
3231  
3232         * gtk/gtkrc.c: Keep a list of current GtkRcFiles
3233         being parsed, not just the directories for those
3234         files. Use that to catch recursion. (Part of
3235         #114988)
3236  
3237 Thu Aug 21 21:27:45 2003  Kristian Rietveld  <kris@gtk.org>
3238
3239         Merge from stable.
3240
3241         Fix option menu scrolling (#119821, Owen Taylor).
3242
3243         * gtk/gtkmenu.c (gtk_menu_scroll_to): remove logic introduced
3244         by #80484 and the CLAMP,
3245         (get_menu_height): new function,
3246         (gtk_menu_real_move_scroll): sort of moved the CLAMP here to correct
3247         new_offset to handle page up/down right.
3248
3249 Thu Aug 21 15:17:42 2003  Owen Taylor  <otaylor@redhat.com>
3250
3251         * gdk/x11/gdkkeys-x11.c: Change the interpretation
3252         of consumed_modifiers so that it contains:
3253          - Modifiers combinations actually found in
3254            state.
3255          - Single modifier modifier combinations.
3256         But not multi-modifier combinations that aren't
3257         in event->state. Document. (#100439)
3258
3259 Thu Aug 21 20:53:46 2003  Kristian Rietveld  <kris@gtk.org>
3260
3261         Slightly modified patch from Yann Rouillard to improve selection
3262         behavior with the mouse. Fixes #120187.
3263
3264         * gtk/gtktreeview.c (gtk_tree_view_button_press): only
3265         select/deselect items on the first button press of button 1,
3266         expand checks for row_activated to include triple clicks.
3267
3268 Thu Aug 21 01:33:51 2003  Kristian Rietveld  <kris@gtk.org>
3269
3270         Merge from stable.
3271
3272         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): always round
3273         approximate digit widths up, to avoid truncation, convert to
3274         pango pixels when we have the full string width instead of converting
3275         the approx digit width to pango pixels, take inner border and
3276         interior focus into account correctly. (Fixes #116368, patch from
3277         Morten Welinder).
3278
3279 2003-08-20  Noah Levitt  <nlevitt@columbia.edu>
3280
3281         * gtk/queryimmodules.c: Don't look at the same directory twice (in
3282         simple cases). (#120342)
3283
3284 Wed Aug 20 22:04:47 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3285
3286         * gdk/gdkwindow.c: Make the layers in the paint stack have their
3287         own pixmap instead of sharing one. (#118317)
3288
3289         * tests/testgtk.c (create_get_image): Fixes to make the window fit
3290         on an 800x600 screen
3291
3292 Wed Aug 20 22:03:25 2003  Kristian Rietveld  <kris@gtk.org>
3293
3294         Merged from stable.
3295
3296         * gtk/gtkspinbutton.c (start_spinning): change the type of step
3297         to gdouble, since it gets it's data from a gdouble (Fixes #113547).
3298
3299 Mon Aug 18 17:19:12 2003  Owen Taylor  <otaylor@redhat.com>
3300
3301         * modules/input/gtkimcontextxim.[ch]: Substantially
3302         rework the handling of status windows:
3303         
3304          - Store the current StatusWindow in the 
3305            GtkIMContextXIM structure and vice-versa, so we
3306            don't have to hunt the window hierarchy on
3307            cleanup.
3308          - Use the Gtkidget hierarchy instead of/or as well
3309            as the GdkWindow hierarchy when finding the toplevel;
3310            this helps for things like GtkHandlebox
3311          - Watch GtkWidget::hierarchy_changed to catch 
3312            changes in the toplevel without changes in the
3313            GdkWindow (reparenting)
3314          - Never create the GtkWindow for the status window
3315            unless we have text to display.
3316          - Various cleanups, add lots of comments.
3317
3318         (#115077, much help from Takuro Ashie and Hidetoshi
3319         Tajima in tracking this down and figuring out a fix.)
3320
3321         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_focus_in): 
3322
3323         * modules/input/gtkimcontextxim.c: Track the current
3324         screen for each toplevel so that we show the status
3325         window on the right screen. (#116340, James Su)
3326
3327         * modules/input/gtkimcontextxim.c: If create a new IC
3328         when we currently have the focus, call XSetICFocus()
3329         on it.
3330         
3331         * modules/input/gtkimcontextxim.c (get_im): Fix bug
3332         with multiple open screens.
3333
3334 Tue Aug 19 14:37:46 2003  Owen Taylor  <otaylor@redhat.com>
3335
3336         * gtk/gtkimmulticontext.[ch] (struct _GtkIMMulticontext): 
3337         Replace client_window field with 'priv' pointer,
3338         retaining binary compatibility.
3339
3340         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_slave): 
3341         save use_preedit/cursor_location/focus status and set
3342         up the new slave appropriately. (#118651, Botond Botyanszki)
3343
3344 Tue Aug 19 13:58:50 2003  Owen Taylor  <otaylor@redhat.com>
3345
3346         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
3347         Don't use impl->position_info.clip_rect for toplevels.
3348         (#107068, reported by Thomas Mirlacher)
3349
3350 Mon Aug 18 11:48:51 2003  Owen Taylor  <otaylor@redhat.com>
3351
3352         * gdk/x11/gdkdrawable-x11.c (convert_to_format): 
3353         Add a fallback for unaligned source data for
3354         FORMAT_ARGB_MASK. (#117217)
3355
3356 Mon Aug 18 10:51:57 2003  Owen Taylor  <otaylor@redhat.com>
3357
3358         * configure.in: Rework handling of REBUILD_PNGS,
3359         so that we also don't try to REBUILD_PNGS when
3360         cross-compiling and there is no gdk-pixbuf-csource.
3361         But give an error if gtk/stock-icons/gtkstockpixbufs.h
3362         is not in the source tree. (Note that REBUILDS_PNG
3363         was set backwards before, which is why you always
3364         had to manually recreate gtkstockpixbufs.h!)
3365
3366 Mon Aug 18 10:19:55 2003  Owen Taylor  <otaylor@redhat.com>
3367
3368         * gtk+-2.0-uninstalled.pc.in: Add a missing gtk/ in the
3369         path to libgtk.la. (#120080, Benedikt Spranger)
3370
3371 Sat Aug 16 10:34:49 2003  Owen Taylor  <otaylor@redhat.com>
3372
3373         * modules/input/imcedilla.c: Make the list of default
3374         languages more comprehensive. (Suggestion of
3375         Fco. Javier F. Serrador)
3376
3377 Sat Aug  9 12:47:11 2003  Owen Taylor  <otaylor@redhat.com>
3378
3379         * gdk/gdk.c (gdk_arg_context_parse): Fix broken 
3380         parentheses when skipping args.
3381
3382 Sat Aug 16 16:22:23 2003  Kristian Rietveld  <kris@gtk.org>
3383
3384         Fix major bug in row ref handling, so the new combo box
3385         will actually work right (:. Bug #107748. Patch written
3386         with help from Tim Janik.
3387
3388         The basic idea is to update the row refs in a closure,
3389         before the actual signal is emitted (rather than having
3390         the model connect signal handlers).
3391
3392         * gtk/gtktreemodel.c (gtk_tree_model_base_init): change
3393         g_signal_new calls for row_inserted, row_deleted and
3394         rows_reordered to use the new marshallers,
3395         (row_inserted_marshall), (row_deleted_marshall),
3396         (rows_reordered_marshall): the new marshallers,
3397         (gtk_tree_row_ref_inserted_callback): renamed to
3398         gtk_tree_row_ref_inserted since it isn't a callback
3399         anymore and gets called by the marshaller now,
3400         (gtk_tree_row_ref_deleted_callback): likewise,
3401         (gtk_tree_row_ref_reordered_callback): likewise,
3402         (connect_ref_callbacks), (disconnect_ref_callbacks):
3403         removed,
3404         (gtk_tree_row_reference_new_proxy),
3405         (gtk_tree_row_reference_free),
3406         (gtk_tree_row_reference_inserted),
3407         (gtk_tree_row_reference_deleted),
3408         (gtk_tree_row_reference_reordered): updated.
3409
3410 Fri Aug 15 16:54:39 2003  Owen Taylor  <otaylor@redhat.com>
3411
3412         Improve Cedilla handling - based on a patch from Gustavo 
3413         De Nardin, #111334
3414
3415         * modules/input/imcedilla.c po/POTFILES.in: Input method that 
3416         produces C_WITH_CEDILLA rather than C_WITH_ACUTE for 
3417         dead_acute+c combinations. Make this the default for
3418         fr and pt.
3419
3420         * gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave): 
3421         Use LC_CTYPE instead of LC_MESSAGES to pick the default
3422         input method.
3423
3424 Fri Aug 15 17:00:19 2003  Owen Taylor  <otaylor@redhat.com>
3425
3426         * gtk/gtkimcontextsimple.c: Fix missing compose sequence
3427         for Multi_key+c+apostrophe.
3428
3429 Fri Aug 15 21:57:34 2003  Kristian Rietveld  <kris@gtk.org>
3430
3431         Merged from stable.
3432
3433         * gtk/gtktreeview.c (gtk_tree_view_adjustment_changed): stop editing
3434         on vertical scrolling. (#108035, reported by Tim Janik).
3435
3436 Fri Aug 15 20:06:42 2003  Kristian Rietveld  <kris@gtk.org>
3437
3438         Merged from stable.
3439
3440         * gtk/gtktreeview.c (gtk_tree_model_sort_row_changed),
3441         (gtk_tree_model_sort_level_find_insert),
3442         (gtk_tree_model_sort_insert_value): fix off-by-one error.
3443         (#109292 continued, patch from Yann Rouillard).
3444
3445 Fri Aug 15 19:43:14 2003  Kristian Rietveld  <kris@gtk.org>
3446
3447         (Note: This is not exactly the same as the patch which went in
3448          gtk-2-2).
3449
3450         * gtk/gtktreeview.c (gtk_tree_view_class_init),
3451         (gtk_tree_view_key_press), (gtk_tree_view_search_key_press_event):
3452         Also support the up, down, left, right, home, end, page up and
3453         page down keys on the numpad. (#119419, reported by Alex Larsson).
3454
3455 Fri Aug 15 12:34:04 2003  Owen Taylor  <otaylor@redhat.com>
3456
3457         Fixes for X/Cygwin builds of GTK+ (#107623, Masahiro Sakai):
3458
3459         * configure.in (GDK_DEP_LIBS_FOR_X): Make sure that
3460         we link libgtk against X explicitely, since we
3461         make GTK+ calls for plug/socket.
3462
3463         * gtk/queryimmodules.c: Use USE_LA_MODULES and 
3464         G_MODULE_SUFFIX here. 
3465
3466         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_image): Protect
3467         XShmPutImage with #ifdef USE_SHM.
3468
3469 Thu Aug 14 18:25:39 2003  Owen Taylor  <otaylor@redhat.com>
3470
3471         * gtk/gtkfilesel.c (gtk_file_selection_populate):
3472         Don't reposition the cursor when we aren't trying
3473         to complete. (Fixes problems with selection on
3474         startup, #108433, reported by Mark Finlay.)
3475
3476         * gtk/gtkfilesel.c (gtk_file_selection_populate): Remove
3477         code that tried to position the cursor after the common
3478         prefix when there was one, it wasn't working, and
3479         would be hard to fix. Just always put the cursor
3480         at the end when completing.
3481
3482 Thu Aug 14 17:58:23 2003  Owen Taylor  <otaylor@redhat.com>
3483
3484         * gtk/gtkfilesel.c (get_current_dir_utf8): If getting
3485         the current directory fails because of encoding
3486         conversion problems, walk up textually to parent
3487         directories until we can convert. (#113627)
3488
3489 Wed Aug 13 17:01:49 2003  Owen Taylor  <otaylor@redhat.com>
3490
3491         * gtk/gtkmenushell.[ch] (gtk_menu_shell_enter_notify):
3492         Remove usage of menu_shell->ignore leave which was
3493         to deal with stray events we no longer get because
3494         we do grabbing differently. Comment it as unused in
3495         the header. (#115837, Keith Bissett)
3496
3497 Wed Aug 13 16:32:43 2003  Owen Taylor  <otaylor@redhat.com>
3498
3499         * gtk/gtkmenu.c (gtk_menu_position, gtk_menu_window_size_request): 
3500         Fix some places that weren't properly Xinerama-ified.
3501
3502         * gtk/gtkmenu.c: Fix problem with windows that scroll
3503         at the top of the screen.
3504
3505 Wed Aug 13 11:34:53 2003  Owen Taylor  <otaylor@redhat.com>
3506
3507         * gtk/gtkcombo.c (gtk_combo_init): connect_after() to 
3508         key-press-event on the entry, so input methods get access to 
3509         key presses before GtkCombo customization.
3510         (#115451, Botond Botyanszki)
3511
3512 2003-08-13  Anders Carlsson  <andersca@gnome.org>
3513
3514         * tests/testtoolbar.c: (set_important_func), (important_toggled),
3515         (create_items_list):
3516         Add an important column.
3517         
3518 Tue Aug 12 15:00:15 2003  Owen Taylor  <otaylor@redhat.com>
3519
3520         * gtk/gtkwindow.c (gtk_window_real_set_focus): Protect
3521         against reentrancy from ::focus-out handlers. 
3522         (#118129, Felipe Heidrich)
3523
3524 Tue Aug 12 14:27:42 2003  Owen Taylor  <otaylor@redhat.com>
3525
3526         * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Remove
3527         GDK_LOCK_MASK before calling
3528         gdk_keymap_translate_keyboard_state so bindings 
3529         and accelerators are independent of the Caps-lock
3530         key. (#115384, reported by Toni Willberg)
3531
3532 Mon Aug 11 12:07:14 2003  Owen Taylor  <otaylor@redhat.com>
3533
3534         * gdk/x11/gdkevents-x11.c (get_real_window): Add missing
3535         break statements (#119494, Soeren Sandmann)
3536
3537 Mon Aug 11 11:10:07 2003  Owen Taylor  <otaylor@redhat.com>
3538
3539         * gtk/gtkwidget.h: Mark parent public as well; it's
3540         extensively accessed in existing code, so there is
3541         no advantage in making people use get_parent().
3542         (Tweak to #119463 fix)
3543
3544 2003-08-11  Matthias Clasen  <maclas@gmx.de>
3545
3546         Add support for EWMH "Above" and "Below" window states.  (105100,
3547         Manuel Clos)
3548         
3549         * tests/testgtk.c: Add "Above" and "Below" to the the "Window
3550         State" demo.
3551
3552         * gtk/gtkwindow.h: Add gtk_window_set_keep_above and
3553         gtk_window_set_keep_below.
3554
3555         * gtk/gtk.def: Add gtk_window_set_keep_above and
3556         gtk_window_set_keep_below.
3557
3558         * gtk/gtkwindow.c (gtk_window_set_keep_below):
3559         (gtk_window_set_keep_above): New functions, call the corresponding
3560         gdk functions.
3561
3562         * gdk/x11/gdkwindow-x11.c (gdk_window_set_keep_below): New
3563         function, sets _NET_WM_STATE_BELOW.
3564         (gdk_window_set_keep_above): New function, sets
3565         _NET_WM_STATE_ABOVE.
3566
3567         * gdk/gdkwindow.h: Add gdk_window_set_keep_above and
3568         gdk_window_set_keep_below.
3569
3570         * gdk/gdkevents.h (GdkWindowState): Add GDK_WINDOW_STATE_ABOVE and
3571         GDK_WINDOW_STATE_BELOW.
3572
3573         * gdk/gdk.def: Add gdk_window_set_keep_above and
3574         gdk_window_set_keep_below.
3575
3576         * acinclude.m4: Copy newer versions of JH_CHECK_XML_CATALOG and
3577         JH_PATH_XML_CATALOG from gtk-doc to enable configuring without
3578         xmlcatalog in PATH.  (#119115)
3579
3580 2003-08-10  Matthias Clasen  <maclas@gmx.de>
3581
3582         * gtk/gtkwidget.h (struct _GtkWidget): Mark some members as
3583         public.  (#119463)
3584
3585 2003-08-09  Noah Levitt  <nlevitt@columbia.edu>
3586
3587         * gdk/gdkevents.h:
3588         * docs/reference/gdk/tmpl/windows.sgml: Elaborate a bit more in the
3589         docs on GdkFilterFunc and GdkFilterReturn.
3590
3591 2003-08-09  Matthias Clasen  <maclas@gmx.de>
3592
3593         * gtk/gtkcalendar.c:  Add and hook in gtk_calendar_scroll,
3594         to let the mouse wheels select the month. Scrolling down
3595         moves forward in time. (#53134, Abigail Brady) 
3596
3597         * gtk/gtkcalendar.c: Complete the RTL flipping support for
3598         GtkCalendar, make it possible to flip the headings using the
3599         "magic translated string" technique.  Translators, note the
3600         comment in gtk_calendar_init() explaining this.  (#102416)
3601
3602         * gtk/gtkcalendar.c: Get the information about the first day of
3603         the week from the locale using another instance of the "magic
3604         translated string" technique.  Ignore the display option
3605         GTK_CALENDAR_WEEK_START_MONDAY with a warning.  (#87977)
3606
3607         * gtk/gtkcalendar.c: Add DND support to GtkCalendar. The selected
3608         date is dragged as text, formatted via strftime %x. Text drops are
3609         accepted if g_date_set_parse() can make sense of the text. A
3610         dedicated data format for date DND has not been introduced yet,
3611         since there didn't seem to be sufficient consensus on such a
3612         format on xdg-list.  (#117297)
3613         
3614 2003-08-08  Matthias Clasen  <maclas@gmx.de>
3615
3616         * gdk/gdkregion-generic.c (gdk_region_spans_intersect_foreach):
3617         Fix a segfault.  (#115284, Jan Kratochvil)
3618
3619 2003-08-08  Tor Lillqvist  <tml@iki.fi>
3620
3621         * gdk/win32/gdkevents-win32.c (print_event): Print also the root
3622         coordinates for events that have such. Print coordinates for enter
3623         and leave events.
3624
3625         (gdk_event_translate): Don't use event uninitialixed in the
3626         return_exposes branch of the WM_PAINT handler.
3627
3628         * gdk/win32/gdkwindow-win32.c (gdk_window_new,
3629         _gdk_windowing_window_get_pointer, _gdk_windowing_window_at_pointer): 
3630         Must offset top-level window coordinates here, too.
3631
3632 2003-08-08  Matthias Clasen  <maclas@gmx.de>
3633
3634         * demos/gtk-demo/appwindow.c (do_appwindow): Hide the resize grip
3635         when maximized or fullscreen.
3636
3637 2003-08-07  Tor Lillqvist  <tml@iki.fi>
3638
3639         * gdk/win32/gdkinput-win32.h
3640         * gdk/win32/gdkinput-win32.c (_gdk_input_configure_event,
3641         _gdk_input_enter_event): Drop the GdkEvent* parameter, it wasn't
3642         used.
3643
3644         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Adapt caller
3645         accordingly, in fact an uninitialised variable was dereferenced.
3646         
3647
3648         [Win32] Add support for multiple monitors. 
3649         
3650         * gdk/win32/gdkprivate-win32.h
3651         * gdk/win32/gdkglobals-win32.c: New global variables for
3652         multiple-monitor info: _gdk_num_monitors, _gdk_monitors, and
3653         _gdk_offset_x and _gdk_offset_y.
3654         
3655         * gdk/win32/gdkdisplay-win32.c (count_monitor, enum_monitor): New
3656         functions, enumeration functions passed to EnumDisplayMonitors().
3657
3658         (gdk_display_open): If the EnumDisplayMonitors() and
3659         GetMonitorInfo() API is present (on Win98, Win2000 and newer), use
3660         if to find out monitor info.
3661
3662         Calculate the offset between Win32 coordinates (relative to the
3663         primary monitor's origin (and thus negative on monitors to the
3664         left of or above it), and GDK's (visible coordinates should be
3665         non-negative).
3666         
3667         * gdk/win32/gdkscreen-win32 (gdk_screen_get_n_monitors,
3668         gdk_screen_get_monitor_geometry): Use information collected above.
3669
3670         (gdk_window_move, gdk_window_move_resize_window_get_geometry):
3671         Subtract _gdk_offset_{x,y} from GDK root window coordinates.
3672
3673         (gdk_window_get_geometry, gdk_window_get_origin,
3674         gdk_window_get_frame_extents): For top-level windows, add
3675         _gdk_offset_{x,y} to GDK root window coordinates
3676
3677         Still need to handle multiple monitors in
3678         gdk_window_fullscreen(). Probably should make the window
3679         fullscreen on the monitor where the cursor is?
3680
3681         * gdk/win32/gdkevents-win32.c: Add _gdk_offset_{x,y} to all GDK
3682         root window coordinates in GdkEvents.
3683
3684         
3685         [Win32] Fix geometry hint handling. Add support for resize
3686         increment and base size, and aspect ratio geometry hints. The
3687         "gridded geometry" test in testgtk now works beautifully.
3688
3689         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
3690         Turns out this function shouldn't actually ever modify the
3691         window's size, just store the hints. (Old code kept for a while
3692         inside #if 0.)
3693
3694         (gdk_window_set_hints): Remove presumably broken code that handles
3695         the position hints, this function is obsolete anyway.
3696
3697         * gdk/win32/gdkevents-win32.c: Drop the current_{x,y}_root
3698         variables, not used.
3699
3700         (adjust_drag): New function, used to implement resize increment
3701         hints.
3702
3703         (gdk_event_translate): Handle WM_SIZING, implement resize
3704         increment and base size, and aspect ratio geometry hints here. The
3705         WM_GETMINMAXINFO handler takes care of the minimum and maximum
3706         size hints as before. Fix the WM_GETMINMAXINFO handler to take
3707         into account window decorations. No need to modify the
3708         ptMaxPosition and ptMaxSize fields in the MINMAXINFO struct,
3709         the defaults are fine.
3710         
3711         * gdk/win32/gdkprivate-win32.h 
3712         * gdk/win32/gdkwindow-win32.c (_gdk_win32_adjust_client_rect,
3713         _gdk_win32_get_adjusted_client_rect): New helper functions.
3714
3715 2003-08-07  Matthias Clasen  <maclas@gmx.de>
3716
3717         * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed): Reset the
3718         toplevel->have_* flags before iterating over the _NET_WM_STATE 
3719         atoms.  (#119217) 
3720
3721 Thu Aug  7 16:49:29 2003  Owen Taylor  <otaylor@redhat.com>
3722  
3723         * gtk/gtkwidget.c (gtk_widget_set_style_internal): 
3724         Fix a bug where on theme change, resize/redraw wasn't
3725         properly getting queued on toplevel windows. (#116346,
3726         Rajkumar Siva)
3727  
3728         * gtk/gtkwidget.c (gtk_widget_invalidate_widget_windows): 
3729         Fix bug where wrong coordinates were used for toplevel
3730         window.
3731  
3732 Thu Aug  7 16:40:21 2003  Owen Taylor  <otaylor@redhat.com>
3733
3734         * gtk/gtknotebook.c (gtk_notebook_remove): Remove leftover
3735         page_num variable (Archit Baweja)
3736
3737 2003-08-07  Matthias Clasen  <maclas@gmx.de>
3738
3739         * gtk/gtkspinbutton.c (gtk_spin_button_default_input): Use g_strtod() to
3740         cope with C libraries with crippled locale support.  (#115293)
3741
3742 2003-08-07  Hans Breuer  <hans@breuer.org>
3743
3744         * gdk/win32/gdkevents-win32.c : finally use TrackMouseEvent
3745         (only if the new window not known to Gdk) to get proper
3746         leave notification, and get rid of the wrong placed 
3747         tooltips, bug #102283
3748  
3749         (gdk_event_translate) : small code reordering to not get
3750         GDK_MOTION_NOTIFY for still mouse and get back tooltips on 
3751         menus, bug #117367
3752
3753 2003-08-07  Tor Lillqvist  <tml@iki.fi>
3754
3755         * gdk/gdk.def
3756         * gdk/win32/gdkfont-win32.c (gdk_fontset_load_for_display): Add
3757         missing function, trivially implement.
3758
3759 2003-08-07  Matthias Clasen  <maclas@gmx.de>
3760
3761         * gtk/gtkctree.c (draw_row): Don't cut descenders when 
3762         rendering.  (#118646, Charles Kerr) 
3763
3764 2003-08-06  Hans Breuer  <hans@breuer.org>
3765
3766         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new) :
3767         initialize bits to 0 (probably default on NT)
3768
3769         * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
3770         now it works as intended ;-)
3771
3772 2003-08-04  Hans Breuer  <hans@breuer.org>
3773
3774         * gdk/win32/gdkwindow-win32.c(gdk_window_set_modal_hint) :
3775         set HWND_NOTOPMOST for modal==FALSE, fixes bug #118435
3776
3777         * gdk/win32/gdkwindow-win32.c : implement gdk_window_[un]fullscreen
3778         (gdk_window_{move,resize,move_rezize})) : noop if FULLSCREEN
3779
3780         * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
3781         against all expectations it is basically ony a call with WM_SETICON
3782         needed (the visual effect is there, though colors or mask are
3783         still somewhat wrong).
3784         * gdk/win32/gdkwindow-win32.h : place to store the HICON
3785
3786         * gdk/win32/gdkdrawabke.win32.c : readded the conditional end
3787         pixel drawing as it was fixed at 1999-08-23
3788
3789         gtk/gtk.def : updated
3790
3791 Tue Aug  5 10:07:08 2003  Owen Taylor  <otaylor@redhat.com>
3792
3793         * gtk/gtkmessagedialog.c (gtk_message_dialog_get_property): 
3794         Add a missing break. (#119156, Callum McKenzie)
3795
3796 Tue Aug  5 00:24:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3797
3798         * gtk/gtkmenu.c (gtk_menu_position): New positioning
3799         algorithm.(#116649)
3800
3801 Fri Aug  1 15:26:46 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3802
3803         * gtk/gtktoolbar.c, gtk/toolitem.c: add new "is_important"
3804         property
3805         
3806         * gtk/gtkradiotoolbutton.c
3807         (gtk_radio_tool_button_new_from_widget): Don't take a stock id
3808
3809         * gtk/gtkradiotoolbutton.c
3810         (gtk_radio_tool_button_new_with_stock_from_widget): make this
3811         function take a stock_id.
3812
3813         * gtk/toolbar: documentation
3814
3815 Mon Aug  4 14:53:46 2003  Owen Taylor  <otaylor@redhat.com>
3816
3817         * gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init): 
3818         Fix problem where use_xshm was getting set wrong if
3819         MIT_SHM wasn't found. (George Lebel)
3820
3821 2003-08-04  Tor Lillqvist  <tml@iki.fi
3822
3823         * gdk/win32/gdkevents-win32.c (apply_filters): Fix braino:
3824         actually use the passed-in filter list. The function also needs a
3825         GdkWindow parameter, as filter functions expect
3826         GdkEvent::any.window to be valid. (#119034, Hans Breuer)
3827
3828 2003-08-03  Matthias Clasen  <maclas@gmx.de>
3829
3830         * gdk/x11/gdkscreen-x11.c (gdk_screen_get_n_monitors): 
3831         (gdk_screen_get_monitor_geometry): Improve wording of the docs, avoid
3832         the term "virtual screen".  (#119030, Tor Lillquist)
3833
3834 2003-08-02  Matthias Clasen  <maclas@gmx.de>
3835
3836         * tests/testtext.c (test_init): 
3837         * tests/testgtk.c (test_init): 
3838         * tests/testdnd.c (test_init): 
3839         * demos/pixbuf-init.c (pixbuf_init): 
3840         * demos/gtk-demo/main.c (main): Use g_setenv().
3841
3842         * gdk/x11/gdkdisplay-x11.c (_gdk_windowing_set_default_display): Use
3843         g_unsetenv(). 
3844
3845 Sat Aug  2 12:53:16 2003  Owen Taylor  <otaylor@redhat.com>
3846
3847         * configure.in: Requires glib-2.3.0, pango-1.2.0.
3848
3849         * configure.in: Require Xft version 2,
3850         remove code for handling older versions of pango and Xft.
3851         Many miscellaneous improvements to X checks
3852
3853         * acinclude.m4: Add GTK_ADD_LIB() macro for adding 
3854         a library to a variable, avoiding dups.
3855
3856         * gdk/x11/gdkfont-x11.c (gdk_font_from_description_for_display): 
3857         Always load "fixed"
3858
3859         * gdk/x11/gdk*-x11.[ch]: Remove support for Xft1 and
3860         for pangox.
3861
3862 2003-08-02  Matthias Clasen  <maclas@gmx.de>
3863
3864         * gtk/gtkcolorsel.c (color_sample_drop_handle) 
3865         (palette_drop_handle): 
3866         * gtk/gtkcolorbutton.c (gtk_color_button_drag_data_received):  Accept
3867         drops with the wrong format, since the KDE color chooser incorrectly
3868         drops application/x-color with format 8.  (#118810)
3869
3870         * gtk/gtkcolorsel.c (color_sample_drop_handle) (palette_drop_handle): 
3871         * gtk/gtkcolorbutton.c (gtk_color_button_drag_data_received):  
3872         Accept drops with the wrong format, since the KDE color chooser 
3873         incorrectly drops application/x-color with format 8.  (#118810)
3874
3875 2003-08-02  Tor Lillqvist  <tml@iki.fi>
3876
3877         Fix gdk/win32 window geometry handling again. The window position
3878         in a GDK_CONFIGURE event should be that of the client area, not of
3879         the window decorations. (I was confused by the term "window
3880         border" in X11. It does *not* mean the window manager
3881         decorations. There are no X11-style window borders in Win32.)
3882         Also, this time do take the geometry hints into account
3883         appropriately when moving windows. Now testgtk's gravity test's
3884         move buttons work OK. There are stil problems with taking gravity
3885         into account when showing a hidden window.
3886
3887         * gdk/win32/gdkwindow-win32.h: Keep a whole GdkGeometry as hints
3888         instead of separate fields.
3889         
3890         * gdk/win32/gdkevents-win32.c (handle_configure_event): Don't
3891         adjust for decorations.
3892
3893         * gdk/win32/gdkwindow-win32.c (get_outer_rect,
3894         adjust_for_gravity_hints): New functions.
3895         (gdk_window_move, gdk_window_resize, gdk_window_move_resize): Use
3896         above functions, take geometry hints into account.
3897         (gdk_window_set_geometry_hints): Size hints specicy client area,
3898         not including decorations.
3899
3900 Fri Aug  1 17:10:22 2003  Owen Taylor  <otaylor@redhat.com>
3901
3902         * gtk/gtkfilesel.c (cmpl_completion_fullname): Always
3903         return an absolute path (#115590), fix a problem where
3904         you could crash the file selector with a looong name
3905         by returning a newly allocated buffer.
3906
3907 Fri Aug  1 16:44:51 2003  Owen Taylor  <otaylor@redhat.com>
3908
3909         * gtk/gtkfilesel.c (update_cmpl): Fix obvious reallocation
3910         bug in rarely or never hit code path (#118071,
3911         Tor Lillqvist)
3912
3913 Fri Aug  1 16:30:13 2003  Owen Taylor  <otaylor@redhat.com>
3914
3915         * gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render): 
3916         If the check for missing depths, try actually creating pixmaps
3917         of the depths to deal with Xinerama not reporting
3918         all the depths it should. (#115822)
3919
3920 Fri Aug  1 15:33:59 2003  Owen Taylor  <otaylor@redhat.com>
3921
3922         * gtk/gtksocket.c: Patch from Denis Mikhalkin to
3923         forward KeyRelease events as well as KeyPress events.
3924         (#115597)
3925
3926 Fri Aug  1 15:06:25 2003  Owen Taylor  <otaylor@redhat.com>
3927  
3928         * gdk/gdk.c (gdk_parse_args): g_set_prgname("<unknown>")
3929         if argc is 0 as well, instead of leaving it unset.
3930         (#116023, Michael Meeks)
3931  
3932 Thu Jul 31 23:09:02 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3933
3934         * gtk/gtktoolbar.c (gtk_toolbar_class_init): make show_arrow
3935         default to TRUE; ignore the property when api_mode != NEW_API
3936
3937 2003-07-31  Matthias Clasen  <maclas@gmx.de>
3938
3939         * gtk/gtkwindow.c (gtk_window_set_default_icon): Rename parameter pixbuf
3940         to icon, to pacify gtk-doc.
3941
3942         * gtk/gtkwidget.c (gtk_widget_class_init): Fix formatting of drag-motion 
3943         example. 
3944
3945 Thu Jul 31 15:33:33 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3946
3947         * gtk/gtk*tool*.h: add padding to subclasses of GtkToolItem
3948
3949 Thu Jul 31 15:29:28 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3950
3951         * gtk/gtktoolitem.c (struct _GtkToolItemPrivate): remove unused
3952         overflow_item field.
3953
3954 Wed Jul 30 21:11:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3955
3956         * gtk/gtktoolitem.h: make _gtk_tool_item_toolbar_reconfigured()
3957         an internal function
3958
3959         * gtk/gtktoolitem.h: remove unused declaration of
3960         _gtk_tool_item_get_drag_window().
3961
3962 Wed Jul 30 17:03:58 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3963
3964         * gtk/gtktoolbutton.[ch]:
3965         (gtk_tool_button_new): swap icon_widget and label arguments to
3966         match BonoboUIToolbarButton.
3967
3968         * gtk/gtktoolbar.h: un-deprecate gtk_toolbar_{set|unset}_style().
3969
3970 2003-07-30  Matthias Clasen  <maclas@gmx.de>
3971
3972         * gtk/gtkwidget.c (gtk_widget_class_init): Some updates to the DND
3973         signal docs. 
3974
3975 2003-07-29  Tor Lillqvist  <tml@iki.fi>
3976
3977         Fix for #108007, #112402, #117042: There was confusion in
3978         gdk/win32 at various places whether a window position refers to
3979         the decoration position or the client area position. Also whether
3980         window size includes decorations or not.
3981         
3982         The correct interpretation apparently is that in GDK (like in
3983         X11), a top-level window position means the decoration's position,
3984         but size means the window's inner size (client area size). In the
3985         Win32 API, the window size usually includes the decorations,
3986         though.
3987         
3988         * gdk/win32/gdkevents-win32.c (decode_key_lparam): Move inside
3989         #ifdef G_ENABLE_DEBUG.
3990         (handle_configure_event): New function, generates GDK_CONFIGURE
3991         events from WM_SIZE and WM_MOVE messages. Even if no event is
3992         generated because of the event mask, still set the private
3993         position and size fields. Calculate position and size correctly.
3994         (gdk_event_translate): Call handle_configure_event().
3995
3996         * gdk/win32/gdkgeometry-win32.c: Cosmetics.
3997
3998         * gdk/win32/gdkwindow-win32.c: Use GDI_CALL() and API_CALL()
3999         macros. Cosmetic debugging output changes.
4000         (SafeAdjustWindowRectEx): Remove. If an application wants to
4001         locate a window outside of the screen, it's not GDK's business to
4002         prevent it. And anyway, with multiple monitors, negative
4003         coordinates are perfectly normal.
4004         (gdk_window_new): Adjust the window size for decorations after
4005         _gdk_window_init_position() has done its job. (But the big window
4006         code currently is presumably broken on Win32 anyway.)
4007         (gdk_window_move): The position passed in is supposed to be that
4008         of the window border, so don't need to adjust for decorations.
4009         (gdk_window_resize, gdk_window_move_resize): Simplify somewhat.
4010
4011 Tue Jul 29 13:55:44 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4012
4013         * gtk/gtktoolbar.c (gtk_toolbar_set_style,
4014         gtk_toolbar_prepend_element, gtk_toolbar_append_element,
4015         gtk_toolbar_insert_space, gtk_toolbar_prepend_space,
4016         gtk_toolbar_append_space, gtk_toolbar_insert_item,
4017         gtk_toolbar_prepend_item, gtk_toolbar_append_item,
4018         gtk_toolbar_set_tooltips, gtk_toolbar_set_orientation,
4019         gtk_toolbar_new, gtk_toolbar_prepend_item):
4020
4021         Move documentation inline from template files.
4022
4023         * gtk/gtktoolbar.c (gtk_toolbar_insert_element,
4024         gtk_toolbar_insert_widget, gtk_toolbar_prepend_widget,
4025         gtk_toolbar_append_widget, gtk_toolbar_remove_space,
4026         gtk_toolbar_insert_stock, gtk_toolbar_unset_icon_size,
4027         gtk_toolbar_get_icon_size, gtk_toolbar_set_icon_size,
4028         gtk_toolbar_get_tooltips, gtk_toolbar_unset_style,
4029         gtk_toolbar_get_style, gtk_toolbar_get_orientation)
4030
4031         Copy documentation from stable that was added after the EggToolbar
4032         branched.
4033
4034         * gtk/gtktoolbar.h: deprecate gtk_toolbar_unset_icon_size()
4035
4036 Mon Jul 28 18:21:34 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4037
4038         * gtk+/docs/: Commit autogenerated changes, so patches will make
4039         sense.
4040
4041 2003-07-27  Tor Lillqvist  <tml@iki.fi>
4042
4043         * gdk/win32/gdkevents-win32.c (build_key_event_state): On Win9x,
4044         the keyboard state returned by GetKeyboardState() doesn't
4045         distinguish between the left and right Control and Alt keys. Thus
4046         we cannot detect AltGr (which is supposed to be left Control +
4047         right Alt) the same way as on NT-based systems, but have to accept
4048         either Control + either Alt as AltGr.
4049
4050 2003-07-27  Matthias Clasen  <maclas@gmx.de>
4051
4052         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
4053         Fix function name in warning message.  (#118156, Tim-Philipp
4054         Mller)
4055
4056         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property):
4057         is-expander and is-expanded are boolean properties, not ints.
4058         (#118359, Josh Parsons)
4059
4060 Sat Jul 26 15:21:27 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4061
4062         * gtk/gtkimagemenuitem.c
4063         (gtk_image_menu_item_toggle_size_request): don't request
4064         toggle_space when the image width is 0.
4065
4066 2003-07-25  Tor Lillqvist  <tml@iki.fi>
4067
4068         * gdk/win32/gdkprivate-win32.h
4069         * gdk/win32/gdkglobals-win32.c: New flags _gdk_input_locale_is_ime
4070         and _gdk_keyboard_has_altgr.
4071         
4072         * gdk/win32/gdkevents-win32.c: Lots of changes. Most important
4073         ones detailled here.
4074
4075         Code that has been ifdeffed out for a long time removed. Remove
4076         some really old doc comments that were left behind for some public
4077         functions, the official ones are in the X11 backend anyway. Change
4078         GDK_WINDOW_OBJECT() calls to GdkWindowObject casts. Reformat
4079         multi-line boolean expressions to have the operators at ends of
4080         lines.
4081
4082         As mouse capture with SetCapture() indeed seems to work OK, no
4083         need to have the correspoinding macro USE_SETCAPTURE and ifdefs.
4084
4085         Ifdef out the gdk-ping-msg stuff. I don't remember why it was
4086         needed at some time, and things seem to work fine now without
4087         (knock on wood).
4088
4089         Ifdef out the search for some Latin locale keyboard layout being
4090         loaded. Not used currently, but might be needed after all, if we
4091         decide that we want to be able to generate ASCII control character
4092         events with a non-Latin keyboard.
4093
4094         (assign_object): New helper function, handles the g_object_ref()
4095         and unref() calls when assigning GObject pointers.
4096                 
4097         (generate_crossing_events): Also generate the GDK_NOTIFY_INTERIOR
4098         enter event when the pointer has moved to an ancestor window. Was
4099         left out by mistake.
4100
4101         (gdk_window_is_ancestor): Renamed from gdk_window_is_child().
4102
4103         (gdk_pointer_grab, gdk_pointer_ungrab): Implement the confine_to
4104         functionality, using ClipCursor().
4105                 
4106         (find_window_for_mouse_event): Splice part of code into new
4107         function find_real_window_for_grabbed_mouse_event().
4108
4109         (fixup_event, append_event, apply_filters): New functions, code
4110         refactored out from elsewhere.
4111
4112         (synthesize_enter_or_leave_event, synthesize_leave_event,
4113         synthesize_enter_event,
4114         synthesize_leave_events,synthesize_enter_events): Also take a
4115         GdkCrossingMode parameter, in preparation to generating
4116         GDK_CROSSING_GRAB and GDK_CROSSING_UNGRAB events.
4117
4118         (fixup_event, append_event, fill_key_event_string): New functions,
4119         code refactoring.
4120
4121         (vk_from_char, build_keypress_event, build_keyrelease_event):
4122         Removed as part of dropping WM_CHAR handling.
4123
4124         (build_key_event_state,gdk_event_translate): Call
4125         GetKeyboardState(), once, for each keyboard message, instead of
4126         several calls to GetKeyState() here and there.
4127
4128         (gdk_event_translate): Fix bugs #104516, #104662, #115902. While
4129         at it, do some major refactoring, and some fixes for potential
4130         problems noticed while going through the code.
4131
4132         Don't handle WM_CHAR at all. Only handle WM_KEYDOWN and
4133         WM_KEYUP. Don't need the state variables related to whether to
4134         wait for WM_CHAR or not, and whether the current key is
4135         AltGr. Remove lots of complexity. Thus don't need the
4136         use_ime_composition flag.
4137
4138         Not handling WM_CHAR means dead key handling will have to be taken
4139         care of by GTK, but that seems to work fine, so no worry.
4140
4141         Another side-effect is that Alt+keypad digits don't work any
4142         longer, but it's better to learn to use GTK's ISO14755 support is
4143         anyway.
4144
4145         Be more careful in checking whether AltGr is involved. Only
4146         attempt to handle it if the keyboard actually has it. And
4147         explicitly check for *left* Control plus *right* Alt being
4148         pressed. Still, allow (left) Alt and/or (right) Control with AltGr
4149         chars.
4150
4151         Handle keys using similar code as in the X11 backend. As we have
4152         built a keymap in gdkkeys-win32.c anyway, use it by calling
4153         gdk_keymap_translate_keyboard_state() to look up the keysym from
4154         the virtual key code and keyboard state. Build the key event
4155         string in exactly the same way as the X11 backend.
4156
4157         If an IME is being used, don't generate GDK events for keys
4158         between receiving WM_IME_STARTCOMPOSITION and
4159         WM_IME_ENDCOMPOSITION, as those keys are for the IME.
4160         
4161         For WM_IME_COMPOSITION, handle all the Unicode chars returned from
4162         the IME, not just the first one.
4163
4164         gdk_event_translate() is still quite complex, could split the
4165         message handler cases out into separate functions.
4166
4167         On mouse events, when the mouse is grabbed, use
4168         find_real_window_for_grabbed_mouse_event() in order to be able to
4169         generate correct crossing events.
4170         
4171         No longer take a pre-allocated GdkEvent as parameter. Instead,
4172         allocate events as needed and append them to the queue. (This is
4173         different from how gdk_event_translate() in the X11 backend
4174         works.) This change made the code much clearer, especially in the
4175         cases where we have to generate several GDK events for one Windows
4176         message.  Return FALSE if DefWindowProc() should be called, TRUE
4177         if not. If DefWindowProc() should not be called, also return the
4178         value to be returned from the window procedure.
4179
4180         (Previously, the interaction with gdk_event_translate()'s caller
4181         was much more complex, when we had to indicate whether the
4182         already-queued event should be left in the queue or removed, and
4183         in addition also had to indicate whether to call DefWindowProc()
4184         or not, and what value to return from the window procedure if
4185         not.)
4186
4187         Don't use a separate "private" variable required to be pointing to
4188         the GdkWindowObject of the "window" variable at all times. Just
4189         use casts, even if looks a bit uglier.
4190
4191         Notice destroyed windows as early as possible, and break out of
4192         the messsage switch.
4193
4194         Use _gdk_pointer_root as current_window when the pointer is
4195         outside GDK's top-level windows.
4196         
4197         On WM_INPUTLANGCHANGE, set _gdk_input_locale_is_ime as
4198         appropriate, based on ImmIsIME().
4199         
4200         (gdk_event_translate, gdk_event_send_client_message_for_display,
4201         gdk_screen_broadcast_client_message): Implement client messages.
4202         Use a registered Windows message to pass GDK client messages. Note
4203         that the amount of user data is restricted to four bytes, as it is
4204         carried in the LPARAM. (The WPARAM is used for the message type
4205         "atom".)
4206         
4207         (real_window_procedure): Adapt for new gdk_event_translate()
4208         interface.
4209
4210         * gdk/win32/gdkmain-win32.c (_gdk_windowing_init): Set
4211         _gdk_input_locale_is_ime initially.
4212
4213         * gdk/win32/gdkwindow-win32.c: Use g_object_ref()/unref() instead
4214         of g_colormap_ref()/unref().
4215
4216         (gdk_window_new): Made code a bit more like the X11 one, pretend
4217         to handle screens (although we just have one for now).
4218
4219         * gdk/x11/gdkevents-x11.c
4220         (gdk_event_send_client_message_for_display,
4221         gdk_screen_broadcast_client_message): Document the user data
4222         limitation on Win32.
4223
4224         * gdk/win32/gdkevents-win32.c (print_event): More complete enter
4225         and leave notify detail output.
4226
4227         * gdk/win32/gdkkeys-win32.c (update_keymap): Make dead keys
4228         visible to GDK and GTK. Store the corresponding GDK_dead_* keysym
4229         for those, so that the GtkIMContextCimple compose tables will
4230         work. Deduce if the keyboard layout has the AltGr key, and set the
4231         above flag accordingly.
4232
4233 2003-07-26  Matthias Clasen  <maclas@gmx.de>
4234
4235         * gtk/gtkwidget.c: Document DND signals.
4236
4237 2003-07-24  Matthias Clasen  <maclas@gmx.de>
4238
4239         * gtk/gtktextview.c (popup_targets_received): Make the "Input Methods"
4240         insensitive when editing isn't possible.  (#118150)
4241
4242 2003-07-23  Matthias Clasen  <maclas@gmx.de>
4243
4244         * gtk/gtkcolorsel.c (gtk_color_selection_init): Make the hue 
4245         spinbutton wrap.  (#118097, John Darrington)
4246
4247         * docs/faq/gtk-faq.sgml: Mention Xnest as a way to debug GTK+ apps. 
4248
4249 2003-07-20  Hans Breuer  <hans@breuer.org>
4250
4251         * makefile.msc : new file to build it all
4252         * Makefile.am : ... added to EXTRA_DIST
4253
4254         * gdk/makefile.msc gtk/stock-icons/makefile.msc 
4255           gtk/makefile.msc.in tests/makefile.msc : updated
4256
4257         * gdk/gdk.def gtk/gtk.def : export a bunch of new 
4258         functions
4259
4260         * gtk/gtkbbox.c : use g_return_val_if_fail() if
4261         there is a value to return
4262
4263         * gtk/gtkfontsel.c gtk/gtkiconfactory.c :
4264         static correctness
4265
4266         * gtk/gtkicontheme.c : ported to use GTimeVal instead of
4267         struct timeval and GTK_DATA_PREFIX instead of GTK_DATADIR
4268
4269         * gtk/gtkicontheme.c : use HAVE_LC_MESSAGES
4270
4271         * gtk/gtkimmulticontext.c : use gtkprivate.h
4272
4273         * gtk/stock-icons/stock_color_picker_25.png
4274           gtk/stock-icons/stock_jump_to_rtl_16.png
4275           gtk/stock-icons/stock_jump_to_rtl_24.png
4276           gtk/stock-icons/stock_redo_rtl_16.png
4277           gtk/stock-icons/stock_redo_rtl_24.png
4278           gtk/stock-icons/stock_undelete_rtl_16.png
4279           gtk/stock-icons/stock_undelete_rtl_24.png
4280           gtk/stock-icons/stock_undo_rtl_16.png :
4281           gtk/stock-icons/stock_undo_rtl_24.png :
4282         readded as binary
4283
4284 Sat Jul 19 22:39:24 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4285
4286         * gtk/gtktoolitem.c (gtk_tool_item_size_request): remove
4287         leftover request of {xy}thickness
4288
4289 Sat Jul 19 16:26:02 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4290
4291         * gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): don't
4292         attempt to add a NULL icon to the box.
4293
4294 Sat Jul 19 12:13:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4295
4296         * gtk/gtknotebook.c (gtk_notebook_focus_in|out): only redraw tabs
4297         on focus in/out.
4298
4299 2003-07-19  Matthias Clasen  <maclas@gmx.de>
4300
4301         * gtk/gtkstock.h (GTK_STOCK_DIALOG_AUTHENTICATION): New stock id. 
4302         * gtk/gtkiconfactory.c (get_default_icons): Add
4303         stock_dialog_authentication_48.  (#65765) 
4304         * gtk/stock-icons/Makefile.am (VARIABLES2, IMAGES): Here too.
4305         * gtk/stock-icons/stock_dialog_authentication_48.png: New image.
4306
4307         * gtk/gtkbbox.h: 
4308         * gtk/gtkbbox.c (gtk_button_box_get_child_secondary): New
4309         function. (#64562) 
4310
4311 Sat Jul 19 00:18:40 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4312
4313         * gtk/gtkwindow.c (gtk_window_set_default_icon): Fix C99
4314         declaration
4315
4316         * gtk/gtkwidget.c (gtk_widget_queue_shallow_draw): new function
4317         (gtk_widget_real_focus_{in|out}_event): queue shallow draws
4318         instead of full draws.
4319
4320 2003-07-18  Matthias Clasen  <maclas@gmx.de>
4321
4322         * gtk/gtkwindow.c: Add properties decorated and gravity.  (#80234) 
4323
4324         * gtk/gtktextview.c (gtk_text_view_class_init): Add a new keybinding
4325         signal, move_viewport. 
4326         (gtk_text_view_move_viewport): New function which implements the
4327         move_viewport functionality. 
4328         (gtk_text_view_move_cursor_internal): If the cursor is not visible, move
4329         the viewport. (#78669) 
4330
4331         * gtk/gtkenums.h (GtkScrollStep): New enumeration, used for
4332         move_viewport argument. 
4333
4334         * gtk/gtkstatusbar.c (gtk_statusbar_class_init): Add a has_resize_grip
4335         property.  (#111779) 
4336
4337         * gtk/gtkwindow.h: 
4338         * gtk/gtkwindow.c (gtk_window_set_default_icon): New method.  (#95816)
4339
4340         * gtk/gtkmessagedialog.h:
4341         * gtk/gtkmessagedialog.c (gtk_message_dialog_add_buttons): New method.  
4342         (#65501, Sebastian Rittau)
4343
4344 Fri Jul 18 20:06:57 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4345
4346         * gtk/gtktextview.c (changed_handler): use
4347         gtk_widget_queue_resize_noredraw().
4348
4349 2003-07-16  Jody Goldberg <jody@gnome.org>
4350
4351         * gdk/x11/gdkwindow-x11.c (gdk_window_focus) : fix cut-n-paste-o
4352
4353 Fri Jul 18 19:55:50 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4354
4355         * gtk/gtkwidget.c (gtk_widget_queue_resize_no_redraw): Add this
4356         API. 
4357
4358 Fri Jul 18 18:43:01 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4359
4360         By popular request give toolbuttons a border.
4361         
4362         * gtk/gtktoolitem.c
4363         (gtk_tool_item_size_allocate):
4364         (gtk_tool_item_size_request): don't request and allocate a border
4365         around the child
4366
4367         * gtk/gtktoolbutton.c 
4368         (gtk_tool_button_size_allocate):
4369         (gtk_tool_button_size_request): remove these functions
4370
4371         * gtk/gtktoolbar.c 
4372         (gtk_toolbar_size_request):
4373         (gtk_toolbar_size_allocate): request and allocate a border if we
4374         have a shadow.
4375
4376 Thu Jul 17 19:24:51 2003  Kristian Rietveld  <kris@gtk.org>
4377
4378         Merged from stable.
4379
4380         Fixes issues pointed out by Morten Welinder in #115140.
4381
4382         * gtk/gtktreeview.c (gtk_tree_view_size_request): fix comment,
4383         (do_validate_rows): update validated_area with a logic OR instead
4384         of a bitwise OR,
4385         (validate_rows_handler): make the if statement match the one in
4386         validate_rows(), so we don't leak the timeout.
4387
4388 Thu Jul 17 19:12:02 2003  Kristian Rietveld  <kris@gtk.org>
4389
4390         Merged from stable.
4391
4392         * gtk/gtktreeview.c (gtk_tree_view_remove_widget): the treeview
4393         should only grab focus back if the "cell_editable" widget still
4394         has focus. (Fixes #110104, testcase provided by Marco Pesenti
4395         Gritti).
4396
4397 Thu Jul 17 19:06:34 2003  Kristian Rietveld  <kris@gtk.org>
4398
4399         Merged from stable.
4400
4401         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
4402         Don't set attr.event_mask twice, those things were meant to be
4403         ORred. (#115139, pointed out by Morten Welinder).
4404
4405 Thu Jul 17 16:11:21 2003  Kristian Rietveld  <kris@gtk.org>
4406
4407         Merged from stable.
4408
4409         * gtk/gtktreeview.c (gtk_tree_view_rows_reordered): stop editing
4410         if needed. (Fixes #115869, reported by Michael Natterer).
4411
4412 2003-07-15  Matthias Clasen  <maclas@gmx.de>
4413
4414         * gdk/x11/gdkcursor-x11.c (gdk_display_get_maximal_cursor_size):
4415         Fight against gtk-doc stupidity.
4416
4417 2003-07-13  Matthias Clasen  <maclas@gmx.de>
4418
4419         * gtk/gtkdnd.c (gtk_drag_begin): Rename parameter target_list back to 
4420         targets, to pacify gtk-doc.
4421
4422 Sun Jul 13 15:57:57 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4423
4424         * gtk/gtktoolbutton.c (gtk_tool_button_finalize): Fix leaks of
4425         label_text, label_widget and icon_widget. (#117312, 
4426         Christian Persch)
4427         
4428 Sun Jul 13 01:37:51 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4429
4430         * gtk/gtkmenu.c (gtk_menu_class_init): new properties
4431         "horizontal-offset" and "vertical-offset" that determines the
4432         position of the menu when it is a submenu. 
4433
4434         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): position
4435         submenus according to new vertical- and horizontal-offset
4436         properties.
4437
4438 Sat Jul 12 16:16:04 2003  Kristian Rietveld  <kris@gtk.org>
4439
4440         Merged from stable.
4441
4442         * gtk/gtktreeview.c (gtk_tree_view_drag_data_received): special
4443         case drags to "0", scroll to the top after dropping. (Fixes #94968,
4444         reported by Alp Toker).
4445
4446 Sat Jul 12 16:08:32 2003  Kristian Rietveld  <kris@gtk.org>
4447
4448         Merged from stable.
4449
4450         * demos/gtk-demo/editable_cells.c (cell_edited): fixup bad
4451         code (#115784, Owen Taylor).
4452
4453 Sat Jul 12 16:01:03 2003  Kristian Rietveld  <kris@gtk.org>
4454
4455         Merged from stable.
4456
4457         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
4458         free the old text and extra_attrs *after* we parsed the new
4459         markup string. (Fixes #114485, reported by Owen Taylor).
4460
4461 Sat Jul 12 15:51:33 2003  Kristian Rietveld  <kris@gtk.org>
4462
4463         Merged from stable.
4464
4465         Fixes #113904, testcase provided by Rene Seindal.
4466
4467         * gtk/gtktreeview.c (gtk_tree_view_button_press): set
4468         pressed_button to -1 when a row has been activated,
4469         (gtk_tree_view_motion_bin_window): only start a drag if there's
4470         a button being pressed.
4471
4472 Sat Jul 12 15:51:18 2003  Kristian Rietveld  <kris@gtk.org>
4473
4474         Merged from stable.
4475
4476         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): use
4477         gdk_window_get_pointer instead of gdk_display_get_window_at_pointer
4478         to avoid a roundtrip (#110272, Owen Taylor).
4479
4480 Sat Jul 12 15:28:26 2003  Kristian Rietveld  <kris@gtk.org>
4481
4482         Merged from stable.
4483
4484         This patch really really fixes scrolling. Related bugs: #81627,
4485         testcase provided by Timo Sirainen, #111500, testcase provided by
4486         manu, #113241, reported by Pedro Gimeno/Michael Natterer.
4487
4488         * gtk/gtktreeview.c (validate_visible_area): scrolling to a dy
4489         which is equal to the lower border of the window means scrolling
4490         to an invisible row, always update the dy when scrolling to an
4491         invisible row, corrected area_above/below calculations for
4492         invisible rows, when walking the tree correct the size
4493         subtracted for invalidated rows, fix wrong logic in comment.
4494
4495 2003-07-11  Matthias Clasen  <maclas@gmx.de>
4496
4497         * gtk/gtkicontheme.c (pixbuf_supports_svg): Use g_strfreev() to free
4498         mime_types.  (#117219, Steve Chaplin)
4499
4500 Tue Jul  8 20:11:04 2003  Owen Taylor  <otaylor@redhat.com>
4501
4502         * gdk/x11/gdkevents-x11.c (get_real_window)
4503         gdk/x11/gdkinput-x11.c (_gdk_input_common_init)
4504         gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init)
4505         gdk/x11/gdkprivate-x11.h (_gdk_windowing_image_init)
4506         Don't assume that all events start with XEventAny - Xkb events
4507         don't! (#105745). So, only do that for core events, and for
4508         non-core events, add a system for registering event types
4509         that start with XEventAny.
4510
4511         * gdk/x11/gdkevents-x11.c (gdk_event_translate):
4512         Check to see if the result of gdk_window_lookup_for_display()
4513         is actually a window.
4514
4515 Fri Jul 11 20:48:14 2003  Kristian Rietveld  <kris@gtk.org>
4516
4517         * gtk/gtktreemodel.c (gtk_tree_path_free): make the path != NULL
4518         check a silent assert, so it follows the g_free() behaviour.
4519
4520 2003-07-11  Matthias Clasen  <maclas@gmx.de>
4521
4522         * gtk/gtkstatusbar.c (gtk_statusbar_init): Center statusbar contents 
4523         vertically.  (#109823, Joe Shaw)
4524
4525 2003-07-11  Morten Welinder  <terra@gnome.org>
4526
4527         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixbuf): Fix memory
4528         access error.  (#69436)
4529
4530 Fri Jul 11 14:32:43 2003  Kristian Rietveld  <kris@gtk.org>
4531
4532         Landing GtkTreeModelFilter and the completion code. (Test program
4533         and documentation will follow next week).
4534
4535         * gtk/gtkcellayout.[ch], gtk/gtkentrycompletion.[ch],
4536         gtk/gtktreemodelfilter.[ch], gtk/gtkentryprivate.h: new files.
4537
4538         * gtkentry.[ch]: added gtk_entry_{get,set}_completion, wrote
4539         necessary code to hook up completion.
4540
4541         * gtktreeviewcolumn.c: made GtkTreeViewColumn implement the new
4542         GtkCellLayout interface.
4543
4544         * gtkmarshalers.list: added BOOLEAN:OBJECT,BOXED.
4545
4546         * gtk/gtk.h, gtk/Makefile.am, po/POTFILES.in: all updated for the new
4547         source files.
4548
4549 Wed Jul  9 19:48:26 2003  Kristian Rietveld  <kris@gtk.org>
4550
4551         Merge from stable.
4552
4553         * gdk/gdkdisplay.c (gdk_display_get_window_at_pointer): don't
4554         directly return from ->window_at_pointer, but set win_x and win_y
4555         first if needed. (Fixes #110166, reported by Arno Charlet).
4556
4557         * gdk/gdkwindow.c (gdk_window_get_composite_drawable): change
4558         function to accept GdkDrawables and not just GdkWindows. This was
4559         already done in some other functions a while back, but this patch
4560         got lost for some reason.
4561
4562 2003-07-09  Matthias Clasen  <maclas@gmx.de>
4563
4564         * gtk/gtkcontainer.c (gtk_container_focus_sort_tab): Consider the text
4565         direction when sorting children.  (#116540, Soeren Sandmann)
4566
4567 Tue Jul  8 17:36:21 2003  Owen Taylor  <otaylor@redhat.com>
4568
4569         * gdk/x11/gdkasync.[ch] gdk/gdkdnd-x11.c: 
4570         Change _gdk_x11_send_xevent_async() to 
4571         _gdk_x11_send_client_message_async() avoid using Xlib
4572         internals that are different on Solaris. 
4573         (#116917, Morten Welinder)
4574
4575 2003-07-08  Matthias Clasen  <maclas@gmx.de>
4576
4577         * gtk/gtkcontainer.c (gtk_container_remove): Doc addition.
4578         (#116501, Doug Quale)
4579
4580 Tue Jul  8 21:35:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4581
4582         * gtk/gtktoggletoolbutton.h: remove strange #define
4583         * gtk/gtktoolbutton.h: fix cut'n'paste error
4584         * gtk/gtktoolbutton.c (gtk_tool_button_init): use instance
4585         private data
4586         * gtk/gtktoolitem.c (gtk_tool_item_class_init): use instance
4587         private data instead of g_new0()
4588         * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): use
4589         instance private data
4590
4591 Tue Jul  8 21:10:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4592
4593         * gtk/gtkbutton.c (gtk_button_realize): remove GDK_EXPOSURE_MASK
4594         for INPUT_ONLY window
4595         * gtk/gtkmenuitem.c (gtk_menu_item_realize): same
4596         * gtk/gtknotebook.c (gtk_notebook_realize): same
4597         * gtk/gtkexpander.c (gtk_expander_realize): same
4598         * gtk/gtkrange.c (gtk_range_realize): same
4599
4600         Fix #116303
4601
4602 Tue Jul  8 19:57:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4603
4604         * gtk/gtkstyle.c (gtk_default_draw_arrow): remove correction on x
4605         when detail is "menuitem". With the new menu look is isn't needed
4606         anymore.
4607
4608         * gtk/gtktoolitem.c (gtk_tool_item_toolbar_reconfigured): queue a
4609         resize here, so that tool items will get a chance to relayout
4610         themselves based on the toolbar configuration.
4611
4612         change DEFAULT_SPACE_SIZE to 4 instead of 5
4613
4614         * gtk/gtktoolbar.c 
4615         Get rid of "!GTK_BIN (item)->child means separator". Separators
4616         are widgets in their own right
4617
4618         change DEFAULT_SPACE_SIZE to 4 instead of 5
4619         
4620         (get_space_size): remove this function
4621         (toolbar_item_is_homogeneous): new function
4622
4623         * gtk/gtkseparatortoolitem.c
4624         (gtk_separator_tool_item_size_request): new function.
4625
4626 Tue Jul  8 14:10:35 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4627
4628         * gtk/gtktoggletoolbutton.h: use private data, add new
4629         internal function _gtk_toggle_tool_button_get_button()
4630
4631         * gtk/gtktoolbutton.h: move to private data
4632
4633         * gtk/gtkradiotoolbutton.c, gtk/gtktoolbutton.c: updates for new
4634         private data.
4635
4636 Tue Jul  8 12:50:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4637
4638         * gtk/gtktoolbutton.c (gtk_tool_button_get_icon_widget): fix a
4639         type check, (#116947, Krasimir Angelov)
4640
4641         * gtk/gtktoolbar.c: Use new GtkToolItem accessors.
4642         
4643         * gtk/gtktoolitem.[ch]: Use a private struct to hold the instance
4644         data. Not instance private data yet, because of bug 116921.
4645
4646         * gtk/gtktoolitem.h: new accessors:
4647                 gtk_tool_item_get_homogeneous ()
4648                 gtk_tool_item_get_expand ()
4649                 gtk_tool_item_get_pack_end ()
4650                 gtk_tool_item_get_use_drag_window ()
4651
4652 Mon Jul  7 16:50:32 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4653
4654         * gtk/gtkcellrenderertext.c
4655         (gtk_cell_renderer_text_class_init): remove accidentally committed
4656         debugging spew
4657
4658         * gtk/gtktoolbar.c
4659         (gtk_toolbar_paint_space_line): remove this function
4660         (gtk_toolbar_expose): always propagate expose, even if the item is
4661         a separator item
4662
4663         * gtk/gtkseparatortoolitem.c
4664         (gtk_separator_tool_item_expose): moved here from gtktoolbar.c
4665         (get_space_size): new function.
4666         (get_space_style): new function
4667
4668 Sun Jul  6 13:00:20 2003  Owen Taylor  <otaylor@redhat.com>
4669
4670         * gtk/gtkdnd.c (_gtk_drag_source_handle_event)
4671         * gtk/gtkdnd.c (gtk_drag_begin_internal):  Remove use
4672         of GDK_POINTER_MOTION_HINT_MASK.
4673
4674         * gtk/gtkdnd.c (gtk_drag_update_idle): Move updating
4675         of the drag into an idle as a superior form of 
4676         expose compression.
4677
4678         * gtk/gtkdnd.c (gtk_drag_begin_internal): Move default icon
4679         creation here, so that we have an icon at the start
4680         of the drag (e.g., when retrieving the window cache
4681         information.)
4682
4683 Sun Jul  6 17:21:23 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4684
4685         * docs/widget_geometry.txt: better drawing of GtkMenuItem
4686         * docs/widget_geometry.txt: add notes about GtkMenu
4687         * gtk/gtkstyle.c: remove leftover "#include "gtkhandlebox.h""
4688
4689 Sat Jul  5 10:34:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4690
4691         * gtk/gtkmenu.c: add vertical_padding style property.
4692         
4693         * gtk/gtkmenuitem.c: add style properties toggle_spacing,
4694         arrow_spacing and horizontal_padding. Also center separators and
4695         make them a bit taller.
4696
4697         * gtk/*menuitem.c: use new style properties.
4698         
4699         * docs/widget_geometry.txt: Add note about GtkMenuItem
4700
4701         * gtk/gtkstyle.c 
4702         (gtk_default_draw_vline, gtk_default_draw_hline):
4703         fix +/-1 errors. 
4704
4705         (gtk_default_draw_shadow): draw a black border around menus.
4706
4707         * gtk/gtkvseparator, gtk/gtkhseparator.c, gtk/gtkmenuitem.c: fix
4708         calls to gtk_paint_hline() and gtk_paint_vline() (they take x1,
4709         x2 and y1, y2 respectively, not x, width and y, height).
4710
4711 Sat Jul  5 09:55:38 2003  Owen Taylor  <otaylor@redhat.com>
4712
4713         * gdk/x11/gdkdnd-x11.c (precache_target_list): Lookup
4714         all the atoms in the target list at once.
4715
4716         * gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display):
4717         Local drag short-circuit.
4718
4719         * gdk/x11/gdkdnd-x11.c (gdk_drag_motion): For the
4720         local case, poke the actions in directly instead of
4721         going through xdnd_set_actions.
4722
4723         * gdk/x11/gdkdnd-x11.c (xdnd_read_actions): Short-circuit
4724         the local case.
4725
4726         * gdk/x11/gdkdnd-x11.c (xdnd_manage_source_filter): Don't
4727         XSelectInput()/add a filter if the drag is local.
4728
4729         * gdk/x11/gdkdnd-x11.c (gdk_drag_get_selection): 
4730         Simplify handling of "XdndSelection".
4731
4732         * gdk/x11/gdkevents-x11.c
4733         (gdk_event_send_client_message_to_all_recurse): Somehow,  
4734         a WM_STATE => _NET_WM_STATE change hand been made here.
4735
4736         * gdk/x11/gdkproperty-x11.c (_gdk_x11_precache_atoms): Free
4737         xatom_names, not atom_names.
4738
4739         * tests/testdnd.c (target_drag_motion): Make the trashcan
4740         open again. (Got lost in deprecation cleanup.)
4741
4742 Sat Jul  5 00:49:32 2003  Owen Taylor  <otaylor@redhat.com>
4743
4744         * gtk/gtkdnd.c (gtk_drag_begin): Move the grabs up
4745         earlier, so we don't get a big pile of uncompressed
4746         motion events before the grab takes effect.
4747
4748         * gtk/gtkdnd.c (gtk_drag_update_icon): Call 
4749         gdk_window_process_all_updates() so that the area
4750         we are dragging over gets a change to redraw.
4751
4752         * gtk/gtkdnd.c (_gtk_drag_dest_handle_event): Use 
4753         gdk_window_get_position(), not gdk_window_get_origin().
4754
4755         * gdk/x11/gdkwindow-x11.[ch] (gdk_window_have_shape_ext)
4756         gdkdisplay-x11.h: use XShapeQueryExtension to 
4757         avoid duplicate XQueryExtension when we actually
4758         use it. Remove unnecessary caching in GdkDisplayX11.
4759
4760 Fri Jul  4 23:49:22 2003  Owen Taylor  <otaylor@redhat.com>
4761
4762         * gdk/x11/gdkasync.[ch] (_gdk_x11_get_window_child_info): 
4763         Function to get a range of information about all the
4764         children of a window in a single pass.
4765
4766         * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse)
4767         gdk/x11/gdkdnd-x11.c (gdk_window_cache_new): Use
4768         _gdk_x11_get_window_child_info() to greatly reduce
4769         the number of roundtrips.
4770
4771 Fri Jul  4 22:57:18 2003  Owen Taylor  <otaylor@redhat.com>
4772
4773         * gdk/x11/gdkasync.[ch] (_gdk_send_xevent_async): Add
4774         a function to XSendEvent() and call a calback on
4775         failure/success.
4776
4777         * gdk/x11/gdkdnd-x11.c (xdnd_send_xevent): Short-circuit
4778         messages to the same process, use _gdk_send_xevent_async().
4779
4780 Fri Jul  4 22:26:27 2003  Owen Taylor  <otaylor@redhat.com>
4781
4782         * gdk/x11/gdkwindow-x11.[ch] gdkevents-x11.c: Split
4783         toplevel-specific pieces of GdkWindowImplX11 into
4784         a separate GdkToplevelX11 structure.
4785
4786 Fri Jul  4 22:05:09 2003  Owen Taylor  <otaylor@redhat.com>
4787
4788         * gdk/x11/gdkasync.c (struct _SetInputFocusState): Fix
4789         some leftover fields.
4790
4791 Fri Jul  4 15:57:52 2003  Owen Taylor  <otaylor@redhat.com>
4792
4793         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
4794         Use asynchronously _gdk_x11_set_input_focus_safe
4795         to avoid having to trap errors and XSync().
4796
4797         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): Use
4798         _gdk_x11_set_input_focus_safe() here as well.
4799
4800         * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed):
4801         Rework handling of property notifies on _NET_WM_STATE
4802         so that we ignore _NET_WM_DESKTOP notifies unless we
4803         really care.
4804
4805         * gdk/x11/gdkimage-x11.c (gdk_image_check_xshm): Use
4806         XShmQueryExtension() rather than XQueryExtension() to
4807         avoid extra rountrip.
4808
4809         * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_init):
4810         Remove unused call to XGetWindowAttributes()
4811         
4812         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Remove
4813         unused call to XGetKeyboardControl().
4814
4815         * gdk/x11/gdkdisplay-x11.c gdk/gdk.def (gdk_display_flush):
4816         Add (#99571)
4817
4818         * gdk/win32/gdkevents-win32.c gdk/linux-fb/gdkevents-fb.c 
4819         No-op implementations of gdk_display_flush().
4820
4821         * gdk/gdkwindow.c (gdk_window_process_all_updates): Use
4822         gdk_display_flush() rather than gdk_flush() to avoid
4823         XSync().
4824         
4825         * gdk/x11/gdkwindow-x11.c (update_wm_hints)
4826         gdk/x11/gdkwindow-x11.h: Centralize all handling of WM_HINTS here
4827         so that we don't have to get the property back from the server.
4828
4829         * gdk/x11/gdkwindow-x11.c (show_window_internal): Store
4830         the serial of when we map a toplevel to allow optimizing
4831         out notifies on _NET_WM_STATE/_NET_WM_DESKTOP.
4832
4833         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Don't
4834         XTranslateCoordinates() for override-redirect windows.
4835
4836 Fri Jul  4 15:59:27 2003  Owen Taylor  <otaylor@redhat.com>
4837
4838         * gdk/x11/gdkwindow-x11.c (gdk_window_set_group): Remove comment
4839         about setting window group after the window is mapped from docs
4840         - nothing the ICCCM forbids that.
4841
4842         * gdk/x11/gdkcursor-x11.c (gdk_display_get_maximal_cursor_size):
4843         Fix g_return_val_if_fail() in void return function.
4844
4845         * configure.in: Fix misplaced comma that was resulting
4846         in XShm always being disabled.
4847
4848 Fri Jul  4 19:55:49 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4849
4850         * tests/stresstest-toolbar: remove this accidentally committed
4851         file.
4852         
4853         * tests/stresstest-toolbar.c: really add this new test
4854
4855 Fri Jul  4 19:06:31 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4856
4857         * tests/stresstest-toolbar.c: new test for removing items
4858         
4859         * tests/testtoolbar.c: add a popup menu
4860
4861         * gtk/gtkcontainer.c (gtk_container_remove): add hack to avoid
4862           assert widget->parent == container when the container is a
4863           toolbar.
4864
4865         * gtk/gtktoolbar.c (gtk_toolbar_remove_tool_item): Make much
4866         simpler. Also make correct.
4867
4868         * gtk/gtktoolbar.c (gtk_toolbar_button_press): make
4869         popup_context_menu a boolean handled signal.
4870
4871 2003-07-04  Tor Lillqvist  <tml@iki.fi>
4872
4873         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_polygon,
4874         gdk_win32_draw_segments, gdk_win32_draw_lines): We can calculate
4875         the width and height of the bounding rectangle only after the
4876         minumum x and y have been found, and need a separate loop for
4877         it. Thanks to Bruce Hochstetler for providing a sample program
4878         exhibiting the bug.
4879
4880 2003-07-03  Tor Lillqvist  <tml@iki.fi>
4881
4882         * gdk/gdk.def: Add gdk_string_to_compound_text_for_display.
4883         (#116537, Peter Zelezny)
4884
4885 Thu Jul  3 03:13:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4886
4887         * gtk/gtkpaned.c (gtk_paned_set_child_property): Insert cast to
4888         fix warning. Assign something to old_value to quiet gcc
4889
4890         * gtk/gtkcalendar.c 
4891         (start_spinning): gtk_timeout_add->g_timeout_add
4892
4893         * gtk/gtkicontheme.c 
4894         (theme_lookup_icon): Make it compile (remove double semicolon)
4895
4896         * gtk/gtktoolbutton.c
4897         (gtk_tool_button_class_init): Long comment about properties.
4898         (gtk_tool_button_class_init): Improve text for "use_underline"
4899         property
4900         (gtk_tool_button_create_menu_proxy): Fix up to use_mnemonic based
4901         on whether the passed-in label has use_mnemonic set
4902         (gtk_tool_button_create_menu_proxy): Split image cloning out in
4903         new function. Make that function also handle image with pixbuf
4904         storage.
4905         (gtk_tool_button_construct_contents): Use gtk_widget_destroy()
4906         instead of gtk_container_remove().
4907         (gtk_tool_button_construct_contents): Fix eliding bug
4908
4909         * gtk/gtktoolbar.c
4910         (gtk_toolbar_finalize): New function. Unref tooltips, pointed out
4911         by Morten Welinder
4912         (gtk_toolbar_button_press): Make popup_context_menu signal provide
4913         coordinates and button number
4914
4915         * tests/testtoolbar.c (main): Add new pixbuf toolbutton
4916
4917         * tests/apple-red.png: new file
4918
4919 Wed Jul  2 18:00:56 2003  Owen Taylor  <otaylor@redhat.com>
4920          
4921         * gtk/gtkicontheme.[ch]: Implement a loader for
4922         named themed icon based on from gnome-desktop library
4923         by Alex Larsson.
4924
4925         * gtk/gtkiconthemeparser.[ch]: .ini file parsing code
4926         from gnome-desktop.
4927
4928         * gtk/gtkiconfactory.[ch]: Add
4929         gtk_icon_source_set/get_icon_name() to allow stock icons
4930         to be based off of named theme icons.
4931
4932         * gtk/gtkiconfactory.c: Rework sources so that the source
4933         is *either* a pixbuf, or a filename, or an icon name,
4934         instead of the pixbuf/filename mix it was before. Put a
4935         workaround for get_pixbuf() so that it can return the
4936         filename pixbuf, e.g, for render_icon().
4937
4938         * gtk/gtkiconfactory.c: Make the default setup use
4939         themed icons, and add builtin icons to the default
4940         icon theme for all the standard pixbufs, so we
4941         don't rely on actually having an icon theme on disk.
4942
4943         * gtk/gtkrc.c: Add support for @"icon-name" to specify
4944         a themed icon for a stock icon source.
4945
4946         * tests/Makefile.am test/testicontheme.c: Add a test
4947         program from gnome-desktop.
4948
4949         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c: Add
4950         Net/IconThemeName / gtk-icon-theme-name setting.
4951
4952         * gtk/gtkiconfactory.c (ensure_cache_up_to_date): Actually
4953         update the icon cache serial so we don't continually
4954         think we are out-of-date.
4955
4956         * gtk/gtkwidget.c: Fix a couple of references in doc comments 
4957         to ::direction_set that should have been to ::direction-changed
4958
4959 Wed Jul  2 14:45:41 2003  Owen Taylor  <otaylor@redhat.com>
4960
4961         * gtk/gtktoolbar.c (gtk_toolbar_realize): Attach the
4962         style to the widget.
4963
4964 Wed Jul  2 15:42:26 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4965
4966         * gtk/gtk.h: Add new toolbar headers
4967
4968         * tests/testtoolbar.c: new file
4969
4970         * tests/Makefile.am (noinst_PROGRAMS): Add testtoolbar.c
4971
4972         * gtk/gtkexpander.c (gtk_expander_class_init): Make it compile
4973
4974 Tue Jul  1 22:49:25 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4975
4976         * gtk/gtktoolbar.c:
4977         (gtk_toolbar_remove_tool_item): Fix bug where list is changed
4978         inside a for loop (pointed out by Morten Welinder).
4979         (gtk_toolbar_focus_home_or_end): Minor formatting change
4980
4981         Comments from Owen:
4982
4983         * gtk/gtktoolbutton.c: remove copy of elide_underscores(). Use
4984         gtk_toolbar_elide_underscores instead.
4985
4986         * gtk/gtktoolbar.c: rename signal from focus_ends to
4987         focus_home_or_end.
4988         (_gtk_toolbar_elide_underscores): export this as an internal
4989         function.
4990         (gtk_toolbar_move_focus): add comment explaining difference to
4991         gtk_toolbar_focus();
4992         (gtk_toolbar_list_children_in_focus_order): Make TAB_FORWARD and
4993         TAB_BACKWARD focus the right widgets in RTL mode
4994
4995         * gtk/gtktoolbutton.c (gtk_tool_button_new): Change to take
4996         "label" and "icon" parameters
4997
4998         * gtk/gtktoolbutton.[ch]: remove icon_set property.
4999
5000 2003-07-01  Matthias Clasen  <maclas@gmx.de>
5001
5002         * gtk/gtkspinbutton.c (gtk_spin_button_set_digits): Improve docs.
5003         (116364, Morten Welinder) 
5004
5005         * tests/testgtk.c: Use GtkFontButton and GtkColorButton to bring up the
5006         corresponding dialogs.
5007
5008         * gtk/Makefile.am (gtk_public_h_sources): Add gtkfontbutton.h,
5009         gtkcolorbutton.h.  
5010         (gtk_c_sources): Add gtkfontbutton.c, gtkcolorbutton.c. 
5011
5012         * gtk/gtkfontbutton.[hc]: New files containing a font picker widget. 
5013
5014         * gtk/gtkcolorbutton.[hc]: New files containing a color picker widget. 
5015
5016         * gtk/gtk.h: Include gtkexpander.h, gtkfontbutton.h, gtkcolorbutton.h.
5017
5018         * gtk/gtkexpander.c: Small additions to the docs. 
5019
5020 2003-07-01  Tor Lillqvist  <tml@iki.fi>
5021
5022         * gdk/win32/gdkwindow-win32.c (_gdk_windowing_window_get_pointer):
5023         WindowFromPoint() wants screen coordinates (#115422, Tim Evans).
5024
5025 2003-07-01  Matthias Clasen  <maclas@gmx.de>
5026
5027         * configure.in: Check for Xcursor.
5028         
5029         * gdk/x11/gdkcursor-x11.c:
5030         * gdk/gdkdisplay.h: 
5031         * gdk/gdkcursor.h: RGBA cursor support based on Xcursor. New functions:
5032         gdk_cursor_new_from_pixbuf(), gdk_display_supports_cursor_alpha(), 
5033         gdk_display_supports_cursor_color(),
5034         gdk_display_get_default_cursor_size() and 
5035         gdk_display_get_maximal_cursor_size().  (#69436)
5036
5037 2003-06-30  Tor Lillqvist  <tml@iki.fi>
5038
5039         * gdk/win32/gdkdnd-win32.c (find_window_enum_proc): New function,
5040         callback proc for EnumWindows().
5041         (gdk_drag_find_window_for_screen): Actually take the drag_window
5042         argument into account: Instead of using WindowFromPoint(), use
5043         EnumWindows(), to be able to skip the drag_window. (#116320, Tony
5044         M Brown, Herman Bloggs)
5045
5046         * gdk/win32/*.c: Replace gdk_drawable_ref()/unref() and
5047         gdk_window_ref()/unref() calls with g_object_ref()/unref().
5048         Consistently use %p format in debugging output of pointers and
5049         HANDLEs.
5050
5051 2003-06-30  Mark McLoughlin  <mark@skynet.ie>
5052
5053         * gtk/gtkexpander.h: kill some stray characters
5054         breaking the build.
5055
5056 2003-06-30  Mark McLoughlin  <mark@skynet.ie>
5057
5058         Add GtkExpander. See discussion in bug #60553.
5059
5060         * gtk/gtkexpander.[ch]: add.
5061         
5062         * gtk/Makefile.am: build gtk-expander.[ch].
5063         
5064         * docs/widget_geometry.txt: add info on the layout
5065         of GtkExpander.
5066
5067 Mon Jun 30 01:20:19 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5068
5069         * gtkradiotoolbutton.c:         new file
5070         * gtkradiotoolbutton.h:            "
5071         * gtktoggletoolbutton.c:           "
5072         * gtktoggletoolbutton.h:           "
5073         * gtktoolbutton.c:                 "
5074         * gtktoolbutton.h:                 "
5075         * gtktoolitem.c:                   "
5076         * gtktoolitem.h:                   "
5077         * gtktoolbar.c: many changes
5078         * gtktoolbar.h: many changes
5079         * gtkseparatortoolitem.c:       new file
5080         * gtkseparatortoolitem.h           "
5081
5082         New toolbar.
5083         
5084         - Items on a toolbar are now separate widgets, instances of a
5085           subclass of GtkToolItem.
5086
5087         - Items there aren't room for on the toolbar are unmapped, and an
5088           overflow menu with a proxy menu item is added instead.
5089
5090         - The toolbar is keyboard navigatable. Press TAB to focus the
5091           first item, then use arrow keys and Ctrl TAB to move around the
5092           toolbar. TAB moves focus out of the toolbar.
5093
5094         - Bascially all of the old toolbar API is deprecated in favor of
5095           new API in gtktoolbar.h, gtktoolitem.h, gtktoolbutton.h
5096
5097         - The toolbar is backwards compatible with the old toolbar.
5098
5099 2003-06-29  Matthias Clasen  <maclas@gmx.de>
5100
5101         * gtk/gtkwidget.c (gtk_widget_class_init): Remove a duplicate parameter
5102         from docs, some more formatting fixes. 
5103
5104 2003-06-28  Tor Lillqvist  <tml@iki.fi>
5105
5106         Fix for #111028, thanks to J. Ali Harlow, who writes:
5107         I found that the GdkPixmap->GdkImage reference really isn't
5108         important. It's only really there to have somewhere convenient to
5109         store the location of the pixel data in the pixmap and as an easy
5110         way of accessing the dimensions of that data. I have therefore put
5111         together a fix which removes this reference entirely which seems
5112         to solve the problem.
5113
5114         * gdk/win32/gdkpixmap-win32.h (struct _GdkPixmapImplWin32):
5115         Instead of a pointer to a GdkImage, keep a pointer to the pixels
5116         directly.
5117
5118         * gdk/win32/gdkimage-win32.c (_gdk_win32_setup_pixmap_image): Remove.
5119         (_gdk_win32_new_image): New function, replacing the above. Creates
5120         a GdkImage without any associated GdkPixmap.
5121         (gdk_image_new_bitmap, _gdk_image_new_for_depth): Use it instead.
5122
5123         * gdk/win32/gdkprivate-win32.h: Remove from here, too.
5124
5125         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap)
5126         * gdk/win32/gdkdrawable-win32.c (blit_from_pixmap)
5127         * gdk/win32/gdkgc-win32.c (_gdk_win32_bitmap_to_hrgn)
5128         * gdk/win32/gdkmain-win32.c (_gdk_win32_drawable_description):
5129         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize,
5130         gdk_pixmap_new, gdk_bitmap_create_from_data, gdk_pixmap_foreign_new)
5131         Corresponding changes.
5132
5133 Thu Jun 26 21:41:16 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5134
5135         * gtk/gtktreeviewcolumn.c
5136         (gtk_tree_view_column_cell_set_cell_data): only set "is_expander"
5137         and "is_expanded" if the new value is different fromt he old one.
5138
5139 Wed Jun 25 18:59:15 BST 2003  Tony Gale <gale@gtk.org>
5140
5141         * docs/faq/gtk-faq.sgml: Fix typos. Update
5142         thread example I missed yesterday.
5143
5144 2003-06-24  Matthias Clasen  <maclas@gmx.de>
5145
5146         * gtk/gtkspinbutton.c (gtk_spin_button_class_init): Add a blurb for
5147         shadow_type. 
5148
5149         * gtk/gtkwidget.c (gtk_widget_class_install_style_property_parser): 
5150         (gtk_widget_class_list_style_properties): Use same parameter names as in  
5151         header (to silence gtk-doc).
5152
5153         * gtk/gtkalignment.c (gtk_alignment_[gs]et_padding): Fix doc comments.
5154
5155 Tue Jun 24 20:00:45 BST 2003  Tony Gale <gale@gtk.org>
5156
5157         * docs/faq/gtk-faq.sgml: Thread support updates
5158         from Owen. Various suggestions from Steve Chaplin.
5159
5160 2003-03-24  Mohammad DAMT  <mdamt@bisnisweb.com>
5161
5162         * po/id.po: Updated Indonesian translation
5163
5164 2003-06-21  Tor Lillqvist  <tml@iki.fi>
5165
5166         * gdk/win32/gdkevents-win32.c (gdk_event_translate): When
5167         emulating X11's automatic grab on button down, pass owner_events
5168         as FALSE. According to the XLib spec, automatic grabs use True for
5169         owner_events when OwnerGrabButtonMask is selected, and I don't see
5170         the X11 backend doing that. (#82497, #91619, #92835, #107322, #110271)
5171         (find_window_for_pointer_event): Improve debugging output.
5172
5173 2003-06-17  Tor Lillqvist  <tml@iki.fi>
5174
5175         * gtk-zip.sh.in (DLLDIR): Look for DLLs also in the bin
5176         subdirectory, where libtool 1.5 installs them.
5177
5178         * README.win32: Point to FSF's binary Win32 distribution of
5179         gettext-runtime.
5180
5181 2003-06-17  Matthias Clasen  <maclas@gmx.de>
5182
5183         * acinclude.m4 (JH_PATH_XML_CATALOG, JH_CHECK_XML_CATALOG): New
5184         macros to check for XML catalog contents and path, borrowed from
5185         gtk-doc. 
5186         * configure.in: New option --enable-man to enable regeneration of
5187         man pages from Docbook, if the necessary tools are found.
5188
5189 2003-06-15  Matthias Clasen  <maclas@gmx.de>
5190
5191         * gtk/gtkcalendar.c (gtk_calendar_class_init): 
5192         * gtk/gtknotebook.c (gtk_notebook_class_init): 
5193         * gtk/gtkalignment.c (gtk_alignment_class_init): 
5194         * gtk/gtkpaned.c (gtk_paned_class_init): Document new properties
5195         as 2.4 additions.
5196
5197         * gtk/gtkwidget.c (gtk_widget_class_init): Move inline signal docs 
5198         to the proper place, immediately before the g_signal_new() call.
5199
5200         * gtk/gtktextiter.h: Make the flags-nature of GtkTextSearchFlags 
5201         more obvious.  (#115122, Jeff Franks)
5202
5203 2003-06-12  Anders Carlsson  <andersca@codefactory.se>
5204
5205         * gtk/gtkwidget.c: (event_window_is_still_viewable):
5206         Special case pixmaps. (#114880)
5207         
5208 2003-06-12  Matthias Clasen  <maclas@gmx.de>
5209
5210         * gtk/gtkwidget.c: Document child-notify and drag-data-received
5211         signals. Owen, we need to figure out where the best place for
5212         these comments in the source is. I currently put them in front of
5213         the signals enum.
5214
5215 2003-06-11  Matthias Clasen  <maclas@gmx.de>
5216
5217         * gtk/gtkdnd.c (gtk_drag_check_threshold): s/threshhold/threshold/.
5218
5219 Thu Jan 12 01:01:19 2003  Kristian Rietveld  <kris@gtk.org>
5220
5221         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
5222         silly typo fix. s/seperator/separator/. This gets rid of the
5223         assert spam when using TreeView.
5224
5225 Tue Jun 10 11:23:48 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
5226
5227         * modules/input/gtkimcontextxim.c (xim_instantiate_callback): New
5228         function for XIM instantiate callback.
5229         * modules/input/gtkimcontextxim.c (xim_info_try_im): New function
5230         where call to XOpenIM() or XRegisterIMInstantiateCallback() is
5231         actually made.
5232         * modules/input/gtkimcontextxim.c (xim_destroy_callback): New function
5233         for XIM's destroy callback.
5234         * modules/input/gtkimcontextxim.c (get_im): add a check if info->im 
5235         is set or not - if it's not set, call xim_info_try_im() to try to
5236         initiaize it.
5237         * modules/input/gtkimcontextxim.c (reinitialize_ic): reset
5238         filter_key_release flag of the context.
5239         * modules/input/gtkimcontextxim.c (get_ic_real): removed
5240         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic): move
5241         code from the removed get_ic_real().
5242
5243         For XIM instantiation, destruction and re-instantiation. With
5244         this, Gtk+ apps will be able to connect or reconnect to the XIM,
5245         when it starts after the apps, or when the XIM gets lost and recover.
5246         (#113099, #107782).
5247
5248 Mon Jun 10 01:12:31 2003  Kristian Rietveld  <kris@gtk.org>
5249
5250         Merged from stable.
5251
5252         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_get_size):
5253         check if width is !null, not *width. Doh.
5254
5255 Tue Jun 10 01:09:33 2003  Kristian Rietveld  <kris@gtk.org>
5256
5257         Merged from stable.
5258
5259         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
5260         Remove the weird dx logic, get all cell_area and background_area
5261         calculations right. Not sure what was up with it before. (Fixes
5262         #110989, testcase from Vasco Alexandre da Silva Costa).
5263
5264 Tue Jun 10 00:58:23 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5265
5266         * tests/testgtk.c: Make it compile with C89 compilers
5267
5268 2003-06-10  Matthias Clasen  <maclas@gmx.de>
5269
5270         * gtk/gtktextview.c (gtk_text_view_class_init): Install boolean
5271         property "overwrite".
5272         (gtk_text_view_[gs]et_property): Handle "overwrite".
5273         * gtk/gtktextview.[hc] (gtk_text_view_[gs]et_overwrite): Getter
5274         and setter for "overwrite" property.  (#110241, Jeroen Zwartepoorte)
5275
5276 2003-06-09  Matthias Clasen  <maclas@gmx.de>
5277
5278         * gtk/gtkpaned.c (gtk_paned_class_init): Install boolean child
5279         properties "resize" and "shrink".
5280         (gtk_paned_[gs]et_child_property): Implementations of 
5281         GtkContainer::[gs]et_child_property.  
5282         * tests/testgtk.c (toggle_resize, toggle_shrink): Use the new
5283         paned child properties instead of remove/add hacks.  (#114667, 
5284         Soeren Sandmann) 
5285
5286 Mon Jun  9 16:18:11 2003  Owen Taylor  <otaylor@redhat.com>
5287
5288         * gtk/gtknotebook.c (gtk_notebook_button_press): Back
5289         out event->window test - it wasn't needed because
5290         of the call to get_widget_coordinates().
5291
5292         * gtk/gtknotebook.c (gtk_notebook_button_press): Remove
5293         call to gtk_widget_grab_focus() when not clicking on
5294         any tabs. (Real fix for #114534)
5295
5296 Sun Jun  8 22:03:09 2003  Owen Taylor  <otaylor@redhat.com>
5297
5298         * tests/testdnd.c: Use application/x-rootwindow-drop for
5299         root window drops. (#108670, Alex Larsson)
5300
5301         * gdk/x11/gdkdnd-x11.c (gdk_drag_motion) gtk/gtkdnd.c (gtk_drag_drop): 
5302         Accept either application/x-rootwin-drop (what GTK+ has always used)
5303         or application/x-rootwindow-drop (what the XDND standard specifies).
5304
5305 Fri Jun  6 11:07:33 2003  Owen Taylor  <otaylor@redhat.com>
5306
5307         * gtk/gtkwidget.c (event_window_still_viewable): 
5308         Before delivering an event to a widget, check that
5309         (if relevant), the event's window is still viewable.
5310         (#105642, Dennis Björklund)
5311
5312         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): 
5313         NULL out private->parent, since after destruction
5314         it might not be valid any more.
5315
5316         * gdk/gdkwindow.c (gdk_window_is_viewable): Fix some
5317         accesses before g_return_val_if_fail(). Treat 
5318         DESTROYED windows as unmapped.
5319
5320 Thu Jun  5 09:28:03 2003  Owen Taylor  <otaylor@redhat.com>
5321
5322         * gtk/gtkentry.c: Recompute unconditionally in
5323         gtk_entry_style_set, and in a new gtk_label_screen_changed().
5324         Protect the guts of recompute_idle_func() with
5325         gtk_widget_has_screen(). (#114040, Morten Welinder) 
5326         Fix FALSE/0 confusion.
5327         
5328 Sun Jun  8 18:27:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5329
5330         * gdk/gdkpixbuf-drawable.c (G8fromRGB565): swap G and B.
5331         Fixes (#114669)
5332
5333 Sun Jun  8 11:27:29 2003  Owen Taylor  <otaylor@redhat.com>
5334
5335         * gtk/gtkviewport.c (viewport_set_adjustment): Fix bug with 
5336         set_adjustment (viewport, NULL);
5337
5338 2003-06-07  Matthias Clasen  <maclas@gmx.de>
5339
5340         * gtk/gtkiconfactory.c (get_default_icons): 
5341         * gtk/stock-icons/stock_{undo,redo,undelete,revert}_rtl_{16,24}.png:
5342         * gtk/stock-icons/Makefile.am: Add rtl variants of undo, redo,
5343         undelete and revert.  (#96633)
5344         
5345 Fri Jun  6 16:25:44 2003  Owen Taylor  <otaylor@redhat.com>
5346
5347         * gtk/gtkviewport.c: Many fixes, along with extensive cleanups and 
5348         refactoring of code to reduce duplication; fixes include:
5349
5350         - gtk_viewport_realize(): Position the window correct from adjustment 
5351         values. (#110737, Michael Natterer)
5352
5353         - Remove some division-by-zero checks in places where there is no 
5354         longer division. (#110737)
5355
5356         - gtk_viewport_class_init: Make the hadjustment/vadjustment properties 
5357         G_PARAM_CONSTRUCT, so that there will always be adjustments, even 
5358         if gtk_viewport_new isn't used (#101135, Thomas Leonard).
5359
5360         - Switch over to encapsulated lazy-creation for hadjustment/
5361         vadjustment; even with the CONSTRUCT property, we need this after
5362         destroy.
5363
5364         - When updating the adjustment, immediate set their values to
5365         match the the current range of the viewport, and update the 
5366         viewport position to match the value of the new adjustments. 
5367         (Part of #1165)
5368
5369 2003-06-06  Tor Lillqvist  <tml@iki.fi>
5370
5371         * gdk/win32/gdkprivate-win32.h: Fix typo.
5372
5373         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Set
5374         graphics_exposures and subwindow_mode, too, even if they aren't
5375         currently used.
5376
5377 Fri Jun  6 23:38:23 2003  Kristian Rietveld  <kris@gtk.org>
5378
5379         Merged from stable.
5380
5381         * gtk/gtktreeview.c (do_expand_collapse),
5382         (expand_collapse_timeout), (cancel_arrow_animation): made
5383         expand_collapse_timeout a wrapper with locks around     
5384         do_expand_collapse, made cancel_arrow_animation use
5385         do_expand_collapse. Fixes threadlock. (Fixes #111286, patch from
5386         Peter Bloomfield).
5387
5388 Fri Jun  6 11:05:45 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
5389
5390         * modules/input/gtkimcontextxim.h (struct _GtkIMContextXIM):
5391         * modules/input/gtkimcontextxim.c (preedit_start_callback,
5392         preedit_draw_callback, preedit_done_callback): Add a 'finalizing' flag 
5393         to keep preedit-[start,changed,end] signals from being called during
5394         finalization (#111861).
5395
5396 2003-06-05  Noah Levitt  <nlevitt@columbia.edu>
5397
5398         * gtk/gtknotebook.c (gtk_notebook_button_press): Ignore button
5399         presses that are not on the tab (#114534).
5400
5401 Thu Jun  5 20:35:40 2003  Owen Taylor  <otaylor@redhat.com>
5402
5403         * demos/Makefile.am: Conditionalize dependencies for
5404         gdk-pixbuf-csource on cross-compilation (#112391, J. Ali Harlowe). 
5405         Buildtest-inline-pixbufs.h in srcdir. Don't try to build 
5406         test-inline-pixbufs.h if we don't have libpng.
5407
5408         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): 
5409         Add a dependency on gdk-pixbuf.loaders when not 
5410         cross-compiling, remove the dependency on gdk-pixbuf-csource
5411         when not cross compiling.
5412
5413 Thu Jun  5 20:12:51 2003  Owen Taylor  <otaylor@redhat.com>
5414
5415         * gtk/gtkwindow.c (gtk_window_get_default_size): Handle
5416         gtk_window_get_geometry_info() returning NULL.
5417         (#107311, John Finlay)
5418
5419 Thu Jun  5 19:24:33 2003  Owen Taylor  <otaylor@redhat.com>
5420
5421         * gtk/gtktoolbar.c (gtk_toolbar_expose): Subtract off
5422         twice the border width from the width/height, not
5423         1x the border width. (#106336, Rodney Dawes)
5424
5425 Thu Jun  5 15:33:38 2003  Owen Taylor  <otaylor@redhat.com>
5426  
5427         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
5428         If at the end of the buffer, move to the end iter -
5429         parallels behavior of move_iter_to_previous_line.
5430         (#81960, Padraig O'Briain)
5431  
5432 Thu Jun  5 16:12:54 2003  Owen Taylor  <otaylor@redhat.com>
5433
5434         #80023, Yao Zhang, TOKUNAGA Hiroyuki
5435
5436         * gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations):
5437         Account for the preedit cursor offset if the iter passed
5438         in is at the same place as the insertion cursor.
5439
5440         * gtk/gtktextview.c (gtk_text_view_get_cursor_location):
5441         Encapsulate getting the insertion cursor location.
5442
5443         * gtk/gtktextview.c (gtk_text_view_update_im_spot_location):
5444         Pass the real y/height to the IM context. Take 
5445         text_view->x/yoffset into account.
5446
5447 Thu Jun  5 16:52:54 2003  Owen Taylor  <otaylor@redhat.com>
5448
5449         * gtk/gtktextview.[ch]: Never scroll on focus in
5450         (#81893, Patch from Paolo Maggi)
5451
5452         * gtk/gtktextview.c (gtk_text_view_scroll_[h]pages): 
5453         Scroll to the current cursor location before handling
5454         the action, in case the user just tabbed in
5455         and the cursor is offscreen.
5456
5457 Thu Jun  5 17:20:40 2003  Owen Taylor  <otaylor@redhat.com>
5458          
5459          #107883, Gustavo Giráldez
5460
5461         * gtk/gtktextlayout.c (gtk_text_layout_emit_changed):
5462         Split out the case where we know we changed, and 
5463         already dealt with our cached line being invalidated
5464         from external calls to gtk_text_layout_changed.
5465
5466         * gtk/gtktextlayout.c (gtk_text_layout_changed):
5467         Check if the invalidate yrange intersects our
5468         cached line, and clear it if necessary.
5469
5470 2003-06-05  Tor Lillqvist  <tml@iki.fi>
5471
5472         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle global
5473         filters.
5474
5475 2003-06-05  Matthias Clasen  <maclas@gmx.de>
5476
5477         * gtk/gtktextview.c: Fix for #84668, reported by Torbjrn Andersson:
5478         (gtk_text_view_grab_notify): 
5479         (gtk_text_view_state_changed): Implement these
5480         to unobscure cursor when grab shadowed or insensitised.
5481         (gtk_text_view_unobscure_mouse_cursor): New function to undo the
5482         effect of gtk_text_view_obscure_mouse_cursor(). Code lifted from
5483         gtk_text_view_motion_event().
5484         (gtk_text_view_motion_event): Use gtk_text_view_obscure_mouse_cursor().
5485
5486         * gtk/gtktextview.c (select_all): New keybinding signal for
5487         (un)selecting the whole buffer. Bound to C-a/C-\.  (see #107889)
5488
5489         * gtk/gtkcalendar.c (calendar_timer): 
5490         (stop_spinning): Replace deprecated gtk_timeout_* functions by
5491         their GLib counterparts.  (#114429)
5492
5493         * gtk/gtktreestore.c (gtk_tree_store_new): 
5494         * gtk/gtkliststore.c (gtk_list_store_new): Document restriction on 
5495         types.
5496
5497 Wed Jun  4 19:42:17 2003  Owen Taylor  <otaylor@redhat.com>
5498
5499         * gdk/gdkpango.c (gdk_draw_layout_line_with_colors):
5500         When drawing underlines, join up adjacent runs
5501         where possible, so we don't get changes in 
5502         shaper/font/etc. breaking underlines. (#103662,
5503         Kang Jeong-Hee)
5504
5505 Wed Jun  4 19:22:58 2003  Jonathan Blandford  <jrb@redhat.com>
5506
5507         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_level_find_insert):
5508         Slightly modified patch from Owen Taylor <otaylor@redhat.com> to
5509         improve the speed of inserting rows into an already sorted list,
5510         #109292
5511
5512 Wed Jun  4 19:24:28 2003  Owen Taylor  <otaylor@redhat.com>
5513
5514         * gdk/x11/gdkgc-x11.c gdk/x11/gdkprivate-x11.h: Keep
5515         track of when we have a clip mask set for the GC,
5516         and when we unset it, or switch to a clip region,
5517         immediately call XSetClipMask (..., None) to avoid
5518         Xlib caching stale data. (#111806)
5519
5520         * gtk/gtktextdisplay.c: Don't set a clip mask
5521         when drawing alpha pixmaps; it isn't necessary any more.
5522         (#111806)
5523
5524 Wed Jun  4 18:27:44 2003  Owen Taylor  <otaylor@redhat.com>
5525
5526         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator): 
5527         gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): 
5528         Use GTK_WIDGET_IS_SENSITIVE(), not GTK_WIDGET_SENSITIVE
5529         (#92548, Tim Evans)
5530
5531         * gtk/gtkcheckmenuitem.c (gtk_real_check_menu_item_draw_indicator)
5532         gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator): If
5533         Use state_type = STATE_INSENSITIVE for insensitive menu items.
5534
5535 Wed Jun  4 21:25:35 2003  Kristian Rietveld  <kris@gtk.org>
5536
5537         Merged from stable.
5538
5539         * gtk/gtktreeview.c (gtk_tree_view_drag_begin): use a silent
5540         assert for get_info. (reported by Michael Natterer),
5541         (gtk_tree_view_expand_all_emission_helper),
5542         (gtk_tree_view_expand_all_helper): emit row_expanded for all
5543         expanded rows during an _expand_all operation. (Fixes #111280,
5544         reported by Benjamin Bayart).
5545
5546 Tue Jun  3 18:32:30 2003  Owen Taylor  <otaylor@redhat.com>
5547
5548         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Don't
5549         respond to pings on a root window; prevents infinite
5550         loops if we are selecting for SubstructureNotify on the
5551         root window. (#111945, Sergey V. Udaltsov)
5552
5553 Tue Jun  3 17:39:16 2003  Owen Taylor  <otaylor@redhat.com>
5554
5555         #71597, reported by Morten Welinder
5556
5557         * gdk/gdkpixbuf-drawable.c (rgb888amsb): Fix and simplify
5558         (Patch from Christian Petig)
5559
5560         * gdk/gdkpixbuf-drawable.c (rgb{555,565}{a,}{msb,lsb}):
5561         Major rewrite of 555 and 565 conversion routines:
5562
5563         - Move all the bit shifting into a small block of macros,
5564           eliminating much duplication of complicated arithmetic.
5565         - Get rid of 2-pixels at a time code, which was buggy,
5566           hard to maintain, caused unaligned accesses, and
5567           probably didn't actually perform any better.
5568         - Simplify cases where different data types were
5569           used for the little and big endian cases, use
5570           GUINT16_SWAP_LE_BE() where appropriate.
5571                 
5572 Tue Jun  3 15:05:47 2003  Owen Taylor  <otaylor@redhat.com>
5573
5574         * gdk/x11/gdkdrawable-x11.c (convert_to_format): Remove
5575         bad optimization for src_rowstride == dest_stride.
5576         (Didn't consider the case where we were copying only
5577         partial widths of a wider source buffer)
5578         (#113034, reported by Hans Petter Jansson)
5579
5580 2003-06-03  Michael Natterer  <mitch@gimp.org>
5581
5582         * gdk/x11/gdkinput-x11.c (_gdk_input_common_find_events):
5583         reenabled button_release events for xinput devices. (#113948)
5584
5585 2003-06-03  Christian Rose  <menthos@menthos.com>
5586
5587         * configure.in: Added "li" to ALL_LINGUAS.
5588
5589 Mon Jun  2 18:58:54 2003  Owen Taylor  <otaylor@redhat.com>
5590
5591         * gtk/gtknotebook.c (gtk_notebook_size_allocate): Don't
5592         map the event window if the notebook isn't mapped. (#113980,
5593         Richard Reich)
5594
5595 2003-06-02  Sven Neumann  <sven@gimp.org>
5596
5597         * gtk/gtkprogress.c (gtk_progress_changed): added a missing cast.
5598
5599         * gdk/gdkrgb.c (gdk_rgb_try_colormap): removed an unused variable.
5600
5601 2003-06-01  Matthias Clasen  <maclas@gmx.de>
5602
5603         * gtk/gtkalignment.c (gtk_alignment_[gs]et_padding): Add 
5604         Since: 2.4 to the docs.
5605
5606         * gtk/gtkwindow.c (gtk_window_parse_geometry): Add some hints and
5607         an example to the docs.  (#98427)
5608
5609 2003-05-30  Murray Cumming  <murrayc@usa.net>
5610
5611         * gtk/gtkalignment.[h|c]: Added 4-sided padding as properties with
5612         gtk_alignment_get_padding() and gtk_aligment_set_padding(). This
5613         uses the new private data system - see g_type_class_add_private() in
5614         gtk_alignment_class_init() and the use of GTK_ALIGNMENT_GET_PRIVATE().
5615
5616 2003-05-30  Matthias Clasen  <maclas@gmx.de>
5617         
5618         * gtk/gtknotebook.c: Changed guint to GtkNotebookArrow in the
5619         signature of gtk_notebook_draw_arrow() for Solaris builds to go
5620         through.  (#114043, Anand Subramanian)
5621
5622 Thu May 29 18:30:35 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
5623
5624         * modules/input/imipa.c: 
5625         use GETTEXT_PACKAGE to get a translation for "ipa"(#113850).
5626
5627 Thu May 29 18:08:01 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
5628
5629         * gtk/gtkimmodule.c (_gtk_im_module_list):
5630         use GETTEXT_PACKAGE to get a translation for "Default"(#113850).
5631
5632 Thu May 29 09:34:05 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
5633
5634         * gtk/gtkimmodule.c (_gtk_im_module_list): make "Default"
5635         label of default input method localizable.
5636         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems): 
5637         use translations of input method context names
5638         * modules/input/imam-et.c, modules/input/imcyrillic-translit.c,
5639           modules/input/iminuktitut.c, modules/input/imthai-broken.c,
5640           modules/input/imti-er.c, modules/input/imti-et.c
5641           modules/input/imviqr.c, modules/input/imxim.c
5642         use GETTEXT_PACKAGE instead of "gtk+" for domain name.
5643         (#113850).
5644
5645 Thu May 29 18:23:01 2003  Kristian Rietveld  <kris@gtk.org>
5646
5647         Merged from stable.
5648
5649         * gtk/gtktreeview.c (gtk_tree_view_button_press): put the focus
5650         grab separate, the user might clear the tree in the focus-in
5651         callback. (Fixes #113086, testcase from Felipe Heidrich).
5652
5653 Thu May 29 18:06:26 2003  Kristian Rietveld  <kris@gtk.org>
5654
5655         Merged from stable.
5656
5657         * gtk/gtktreeview.c (gtk_tree_model_set_model): reset a bunch
5658         of row reference when we unset the model. Also reset
5659         dy and top_row_dy. (Fixes #109289, patch from Owen Taylor).
5660
5661 Thu May 29 17:12:19 2003  Kristian Rietveld  <kris@gtk.org>
5662
5663         Merged from stable.
5664
5665         * gtk/gtktreeview.c (gtk_tree_view_set_cursor_on_cell): cancel
5666         the current editing, if it exists. (Fixes #108956, reported by
5667         Michael Natterer).
5668
5669 Thu May 29 17:06:09 2003  Kristian Rietveld  <kris@gtk.org>
5670
5671         Merged from stable.
5672
5673         * gtk/gtktreeview.c (check_selection_helper): new function,
5674         (gtk_tree_view_row_deleted): traverse the tree from the
5675         deleted node to see whether the selection changed, instead of
5676         just checking this node. (Fixes #107400, reported by 'Duncan').
5677
5678 Thu May 29 16:31:34 2003  Kristian Rietveld  <kris@gtk.org>
5679
5680         Merged from stable.
5681
5682         * gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row),
5683         (gtk_tree_view_drag_begin): set the DnD icon in _drag_begin
5684         instead of _maybe_begin_dragging_row, so the icon can be
5685         overridden by apps. (Fixes #104374, patch from Daniel Elstner).
5686
5687 Thu May 29 16:14:04 2003  Kristian Rietveld  <kris@gtk.org>
5688
5689         Merged from stable.
5690
5691         * gtk/gtktreeview.c (gtk_tree_view_start_editing): correct
5692         cell_area x/width for the expander if needed. (Fixes #101748,
5693         reported by Dave Cook and Mariano Suarez-Alvarez).
5694
5695 Thu May 29 16:01:38 2003  Kristian Rietveld  <kris@gtk.org>
5696
5697         Merged from stable.
5698
5699         * gtk/gtktreeview.c (gtk_tree_view_real_set_cursor): check
5700         if tree/node are still the same after _internal_select_node.
5701         (Fixes #92256, reported by edscott).
5702
5703 Thu May 29 15:38:30 2003  Kristian Rietveld  <kris@gtk.org>
5704
5705         Fixes #75745, reported by Richard Hult. Merged from stable.
5706
5707         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): set/unset
5708         GTK_CELL_RENDERER_FOCUSED flag whether the current node is the
5709         cursor or not.
5710
5711         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
5712         if we are rendering a cursor row, and the cell the be
5713         processed has focus, then set the GTK_CELL_RENDERER_FOCUSED
5714         flag (else we unset it).
5715
5716 2003-05-27  Matthias Clasen  <maclas@gmx.de>
5717
5718         * gtk/gtkwindow-decorate.c: 
5719         * gtk/gtktreeprivate.h: 
5720         * gtk/gtkdnd.c: 
5721         * gdk/win32/gdkwindow-win32.h: 
5722         * gdk/linux-fb/gdkprivate-fb.h: 
5723         * gdk/linux-fb/gdkkeyboard-fb.c: Remove dubious bitfields of
5724         unspecified signedness.  (#112919, Morten Welinder)
5725
5726         * gtk/queryimmodules.c (escape_string): 
5727         * gtk/gtktextbtree.c (_gtk_text_btree_get_text): 
5728         * gtk/gtksettings.c (_gtk_settings_parse_convert): 
5729         * gtk/gtkrc.c (gtk_rc_parse_assignment): 
5730         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key): 
5731         * gdk/x11/gdkdisplay-x11.c (escape_for_xmessage): Replace all 
5732         occurances of g_string_new ("") by g_string_new (NULL). (#106975,
5733         Morten Welinder) 
5734
5735 2003-05-27  Tor Lillqvist  <tml@iki.fi>
5736
5737         * gtk-zip.sh.in: Only include the Default and Emacs themes' gtkrc
5738         files. Include share/gtk-doc/{gdk-pixbuf,gdk,gtk}.
5739
5740         * gdk/Makefile.am: libgdk-win32-2.0.la depends on
5741         win32/libgdk-win32.la.
5742
5743         * gtk/gtk.def: Add gtk_tree_view_column_cell_get_position.
5744
5745 Sat May 24 22:19:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5746
5747         * gtk/gtkscrollbar.c (gtk_scrollbar_class_init): Make the minimum
5748         scrollbar slider length 21 instead of 7.
5749
5750 2003-05-23  Matthias Clasen  <maclas@gmx.de>
5751
5752         * gtk/gtknotebook.c: Add support for up to four scroll
5753         arrows. Control their display by new style properties
5754         "has_forward_stepper", "has_backward_stepper",
5755         "has_secondary_forward_stepper" and
5756         has_secondary_backward_stepper". (#110540)
5757
5758         * gtk/gtknotebook.h (struct _GtkNotebook): Make in_child and
5759         click_child three bits wide, add
5760         has_{before,after}_{previous,next} fields.
5761
5762         * gtk/gtkcolorsel.c (gtk_color_selection_init): Update color on
5763         focus out of hex_entry.  (#112665)
5764         (hex_focus_out): New signal handler for focus out of hex entry.
5765
5766 Wed May 21 19:01:06 2003  Owen Taylor  <otaylor@redhat.com>
5767
5768         * gtk/gtkwidget.c (gtk_widget_realize): 
5769         g_return_if_fail() if
5770         GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget).
5771         (#107872, Christian Reis)
5772
5773 2003-05-22  Matthias Clasen  <maclas@gmx.de>
5774
5775         * gtk/gtkfilesel.c (gtk_file_selection_create_dir): 
5776         (gtk_file_selection_rename_file): Some keynav improvements for the
5777         "Rename File" and "Create Directory" subdialogs: Enter in entry
5778         activates default, default is "Create"/"Rename", Escape cancels
5779         dialog.  (#113110)
5780         (gtk_file_selection_set_filename): Add a hint about opening 
5781         directories.  (#113175)
5782
5783 2003-05-22  Matthias Clasen  <maclas@gmx.de>
5784
5785         * gdk/x11/gdkdrawable-x11.c (gdk_x11_drawable_update_xft_clip):
5786         Use XftDrawSetClipRectangles(), since we're inside HAVE_XFT2
5787         anyway.  (#113476)
5788
5789 Wed May 21 15:53:14 2003  Owen Taylor  <otaylor@redhat.com>
5790
5791         * gtk/gtkprogress.c (gtk_progress_set_format_string,
5792         gtk_progress_set_show_text): Always queue a resize ... 
5793         we rely on the size-allocate to do the update, plus a 
5794         different format can actually change our size requisition.
5795         (#111052, Vasco Alexandre da Silva Costa)
5796
5797         * gtk/gtkprogress.c (gtk_progress_changed): Track
5798         ::changed as well as ::value_changed, and queue a
5799         resize on ::changed when necessary.
5800
5801         * gtk/gtkprogress.c (gtk_progress_set_adjustment): 
5802         Call gtk_progress_changed() here to update or 
5803         queue a resize as necessary.
5804
5805 Wed May 21 14:06:13 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
5806
5807         * gtk/gtkimcontextsimple.c: added composing rules of
5808         Greek accented letters, patch by Vasilis Vasaitis (#107507)
5809
5810 Wed May 21 13:19:05 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
5811
5812         * gtk/gtkenums.h (enum GtkIMPreeditStyle, GtkIMStatusStyle): 
5813         * modules/input/gtkimcontextxim.c (preedit_style_change, status_style_change):
5814         gtk settings for XIMPreeditNone and XIMStatusNone. (#105909)
5815
5816 Wed May 21 12:10:25 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
5817
5818         * gtk/gtkimcontextsimple.c: 
5819         code that can check the compose table for ascending order,
5820         by Vasilis Vasaitis (#104862).
5821
5822 Wed May 21 12:52:01 2003  Owen Taylor  <otaylor@redhat.com>
5823
5824         * gtk/gtkkeyhash.[ch] (_gtk_key_hash_looku): We need 
5825         to pass the unmasked state to gdk_keymap_translate_keyboard_state() 
5826         to handle the case where a modifier not in the mask
5827         (like Num_Lock) changes the key value, so replace
5828         the masked state with a state/mask pair. (#106913,
5829         Olivier Ripoll)
5830
5831         * gtk/gtkwindow.c gtk/gtkbinding.c: Update to pass
5832         in state/mask pair to _gtk_key_hash_lookup()
5833
5834 Tue May 20 21:58:00 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
5835
5836         * modules/input/gtkimcontextxim.c (xim_info_display_closed):
5837         fix a memory leak, free input context list (#113259).
5838
5839 2003-05-21  Matthias Clasen  <maclas@gmx.de>
5840
5841         * configure.in (all_loaders): Add pcx.
5842
5843         * gtk/gtkcalendar.c: Make calendar controls spin.  (#112540)
5844
5845 Tue May 20 17:27:24 2003  Owen Taylor  <otaylor@redhat.com>
5846
5847         * gtk/gtkimmodule.c (gtk_im_module_init): Silently
5848         accept a missing gtk.immodules file, some people
5849         want to run without one. (#112406, patch from
5850         Arnaud Charlet)
5851
5852 Tue May 20 17:05:31 2003  Owen Taylor  <otaylor@redhat.com>
5853
5854         * gtk/gtkwindow.c (gtk_window_compute_hints): Fix 
5855         height/width confusion (#113370, Xan Lopez)
5856
5857 Tue May 20 15:48:45 2003  Owen Taylor  <otaylor@redhat.com>
5858
5859         * gdk/x11/gdkdnd-x11.c gdk/x11/gdkwindow-x11.c: Comprehensively
5860         zero all unused parts of client messages (Mainly Motif DND
5861         and EWMH). Also, fix a couple places where we were putting
5862         contents into Motif DND messages that didn't belong.
5863         (#113361, EWMH problem reported by Lubos Lunak)
5864
5865         * gtk/gtkselection.c (_gtk_selection_request): Handle the
5866         case where the property type for the multiple atoms is
5867         ATOM_PAIR by doing the conversions ourselve. This is
5868         needed for Xt inter-operation.
5869
5870 2003-05-19 Arafat Medini <lumina@silverpen.de>
5871
5872         * configure.in: Added ar to ALL_LINGUAS
5873
5874 2003-05-19  Matthias Clasen  <maclas@gmx.de>
5875
5876         * gtk/gtksettings.c (gtk_rc_property_parse_border,
5877         gtk_rc_property_parse_color, gtk_rc_property_parse_enum,
5878         gtk_rc_property_parse_flags, gtk_rc_property_parse_requisition):
5879         Add docs.
5880
5881         * gtk/gtkwidget.c (gtk_widget_class_install_style_property, 
5882         gtk_widget_class_install_style_property_parser): Add docs. 
5883
5884 2003-05-17  Matthias Clasen  <maclas@gmx.de>
5885
5886         * tests/prop-editor.c: Add navigation for object properties, so
5887         that you can easily edit the properties of the parent of a widget.
5888         (#113152)
5889
5890 Wed May 14 17:45:32 2003  Owen Taylor  <otaylor@redhat.com>
5891
5892         * gdk/gdkkeysyms.h gdk/gdkkeynames.c gdk/gdkkeyuni.c:
5893         Patch from Vasilis Vasaitis to fix Greek_IOTAdi[a]eresis 
5894         inconsistency and leave the old name as an aliass (#104873)
5895
5896 Wed May 14 16:40:09 2003  Owen Taylor  <otaylor@redhat.com>
5897
5898         * gtk/gtkframe.c (gtk_frame_set_label_widget): Patch
5899         from Charles Schmidt to add missing notify (#108305)
5900
5901 Wed May 14 16:00:51 2003  Owen Taylor  <otaylor@redhat.com>
5902  
5903         * gdk/x11/gdkgc-x11.c: Remove unecessary g_return_if_fail().
5904         (#105500, Morten Welinder.)
5905  
5906 Wed May 14 09:05:11 2003   Hidetoshi Tajima <hidetoshi.tajima@sun.com>
5907
5908         * modules/input/gtkimcontextxim.c (get_ic_real): use type of guint32
5909         instead of gumake for XNFilterEvents event mask(#110493).
5910
5911 2003-05-11  Anders Carlsson  <andersca@codefactory.se>
5912
5913         * gtk/gtkdnd.c (gtk_drag_source_unset_icon): Don't cast a gchar to
5914         a GObject. (#112762)
5915
5916 2003-05-08  Sven Neumann  <sven@gimp.org>
5917
5918         * configure.in: set the HAVE_X11R6 automake conditional to false
5919         if not compiling for X11.
5920
5921 2003-05-08  Matthias Clasen  <maclas@gmx.de>
5922
5923         * gtk/gtkcalendar.[ch] (gtk_calendar_set_display_options): 
5924         (gtk_calendar_get_display_options): New functions.
5925         (gtk_calendar_display_options): Depreate.  (#64567)
5926         (gtk_calendar_class_init): Add boolean properties for the display
5927         options.  (#50949)
5928
5929 Tue May  6 16:50:52 2003  Owen Taylor  <otaylor@redhat.com>
5930
5931         Patch from James Henstridge to update to automake-1.7
5932         (#109542)
5933  
5934         * autogen.sh: update to call newer tools.
5935  
5936         * configure.in: various updates, to use M4 macros to put
5937         variables that change each release at the top.
5938         Use AC_HELP_STRING to format help strings.
5939         Use AC_CONFIG_COMMANDS to generate gdkconfig.h.
5940  
5941         * Makefile.am: require Automake 1.7.  Remove gdk-2.0.pc and
5942         gtk+-2.0.pc on uninstall.  Pass --enable-gtk-doc to configure
5943         during distcheck.
5944  
5945         * docs/reference/*/Makefile.am: simplify to use the gtk-doc.make
5946         makefile fragment.
5947  
5948         * */Makefile.am: don't use STRIP_BEGIN/STRIP_END.
5949         Use BUILT_SOURCES where appropriate.
5950         Build generated files in builddir rather than srcdir.
5951         Fix uninstall and distclean targets to satisfy distcheck.
5952
5953         ===
5954
5955         * gdk/*/Makefile.am: Remove the hacks to get gdkenumtypes.h
5956         built first, since we are now using BUILT_SOURCES.
5957
5958         * gdk/Makefile.am: Remove an outdated comment about gdk_headers.
5959
5960         * demos/gtk-demo/Makefile.am: Fix srcdir != buildd problem
5961         with geninclude.pl.
5962
5963         * configure.in: Update versions to 2.3.0.
5964  
5965 2003-05-06  Tor Lillqvist  <tml@iki.fi>
5966
5967         Fix for #110165 (thanks to Arnaud Charlet):
5968         
5969         * gdk/win32/gdkevents-win32.c (build_keypress_event,
5970         build_keyrelease_event): For unshifted control char, use
5971         lowercase ASCII keyval.
5972         (gdk_event_translate): Similarily, when handling WM_SYSKEYDOWN and
5973         UP (i.e. Alt-something), if it's an unshifted ASCII letter, use
5974         lowercase keyval. Use build_key_event_state() here, too, instead
5975         of minor code duplication.
5976
5977 2003-05-06  Matthias Clasen  <maclas@gmx.de>
5978
5979         * tests/testmultidisplay.c: Don't include strings.h, it's not
5980         needed anymore.  (#112388)
5981
5982         * examples/menu/itemfactory.c: 
5983         * docs/tutorial/gtk-tut.sgml: Remove an unneeded include from the
5984         itemfactory example.
5985
5986 2003-05-05  Matthias Clasen  <maclas@gmx.de>
5987
5988         * gtk/gtkdnd.c (gtk_drag_source_set_icon_stock):  Actually set the
5989         icon type to the stock icon type.  (#111735, Dave Bordoley)
5990
5991 2003-05-05  Christian Rose  <menthos@menthos.com>
5992
5993         * configure.in: Added sr and sr@Latn to ALL_LINGUAS.
5994         Removed sp, it's replaced by sr@Latn.
5995
5996 Wed Apr 30 22:09:11 BST 2003  Tony Gale <gale@gtk.org>
5997
5998         * docs/faq/gtk-faq.sgml: GTK+ 2.x updates, mainly from
5999         Gonzalo Odiard
6000
6001 Mon Apr 28 17:54:39 2003  Jonathan Blandford  <jrb@redhat.com>
6002
6003         * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy the search
6004         data iff the destroy func isn't NULL.
6005
6006 Thu Apr 24 19:12:05 2003  Owen Taylor  <otaylor@redhat.com>
6007
6008         * autogen.sh (have_libtool): Accept libtool-1.5. (#111480)
6009
6010 2003-04-23  Abel Cheung  <maddog@linux.org.hk>
6011
6012         * configure.in: Added "am" "mk" "ta" to ALL_LINGUAS.
6013
6014 Tue Apr 22 15:33:51 2003  Owen Taylor  <otaylor@redhat.com>
6015
6016         * gtk/gtkfilesel.c (open_new_dir): Fix capitalization
6017         of UTF-8. (#106419, Roozbeh Pournader)
6018
6019 Tue Apr 22 15:17:25 2003  Owen Taylor  <otaylor@redhat.com>
6020
6021         * configure.in: Only check for XFT2 if we found pango-xft
6022         (#105692, Jon Nall)
6023
6024 Tue Apr 22 15:12:19 2003  Owen Taylor  <otaylor@redhat.com>
6025
6026         * gtk/gtkwidget.c (gtk_widget_class_init): Fix PROP_HAS_FOCUS/
6027         PROP_IS_FOCUS confusion. (#111333, Jody Goldberg)
6028
6029 Tue Apr 22 19:43:01 BST 2003  Tony Gale <gale@gtk.org>
6030
6031         * docs/faq/gtk-faq.sgml: add note about version converage.
6032
6033 Mon Apr 21 19:02:16 2003  Owen Taylor  <otaylor@redhat.com>
6034
6035         * gtk/gtksocket.c (activate_key): Fix prototype for
6036         activate_key. (#108927, Jason D. Hildebrand)
6037
6038 Mon Apr 21 18:42:51 2003  Owen Taylor  <otaylor@redhat.com>
6039
6040         * demos/gtk-demo/Makefile.am demos/gtk-demo/geninclude.pl:
6041         Remove geninclude.pl from CVS and don't dist it either,
6042         it is generated. (#108970, Rich Kinder)
6043
6044 Mon Apr 21 18:35:48 2003  Owen Taylor  <otaylor@redhat.com>
6045
6046         * gtk/gtkobject.h: Remove a couple of obsolete comments,
6047         fix another comment. (#109737, Britton Kerin)
6048
6049 Mon Apr 21 18:29:03 2003  Owen Taylor  <otaylor@redhat.com>
6050
6051         * gtk/gtkiconfactory.c (gtk_icon_set_unref): Free
6052         the source list, not just it's contents (Patch
6053         from Charles Kerr, #108243)
6054
6055 Mon Apr 21 18:13:46 2003  Owen Taylor  <otaylor@redhat.com>
6056
6057         * gdk/x11/gdkdnd-x11.c (gdk_window_cache_filter): Patch
6058         from Alex Larsson fixing problem with restacking during
6059         DND. (#108671)
6060
6061 Mon Apr 21 15:07:29 2003  Owen Taylor  <otaylor@redhat.com>
6062
6063         * gdk/x11/gdkdisplay-x11.c (gdk_display_keyboard/pointer_ungrab):
6064         Calling XFlush() after ungrabbing, to avoid problems if
6065         the app subsequently blocks on a long-running operation.
6066         (#106520, reported by Rajkumar Siva)
6067
6068 Fri Apr 18 17:42:45 2003  Owen Taylor  <otaylor@redhat.com>
6069
6070         * gdk/x11/gdkwindow-x11.c (set_initial_hints): Add
6071         SKIP_TASKBAR/SKIP_PAGER to set of properties we
6072         might set on map. (#110019, problem reported
6073         by Loban Rahman)
6074
6075 Fri Apr 18 17:14:33 2003  Owen Taylor  <otaylor@redhat.com>
6076
6077         * gdk/gdkevents.c (gdk_event_copy): Fix for the
6078         case when gdk_event_copy() is called on a non-allocated
6079         event. (#109716, reported by Rich Burridge)
6080
6081 Fri Apr 18 16:57:44 2003  Owen Taylor  <otaylor@redhat.com>
6082
6083         * gdk/x11/gdkdrawable-x11.c (draw_with_images/pixmaps):
6084         Fix pointer arithmetic on 'void *'. (#108322)
6085
6086 Fri Apr 18 16:31:49 2003  Owen Taylor  <otaylor@redhat.com>
6087
6088         * configure.in gdk/x11/gdkdisplay-x11.c modules/input/Makefile.am:
6089         Check for XAddConnectionWatch()/X11R6, and if found, disable XIM and
6090         use of XAddConnectionWatch. Remove --enable-xim config option.
6091         Should fix building on X11R6 (#110523, Albert Chin)
6092
6093 Fri Apr 18 15:56:46 2003  Owen Taylor  <otaylor@redhat.com>
6094
6095         * gdk/x11/gdkdisplay-x11.[ch] gdk/x11/gdkdrawable-x11.[ch]:
6096         Patch from Morten Welinder to catch Sun servers with a 
6097         broken implementation of the RENDER extension. (#108309)
6098
6099 Fri Apr 18 15:30:38 2003  Owen Taylor  <otaylor@redhat.com>
6100
6101         * gdk/x11/gdkwindow-x11.c (set_text_property): Use
6102         gdk_free_compound_text(), not g_free(). (#107643,
6103         Michael Zucchi)
6104
6105 Fri Apr 18 15:11:50 2003  Owen Taylor  <otaylor@redhat.com>
6106
6107         * gdk/x11/gdkdisplay-x11.c (_gdk_display_x11_get_type)
6108         gdk/x11/gdkscreen-x11.c (_gdk_screen_x11_get_type): Fix
6109         wrong use of base_finalize. (#105126, Sven Neumann)
6110
6111 Fri Apr 18 15:06:00 2003  Owen Taylor  <otaylor@redhat.com>
6112
6113         * gdk/gdkwindow.c (gdk_window_constrain_size): Fix
6114         '/' vs. '*' problem in aspect ration computations. (#108237)
6115
6116 Fri Apr 18 14:15:09 2003  Owen Taylor  <otaylor@redhat.com>
6117
6118         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): 
6119         * gdk/x11/gdkevents-x11.c (gdk_event_translate): You
6120         don't get a XkbMapNotify event if you get a XkbNewKeyboardNotify 
6121         event, so select for both. (#108406, Egmont Koblinger)
6122
6123 Thu Apr 17 09:57:44 2003  Jonathan Blandford  <jrb@gnome.org>
6124
6125         * gtk/gtktreeview.c (validate_visible_area): remove infinite loop
6126         caused by not clearing the scroll_to_path.
6127
6128 2003-04-16  Matthias Clasen  <maclas@gmx.de>
6129
6130         * gtk/gtkstyle.c: Doc additions and fixes.
6131
6132         * gtk/gtktreeviewcolumn.c
6133         (_gtk_tree_view_column_get_neighbor_sizes): Doc fixes.
6134
6135 2003-04-14  Michael Natterer  <mitch@gimp.org>
6136
6137         * gtk/gtkliststore.c (gtk_list_store_move): added checks to ensure
6138         that the iter is not reordered to its own position. Prevents model
6139         corruption for the case that the store contains only a single item
6140         (fixes bug #108387).
6141
6142         Unrelated:
6143
6144         * gtk/gtkliststore.c (gtk_list_store_insert): g_list_alloc() the
6145         new list element later so we don't leak it if we decide to return
6146         early.
6147
6148         * gtk/gtktreeselection.c (_gtk_tree_selection_internal_select_node):
6149         set selection->tree_view->priv->anchor to NULL after freeing it.
6150
6151 2003-04-13  Matthias Clasen  <maclas@gmx.de>
6152
6153         * gtk/gtktreeviewcolumn.c
6154         (gtk_tree_view_column_cell_get_position): Document. 
6155
6156         * gtk/gtktextbuffer.c (gtk_text_buffer_select_range): 
6157         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_[sg]et_expand): 
6158         * gtk/gtkbutton.c (gtk_button_[sg]et_focus_on_click): Document
6159         these as 2.4 additions.
6160
6161 2003-04-09  Matthias Clasen  <maclas@gmx.de>
6162
6163         * INSTALL.in: Fix the real thing.
6164
6165         * INSTALL: Typo fix.
6166
6167 Mon Apr  7 19:43:15 2003  Owen Taylor  <otaylor@redhat.com>
6168
6169         * gdk/x11/gdkdisplay-x11.c (gdk_x11_display_ungrab): Flush
6170         after ungrabbing the server.
6171  
6172         * gdk/x11/gdkimage-x11.c: Remove some no-longer-needed
6173         calls to XFlush().
6174
6175         * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_at_pointer):
6176         Use gdk_x11_display_grab/ungrab.
6177
6178         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Initialize
6179         use_xshm to TRUE so SHM gets used when present.
6180  
6181 2003-04-07  Matthias Clasen  <maclas@gmx.de>
6182
6183         * gtk/gtktextlayout.c (set_para_values): 
6184         * gtk/gtkenums.h (GtkWrapMode): Add GTK_WRAP_WORD_CHAR.  (#110086,
6185         David Brigada)
6186
6187         * gtk/gtkcelleditable.c, gtk/gtkfixed.c, gtk/gtktreemodel.c,
6188         gtk/gtktreeselection.c, gtk/gtktreeview.c: Fix numerous
6189         misspellings of possessive "its".  (#110027, Doug Quale)
6190
6191 2003-04-03  Matthias Clasen  <maclas@gmx.de>
6192
6193         * demos/gtk-demo/main.c (demo_find_file): Only use files from the
6194         current directory if it looks like the srcdir.  (#109357)
6195
6196 Wed Apr  2 23:02:26 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6197
6198         * gtk/gtkbutton.[ch] (gtk_button_class_init): add property
6199         focus_on_click
6200
6201         * gtk/gtkwindow.c (gtk_window_focus): make arrow keyboard
6202         navigation not wrap around.
6203
6204 2003-04-02  Matthias Clasen  <maclas@gmx.de>
6205
6206         * gtk/gtkprogress.c (gtk_progress_get_percentage_from_value):
6207         Return 0 if lower == upper.  (#109155)
6208         (gtk_progress_get_current_percentage): Use
6209         gtk_progress_get_percentage_from_value().
6210
6211 2003-04-01  Matthias Clasen  <maclas@gmx.de>
6212
6213         * gtk/gtkimcontext.c (gtk_im_context_focus_in): Fix docs.
6214         (#109510, Noah Levitt)
6215
6216 Mon Mar 31 13:52:13 2003  Jonathan Blandford  <jrb@redhat.com>
6217
6218         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): null initialize reorder's
6219         members so Purify won't complain.
6220
6221         * gtk/gtkliststore.c (gtk_list_store_sort): ditto.
6222
6223 2003-03-31  Matthias Clasen  <maclas@gmx.de>
6224
6225         * gtk/gtkwindow.c: Add a new property, role, corresponding to 
6226         gtk_window_[gs]et_role().  (#93904)
6227
6228 Sun Mar 30 03:57:42 2003  Jonathan Blandford  <jrb@gnome.org>
6229
6230         * gtk/gtktreeselection.c (gtk_tree_selection_get_selected_rows):
6231         fix crash.  Patch from Markus Lausser <sgop@users.sourceforge.net>
6232
6233 2003-03-29  Matthias Clasen  <maclas@gmx.de>
6234
6235         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Set state
6236         of labels back to normal before reparenting back.  (#102387)
6237
6238         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): Set
6239         a default window title to match the GtkFontSelectionDialog behavior.
6240  
6241         (gtk_color_selection_dialog_new): Don't call
6242         gtk_window_set_title() if title is NULL.  (bug #101975, Daniel Elstner)
6243
6244 2003-03-29  Matthias Clasen  <maclas@gmx.de>
6245
6246         Fix for bug #78499:
6247         
6248         * gtk/gtkentry.h (struct _GtkEntry): Add flags select_words and
6249         select_lines. 
6250
6251         * gtk/gtkentry.c (gtk_entry_button_press): Set select_words and
6252         select_lines on double/triple click.
6253
6254         * gtk/gtkentry.c (gtk_entry_motion_notify): Implement
6255         select-by-words and select-by-lines behaviour.
6256
6257         Fixes for bug #56248:
6258         
6259         * gtk/gtknotebook.c (stop_scrolling): New function to remove the
6260         timer and queue a redraw. 
6261         (gtk_notebook_grab_notify): 
6262         (gtk_notebook_state_changed): New functions to call stop_scrolling() 
6263         if necessary.   
6264         (gtk_notebook_button_release): Use stop_scrolling().
6265         (gtk_notebook_draw_arrow): Fix drawing of insensitive arrows.
6266
6267         * gtk/gtkrange.c (stop_scrolling): New function to remove the
6268         grab, remove the timer and queue a redraw.
6269         (gtk_range_grab_notify): 
6270         (gtk_range_state_changed): New functions to call stop_scrolling() 
6271         if necessary.   
6272         (gtk_range_button_release): Use stop_scrolling().
6273
6274         * gtk/gtkspinbutton.c (gtk_spin_button_grab_notify): 
6275         (gtk_spin_button_state_changed): Redraw after stop_spinning.
6276         (gtk_spin_button_stop_spinning): Reset click_child to correct the
6277         drawing of the arrows.
6278         (gtk_spin_button_button_release): Use a local copy of click_child,
6279         since stop_spinning() resets it.
6280
6281         * gtk/gtknotebook.c (gtk_notebook_class_init): Add C-A-PgUp and
6282         C-A-PgDown as alternatives to the A-less variants. (This slipped
6283         in accidentally some time ago).  (#97860)
6284
6285 2003-03-26  Sven Neumann  <sven@gimp.org>
6286
6287         * gtk/gtktreeview.c: rewrote the function that does node and arrow
6288         prelighting, queue all redraws from here (Fixes bug #108792).
6289
6290 2003-03-20  Richard Kinder <r_kinder@yahoo.com>
6291
6292         * demos/testpixbuf.c (update_timeout): set error to NULL, not FALSE.
6293         Fixes bug #108778.
6294
6295 2003-03-20  Guntupalli Karunakar <karunakar@freedomink.org>
6296
6297         * configure.in: Added "ml" in ALL_LINGUAS
6298
6299 Sat Mar 15 18:49:27 2003  Manish Singh  <yosh@gimp.org>
6300
6301         * gtk/gtkradiomenuitem.h: use GTK_DISABLE_DEPRECATED instead of
6302         G_DISABLE_DEPRECATED.
6303
6304 2003-03-14  Tor Lillqvist  <tml@iki.fi>
6305
6306         * gdk/win32/gdkevents-win32.c: Use the signed GET_X_LPARAM() and
6307         GET_Y_LPARAM() to extract x and y coordinates from an LPARAM or
6308         DWORD, and not the unsigned HIWORD() and LOWORD(). Systems with
6309         multiple monitors can have negative coordinates on some of the
6310         monitors. (partial fix for #99496, Arnaud Charlet)
6311
6312 2003-03-15  Matthias Clasen  <maclas@gmx.de>
6313
6314         * gtk/gtktextview.c: Add a "buffer" property.  (#108353) 
6315
6316 2003-03-13  Sven Neumann  <sven@gimp.org>
6317
6318         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
6319         removed redundant calls to g_object_notify().
6320         (gtk_cell_renderer_pixbuf_get_size): removed redundant casts, see
6321         bug #108236.
6322
6323         * gtk/gtktextiter.c (_gtk_text_iter_get_segment_char)
6324         (_gtk_text_iter_get_segment_byte): return 0, not NULL (these
6325         functions return an integer value).
6326
6327 2003-03-13  Tor Lillqvist  <tml@iki.fi>
6328
6329         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On
6330         WM_MOUSEMOVE, the test whether we have actually moved (and thus
6331         shouldn't generate an GDK event) moved after the call to
6332         propagate() and translate_mouse_coords(). Otherwise we were
6333         testing wrong values. (#108115, Allin Cottrell)
6334         (gdk_event_translate): On WM_?BUTTONUP, set current_{x,y} the same
6335         way as in WM_?BUTTONDOWN and WM_MOUSEMOVE.
6336
6337         * gdk/win32/gdkevents-win32.c (gdk_pointer_grab): if a grab cursor
6338         is used, must copy the HCURSOR with CopyCursor(), as it is OK to
6339         destroy the GdkCursor after calling gdk_pointer_grab(). Set the
6340         cursor right away with SetCursor(), as we won't get any
6341         WM_SETCURSOR messages while the mouse is captured. 
6342         (gdk_display_pointer_ungrab): Correspondingly, destroy the copy
6343         with DestroyCursor() when no longer used. (#108114, Allin Cottrell)
6344
6345         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On
6346         WM_SYSCHAR, return FALSE from the window procedure to prevent the
6347         DefWindowProc from being called. Otherwise Windows would beep,
6348         thinking you are tring to access a (nonexistent) menu when you
6349         press Alt-something. Don't do this for Alt-Space,
6350         though. (#107454, Martyn Russell)
6351
6352         * gdk/win32/gdkcursor-win32.c: Minor spacing and debug print fixes.
6353
6354 Tue Mar 11 12:01:07 2003  Jonathan Blandford  <jrb@gnome.org>
6355
6356         * gtk/gtktreeview.c (gtk_tree_view_class_init): Ctrl/Shift
6357         [left/right] expands/collapses the tree, #108092
6358
6359 2003-03-09  Tor Lillqvist  <tml@iki.fi>
6360
6361         * gdk/win32/gdkdrawable-win32.c (draw_segments): Don't try to
6362         compensate for LineTo() not drawing the end pixel. It causes more
6363         harm than benefits, see bug #81895.
6364
6365 2003-03-08  Matthias Clasen  <maclas@gmx.de>
6366
6367         Bug #107664 continued:
6368
6369         * gdk/x11/gdkinputprivate.h: 
6370         * gdk/x11/gdkinput-none.c (_gdk_input_window_none_event): Remove. 
6371         (_gdk_input_other_event): Return gboolean.
6372         * gdk/x11/gdkinput-xfree.c (_gdk_input_window_none_event): Remove. 
6373         (_gdk_input_other_event): Return gboolean.
6374         * gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): Return gboolean.
6375
6376         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Make return_val
6377         gboolean, remove pointless call to _gdk_input_window_none_event.
6378
6379         * gdk/win32/gdkinput-win32.[hc] (_gdk_input_other_event): Return gboolean.
6380         (_gdk_input_window_none_event): Remove.
6381
6382         * gtk/gtktextiter.c (_gtk_text_iter_get_indexable_segment): 
6383         (_gtk_text_iter_get_any_segment): 
6384         (_gtk_text_iter_get_segment_byte): 
6385         (_gtk_text_iter_get_segment_char): 
6386         (_gtk_text_iter_get_text_line): 
6387         (_gtk_text_iter_get_btree): Fix 0/NULL confusion.
6388         * gdk/x11/gdkdnd-x11.c (motif_target_table_check): Return gint.
6389         * gdk/win32/gdkfont-win32.c (gdk_font_equal): 
6390         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_get_deskrelative_origin): 
6391         (gdk_window_get_origin): 
6392         * gdk/linux-fb/gdkcolor-fb.c (gdk_colors_alloc): Fix 0/FALSE confusion. 
6393
6394 2003-03-06  Matthias Clasen  <maclas@gmx.de>
6395
6396         * gdk/gdkrgb.c (gdk_rgb_try_colormap): Return gboolean, not gint.
6397         (#107664, Morten Welinder)
6398
6399         * gdk/x11/gdkwindow-x11.c (gdk_window_get_deskrelative_origin): 
6400         * gdk/x11/gdkfont-x11.c (gdk_font_equal): 
6401         * gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display): 
6402         Fix TRUE/1 and FALSE/0 confusion.  (#107664, Morten Welinder)
6403
6404         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): 
6405         * gtk/gtkeditable.c (gtk_editable_get_chars): 
6406         * gtk/gtkctree.c (gtk_ctree_find_node_ptr): 
6407         * demos/gtk-demo/main.c (demo_find_file): Fix NULL/FALSE confusion
6408         (#107648, Morten Welinder)Fix NULL/FALSE confusion
6409         (#107648, Morten Welinder)
6410
6411 2003-03-04  Matthias Clasen  <maclas@gmx.de>
6412
6413         * gtk/gtkobject.h: Add deprecation guards for gtk_object_new ().
6414
6415 Sun Mar  2 23:35:57 2003  Jonathan Blandford  <jrb@gnome.org>
6416
6417         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_size):
6418         handle rtl code.  Thanks to Matthias Clasen for an initial patch
6419         to handle the RTL code.
6420
6421         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_get_size): ditto
6422
6423         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_size): ditto
6424
6425         * gtk/gtktreeview.c: (invalidate_column),
6426         (invalidate_last_column),
6427         (gtk_tree_view_get_real_requested_width_from_column),
6428         (gtk_tree_view_size_allocate_columns),
6429         (gtk_tree_view_size_allocate), (gtk_tree_view_button_press),
6430         (gtk_tree_view_button_release_drag_column),
6431         (gtk_tree_view_update_current_reorder),
6432         (gtk_tree_view_motion_drag_column), (gtk_tree_view_bin_expose),
6433         (gtk_tree_view_key_press), (gtk_tree_view_header_focus),
6434         (gtk_tree_view_get_background_xrange),
6435         (gtk_tree_view_get_arrow_xrange),
6436         (gtk_tree_view_is_expander_column),
6437         (gtk_tree_view_set_column_drag_info),
6438         (gtk_tree_view_move_cursor_left_right):
6439         Add RTL support.
6440
6441         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): add an
6442         expand flag.
6443
6444         * gtk/gtktreeviewcolumn.c:
6445         (gtk_tree_view_column_class_init),
6446         (gtk_tree_view_column_set_property),
6447         (gtk_tree_view_column_get_property),
6448         (gtk_tree_view_column_set_expand),
6449         (gtk_tree_view_column_get_expand),
6450         (gtk_tree_view_column_cell_process_action):
6451         Add support for expand flag.  Thanks to Kristian Rietveld for an
6452         initial patch for this.
6453
6454 Fri Feb 28 02:06:17 2003  Jonathan Blandford  <jrb@gnome.org>
6455
6456
6457 2003-03-02  Tor Lillqvist  <tml@iki.fi>
6458
6459         * gdk/gdk.def
6460         * gtk/gtk.def: Add a bunch of missing entries. Noticed by Cedric
6461         Gustin.
6462
6463 2003-03-01  Matthias Clasen  <maclas@gmx.de>
6464
6465         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment): 
6466         (gtk_scrolled_window_set_hadjustment): Replace uses of
6467         gtk_object_new by g_object_new.
6468
6469 Thu Feb 27 17:44:24 2003  Manish Singh  <yosh@gimp.org>
6470
6471         * demos/gtk-demo/main.c
6472         * demos/gtk-demo/tree_store.c
6473         * gdk/x11/gdkscreen-x11.c
6474         * gtk/gtkcellrenderertoggle.c
6475         * gtk/gtkcolorsel.c
6476         * gtk/gtkdnd.c
6477         * gtk/gtkeditable.c
6478         * gtk/gtkentry.c
6479         * gtk/gtkmenu.c
6480         * gtk/gtkmenubar.c
6481         * gtk/gtkmenuitem.c
6482         * gtk/gtkmenushell.c
6483         * gtk/gtkrc.c
6484         * gtk/gtksettings.c
6485         * gtk/gtkstyle.c
6486         * gtk/gtktextbuffer.c
6487         * gtk/gtktextview.c
6488         * gtk/gtktreeviewcolumn.c
6489         * tests/testgtk.c
6490         * tests/testtext.c
6491         * tests/testtreeedit.c
6492         * tests/testtreefocus.c
6493         * tests/testtreeview.c: remove unnecessary G_OBJECT() casts.
6494
6495 Tue Feb 25 21:55:17 2003  Jonathan Blandford  <jrb@redhat.com>
6496
6497         * gtk/gtkoptionmenu.c (gtk_option_menu_position): account for RTL
6498         code.
6499
6500 2003-02-24  Sven Neumann  <sven@gimp.org>
6501
6502         * gtk/gtkmain.c (gtk_get_default_language): fixed documentation.
6503
6504 2003-02-21  Tomas Ogren  <stric@ing.umu.se>
6505
6506         * docs/reference/gtk/tmpl/gtktreemodel.sgml: Fix typos in an example
6507
6508 2003-02-20  Matthias Clasen  <maclas@gmx.de>
6509
6510         * gtk/gtktextbtree.c (_gtk_text_line_previous_could_contain_tag): 
6511         Check if line_ancestor_parent is NULL.  (#102711, Manuel Clos)
6512
6513         * gtk/gtktextview.c (gtk_text_view_scroll_to_iter): 
6514         (gtk_text_view_update_adjustments): Make sure cursor stays visible
6515         during horizontal scrolling.  (#75270)
6516
6517 2003-02-19  Matthias Clasen  <maclas@gmx.de>
6518
6519         * tests/testdnd.c: Replace gtk_timeout_* by their GLib
6520         counterparts. (#106532)
6521
6522         * gdk/gdkkeys.c (gdk_keymap_class_init): Associate the
6523         keys_changed virtual function with the keys_changed signal.
6524         (#106512, Jeff Franks)
6525
6526 2003-02-15  Larry Ewing  <lewing@ximian.com>
6527
6528         * gdk/gdkevents.c (gdk_event_copy): copy the event axes as well.
6529
6530 2003-02-17  Mohammad DAMT  <mdamt@bisnisweb.com>
6531
6532         * po/id.po: Added Indonesian translation
6533         * configure.in: Added "id" to ALL_LINGUAS
6534
6535 2003-02-14  Matthias Clasen  <maclas@gmx.de>
6536
6537         * gtk/gtktextview.c (popup_targets_received): Remove bogus casts.
6538
6539 2003-02-12  Christian Rose  <menthos@menthos.com>
6540
6541         * configure.in: Added "yi" to ALL_LINGUAS.
6542
6543 2003-02-12  Matthias Clasen  <maclas@gmx.de>
6544
6545         Fix for #82734 and #78216:
6546         
6547         * gtk/gtktextview.c (delete_cb): 
6548         (select_all_cb): New callbacks for context menu items.
6549         (popup_targets_received): Add "Delete" and "Select All" to context
6550         menu, mnemonics and title caps for all items.
6551
6552         * gtk/gtkentry.c (gtk_entry_delete_cb): New callback for "Delete"
6553         context menu item.
6554         (popup_targets_received): Add "Delete" to context menu, mnemonics
6555         and title caps for all items.
6556
6557 2003-02-09  Tor Lillqvist  <tml@iki.fi>
6558
6559         * gtk/gtkfilesel.c (win32_gtk_add_drives_to_dir_list): Use
6560         GetDriveType() to recognize removable drives (in order to avoid
6561         hanging if trying to access an empty floppy drive), instead of
6562         hardcoding A: and B: (#105654).
6563
6564 2003-02-09  Matthias Clasen  <maclas@gmx.de>
6565
6566         * gtk/gtkwidget.c (gtk_widget_set_name): Add note about periods in 
6567         names.  (#57680)
6568
6569 2003-02-09  Christian Rose  <menthos@menthos.com>
6570
6571         * configure.in: Removed "en@IPA.po" from ALL_LINGUAS.
6572
6573 Fri Feb  7 04:49:46 2003  Tim Janik  <timj@gtk.org>
6574
6575         * gtk/gtkobject.c: remove quark_user_data usage in
6576         gtk_object_{g|s}et_user_data(). fixes get_user_data()
6577         returning NULL for user_data set through property interface.
6578
6579         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): don't put out
6580         warnings if a pixbuf couldn't be retrieved, since (a) this doesn't
6581         need to be a programming error (in case of loaded data), (b) it breaks
6582         with 2.0 behaviour where extra magic could be used to create empty
6583         images. don't attempt to retrieve pixbufs from NULL extra_data.
6584
6585 2003-02-06  Matthias Clasen  <maclas@gmx.de>
6586
6587         * gdk/x11/gdkvisual-x11.c (gdk_visual_get_best_with_depth): Return
6588         a GdkVisual *, not a GdkVisual **.  (#105243)
6589
6590         * gtk/gtkclist.c: 
6591         * gtk/gtkctree.c: 
6592         * gtk/gtkcontainer.c: 
6593         * gtk/gtkdnd.c: 
6594         * gtk/gtkentry.c: 
6595         * gtk/gtklist.c:
6596         * gtk/gtkmenu.c:
6597         * gtk/gtkmenuitem.c:
6598         * gtk/gtknotebook.c:
6599         * gtk/gtkselection.c:
6600         * gtk/gtkspinbutton.c:
6601         * gtk/gtktext.c:
6602         * gtk/gtktextview.c:
6603         * gtk/gtktooltips.c:
6604         * gtk/gtktreeview.c:
6605         * gtk/gtkwindow.c: Replace uses of gtk_timeout_* and gtk_idle_* by
6606         their non-deprecated GLib counterparts.
6607         
6608         * gtk/gtkmain.h: Fully deprecate gtk_timeout_* and gtk_idle_*.
6609         
6610 Sun Feb  2 16:45:57 GMT 2003  Tony Gale <gale@gtk.org>
6611
6612         * docs/tutorial/gtk-tut.sgml: cleanups from
6613         Sebastian Rittau (#104832)
6614
6615 2003-02-01  Tor Lillqvist  <tml@iki.fi>
6616
6617         Merge from stable:
6618
6619         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_foreign_new_for_display,
6620         gdk_pixmap_lookup, gdk_pixmap_lookup_for_display): Implement.
6621         (#104108, Naofumi Yasufuku)
6622
6623         * gdk/gdk.def: Export the above. Export
6624         gdk_screen_get_system_visual, noticed by Ed Woods.
6625
6626 Fri Jan 31 17:45:22 2003  Manish Singh  <yosh@gimp.org>
6627
6628         * demos/pixbuf-demo.c
6629         * demos/testpixbuf.c
6630         * demos/gtk-demo/pixbufs.c: remove deprecated gtk_timeout_* usage.
6631
6632 Fri Jan 31 17:33:00 2003  Manish Singh  <yosh@gimp.org>
6633                                                                                 
6634         * gtk/gtknotebook.c (gtk_notebook_remove_tab_label): set_state
6635         on the tab_label before unparenting it, in case the unparent
6636         drops the refcount to 0.
6637
6638 2003-02-01  Matthias Clasen  <maclas@gmx.de>
6639
6640         * gtk/gtkiconfactory.h: Use GDK_MULTIHEAD_SAFE like all other gtk
6641         headers. Sorry about gtk_selection_clear, Yosh.
6642
6643 Thu Jan 30 17:16:05 2003  Manish Singh  <yosh@gimp.org>
6644
6645         * gtk/gtkselection.h: declare gtk_selection_clear in GTK_COMPILATION
6646         too, for gtkwidget.c. Remember people, when introducing new
6647         deprecations, make sure internal code isn't using it, or if so,
6648         reorganize appropriately like I've done in other places.
6649
6650         * tests/testtext.c: don't use deprecated gtk_timeout_* stuff.
6651
6652 2003-01-31  Matthias Clasen  <maclas@gmx.de>
6653
6654         * gtk/gtkselection.h: 
6655         * gtk/gtkselection.c (gtk_selection_clear): Deprecate.  (#85683)
6656
6657         * gdk/gdkpixbuf.h: 
6658         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): 
6659         (gdk_pixbuf_render_to_drawable_alpha): Deprecate.  (#60582)
6660
6661         * gtk/gtkcolorsel.h:
6662         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
6663         Deprecate.  (#98167)
6664
6665         * gtk/gtkpaned.h: Deprecate gtk_paned_computed_position(). (#97077)
6666
6667         * gtk/gtkmain.h: Deprecate the gtk_timeout_*, gtk_idle_*
6668         and gtk_input_* functions.  (#71596)
6669         
6670         * gtk/gtkentry.c (gtk_entry_move_cursor): 
6671         * gtk/gtklabel.c (gtk_label_move_cursor): Handle
6672         GTK_MOVEMENT_HORIZONTAL_PAGES in switches.
6673
6674         * gdk/gdk.h: Deprecate gdk_wcstombs() and gdk_mbstowcs().  (#79803)
6675
6676         * gtk/gtkitemfactory.h: 
6677         * gtk/gtkitemfactory.c (gtk_item_factory_add_foreign): Deprecate. 
6678         (#69244)
6679
6680 Thu Jan 30 23:48:30 2003  Kristian Rietveld  <kris@gtk.org>
6681
6682         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_count_special_cell):
6683         only count the special cell if it is also visible,
6684         (_gtk_tree_view_column_get_neighbor_sizes): only take the width into
6685         account from visible cells,
6686         (gtk_tree_view_column_cell_get_position): likewise, (Reported and
6687         testcase provided by Vasco Alexandre da Silva Costa, via IRC,
6688         tracking bug was #104563).
6689         
6690 Thu Jan 30 23:46:15 2003  Kristian Rietveld  <kris@gtk.org>
6691
6692         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
6693         subtract expander space and focus line space from the extra space
6694         we are about the allocate. (Fixes #104635).
6695
6696 Thu Jan 30 23:42:03 2003  Kristian Rietveld  <kris@gtk.org>
6697
6698         * gtk/gtkstyle.c (apply_affine_on_point): fix rouding error
6699         (Fixes #96242, patch from Soeren Sandmann).
6700
6701 Thu Jan 30 16:54:29 2003  Owen Taylor  <otaylor@redhat.com>
6702
6703         * gtk/gtknotebook.c: Patch from Soeren Sandmann
6704         to update the states of the tab label child
6705         widgets to match the state of the tabs. 
6706         (#93389, Reported by Tommi Komulainen)
6707
6708 Thu Jan 30 16:30:54 2003  Owen Taylor  <otaylor@redhat.com>
6709
6710         * Makefile.am (EXTRA_DIST): Remove gtk+.spec.in from
6711         EXTRA_DIST, and from dist rules. (#102231)
6712
6713 2003-01-30  Daniel Elstner  <daniel.elstner@gmx.net>
6714
6715         * gtk/gtktoolbar.c (set_child_packing_and_visibility): New helper
6716         function that sets the icon's and label's packing options and
6717         visibility based on toolbar->style.
6718
6719         (gtk_toolbar_internal_insert_element):
6720         (gtk_real_toolbar_style_changed): Make use of
6721         set_child_packing_and_visibility() to clean up the code and get
6722         the packing right for icon-only/text-only toolbars. (#104679)
6723
6724         (get_first_child): Remove, and use gtk_bin_get_child() instead.
6725
6726 2003-01-30  Matthias Clasen  <maclas@gmx.de>
6727
6728         * gtk/gtktextview.c: Replace PAGE_HORIZONTALLY_HACK_VALUE by
6729         GTK_MOVEMENT_HORIZONTAL_PAGES.  (#68947)
6730
6731         * gtk/gtkenums.h: Add GTK_MOVEMENT_HORIZONTAL_PAGES to GtkMovementStep.
6732         
6733 Thu Jan 30 16:01:29 2003  Owen Taylor  <otaylor@redhat.com>
6734
6735         * gdk/gdkrgb.c (gdk_rgb_try_colormap): Remove the 
6736         attempt-to-allocate then free code. To handle multiple
6737         people allocating colors at the same time, we need
6738         to just go ahead and try. (#102213, Shivram U)
6739         
6740 2003-01-30  Daniel Elstner  <daniel.elstner@gmx.net>
6741
6742         * gtk/gtkcolorsel.c (palette_paint): Explicitely draw an opaque
6743         rectangle using the background color rather than relying on
6744         gdk_window_clear_area(), so that the palette works properly with
6745         pixmap themes. (#101732)
6746
6747         * demos/gtk-demo/colorsel.c: Install an "expose_event" handler
6748         to fill the drawing area in the background color.
6749
6750 Wed Jan 29 14:11:21 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
6751
6752         * modules/input/gtkimcontextxim.c (choose_better_style): fix a memory
6753         initialization error for selecting input style (#103549).
6754
6755 Wed Jan 29 17:02:41 2003  Owen Taylor  <otaylor@redhat.com>
6756
6757         * gdk/gdkkeyuni.c (get_decimal_char): Make the 
6758         translation of GDK_KP_Decimal dependent on LC_NUMERIC.
6759         (#101225)
6760
6761 Wed Jan 29 15:43:56 2003  Owen Taylor  <otaylor@redhat.com>
6762
6763         * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
6764         Make up from the menu bar go to the end of the submenu.
6765         (#96114, Ian Peters.)
6766
6767         * gtk/gtkmenuitem.c (gtk_menu_item_mnemonic_activate): 
6768         Only do the select-but-not-activate stuff if the
6769         menu is already active. Otherwise, just activate.
6770         (#101690, Arvind Samptur)
6771
6772 Tue Jan 28 15:18:24 2003  Owen Taylor  <otaylor@redhat.com>
6773
6774         * autogen.sh (have_automake): Fix version in complaint
6775         message about automake. (#104366, Rich Burridge)
6776
6777 Mon Jan 27 16:38:13 2003  Owen Taylor  <otaylor@redhat.com>
6778
6779         * configure.in: Remove SOEXT stuff; it doesn't work portably.
6780
6781 Mon Jan 27 22:45:15 2003  Kristian Rietveld  <kris@gtk.org>
6782
6783         * gtk/gtktreestore.c (gtk_tree_store_move): don't handle b if
6784         we appended/prepended, send the rows_reordered signal to the 
6785         correct level ... (Reported by Matthew Tuck).
6786
6787 Mon Jan 27 22:43:11 2003  Kristian Rietveld  <kris@gtk.org>
6788
6789         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): don't just bail
6790         out if the level only has one item, recurse over the child if there
6791         is one. (Fixes #100458, reported by Gaël Le Mignot).
6792
6793 Mon Jan 27 22:41:26 2003  Kristian Rietveld  <kris@gtk.org>
6794
6795         * gtk/gtktreeview.c (gtk_tree_view_set_model),
6796         (gtk_tree_view_search_equal_func): make TreeView search handle
6797         all types which are transformable by GValue. (Fixes #99803, reported
6798         by Muktha Narayan).
6799
6800 Mon Jan 27 22:39:25 2003  Kristian Rietveld  <kris@gtk.org>
6801
6802         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_sort_column_id):
6803         *really* handle unsetting the ID. Slightly modified patch from
6804         Soeren Sandmann. Fixes #87556, reported by Jarek Dukat.
6805
6806 Mon Jan 27 22:33:43 2003  Kristian Rietveld  <kris@gtk.org>
6807
6808         Fixes the total GtkTreeSortable mess, and #83195, reported by
6809         Jarek Dukat
6810
6811         * gtk/gtktreestore.c (gtk_tree_store_get_sort_column_id),
6812         (gtk_tree_store_set_sort_column_id), (gtk_tree_store_set_sort_func),
6813         (gtk_tree_store_set_default_sort_func): use the constant
6814         GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID instead of -1, make functions
6815         work as advertised by the documentation.
6816
6817         * gtk/gtklistore.c (gtk_list_store_get_sort_column_id),
6818         (gtk_list_store_set_sort_column_id), (gtk_list_store_set_sort_func),
6819         (gtk_list_store_set_default_sort_func): likewise.
6820
6821         * gtk/gtktreemodelsort.c (gtk_tree_model_set_sort_column_id),
6822         (gtk_tree_model_set_sort_func),
6823         (gtk_tree_model_sort_set_default_sort_func): make functions work
6824         as advertised by the documentation.
6825
6826 Mon Jan 27 22:31:56 2003  Kristian Rietveld  <kris@gtk.org>
6827
6828         * gtk/gtktreeview.c (gtk_tree_view_button_press): update focus_column
6829         before we decide if we edit. (fixes #100973, reported by Dave Cook).
6830
6831 Mon Jan 27 22:29:30 2003  Kristian Rietveld  <kris@gtk.org>
6832
6833         Bug report and test case from Paolo Maggi via IRC.
6834
6835         * gtk/gtkliststore.c (gtk_list_store_swap): update tail if needed,
6836         (gtk_list_store_move): update tail if needed.
6837
6838 Mon Jan 27 16:19:59 2003  Owen Taylor  <otaylor@redhat.com>
6839
6840         * gtk/gtksocket.c (gtk_socket_filter_func): event->any.window
6841         might be NULL. Use gtk_widget_get_display (widget) 
6842         (#102860, Thomas Leonard)
6843
6844 Mon Jan 27 15:58:31 2003  Owen Taylor  <otaylor@redhat.com>
6845
6846         * configure.in: Fix --without-modules/--disable-modules
6847         confusion that was causing --disable-modules not to work.
6848         (#102865, Akira Tagoh)
6849
6850         * configure.in: Fix problem with plain --with-xinput
6851         (#104266, Akira Tagoh)
6852
6853 2003-01-24  Sebastian Rittau  <srittau@jroger.in-berlin.de>
6854
6855         * docs/tutorial/gtk-tut.sgml: Fix a few typos, introduced by my last
6856         patch.
6857
6858 Fri Jan 24 17:06:41 GMT 2003  Tony Gale <gale@gtk.org>
6859
6860         * docs/tutorial/gtk-tut.sgml: Remove duplicate copy of tictactoe.h
6861
6862 Thu Jan 23 21:15:29 GMT 2003  Tony Gale <gale@gtk.org>
6863
6864         * docs/faq/gtk-faq.sgml: Learn to spell Library
6865
6866 Thu Jan 23 20:56:56 GMT 2003  Tony Gale <gale@gtk.org>
6867         * Sebastian Rittau  <srittau@jroger.in-berlin.de>:
6868
6869            docs/tutorial/gtk-tut.sgml: Adopted chapter 21.3 "Creating a
6870            Composite widget" to modern standards. (I.e. use gobject instead of
6871            glib, derive from GtkTable instead of GtkVBox.) Bugzilla #103869.
6872
6873         * docs/tutorial/gtk-tut.sgml, examples/tictactoe: Fixup tic-tac-toe
6874         code in Appendix C to reflect above changes.
6875
6876         * examples/rangewidgets/rangewidgets.c: From Roger Leigh
6877         auto resize on page size change
6878
6879 2003-01-23  Daniel Elstner  <daniel.elstner@gmx.net>
6880
6881         * gtk/gtktoolbar.c (gtk_toolbar_hide_all): Override hide_all
6882         in addition to show_all in order to keep them symmetric. (#102201)
6883
6884 Wed Jan 22 14:18:46 2003  Manish Singh  <yosh@gimp.org>
6885
6886         * gdk/x11/gdkevents-x11.c (translate_key_event): add a "return" at
6887         the end of the function, so there is a statement following the "out"
6888         label in all cases (fixes #101961)
6889
6890 2003-01-22  Christian Rose  <menthos@menthos.com>
6891
6892         * configure.in: Added "mn" to ALL_LINGUAS.
6893
6894 Wed Jan 15 17:02:18 2003  Owen Taylor  <otaylor@redhat.com>
6895  
6896         * gtk/gtktextlayout.c (gtk_text_layout_validate_yrange):
6897         Fix off-by-one error on the backward iteration loop,
6898         that was causing the wrong range to be redrawn.
6899         (at least part of #72734)
6900         
6901 2003-01-21  Matthias Clasen  <maclas@gmx.de>
6902
6903         * gtk/gtktextview.c (gtk_text_view_size_allocate): Adjust the
6904         vadjustment value after changing its bounds.  (fixes #101963 and 
6905         #73562)
6906
6907         * gtk/gtkcolorsel.c (hex_changed): Fix clamping to [0,1] to avoid 
6908         unnecessary roundtrip failures.  (#93500)
6909
6910 2003-01-19  Tor Lillqvist  <tml@iki.fi>
6911
6912         Merge from stable:
6913         
6914         Fix for #103614 and some other problems with GtkFileSelection on
6915         Windows:
6916                 
6917         * gtk/fnmatch.c (get_char): Need to use g_unichar_tolower(), not
6918         g_ascii_tolower(). Windows file names are case-insensitive for all
6919         Unicode letters.
6920
6921         * gtk/gtkfilesel.c: Instead of checking for G_OS_WIN32 or
6922         G_WITH_CYGWIN, check G_PLATFORM_WIN32. Move inclusion of gtkintl.h
6923         earlier, as it includes config.h unconditionally, and gtkprivate.h
6924         redefines GTK_LOCALEDIR.
6925         (struct _CompletionDirSent): Ifdef out the fields not used on
6926         Windows.
6927         (compare_utf8_filenames, compare_sys_filenames): Need different
6928         comparison implementation for UTF-8 file names and system locale
6929         file names on Win32. Cannot simply use g_ascii_strcasecmp(), but
6930         need to casefold all Unicode letters.
6931         (cmpl_completion_matches, open_dir, correct_parent): Ifdef out
6932         variables not used on Win32 to avoid warnings about unused
6933         variables.
6934         (open_ref_dir): Use g_path_skip_root() to skip past potential
6935         drive letter in front of the leading (back)slash.
6936         (open_new_dir): Ifdef out use of CompletionDirSent fields not
6937         there on Win32.
6938         (correct_parent): Bypass inode check also on Cygwin.
6939
6940         Fix bug noticed by Alex Shaduri: Tooltips and other
6941         GDK_WINDOW_TEMP windows were activated. This looked very odd, and
6942         was a regression from earlier versions.
6943         
6944         * gdk/win32/gdkwindow-win32.c (show_window_internal): Fine-tune
6945         behaviour. Don't ever activate GDK_WINDOW_TEMP windows.
6946         (gdk_window_move, gdk_window_resize): Add debug logging.
6947
6948         * gdk/win32/gdkevents-win32.c (gdk_event_translate): When we get a
6949         WM_SIZE message for a non-visible (withdrawn) window, don't clear
6950         the GDK_WINDOW_STATE_WITHDRAWN bit. The window is still withdrawn
6951         even if its size changes.
6952
6953 2003-01-16  Matthias Clasen  <maclas@gmx.de>
6954
6955         * gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations): Typo fixes.
6956         (totally_invisible_line): Fix an incorrect optimization which
6957         caused invisible paragraphs to be occasionally misrendered.
6958
6959 Wed Jan 15 15:55:47 2003  Owen Taylor  <otaylor@redhat.com>
6960
6961         * gtk/gtksettings.c: Set the double click speed from
6962         XSETTINGS when creating a new GtkSettings object
6963         as well as when getting a notify. (#103601, reported
6964         by Louis Garcia)
6965
6966 Wed Jan 15 14:56:09 2003  Owen Taylor  <otaylor@redhat.com>
6967  
6968         * gtk/gtknotebook.c (gtk_notebook_size_allocate): 
6969         Show/hide the notebook event window as necessary,
6970         we weren't previously keeping the visibility updated
6971         properly.  (#103599)
6972  
6973 2003-01-15  Matthias Clasen  <maclas@gmx.de>
6974
6975         * examples/menu/itemfactory.c: 
6976         * docs/tutorial/gtk-tut.sgml: Add a <StockItem> to the itemfactory
6977         example.  (#103211)
6978
6979 2002-12-29  Murray Cumming  <murrayc@usa.net>
6980
6981         Fixes #102168.
6982
6983         * gtk/gtkliststore.c, gtktreednd.c, gtktreestore.c:
6984         Actually implement the GtkTreeDragSource::row_draggable virtual 
6985         function in GtkListStore and GtkTreeStore instead of just checking 
6986         whether it's implemented at all. This means that DnD isn't broken by
6987         gtkmm's virtual function wrappers. The alternative would be to
6988         hard-code the TRUE return value into gtkmm's wrappers, but that's 
6989         part of GTK+'s implementation, not it's API.
6990
6991 Tue Jan 14 23:42:29 2003  Kristian Rietveld  <kris@gtk.org>
6992
6993         * gtk/gtktreeview.c: fix compiler warning.
6994
6995 Tue Jan 14 23:29:00 2003  Kristian Rietveld  <kris@gtk.org>
6996
6997         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
6998         make sure exposed pixbufs are clipped to the exposed area before
6999         drawing, which is a slight speedup. (#102379, patch from Soeren
7000         Sandmann).
7001
7002 Tue Jan 14 23:26:41 2003  Kristian Rietveld  <kris@gtk.org>
7003
7004         * gtk/gtktreeview.c (validate_visible_area): silly typo fix,
7005         only free scroll_to_path when the complete tree has been validated.
7006         This makes sure that we scrolled to the correct path.
7007
7008 Tue Jan 14 23:25:32 2003  Kristian Rietveld  <kris@gtk.org>
7009
7010         * gtk/gtktreeview.c (gtk_tree_view_style_set): update the
7011         background of widget->window and bin->window. (Fixes #96650, reported
7012         by Dave Camp).
7013
7014 Tue Jan 14 23:24:02 2003  Kristian Rietveld  <kris@gtk.org>
7015
7016         * gtk/gtktreeview.c (gtk_tree_view_clamp_node_visible): process
7017         updates before scrolling, avoiding a "selection streak". (Fixes
7018         #101235, patch from Soeren Sandmann).
7019
7020 Tue Jan 14 23:22:13 2003  Kristian Rietveld  <kris@gtk.org>
7021
7022         * gtk/gtktreeview.c (validate_visible_area): actually put values
7023         in the requisition using gtk_widget_size_request. (Fixes #100172,
7024         reported by Kjartan Maraas).
7025
7026 Tue Jan 14 23:19:45 2003  Kristian Rietveld  <kris@gtk.org>
7027
7028         * gtk/gtktreeview.c (gtk_tree_view_rows_reordered): cancel the
7029         arrow animation timeout before we actually reorder the rbtree. If
7030         we don't do this we can get stuck arrows,
7031         (cancel_arrow_animation): new function. (Fixes #93629, part 2,
7032         reported and testcase provided by Hans Petter Jansson).
7033
7034 Tue Jan 14 23:18:21 2003  Kristian Rietveld  <kris@gtk.org>
7035
7036         * gtk/gtktreeselection.c (gtk_tree_selection_real_modify_range):
7037         anchor_path should be start_path, not end_path. (Fixes #102618,
7038         patch from Carlos Garnacho Parro).
7039
7040 Tue Jan 14 23:16:15 2003  Kristian Rietveld  <kris@gtk.org>
7041
7042         * gtk/gtkliststore.c (gtk_list_store_move): also update the tail,
7043         only correct new_pos if we don't move to the head/tail.
7044
7045 Tue Jan 14 23:11:55 2003  Kristian Rietveld  <kris@gtk.org>
7046
7047         * gtk/gtktreestore.c (gtk_tree_store_swap): take the path from
7048         the parent_iter if depth >= 1, so we send the reordered signal to
7049         the correct level, remove debugging printfs which I forgot the remove
7050         earlier (2.2.0 shipped with this, oops). (Fixes #103198, Reported and
7051         testcase provided by Matthew Tuck).
7052
7053 Tue Jan 14 20:58:44 2003  Kristian Rietveld  <kris@gtk.org>
7054
7055         * gtk/gtktreeview.c (invalite_last_column): split out actual column
7056         invalidation into invalidate_column(),
7057         (gtk_tree_view_size_allocate_columns): invalidate column if the
7058         new width is larger than the old width.
7059         (fixes #102890, reported by Alex Duggan).
7060
7061 2003-01-14  Matthias Clasen  <maclas@gmx.de>
7062
7063         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Skip
7064         invisible chars for GTK_MOVEMENT_LOGICAL_POSITIONS and
7065         GTK_MOVEMENT_WORDS.
7066
7067         * gtk/gtktextiter.c,
7068         gtk/gtktextiter.h: Add some variant movement functions which
7069         skip invisible chars, and do some cleanups.
7070
7071 2003-01-12  Tor Lillqvist  <tml@iki.fi>
7072
7073         Merge from stable:
7074                 
7075         * gtk/gtkmain.c: Move inclusion of config.h and gtkintl.h earlier,
7076         as gtkprivate.h redefines GTK_LOCALEDIR on Win32, for run-time
7077         lookup.
7078
7079         * gdk/Makefile.am (libgdk_win32_2_0_la_DEPENDENCIES): Depend on
7080         gdk.def.
7081
7082         * gdk/gdk.def
7083         * gtk/gtk.def: Add some missing entries. Thanks to Kenichi SUTO.
7084
7085         * gtk-zip.sh.in (DEVZIP): Add bin/{gtk-query-immodules-2.0,
7086         gtk-demo}.exe and share/gtk-2.0.
7087
7088         * gdk/win32/gdkwindow-win32.c (gdk_window_set_skip_taskbar_hint):
7089         Implement by setting or clearing the WS_EX_TOOLWINDOW extended
7090         window style.
7091         (gdk_window_set_type_hint): Add all cases to the switch (not all
7092         do anything, though). Handle GDK_WINDOW_TYPE_HINT_TOOLBAR by
7093         calling gdk_window_set_skip_taskbar_hint(). This means that GTK
7094         won't know that the skip_taskbar hint is on for the window, is
7095         this bad?
7096
7097 Wed Jan  8 18:43:03 2003  Manish Singh  <yosh@gimp.org>
7098
7099         * gdk/x11/gdkdisplay-x11.c: #include <stdlib.h> for putenv,
7100         <string.h> for strlen.
7101
7102         * gdk/x11/gdkscreen-x11.c: #include <stdlib.h> for getenv,
7103         <string.h> for strrchr.
7104
7105         * tests/testgtk.c (create_saved_position): "x" and "y" properties
7106         for widgets no longer exist, use gtk_window_move instead.
7107
7108         * test/testtextbuffer.c (check_get_set_text): cast strlen to
7109         int for g_error.
7110
7111 2003-01-08  Matthias Clasen  <maclas@gmx.de>
7112
7113         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix display of
7114         the selection in the presence of invisible segments.
7115
7116 2003-01-07  Matthias Clasen  <maclas@gmx.de>
7117
7118         * gtk/gtktextview.c (gtk_text_view_class_init): Bind C-/ and C-\
7119         to "select all" and "unselect all".  (#102065)
7120
7121         * gtk/gtktextview.h (struct _GtkTextView): Add a comment that
7122         the just_selected_element is unused.
7123
7124         * gtk/gtktextview.c (extend_selection): New helper function to
7125         find the range that should be added to the selection. 
7126         (selection_motion_event_handler): 
7127         (gtk_text_view_start_selection_drag): 
7128         (gtk_text_view_end_selection_drag): 
7129         (selection_motion_event_handler): 
7130         (selection_scan_timeout): Support select-by-words/lines.
7131         (gtk_text_view_button_press_event): Start a selection drag on
7132         double/triple clicks.  (#78499)
7133
7134 2003-01-06  Matthias Clasen  <maclas@gmx.de>
7135
7136         Implement a utility function proposed in #102534:
7137         
7138         * gtk/gtktextbtree.h: 
7139         * gtk/gtktextbtree.c (_gtk_text_btree_select_range): New function.
7140         (_gtk_text_btree_place_cursor): Now a simple wrapper around
7141         _gtk_text_btree_select_range().   
7142
7143         * gtk/gtktextbuffer.h: 
7144         * gtk/gtktextbuffer.c (gtk_text_buffer_select_range): New function.
7145         (gtk_text_buffer_place_cursor): Now a simple wrapper around
7146         gtk_text_buffer_select_range(). 
7147
7148 2003-01-05  Havoc Pennington  <hp@pobox.com>
7149
7150         * configure.in: fix a stray bracket that was breaking the build
7151
7152 2003-01-05  Tor Lillqvist  <tml@iki.fi>
7153
7154         * gtk-zip.sh.in: Use correct DLL and import library names, with
7155         GTK_API_VERSION in name, not GTK_MAJOR_VERSION.GTK_MINOR_VERSION.
7156         (DEVZIP): Add gdk-pixbuf-query-loaders.exe.
7157
7158         * configure.in: Improve check for dimm.h.
7159
7160         * configure.in: Set SOEXT to 'so' on Unix, 'dll' on Win32. Used in
7161         gdk-pixbuf/Makefile.am.
7162
7163         * gdk-pixbuf/makefile.mingw.in
7164         * gdk-pixbuf/pixops/makefile.mingw.in
7165         * gdk/makefile.mingw.in
7166         * gdk/win32/makefile.mingw.in
7167         * gtk/makefile.mingw.in: Remove. Not maintained anyway.
7168
7169         * gdk-pixbuf/Makefile.am
7170         * gdk-pixbuf/pixops/Makefile.am
7171         * gdk/Makefile.am
7172         * gdk/win32/Makefile.am
7173         * gtk/Makefile.am
7174         * configure.in: Remove makefile.mingw{,.in} from here, too.
7175         
7176         * README.win32: Updates. Don't mention the now removed
7177         makefile.mingw files.
7178
7179         * gdk/gdk.def
7180         * gtk/gtk.def: Add a couple of missing entries.
7181
7182         * gdk/gdkkeynames.c: Include <string.h> for strcmp() and memcpy().
7183
7184         * gdk/win32/gdkevents-win32.c: Move dimm.h header clash workaround
7185         earlier.
7186
7187         * gdk/win32/rc/Makefile.am: Add hack to help
7188         build/win32/lt-compile-resource decide which kind of libtool
7189         object file to produce.
7190
7191 2003-01-05  Matthias Clasen  <maclas@gmx.de>
7192
7193         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Make
7194         C-Down step through the sequence of paragraph ends (old behaviour
7195         included paragraph starts).  (#80340, patch by Narayana Pattipati)
7196
7197         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_first_toggle):
7198         Check for a tag toggle at the start iterator before calling
7199         gtk_text_iter_forward_to_tag_toggle().  (#102090, patch by Daniel 
7200         Elstner)
7201
7202 2003-01-04  Matthias Clasen  <maclas@gmx.de>
7203
7204         * gtk/gtkfilesel.h (struct _GtkFileSelection): Add /*< public >*/
7205         and /*< private >*/ as appropriate.  (#97211)
7206
7207 2003-01-04  Tor Lillqvist  <tml@iki.fi>
7208
7209         * Makefile.am (EXTRA_DIST): Don't distribute gtk-zip.sh, but do
7210         distribute gtk-zip.sh.in.
7211
7212         * gtk-zip.sh.in (DEVZIP): Add gdk-pixbuf-csource.exe and .1.
7213
7214 2003-01-03  Havoc Pennington  <hp@pobox.com>
7215
7216         * docs/Makefile.am (EXTRA_DIST): put it in EXTRA_DIST
7217
7218         * docs/text_widget_internals.txt: add a file documenting some of
7219         the text widget internals
7220
7221 2003-01-02  Matthias Clasen  <maclas@gmx.de>
7222
7223         * gtk/gtkwindow.c (gtk_window_get_focus): Document that it may
7224         return NULL.  (#102069)
7225
7226 2003-01-01  Matthias Clasen  <maclas@gmx.de>
7227
7228         * gtk/fnmatch.c (FNMATCH_TEST_CASES): #undef, since having
7229         a main() in the library is obviously bad. 
7230
7231 2002-12-27  Matthias Clasen  <maclas@gmx.de>
7232
7233         * gtk/gtktextview.c (gtk_text_view_drag_data_received): Place the
7234         cursor at drop point.  (#72384)
7235         (gtk_text_view_size_allocate): Update the horizontal adjustment
7236         value.  (#75694)
7237
7238 2002-12-25  Matthias Clasen  <maclas@gmx.de>
7239
7240         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix highlighting of
7241         selection wrt. to empty lines.  (#90435, #90582, #91619)
7242
7243         * gtk/gtktextview.c (gtk_text_view_preedit_changed_handler):
7244         Keep the cursor on screen.  (#96929)
7245
7246 2002-12-24  Matthias Clasen  <maclas@gmx.de>
7247
7248         * gtk/gtktextbuffer.c (paste_from_buffer): 
7249         (clipboard_text_received): Let the user action span the insertion
7250         and the deletion of the old selection.  (#82844)
7251
7252 2002-12-23  Matthias Clasen  <maclas@gmx.de>
7253
7254         * gtk/gtktextiter.c (gtk_text_iter_backward_sentence_starts):
7255         Don't call gtk_text_iter_backward_sentence_start() if
7256         count is zero.  (#99115)
7257
7258         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Call
7259         move_cursor() even if the cursor hasn't moved, since it has the
7260         side effect of canceling the selection.  (#81395, #98537, #98333)
7261
7262 2002-12-22  Matthias Clasen  <maclas@gmx.de>
7263
7264         * gtk/gtktextlayout.c (add_preedit_attrs): Don't add attributes
7265         with empty ranges.  (fixes #101564 and #80637)
7266
7267 2002-12-21  Tor Lillqvist  <tml@iki.fi>
7268
7269         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Move the code that
7270         sets the window style and extended window style, and adjusts the
7271         width and height to take the window decorations into account
7272         earlier. The adjusted width and height used to be ignored. Remove
7273         the local x, y, width and height variables, no need to further
7274         confuse the code by having local copies. (Partial fix, I hope, for
7275         #101588)
7276
7277         (gdk_window_move): When moving top-level windows, take title bar
7278         and border width into account, offsetting the coordinates before
7279         calling SetWindowPos().
7280
7281         (gdk_window_set_decorations, gdk_window_set_functions):
7282         Reimplement, taking into account the peculiar semantics of
7283         GDK_DECOR_ALL and GDK_FUNC_ALL. (#79036)
7284
7285         (gdk_window_get_decorations): Implement. (#98981)
7286         
7287         (gdk_window_set_type_hint): When setting
7288         GDK_WINDOW_TYPE_HINT_MENU, call gdk_window_set_decorations().
7289         (#79036)
7290
7291         * gdk/gdk.def: Add gdk_window_get_decorations. (#98981)
7292
7293 2002-12-21  Matthias Clasen  <maclas@gmx.de>
7294
7295         * gtk/gtktextview.c (gtk_text_view_set_background): New static
7296         function to set the background of all windows.
7297         (gtk_text_view_style_set): Use gtk_text_view_set_background().
7298         (gtk_text_view_state_changed): New function; change background
7299         according to state.  (#88126)
7300
7301 2002-12-21  Havoc Pennington  <hp@pobox.com>
7302
7303         * gtk/gtktextview.c (gtk_text_view_move_visually): fix the documentation
7304