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