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