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