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