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