]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-8
68265e5977f311954b7859abb8714452a2523200
[~andy/gtk] / ChangeLog.pre-2-8
1 2004-08-02  Morten Welinder  <terra@gnome.org>
2
3         * gtk/gtkentry.c (gtk_entry_motion_notify): C99ism.
4
5 Mon Aug  2 01:30:03 2004  Matthias Clasen  <maclas@gmx.de>
6
7         * gtk/gtktextview.[hc]: 
8         * gtk/gtkentry.[hc]: Add a new binding signal ::backspace,
9         bind it to the backspace key, and make it pay attention 
10         to the Pango backspace_deletes_character 
11         attribute.  (#119891, Noah Levitt, patch by Theppitak 
12         Karoonboonyanan)
13
14 Mon Aug  2 01:02:57 2004  Matthias Clasen  <maclas@gmx.de>
15
16         * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed): 
17         (gdk_check_wm_desktop_changed): Add missing error 
18         traps.  (#149011, Thomas Leonard)
19
20 Mon Aug  2 00:21:26 2004  Matthias Clasen  <maclas@gmx.de>
21
22         * gtk/gtktextview.c (blink_cb): Add the same warning
23         that the blink_cb() in GtkEntry already has.  (#148733)
24
25 Mon Aug  2 00:12:16 2004  Matthias Clasen  <maclas@gmx.de>
26
27         * gtk/gtkentry.c (gtk_entry_class_init):
28         (gtk_entry_get_alignment): 
29         (gtk_entry_set_alignment): Document the xalign property
30         and its getter and setter as 2.4 additions.  (#148978,
31         Axel Simon)
32
33 Mon Aug  2 00:11:31 2004  Matthias Clasen  <maclas@gmx.de>
34
35         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): 
36         * gtk/gtkactiongroup.c (gtk_action_group_class_init): Use
37         canonical signal names in doc comments, since gtk-doc won't
38         pick up signal docs with underscores.  
39
40 2004-08-01  Matthias Clasen  <mclasen@redhat.com>
41         
42         * configure.in: Post-release version bump
43
44         * === Released 2.5.1 ===
45  
46 Thu Jul 29 16:36:42 2004  Jonathan Blandford  <jrb@redhat.com>
47
48         * gtk/gtktreeprivate.h: New arguments
49
50         * gtk/gtktreeview.c:
51         (gtk_tree_view_class_init): Add key_release callback
52         (gtk_tree_view_init): Initialize timeout handler
53         (gtk_tree_view_unrealize): clear timeout if needed
54         (gtk_tree_view_key_press): Typeahead support
55         (gtk_tree_view_key_release): Not used yet -- will be needed for
56         typeahead.
57         (gtk_tree_view_search_entry_flush_timeout): Remove typeahead entry
58         in a timeout.
59         (gtk_tree_view_ensure_interactive_directory):
60         (gtk_tree_view_real_start_interactive_search):
61         (gtk_tree_view_search_init):
62         (gtk_tree_view_start_interactive_search): Typeahead support added.
63         (gtk_tree_view_search_dialog_hide): Clear timeout and text when we
64         hide.
65
66 Sat Jul 31 23:17:44 2004  Matthias Clasen  <maclas@gmx.de>
67
68         * NEWS: Updates
69
70 Sat Jul 31 01:13:01 2004  Matthias Clasen  <maclas@gmx.de>
71
72         * gtk/gtkwindow.c: 
73         * gtk/gtkentry.c: 
74         * gtk/gtkaction.c: Use the canonical form of signal names 
75         after "notify::". Otherwise, no notification arrives. 
76         GObject should have a warning for that, really.  (#148879, 
77         Lorenzo Gil Sánchez)
78
79 Sat Jul 31 00:42:08 2004  Matthias Clasen  <maclas@gmx.de>
80
81         * gdk/x11/gdkwindow-x11.c (gdk_window_set_keep_below): 
82         * gdk/x11/gdkwindow-x11.c (gdk_window_set_keep_above): Don't
83         set both states at once.  (#148789, Matthew Garrett)
84
85 2004-07-30  Matthias Clasen  <mclasen@redhat.com>
86
87         * gtk/gtkcombobox.c: Don't forget to destroy the row separator
88         function user data when the combo box is destroyed.
89
90 2004-07-30  Matthias Clasen  <mclasen@redhat.com>
91
92         * gtk/gtkcombobox.h: 
93         * gtk/gtkcombobox.c: Change the api for separators to use a 
94         separator function instead of a boolean column.
95
96         * tests/testcombo.c: Update to match the api change.
97
98 Fri Jul 30 02:21:41 2004  Matthias Clasen  <maclas@gmx.de>
99
100         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
101         Fix the positioning of the popup. 
102
103 Fri Jul 30 00:56:31 2004  Matthias Clasen  <maclas@gmx.de>
104
105         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_active_changed): 
106         Implement this in terms of gtk_combo_box_get_active_iter(),
107         instead of gtk_combo_box_get_active().
108
109 2004-07-29  Federico Mena Quintero  <federico@ximian.com>
110
111         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault): Add
112         a field for an "add to shortcuts" menu item.
113         (popup_menu_detach_cb): Clear out the field.
114         (file_list_build_popup_menu): Only build the menu here.
115         (file_list_update_popup_menu): Build the menu, then update the
116         sensitivity of its items.
117         (file_list_popup_menu): Use file_list_update_popup_menu().
118         (bookmarks_check_add_sensitivity): Also set the sensitivity of the
119         popup menu item.  Correctly handle the case for a *single* file.
120         Simplify a bit.
121         (bookmarks_add_selected_folder): New helper function; code moved
122         over from add_bookmark_button_clicked_cb().
123         (add_bookmark_button_clicked_cb): Use the function above.
124         (selection_check): Rather than returning a boolean value for
125         emptiness, actually return the number of selected rows.  Also,
126         simplify a bit.
127         (get_selected_path): New helper function.
128
129 2004-07-29  Anders Carlsson  <andersca@gnome.org>
130
131         * demos/gtk-demo/Makefile.am:
132         * demos/gtk-demo/clipboard.c: (copy_button_clicked),
133         (paste_received), (paste_button_clicked), (do_clipboard):
134         Add clipboard demo.
135         
136 2004-07-28  Federico Mena Quintero  <federico@ximian.com>
137
138         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
139         Store signal IDs in gulongs, not guints!
140         (gtk_file_chooser_default_hierarchy_changed): We now monitor the
141         focus widget on our toplevel to know which widget was last focused
142         at the time our "should_respond" method gets called.
143         (shortcuts_activate_selected): New helper function.
144         (shortcuts_get_selected): New helper function.
145         (remove_selected_bookmarks): Use shortcuts_get_selected().
146         (bookmarks_check_remove_sensitivity): Likewise.
147         (shortcuts_reorder): Likewise.
148         (shortcuts_activate_iter): Renamed from shortcuts_activate_item().
149         Activate by iter, not by item number.
150         (save_folder_combo_changed_cb): Use shortcuts_activate_iter().
151         (shortcuts_row_activated_cb): Likewise.
152         (gtk_file_chooser_default_should_respond): If the last focused
153         widget on the toplevel was the shortcuts list, activate the
154         selected shortcut.
155
156 2004-07-28  Matthias Clasen  <mclasen@redhat.com>
157
158         * gdk/linux-fb/gdkprivate-fb.h: Make the fb backend compile against
159         current freetype.  (#148558, Nicolas Deves)
160
161         * gtk/gtktreeview.c: Replace the EXPANDER_MAX macro by 
162         ROW_HEIGHT.  (#145528)
163
164         * gtk/gtkuimanager.c: Warning fixes.
165
166         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_background): Fix
167         prototype mismatch.  (#148589, Nicolas Deves)
168
169 2004-07-28  Anders Carlsson  <andersca@gnome.org>
170
171         * gdk/x11/gdkdrawable-x11.c (gdk_draw_rectangle_alpha_libgtk_only): 
172         Cast to 32-bit integers when premultiplying, suggested by Keith Packard.
173
174 2004-07-27  Anders Carlsson  <andersca@gnome.org>
175
176         * demos/gtk-demo/iconview.c: (do_iconview):
177         Change selection mode to multiple.
178         
179         * gdk/gdkdrawable.h:
180         * gdk/linux-fb/gdkdrawable-fb2.c:
181         (gdk_draw_rectangle_alpha_libgtk_only):
182         * gdk/win32/gdkdrawable-win32.c:
183         (gdk_draw_rectangle_alpha_libgtk_only):
184         * gdk/x11/gdkdrawable-x11.c: (gdk_x11_draw_image),
185         (get_impl_drawable), (gdk_x11_draw_pixbuf),
186         (gdk_draw_rectangle_alpha_libgtk_only):
187         Add gdk_draw_rectangle_alpha_libgtk_only which uses 
188         XRenderFillRectangle on X11. It's stubbed out on the 
189         Win32 and fb backends.
190         
191         * gtk/gtkiconview.c: 
192         (gtk_icon_view_paint_rubberband):
193         Use gdk_draw_rectangle_alpha_libgtk_only here.
194
195 2004-07-27  Anders Carlsson  <andersca@gnome.org>
196
197         * gtk/gtkaboutdialog.c: (gtk_about_dialog_init),
198         (text_view_style_set), (add_credits_page),
199         (display_credits_dialog), (display_license_dialog):
200         Remove dialog separators, fix text view background setting,
201         use Close buttons instead of OK buttons.
202         
203 2004-07-27  Matthias Clasen  <mclasen@redhat.com>
204
205         * gtk/gtktreeview.c (gtk_tree_view_ensure_interactive_directory): 
206         Add a frame around the C-f popup to stop it from merging visually
207         in whatever is underneath.
208
209         * gtk/gtkcombobox.h: 
210         * gtk/gtkcombobox.c (gtk_combo_box_get_popup_accessible): New 
211         function necessary to make GtkComboBox accessible.  (#132847, 
212         Padraig O'Briain)
213
214 Tue Jul 27 02:34:06 2004  Matthias Clasen  <maclas@gmx.de>
215
216         * gtk/gtkwidget.c (gtk_widget_dispose): Hide parentless
217         windows when disposing them.  (#133231, Michael Natterer)
218
219 2004-07-26  Matthias Clasen  <mclasen@redhat.com>
220
221         * gtk/gtklabel.c (gtk_label_class_init): Expand the documentation
222         for GtkLabel::ellipsize.
223
224 Mon Jul 26 00:38:27 2004  Matthias Clasen  <maclas@gmx.de>
225
226         Make the GtkComboBox in list mode scroll if the list is too
227         large to fit in the popup.  (#135543)
228
229         * gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Add a 
230 o       scrolled window to the popup in list mode.
231         (gtk_combo_box_list_position): Calculate the height of the
232         popup so that it fits on the screen, set the scrollbar policy
233         of the scrolled window appropriately.
234         (gtk_combo_box_popup): Use the height calculated by 
235         gtk_combo_box_list_position().
236         (gtk_combo_box_remeasure): Don't add unnecessary padding.
237         (gtk_combo_box_size_request): But add the focus with here.
238         (gtk_combo_box_list_setup): Connect to enter notify on the 
239         popup window to activate auto scrolling.
240         (gtk_combo_box_list_enter_notify): Activate auto scrolling.
241         (gtk_combo_box_list_button_pressed): Setup a timeout for
242         auto scrolling. 
243         (gtk_combo_box_list_scroll_timeout): Timeout function for
244         auto scrolling.
245         (gtk_combo_box_list_auto_scroll): Scroll the list when the 
246         pointer leaves the window.
247         
248 Sun Jul 25 19:51:17 2004  Matthias Clasen  <maclas@gmx.de>
249
250         * gtk/gtknotebook.c (gtk_notebook_scroll): Ignore scroll
251         events from the content of the page.  (#148409, Gabriel 
252         de Perthuis)
253
254 Sat Jul 24 21:38:12 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
255
256         * gtk/gtktoolbar.c (internal_insert_element): Warn if you try to
257         add a tool item to a toolbar using the deprecated API.
258
259 Fri Jul 23 13:04:10 2004  Matthias Clasen  <maclas@gmx.de>
260
261         * gtk/gtkdnd.c (gtk_drag_dest_set): Revert the change to
262         initialize target_list to an empty list instead of NULL,
263         since it broke tree dnd.  (#148215, Ernst Persson)
264
265         * gtk/gtkdnd.c (gtk_drag_dest_add_text_targets): 
266         * gtk/gtkdnd.c (gtk_drag_source_add_text_targets): Instead 
267         handle target list being NULL here.
268
269 2004-07-23  Dafydd Harries  <daf@muse.19inch.net>
270
271         * gtk/gtkradioaction.c:
272         * gtk/gtkradiobutton.c:
273         * gtk/gtkentry.c:
274         * gtk/gtkmisc.c:
275         Improve various translatable messages. (#137616)
276
277 Fri Jul 23 11:11:10 2004  Matthias Clasen  <maclas@gmx.de>
278
279         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_start_editing): 
280         Align the entry in the same way as the cell.  (#136749)
281
282 Fri Jul 23 11:01:00 2004  Matthias Clasen  <maclas@gmx.de>
283
284         * gtk/gtktextbtree.c (_gtk_text_line_previous_could_contain_tag): 
285         Don't iterate too far up. (#147965, Olivier Sessink)
286
287 Fri Jul 23 10:28:43 2004  Matthias Clasen  <maclas@gmx.de>
288
289         * gtk/gtktreeview.c (gtk_tree_view_finalize): 
290         * gtk/gtkradioaction.c (gtk_radio_action_finalize): 
291         * gtk/gtkfontsel.c (gtk_font_selection_finalize): 
292         * gtk/gtkcellview.c (gtk_cell_view_finalize): 
293         * gtk/gtkcalendar.c (gtk_calendar_finalize): 
294         * gtk/gtkactiongroup.c (gtk_action_group_finalize): Remove
295         unnecessary checks.  (#148175, Morten Welinder)
296
297 Thu Jul 22 01:42:16 2004  Matthias Clasen  <maclas@gmx.de>
298
299         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): 
300         Add a new :ellipsize property which controls ellipsization of the 
301         rendered text.  (#144835, Vincent Untz, patch by Jonathan Blandford
302         and Anders Carlsson)
303         
304         * gtk/gtkfilechooserdefault.c (create_file_list): Use ellipsization
305         for the name column.
306
307 Thu Jul 22 01:21:28 2004  Matthias Clasen  <maclas@gmx.de>
308
309         * gtk/gtkfontsel.c (gtk_font_selection_init): Add additional
310         accessability relations.  (#141804,  Padraig O'Briain)
311
312 Thu Jul 22 01:16:23 2004  Matthias Clasen  <maclas@gmx.de>
313
314         * gtk/gtkcombobox.c: Avoid some warnings.
315
316 Thu Jul 22 01:05:16 2004  Matthias Clasen  <maclas@gmx.de>
317
318         * configure.in: Require Pango 1.5.1 (for ellipsisation).
319
320         * gtk/gtklabel.h: 
321         * gtk/gtklabel.c (gtk_label_class_init): Add a new :ellipsize
322         property which controls ellipsization of the label.  (#125250, 
323         Tim Van Wassenhove, patch by James M. Cape)
324
325         * tests/testellipsise.c: Simple test for ellipsizsation.
326
327 Wed Jul 21 22:46:27 2004  Matthias Clasen  <maclas@gmx.de>
328
329         * gtk/gtkcombobox.c (gtk_combo_box_new_text): Don't leak the
330         list store.  (#148134, Crispin Flowerday)
331
332 Wed Jul 21 22:35:47 2004  Matthias Clasen  <maclas@gmx.de>
333
334         * gtk/gtkcombobox.c (gtk_combo_box_destroy): Don't leak the
335         menu.  (#148110, Tommi Komulainen)
336
337 Wed Jul 21 22:24:10 2004  Matthias Clasen  <maclas@gmx.de>
338
339         * gtk/gtkcellview.c (gtk_cell_view_finalize): Don't leak
340         tree model and tree row reference.  (#148125, Crispin Flowerday)
341
342 Wed Jul 21 22:17:06 2004  Matthias Clasen  <maclas@gmx.de>
343
344         * tests/testcombo.c (main): Don't leak models.  (#148128,
345         Tommi Komulainen)
346
347 Wed Jul 21 21:26:08 2004  Matthias Clasen  <maclas@gmx.de>
348
349         * gtk/gtkviewport.c (viewport_set_adjustment): Don't leak
350         the adjustments.  (#148089, Tommi Komulainen)
351
352 Wed Jul 21 21:20:21 2004  Matthias Clasen  <maclas@gmx.de>
353
354         * gtk/gtktreeview.c (gtk_tree_view_destroy): Don't leak
355         the adjustments.  (#148073, Tommi Komulainen)
356
357 Wed Jul 21 21:04:50 2004  Matthias Clasen  <maclas@gmx.de>
358
359         * gtk/gtktoolbar.c (gtk_toolbar_finalize): Don't leak the 
360         arrow.  (#148064, Tommi Komulainen)
361
362 2004-07-21  Matthias Clasen  <mclasen@redhat.com>
363
364         * gtk/gtkcalendar.c: Use the new text target functionality
365         in GtkTargetList instead of hardcoding a subset of text targets.
366
367 Tue Jul 20 23:11:23 2004  Matthias Clasen  <maclas@gmx.de>
368
369         * gdk/x11/gdkevents-x11.c: Hook up gtk-menu-bar-accel to
370         an XSetting, Gtk/MenuBarAccel.  (#120859, Scott James Remnant)
371
372 Tue Jul 20 22:26:29 2004  Matthias Clasen  <maclas@gmx.de>
373
374         * gtk/gtkfilechooserutils.h: 
375         * gtk/gtktoolbutton.c: 
376         * gtk/gtktoolbar.c: 
377         * gtk/gtkicontheme.c: 
378         * gtk/gtkcalendar.c: 
379         * demos/gtk-demo/ui_manager.c: 
380         * demos/gtk-demo/appwindow.c: Remove trailing commas
381         from enumerations.  (#148035)
382
383 2004-07-20  Federico Mena Quintero  <federico@ximian.com>
384
385         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): Fix the
386         documentation comment for the editing-started signal.
387
388         * gtk/gtkmarshalers.list: Added VOID:OBJECT,STRING for
389         GtkCellRenderer::editing-started.
390
391 2004-07-20  Matthias Clasen  <mclasen@redhat.com>
392
393         * tests/testactions.c (main): 
394         * tests/testmerge.c (main): Add some refcount debugging.
395
396         * gtk/gtkuimanager.c (update_node, free_node): Ref an sink
397         all proxies, so that we can properly clean up floating proxies
398         which the app didn't adopt.  (#147926, Tommi Komulainen)
399
400 2004-07-20  Matthias Clasen  <mclasen@redhat.com>
401
402         Allow custom initialization of cell editables.  (#147221)
403         
404         * gtk/gtkcellrenderer.h (struct _GtkCellRendererClass): 
405         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): Add a 
406         ::editing-started signal as a hook for setting up the 
407         GtkCellEditable.
408         (gtk_cell_renderer_start_editing): ...and emit it here.
409
410 Mon Jul 19 23:51:50 2004  Matthias Clasen  <maclas@gmx.de>
411
412         * gtk/gtktreeview.c (gtk_tree_view_button_press): Set drag_pos
413         before grabbing the focus, since we may reenter into 
414         gtk_tree_view_motion_resize_column() which requires drag_pos
415         to be set.  (#147913, Guilherme Salgado, patch by John Finlay) 
416
417 Mon Jul 19 23:51:50 2004  Matthias Clasen  <maclas@gmx.de>
418
419         * gtk/gtktreeview.c (gtk_tree_view_enter_notify): Don't
420         use uninitialized node pointer.  (#147911, Peter Zelezny)
421
422 Tue Jul 20 04:34:56 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
423
424         * configure.in: Bump version number
425
426 Sun Jul 18 17:21:10 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
427
428         * === Released 2.5.0 ===
429
430         * NEWS: updates
431
432         * tests/testcombo.c: Fix compilation
433
434 2004-07-19  Matthias Clasen  <mclasen@redhat.com>
435
436         * gtk/gtkentrycompletion.c (gtk_entry_completion_set_popup_completion):
437         Fix doc comment.
438         
439 2004-07-19  Matthias Clasen  <mclasen@redhat.com>
440
441         Make GtkCellView public, since people seem to have uses for it, 
442         it is clean API and we were just conservative in not making it 
443         public initially. At the same time, get rid of GtkCellViewMenuItem,
444         which doesn't have any function which can't be served by a
445         GtkMenuItem with a GtkCellView child.  (#136637, Padraig O'Briain)
446
447         * gtk/gtk.h: Include gtkcellview.h
448
449         * gtk/Makefile.am (gtk_public_h_sources): 
450
451         * gtk/Makefile.am (gtk_private_h_sources): 
452         (gtk_c_sources): Remove gtkcellviewmenuitem.[hc]
453         * gtk/gtkcombobox.c: Replace all uses of GtkCellViewMenuItem by
454         GtkMenuItem with a GtkCellView child.
455
456         * gtk/gtkcellviewmenuitem.[hc]: Removed.
457
458 2004-07-19  Matthias Clasen  <mclasen@redhat.com>
459
460         Support inline autocompletion in entries  (#135953)
461         
462         * gtk/gtkentryprivate.h: 
463         * gtk/gtkentrycompletion.h: 
464         * gtk/gtkentrycompletion.c (gtk_entry_completion_class_init): 
465         Add a new signal ::insert-prefix which can be used to override 
466         the default inline-completion behaviour. Add two new boolean
467         properties, :popup_completion and :inline_completion which
468         determine how the possible completions should be presented.
469         (gtk_entry_completion_insert_prefix): New function to request
470         a prefix insertion. 
471
472         * gtk/gtkentry.c: Add the necessary glue for inline completion. 
473
474 Sun Jul 18 15:28:24 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
475
476         * gtk/gtkdnd.c (gtk_drag_source_set, gtk_drag_dest_set): Create an
477         empty target list if targets is NULL.
478
479         * configure.in: Add check for X11/extensions/sync.h. (#147416,
480         Morten Welinder)
481
482 Sun Jul 18 01:24:31 2004  Matthias Clasen  <maclas@gmx.de>
483
484         * NEWS: Updates for 2.5.0
485
486 Sat Jul 17 23:11:04 2004  Matthias Clasen  <maclas@gmx.de>
487
488         * gtk/gtkiconview.h:
489         * gtk/gtkiconview.c (gtk_icon_view_class_init): 
490         * gtk/gtkiconview.c (gtk_icon_view_set_orientation): 
491         * gtk/gtkiconview.c (gtk_icon_view_get_orientation): 
492         * gtk/gtkiconview.c (gtk_icon_view_calculate_item_size): 
493         * gtk/gtkiconview.c (gtk_icon_view_layout_single_row): 
494         Add a new :orientation property to determine whether text
495         is positioned below or beside icons.  (#147463)
496
497 Sat Jul 17 23:03:30 2004  Matthias Clasen  <maclas@gmx.de>
498
499         * gtk/gtkiconview.c (gtk_icon_view_paint_item): 
500         * gtk/gtkiconview.c (gtk_icon_view_calculate_item_size): 
501         * gtk/gtkiconview.c (gtk_icon_view_layout_single_row): Draw 
502         focus indicator outside the selection, respect focus 
503         line width.  (#147460) 
504
505 Sat Jul 17 01:17:33 2004  Matthias Clasen  <maclas@gmx.de>
506
507         * gdk/x11/gdkdnd-x11.c (xdnd_check_dest): Fix a warning
508         message.
509
510 Sat Jul 17 00:48:27 2004  Matthias Clasen  <maclas@gmx.de>
511
512         Support text/plain selection target  (#55117, Owen Taylor)
513         
514         * gtk/gtkselection.h: 
515         * gtk/gtkdnd.h: 
516         * gtk/gtkselection.c (gtk_target_list_add_text_targets): 
517         * gtk/gtkdnd.c (gtk_drag_dest_add_text_targets): 
518         * gtk/gtkdnd.c (gtk_drag_source_add_text_targets): New
519         functions to facilitate handling of text targets.
520
521         * gtk/gtkentry.c: 
522         * gtk/gtktextview.c: Use the new text target handling 
523         functions instead of hardwiring the list of supported
524         text targets everywhere.
525
526         * gtk/gtkselection.c (gtk_selection_data_get_text): 
527         (gtk_selection_data_set_text): 
528         Support the targets text/plain, text/plain?charset=utf-8
529         and text/plain?charset=<LOCALE-CHARSET> as outlined in
530         #55117: 
531         For text/plain send only ASCII, but accept 8-bit text 
532         and treat it as ISO-8859-1 as specified by the Xdnd spec.
533         Always send CRLF terminators. Accept either and convert
534         into the native terminator for the platform.
535         
536 Fri Jul 16 23:20:34 2004  Matthias Clasen  <maclas@gmx.de>
537
538         Support themed window icons.  (#92346, Calum Benson)
539         
540         * gtk/gtkicontheme.c (gtk_icon_theme_get_icon_sizes): New 
541         function to obtain information about the sizes in which an
542         icon is available.  
543
544         * gtk/gtkwindow.h: 
545         * gtk/gtkwindow.c (gtk_window_class_init): 
546         (gtk_window_set_icon_name): 
547         (gtk_window_get_icon_name): Add an "icon_name" property
548         (gtk_window_set_default_icon_name): ...and a default icon name. 
549         (icon_list_from_theme): 
550         (update_themed_icon): New auxiliary functions to create a 
551         list of all available sizes of a themed icon and update the
552         window icon list from it.
553
554 2004-07-16  Matthias Clasen  <mclasen@redhat.com>
555
556         * gtk/gtkcombobox.c (gtk_combo_box_scroll_event): Make 
557         scrolling work if no item is selected.
558         (gtk_cell_editable_key_press): Don't eat space.
559
560         Add a combo box cell renderer (#139347, Lorenzo Gil Sanchez)
561         
562         * gtk/gtkcellrenderercombo.[hc]: New Files.
563
564         * gtk/gtk.h: 
565         * gtk/Makefile.am (gtk_public_h_sources, gtk_c_sources): 
566         Add the new files.
567
568         * gtk/gtkcombobox.[hc]: Implement GtkCellEditable, add a 
569         :has-frame property for suppressing the frame around 
570         the child and redo the size allocation logic to take 
571         focus width into account.
572
573         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): 
574         Acknowledge the GtkComboBox:has-frame property and make
575         the entry fill its allocation vertically.
576
577         * gtk/gtkmarshalers.list: Add BOOLEAN:STRING.
578                 
579         * gtk/gtktreeview.c (gtk_tree_view_remove_widget): Queue
580         a draw here to keep non-widget windows from leaving 
581         shadows behind.
582
583 2004-07-16  Matthias Clasen  <mclasen@redhat.com>
584
585         * gtk/gtkcombobox.c (gtk_combo_box_forall): Don't iterate
586         multiple times over some of the children. 
587
588 Thu Jul 15 22:19:40 2004  Matthias Clasen  <maclas@gmx.de>
589
590         Fix #60128, #58307, #144706:
591         
592         * gtk/gtkstyle.c (gtk_style_real_copy): Handle references
593         to bg_pixmaps properly.
594         (gtk_style_real_unrealize): Don't keep dangling references
595         to the bg_pixmaps.  
596         (gtk_style_attach): Split the loop into two loops, first 
597         looking for a matching style, then for an empty one.
598         (gtk_style_finalize): 
599         (gtk_style_duplicate): Add comments explaining the handling
600         of style->styles.
601
602 Thu Jul 15 20:31:28 2004  Matthias Clasen  <maclas@gmx.de>
603
604         * gtk/gtkspinbutton.c (start_spinning): Install the timeout
605         before changing the value, so that a ::value_changed handler
606         has a chance to remove it.  (#122427, Elke Meier)
607
608 Thu Jul 15 19:20:05 2004  Matthias Clasen  <maclas@gmx.de>
609
610         * gdk/x11/gdkgtk+/im-x11.c (_gdk_x11_initialize_locale): 
611         * gtk/gtkcalendar.c (gtk_calendar_class_init): Use 'cannot'
612         instead of 'can not' in messages.  (#144226, Morten Welinder)
613
614 2004-07-15  Matthias Clasen  <mclasen@redhat.com>
615
616         * gtk/gtktreeview.c (gtk_tree_view_class_init): 
617         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 
618         Correct the declared default values of several properties
619         to be in sync with the actual initial values.
620
621         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): 
622         Make spacing a property, correct the declared default values 
623         of several properties to be in sync with the actual initial 
624         values.  (#147654, Matthias Clasen)
625
626         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state): Don't reparent
627         back to menu->toplevel if it is already gone because we're
628         shutting down.  (#147656, John Cupitt)
629
630 2004-07-14  Federico Mena Quintero  <federico@ximian.com>
631
632         Fix #126295:
633
634         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Draw a focus
635         indicator along the edge of the bin_window when the tree is empty.
636         (grab_focus_and_unset_draw_keyfocus): New helper function.
637         (gtk_tree_view_button_press): Remove a bit of superfluous code.
638         Use the helper function to save on duplicated code.
639         (gtk_tree_view_button_press): Grab the focus if the tree is empty.
640         (gtk_tree_view_focus): Allow focusing into an empty tree.
641
642 2004-07-14  Matthias Clasen  <mclasen@redhat.com>
643
644         * gtk/gtkaboutdialog.c (add_credits_page): Don't use
645         gcc extensions for the ternary ?: operator.  (#147590,
646         Damien Carbery)
647
648 2004-07-14  Federico Mena Quintero  <federico@ximian.com>
649
650         Fix #144405, patch by Padraig O'Briain <padraig.obriain@sun.com>:
651
652         * gtk/gtkfilechooserdefault.c (shortcuts_list_create): Set the
653         accessible object name for the tree view.
654         (create_file_list): Likewise.
655
656 Tue Jul 13 21:53:08 2004  Matthias Clasen  <maclas@gmx.de>
657
658         * gtk/gtkicontheme.c (free_unthemed_icon): Don't leak
659         no_svg_filename.  (#147399, Kjartan Maraas)
660
661 2004-07-13  Matthias Clasen  <mclasen@redhat.com>
662
663         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_get_neighbor_sizes): 
664         Make this work in RTL context.
665
666 2004-07-13  Federico Mena Quintero  <federico@ximian.com>
667
668         * gtk/gtkfilechooserdefault.c (shortcuts_activate_volume): Set a
669         busy cursor while mounting the volume.  Also, ref the chooser
670         while mounting, as we may re-enter.  Fixes #139376.
671
672 2004-07-13  Matthias Clasen  <mclasen@redhat.com>
673
674         * gtk/gtktreeview.c (gtk_tree_view_adjustment_changed): 
675         Prepare to handle composite implementations of
676         GtkCellEditable, but recursively poking at
677         allocation->y (hack stolen from GtkCList).
678         (check_expander_max): Tweak the warning.
679
680         * gtk/gtkmain.h: Add gtk_parse_args(), its a public 
681         function.  (#147476, Owen Taylor)
682
683         * gtk/gtkcombobox.c (gtk_combo_box_popdown): Don't
684         crash if unrealized.
685
686 Tue Jul 13 01:50:06 2004  Matthias Clasen  <maclas@gmx.de>
687
688         * gtk/gtkaboutdialog.c (display_credits_dialog): Don't
689         display untranslated translator credits. 
690
691 Tue Jul 13 01:15:05 2004  Matthias Clasen  <maclas@gmx.de>
692
693         * gtk/gtkiconview.c: Some documentation updates.
694
695 Tue Jul 13 00:40:29 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
696
697         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Do an
698         empty begin_paint_region()/end_paint() for windows without
699         EXPOSURE_MASK.
700
701         * gdk/x11/gdkwindow-x11.c (_gdk_x11_window_tmp_unset_bg,
702         _gdk_x11_window_tmp_reset_bg): Remove checks for EXPOSURE_MASK.
703
704 2004-07-12  Matthias Clasen  <mclasen@redhat.com>
705
706         * demos/gtk-demo/appwindow.c: Use a GtkAboutDialog.
707
708         * gtk/gtkaboutdialog.h: 
709         * gtk/gtkaboutdialog.c: New widget: GtkAboutDialog.
710
711         * gtk/Makefile.am (gtk_public_h_sources, gtk_c_sources): 
712         * gtk/gtk.h: Add GtkAboutDialog. (#109435, Paolo Borelli,
713         patch by Matthias Clasen)
714
715         * gtk/gtkrc.c (_gtk_rc_init): Apply the gtk-default-menu-item-style 
716         to cell view menu items as well.  (#147405, John Cupitt)
717
718         * gtk/gtkentrycompletion.c: Warning fixes.  (#147420,
719         Morten Welinder)
720
721         * gtk/gtkcombobox.c (gtk_combo_box_destroy): Pop down 
722         first. (#147399, John Cupitt)
723
724 Mon Jul 12 01:56:26 2004  Matthias Clasen  <maclas@gmx.de>
725
726         * gdk/x11/gdkwindow-x11.c (gdk_toplevel_x11_free_contents): 
727         Include the update_counter check in the HAVE_XSYNC condition,
728         since update_counter isn't present in the !HAVE_XSYNC case.
729
730 Mon Jul 12 00:52:04 2004  Matthias Clasen  <maclas@gmx.de>
731
732         * gtk/stock-icons/Makefile.am: 
733         * gtk/stock-icons/stock_about_{16,24}.png: 
734         * gtk/stock-icons/stock_connect_{16,24}.png: 
735         * gtk/stock-icons/stock_disconnect_{16,24}.png: 
736         * gtk/stock-icons/stock_edit_{16,24}.png: 
737         * gtk/stock-icons/stock_media_forward_{16,24}.png: 
738         * gtk/stock-icons/stock_media_next_{16,24}.png: 
739         * gtk/stock-icons/stock_media_pause_{16,24}.png: 
740         * gtk/stock-icons/stock_media_play_{16,24}.png: 
741         * gtk/stock-icons/stock_media_previous_{16,24}.png: 
742         * gtk/stock-icons/stock_media_record_{16,24}.png: 
743         * gtk/stock-icons/stock_media_rewind_{16,24}.png: 
744         * gtk/stock-icons/stock_media_stop_{16,24}.png: 
745         * gtk/gtkstock.h (GTK_STOCK_ABOUT): 
746         * gtk/gtkstock.h (GTK_STOCK_CONNECT): 
747         * gtk/gtkstock.h (GTK_STOCK_DISCONNECT): 
748         * gtk/gtkstock.h (GTK_STOCK_EDIT): 
749         * gtk/gtkstock.h (GTK_STOCK_MEDIA_FORWARD): 
750         * gtk/gtkstock.h (GTK_STOCK_MEDIA_NEXT): 
751         * gtk/gtkstock.h (GTK_STOCK_MEDIA_PAUSE): 
752         * gtk/gtkstock.h (GTK_STOCK_MEDIA_PLAY): 
753         * gtk/gtkstock.h (GTK_STOCK_MEDIA_PREVIOUS): 
754         * gtk/gtkstock.h (GTK_STOCK_MEDIA_RECORD): 
755         * gtk/gtkstock.h (GTK_STOCK_MEDIA_REWIND): 
756         * gtk/gtkstock.h (GTK_STOCK_MEDIA_STOP): 
757         * gtk/gtkiconfactory.c (get_default_icons): 
758         * gtk/gtkstock.c (builtin_items): Add a number of new stock 
759         items.  (#102530, #68015, #109811, Jordi Mallach, Benjamin Otte,
760         Michael Opdenacker)
761
762 Sun Jul 11 15:24:03 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
763
764         Bug 143330, support update counter spec.
765         
766         * configure.in: Add check for the Sync extension
767
768         * gdk/gdkwindow.h: gdk_window_enable_synchronized_configure() and
769         gdk_window_configure_finished()
770
771         * gtk/gtkwindow.c (gtk_window_move_resize): Call gdk_window_finish_configure().
772         * gtk/gtkwindow.c (gtk_window_realize): Automatically enable
773         synchronized configures.
774
775         * gdk/x11/gdkwindow-x11.h (struct _GdkToplevelX11): Store current
776         and pending counter values. 
777
778         * gdk/x11/gdkwindow-x11.c (gdk_window_configure_finished): New function.
779         * gdk/x11/gdkwindow-x11.c
780         (gdk_window_enable_synchronized_configure): New function.
781         * gdk/x11/gdkwindow-x11.c (gdk_toplevel_x11_free_contents):
782         Delete update counter.
783         * gdk/x11/gdkwindow-x11.c (set_wm_protocols): Advertise
784         _NET_WM_SYNC_REQUEST when Sync is available
785
786         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Handle
787         _NET_WM_SYNC_REQUEST messages
788         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Save counter
789         value for use by gdk_window_configure_finished() when receiving
790         ConfigureNotifies.
791
792         * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add use_sync flag
793         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Check if the XSync
794         extension is available
795         * gdk/x11/gdkdisplay-x11.c: Add _NET_WM_SYNC_REQUEST and
796         _NET_WM_SYNC_REQUEST_COUNTER to list of supported atoms.
797
798         * gdk/linux-fb/gdkwindow-fb.c, gdk/win32/gdkwindow-win32.c: Add
799         stubs for enable_synchronized_configure() and configure_finished()
800
801 Sat Jul 10 23:35:13 2004  Matthias Clasen  <maclas@gmx.de>
802
803         * gtk/gtkentry.c (paste_received): Make middle-button pasting
804         work as expected inside the entry.  (#116789, Scott Bronson)
805
806 Sat Jul 10 22:13:53 2004  Matthias Clasen  <maclas@gmx.de>
807
808         * gtk/gtktextbuffer.c (gtk_text_buffer_select_range): Update 
809         clipboards.  (#142805, Mikael Hallendal)
810
811 Sun Jul 11 01:38:48 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
812
813         * gtk/gtkpaned.c (gtk_paned_expose): Remove clip-region computing
814         code. Just use &paned->handle_pos.
815
816 Sun Jul 11 01:12:50 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
817
818         Bug 144271
819         
820         * gtk/gtknotebook.c (gtk_notebook_size_allocate): Remove an
821         unnecessary redraw..
822
823         * gtk/gtknotebook.c (gtk_notebook_page_allocate): Remove some
824         incorrect redraws.
825
826 Sat Jul 10 01:33:25 2004  Matthias Clasen  <maclas@gmx.de>
827
828         * docs/RELEASE-HOWTO: Updates.
829
830 Sat Jul 10 01:55:29 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
831
832         * gdk/x11/gdkwindow-x11.c (_gdk_x11_window_tmp_{re|un}set_bg):
833         Insert checks for root window. The root window is never mapped.
834
835 Sat Jul 10 01:06:05 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
836
837         * gdk/x11/gdkwindow-x11.c (post_unmap): Fix a warning
838         * gdk/x11/gdkwindow-x11.c (show_window_internal): Actually unset
839         bg.
840
841 Sat Jul 10 00:37:45 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
842
843         Bug 113310.
844         
845         * gdk/x11/gdkwindow-x11.c (_gdk_x11_window_tmp_{un|re}set_bg):
846         New functions that can do a recursive unset/reset bg.
847
848         * gdk/x11/gdkgeometry-x11.c: Remove
849         gdk_window_tmp_{un|re}set_bg().
850
851         * gdk/x11/gdkwindow-x11.c (pre_unmap, post_unmap): New functions
852         called before and after unmapping a window. They unset the
853         background of all other windows to prevent flicker from the X
854         server repainting the background. post_unmap() also invalidates
855         the parent of the unmapped window to draw it without roundtrips.
856
857         * gdk/x11/gdkwindow-x11.c (show_window_internal): Unset
858         background of newly mapped windows and all desendants to prevent
859         flicker.
860         
861 Fri Jul  9 15:33:55 2004  Manish Singh  <yosh@gimp.org>
862
863         * gdk/gdkevents.c: have a dummy case GDK_OWNER_CHANGE in switch
864         statements to avoid gcc warnings about not all enum values handled.
865
866         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): ignore should live in 
867         #ifdef HAVE_XFIXES.
868
869 Fri Jul  9 23:26:09 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
870
871         (Bug 113340)
872
873         * gdk/x11/gdkwindow-x11.h (struct _GdkWindowImplX11): Add an
874         "override_redirect" bit.
875
876         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set it here.
877         
878         * gdk/x11/gdkwindow-x11.c (gdk_window_move, gdk_window_resize,
879         gdk_window_move_resize): 
880         Update the local size/position cache
881         immediately for override redirect windows.
882
883         * gdk/x11/gdkwindow-x11.c (show_window_internal): Invalidate
884         newly mapped child and override redirect windows.
885
886 2004-07-09  Federico Mena Quintero  <federico@ximian.com>
887
888         Fixes #137031:
889
890         * gtk/gtkfilesystemunix.c (get_fallback_icon): New helper
891         function, fetches a stock icon as a fallback.
892         (gtk_file_system_unix_volume_render_icon): Fall back to a stock
893         icon.
894         (gtk_file_system_unix_render_icon): Fall back to a stock icon.
895         Use helper functions rather than being a mega-function.
896         (get_icon_name_for_directory): Renamed from
897         get_icon_for_directory().
898         (get_icon_type_from_path): New helper function; code pulled out
899         from gtk_file_system_unix_render_icon().
900         (get_special_icon): Likewise.
901         (get_icon_for_mime_type): Likewise.
902
903 2004-07-09  Federico Mena Quintero  <federico@ximian.com>
904
905         * gdk/x11/gdkdnd-x11.c (xdnd_send_xevent): Fix typo; tmp_event ->
906         temp_event.
907
908 2004-07-09  Matthias Clasen  <mclasen@redhat.com>
909
910         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Use the 
911         requisition of the widget instead of relying on the style
912         drawing function to supply the size of the drawable.  (#146531) 
913
914 2004-07-09  Matthias Clasen  <mclasen@redhat.com>
915
916         Make GtkEntry work harder to protect passwords:  (#143955,
917         Morten Welinder)
918         
919         * gtk/gtkentry.c (gtk_entry_destroy): Add a destroy handler
920         to clear the password even if the widget is leaked.
921
922         * gtk/gtkentry.c (gtk_entry_real_delete_text): 
923         * gtk/gtkentry.c (gtk_entry_finalize): Zero out the memory
924         before freeing it.
925         
926         * gtk/gtkentry.c (gtk_entry_real_insert_text): Zero and free
927         the old memory instead of just reallocating it.
928
929         * gtk/gtkentry.c (gtk_entry_create_layout): Don't leak text
930         direction information for passwords.
931
932 2004-07-09  Matthias Clasen  <mclasen@redhat.com>
933
934         * gtk/gtkstyle.c: Fix some cases where style functions were 
935         not handling widget == NULL properly.  (#146282)
936
937 Thu Jul  8 22:38:58 2004  Matthias Clasen  <maclas@gmx.de>
938
939         * gtk/gtktreeview.c: Improve the EXPANDER_MAX warning.
940
941 2004-07-08  Federico Mena Quintero  <federico@ximian.com>
942
943         Fix #139290:
944
945         * gtk/gtkfilesystemmodel.c (_gtk_file_system_model_new): Add a
946         GError argument.  Do check for errors when getting the
947         GtkFileFolder:  get the folder and read the children before
948         actually creating the model.  Removed obsolete code that handled
949         roots-changed on the file system.
950         (file_model_node_get_info): Assert that we don't reach the old
951         case to display file system roots.
952         (roots_changed_callback): Removed.
953
954         * gtk/gtkfilechooserdefault.c (set_list_model): Add a GError
955         argument, and a boolean return value.  Return an error if we
956         cannot create the file system model.  On error, set a NULL model
957         on the tree.
958         (gtk_file_chooser_default_set_current_folder): Use the error value
959         from set_list_model().
960         (gtk_file_chooser_default_set_property): Set the show_hidden
961         property only if the browse_files_model exists.
962         (gtk_file_chooser_default_unselect_path): Only operate if the
963         browse_files_model exists.
964         (check_preview_change): Check whether we have the sort_model.
965         (change_folder_and_display_error): Copy the path we get passed
966         before using it.  There's a comment in there that explains why we
967         need to copy it; basically, if the passed path belongs to the
968         model, the model may go away in the middle of this function and
969         we'll be left with a dangling pointer.
970         (install_list_model_filter): Assert that the model is not NULL.
971         (set_current_filter): Check whether the model exists.
972
973         * gtk/gtktreeselection.c (gtk_tree_selection_get_selected): Don't
974         g_return_if_fail if the model is NULL.
975         (gtk_tree_selection_get_selected_rows): Likewise.
976         (gtk_tree_selection_count_selected_rows): Likewise.
977         (gtk_tree_selection_selected_foreach): Likewise.
978         (gtk_tree_selection_path_is_selected): Likewise; rather just
979         return FALSE.
980         (gtk_tree_selection_select_all): Likewise.
981         (gtk_tree_selection_unselect_all): Likewise.
982         (gtk_tree_selection_select_range): Do g_return_if_fail() if the
983         model is NULL.
984         (gtk_tree_selection_unselect_range): Likewise.
985
986         * gtk/gtkfilesystemunix.c (fill_in_names): Return immediately if
987         g_dir_open() fails:  there is no need to set the error ourselves,
988         as g_dir_open() already does it.
989
990 2004-07-08  Matthias Clasen  <mclasen@redhat.com>
991
992         * gtk/gtktreeview.c (gtk_tree_view_set_search_equal_func): Allow
993         to restore the default search function.  (#145365, John Finlay) 
994
995         * gdk/x11/gdkdnd-x11.c (xdnd_send_xevent): Don't leak 
996         references to the drag context.  (#144324, Alex Larsson)
997
998 Thu Jul  8 00:31:34 2004  Matthias Clasen  <maclas@gmx.de>
999
1000         * gtk/gtktreeview.c (gtk_tree_view_set_model): Stop editing
1001         when a new model is set.  (#145566, Dmitry M. Shatrov)
1002
1003 Wed Jul  7 23:44:32 2004  Matthias Clasen  <maclas@gmx.de>
1004
1005         * gtk/gtkimage.c (gtk_image_expose): Make sure that subpixbufs
1006         are properly aligned for gdk_pixbuf_saturate_and_pixelate(),
1007         in order to avoid rendering artifacts from misaligned 
1008         pixelation patterns.  (#145585, Felipe Heidrich, Billy Biggs)
1009
1010 2004-07-07  Matthias Clasen  <mclasen@redhat.com>
1011
1012         * gtk/gtktreeview.c: 
1013         * gtk/gtktreeview.h: Small documentation fixes.
1014
1015 2004-07-07  Matthias Clasen  <mclasen@redhat.com>
1016
1017         Support separators in combo boxes and more generally in tree 
1018         views  (#135873):
1019         
1020         * gtk/gtkcombobox.h: 
1021         * gtk/gtkcombobox.c (gtk_combo_box_get_row_separator_column):
1022         * gtk/gtkcombobox.c (gtk_combo_box_set_row_separator_column):
1023         Add a ::row-separator-column property with getter and setter, 
1024         which can indicate a boolean model column to determine which
1025         rows are separators. 
1026
1027         * gtk/gtkcombobox.c: Display separator rows as separator menu 
1028         items in menu mode, and by using the new treeview separator 
1029         functionality in list mode.
1030
1031         * gtk/gtktreeview.h: 
1032         * gtk/gtktreeprivate.h:
1033         * gtk/gtktreeview.c (gtk_tree_view_get_row_separator_func): 
1034         * gtk/gtktreeview.c (gtk_tree_view_set_row_separator_func): 
1035         Add a callback to determine whether a row is a separator.
1036         
1037         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): 
1038         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): 
1039         * gtk/gtktreeview.c (validate_row): Use the new callback
1040         to determine whether a row is a separator, and draw it
1041         as a separator then. Since separators should take up less
1042         vertical space than regular rows, this requires removing
1043         the redundant MAX(...,expander_size) calls which appear in
1044         many places. Instead, the MAX() is now only done in 
1045         validate_row(), and only if the row is not a separator.
1046         To catch possible side effects of this intrusive change,
1047         I have left EXPANDER_MAX() calls in place of the MAX() calls
1048         which will emit a warning if something breaks. They should
1049         be removed before 2.6.
1050
1051         * gtk/gtktreeselection.c (row_is_selectable): Don't let 
1052         separator rows be selected.
1053         
1054         * tests/testcombo.c (create_blaat): Add a separator column.
1055
1056 Tue Jul  6 22:58:00 2004  Matthias Clasen  <maclas@gmx.de>
1057
1058         * gdk/x11/gdkwindow-x11.c (gdk_x11_window_set_user_time): Fix
1059         a 64bit alignment issue.  (#144302, Sunil)
1060
1061 2004-07-07  Tor Lillqvist  <tml@iki.fi>
1062
1063         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text)
1064         * gdk/win32/gdkfont-win32.c (gdk_text_extents)
1065         * gdk/win32/gdkproperty-win32.c (find_common_locale,
1066         gdk_property_change)
1067         * gdk/win32/gdkselection-win32.c (gdk_selection_convert): Use
1068         g_utf8_to_utf16() instead of the removed _gdk_utf8_to_ucs2() (see
1069         below).
1070
1071         * gdk/win32/gdkglobals-win32.c
1072         * gdk/win32/gdkmain-win32.c (_gdk_windowing_init)
1073         * gdk/win3/gdkprivate-win32.h: Add a variable for the TARGETS
1074         atom. Initialize it. Declare it. Drop the variable for the
1075         COMPOUND_TEXT atom.
1076
1077         * gdk/win32/gdkim-win32.c (gdk_wcstombs): Don't return UTF-8. This
1078         function is supposed to return the string in the locale's charset
1079         and encoding. Use g_convert().
1080
1081         (gdk_mbstowcs): Similarily, don't take an UTF-8 string, but a
1082         string in the locale's charset. Use g_convert().
1083
1084         (_gdk_ucs2_to_utf8, _gdk_utf8_to_wcs, _gdk_utf8_to_ucs2):
1085         Delete. The UCS-2 functions didn't handle surrogates anyway. Use
1086         GLib's UTF-16 functions instead. Windows uses UTF-16.
1087
1088         * gdk/win32/gdkprivate-win32.h: Remove declarations of the deleted
1089         functions mentioned above.
1090
1091         * gdk/win32/gdkproperty-win32.c (gdk_property_change): Use CF_TEXT
1092         also if the string is of type STRING, i.e. ISO-8859-1, and the
1093         current codepage is 1252, and contains no C1 chars. Accept
1094         also UTF8_STRING.
1095
1096         * gdk/win32/gdkselection-win32.c (_gdk_selection_property_store):
1097         Mark as static. When storing STRING data, convert to
1098         Latin-1. (#140537)
1099         (gdk_selection_owner_set_for_display): Now that STRING is always
1100         ISO-8859-1, use UTF8_STRING when sending the selection request
1101         to ourselves.
1102
1103         (gdk_selection_convert): Handle also UTF8_STRING. (#140537, John
1104         Ehresman)
1105
1106         (gdk_text_property_to_text_list_for_display): Make work more like
1107         X11 version. Do obey the encoding parameter.
1108
1109         (gdk_string_to_compound_text_for_display,
1110         gdk_utf8_to_compound_text_for_display): Don't even pretend
1111         supporting COMPOUND_TEXT.
1112
1113         (gdk_utf8_to_string_target): Convert to ISO-8859-1, like on X11.
1114
1115         (sanitize_utf8): Zero-terminate string.
1116
1117 2004-07-06  Matthias Clasen  <mclasen@redhat.com>
1118
1119         * gtk/stock-icons/Makefile.am: Add stock_file_16.png, 
1120         stock_file_24.png, stock_directory_16.png and stock_directory_24.png.
1121
1122         * gtk/gtkstock.h (GTK_STOCK_FILE, GTK_STOCK_DIRECTORY): 
1123         * gtk/gtkiconfactory.c (get_default_icons): New stock icons as 
1124         fallbacks for gtkfilechooser. Currently these are the same images
1125         as the "new" and "open" items...
1126
1127 Tue Jul  6 10:00:22 2004  Jonathan Blandford  <jrb@redhat.com>
1128
1129         Fix for #136496, Pawel Salek:
1130         
1131         * gtk/gtktreeview.c (gtk_tree_view_row_changed): Queue a redraw on
1132         a node when it changes in fixed_height mode.
1133
1134         (gtk_tree_view_node_queue_redraw): new function to queue a redraw
1135         on a node.
1136
1137 2004-07-06  Matthias Clasen  <mclasen@redhat.com>
1138
1139         * gtk/gtkmenu.c (gtk_menu_position): Make sure 
1140         private->monitor_num is a valid monitor number before 
1141         using it.  (#139187, Michael Natterer)
1142
1143 Tue Jul  6 02:00:28 2004  Matthias Clasen  <maclas@gmx.de>
1144
1145         * gtk/gtkfilechooserdefault.c (popup_position_func): 
1146         * gtk/gtkentry.c (popup_position_func): 
1147         * gtk/gtktextview.c (popup_position_func): Improve positioning
1148         of keyboard-activated menus with Xinerama.
1149
1150 Tue Jul  6 00:29:03 2004  Matthias Clasen  <maclas@gmx.de>
1151
1152         * gtk/gtkuimanager.c (do_updates): 
1153         (do_updates_idle): Only call GDK_THREADS_ENTER() / _LEAVE() 
1154         when called from an idle handler.  (#145429, Jan-Marek Glogowski)
1155
1156 Mon Jul  5 23:47:38 2004  Matthias Clasen  <maclas@gmx.de>
1157
1158         * gtk/gtkfilechooserutils.c (delegate_notify): Use
1159         the less efficient g_object_interface_find_property () instead
1160         of the param_id range check, since the GParamSpecs we're 
1161         dealing with are the overridden onces on the interface, whose
1162         param_id is always zero.  (#145312, Alex Roitman, fix proposed
1163         by Owen Taylor)
1164
1165 2004-07-05  Lorenzo Gil Sanchez  <lgs@sicem.biz>
1166
1167         * gtk/gtklayout.c (gtk_layout_add): added a default method for the add
1168         virtual method of GtkContainer.
1169         (gtk_layout_class_init): assign gtk_layout_add to the 'add' virtual
1170         method slot of the container class.
1171
1172 2004-07-05  Anders Carlsson  <andersca@gnome.org>
1173
1174         * gtk/gtkiconview.c: (gtk_icon_view_set_markup_column):
1175         * gtk/gtkiconview.h:
1176         Use gint, not int in gtk_icon_view_set_markup_column,
1177         (Paolo Maggi)
1178         
1179 2004-07-05  Anders Carlsson  <andersca@gnome.org>
1180
1181         * gtk/gtkiconview.c: (gtk_icon_view_class_init),
1182         (gtk_icon_view_real_select_cursor_item),
1183         (gtk_icon_view_real_activate_cursor_item):
1184         * gtk/gtkiconview.h:
1185         Add an "activate_cursor_item" action signal
1186         and bind it to the return key.
1187         
1188 2004-07-04  Anders Carlsson  <andersca@gnome.org>
1189
1190         * demos/gtk-demo/Makefile.am:
1191         * demos/gtk-demo/gnome-fs-directory.png:
1192         * demos/gtk-demo/gnome-fs-regular.png:
1193         * demos/gtk-demo/iconview.c: (load_pixbufs), (fill_store),
1194         (sort_func), (create_store), (item_activated), (up_clicked),
1195         (home_clicked), (do_iconview):
1196         Add a simple file browser based on the icon view.
1197         
1198         * gtk/gtk.h:
1199         Add gtk/gtkiconview.h
1200         
1201         * gtk/gtkiconview.c: (gtk_icon_view_layout),
1202         (gtk_icon_view_item_new), (gtk_icon_view_item_activated):
1203         Fix a few bugs discovered while writing the demo.
1204         
1205 2004-07-04  Anders Carlsson  <andersca@gnome.org>
1206
1207         * gtk/Makefile.am:
1208         * gtk/gtkiconview.c
1209         * gtk/gtkiconview.h:
1210         Add GtkIconView to the build, remove debugging output.
1211         
1212 Sun Jul  4 01:29:35 2004  Matthias Clasen  <maclas@gmx.de>
1213
1214         * gtk/gtkcalendar.c (gtk_calendar_drag_data_get): 
1215         (gtk_calendar_drag_data_received): Fix off-by-one error.  
1216         GDate month is one-based and GtkCalendar month is zero-based.  
1217         (#145134, William Jon McCann)
1218
1219 Sun Jul  4 01:11:07 2004  Matthias Clasen  <maclas@gmx.de>
1220
1221         * gtk/gtktreestore.c (gtk_tree_store_move): Don't crash if
1222         somebody tries to move a node after itself in a list of 
1223         length 1.  (#145291, Sampo Nurmentaus)
1224
1225 Sat Jul  3 23:43:23 2004  Matthias Clasen  <maclas@gmx.de>
1226
1227         * docs/faq/gtk-faq.sgml: 
1228         * gtk/gtkwindow.c: Fix links to www.freedesktop.org.  (#145210,
1229         Billy Biggs)
1230
1231 Sat Jul  3 02:09:51 2004  Matthias Clasen  <maclas@gmx.de>
1232
1233         * gtk/gtksocket.c (gtk_socket_end_embedding): Reset current_width
1234         and current_height to 0 when ending the embedding.  (#143675,
1235         Nickolay V. Shmyrev)
1236
1237 Sat Jul  3 01:48:19 2004  Matthias Clasen  <maclas@gmx.de>
1238
1239         * gtk/gtkentry.c (gtk_entry_move_visually): Let the cursor move
1240         to the right end of the entry text, even if it ends in combining
1241         marks.  (#141728, Theppitak Karoonboonyanan)
1242
1243 Fri Jul  2 23:34:33 2004  Matthias Clasen  <maclas@gmx.de>
1244
1245         * gtk/gtkcombobox.c (gtk_combo_box_unset_model): Unset the displayed
1246         row when unsetting the model.  (#138560, Christian Persch)
1247
1248 Fri Jul  2 23:01:07 2004  Matthias Clasen  <maclas@gmx.de>
1249
1250         * gtk/gtkcombobox.c (update_menu_sensitivity): Don't crash if there
1251         are no items.
1252
1253 Fri Jul  2 22:41:27 2004  Matthias Clasen  <maclas@gmx.de>
1254
1255         * gtk/gtkimage.c (gtk_image_expose): Properly align mask and
1256         pixbuf if a subarea is exposed.  (#135423, fix by John Ehresman)
1257
1258 Fri Jul  2 21:40:21 2004  Matthias Clasen  <maclas@gmx.de>
1259
1260         * gtk/gtknotebook.c (gtk_notebook_realize): Add scroll events
1261         to the event mask, set a scroll_event handler.
1262         * gtk/gtknotebook.c (gtk_notebook_scroll): Handle scroll events
1263         by switching tabs.  (#145244, Gabriel de Perthuis)
1264
1265 2004-07-02  Anders Carlsson  <andersca@gnome.org>
1266
1267         * gtk/gtktreeview.c (gtk_tree_view_set_model): 
1268         Make sure we check for a NULL model first.
1269
1270 2004-07-01  J. Ali Harlow  <ali@juiblex.co.uk>
1271
1272         * gdk/win32/gdkinput-win32.c (_gdk_input_ungrab_pointer): Fix
1273         win32 build problem w/o wintab.  Fixed #145242
1274
1275 2004-06-30  Anders Carlsson  <andersca@gnome.org>
1276
1277         * gtk/gtktreeview.c (gtk_tree_view_set_model): Use
1278         g_return_if_fail to make sure that the model is a GtkTreeModel.
1279
1280 Sat Jun 26 17:41:10 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1281
1282         * gtk/gtk[hv]separator.c (gtk_[hv]separator_expose): Draw line with the
1283         current state, not GTK_STATE_NORMAL
1284
1285         * gtk/gtkframe.c (gtk_frame_paint): Fix a rounding error
1286
1287 Sat Jun 26 15:07:25 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1288
1289         * gtk/gtkstyle.c, gtk/gtkrc.c: small color tweak. (#141173)
1290
1291 Sat Jun 26 01:15:40 2004  Matthias Clasen  <maclas@gmx.de>
1292
1293         * gdk/x11/gdkwindow-x11.c (set_initial_hints): Handle
1294         _NET_WM_STATE_ABOVE and _NET_WM_STATE_BELOW.  (#144851, 
1295         Billy Biggs)
1296
1297 Sat Jun 26 01:04:31 2004  Matthias Clasen  <maclas@gmx.de>
1298
1299         * gtk/gtkiconfactory.c (clear_cache): Prevent unwanted 
1300         recursion by resetting icon_set->cache before freeing
1301         the cache.  (#144947, Tim Janik)
1302
1303 Sat Jun 26 00:40:02 2004  Matthias Clasen  <maclas@gmx.de>
1304
1305         * gtk/gtkiconfactory.c (render_icon_name_pixbuf): 
1306         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): 
1307         * gtk/gtkstyle.c (gtk_default_render_icon): Accept a NULL 
1308         style.
1309
1310 Sat Jun 26 00:04:36 2004  Matthias Clasen  <maclas@gmx.de>
1311
1312         * gtk/gtkentrycompletion.c (gtk_entry_completion_set_model): 
1313         * gtk/gtkcombobox.c (gtk_combo_box_set_model): Reflect the 
1314         last change in the docs.
1315
1316 Fri Jun 25 23:35:42 2004  Matthias Clasen  <maclas@gmx.de>
1317
1318         * gtk/gtkentrycompletion.c (gtk_entry_completion_set_model):
1319         * gtk/gtkcombobox.c (gtk_combo_box_set_model): Allow passing
1320         NULL to unset the model.  (#137211, patch by  Mariano Suárez-Alvarez)
1321
1322 Fri Jun 25 23:33:05 2004  Matthias Clasen  <maclas@gmx.de>
1323
1324         * gtk/gtkcombobox.c (gtk_combo_box_menu_position_below): Fix the
1325         placement policy for GtkComboBoxEntry to be: if it fits below, 
1326         place below, if it fits above place above, else place in the 
1327         larger space and scroll so that the scroll arrow appear at the
1328         far end.  (#144362, David A. Knight)
1329
1330 Fri Jun 25 22:49:58 2004  Matthias Clasen  <maclas@gmx.de>
1331
1332         * gtk/gtktreestore.c (gtk_tree_store_move): Avoid uninitialized
1333         use of &parent_iter. (#145007, John Finlay)
1334
1335 2004-06-25  Bastien Nocera  <hadess@hadess.net>
1336
1337         reviewed by: Matthias Clasen  <maclas@gmx.de>
1338
1339         * gdk/x11/gdkkeys-x11.c: (get_symbol), (update_keymaps),
1340         (gdk_keymap_lookup_key), (translate_keysym): fix keys parsing when
1341         the number of keysyms per keycode is odd. Fixes #144808.
1342
1343 2004-06-25  Matthias Clasen  <mclasen@redhat.com>
1344
1345         * gtk/gtkfontbutton.c (gtk_font_button_update_font_info): Avoid
1346         a crash if the font doesn't exist.  (#144967, Yevgen Muntyan) 
1347
1348 Fri Jun 25 00:32:15 2004  Matthias Clasen  <maclas@gmx.de>
1349
1350         * gtk/gtktreestore.c (gtk_tree_store_swap): Commit the change
1351         which was mentioned below.
1352
1353 Thu Jun 24 23:35:09 2004  Matthias Clasen  <maclas@gmx.de>
1354
1355         * gtk/gtknotebook.c (gtk_notebook_class_init): Fix a typo,
1356         string change.  (#139503, Baris Cicek)
1357
1358 2004-06-22  Federico Mena Quintero  <federico@ximian.com>
1359
1360         * gtk/gtkfilechooserdefault.c (location_popup_handler): Use a Save
1361         or an Open stock button for the C-l dialog depending on the action
1362         in which the file chooser operates.  Fixes #141753.
1363
1364 2004-06-22  Federico Mena Quintero  <federico@ximian.com>
1365
1366         Fixes the GTK+ part of #142308:
1367
1368         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_filename_to_path):
1369         Use filename_to_path().
1370         (gtk_file_system_unix_uri_to_path): Likewise.
1371         (filename_to_path): Use remove_trailing_slash().
1372
1373 2004-06-22  Matthias Clasen  <mclasen@redhat.com>
1374
1375         * gtk/gtktextview.c (gtk_text_view_class_init): Improve docs
1376         for the ::move_cursor signal.
1377
1378         * gtk/gtkaccelmap.c (_gtk_accel_path_is_valid): Accept
1379         "<WINDOWTYPE>" as a valid accel path.  (#144427, Philip 
1380         Kendall)        
1381
1382         * gtk/gtkselection.c (GTK_SELECTION_MAX_SIZE): Make sure 
1383         this gets defined for all backends, so linux-fb has a 
1384         chance of compiling.
1385
1386         * gdk/x11/gdkgc-x11.c: 
1387         * gdk/gdkgc.c: Move function docs inline, add hints about 
1388         obtaining rgb colors from gcs.  (#144688, Steve Chaplin)
1389
1390         * gtk/gtktreestore.c (gtk_tree_store_swap): Make this work
1391         for children of the root.  (#139785, Jean-François Wauthy,
1392         patch by John Finlay)
1393
1394         * gtk/gtkicontheme.h (GTK_ICON_THEME_GET_CLASS): Typo
1395         fix.  (#144750, Jeff Franks) 
1396
1397 2004-06-21  Michael Natterer  <mitch@gimp.org>
1398         Merge from stable:
1399
1400         * gdk/x11/gdkdrawable-x11.[ch]: made convert_format() utility
1401         function public as _gdk_x11_convert_to_format().
1402
1403         * gdk/x11/gdkcursor-x11.c (create_cursor_image): premultiply
1404         the pixels from the GdkPixbuf when putting them in the
1405         Xcursor image. Fixes bug #144350.
1406
1407 2004-06-16  Federico Mena Quintero  <federico@ximian.com>
1408
1409         * gtk/gtkfilesystemmodel.c (do_files_added): When inserting a
1410         visible node, free the old path before creating the new one.
1411         Fixes #144356.
1412
1413 Tue Jun 15 01:10:32 2004  Matthias Clasen  <maclas@gmx.de>
1414
1415         * gtk/gtkcombobox.c: Make GtkComboBox work without model.  
1416         (#144198, Mariano Suárez-Alvarez)
1417         
1418 Fri Jun 11 22:05:56 2004  Matthias Clasen  <maclas@gmx.de>
1419
1420         * gtk/gtkfilechooserdefault.c: Don't use
1421         contractions like "don't" or "isn't" in error messages.
1422         It isn't nice to use them in log entries either...
1423         (#137774, Morten Welinder, patch by Alexander Winston)
1424
1425 2004-06-11  Federico Mena Quintero  <federico@ximian.com>
1426
1427         Fixes #143578:
1428
1429         * gtk/gtkfilesystemmodel.c (_gtk_file_system_model_add_editable):
1430         Don't ref the editable node.
1431         (_gtk_file_system_model_remove_editable): Don't unref the editable node.
1432         (_gtk_file_system_model_remove_editable): Ahem, free the node.
1433
1434         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
1435         Added fields for edited_idle and edited_new_text.
1436         (renderer_edited_cb): Queue the
1437         creation of the folder in an idle handler.
1438         (renderer_editing_canceled_cb): Likewise for the cancellation.
1439         (gtk_file_chooser_default_finalize): Free the impl->edited_new_text.
1440
1441 Thu Jun 10 22:12:26 2004  Matthias Clasen  <maclas@gmx.de>
1442
1443         * gtk/gtkmain.c (gtk_parse_args): Typo fix.
1444
1445 2004-06-10  Federico Mena Quintero  <federico@ximian.com>
1446
1447         Fixes #144110, patch by Bastien Nocera <hadess@hadess.net>.
1448
1449         * gtk/gtkfilechooser.c (gtk_file_chooser_list_shortcut_folders):
1450         Refer to gtk_file_chooser_add_shortcut_folder().
1451         (gtk_file_chooser_list_shortcut_folder_uris): Refer to
1452         gtk_file_chooser_add_shortcut_folder_uri().
1453
1454 Thu Jun 10 00:36:15 2004  Matthias Clasen  <maclas@gmx.de>
1455
1456         * gtk/gtkcalendar.c (gtk_calendar_main_button): Start 
1457         the drag before focusing the selected.day.
1458         * gtk/gtkcalendar.c (gtk_calendar_state_changed): Stop
1459         a beginning drag if the widget becomes insensitive.
1460
1461 Thu Jun 10 00:09:06 2004  Matthias Clasen  <maclas@gmx.de>
1462
1463         * gtk/gtkcalendar.c (gtk_calendar_button_press): Start 
1464         spinning before calling arrow_action(), so that a signal
1465         handler triggered from arrow_action() has a chance to 
1466         stop the spinning.  (#143966, Davyd Madeley)
1467
1468 Wed Jun  9 23:11:23 2004  Matthias Clasen  <maclas@gmx.de>
1469
1470         * gtk/gtkstyle.c (_gtk_style_init_for_settings): Fix a 
1471         typo.  (#144070, Kent Sandvik)
1472
1473 Thu Jun 10 00:22:51 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1474
1475         * gtk/gtkmenu.c: Revert the "drag select" part of
1476         #141169. (#144011).
1477
1478 Mon Jun  7 23:07:40 2004  Matthias Clasen  <maclas@gmx.de>
1479
1480         * gtk/gtkcombobox.c (gtk_combo_box_remeasure): Handle
1481         priv->model being NULL.  (#143856, Mariano Suárez-Alvarez)
1482
1483 2004-06-07  Federico Mena Quintero  <federico@ximian.com>
1484
1485         * gtk/gtktreeview.c (gtk_tree_view_button_press): Revert the patch
1486         from 2003/Sep/12.  This kept DnD in tree views within modal
1487         dialogs from working, which is especially bad for the file
1488         chooser.  Fixes #135168.
1489
1490 Sun Jun  6 23:57:21 2004  Matthias Clasen  <maclas@gmx.de>
1491
1492         Make the entry context menu work in editable text cells. The changes
1493         are based on a patch by Kristian Rietveld, which implemented an 
1494         approach outlined by Owen Taylor.  (#50075)
1495         
1496         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_focus_out_event): 
1497         Ignore focus out if the entry menu is posted.
1498         (gtk_cell_renderer_text_populate_popup): Mark the entry menu as 
1499         posted, and set up a signal handler to clear the flag if the menu 
1500         is unmapped.
1501         (gtk_cell_renderer_text_popup_unmap): Clear the in_entry_menu flag, 
1502         set up a timeout to stop editing if the focus is lost.
1503         (popdown_timeout): Stop editing if the entry doesn't have focus anymore.
1504         (gtk_cell_renderer_text_start_editing): Connect to the populate_popup 
1505         signal on the entry and keep a pointer to the entry.
1506         (gtk_cell_renderer_text_editing_done): Disconnect from popuplate_popup, 
1507         clear the pointer to the entry.
1508
1509 Sun Jun  6 23:24:43 2004  Matthias Clasen  <maclas@gmx.de>
1510
1511         * gtk/gtktexttag.c (gtk_text_tag_class_init): Improve the description
1512         of the ::language property.  (#143802, Owen Taylor)
1513
1514 Sat Jun  5 23:07:30 2004  Matthias Clasen  <maclas@gmx.de>
1515
1516         * gtk/gtkentrycompletion.c: (gtk_entry_completion_init),
1517         (gtk_entry_completion_list_enter_notify),
1518         (gtk_entry_completion_list_motion_notify),
1519         (_gtk_entry_completion_popup), (_gtk_entry_completion_popdown):
1520         * gtk/gtkentryprivate.h: Add an ignore_enter flag and
1521         use it as in the menu code to avoid the initial selection if
1522         the window pops up under the pointer.  (Anders Carlsson)
1523
1524 Sat Jun  5 20:05:39 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1525
1526         * tests/testmerge.c: Add a checkbox to queue an
1527         merge/unmerge. Patch from Matthias Clasen.
1528
1529         * gtk/gtktoolbar.c (struct _GtkToolbarPrivate): Add a new flag
1530         "need_rebuild"
1531         (rebuild_menu): New function that rebuilds the overflow menu and
1532         makes sure it doesn't start or end with a separator.
1533         (toolbar_content_new_tool_item)
1534         (toolbar_content_remove)
1535         (toolbar_content_new_compatibility): Set the rebuild_needed flag
1536         (gtk_toolbar_size_allocate): Only show the overflow arrow when we
1537         have actually overflown an item with a proxy menu item. Also make
1538         sure we rebuild the menu if needed.
1539
1540         Fix #125504, #142377, #143463
1541         
1542         * gtk/gtkseparatortoolitem.c (gtk_separator_tool_item_expose):
1543         Obey the "priv->draw" flag. (#143692)
1544
1545 2004-06-04  Matthias Clasen  <mclasen@redhat.com>
1546
1547         * docs/widget_geometry.txt: Add a note about the !CAN_FOCUS
1548         quirk in the button size allocation code.
1549
1550         * gtk/gtkbutton.c (gtk_button_size_allocate): Give the space
1551         requested for drawing the focus indicator to the child in the
1552         !CAN_FOCUS case. This should fix issues which the Gimp has with 
1553         the button allocation changes in 2.4.2.
1554
1555 Thu Jun  3 21:17:29 2004  Matthias Clasen  <maclas@gmx.de>
1556
1557         * gtk/gtkentry.c (gtk_entry_completion_timeout): Calculate the
1558         length of the entry contents in characters, not in bytes.
1559
1560         * gtk/gtkentry.c (paste_received): Don't pop up the completion
1561         window on paste, noticed by Anders Carlsson.
1562
1563 Thu Jun  3 20:56:19 2004  Matthias Clasen  <maclas@gmx.de>
1564
1565         * gtk/gtkcombobox.c (gtk_combo_box_class_init): Fix the allowed
1566         values and default value for the ::active property.  (#143669,
1567         Olivier Andrieu)
1568
1569 2004-06-03  Michael Natterer  <mitch@gimp.org>
1570
1571         * gtk/gtkimagemenuitem.c: use gtk_widget_get_child_requisition()
1572         instead of accessing item->image->allocation.width/height
1573         directly. Makes widgets which only have a requisition set using
1574         gtk_widget_set_size_request() work and fixes bug #142789.
1575
1576 Thu Jun  3 08:07:59 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1577
1578         * gtk/gtkmenu.c: Revert previous commit. It caused the problem
1579         of sticky right click menus to return.
1580
1581 Wed Jun  2 01:56:02 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1582
1583         * gtk/gtkmenu.c: Fix the stay up algorithm for combo boxes to
1584         better handle the "click" case. bug  Better fix for #141169.
1585
1586 2004-06-02  Federico Mena Quintero  <federico@ximian.com>
1587
1588         * gtk/gtktreeview.c (gtk_tree_view_search_init): Bail out if the
1589         model is empty.  Fixes #143536.
1590
1591 2004-06-02  Matthias Clasen  <mclasen@redhat.com>
1592
1593         * gtk/gtkfontsel.c (gtk_font_selection_size_focus_out): Don't
1594         close the dialog on focus out of the size entry.  (#143505, 
1595         David Hawthorne)
1596
1597 2004-06-02  Federico Mena Quintero  <federico@ximian.com>
1598
1599         Fix #138807.
1600
1601         * gtk/fnmatch.c (_gtk_fnmatch): Take a no_leading_period argument.
1602         (gtk_fnmatch_intern): Likewise; also implement this option.
1603
1604         * gtk/gtkprivate.h (_gtk_fnmatch): Updated prototype.
1605
1606         * gtk/gtkfilesel.c (find_completion_dir): Pass TRUE for the
1607         no_leading_period argument of _gtk_fnmatch().
1608         (attempt_file_completion): Likewise.
1609
1610         * gtk/gtkfilefilter.c (gtk_file_filter_filter): Pass FALSE for the
1611         no_leading_period argument of _gtk_fnmatch().
1612
1613 Wed Jun  2 00:47:11 2004  Matthias Clasen  <maclas@gmx.de>
1614
1615         * gtk/gtkselection.c (_gtk_selection_request): Remove leftover
1616         debug code.
1617
1618 Wed Jun  2 00:13:57 2004  Matthias Clasen  <maclas@gmx.de>
1619
1620         * gtk/gtktreeselection.c (gtk_tree_selection_select_range): Don't
1621         allow unless selection mode is multiple.  (#142634, John Finlay)
1622
1623 Tue Jun  1 23:00:20 2004  Matthias Clasen  <maclas@gmx.de>
1624
1625         * gtk/gtktoolbar.h: 
1626         * gtk/gtktoolbar.c: 
1627         * gtk/gtkentrycompletion.h: 
1628         * gtk/gtkentrycompletion.c: 
1629         * gtk/gtkcombobox.h: 
1630         * gtk/gtkcombobox.c: Rename function parameters from
1631         index to index_ to prevent clash with BSD index().  (#143001)
1632
1633 Tue Jun  1 22:45:42 2004  Matthias Clasen  <maclas@gmx.de>
1634
1635         * gtk/gtkmenu.c (get_accel_path): Handle accel_closure being
1636         NULL on an accel label. (#139641, Sam Stephenson, patch by 
1637         Michael Natterer)
1638
1639 Tue Jun  1 22:19:55 2004  Matthias Clasen  <maclas@gmx.de>
1640
1641         * gtk/gtkicontheme.c (theme_subdir_load):  Prevent icon 
1642         lookup finding icons in the wrong prefix.  (#143328,
1643         Mark McLoughlin)
1644
1645 Wed Jun  2 00:39:58 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1646
1647         Bug #141169.
1648
1649         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Make menus
1650         only stay up if you release within 500 milliseconds.
1651         (gtk_menu_shell_button_press): Set the activate_time to the event
1652         time when a button is pressed.
1653
1654         * gtk/gtkmenu.c (gtk_menu_motion_notify, gtk_menu_enter_notify):
1655         Interprete button releases as activate when we have seen both an
1656         enter an a motion event.
1657
1658 2004-06-01  Federico Mena Quintero  <federico@ximian.com>
1659
1660         * gtk/gtkfilesystemmodel.c (do_files_removed): Don't insert a
1661         dummy node if there is no parent node.  Fixes #143362.
1662
1663 2004-05-31  Federico Mena Quintero  <federico@ximian.com>
1664
1665         * gtk/gtkfilechooserdefault.c (renderer_edited_cb): Change to the
1666         newly-created folder.  Fixes #138932.
1667         (trap_activate_cb): Only return TRUE if we did handle the event.
1668         Fixes #143359; patch by jylefort@brutele.be.
1669
1670 Mon May 31 02:39:32 2004  Matthias Clasen  <maclas@gmx.de>
1671
1672         * gtk/gtkimage.c (gtk_image_new_from_pixmap): Fix typo in 
1673         docs.  (#142892, Tommi Komulainen)
1674
1675 Mon May 31 02:16:37 2004  Matthias Clasen  <maclas@gmx.de>
1676
1677         * gtk/gtkhandlebox.c: Make detached handleboxes work when their
1678         parent is minimized, porting the fix from 1.2.  (#1923, #57182)
1679
1680 Mon May 31 02:03:17 2004  Matthias Clasen  <maclas@gmx.de>
1681
1682         * gtk/gtkwindow.c (gtk_window_show): Make moving realized, 
1683         unmapped windows work. 
1684
1685 Mon May 31 00:27:33 2004  Matthias Clasen  <maclas@gmx.de>
1686
1687         * gtk/gtkfilechooserutils.c (_gtk_file_chooser_set_delegate): Fix
1688         a typo.
1689
1690 Mon May 31 00:23:55 2004  Matthias Clasen  <maclas@gmx.de>
1691
1692         * gtk/gtkfilechooser.c (gtk_file_chooser_set_preview_widget): 
1693         Refer to ::update-preview, not ::selection-changed.
1694
1695 2004-05-29  Christian Rose  <menthos@menthos.com>
1696  
1697         * configure.in: Added "tk" to ALL_LINGUAS.
1698  
1699 Fri May 28 15:00:01 2004  Matthias Clasen  <maclas@gmx.de>
1700
1701         * gtk/gtkwidget.c (gtk_widget_set_parent): Add informative
1702         messages for common problems.  (#137974, Owen Taylor)
1703
1704 Fri May 28 14:20:17 2004  Matthias Clasen  <maclas@gmx.de>
1705
1706         * gdk/x11/gdkevents-x11.c: Fix off-by-one allocation 
1707         errors. (#143337, Billy Biggs) 
1708
1709 Thu May 27 16:36:22 2004  Owen Taylor  <otaylor@redhat.com>
1710
1711         * gdk/x11/gdkcolor-x11.c (gdk_colormap_alloc_colors): Set
1712         bits within visual->depth that aren't used for color to
1713         1s, in case they are alpha.
1714
1715 2004-05-27  Anders Carlsson  <andersca@gnome.org>
1716
1717         * gtk/gtkfilechooserdefault.c (save_folder_combo_create): 
1718         Make separator rows insensitive.
1719
1720 Thu May 27 00:48:16 2004  Matthias Clasen  <maclas@gmx.de>
1721
1722         * gtk/gtkentrycompletion.c (gtk_entry_completion_set_text_column): 
1723         Add more docs.
1724
1725 Thu May 27 00:45:07 2004  Matthias Clasen  <maclas@gmx.de>
1726
1727         * gtk/gtkentrycompletion.h:
1728         * gtk/gtkentrycompletion.c (gtk_entry_completion_get_text_column): 
1729         Getter for text_column. Also make ::text_column a property.
1730
1731 Thu May 27 00:11:01 2004  Matthias Clasen  <maclas@gmx.de>
1732
1733         * gtk/gtkmenuitem.c (gtk_menu_item_size_request): Fix a typo.
1734
1735 Thu May 27 00:07:47 2004  Jonathan Blandford  <jrb@gnome.org>
1736
1737         * gtk/gtkcombobox.c (gtk_combo_box_list_destroy): only remove the
1738         signal if the box exists.
1739
1740 Wed May 26 23:26:51 2004  Matthias Clasen  <maclas@gmx.de>
1741
1742         Support insensitive cells in tree views and combo boxes:
1743         
1744         * gtk/gtkcellrenderer.h: 
1745         * gtk/gtkcellrenderer.c: Add a ::sensitive property.
1746
1747         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): 
1748         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): 
1749         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render): 
1750         Support drawing insensitive.
1751
1752         * gtk/gtkcellview.h: 
1753         * gtk/gtkcellview.c (gtk_cell_view_get_cell_renderers): New 
1754         function to obtain the cell renderers from a cell view. Also
1755         export gtk_cell_view_set_cell_data().
1756
1757         * gtk/gtktreeselection.c (tree_column_is_sensitive):
1758         * gtk/gtktreeselection.c (row_is_selectable): Helper functions
1759         to determine whether all visible cells in a row are insensitive
1760         and whether a row is selectable. A row is not selectable if the 
1761         user function says so or if all visible cells are insensitive.
1762         * gtk/gtktreeselection.c (_gtk_tree_selection_internal_select_node): 
1763         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node): 
1764         Use row_is_selectable().
1765         
1766         * gtk/gtkcombobox.c (row_is_sensitive): 
1767         * gtk/gtkcombobox.c (tree_column_row_is_sensitive): 
1768         * gtk/gtkcombobox.c (menu_row_is_sensitive): Helper functions
1769         to determine row sensitivity in menu or list mode.
1770
1771         * gtk/gtkcombobox.c (update_menu_sensitivity): Helper function
1772         to set up sensitivity menu items from the underlying rows.
1773
1774         * gtk/gtkcombobox.c (gtk_combo_box_popup): 
1775         * gtk/gtkcombobox.c (gtk_combo_box_menu_button_press): Use
1776         update_menu_sensitivity().
1777                 
1778         * gtk/gtkcombobox.c (gtk_combo_box_list_setup): Setup the cell
1779         data funcs.
1780
1781         * gtk/gtkcombobox.c (gtk_combo_box_key_press): Skip insensitive
1782         rows.
1783
1784         * tests/testcombo.c (main): Make some rows insensitive.
1785
1786 2004-05-26  Robert Ögren  <gtk@roboros.com>
1787
1788         * gdk/win32/gdkinput-win32.c (_gdk_input_other_event): Send key
1789         modifiers (shift, ctrl etc) in button and motion events from the
1790         tablet. (#143240)
1791
1792 2004-05-26  Robert Ögren  <gtk@roboros.com>
1793
1794         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): Simple
1795         implementation for extended input devices using last known 
1796         device state (#143237)
1797
1798 Tue May 25 21:54:00 2004  Matthias Clasen  <maclas@gmx.de>
1799
1800         * gtk/gtkframe.c: Move docs inline, fixing them on the
1801         way.  (#143029, Steve Chaplin)
1802
1803 2004-05-11  Robert Ögren  <gtk@roboros.com>
1804
1805         * gdk/win32/gdkevents-win32.c (propagate): Don't propagate mouse
1806         events to windows that want extended input events. (#142943)
1807         (gdk_event_translate): Move check for extended input devices to
1808         propagate, new parameter to propagate.
1809         (gdk_pointer_grab, gdk_display_pointer_ungrab): Enable calls to
1810         _gdk_input_(un)grab_pointer. (#142943)
1811
1812         * gdk/win32/gdkinput-win32.c (_gdk_input_other_event): Check for
1813         input grab. [Fix missing update of impl in "dijkstra" event
1814         propagation loop] Drop the parallel "impl" pointer, just use a
1815         cast. Don't propagate beyond windows that want normal input
1816         events. (#142943)
1817         (gdk_input_grab_pointer, gdk_input_ungrab_pointer): Limited
1818         implementation of input grab. (#142943)
1819
1820 2004-05-22  Tor Lillqvist  <tml@iki.fi>
1821
1822         * gdk/win32/gdkinput-win32.c (print_lc): Remove duplicated
1823         line. (Spotted by Benoît Carpentier.)
1824
1825 2004-05-18  Matthias Clasen  <mclasen@redhat.com>
1826
1827         * configure.in: Check for XFIXES extension.
1828
1829         * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add 
1830         a gboolean have_xfixes member.
1831
1832         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Register
1833         XFIXES events and set have_xfixes.
1834
1835         * gdk/gdkevents.h (GdkEventType): Add GDK_OWNER_CHANGE.
1836         (GdkEventOwnerChange): New event struct for owner change events.
1837         (GdkOwnerChange): New enum for the reason field of GdkEventOwnerChange.
1838         
1839         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Translate 
1840         XFixesSelectionNotify events into GdkEventOwnerChange events.
1841         
1842         * gdk/gdkdisplay.h:
1843         * gdk/x11/gdkdisplay-x11.c (gdk_display_supports_selection_notification):
1844         (gdk_display_request_selection_notification): New api 
1845         to support selection ownership notification.
1846
1847         * gtk/gtkclipboard.h:
1848         * gtk/gtkclipboard.c (_gtk_clipboard_handle_event): New private
1849         api to handle owner change events.
1850         (clipboard_peek): Refactored out the body of 
1851         gtk_clipboard_get_for_display() for use in _gtk_clipboard_handle_event().
1852
1853         * gtk/gtkmain.c (gtk_main_do_event): Handle GDK_OWNER_CHANGE events
1854         by calling _gtk_clipboard_handle_event().
1855
1856 2004-05-18  Matthias Clasen  <mclasen@redhat.com>
1857
1858         * gtk/gtkintl.h: Include glib/gi18n-lib.h and only define
1859         the P_() macros ourselves.
1860
1861         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
1862         Restrict the width of the popup to be no larger than the
1863         monitor.  (#142678, DmD Ljungmark)
1864
1865         * gtk/gtkbutton.c: Go back to the initial fix for the 
1866         focus-overdrawing problem, which was actually correct 
1867         according to docs/widget_geometry.txt.
1868
1869         * gtk/gtkarrow.c (gtk_arrow_class_init): Bump the initial
1870         arrow size from 11 to 15 to compensate for that.
1871
1872         * gtk/gtktextview.c (gtk_text_view_class_init): Document the
1873         arguments of the ::move-cursor signal.  (#142725)
1874
1875 2004-05-17  Matthias Clasen  <mclasen@redhat.com>
1876
1877         Merged from 2.4:
1878         
1879         * gtk/gtkbutton.c (gtk_button_size_request) 
1880         (gtk_button_size_allocate, _gtk_button_paint): Allocate
1881         space for the focus rectangle only if necessary.  (#142668,
1882         Michael Natterer)
1883
1884 Sun May 16 23:11:47 2004  Matthias Clasen  <maclas@gmx.de>
1885
1886         Merged from 2.4:
1887         
1888         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): Remove two useless 
1889         lines.  (#142479, Morten Welinder)
1890
1891 Sun May 16 22:27:17 2004  Matthias Clasen  <maclas@gmx.de>
1892
1893         * gtk/gtkintl.h (Q_): Add a Q_() macro. 
1894
1895         * gtk/gtkcellrendererprogress.h: Remove GTK_PROGRESS_CELL_UNKNOWN
1896         and GTK_PROGRESS_CELL_FAILED. With the ability the set the label,
1897         they are not really needed.
1898
1899         * gtk/gtkcellrendererprogress.c: Use the xpad and ypad properties
1900         instead of hardwired padding, use Q_() for the default label, 
1901         compute a reasonable minimal size.  (#142571, #142572, #142573,
1902         Tommi Komulainen, Christian Persch)
1903         
1904 2004-05-15  Tor Lillqvist  <tml@iki.fi>
1905
1906         * gdk/win32/gdkdnd-win32.c: Put back the ref_count field in the
1907         GdkDragContextPrivateWin32 struct (but inside ifdef OLE2_DND this
1908         time). It is used by the OLE2_DND code, which is unfinished and
1909         presumably horribly broken, but still, let's not make it not
1910         compile on purpose. Silence some gcc warnings in the OLE2_DND
1911         code.
1912
1913 2004-05-14  Matthias Clasen  <mclasen@redhat.com>
1914
1915         * gtk/gtktreeview.c (gtk_tree_view_tree_window_to_tree_coords): 
1916         New function to go from tree window to tree coordinates, kept
1917         static for now until we figure out the multiple coordinate
1918         system mess in GtkTreeView API-wise.
1919         (gtk_tree_view_scroll_to_cell): Transform the coordinates 
1920         from tree window to tree coordinates, using the new function.
1921         Previously, the x coordinate was wrongly transformed. (#142494)
1922
1923         * gdk/gdktypes.h (GdkModifierType): Add a comment about unused
1924         bits.
1925
1926         * gtk/gtkstock.c (real_add, gtk_stock_lookup): Use an unused
1927         modifier bit to mark stock item which need to be freed 
1928         eventually.  (#140654, Michal Pasternak, Scott Tsai)
1929
1930 2004-05-11  Robert Ögren  <gtk@roboros.com>
1931
1932         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Add missing
1933         call to g_object_ref in Wintab code. (#138341)
1934
1935         * gdk/win32/gdkinput-win32.c: Fix numerous Wintab problems
1936         including unallocated buffers for event->motion.axes and
1937         event->button.axes, unsigned wraparound problem in the code for
1938         detecting missing press/release events and assigning min instead
1939         of max when setting up axes.
1940
1941 2004-05-12  Matthias Clasen  <mclasen@redhat.com>
1942
1943         * tests/testtreeedit.c: Add a progress column.
1944
1945         * gtk/Makefile.am: Add gtkcellrendererprogress.[hc] in the right
1946         places.
1947
1948         * gtk/gtk.h: Include gtkcellrendererprogress.h.
1949
1950         * gtk/gtkcellrendererprogress.[hc]: A progress cell renderer,
1951         based on the one found in Epiphany.
1952
1953 2004-05-11  Michael Natterer  <mitch@gimp.org>
1954
1955         * gtk/gtkcombobox.c (gtk_combo_box_popup)
1956         (gtk_combo_box_menu_button_press): don't allocate the popup
1957         smaller than the combobox. Fixes bug #59660.
1958
1959 2004-05-11  Matthias Clasen  <mclasen@redhat.com>
1960
1961         * gtk/gtkuimanager.c (gtk_ui_manager_get_widget): Revert the
1962         previous change to this function, clarify the docs instead.
1963
1964         * gtk/gtkcombobox.c (gtk_combo_box_list_setup): Use
1965         GTK_SELECTION_BROWSE.
1966
1967         * gtk/gtktreeview.c: Make hover selection work for 
1968         GTK_SELECTION_BROWSE as well.
1969
1970 Tue May 11 00:38:25 2004  Matthias Clasen  <maclas@gmx.de>
1971
1972         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_class_init): 
1973         Document the ::toggled signal.
1974
1975 Mon May 10 23:04:25 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1976
1977         * gtk/gtkwidget.h: Add prototype for _gtk_widget_grab_notify()
1978
1979 2004-05-10  Matthias Clasen  <mclasen@redhat.com>
1980
1981         * gtk/gtkwindow.c (get_screen_icon_info): Make static.
1982
1983         * gdk/gdkdisplay.c (singlehead_...): 
1984         * gdk/x11/gdkkeys-x11.c (get_effective_keymap): 
1985         * gdk/x11/gdkgeometry-x11.c (expose_serial_predicate): 
1986         * gdk/x11/gdkdisplay-x11.c (escape_for_xmessage): Make static.
1987
1988         * gtk/gtktreeview.c (gtk_tree_view_set_fixed_height_mode): Add a 
1989         note about COLUMN_FIXED restriction.
1990
1991         * gtk/gtkentrycompletion.c (gtk_entry_completion_list_button_press): 
1992         Set the entry in the default handler of the ::match-selected signal.
1993         (#137226)
1994
1995         * gtk/gtkcombobox.c (gtk_combo_box_menu_position_below): If we don't
1996         do the move-selected-item below pointer thingie, do the 
1997         place-below-or-above one.
1998
1999         * tests/testentrycompletion.c: Make the second example use the 
2000         ::match-selected signal to make it actually work.
2001
2002         * gtk/gtkentrycompletion.c (gtk_entry_completion_init): 
2003         * gtk/gtkcombobox.c (gtk_combo_box_list_setup): Use hover selection
2004         mode.  (#127648, Dave Bordoley)
2005
2006         * gtk/gtktreeview.h:
2007         * gtk/gtktreeview.c: Add a new property "hover_selection", which 
2008         when TRUE makes the selection follow the mouse. Also add setter
2009         and getter for the fixed_height property.
2010
2011 2004-05-10  Matthias Clasen  <mclasen@redhat.com>
2012
2013         * gtk/gtkcombobox.c (gtk_combo_box_popup) 
2014         (gtk_combo_box_menu_button_press): Make sure the menu pops up
2015         as wide as the combobox.  (#59660, Havoc Pennington)
2016
2017 2004-05-10  Matthias Clasen  <mclasen@redhat.com>
2018
2019         * gtk/gtkcombobox.h: 
2020         * gtk/gtkcombobox.c: Support tearoffable combo boxes (in menu 
2021         mode). Add a new property, add-tearoffs, for this.  (#135956)
2022
2023         * gtk/gtkfontsel.c (list_row_activated): Make Return activate the
2024         default button.  (#118921)
2025
2026 Mon May 10 15:03:50 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
2027
2028         * gtk/gtkwidget.c (_gtk_widget_grab_notify): New internal function
2029         that emits the grab notify signal.
2030         
2031         * gtk/gtkmain.c (gtk_grab_notify_foreach): Use it here.
2032
2033 Mon May 10 00:48:08 2004  Matthias Clasen  <maclas@gmx.de>
2034
2035         * gtk/gtkmenu.c: Make destruction of a torn off menu work 
2036         like un-tearing off.
2037
2038 Sun May  9 21:05:38 2004  Matthias Clasen  <maclas@gmx.de>
2039
2040         Merge from 2.4:
2041
2042         * gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel): 
2043         Allow to suppress the stock accelerator by using "".  (#142196,
2044         David A Knight)
2045         
2046 Sun May  9 02:01:13 2004  Matthias Clasen  <maclas@gmx.de>
2047
2048         Merge from 2.4:
2049         
2050         * gtk/gtkcombobox.c (gtk_combo_box_list_button_released): 
2051         In list mode, accept the same mouse/wheel bindings on 
2052         the cellview as on the button.  (#136967)
2053
2054 Sun May  9 01:25:37 2004  Matthias Clasen  <maclas@gmx.de>
2055
2056         * gtk/gtkiconfactory.c (add_to_cache): Actually count the
2057         cached icons.  (#135888, Crispin Flowerday)
2058
2059 Sun May  9 00:03:03 2004  Matthias Clasen  <maclas@gmx.de>
2060
2061         * gtk/gtkuimanager.c (gtk_ui_manager_get_widget): Make sure
2062         that we actually return menus for nodes of type menu, not the
2063         menuitems they're attached to.
2064
2065 Sat May  8 22:50:55 2004  Matthias Clasen  <maclas@gmx.de>
2066
2067         * gtk/gtkactiongroup.c (gtk_action_group_set_translation_domain): 
2068         Add a note regarding UTF-8 requirements, proposed by 
2069         Mariano Suárez-Alvarez.
2070
2071 Sat May  8 22:43:11 2004  Matthias Clasen  <maclas@gmx.de>
2072
2073         * gtk/gtktearoffmenuitem.h: 
2074         * gtk/gtktearoffmenuitem.c: Put the torn_off flag back
2075         into the GtkTearoffMenuItem struct, since it is used
2076         by the Gimp, and keep it synchronized with the 
2077         tearoff_state property of the parent menu.
2078
2079 2004-05-08  Hans Breuer  <hans@breuer.org>
2080
2081         * gtk/gtkfilesystemwin32.c (extract_icon) : finally also
2082         create the correct mask for 'pseudo mime' icons
2083
2084         * gdk/win32/gdkwindow-win32.c(show_window_internal) : also
2085         take focus_on_map into account
2086
2087         * gtk/gtkselection.c : g_message() only with DEBUG_SELECTION
2088
2089         * gtk/gtkactiongroup.c gtk/gtkcombobox.c : 
2090         ... must return a value
2091
2092         * gdk/gdk.def gtk/gtk.def demos/gtk-demo/makefile.msc.in : updated
2093
2094 2004-05-07  Matthias Clasen  <mclasen@redhat.com>
2095
2096         * gtk/gtkbutton.c (gtk_button_size_allocate): Don't let the child
2097         draw over the focus rectangle.
2098
2099         * gtk/gtkhsv.c: Draw focus indication in the color wheel using
2100         standard focus style.  (#63071, Bill Haneman, idea for new
2101         style by Owen Taylor)
2102
2103         * gtk/gtkstyle.c (gtk_default_draw_focus): Support drawing on
2104         focus on the colorwheel via details.
2105
2106 2004-05-06  Matthias Clasen  <mclasen@redhat.com>
2107
2108         Merge from 2.4:
2109         
2110         * gtk/gtkcombobox.c (gtk_combo_box_menu_state_changed): Remove
2111         this no longer needed signal handler.  (#141817, Paul Pogonyshev)
2112
2113 Fri May  7 00:41:46 2004  Matthias Clasen  <maclas@gmx.de>
2114
2115         * gtk/gtktearoffmenuitem.h: 
2116         * gtk/gtktearoffmenuitem.c: Make the tearoff 
2117         functionality model/view, the tearoffmenuitem being
2118         the view and the tearoff_state property of the menu
2119         being the model.  (#101185, Owen Taylor)
2120
2121         * gtk/gtkmenu.c: Add a tearoff_state property.
2122
2123 Thu May  6 23:52:13 2004  Matthias Clasen  <maclas@gmx.de>
2124
2125         Merge from 2.4:
2126
2127         * gtk/gtkmenuitem.c (gtk_menu_item_select_timeout): Also 
2128         popup the submenu for items in torn off menus.  (#122051)
2129
2130 2004-05-06  Sven Neumann  <sven@gimp.org>
2131
2132         * gtk/gtkexpander.c (gtk_expander_size_allocate): in RTL mode,
2133         position the title lable next to the arrow just as we do for LTR
2134         rendering. Fixes bug #141825.
2135
2136 2004-05-06  Matthias Clasen  <mclasen@redhat.com>
2137
2138         * docs/RELEASE-HOWTO: Document the new policy of
2139         bumping version numbers after release.
2140
2141         * configure.in: Bump version number to 2.5.0.
2142
2143 2004-05-06  Padraig O'Briain  <padraig.obriain@sun.com>
2144
2145         * gtk/gtkmenu.h:
2146         * gtk/gtkmenu.c: Add new function gtk_menu_get_for_attach_widget.
2147         (bug #113112).
2148
2149 Thu May  6 00:24:11 2004  Matthias Clasen  <maclas@gmx.de>
2150
2151         * gtk/gtkactiongroup.h: 
2152         * gtk/gtkactiongroup.c (gtk_action_group_translate_string): 
2153         New function to translate a string with translate_func.
2154         (#135740)
2155
2156 Thu May  6 00:02:21 2004  Matthias Clasen  <maclas@gmx.de>
2157
2158         * gtk/gtkcombobox.c (gtk_combo_box_get_wrap_width): 
2159         (gtk_combo_box_get_row_span_column): 
2160         (gtk_combo_box_get_column_span_column): Add missing getters
2161         for readwrite properies. (#135649)
2162
2163 Wed May  5 23:42:42 2004  Matthias Clasen  <maclas@gmx.de>
2164
2165         * gtk/gtkcombobox.h: 
2166         * gtk/gtkcombobox.c (gtk_combo_box_get_active_text): 
2167         Add gtk_combo_box_get_active_text() convenience 
2168         function. (#136372, Christian Neumeir, patch by Olivier Andrieu) 
2169
2170 2004-05-05  Elijah Newren  <newren@math.utah.edu>
2171
2172         Changes to support do-not-focus-on-map hint in conjunction with
2173         _NET_WM_USER_TIME (#115650):
2174
2175         * gdk/gdkwindow.h (struct _GdkWindowObject): Add a new boolean
2176         field focus_on_map
2177         
2178         * gdk/gdkwindow.h (gdk_window_set_accept_focus): New function to
2179         set it.
2180
2181         * gtk/gtkwindow.[hc]: Add a boolean property "focus_on_map"
2182         and gtk_window_get_focus_on_map() and gtk_window_set_focus_on_map().
2183
2184         * gdk/win32/gdkwindow-win32.c (gdk_window_new): 
2185         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new): 
2186         * gdk/x11/gdkwindow-x11.c (gdk_window_new):
2187         Initialize the focus_on_map field to TRUE.
2188
2189         * gdk/win32/gdkwindow-win32.c (gdk_window_set_focus_on_map): 
2190         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_focus_on_map): 
2191         * gdk/x11/gdkwindow-x11.c (gdk_window_set_focus_on_map): 
2192         * gdk/x11/gdkwindow-x11.c (setup_toplevel_window):
2193         Implementations for the various backends. The Win32 and linux-fb
2194         implementations set the focus_on_map field, but don't use it yet
2195         to actually implement noinput windows. The X implementation sets
2196         _NET_WM_USER_TIME to 0 if focus_on_map is FALSE (see the EWMH).
2197
2198         * gdk/x11/gdkwindow-x11.h: 
2199         * gdk/x11/gdkevents-x11.c (set_user_time): 
2200         * gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): 
2201         * gdk/x11/gdkwindow-x11.c (gdk_x11_window_set_user_time): 
2202         s/_gdk_x11_window_set_user_time/gdk_x11_window_set_user_time/,
2203         since we want that function to be part of the public API.
2204
2205 Wed May  5 22:20:21 2004  Matthias Clasen  <maclas@gmx.de>
2206
2207         Merge from 2.4:
2208         
2209         * gtk/gtkiconfactory.c (icon_source_clear): Don't
2210         call g_free() on a pixbuf.  (#141961, Crispin Flowerday) 
2211
2212 2004-05-05  Matthias Clasen  <mclasen@redhat.com>
2213    
2214         Merge from 2.4:
2215         
2216         * gtk/gtkuimanager.c (print_node): Make the output 
2217         parseable.  (#141929, Sven Neumann)
2218
2219 2004-05-05  Tor Lillqvist  <tml@iki.fi>
2220
2221         * gdk/win32/gdkdnd-win32.c (gdk_drag_find_window_for_screen): Add
2222         multi-monitor offset. (#141842, John Ehresman)
2223
2224 2004-05-04  Federico Mena Quintero  <federico@ximian.com>
2225
2226         Fixes #139562, based on a patch by Christian Neumair.
2227
2228         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault): Add
2229         a filter_combo_hbox field to contain the filter combo.
2230         (show_filters): Show/hide the filter_combo_hbox.
2231         (create_filename_entry_and_filter_combo): Removed.
2232         (file_pane_create): Create the filter_combo_hbox here.
2233
2234 2004-05-04  Matthias Clasen  <mclasen@redhat.com>
2235
2236         * modules/input/gtkimcontextxim.c: Fix the recent
2237         string_conversion_callback change to work on 
2238         Solaris.  (#141190, Padraig O'Briain)
2239
2240         * gtk/gtkselection.c: Disable debug logging again.
2241
2242 2004-05-03  Matthias Clasen  <mclasen@redhat.com>
2243
2244         * gtk/gtkselection.c: Make the chunk size for 
2245         incremental transfers depend on the maximal request 
2246         size, capped at 256k. This should allow most selections
2247         to be transferred nonincrementally, avoiding many
2248         roundtrips and protocol overhead.
2249
2250 2004-05-03  Federico Mena Quintero  <federico@ximian.com>
2251
2252         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Call
2253         g_signal_new() correctly and initialize the signal fields.  Fixes
2254         #141749; patch based on Michael Natterer's.
2255
2256 u2004-05-03  Matthias Clasen  <mclasen@redhat.com>
2257
2258         * gtk/gtkselection.c (_gtk_selection_request): Fix
2259         a debug message to show correct information.
2260         (_gtk_selection_incr_event): Make INCRemental transfer
2261         of MULTIPLE targets work. This was broken since 1997!
2262
2263 2004-05-02  Hans Breuer  <hans@breuer.org>
2264
2265         * gdk/win32/gdkdrawable-win32.c (draw_segments) : don't
2266         modify the passed in GdkSegment(s) in place, we may get
2267         them again to draw at the same place. Fixes bug #129095, 
2268         bug #137177, ...
2269         (draw_segments) draw the end pixel again to get the 
2270         pixmap mask right, fixes bug #126710, #130202
2271
2272         * gdk/win32/gdkwindow-win32.c : use SetForegroundWindow,
2273         fixes bug #106013, John Ehresman
2274
2275         * gtk/makefile.msc.in : don't try to link gtk.res but
2276         use gtk-win32.res (as supposed to be fixed below :)
2277
2278 2004-05-01  Hans Breuer  <hans@breuer.org>
2279
2280         * tests/Makefile.am : tests/makefile.msc is in CVS for
2281         a long time, finally added to EXTRA_DIST : fixes bug 
2282         #141334, John Ehresman
2283
2284 2004-04-30  Matthias Clasen  <mclasen@redhat.com>
2285
2286         * === Released 2.4.1 ===
2287
2288         * configure.in: Version 2.4.1, interface age 1. 
2289
2290         * NEWS: Updates
2291
2292 2004-04-29  Federico Mena Quintero  <federico@ximian.com>
2293
2294         Fixes #140412.
2295
2296         * gtk/gtkfilechooserdefault.c (remove_selected_bookmarks): New
2297         function; moved the code over from
2298         remove_bookmark_button_clicked_cb().
2299         (remove_selected_bookmarks): Now, getting a non-removable bookmark
2300         is not an error, as we may be called as a result of hitting the
2301         Delete key.
2302         (shortcuts_key_press_event_cb): New handler; delete the bookmark
2303         if the user presses Backspace, Delete, or KP_Delete.
2304
2305 2004-04-29  Matthias Clasen  <mclasen@redhat.com>
2306
2307         * gtk/gtkaction.c (closure_accel_activate): Use
2308         _gtk_action_emit_activate() instead of directly
2309         emitting the activate signal.  (#141429, Jody Goldberg)
2310
2311         * gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel): 
2312         Warn people when the accelerator can not be 
2313         parsed.  (#141429, Jody Goldberg)
2314
2315 2004-04-29  Matthias Clasen  <mclasen@redhat.com>
2316
2317         * tests/testentrycompletion.c (main): Add a missing 
2318         cat.  (#141070, Chris Sherlock)  
2319
2320         * gtk/gtkrc.c (gtk_rc_check_pixmap_dir): Remove unused
2321         variable.  (#141022, Chris Sherlock)
2322         
2323         * gtk/gtkcombo.c (gtk_combo_popup_list): Add a missing
2324         cast.  (#141013, Chris Sherlock)
2325
2326         * gtk/gtkcellview.c (gtk_cell_view_cell_layout_clear): Remove
2327         unused variable.  (#141011, Chris Sherlock)
2328
2329 2004-04-29  Tor Lillqvist  <tml@iki.fi>
2330
2331         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Plug memory
2332         leak. (#140775, John Ehresman)
2333
2334 Thu Apr 29 01:09:50 2004  Matthias Clasen  <maclas@gmx.de>
2335
2336         * gdk/gdkdraw.c (_gdk_drawable_get_scratch_gc): Use depth - 1
2337         to index the cached gcs, not depth.  (#139494)
2338
2339 2004-04-28  Matthias Clasen  <mclasen@redhat.com>
2340
2341         * gdk/gdkdraw.c (_gdk_drawable_get_scratch_gc): Docs typo fix.
2342
2343 Sun Apr 25 15:36:02 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
2344
2345         * gtk/gtktoolbutton.c (gtk_tool_button_set_label_widget): Fix
2346         cut'n'paste-o from previous commit. (#141046, Torsten Schoenfeld).
2347
2348 2004-04-24  Theppitak Karoonboonyanan  <thep@linux.thai.net>
2349
2350         Patch to add support for string conversion callbacks to
2351         GtkIMContextXIM (#101814)
2352
2353         * modules/input/gtkimcontextxim.c: Set the string conversion callback
2354         if supported by the XIC.
2355
2356         (struct _GtkIMContextXIM): Add string_conversion_callback member.
2357
2358         (struct _GtkXIMInfo, setup_im): Check and keep flag inidicating
2359         whether string conversion callback is supported.
2360
2361         (gtk_im_context_get_ic, +set_string_conversion_callback,
2362         +string_conversion_callback): Also initialize string conversion
2363         callback, if supported, along with the IC initialization.
2364
2365         * modules/input/imxim.c: Make "xim" module default for Thai as well.
2366
2367 2004-04-23  Matthias Clasen  <mclasen@redhat.com>
2368
2369         * gtk/gtkclipboard.c (gtk_clipboard_wait_for_targets): Correctly
2370         initialize targets.  (#139883, John Finlay)
2371
2372         * gdk/gdkdraw.c (gdk_draw_drawable): Small doc improvement. 
2373
2374         * gtk/gtktreeselection.c (gtk_tree_selection_get_selected_rows): 
2375         Don't recommend gtk_tree_row_reference_new_proxy().  (#138309,
2376         Tim-Philipp Müller)
2377
2378         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_set_cell_data): 
2379         Remove an excessive g_return_if_fail().
2380
2381         * gdk/x11/gdkevents-x11.c (set_user_time): Make set_user_time()
2382         static.
2383         * gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): 
2384         _-prefix calls of gdk_x11_window_set_user_time().
2385
2386 2004-04-22  Matthias Clasen  <mclasen@redhat.com>
2387
2388         * gtk/gtkuimanager.c (update_node): Make sure the separators 
2389         used to demarkate placeholder ends don't show up on 
2390         show_all().  (#140496, Murray Cumming)
2391
2392         * gtk/gtkspinbutton.c (spin_button_at_limit): Make spinbuttons
2393         work with negative increments.  (#137975, Tim Gerla)
2394
2395 Wed Apr 21 21:38:03 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
2396
2397         * gtk/gtktoolbutton.c (gtk_tool_button_set_label_widget,
2398         gtk_tool_button_set_icon_widget): Remove the old widget from the
2399         tool button before overwriting it with the new widget.
2400
2401         (#140508, Todd Goyen)
2402         
2403 2004-04-22  Tor Lillqvist  <tml@iki.fi>
2404
2405         Fix the file chooser on Windows. I can't make it misbehave or
2406         crash any more now. But presumably there are still corner cases
2407         not handled. I haven't really checked behaviour of UNC paths, for
2408         instance.
2409
2410         * gtk/gtkfilesystemwin32.c: Accept both backslash and slash in
2411         several places. Use G_IS_DIR_SEPARATOR macro (which could be added
2412         to GLib in 2.6).
2413
2414         (gtk_file_system_win32_get_parent): Like the Unix version, assert
2415         filename is absolute, and avoid one unnecessary string allocation
2416         and freeing.
2417         
2418         (canonicalize_filename,gtk_file_system_win32_parse): Handle drive
2419         letters more correctly.
2420
2421         (gtk_file_system_win32_render_icon): Assure correct syntax is used
2422         for root folder of a drive. (#137962, Morten Welinder)
2423
2424         (filename_is_some_root): New function that accepts also root
2425         without any drive specified.
2426
2427         (filename_is_drive_root): Rename from filename_is_root.
2428
2429         * gtk/gtkfilechooserentry.c (completion_match_func): Casefold on
2430         Windows.
2431
2432 2004-04-21  Matthias Clasen  <mclasen@redhat.com>
2433
2434         * gtk/gtkentry.c (gtk_entry_completion_timeout): Pop down the 
2435         completion window if there are no completions anymore.
2436
2437         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
2438         Don't call gtk_tree_view_scroll_to_cell() on an empty tree view. 
2439         It doesn't like that.  (#140642, Christian Persch)
2440
2441         * demos/gtk-demo/expander.c (do_expander): A new demo.
2442
2443         * demos/gtk-demo/Makefile.am (demos): Add expander.c.
2444
2445 2004-04-20  Matthias Clasen  <mclasen@redhat.com>
2446
2447         * gtk/gtktextview.c (gtk_text_view_allocate_children): Make
2448         sure anchored children get size allocated, even if the layout
2449         is valid.  (#122323, Andrew E. Makeev)
2450         (gtk_text_view_scroll_pages): 
2451         (gtk_text_view_scroll_hpages): Don't scroll to cursor position
2452         if we already have pending scrolls. Bandaid fix for #78513.
2453
2454 Mon Apr 19 17:59:17 2004  Owen Taylor  <otaylor@redhat.com>
2455
2456         * INSTALL.in: Update libpng and libjpeg URLs, remove
2457         note about building without since that's not the normal
2458         case.
2459
2460 Sun Apr 11 09:45:11 2004  Owen Taylor  <otaylor@redhat.com>
2461
2462         * gtk/gtkicontheme.c (load_themes): Fix a couple of typos in
2463         handling of SVG/non-SVG unthemed icons.
2464
2465 2004-04-19  Morten Welinder  <terra@gnome.org>
2466
2467         * gtk/gtktoolbar.c (gtk_toolbar_focus): Don't leak list of
2468         children.  (#140523)
2469
2470 2004-04-19  Matthias Clasen  <mclasen@redhat.com>
2471
2472         * gtk/gtktextbtree.c (_gtk_text_line_previous_could_contain_tag): 
2473         Don't stop the iteration up to the tag_root too 
2474         early.  (#109945, Dongho Shin)
2475
2476 Sun Apr 18 17:06:03 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
2477
2478         * gdk/x11/gdkkeys-x11.c (get_effective_keymap): Make
2479         gdk_keymap_translate_keyboard_state() handle NULL
2480         keymaps. (#139715, Torsten Schoenfeld).
2481
2482 Sun Apr 18 16:59:21 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
2483
2484         * configure.in: Don't erase GDK_EXTRA_CFLAGS. Fixes bug 139586,
2485         reported by Pedro RODRIGUEZ, about compilation problems when
2486         Xcursor is installed in a non-standard location.
2487
2488 Sun Apr 18 16:15:15 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
2489
2490         Support for _NET_WM_USER_TIME (bug 115650). Patch by Elijah
2491         Newren.
2492         
2493         * gdk/x11/gdkwindow-x11.[ch]: Add new internal function
2494         _gdk_x11_set_user_time() to set the _NET_WM_USER_TIME property.
2495
2496         * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add user_time field
2497
2498         * gdk/x11/gdkdisplay-x11.c: Add _NET_WM_USER_TIME to list of
2499         precached atoms.
2500         
2501         * gdk/x11/gdkinput-x11.c, gdk/x11/gdkevents-x11.c: Set the
2502         property on user interaction.
2503
2504 2004-04-15  Federico Mena Quintero  <federico@ximian.com>
2505
2506         * gtk/gtkfilesel.c (open_new_dir): Tell the user to use
2507         G_FILENAME_ENCODING, not G_BROKEN_FILENAMES.  Fixes #114065.
2508
2509         * gtk/gtkfilechooserdefault.c (split_uris): Use a variant of the
2510         code from gtkfilesel.c to parse a "text/uri-list" blob.  Fixes
2511         #140126.
2512
2513 2004-04-15  Matthias Clasen  <mclasen@redhat.com>
2514
2515         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 
2516         * gtk/gtkbutton.c (gtk_button_class_init): Doc fixes.
2517
2518 2004-04-14  Matthias Clasen  <mclasen@redhat.com>
2519
2520         * gtk/gtkcombobox.c: 
2521         * gtk/gtkwidget.c: 
2522         Make all style properties readonly.
2523
2524 2004-04-14  Matthias Clasen  <mclasen@redhat.com>
2525
2526         * gtk/gtkcolorsel.c: Add a11y relations between the color
2527         wheel and the spin buttons.  (#132745, Padraig O'Briain)
2528
2529         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): Document
2530         the meaning of size == -1.
2531
2532         * gtk/gtkwidget.c (gtk_widget_render_icon): Explicitly accept  
2533         a size of -1.  (#137436, Brian Cameron)
2534
2535         * gtk/gtkcombobox.c: Make the arrow and separator regular
2536         children of an hbox inside the button, and propagate state
2537         changes from the button to the cell view.  (part of the fix
2538         for #138650, should also fix #137535)
2539
2540         * gtk/gtkcellview.c (gtk_cell_view_expose): Pass the PRELIT
2541         state to gtk_cell_renderer_render() when prelighted. (part 
2542         of the fix for #138650)
2543
2544         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): 
2545         Use PRELIGHT state when appropriate.  (part of the fix for 
2546         #138650)
2547
2548         * gtk/gtkcombobox.c (gtk_combo_box_relayout): Don't spit 
2549         out warnings if called before the combo box is 
2550         realized.  (#139742, Philip Langdale)
2551
2552 Wed Apr 14 03:45:39 2004  Jonathan Blandford  <jrb@gnome.org>
2553
2554         * gtk/gtktreeview.c (gtk_tree_view_expose): propagate expose
2555         events to children.
2556
2557 Wed Apr 14 03:32:58 2004  Jonathan Blandford  <jrb@gnome.org>
2558
2559         * gtk/gtkpathbar.c (make_directory_button): remove spurious
2560         gtk_box_pack_start.
2561
2562 Tue Apr 13 16:19:23 2004  Jonathan Blandford  <jrb@redhat.com>
2563
2564         * gtk/gtkpathbar.c (make_directory_button): patch from Owen to
2565         make the buttons sized by a bold label.  This makes the text
2566         'swim' a little, but stops the buttons from resizing, #137210
2567
2568 2004-04-13  Matthias Clasen  <mclasen@redhat.com>
2569
2570         * gtk/gtkuimanager.c (get_child_node): Don't crash if a node 
2571         has no name.
2572         (start_element_handler): Accept separators without unique 
2573         names.  (#133302, Anders Carlsson)
2574
2575         * gtk/gtkactiongroup.c (gtk_action_group_add_action): Document
2576         possible accelerator gotcha when using this function.  (#139641, 
2577         Christian Persch)
2578
2579         * gtk/gtkuimanager.c (node_remove_ui_reference): Don't leak
2580         list nodes.  (#138862, Morten Welinder)
2581
2582 Tue Apr 13 12:24:49 2004  Jonathan Blandford  <jrb@redhat.com>
2583
2584         * gtk/gtktreeview.c (gtk_tree_view_destroy): remove unused
2585         variable.
2586         (gtk_tree_view_button_press): If we activated the row we don't
2587         want to grab focus back, as moving focus to another widget is
2588         pretty common, #138458
2589
2590 2004-04-12  Federico Mena Quintero  <federico@ximian.com>
2591
2592         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Added
2593         documentation to all the signals.
2594
2595 2004-04-12  Matthias Clasen  <mclasen@dhcp64-228.boston.redhat.com>
2596
2597         * gtk/gtkcombobox.c (gtk_combo_box_unset_model): Don't unref
2598         model if it is NULL. (#139770)
2599
2600         * gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Typo fix.
2601
2602         * gtk/gtkentrycompletion.c (gtk_entry_completion_init): Don't add
2603         a shadow inside the scrolled window, add it around the vbox.
2604
2605         * gtk/gtkentryprivate.h: 
2606         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
2607         Return a boolean indicating whether the popup is positioned above 
2608         or below. Scroll the completions to the beginning or the end, 
2609         depending on the positioning.
2610
2611         * gtk/gtkentry.c (gtk_entry_completion_key_press): Make keynav
2612         wrap around in the entry completion popup, and allow GDK_UP to 
2613         enter the popup.  (#137440)
2614
2615 2004-04-12  Matthias Clasen  <mclasen@redhat.com>
2616
2617         * gtk/gtkentry.c (gtk_entry_size_request): Make sure the style is 
2618         there before using it.
2619
2620 Sun Apr 11 15:08:45 2004  Jonathan Blandford  <jrb@gnome.org>
2621
2622         * gtk/gtktreeprivate.h: Moved search entries into priv data.
2623
2624         * gtk/gtktreeview.c: Prep for type-ahead support.
2625
2626         (gtk_tree_view_destroy): Destroy the search window explicitly.
2627         (gtk_tree_view_key_press): Minor change; prep for type-ahead
2628         (gtk_tree_view_ensure_interactive_directory): New function
2629         (gtk_tree_view_focus_out): Rework to handle new entry life-cycle.
2630         (gtk_tree_view_real_start_interactive_search): rework
2631         (gtk_tree_view_search_dialog_hide): ditto
2632         (gtk_tree_view_search_delete_event): ditto
2633         (gtk_tree_view_search_button_press_event): ditto
2634         (gtk_tree_view_search_key_press_event): ditto
2635         (gtk_tree_view_search_move): ditto
2636         (gtk_tree_view_search_init): ditto
2637
2638         * gtk/gtktreeviewcolumn.c:
2639         (gtk_tree_view_column_cell_layout_clear): remove unused variable.
2640
2641         * tests/testfilechooser.c: (main): change
2642
2643 2004-04-11  Hans Breuer  <hans@breuer.org>
2644
2645         * gdk/win32/gdkspawn-win32.c : workaround for bug #137496,
2646         the real fix would involve just another small API breakage,
2647         i.e. gdk_spawn_* using GPid not just gint.
2648
2649         * gtk/makefile.msc.in : build gtk-win32.res, not gtk.res
2650
2651 2004-04-10  Tor Lillqvist  <tml@iki.fi>
2652
2653         * gdk/win32/gdkkeys-win32.c (gdk_keymap_translate_keyboard_state):
2654         If both Shift and CapsLock pressed, ignore the shift only for
2655         letters (that would have been affected by the CapsLock). (#139095)
2656
2657         * gdk/win32/gdkglobals-win32.c: Disable tablet support by default,
2658         seems to be even buggier now than it used to be. (#138341)
2659         Initialize _gdk_input_ignore_wintab to TRUE.
2660
2661         * gdk/win32/gdkmain-win32.c: Add --use-wintab switch and
2662         GDK_USE_WINTAB environment variable to turn on tablet support.
2663
2664 2004-04-09  Christian Persch  <chpe@cvs.gnome.org>
2665
2666         * gtk/gtkuimanager.c: (gtk_ui_manager_insert_action_group),
2667         (gtk_ui_manager_remove_action_group): Terminate
2668         g_object_[dis]connect() calls with NULL instead of 0.
2669         Fixes #138997.
2670
2671 2004-04-09  Guntupalli Karunakar  <karunakar@freedomink.org>
2672
2673         * configure.in: Added "gu" (Gujarati) to ALL_LINGUAS.
2674
2675 2004-04-07  Federico Mena Quintero  <federico@ximian.com>
2676
2677         Fix #132500.
2678
2679         * gtk/gtkfilesystem.c (gtk_file_system_parse): Ensure that the
2680         passed-in 'str' is not NULL.
2681
2682         * gtk/gtkfilesystemunix.c (expand_tilde): New helper function;
2683         expands "~/" or "~foo/" at the beginning of a filename.
2684         (gtk_file_system_unix_parse): Use expand_tilde() before doing
2685         anything else.
2686
2687         * gtk/gtkfilechooserentry.c
2688         (gtk_file_chooser_entry_maybe_update_directory): Take in a
2689         force_reload argument.
2690         (gtk_file_chooser_entry_changed): If gtk_file_system_parse()
2691         returns an error, set the file_part_pos to -1.
2692         (load_directory_callback): Only populate the model if the
2693         file_part_pos is not -1.
2694
2695 2004-04-06  Pablo Saratxaga  <pablo@mandrakesoft.com>
2696
2697         * configure.in: Added Icelandic (is) to ALL_LINGUAS
2698
2699 2004-04-05  Federico Mena Quintero  <federico@ximian.com>
2700
2701         * gtk/gtkfilechooserdefault.c (location_popup_handler): Use a
2702         title for SAVE and CREATE_FOLDER modes.  Fixes #137272.
2703
2704         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_make_path): Look
2705         for G_DIR_SEPARATOR in the display_name, and err out if it is
2706         present; use the same error message as Nautilus.  Fixes #136467.
2707
2708         * gtk/gtkfilechooserdefault.c (file_pane_create): Make the
2709         new-folder button say "Create Fo_lder" rather than "Create
2710         _Folder", so that the mnemonic doesn't conflict with the "Save in
2711         _folder" label.  Fixes #136975.
2712
2713 2004-04-05  Federico Mena Quintero  <federico@ximian.com>
2714
2715         * gtk/gtkpathbar.c (_gtk_path_bar_set_path): Ref/sink the
2716         buttons.  Also, free them correctly upon failure.  Based on a
2717         patch by Morten Welinder, fixes #137956.
2718
2719 2004-04-05  Anders Carlsson  <andersca@gnome.org>
2720
2721         * gdk/gdk.c (gdk_arg_context_parse): Handle '--' correctly.
2722
2723 Fri Apr  2 17:57:33 2004  Jonathan Blandford  <jrb@redhat.com>
2724
2725         * gtk/gtktreeview.c (gtk_tree_view_row_inserted): set the height
2726         correctly for fixed height when inserting a node, #138082
2727
2728 2004-04-01  Federico Mena Quintero  <federico@ximian.com>
2729
2730         Fix #136077.
2731
2732         * gtk/gtkpathbar.h (struct _GtkPathBarClass): Add a
2733         "child_is_hidden" boolean argument to the "path-clicked" signal.
2734
2735         * gtk/gtkpathbar.c (struct _ButtonData): Added a file_is_hidden
2736         field.
2737         (make_directory_button): Take a file_is_hidden argument; put it in
2738         the ButtonData.
2739         (_gtk_path_bar_set_path): See whether each path component path is
2740         a hidden file.
2741         (gtk_path_bar_class_init): Add the file_is_hidden argument to the
2742         "path-clicked" signal.
2743         (button_clicked_cb): See if the downwards button represents a
2744         hidden file for the file_is_hidden argument in the signal
2745         emission.
2746
2747         * gtk/gtkmarshalers.list: Added a signal type VOID:POINTER,BOOLEAN.
2748
2749         * gtk/gtkfilechooserdefault.c
2750         (gtk_file_chooser_default_select_path): If we fail to switch
2751         folders, don't try to select the path in the file system model.
2752         Also, return the result from _gtk_file_system_model_path_do().
2753         (gtk_file_chooser_default_select_path): Turn on show_hidden in the
2754         file system model if we are asked to select a hidden file.
2755         (path_bar_clicked): Show hidden files based on whether the
2756         immediate downwards folder in the path bar is a hidden file
2757         itself.
2758         (struct _GtkFileChooserDefault): Added fields
2759         browse_files_popup_menu and browse_files_popup_menu_hidden_files_item.
2760         (create_file_list): Set an object data key of
2761         "GtkFileChooserDefault" on the tree view so that we can find the
2762         impl from the popup menu callbacks.  Also, hook up to the
2763         "button-press-event" and "popup-menu" signals in the file list to
2764         bring up a popup menu.
2765         (list_popup_menu_cb): New callback.
2766         (list_button_press_event_cb): New callback.
2767
2768         Fix #138763:
2769
2770         * gtk/gtkfilesystemmodel.c
2771         (_gtk_file_system_model_new): Oops, connect_object to
2772         "finished-loading".
2773
2774 2004-03-31  Tor Lillqvist  <tml@iki.fi>
2775
2776         * configure.in: Move AC_CANONICAL_HOST earlier, before the check
2777         for native Win32. (#136559, J. Ali Harlow)
2778
2779         * gdk/win32/gdkdrawable-win32.c (draw_arc): Use X11 semantics for
2780         angles. Thanks to Tim Newsham.
2781
2782 2004-03-29  Federico Mena Quintero  <federico@ximian.com>
2783
2784         Fix #137520.
2785
2786         * gtk/gtkfilesystem.h (struct _GtkFileFolderIface): Added slots
2787         for an ::is_finished_loading() method and a ::finished_loading()
2788         signal at the end of the struct.
2789
2790         * gtk/gtkfilesystem.c (gtk_file_folder_base_init): Create the
2791         "finished-loading" signal.
2792         (gtk_file_folder_is_finished_loading): New function.
2793
2794         * gtk/gtkfilesystemunix.c
2795         (gtk_file_folder_unix_is_finished_loading): Implement.
2796
2797         * gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModelClass): New
2798         slot for a "finished-loading" signal.
2799         (gtk_file_system_model_class_init): Create the "finished-loading"
2800         signal.
2801         (struct _GtkFileSystemModel): New field
2802         idle_finished_loading_source.  We emit the "finished-loading"
2803         signal in an idle if the root folder was done loading right in
2804         _gtk_file_system_model_new(), so that the caller has a chance to
2805         connect to the signal.
2806         (_gtk_file_system_model_new): Connect to the normal signals of the
2807         folder even if the initial _list_children() fails.  Also, see if
2808         the folder is finished loading; connect to the "finished-loading"
2809         signal otherwise.
2810         (gtk_file_system_model_finalize): Remove the idle handler.
2811
2812         * gtk/gtkfilechooserdefault.c (set_list_model): Set a busy cursor
2813         and connect to the model's "finished-loading" signal.
2814         (get_toplevel): New helper function.
2815         (error_message): Use get_toplevel().
2816         (trap_activate_cb): Likewise.
2817         (location_popup_handler): Likewise.
2818         (set_busy_cursor): New function.
2819         (browse_files_model_finished_loading_cb): New callback.
2820
2821 2004-03-25  Federico Mena Quintero  <federico@ximian.com>
2822
2823         * gtk/gtkfilechooserdefault.c (check_preview_change): Just use the
2824         file under the cursor; we don't need the logic from
2825         GtkFileSelection after all.  Fixes #132255.
2826
2827 2004-03-25  Federico Mena Quintero  <federico@ximian.com>
2828
2829         * gtk/gtkfilechooserdefault.c (location_entry_create): Fill the
2830         location entry with the display name of the file under the cursor
2831         for Open mode, or the typed filename in Save mode.
2832
2833 2004-03-24  J. Ali Harlow  <ali@juiblex.co.uk>
2834
2835         * gtk/gtkfilesystemwin32.c
2836         (filename_is_root): Bare drive designators (eg., "c:") are
2837         no longer considered as root filenames.  Fixed #137942
2838
2839 2004-03-24  J. Ali Harlow  <ali@juiblex.co.uk>
2840
2841         * gtk/gtkfilesystemwin32.c
2842         (gtk_file_system_win32_create_folder): Invert test for error in
2843         mkdir.  Fixes #137945
2844
2845 2004-03-24  J. Ali Harlow  <ali@juiblex.co.uk>
2846
2847         Fixed #138004 using Federico's code from #132327.
2848
2849         * gtk/gtkfilesystemwin32.c (struct _GtkFileSystemWin32): Add a
2850         folder_hash field to keep a list of live folder objects.
2851         (gtk_file_system_win32_init): Create the folder_hash.
2852         (gtk_file_system_win32_finalize): Destroy the folder_hash.
2853         (gtk_file_system_win32_get_folder): Ref and return an existing
2854         folder if we have it around, otherwise return a new folder object.
2855         (struct _GtkFileFolderWin32): Add a field for the parent file system.
2856         (gtk_file_folder_win32_finalize): Remove the folder from the file
2857         system's hash table.
2858         (gtk_file_system_win32_create_folder):  Emit "files-added" on the
2859         newly-created folder's parent.  Fixes #138004.
2860
2861 2004-03-24  J. Ali Harlow  <ali@juiblex.co.uk>
2862
2863         * gtk/gtkfilesystemwin32.c
2864         (gtk_file_system_win32_get_folder): Test that path is actually
2865         a directory and throw error if not. Fixed bug #137950
2866
2867 2004-03-22  J. Ali Harlow  <ali@juiblex.co.uk>
2868
2869         * gtk/gtkfilesystemwin32.c
2870         (gtk_file_system_win32_volume_get_display_name): Ignore empty
2871         volume labels; assume that GetVolumeInformation would fail if
2872         GetVolumeInformationW does; catches a small memory leak;
2873         pass the buffer size to GetVolumeInformationW in wide
2874         characters instead of bytes. Fixes bug #137543
2875         (list_volumes): Cope with the theoretical possibility of
2876         more than 26 logical drives. Fixes bug #137940
2877         (bookmarks_serialize): Now actually removes bookmarks.
2878         Fixes bug #137943
2879
2880 2004-03-22  Guntupalli Karunakar  <karunakar@freedomink.org>
2881
2882         * configure.in: Added "pa" (Punjabi) to ALL_LINGUAS.
2883
2884 2004-03-21  Tor Lillqvist  <tml@iki.fi>
2885
2886         * gtk/gtkfilesystemwin32.c
2887         (gtk_file_system_win32_volume_get_base_path): Include the
2888         backslash. Otherwise gtk_file_system_win32_path_to_uri() returns
2889         NULL for a volume base path, as g_filename_to_uri() requires an
2890         absolute path, and just a drive letter and colon isn't. (#137543)
2891
2892 2004-03-20  Hans Breuer  <hans@breuer.org>
2893
2894         * gtk/gtkfilesystemwin32.c : applied the undisputable and
2895         required [due to recent gtkfilesystem internal api semantic 
2896         changes] part of patches to fix bug #137543 (Tor Lillqvist,
2897         J. Ali Harlow)
2898
2899         * gdk/gdkevents-win32.c (handle_configure_event) :
2900              (gdk_event_translate), WM_WINDOWPOSCHANGED : initialize
2901         GdkWindowObject::x, y with screen coords to make 
2902         gdk_window_get_position () return the right thing and thus fix
2903         drag and drop positioning (e.g. Gimp tabs, fixes bug #137192)
2904
2905 2004-03-19  Federico Mena Quintero  <federico@ximian.com>
2906
2907         * Revert the patch to #137520, as 2.4.1 is for conservative bug
2908         fixes only.  The patch is attached to the bug report, for
2909         reference.
2910
2911 2004-03-19  Morten Welinder  <terra@gnome.org>
2912
2913         * gtk/gtkfilechooserdefault.c
2914         (gtk_file_chooser_default_set_current_folder): Test existance of
2915         the path after checking for locality, if needed.
2916
2917 2004-03-19  Federico Mena Quintero  <federico@ximian.com>
2918
2919         Fix #137520.
2920
2921         * gtk/gtkfilesystem.h (struct _GtkFileFolderIface): Added slots
2922         for an ::is_finished_loading() method and a ::finished_loading()
2923         signal at the end of the struct.
2924
2925         * gtk/gtkfilesystem.c (gtk_file_folder_base_init): Create the
2926         "finished-loading" signal.
2927         (gtk_file_folder_is_finished_loading): New function.
2928
2929         * gtk/gtkfilesystemunix.c
2930         (gtk_file_folder_unix_is_finished_loading): Implement.
2931
2932         * gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModelClass): New
2933         slot for a "finished-loading" signal.
2934         (gtk_file_system_model_class_init): Create the "finished-loading"
2935         signal.
2936         (struct _GtkFileSystemModel): New field
2937         idle_finished_loading_source.  We emit the "finished-loading"
2938         signal in an idle if the root folder was done loading right in
2939         _gtk_file_system_model_new(), so that the caller has a chance to
2940         connect to the signal.
2941         (_gtk_file_system_model_new): Connect to the normal signals of the
2942         folder even if the initial _list_children() fails.  Also, see if
2943         the folder is finished loading; connect to the "finished-loading"
2944         signal otherwise.
2945         (gtk_file_system_model_finalize): Remove the idle handler.
2946
2947         * gtk/gtkfilechooserdefault.c (set_list_model): Set a busy cursor
2948         and connect to the model's "finished-loading" signal.
2949         (get_toplevel): New helper function.
2950         (error_message): Use get_toplevel().
2951         (trap_activate_cb): Likewise.
2952         (location_popup_handler): Likewise.
2953         (set_busy_cursor): New function.
2954         (browse_files_model_finished_loading_cb): New callback.
2955
2956 Thu Mar 18 12:10:45 2004  Owen Taylor  <otaylor@redhat.com>
2957
2958         * gtk/gtktreeitem.c (gtk_tree_item_forall): Include 
2959         eventbox for expander. (#137564, reported by
2960         Jacques Garrigue)
2961
2962 2004-03-18  Guntupalli Karunakar  <karunakar@freedomink.org>
2963
2964         * mr.po: Added "mr" for Marathi to ALL_LINGUAS.
2965
2966 2004-03-17  Morten Welinder  <terra@gnome.org>
2967
2968         * gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): Free
2969         volumes not actually put into the shortcut list.
2970
2971         * tests/prop-editor.c (object_changed): Plug leak.
2972
2973         * tests/testfilechooser.c (main): Plug some leaks and expose
2974         others.
2975
2976         * tests/prop-editor.c (create_prop_editor): Don't leak the tooltip
2977         object.  Fixed #136652.
2978
2979         * gtk/gtkfilechooserdefault.c (check_icon_theme): Do nothing if we
2980         have no screen.  Fixes #137260.
2981         (shortcuts_add_bookmark_from_path): Simplify using check_is_folder
2982         thereby fixing leak.  Fixes #137259.
2983
2984         * gtk/gtkpathbar.c (gtk_path_bar_forall): Make this work when the
2985         slider buttons have been destroyed.
2986         (gtk_path_bar_remove): Make this work for slider buttons too.
2987         Fixes #137257
2988
2989 2004-03-15  Morten Welinder  <terra@gnome.org>
2990
2991         * gtk/gtkfilechooserdefault.c (shortcuts_add_bookmark_from_path):
2992         Sanitize and plug leak.
2993         (check_icon_theme): Only do something if the widget has a screen.
2994
2995 Wed Mar 17 01:20:28 2004  Matthias Clasen  <maclas@gmx.de>
2996
2997         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
2998         Move the repositioning logic from _gtk_entry_completion() popup
2999         over here. Fixes #137355, reported by Niklas Knutsson.
3000