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