]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-6
only reorder on button 1, part of #141937
[~andy/gtk] / ChangeLog.pre-2-6
1 Tue Jan  4 16:52:14 2005  Jonathan Blandford  <jrb@redhat.com>
2
3         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event):
4         only reorder on button 1, part of #141937
5
6 Tue Jan  4 11:36:43 2005  Søren Sandmann  <sandmann@redhat.com>
7
8         Bug 162112.
9         
10         * gtk/gtktextview.c (text_window_realize): Add GDK_EXPOSURE_MASK
11         to win->window's event_mask
12
13         * gtk/gtkviewport.c (gtk_viewport_realize): Add GDK_EXPOSURE_MASK
14         to viewport->view_window.
15
16 2005-01-04  Matthias Clasen  <mclasen@redhat.com>
17
18         * demos/testpixbuf.c (main): Remove the size_prepared callback,
19         to test incremental display.
20         (new_testrgb_window): Return the drawing area, not the window,
21         since we want to queue draws on the drawing area.
22
23 2005-01-03  Matthias Clasen  <mclasen@redhat.com>
24
25         * examples/*: Re-extract.
26
27         * docs/tutorial/gtk-tut.sgml: Small corrections.
28         
29         * docs/tutorial/gtk-tut.sgml: Some updates for the drawing
30         section.  (#161414, Robert Ancell)
31
32         * docs/tutorial/gtk-tut.sgml: Make it build.
33
34         * gtk/gtkdialog.c (gtk_dialog_run): Some clarification
35         regarding modality.  (#112903, Dave Bordoley)
36
37         * gtk/gtkfixed.c (gtk_fixed_set_has_window): 
38         Add a little motivation.  (#145556, Tommi Komulainen)
39
40         * docs/tutorial/gtk-tut.sgml: Clarify section on 
41         g_signal_connect_swapped.   (#120543, David Bourguignon)
42
43         Make gtk_icon_theme_load_icon() work independent of
44         icon factory initialization.  (#162791, Tristan Van Berkom)
45         
46         * gtk/gtkiconfactory.[hc]: Rename ensure_default_icons to
47         _gtk_icon_factory_ensure_default_icons, and make it non-static.
48
49         * gtk/gtkicontheme.c (find_builtin_icon): ..and call it here.
50
51 2005-01-02  Matthias Clasen  <mclasen@redhat.com>
52
53         * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_remove_shortcut_folder): 
54         Don't add a shortcut here.  (#162752, Tor Lillqvist)
55
56 2005-01-02  Tor Lillqvist  <tml@iki.fi>
57
58         * gtk/Makefile.am (libgtk_target_ldflags): Add -lole32, needed for
59         CoTaskMemFree in get_special_folder() below.
60
61         * gtk/gtkfilesystem.h: Implement case-insensitive path compare on
62         Win32 using _gtk_file_system_win32_path_compare().
63
64         * gtk/gtk.symbols: Add _gtk_file_system_win32_path_compare.
65
66         * gtk/gtkfilechooserbutton.c (model_add_special)
67         * gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Use
68         _gtk_file_system_win32_get_desktop() to get correct Desktop folder
69         on Win32. (#144003)
70
71         * gtk/gtkfilesystemwin32.c: Remove unnecessary includes. Do
72         consider all drives "mounted", including floppies. Trying to
73         inspect the contents of a nonexistent floppy will cause errors
74         later that are handled normally, no need to avoid them
75         completely. Keep the drive type in the GtkFileSystemVolume.
76         Support UNC paths. (#161797, #137874) Fix error message
77         capitalizations as in gtkfilesystemunix.c.
78
79         (gtk_file_system_win32_init): Start one timeout per
80         GtkFileSystemWin32.
81
82         (gtk_file_system_win32_finalize): Remove the timeout.
83
84         (get_special_folder): Copied from GLib.
85
86         (_gtk_file_system_win32_get_desktop): New function, uses
87         get_special_folder().
88
89         (gtk_file_system_win32_list_volumes): Don't start a timeout at
90         each call to this function. Don't assume A: and B: are floppies.
91
92         (gtk_file_system_win32_get_volume_for_path): Don't assume all
93         volumes are drive roots, i.e. support share roots of UNC paths
94         (\\server\share).
95
96         (gtk_file_system_win32_get_folder): Don't assume errno is set
97         after g_file_test() returns FALSE. It isn't on Win32 (and even on
98         Unix I don't think one should assume anything about errno after
99         g_file_test()).
100
101         (gtk_file_system_win32_volume_get_is_mounted): Always return TRUE.
102
103         (gtk_file_system_win32_volume_get_display_name): Don't call
104         GetVolumeInformation() on drives A: or B: if they are removable,
105         as they might then be floppies, causing an unnecessary
106         delay. (#157820)
107
108         (gtk_file_system_win32_volume_render_icon): Use network icon for
109         unrecognized drive types.
110
111         (canonicalize_filename, gtk_file_system_win32_parse): Don't get
112         confused by UNC paths.
113
114         (bookmarks_serialize): Use _gtk_file_system_win32_path_compare()
115         for case-insensitive UTF-8 path comparison.
116
117         (extract_icon): Use SHGetFileInfo() which is faster than
118         ExtractAssociatedIcon(). Icon extraction is still slow, though,
119         needs work.
120
121         (win32_pseudo_mime_lookup): Don't use the same icon for all
122         shortcuts or executables. Cache only other file type icons.
123
124         (gtk_file_system_win32_render_icon): Use network stock icon for
125         remote drives and UNC server share roots. Compare home directory
126         case-insensitively. Do lookup icons also for executable files,
127         after all, it's these files that can have individual icons in the
128         first place. Yes, it can be slow. Needs work.
129
130         (filename_is_drive_root): Require also the slash after the colon.
131
132         (filename_is_server_share): New function.
133
134         (_gtk_file_system_win32_path_compare): New function, does
135         case-folded UTF-8 comparison.
136
137         * gtk/gtkfilesystemwin32.h: Declare
138         _gtk_file_system_win32_path_compare().
139
140 2005-01-01  Matthias Clasen  <mclasen@redhat.com>
141
142         * gtk/gtkbutton.c (gtk_button_set_image): Allow unsetting the
143         custom image by passing NULL.
144         (gtk_button_init): Initialize image_is_stock to TRUE, fixing
145         a problem with changing stock labels.  (#162273, Marcin 
146         Krzyzanowski)
147
148 2005-01-01  Tor Lillqvist  <tml@iki.fi>
149
150         * gtk/gtkmodules.c (get_module_path)
151         * gtk/gtkrc.c (gtk_rc_make_default_dir, gtk_rc_get_im_module_file,
152         gtk_rc_get_theme_dir, gtk_rc_add_initial_default_files): With
153         g_getenv() now returning UTF-8 on Win32, no need to call
154         g_locale_to_utf8().
155
156 2004-12-31  Matthias Clasen  <mclasen@redhat.com>
157
158         * gtk/gtkkeyhash.c (_gtk_key_hash_lookup_keyval) 
159         (_gtk_key_hash_lookup): Don't sort a list of values as if
160         it was a list of entries. This fixes crashes during mnemonic
161         activation in the presence of multiple keymaps. (#162488, 
162         Christian Persch)
163
164 2004-12-30  Matthias Clasen  <mclasen@redhat.com>
165
166         * gtk/gtkcombobox.c (gtk_combo_box_button_state_changed): Fix
167         state propagation when making an insensitive combo box sensitive
168         again.  (#162524, Carlos Garnacho Parro)
169
170         * gtk/gtkfilechooserdefault.c: Use secondary text for error 
171         dialogs.
172
173         * gtk/gtkfilesystemunix.c: Clean up some cases of errno handling
174         (#162496, noted by Tor Lillqvist), and use g_filename_display_name()
175         for error messages. Also mark some error messages for translation,
176         fix capitalization of error messages.
177
178         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property): 
179         Use g_value_get_boolean() for ellipsize_set.  (#162447, 
180         Brian Tarricone)
181
182 2004-12-30  Tor Lillqvist  <tml@iki.fi>
183
184         * gtk/gtkicontheme.c (gtk_icon_theme_init): Use /usr/share/pixmaps
185         only on Unix.
186
187 2004-12-28  Matthias Clasen  <mclasen@redhat.com>
188
189         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Inherit
190         submenu direction from the parent menu.
191
192         * gtk/gtkmenushell.c (gtk_menu_shell_select_submenu_first): 
193         Return a boolean indicating whether an item in the submenu
194         was selected.
195         (gtk_real_menu_shell_move_current): When going in child 
196         direction, don't get stuck at completely insensitive 
197         submenus.  (#162055, Billy Biggs)       
198
199 2004-12-27  Matthias Clasen  <mclasen@redhat.com>
200
201         Make the clipboard image API more robust (#162357, 
202         Torsten Schoenfeld):
203         
204         * gtk/gtkclipboard.c (clipboard_image_received_func): Don't
205         ref the pixbuf if it is NULL.
206
207         * gtk/gtkselection.c (gtk_selection_data_set_pixbuf): 
208         NULL-terminate the varargs in the call to 
209         gdk_pixbuf_save_to_buffer(). 
210         (gtk_selection_data_get_pixbuf): Only use a pixbuf loader 
211         if there is data to load.
212
213 2004-12-27  Matthias Clasen  <mclasen@redhat.com>
214
215         * gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): 
216         Set x_root and y_root in button and motion events from 
217         extended input devices.  (#148715, Robert Ögren)
218
219         * gtk/gtktreeview.c (gtk_tree_view_class_init): Fix a 
220         typo.  (#162339, Alessio Dessi)
221
222         * gtk/gtkadjustment.c (gtk_adjustment_class_init): Document
223         properties as new since 2.4.  (#156101, Billy Biggs)
224
225         * configure.in: Add a warning about the linux-fb 
226         target.  (#155488, Zeeshan Ali)
227
228         * gtk/gtkmain.c (gtk_init_with_args): Typo fix.  (#162278,
229         Torsten Schoenfeld)
230
231 2004-12-26  Matthias Clasen  <mclasen@redhat.com>
232
233         * gtk/gtkfilechooser.c (gtk_file_chooser_set_action): 
234         Typo fix.  (#162219, Masao Mutoh)
235         (gtk_file_chooser_set_preview_widget_active): 
236         Another typo.  (#162218, Masao Mutoh)
237
238 2004-12-23  Matthias Clasen  <mclasen@redhat.com>
239
240         * gtk/gtkliststore.c (gtk_list_store_iter_children): 
241         Return TRUE if there are children.  (#162134, Iñigo Serna,
242         patch by John Finlay)
243
244         * gtk/gtkcombobox.c (gtk_combo_box_button_state_changed): 
245         Transfer state from the button to the cell view to get
246         prelighting right.  (#156327, Ricardo Veguilla)
247
248 Wed Dec 22 14:22:19 2004  Søren Sandmann  <sandmann@redhat.com>
249
250         * tests/testtoolbar.c (timeout_cb): Add sensitivity-changing
251         timeout. Written by Christian Persch.
252
253 Wed Dec 22 14:14:02 2004  Søren Sandmann  <sandmann@redhat.com>
254
255         Bug #161561
256         
257         * gdk/x11/gdkwindow-x11.c (tmp_{re,un}set_bg): Only set/reset the
258         background for windows that get expose events. 
259
260         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Remove
261         hack to repaint !expose windows.
262
263 Wed Dec 22 11:35:41 2004  Søren Sandmann  <sandmann@redhat.com>
264
265         Bug #147497, make menu items activate immediately when you release
266         the button.
267         
268         * gtk/gtkmenu.c (gtk_menu_enter_notify, menu_motion_notify): Make
269         items activate immediately.
270
271         * gtk/gtkmenu.c (definitely_within_item): New function
272         * gtk/gtkmenu.c (check_threshold): New function
273
274 2004-12-22  Matthias Clasen  <mclasen@redhat.com>
275
276         * gtk/gtklabel.c (gtk_label_setup_mnemonic): Don't forget to
277         null the mnemonic_menu when unsetting a mnemonic, reported
278         by Owen Taylor.
279
280 2004-12-21  Matthias Clasen  <mclasen@redhat.com>
281
282         * gtk/gtkliststore.c (generate_order): Generate the order the
283         way it is supposed to be, order[new_pos] == old_pos.
284         (gtk_list_store_reorder): Invert the order before using it.
285
286 2004-12-22  Matthias Clasen  <mclasen@redhat.com>
287
288         Fix sorting of list stores.  (#161886, Marcin Krzyzanowski)
289
290         * gtk/gtkliststore.c (generate_order): Generate the order the
291         way it is supposed to be, order[new_pos] == old_pos.
292         (gtk_list_store_reorder): Invert the order before using it.
293
294         * gtk/gtkiconview.c (gtk_icon_view_rows_reordered): Adapt to the
295         list store fix.
296
297 Wed Dec 22 01:24:01 2004  Jonathan Blandford  <jrb@redhat.com>
298
299         * gtk/queryimmodules.c (main): print out the version and binary
300         name in the header comment.  Problem reported by Seth Nickell.
301
302 2004-12-20  Matthias Clasen  <mclasen@redhat.com>
303
304         * gtk/gtkliststore.c (gtk_list_store_sort_iter_changed): Pass a
305         root path to gtk_tree_model_rows_reordered().  (#161720,
306         Marcin Krzyzanowski)
307
308         * gtk/gtkactiongroup.c (gtk_action_group_translate_string): Don't 
309         translate NULL messages.  (#161789, Morten Welinder)
310
311         * gtk/gtkmessagedialog.c (setup_primary_label_font): Don't show
312         the secondary label on show_all().  (#161707, Christian Persch)
313
314 2004-12-19  Tor Lillqvist  <tml@iki.fi>
315
316         * gdk/win32/gdkdnd-win32.c (resolve_link, gdk_dropfiles_filter):
317         Use wide character API when available. Use UTF-8 for filenames.
318
319         * gdk/win32/gdkselection-win32.c (_gdk_dropfiles_store): Include
320         the string's trailing zero byte in the property's length, just for
321         safety.
322
323 2004-12-18  Matthias Clasen  <mclasen@redhat.com>
324
325         * gtk/gtkfilechooserentry.c (check_completion_callback) 
326         (load_directory_callback): Add missing GDK_THREADS_ENTER/LEAVE.
327
328         * gtk/gtkfilechooserdefault.c (edited_idle_cb) 
329         (shortcuts_drag_outside_idle_cb): Add missing 
330         GDK_THREADS_ENTER/LEAVE.  (#161604)
331         
332         * gtk/gtkfilechooserdefault.c (selection_check_foreach_cb): 
333         (list_select_func): Don't call gtk_file_info_get_is_folder()
334         on NULL. 
335
336         * gtk/gtkaboutdialog.c (gtk_about_dialog_get_logo_icon_name): 
337         (gtk_about_dialog_init): Add missing initializations.  (#161646,
338         Torsten Schoenfeld)
339
340 2004-12-16  Matthias Clasen  <mclasen@redhat.com>
341
342         * configure.in: Bump version
343
344         * === Released 2.6.0 ===
345
346         * gtk/gtkmenuitem.c: Add a forgotten cast.  (Morten Welinder) 
347
348         * gtk/gtkfilechooserbutton.c: Add another forgotten include. (Morten
349         Welinder)
350
351 2004-12-16  Matthias Clasen  <mclasen@redhat.com>
352
353         * gtk/gtkfilechooserbutton.c (dialog_response_cb): Only unblock the handlers
354         if they are blocked.
355
356         * gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search): Don't
357         crash if enable_search is FALSE.  (#161267, Jorn Baayen)
358
359         * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_mnemonic_activate): 
360         Re-fix #152925, reported by Dennis Cranston.
361
362 2004-12-15  Matthias Clasen  <mclasen@redhat.com>
363
364         * gtk/gtkfilechooserbutton.c: Add missing includes.
365
366         * configure.in: Require glib 2.6.0 for 
367         g_filename_display_basename.
368
369         * gtk/gtkentrycompletion.[hc]: Make the prefix parameter 
370         to the insert-prefix signal a const gchar* instead of a 
371         gchar*.  (#161415, Murray Cumming)
372         Also remove an unused static function.
373
374 2004-12-15  Alexander Larsson  <alexl@redhat.com>
375
376         * gtk/gtkfilesystemunix.c (gtk_file_folder_unix_get_info):
377         Use g_filename_display_basename to calculate display name.
378
379 2004-12-15  Matthias Clasen  <mclasen@redhat.com>
380
381         * gtk/abicheck.sh: Strip out PRIVATE
382
383         * NEWS: Updates
384
385         * gtk/gtkmenushell.c (gtk_menu_shell_select_submenu_first) 
386         (gtk_real_menu_shell_activate_current): Use 
387         _gtk_menu_item_popup_submenu() to make keynav into submenus work
388         instantaneously, independent of the popup delay.  (#161140)
389
390         * gtk/gtkmenuitem.[hc]: _-prefix gtk_menu_item_popup_submenu() and
391         make it non-static.
392
393         * gtk/gtkmenuitem.c (gtk_menu_item_paint): Remove unused variables.
394
395 2004-12-15  James M. Cape  <jcape@ignore-your.tv>
396
397         * gtk/gtkfilechooserbutton.c (struct _GtkFileChooserButtonPrivate)
398         (gtk_file_chooser_button_init)
399         (gtk_file_chooser_button_file_chooser_iface_init)
400         (gtk_file_chooser_button_add_shortcut_folder)
401         (gtk_file_chooser_button_remove_shortcut_folder) 
402         (gtk_file_chooser_button_constructor)
403         (gtk_file_chooser_button_set_property)
404         (gtk_file_chooser_button_destroy)
405         (gtk_file_chooser_button_finalize)
406         (get_icon_theme) (get_display_name_for_path) (model_get_type_position)
407         (model_free_row_data) (model_add_special) (model_add_other)
408         (model_add_volumes) (model_add_bookmarks)
409         (model_update_current_folder) (model_remove_rows)
410         (filter_model_visible_func) (combo_box_row_separator_func)
411         (name_cell_data_func) (update_combo_box) (fs_volumes_changed_cb)
412         (fs_bookmarks_changed_cb) (combo_box_changed_cb)
413         (change_icon_size): Use a GtkComboBox in SELECT_FOLDER mode (#157726).
414
415         * gtk/gtkfilechooserbutton.c:
416         * gtk/gtkfilechooserbutton.h (gtk_file_chooser_button_new)
417         (gtk_file_chooser_button_new_with_backend): Add @action to constructors
418         to match other GtkFileChooser impls. API CHANGE.
419
420         * docs/tools/widgets.c (create_file_button):
421         * tests/testfilechooserbutton.c (main): Update callers.
422
423         * docs/reference/gtk/tmpl/gtkfilechooserbutton.sgml: Reflect API
424         change.
425
426         * tests/testfilechooserbutton.c: Add LGPL license.
427         (main): Added GOption parser for --backend and --right-to-left cmd line
428         args.
429         (add_pwds_parent_as_shortcut_clicked_cb)
430         (del_pwds_parent_as_shortcut_clicked_cb) (tests_button_clicked_cb):
431         Add shortcut_folders test.
432         (chooser_current_folder_changed_cb) (chooser_selection_changed_cb)
433         (chooser_file_activated_cb) (chooser_update_preview_cb): Print URIS,
434         not filenames.
435
436 2004-12-15  Matthias Clasen  <mclasen@redhat.com>
437
438         * gtk/gtkfilechooserdefault.c (get_is_file_filtered): Don't 
439         try to filter if impl->current_filter is NULL.  (#161329, 
440         R. McFarland) 
441
442 2004-12-14  Federico Mena Quintero  <federico@ximian.com>
443
444         Merged from gtk-2-4:
445
446         Fix #145470:
447
448         * gtk/gtkfilechooserdefault.c
449         (gtk_file_chooser_default_initial_focus): Queue a pending
450         operation to select the first row if we are not finished loading
451         yet.
452         (gtk_file_chooser_default_class_init): Override GtkWidget::map().
453         (gtk_file_chooser_default_map): New ::map() handler; refresh the
454         file and bookmark lists.
455
456         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_class_init):
457         Override GtkWidget::map() and GtkWidget::unmap().
458         (gtk_file_chooser_dialog_constructor): Don't call initial_focus()
459         here.
460         (gtk_file_chooser_dialog_map): Map the file chooser widget if
461         needed.  Call initial_focus() here.
462         (gtk_file_chooser_dialog_unmap): Unmap the file chooser widget.
463         When we are re-mapped, the widget will get mapped as well and it
464         will have a chance to refresh.
465
466 2004-12-14  Matthias Clasen  <mclasen@redhat.com>
467
468         * README.win32: Fix a typo
469
470         * README.in: Updates
471
472         * tests/testcombo.c (main): Don't use gtk_cell_renderer_set_values().
473
474         * gtk/gtk.symbols: 
475         * gtk/gtkcellview.[hc]: Remove gtk_cell_renderer_set_value[s]
476         for now.
477
478         * configure.in: Bump version to 2.6.0
479
480         * NEWS: Updates
481
482         * tests/testiconview.c: Test oversized items.
483
484         * gtk/gtk.symbols: Add new symbols.
485
486         * gtk/gtkiconview.[hc]: Make the icon view lay out its
487         items in a grid, allocating multiple grid cells to oversized
488         items. Also convert hardwired spacing constants into 
489         properties.  (#152483)
490
491 2004-12-13  Matthias Clasen  <mclasen@redhat.com>
492
493         * gtk/gtklabel.c: s/maximal/maximum/g  (#161195, David Lodge)
494
495         * gtk/gtkmenuitem.c (gtk_real_menu_item_select): Reintroduce
496         the reverted change, since it is necessary to prevent lost
497         submenus. But make it work for torn-off menus as well.
498
499         * gtk/gtktearoffmenuitem.c (tearoff_state_changed): Fix the signature
500         to avoid overwriting a pspec.  
501
502         * gtk/gtkmenuitem.c (gtk_real_menu_item_select): Revert a change
503         which prevented torn-off menus from being shown normally.
504
505         * gtk/gtkmenu.c (gtk_menu_scroll): Implement scroll wheel scrolling
506         for menus. (#88532)
507
508         * gtk/gtkwindow.c (gtk_window_real_set_focus): Compare only
509         the HAS_DEFAULT flags.  (#160711, Tommi Komulainen)
510
511         * gtk/gtkimage.c (gtk_image_set_property): Add a missing break
512         statement.  (#161172, Damon Chaplin)
513
514         * gtk/gtkcellrenderertext.c: Add a width-chars property like
515         GtkLabel has.  (#160496, James M. Cape)
516
517         * NEWS: Updates
518
519         * gtk/gtkwidget.c (gtk_widget_class_init): Add some docs for
520         GtkWidget::delete-event and GtkWidget::destroy-event.  (#161142,
521         Paolo Borelli)
522
523 2004-12-13  Matthias Clasen  <mclasen@redhat.com>
524
525         * gtk/gtklabel.[hc]: Add a max-width-chars property, which can
526         be used to specify the width of the label in characters, while
527         still allowing it to fall short of this length if the text
528         is shorter.  (#155944, Christian Persch)
529
530         * gtk/gtk.symbols: Add new symbols.
531
532         * gtk/gtkuimanager.c (update_smart_separators): Don't let the
533         empty menu filler affect visibility of separators.  (#160500,
534         Christian Persch)
535
536 2004-12-12  Matthias Clasen  <mclasen@redhat.com>
537
538         * gtk/gtkcombobox.c (gtk_combo_box_menu_row_changed): Pass a 
539         last item to gtk_combo_box_relayout_item.  (#161050, John Finlay)
540
541         * tests/testfilechooserbutton.c (tests_button_clicked_cb): Rename
542         a local variable to avoid a conflict.  (#161109, Robert Ögren)
543
544 2004-12-12  Tor Lillqvist  <tml@iki.fi>
545
546         * gtk/gtkaccelmap.[ch]
547         * gtk/gtkfilechooser.[ch]
548         * gtk/gtkfilesel.c
549         * gtk/gtkfilesystemwin32.c
550         * gtk/gtkiconfactory.[ch]
551         * gtk/gtkicontheme.[ch]
552         * gtk/gtkimage.[ch]
553         * gtk/gtkimmodule.c
554         * gtk/gtkmodules.c
555         * gtk/gtkrc.[ch]
556         * gtk/gtkuimanager.[ch]
557         * gtk/gtkwindow.[ch]    
558         * gtk/updateiconcache.c
559         * gtk/gtk.symbols: Use gstdio wrappers. On Windows, convert
560         environment variables referring to pathnames from locale encoding
561         to UTF-8. As in GLib, in order to preserve Windows DLL ABI
562         stability, add binary compatibility versions of functions that
563         take file names as arguments, or return file names. Add a _utf8
564         suffix to the "real" such functions on Windows. The ABI
565         compatibility versions keep the old name.
566
567         * gtk/Makefile.am: Strip PRIVATE symbols from the GNU import
568         library.
569
570         * gtk/gtkiconcache.c (_gtk_icon_cache_new_for_path): Implement
571         file mapping on Win32.
572
573         * gtk/updateiconcache.c: Don't crash if invoked without
574         argument. Use binary mode when opening file.
575
576         * modules/engines/ms-windows/Theme/gtk-2.0/Makefile.am: Install
577         gtkrc in correct place, in <datadir>/themes/MS-Windows/gtk-2.0.
578
579 2004-12-12  Matthias Clasen  <mclasen@redhat.com>
580
581         * gtk/gtklabel.c (gtk_label_setup_mnemonic): Fix a 
582         copy-and-paste error, noticed by Robert Ögren.
583
584 2004-12-11  Matthias Clasen  <mclasen@redhat.com>
585
586         * gtk/gtkcombobox.c (gtk_combo_box_menu_fill_level) 
587         (gtk_combo_box_menu_row_changed): Only wrap if we are in the
588         topmost menu.  (#160936, John Finlay)
589
590 2004-12-10  Matthias Clasen  <mclasen@redhat.com>
591
592         Support no-Alt mnemnonics in menu bars  (#101309, Owen Taylor)
593         
594         * gtk/gtkwindow.c: Factor out mnemonic hash code into
595         a separate file.
596
597         * gtk/gtkmnemonichash.[hc]: Factored out mnemonic hash
598         code from gtkwindow.c.
599
600         * gtk/Makefile.am (gtk_c_sources): Add gtkmnemonichash.[hc].
601
602         * gtk/gtkmenushell.c (struct _GtkMenuShellPrivate): Give 
603         menu shells their own mnemonic hash.
604
605         * gtk/gtkmenushell.h: Add private api to support mnemonics.
606
607         * gtk/gtklabel.c (gtk_label_setup_mnemonic): Add mnemonic to
608         the menushell mnemonic hash when inside a menu.
609         
610 Fri Dec 10 13:59:32 2004  Manish Singh  <yosh@gimp.org>
611
612         * gtk/gtk.symbols: add recent new functions.
613
614 2004-12-10  Matthias Clasen  <mclasen@redhat.com>
615
616         * gtk/gtkwindow.c: Revert the patch which added no-alt 
617         mnemonics, since it interfers badly with menus.  (#160911,
618         Jonathan Blandford)
619
620 2004-12-09  Matthias Clasen  <mclasen@redhat.com>
621
622         * gtk/gtklabel.c (gtk_label_class_init): Fix a property
623         nick typo. 
624
625         * gtk/gtkfilechooserdefault.c: Apply a patch to reset the 
626         filter if an otherwise invisible file is selected via the 
627         location popup.  (#159896, Carlos Garnacho Parro)
628
629         Fix #145463, reported by Michael Natterer.
630         
631         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add an
632         editing flag to keep track of when editing is done.
633         
634         * gtk/gtkcellrenderer.h:
635         * gtk/gtkcellrenderer.c (gtk_cell_renderer_stop_editing): New
636         function to replace gtk_cell_renderer_editing_canceled(). 
637         Deprecate gtk_cell_renderer_editing_canceled(). 
638
639         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_editing_done): 
640         * gtk/gtkcellrenderercombo.c (gtk_cell_renderer_combo_editing_done): 
641         * gtk/gtktreeview.c (gtk_tree_view_stop_editing):
642         Use gtk_cell_renderer_stop_editing().
643         
644 2004-12-09  Matthias Clasen  <mclasen@redhat.com>
645
646         * gtk/gtkliststore.h: 
647         * gtk/gtkliststore.c (gtk_list_store_insert_with_values): 
648         (gtk_list_store_insert_with_valuesv): Add functions which allow
649         faster insertion of rows in sorted list stores.  (#160063)
650
651 2004-12-08  Matthias Clasen  <mclasen@redhat.com>
652
653         * gtk/gtkcombobox.c (gtk_combo_box_set_wrap_width): Fix a typo
654         in the docs.  (#160826, Jay Camp)
655
656 2004-12-08  Federico Mena Quintero  <federico@ximian.com>
657
658         Merged from gtk-2-4:
659
660         * gtk/gtkfilechooserdefault.c (pending_op_process): Center the
661         selected row so that it's easily visible.
662
663 2004-12-08  Matthias Clasen  <mclasen@redhat.com>
664
665         Fix #111031, reported by Padraig O'Briain:
666         
667         * gtk/gtktextlayout.h: 
668         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_position): 
669         Add a variant of gtk_text_layout_get_iter_at_pixel() which
670         returns the character at the position, not the closest
671         cursor position.
672
673         * gtk/gtktextview.h: 
674         * gtk/gtktextview.c (gtk_text_view_get_iter_at_position): 
675         Add a variant of gtk_text_view_get_iter_at_location() which
676         returns the character at the position, not the closest
677         cursor position.
678
679 2004-12-08  Matthias Clasen  <mclasen@redhat.com>
680
681         * gtk/gtkaccelmap.c (internal_change_entry): Remove all 
682         entries for the same key, not just the first one.  (#159498, 
683         Christian Persch)
684
685 2004-12-08  Matthias Clasen  <mclasen@redhat.com>
686
687         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): Use
688         button->event_window for the fake leave event, otherwise
689         the button ignores it.  
690
691 2004-12-07  Matthias Clasen  <mclasen@redhat.com>
692
693         * gtk/gtkiconview.c (gtk_icon_view_rows_reordered): Make this
694         work, no need to invert the array. 
695
696         * gtk/gtkliststore.c (gtk_list_store_sort_iter_changed): Emit
697         rows_reordered if the row has been moved.  (#160063)
698
699         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event): 
700         Don't mess up the column header state if the button release
701         event is missed.  (#159640)
702
703 2004-12-07  Marco Pesenti Gritti  <marco@gnome.org>
704
705         * gtk/gtkcellview.c (gtk_cell_view_set_background_color):
706         Fix a typo in last commit
707
708 2004-12-07  Matthias Clasen  <mclasen@redhat.com>
709
710         * gtk/gtkcellview.c (gtk_cell_view_set_background_color): Queue
711         a redraw.  (#160679, Damon Chaplin)
712
713 2004-12-07  Matthias Clasen  <mclasen@redhat.com>
714
715         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event): 
716         Don't mess up the column header state if the button release
717         event is missed.  (#159640)
718
719         * docs/tools/widgets.h (enum): Add an ASIS widget size.
720
721         * docs/tools/widgets.c (get_all_widgets): Add file chooser,
722         font selection and color selection dialogs.
723
724 2004-12-06  Matthias Clasen  <mclasen@redhat.com>
725
726         * modules/input/gtkimcontextime.c: Prevent double commits,
727         don't commit when Ctrl is present.  (#160376, Kazuki IWAMOTO)
728
729 2004-12-06  Hans Breuer  <hans@breuer.org>
730
731         * gtk/gtkcolorsel.c (key_press): Implement keynav for the color
732         picker - win32 too. Fixes bug #160437.
733
734 2004-12-05  Tor Lillqvist  <tml@iki.fi>
735
736         * demos/gtk-demo/main.c (load_file): Use g_fopen().
737
738         * demos/gtk-demo/images.c (progressive_timeout): Use
739         g_fopen(). Open png file in binary mode.
740
741 2004-12-02  Matthias Clasen  <mclasen@redhat.com>
742         
743         * configure.in: Bump version
744
745         * === Released 2.5.6 ===
746
747         * NEWS: Updates
748
749 2004-12-03  Tor Lillqvist  <tml@iki.fi>
750
751         * gdk-pixbuf/Makefile.am (gdk_pixbuf.def)
752         * gdk/Makefile.am (gdk.def)
753         * gtk/Makefile.am (gtk.def): Work around gcc misfeature. At least
754         gcc 3.3.1 doesn't like to do -E on files that it thinks aren't
755         source files. Use redirection and '-' instead.
756
757 2004-12-02  Matthias Clasen  <mclasen@redhat.com>
758
759         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_should_respond):        Reinstate the previous behavior for clicking Ok after
760         activating a bookmark or path bar button in folder 
761         modes.  (#160044, Dennis Cranston)
762
763 2004-12-02  Federico Mena Quintero  <federico@ximian.com>
764
765         Merged from gtk-2-4:
766
767         Fix #159656:
768
769         * gtk/gtkfilechooserdefault.c (PendingOp): New enumeration for the
770         pending operation to perform when finishing loading a folder.
771         (struct _GtkFileChooserDefault): New fields 'pending_op' and
772         'pending_select_path'.
773         (pending_op_queue): New utility function.
774         (pending_op_process): New utility function.
775         (gtk_file_chooser_default_select_path): Don't select the path
776         immediately; delay it until the folder is finished loading.
777         (browse_files_model_finished_loading_cb): Process the pending
778         operation.
779         (browse_files_select_first_row): New utility function.
780         (gtk_file_chooser_default_initial_focus): Use
781         browse_files_select_first_row().
782         (gtk_file_chooser_default_should_respond): Queue an operation to
783         select the first row once we load the child folder.
784         (up_folder_handler): Queue an operation to select the current
785         folder once we load the parent folder.
786         (gtk_file_chooser_default_finalize): Free the pending_select_path.
787
788 Thu Dec  2 13:18:34 2004  Manish Singh  <yosh@gimp.org>
789
790         * gdk/x11/gdkgc-x11.c (make_fg_tile_picture): Make sure we always
791         return a value. Return None in the fallthrough case.
792
793 2004-12-02  Matthias Clasen  <mclasen@redhat.com>
794
795         * gtk/gtkmessagedialog.c: (setup_primary_label_font):
796         Don't leak pango_font_description object (#160214, Frederic Crozat).
797
798 2004-12-01  Matthias Clasen  <mclasen@redhat.com>
799
800         * gtk/gtkiconview.c (gtk_icon_view_row_changed): Handle the
801         fact the the changed row may also be moved.  (#159387, Olivier 
802         Andrieu)
803
804 2004-12-01  Tor Lillqvist  <tml@iki.fi>
805
806         * modules/input/imime.c (im_module_create): Use the module's
807         correct name in test. (#160122)
808
809 2004-12-01  Michael Natterer  <mitch@gimp.org>
810
811         * gtk/gtkuimanager.[ch]: added virtual functions
812         GtkUIManager::get_widget() and ::get_action(). Moved the code from
813         gtk_ui_manager_get_widget() and get_action() to the default
814         implementations. Fixes bug #160096.
815
816         (gtk_ui_manager_get_toplevels): added missing precondition check
817         for GTK_IS_UI_MANAGER(self).
818
819 2004-12-01  Dom Lachowicz <cinamod@hotmail.com>
820
821         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: use MS Windows button order, not Gnome HIG order
822         * modules/engines/ms-windows/msw_style.c (draw_handle): Draw XP toolbar grippie handle properly
823         (draw_resize_grip): Draw XP status bar grippie handle properly
824         (draw_arrow): XP theme combo box arrows on toolbars
825
826 2004-11-30  Dom Lachowicz <cinamod@hotmail.com>
827
828         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: MS Windows menus should not have tearoffs
829
830 Tue Nov 30 17:53:37 2004  Søren Sandmann  <sandmann@redhat.com>
831
832         * gtk/gtksequence.c (node_compare): Assign an arbitrary, but
833         consistent, order to nodes that the user function compares as
834         equal. Better fix for bug #157670 and a better way to make sorting
835         stable.
836
837 2004-11-30  Hans Breuer  <hans@breuer.org>
838
839         * gdk/win32/gdkpixmap-win32.c : remove the disputable memset at 
840         the end of gdk_pixmap_new() - on X11 the bits are not initialized 
841         either - fixes bug #145107
842
843         * gtk/gtkfilesystemwin32.c : add an idle handler to emit "volumes-changed"
844         when drives are plugged in or removed. Fixes bug #137815
845
846 2004-11-30  Matthias Clasen  <mclasen@redhat.com>
847
848         * gtk/gtktreesortable.c (gtk_tree_sortable_get_sort_column_id): Update 
849         the documentation to specify a more useful behaviour, which can be
850         implemented with the multiple special values we have now.  (#159984,
851         Nicholas Rahn)
852
853         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_sort_column_id): 
854         * gtk/gtktreestore.c (gtk_tree_store_get_sort_column_id): 
855         * gtk/gtkliststore.c (gtk_list_store_get_sort_column_id): Update the
856         implementations.
857
858 Tue Nov 30 16:25:29 2004  Owen Taylor  <otaylor@redhat.com>
859
860         * gtk/gtktextdisplay.c (render_para): Don't paint in the
861         trailing end of a wrapped line when the selection 
862         starts after the line. (#160000, Matthias Clasen)
863
864         * gtk/gtktextdisplay.c (gtk_text_layout_draw): pass in byte_count + 1 
865         for selection_end index when the selection end is past the end of the 
866         line so that render_para() can distinguish it from selection-end
867         *at* the end of the line. Fixes newlines not being selected.
868
869 2004-11-30  James M. Cape  <jcape@ignore-your.tv>
870
871         * gtk/gtkfilechooserbutton.h (gtk_file_chooser_button_get_active)
872         (gtk_file_chooser_button_set_active):
873         * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_class_init)
874         (gtk_file_chooser_button_get_active)
875         (gtk_file_chooser_button_set_active):
876         * docs/reference/gtk/gtk-sections.txt:
877         * docs/reference/gtk/tmpl/gtkfilechooserbutton.sgml:
878         * gtk/gtk.symbols: removed "GtkFileChooserButton:active" property and
879         getter/setter.
880
881         * gtk/gtkfilechooserbutton.c (struct _GtkFileChooserButtonPrivate)
882         (button_toggled_cb) (dialog_response_cb) (button_notify_active_cb)
883         (gtk_file_chooser_button_init) (button_clicked_cb)
884         (gtk_file_chooser_button_show): Use a GtkButton instead of a
885         GtkToggleButton.
886         (struct _GtkFileChooserButtonPrivate)
887         (gtk_file_chooser_button_destroy) (gtk_file_chooser_button_style_set)
888         (gtk_file_chooser_button_screen_changed): Don't bother with the
889         (remove_settings_signal) (settings_notify_cb) (check_icon_theme):
890         Don't use GtkSettings at all, just call change_icon_theme() directly.
891         (struct _GtkFileChooserButtonPrivate)
892         (gtk_file_chooser_button_init)
893         (gtk_file_chooser_button_drag_data_received)
894         (gtk_file_chooser_button_mnemonic_activate)
895         (gtk_file_chooser_button_set_width_chars)
896         (gtk_file_chooser_button_get_width_chars)
897         (entry_changed_cb) (update_idler) (update_entry) (update_dialog)
898         (dialog_selection_changed_cb) (dialog_response_cb)
899         (entry_size_allocate_cb): Remove all references to the now-defunct
900         entry, store the old path (to support "Cancel") in an instance member.
901         (update_label_and_image) (update_label) (update_image)
902         (gtk_file_chooser_button_init) (dialog_response_cb)
903         (dialog_selection_changed_cb): Merge label/image updates, only display
904         the filename (not the whole path, fixes #157725).
905         (struct _GtkFileChooserButtonPrivate)
906         (dialog_selection_changed_cb)
907         (dialog_selection_changed_proxy_cb): Merge "selection-changed"
908         handlers, block while dialog is visible (fixes #158482).
909
910         * tests/testfilechooserbutton.c (delete_event_cb)
911         (properties_button_clicked_cb) (print_selected_path_clicked_cb)
912         (tests_button_clicked_cb) (main): Add per-chooser "tests" window,
913         don't delete on WM close, update properties_button_clicked_cb()
914         "delete-event" callback.
915
916 2004-11-30  Dwayne Bailey  <dwayne@translate.org.za>
917
918         * configure.in: Added "nso" to ALL_LINGUAS.
919
920 Tue Nov 30 09:46:49 2004  Owen Taylor  <otaylor@redhat.com>
921
922         * gdk/x11/gdkdrawable-x11.c (_gdk_x11_drawable_draw_xtrapezoids)
923         * gdk/x11/gdkdrawable-x11.c (_gdk_x11_drawable_draw_xft_glyphs):
924         Call gdk_x11_drawable_update_xft_clip (part of #159929,
925         James Henstridge)
926
927         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs_transformed): 
928         Remove unused variables.
929
930 Tue Nov 23 19:37:34 2004  Owen Taylor  <otaylor@redhat.com>
931
932         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): A little bit
933         of microoptimization of repeated GDK_GC_XDISPLAY()/XGC().
934
935 2004-11-30  Matthias Clasen  <mclasen@redhat.com>
936
937         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_sort_column_id): 
938         * gtk/gtktreestore.c (gtk_tree_store_get_sort_column_id): 
939         * gtk/gtktreesortable.c (gtk_tree_sortable_get_sort_column_id): 
940         * gtk/gtkliststore.c (gtk_list_store_get_sort_column_id): 
941
942         * NEWS: Updates.
943
944 2004-11-29  Matthias Clasen  <mclasen@redhat.com>
945
946         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Don't
947         do the popup-on-click handling for menubars.  (#159931, 
948         Søren Sandmann)
949         
950         * gtk/gtkmenuitem.c (gtk_real_menu_item_select): Don't 
951         handle popup delay if the submenu is already mapped.    
952
953 Mon Nov 29 16:56:33 2004  Manish Singh  <yosh@gimp.org>
954
955         * gtk/gtkcellview.h: remove gtk_cell_view_set_cell_data() declaration.
956
957 2004-11-29  Federico Mena Quintero  <federico@ximian.com>
958
959         Merged from gtk-2-4:
960
961         * gtk/gtkfilechooserdefault.c (trap_activate_cb): Don't handle
962         Enter if we are in SELECT_FOLDER or CREATE_FOLDER actions.  This
963         lets us navigate the file system more easily.
964         (gtk_file_chooser_default_should_respond): If we are in
965         SELECT_FOLDER or CREATE_FOLDER modes, return TRUE if something is
966         selected.
967
968 Mon Nov 29 17:51:51 2004  Søren Sandmann  <sandmann@redhat.com>
969
970         * gtk/gtksequence.c (_gtk_sequence_sort_changed): If the item is
971         already in the right place, don't move it. Bug #157670.
972         
973         * gtk/gtksequence.c (already_in_place): New function
974
975 Mon Nov 29 17:28:53 2004  Søren Sandmann  <sandmann@redhat.com>
976
977         * gtk/gtksequence.c (_gtk_sequence_sort): Take nodes in reverse
978         order to make sure sort is stable.
979
980 2004-11-29  Matthias Clasen  <mclasen@redhat.com>
981
982         * gtk/gtkcombobox.c (cell_view_is_sensitive): Don't call
983         gtk_cell_view_set_cell_data() from here.
984
985         * gtk/gtk.symbols: Remove gtk_cell_view_set_cell_data()
986
987         * gtk/gtkcellview.c (gtk_cell_view_get_cell_renderers): Call 
988         gtk_cell_view_set_cell_data() from here.
989         (gtk_cell_view_set_cell_data): Make static.
990
991         * gtk/gtkcombobox.c (gtk_combo_box_menu_popup): Make menu mode
992         work better when resizing the combo box.
993
994         Determine the direction of XKB groups from their content, 
995         not by looking for hardcoded keymap names.  (#116626, patch by 
996         Behdad Esfahbod, based on an earlier patch by Ilya Konstantinov)
997         
998         * gdk/x11/gdkkeys-x11.c (struct _GdkKeymapX11): Cache directions
999         for XKB groups.
1000         (get_direction): Determine direction of group by looking at 
1001         directions of keysyms.
1002         (update_direction): Maintain the cache of group directions.
1003         (gdk_keymap_get_direction): Use update_direction().
1004
1005         * gdk/gdkkeynames.c: Add dead_hook and dead_horn.
1006
1007         * gdk/gdkkeysyms.h (GDK_dead_hook, GDK_dead_horn): Define
1008         these keysyms.  (#159739, Samuel Thibault)
1009
1010 2004-11-29  Matthias Clasen  <mclasen@redhat.com>
1011
1012         * gtk/Makefile.am (gtkalias.h): 
1013         * gdk/Makefile.am (gdkalias.h): Use the perl found by 
1014         configure.  (#149826, Morten Welinder)
1015
1016 2004-11-28  Matthias Clasen  <mclasen@redhat.com>
1017
1018         * gtk/gtkwidget.h (gtk_requisition_get_type): 
1019         * gtk/gtktypeutils.h (gtk_identifier_get_type): 
1020         * gtk/gtktexttag.h (gtk_text_attributes_get_type): 
1021         * gtk/gtkstyle.h (gtk_border_get_type): 
1022         * gtk/gtkfilesystemmodel.h (_gtk_file_system_model_get_type): 
1023         * gtk/gtkfilechooserentry.h (_gtk_file_chooser_entry_get_type): 
1024         * gtk/gtkfilechooserembed.h (_gtk_file_chooser_embed_get_type):
1025         * gtk/gtkfilechooserdefault.h (_gtk_file_chooser_default_get_type): 
1026         * gtk/gtkaccelmap.h (gtk_accel_map_get_type): Mark as const.
1027
1028         * gtk/gtk.symbols: 
1029         * gtk/Makefile.am: Mark get_type() functions
1030         generated by glib-mkenums as const.
1031
1032         * gdk/gdkvisual.h (gdk_visual_get_type): 
1033         * gdk/gdkscreen.h (gdk_screen_get_type): 
1034         * gdk/gdkinput.h (gdk_device_get_type): 
1035         * gdk/gdk.h (gdk_rectangle_get_type): 
1036         * gdk/gdkfont.h (gdk_font_get_type): 
1037         * gdk/gdkevents.h (gdk_event_get_type): 
1038         * gdk/gdkdrawable.h (gdk_drawable_get_type): 
1039         * gdk/gdkdisplay.h (gdk_display_get_type): 
1040         * gdk/gdkcursor.h (gdk_cursor_get_type): 
1041         * gdk/gdkcolor.h (gdk_color_get_type): Mark as const.
1042
1043         * gdk/gdk.symbols: 
1044         * gdk/Makefile.am (stamp-gdkenumtypes.h): Mark get_type() functions
1045         generated by glib-mkenums as const.
1046
1047         * gtk/gtktextview.c (gtk_text_view_move_iter_by_lines): Return
1048         a boolean indicating whether we could do the requested move.
1049         (gtk_text_view_move_cursor_internal): For GTK_MOVEMENT_DISPLAY_LINES,
1050         move to the beginning/end of the line if we're on the first/last
1051         line.  (#155891, Paolo Borelli)
1052
1053         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
1054         Don't move the iter and return FALSE if trying to move up from
1055         the first line.
1056
1057 2004-11-28  Matthias Clasen  <mclasen@redhat.com>
1058
1059         * gtk/gtkaction.c (closure_accel_activate): Don't claim to have
1060         handled the accelerator if the action is insensitive.  (#151541,
1061         Jody Goldberg)
1062
1063         * docs/tools/widgets.c: Add a combo box.
1064
1065 2004-11-27  Matthias Clasen  <mclasen@redhat.com>
1066
1067         * gtk/gtkcolorsel.c (key_press): Implement keynav for the color
1068         picker (only on X11 currently, since GDK doesn't support pointer 
1069         warping). Space and Return pick a color, Esc cancels the picking, 
1070         arrow keys move the pointer by single pixels, Alt-arrow combinations 
1071         move the pointer by 20 pixels.  (#135385, Frances Keenan)
1072
1073 Sat Nov 27 15:18:14 2004  Manish Singh  <yosh@gimp.org>
1074
1075         * contrib/gdk-pixbuf-xlib/gdk-pixbuf-xlib-drawable.c
1076         (rgb565amsb, rgb555msb): make proper casts in big endian cases.
1077
1078 2004-11-26  Matthias Clasen  <mclasen@redhat.com>
1079
1080         * gtk/gtkiconview.c (gtk_icon_view_set_model): Check column types on the
1081         new model, and check them all.  (#159389, Olivier Andrieu)
1082         (gtk_icon_view_set_model): Queue a layout. (#159436, Olivier Andrieu)
1083
1084         * gdk/x11/gdkselection-x11.c (gdk_text_property_to_utf8_list_for_display): 
1085         Don't crash if Xlib fails to return UTF-8. (#159373, Kristian Høgsberg) 
1086
1087 Thu Nov 25 14:32:35 2004  Manish Singh  <yosh@gimp.org>
1088
1089         * gdk/abicheck.sh
1090         * gtk/abicheck.sh: filter out G_GNUC stuff when doing the compare.
1091
1092         * gtk/gtkmenuitem.c (gtk_menu_shell_button_release): add
1093         GTK_MENU_ITEM() cast.
1094
1095 2004-11-25  Kjartan Maraas  <kmaraas@gnome.org>
1096
1097         * configure.in: Add forgotten «nb» to ALL_LINGUAS.
1098         * po-properties/nb.po: Update
1099         * po/nb.po: Update
1100
1101 2004-11-24  Matthias Clasen  <mclasen@redhat.com>
1102
1103         Open submenus on click.  (#128968, Martin Jeppesen)
1104         
1105         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Don't
1106         activate items with submenus after the timeout, just select 
1107         them.
1108
1109         * gtk/gtkmenuitem.c (gtk_real_menu_item_select): Make
1110         submenus popup immediately on click, regardless of popup 
1111         delay.
1112
1113 2004-11-23  Matthias Clasen  <mclasen@redhat.com>
1114
1115         * configure.in: Rework confusing error message.  (#151742,
1116         Stepan Kasal)
1117
1118 2004-11-23  Matthias Clasen  <mclasen@redhat.com>
1119
1120         * gtk/gtkuimanager.h (gtk_ui_manager_get_type): 
1121         * gtk/gtktreeview.h (gtk_tree_view_get_type): 
1122         * gtk/gtktreeviewcolumn.h (gtk_tree_view_column_get_type): 
1123         * gtk/gtktreestore.h (gtk_tree_store_get_type): 
1124         * gtk/gtktreeselection.h (gtk_tree_selection_get_type): 
1125         * gtk/gtktreemodelfilter.h (gtk_tree_model_filter_get_type): 
1126         * gtk/gtktreemodel.h (gtk_tree_iter_get_type): 
1127         (gtk_tree_path_get_type):
1128         (gtk_tree_row_reference_get_type):
1129         * gtk/gtktoolitem.h (gtk_tool_item_get_type): 
1130         * gtk/gtktoolbutton.h (gtk_tool_button_get_type): 
1131         * gtk/gtktoggleaction.h (gtk_toggle_action_get_type): 
1132         * gtk/gtkthemes.h (gtk_theme_engine_get_type): 
1133         * gtk/gtktextiter.h (gtk_text_iter_get_type): 
1134         * gtk/gtksettings.h (gtk_settings_get_type): 
1135         * gtk/gtkselection.h (gtk_selection_data_get_type): 
1136         * gtk/gtkradioaction.h (gtk_radio_action_get_type): 
1137         * gtk/gtkmenutoolbutton.h (gtk_menu_tool_button_get_type): 
1138         * gtk/gtkliststore.h (gtk_list_store_get_type): 
1139         * gtk/gtkiconview.h (gtk_icon_view_get_type): 
1140         * gtk/gtkicontheme.h (gtk_icon_info_get_type): 
1141         * gtk/gtkiconfactory.h (gtk_icon_factory_get_type): 
1142         (gtk_icon_set_get_type):
1143         (gtk_icon_source_get_type):
1144         * gtk/gtkfilesystemwin32.h (gtk_file_system_win32_get_type): 
1145         * gtk/gtkfilesystemunix.h (gtk_file_system_unix_get_type): 
1146         * gtk/gtkfilesystem.h (gtk_file_folder_get_type):
1147         (gtk_file_info_get_type, gtk_file_path_get_type):
1148         (gtk_file_system_get_type):
1149         * gtk/gtkfilefilter.h (gtk_file_filter_get_type): 
1150         * gtk/gtkfilechooserwidget.h (gtk_file_chooser_widget_get_type): 
1151         * gtk/gtkfilechooser.h (gtk_file_chooser_get_type): 
1152         * gtk/gtkfilechooserdialog.h (gtk_file_chooser_dialog_get_type): 
1153         * gtk/gtkexpander.h (gtk_expander_get_type): 
1154         * gtk/gtkentrycompletion.h (gtk_entry_completion_get_type): 
1155         * gtk/gtkcombobox.h (gtk_combo_box_get_type): 
1156         * gtk/gtkcomboboxentry.h (gtk_combo_box_entry_get_type): 
1157         * gtk/gtkclipboard.h (gtk_clipboard_get_type): 
1158         * gtk/gtkcellview.h (gtk_cell_view_get_type): 
1159         * gtk/gtkcellrenderertoggle.h (gtk_cell_renderer_toggle_get_type): 
1160         * gtk/gtkcellrenderertext.h (gtk_cell_renderer_text_get_type): 
1161         * gtk/gtkcellrendererprogress.h (gtk_cell_renderer_progress_get_type): 
1162         * gtk/gtkcellrendererpixbuf.h (gtk_cell_renderer_pixbuf_get_type): 
1163         * gtk/gtkcellrenderercombo.h (gtk_cell_renderer_combo_get_type): 
1164         * gtk/gtkcelllayout.h (gtk_cell_layout_get_type):
1165         * gtk/gtkactiongroup.h (gtk_action_group_get_type): 
1166         * gtk/gtkaction.h (gtk_action_get_type): 
1167         * gtk/gtkaccessible.h (gtk_accessible_get_type): 
1168         * gtk/gtkaccelmap.h (gtk_accel_map_get_type): 
1169         * gtk/gtkaccelgroup.h (gtk_accel_group_get_type): 
1170         * gtk/gtkmessagedialog.h (gtk_message_dialog_get_type): Mark as const.  
1171
1172         * gtk/gtkicontheme.h:  Don't mark gtk_icon_theme_error_quark() 
1173         as const, to be consistent with all the other error_quark 
1174         functions. (technically they are const, but since these are 
1175         called only in error paths, giving the compiler better 
1176         optimization opportunities doesn't matter much)
1177
1178         * gtk/gtk.symbols:
1179         * gdk/gdk.symbols: Add attribute annotations.
1180
1181         * gtk/makegtkalias.pl: 
1182         * gdk/makegdkalias.pl: Keep attribute annotations, but strip PRIVATE.
1183         
1184         * gtk/Makefile.am (gtk.def): 
1185         * gdk/Makefile.am (gdk.def): Strip attribute annotations, but keep 
1186         PRIVATE.
1187
1188 2004-11-22  Matthias Clasen  <mclasen@redhat.com>
1189
1190         * gtk/gtktoolbar.c (gtk_toolbar_set_icon_size): Add a deprecation
1191         note.
1192
1193         * gdk/gdkevents.c (gdk_event_get_root_coords): Handle scroll
1194         events.  (#159098, Felipe Heidrich)
1195
1196 2004-11-22  Matthias Clasen  <mclasen@redhat.com>
1197
1198         * gtk/gtkmenuitem.c (gtk_menu_item_paint): Make the size of 
1199         the arrow depend only on the font size, not on the child 
1200         allocation.  (#131345, Morten Welinder)
1201
1202         * configure.in: Require Pango 1.7.0 for PangoRenderer (#159061,
1203         Crispin Flowerday)
1204         
1205 2004-11-21  Sven Neumann  <sven@gimp.org>
1206
1207         * gtk/gtkwidget.c (gtk_widget_create_pango_context): removed call
1208         to gdk_pango_context_set_colormap() which isn't needed any longer.
1209
1210 2004-11-21  Hans Breuer  <hans@breuer.org>
1211
1212         * gdk/makefile.msc.in gtk/stock-icons/makefile.msc 
1213           gtk/makefile.msc.in demos/gtk-demo/makefile.msc.in : updated
1214
1215         * gdk/win32/gdkdrawable-win32.c : implement gdk_win32_draw_glyphs_transformed()
1216         * gdk/win32/gdkgc-win32.c : implement _gdk_windowing_gc_get_foreground()
1217
1218         * demos/gtk-demo/rotated_text.c : use G_PI
1219
1220 Sat Nov 20 15:13:51 2004  Owen Taylor  <otaylor@redhat.com>
1221
1222         * gdk/gdkpango.[ch]: Add GdkPangoRenderer, a subclass of 
1223         PangoRenderer targeting GDK drawables. Use to implement the old
1224         gdk_draw_layout() and friends.
1225
1226         * gdk/gdkdraw.c gdk/gdkdrawable.h gdk/gdkwindow.c gdk/gdkpixmap.c:
1227         Add gdk_draw_glyphs_transformed() gdk_draw_trapezoids() and
1228         the corresponding members of GdkDrawableClass. Add a fallback
1229         implementation of gdk_draw_trapezoids() in terms of pixbufs.
1230
1231         * gdk/gdkwindowing.h gdk/x11/gdkg-x11.h: Add 
1232         _gdk_windowing_gc_get_foreground() to enable the fallback 
1233         trapezoid implementation.
1234
1235         * gdk/x11/gdkdrawable-x11.c gdk/x11/gdkdisplay-x11.h: Implement 
1236         draw_glyph_transformed, draw_trapezoids.
1237
1238         * gdk/x11/gdkdrawable-x11.[ch]: Add 
1239         _gdk_x11_drawable_draw_xtrapezoids, _gdk_x11_drawable_draw_xft_glyphs
1240         for use of GdkX11Renderer.
1241
1242         * gdk/x11/gdkgc-x11.c gdk/x11/gdkprivate-x11.h: Implement
1243         GDK_TILED, GDK_STIPPLED, GDK_OPAQUE_STIPPLED in the RENDER codepath.
1244
1245         * gdk/gdkpango-x11.c: Add GdkX11Renderer... a subclass of 
1246         PangoXftRenderer that does tiles/stipples and fallback rendering
1247         of trapezoids without the RENDER extension.
1248
1249         * gdk/gdkpango-x11.c gdk/x11/gdkscreen-x11.[ch] _gdk_x11_renderer_get:
1250         Add _gdk_x11_renderer_get() to get a singleton GdkX11Renderer
1251         for the screen.
1252
1253         * gdk/x11/gdkdrawable-x11.c (get_impl_drawable): Fix a None/NULL
1254         confusion.
1255
1256         * gtk/gtklabel.[ch] gtk/gtk.symbols: Add gtk_label_set/get_angle(),
1257         and an ::angle property.
1258
1259         * gtk/gtklabel.c: Remove #if 0'd dead code gtk_label_paint_word().
1260
1261         * gtk/gtktextdisplay.c: Switch to using a GtkTextRenderer subclass
1262         of GdkPangoRenderer for drawing.
1263
1264         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Switch to using
1265         gtk_attr_shape_new_with_data() to store backreferences to 
1266         embedded pixmaps and widgets. Leave line_display->shaped_objects
1267         around for backwords compatibility.
1268
1269         * gdk/gdkpango.[ch] (gdk_pango_context_set_colormap): Describe
1270         as deprecated, remove implementation.
1271
1272         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Remove
1273         call to gdk_pango_context_set_colormap.
1274
1275         * demos/gtk-demo/Makefile.am demos/gtk-demo/rotated_text.c: Add
1276         a demo showing drawing rotated text.
1277
1278         * tests/testgtk.c: Add a rotated-label test, and also a rotated
1279         drawing test (differs from demos/gtk-demo/rotated_text by also
1280         using a tile)
1281         
1282 2004-11-21  Sven Neumann  <sven@gimp.org>
1283
1284         * configure.in: talk about TIFF loader, not TIFF plug-in.
1285
1286 2004-11-20  Matthias Clasen  <mclasen@redhat.com>
1287
1288         * gtk/gtk.symbols: 
1289         * gtk/gtkdialog.h: 
1290         * gtk/gtkdialog.c (gtk_dialog_set_alternative_button_order_from_array): 
1291         Provide a non-varargs variant of gtk_dialog_set_alternative_button_order()
1292         for language bindings.  (#158798, John Finlay)
1293         
1294 2004-11-20  Federico Mena Quintero  <federico@ximian.com>
1295
1296         Merged from gtk-2-4:
1297
1298         * gtk/gtkfilechooserdefault.c (list_icon_data_func): Set an empty
1299         icon if we are on the editable row:  if we don't set the cell
1300         renderer at all, it will reuse the last thing it painted.
1301
1302 2004-11-19  Federico Mena Quintero  <federico@ximian.com>
1303
1304         Merged from gtk-2-4:
1305
1306         Fix #158475:
1307
1308         * gtk/gtkpathbar.c (make_directory_button): Make the button a drag
1309         source.
1310         (button_drag_data_get_cb): New callback to let us drag the
1311         button's path as a text/uri-list.
1312
1313 2004-11-19  Federico Mena Quintero  <federico@ximian.com>
1314
1315         Merged from gtk-2-4:
1316
1317         Fix #141077.  Based on a patch by Christian Neumair <chris@gnome-de.org>:
1318
1319         * gtk/gtkfilechooserdefault.c (new_folder_button_clicked):
1320         Desensitize the "new folder" button.
1321         (edited_idle_cb): Sensitize the button back.
1322
1323 2004-11-19  Federico Mena Quintero  <federico@ximian.com>
1324
1325         Merged from gtk-2-4:
1326
1327         Fix #158477:
1328
1329         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
1330         Remove the "save_extra_align" and "browse_extra_align" fields; use
1331         a single "extra_align" field.
1332         (save_widgets_create): Don't create the save_extra_align.
1333         (browse_widgets_create): Don't create the browse_extra_align.
1334         (gtk_file_chooser_default_constructor): Create the extra_align
1335         here.
1336         (set_extra_widget): Add the extra widget to the alignment here,
1337         and remove the old one if necessary.
1338         (update_appearance): No need to frob the extra widget's alignments
1339         anymore.
1340         (gtk_file_chooser_default_set_property): No need to call
1341         update_appearance() anymore when we set the extra widget.
1342
1343 2004-11-19  Federico Mena Quintero  <federico@ximian.com>
1344
1345         Merged from gtk-2-4:
1346
1347         * gtk/gtkfilechooserdefault.c
1348         (gtk_file_chooser_default_initial_focus): Don't set the cursor if
1349         we are still loading.
1350
1351 2004-11-18  Federico Mena Quintero  <federico@ximian.com>
1352
1353         Merged from gtk-2-4:
1354
1355         Fixes #155744:
1356
1357         Try to load the whole file system model within a specified time.
1358
1359         * gtk/gtkfilechooserdefault.c (set_list_model): Don't create and
1360         set the sort model here.  Instead, set up a timer in which we'll
1361         try to load the file system model.
1362         (load_set_model): Create and set the sort model here.
1363         (load_setup_timer): New function to set up a timer and switch to
1364         the LOAD_LOADING state.
1365         (load_remove_timer): New function to unset the timer and switch to
1366         the LOAD_FINISHED state.
1367         (browse_files_model_finished_loading_cb): Remove the timer if
1368         needed and set the file system and sort model; switch to the
1369         LOAD_FINISHED state.
1370         (gtk_file_chooser_default_finalize): Remove the load timer.
1371         (gtk_file_chooser_default_init): Start in the LOAD_FINISHED state.
1372
1373 Fri Nov 19 15:18:51 2004  Manish Singh  <yosh@gimp.org>
1374
1375         * modules/engines/ms-windows/msw_rc_style.c
1376         * modules/engines/ms-windows/msw_style.c
1377         * modules/engines/ms-windows/msw_theme_main.c
1378         * modules/engines/pixbuf/pixbuf-main.c
1379         * modules/engines/pixbuf/pixbuf-rc-style.c
1380         * modules/input/gtkimcontextime.c
1381         * modules/input/gtkimcontextxim.c
1382         * modules/input/imam-et.c
1383         * modules/input/imcedilla.c
1384         * modules/input/imcyrillic-translit.c
1385         * modules/input/iminuktitut.c
1386         * modules/input/imipa.c
1387         * modules/input/imthai-broken.c
1388         * modules/input/imti-er.c
1389         * modules/input/imti-et.c
1390         * modules/input/imviqr.c
1391         * tests/prop-editor.c
1392         * tests/testentrycompletion.c
1393         * tests/testfilechooser.c
1394         * tests/testmerge.c
1395         * tests/testtoolbar.c
1396         * tests/testtreecolumns.c
1397         * tests/testtreeview.c: get rid of unnecessary casts.
1398
1399         * tests/testgtk.c (create_labels): add GTK_LABEL() casts for
1400         gtk_label_set_ellipsize() calls.
1401
1402         * tests/testicontheme.c (main): remove unused pixbuf variable.
1403
1404 Fri Nov 19 14:54:09 2004  Manish Singh  <yosh@gimp.org>
1405
1406         * gdk/linux-fb/gdkgc-fb.c
1407         * gdk/win32/gdkgc-win32.c
1408         * gdk/win32/gdkwindow-win32.c
1409         * gtk/gtkaboutdialog.c
1410         * gtk/gtkaction.c
1411         * gtk/gtkactiongroup.c
1412         * gtk/gtkcellrendererprogress.c
1413         * gtk/gtkcellview.c
1414         * gtk/gtkcolorbutton.c
1415         * gtk/gtkcombobox.c
1416         * gtk/gtkcomboboxentry.c
1417         * gtk/gtkentrycompletion.c
1418         * gtk/gtkfilechooserbutton.c
1419         * gtk/gtkmenutoolbutton.c
1420         * gtk/gtkrc.c
1421         * gtk/gtksettings.c
1422         * gtk/gtkstyle.c
1423         * gtk/gtktoggletoolbutton.c
1424         * gtk/gtktoolbutton.c
1425         * gtk/gtktoolitem.c
1426         * gtk/gtktreemodelfilter.c
1427         * gtk/gtktreeselection.c
1428         * gtk/gtktreeviewcolumn.c
1429         * gtk/gtkuimanager.c: get rid of unnecessary casts.
1430
1431         * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_set_property):
1432         cast away the const for g_value_set_enum. This is after the g_warning,
1433         so this is a hack to begin with.
1434
1435         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_set_property):
1436         add a cast to GTK_FILE_CHOOSER for impl here.
1437
1438 Fri Nov 19 14:52:42 2004  Manish Singh  <yosh@gimp.org>
1439
1440         * autogen.sh: rm autom4te.cache, since it might interfere with
1441         differing autoconf versions.
1442
1443 2004-11-19  Christian Rose  <menthos@menthos.com>
1444
1445         * configure.in: Added "rw" to ALL_LINGUAS.
1446
1447 2004-11-17  Matthias Clasen  <mclasen@redhat.com>
1448
1449         * gtk/gtkaboutdialog.c (gtk_about_dialog_set_email_hook) 
1450         (gtk_about_dialog_set_url_hook): Destroy the correct 
1451         data.  (#158522, John Finlay)
1452
1453 2004-11-16  Matthias Clasen  <mclasen@redhat.com>
1454
1455         * configure.in: Use gmodule-no-export-2.0.pc, require glib 2.5.7
1456         (#125627, Owen Taylor)
1457
1458 2004-11-17  Matthias Clasen  <mclasen@redhat.com>
1459
1460         * gtk/gtkbutton.c: Don't return a relief when a 
1461         widget is expected.  (#158470, Kazuki IWAMOTO)
1462
1463 Tue Nov 16 19:44:26 2004  Owen Taylor  <otaylor@redhat.com>
1464
1465         * gdk/x11/gdkevents-x11.c gdk/x11/gdkim-x11.c gdk/x11/gdkwindow-x11.c: 
1466         More strict aliasing warning suppressage.
1467
1468 Tue Nov 16 19:26:30 2004  Owen Taylor  <otaylor@redhat.com>
1469
1470         * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display): 
1471         Squash strict aliasing warnings. 
1472
1473 2004-11-17  Davyd Madeley  <davyd@madeley.id.au>
1474
1475         * gtk/gtkfilechooserdefault.c: Allow backspace to move up the
1476         FileChooser tree to make it consistent with Nautilus and others.
1477
1478 2004-11-16  Matthias Clasen  <mclasen@redhat.com>
1479
1480         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix a 
1481         copy-and-paste error.  (#158459) 
1482
1483         * demos/gtk-demo/*.c: Don't include config.h in the examples.
1484
1485 Tue Nov 16 00:08:07 2004  Jonathan Blandford  <jrb@redhat.com>
1486
1487         * docs/tools/widgets.c: Update so that toplevel windows accomodate
1488         for the titlebar when sizing.  Also clean up statusbar
1489
1490         * docs/reference/gtk/images/*png: update
1491
1492 2004-11-16  Matthias Clasen  <mclasen@redhat.com>
1493
1494         * gtk/gtkcellrenderertext.c (get_layout): Don't use the foreground
1495         color for selected cells, Don't use the background color
1496         in unfocused selected cells. Also avoid creating two PangoLayouts
1497         per render call.  (#154615, #154611, Billy Biggs)
1498
1499 Mon Nov 15 19:02:07 2004  Manish Singh  <yosh@gimp.org>
1500
1501         * gdk/abicheck.sh
1502         * gtk/abicheck.sh: don't hardcode lengths for cut, instead split on
1503         the third field.
1504
1505 2004-11-15  Matthias Clasen  <mclasen@redhat.com>
1506
1507         * gtk/gtkselection.c: Reduce the clipboard timeout from 300
1508         seconds to 30 seconds.  (#155428, Billy Biggs)
1509
1510         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_setting_changed): 
1511         * gtk/gtkbutton.c (gtk_button_setting_changed): Really free the
1512         list.  (#158422, Morten Welinder)
1513
1514 2004-11-15  Matthias Clasen  <mclasen@redhat.com>
1515
1516         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_screen_changed) 
1517         * gtk/gtkbutton.c (gtk_button_screen_changed): Use 
1518         GPOINTER_TO_UINT()/GUINT_TO_POINTER() for guints.  (#158420,
1519         Morten Welinder)
1520
1521 Mon Nov 15 17:17:17 2004  Manish Singh  <yosh@gimp.org>
1522
1523         * configure.in: Output Makefile for the pixbuf engine directory.
1524
1525         * gtk/gtk.symbols: Add gtk_button_{get,set}_image.
1526
1527         * modules/engines/pixbuf/pixbuf-render.c: Replace usage of deprecated
1528         functions.
1529
1530         * modules/engines/pixbuf/pixbuf-draw.c: undef GDK_DISABLE_DEPRECATED
1531         for gdk_draw_string (ick).
1532
1533 2004-11-15  Matthias Clasen  <mclasen@redhat.com>
1534
1535         * gtk/gtkbutton.[hc]: Add a GtkButton::image property with setter 
1536         and getter, which allows to construct stock-like buttons with 
1537         custom images and/or text.  (#62466, Jonathan Blandford, patch by
1538         Matthias Clasen)
1539
1540         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_set_image): Add 
1541         some more docs.
1542
1543 Mon Nov 15 14:25:21 2004  Jonathan Blandford  <jrb@redhat.com>
1544
1545         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_cell_set_dirty):
1546         Patch from Gavin Romig-Koch <gavin@redhat.com> to no longer reset
1547         the resized_width when marking a column dirty.
1548
1549 2004-11-15  Matthias Clasen  <mclasen@redhat.com>
1550
1551         * modules/engines/Makefile.am (SUBDIRS): Add pixbuf.
1552
1553         * gtk/gtkbutton.c: 
1554         * gtk/gtkimagemenuitem.c: Don't use one signal handler per
1555         instance to track changes to the gtk-menu-images and
1556         gtk-button-images settings. Instead use a single handler which 
1557         iterates over the widget hierarchy. (#143668)
1558
1559         * gtk/gtktreemodel.c (gtk_tree_path_prev): Return FALSE if
1560         depth is 0 (noticed by Tim Janik)
1561
1562 2004-11-15 Erwann Chenede - <erwann.chenede@sun.com>
1563
1564         * gtk/gtkfilesel.c: fix unselect in multiple selection (#156805)
1565
1566 2004-11-15  Matthias Clasen  <mclasen@redhat.com>
1567
1568         * gtk/gtklabel.c: Include gtkdnd.h  (#158243, Kazuki IWAMOTO)
1569
1570 2004-11-13  Matthias Clasen  <mclasen@redhat.com>
1571
1572         * gtk/gtkspinbutton.c (gtk_spin_button_new_with_range): Allow
1573         min == max.  (#158225, Vasco Alexandre da Silva Costa)
1574
1575 2004-11-12  Matthias Clasen  <mclasen@redhat.com>
1576
1577         * gtk/gtkcombobox.c (gtk_combo_box_class_init): Add more docs.
1578
1579         * gtk/gtkfilefilter.c (gtk_file_filter_filter): Fix typo in
1580         docs.
1581
1582         * gtk/gtklabel.c (gtk_label_do_popup): Adjust to the current
1583         entry popup menu.
1584         (gtk_label_button_press, gtk_label_button_release) 
1585         (gtk_label_drag_data_get): Implement DND for selectable labels.
1586
1587         Make GDK+ compile with X11R5 (#148032)
1588         
1589         * gdk/x11/xsettings-client.c (xsettings_client_new): 
1590         * gdk/x11/gdkproperty-x11.c (_gdk_x11_precache_atoms): Only
1591         use XInternAtoms if it is available.
1592
1593         * gdk/x11/gdkasync.c: Include XIproto.h if necessary.
1594
1595         * configure.in: Check for XInternAtoms and X headers needed for
1596         xReply.
1597         
1598         * configure.in: Bump version.
1599
1600         * === Released 2.5.5 ===
1601         
1602         * gtk/gtkwindow.c (gtk_window_activate_key_after): Add parentheses 
1603         around comparison in operand of &.
1604
1605         * gtk/gtkcalendar.c: Replace a non-ASCII character in a comment.
1606
1607 2004-11-12  Matthias Clasen  <mclasen@redhat.com>
1608
1609         * tests/Makefile.am (pixbuf_threads_LDADD): Make pixbuf-threads
1610         link.
1611
1612         * NEWS: Updates
1613
1614 2004-11-12  Matthias Clasen  <mclasen@redhat.com>
1615
1616         * tests/Makefile.am: Add pixbuf-threads
1617
1618         * tests/pixbuf-threads.c: Test loading images in multiple
1619         threads.
1620
1621 2004-11-11  Matthias Clasen  <mclasen@redhat.com>
1622
1623         * configure.in: Check for uxtheme.h  (#157967, J. Ali Harlow)
1624
1625         * modules/engines/ms-windows/xp_theme.c: Use HAVE_UXTHEME_H
1626         to protect the #include <uxtheme.h> 
1627
1628         * docs/tools/Makefile.am: Don't try to build doc-shooter on 
1629         Windows.  (#157979, J. Ali Harlow) 
1630
1631         * gtk/gtkfilefilter.c: Don't try to use xdgmime on 
1632         Windows where we don't build it.   (#157944, J. Ali Harlow)
1633
1634         * gtk/gtkstatusbar.c (gtk_statusbar_size_allocate): Also
1635         reserve space for the resize grip if the grip_window is not
1636         realized yet.  (#158010, Christian Persch)
1637         (gtk_statusbar_button_press): Only start a resize if the
1638         button press comes from the grip_window.  (#158011, Christian Persch)
1639
1640 2004-11-11  Tor Lillqvist  <tml@iki.fi>
1641
1642         Fix for #137551, by Robert Ögren:
1643
1644         * gdk/win32/gdkevents-win32.c (generate_focus_event): New function.
1645
1646         (gdk_keyboard_grab, gdk_keyboard_ungrab): Generate focus change
1647         events.
1648         
1649         (gdk_event_translate): Check for keyboard grabs and not pointer
1650         grabs when handling WM_{SET,KILL}FOCUS. Use generate_focus_event().
1651
1652 2004-11-11  Matthias Clasen  <mclasen@redhat.com>
1653
1654         * gtk/gtkuimanager.c (update_node): Remove two more places
1655         where we were unconditionally setting "visible", causing
1656         unnecessary notifications.
1657         (update_node): Fix some C99isms.
1658
1659         * gtk/gtkclipboard.c (gtk_clipboard_get_for_display): 
1660         (gtk_clipboard_get): Clarify the docs.  (#156638, Torsten 
1661         Schoenfeld)
1662         (gtk_clipboard_finalize): Warn if the clipboard is still in
1663         its displays clipboard list.
1664
1665         Considerably speed up GtkUIManager, by changing the semantics
1666         of the dirty flag. It is now propagated up the tree, and
1667         update_node() doesn't descend into clean subtrees.  (#143668,
1668         Dave Neary, Michael Natterer, Sven Neumann, fix proposed
1669         by Soeren Sandmann)
1670         
1671         * gtk/gtkuimanager.c (node_prepend_ui_reference): Only prepend 
1672         a new node reference if the merge_id is different. Take a GNode,
1673         so we can walk up the tree, adjust all callers. 
1674         (node_remove_ui_reference): Only mark a node dirty if the first 
1675         ui reference is removed. Take a GNode here as well for 
1676         consistency. 
1677         (update_node): Don't descend into clean subtrees.
1678         (mark_node_dirty): New function to mark a node and its 
1679         predecessors dirty.
1680
1681 Thu Nov 11 11:34:32 2004  Jonathan Blandford  <jrb@redhat.com>
1682
1683         * gtk/gtkfilechooserbutton.c (update_idler): return FALSE instead
1684         of TRUE.  This is just a quick fix to prevent the idle from
1685         looping indefinitely.
1686
1687 2004-11-11  J. Ali Harlow  <ali@juiblex.co.uk>
1688
1689         * gdk/Makefile.am:
1690         * gdk-pixbuf/Makefile.am:
1691         * gtk/Makefile.am (gtk.def): Use embedded tab rather than '\t'
1692         escape sequence. (#157949)
1693
1694 2004-11-10  Tor Lillqvist  <tml@iki.fi>
1695
1696         * gdk/win32/gdkevents-win32.c (_gdk_win32_get_next_tick): 
1697         Event timestamps don't have to be unique. As long as they are
1698         nondecreasing we should be fine. Solves problems with for instance
1699         long menus not staying up on first click. (#152035, Robert Ögren)
1700
1701 2004-11-10  Matthias Clasen  <mclasen@redhat.com>
1702
1703         * gtk/gtkstatusbar.c (gtk_statusbar_size_allocate): Only
1704         shorten the label if it actually overlaps the resize grip.
1705         (gtk_statusbar_size_allocate): Handle extra children
1706         by leaving room for the resize grip.  (#157778, Christian Persch)
1707
1708         * gdk/linux-fb/*: Fix many sparse warnings.  (#157253,
1709         Kjartan Maraas).
1710         
1711         * NEWS: Updates
1712
1713 2004-11-09  Matthias Clasen  <mclasen@redhat.com>
1714
1715         * gtk/gtkrange.c (gtk_range_real_change_value): Make 
1716         power a double.
1717         (gtk_range_class_init): s/digits/decimal digits/ in doc 
1718         comment.
1719
1720         * gtk/gtkfilechooserbutton.c (update_idler): Remove debugging
1721         printfs. 
1722
1723         * gtk/gtkicontheme.[ch]: Improve the docs.  (#157785,
1724         Torsten Schoenfeld)
1725
1726         * gdk/x11/gdkwindow-x11.c (gdk_window_get_geometry): Add
1727         a hint about using gdk_drawable_get_size() instead.
1728
1729         * gtk/gtk.symbols: Add new symbols.
1730
1731         * gtk/gtkiconview.c (gtk_icon_view_scroll_to_item): Make
1732         it work with *big* icon views.  (#154466)
1733
1734         * tests/testiconview.c: Add a real "Add many" button.
1735
1736         * gtk/gtkaction.[hc]: 
1737         * gtk/gtkactiongroup.[hc]: Make return types G_CONST_RETURN
1738         instead of const.
1739
1740         * gtk/gtk.symbols: 
1741         * gtk/gtkaction.h: 
1742         * gtk/gtkaction.c (gtk_action_get_accel_path): Add
1743         a function to obtain the accel path of an action. (#148106,
1744         Michael Natterer)
1745
1746         * tests/testiconview.c: Fix double-click activation.
1747
1748         * gtk/gtkstatusbar.c (gtk_statusbar_init): Raise the grip
1749         window when appropriate.
1750         (gtk_statusbar_init): Instead of cutting the text off, make
1751         ellipsize the label.
1752         (gtk_statusbar_size_allocate): Don't let the label extend
1753         under the resize grip.
1754
1755         * gtk/gtkcombobox.c (find_menu_by_path) 
1756         (gtk_combo_box_menu_fill_level, gtk_combo_box_menu_row_inserted): 
1757         Use a row reference, not a path, to associate separators
1758         with their tree row.  
1759         
1760         * gtk/gtkstatusbar.c (gtk_statusbar_set_has_resize_grip): 
1761         Show the grip_window if necessary.  
1762
1763         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): Only
1764         clear the triangle below the grip to the background,
1765         not the full area. 
1766
1767         * gtk/gtklabel.c (draw_insertion_cursor, gtk_label_expose): 
1768         Clip when drawing the cursor. This prevents bits of a
1769         selectable label leaking out from underneath the resize
1770         grip in a statusbar.  (#73359)
1771
1772         * gtk/gtkstatusbar.c: Apply a patch by Owen Taylor to
1773         get reasonable allocations for the statusbar and its
1774         children.  (#73359)
1775
1776         * tests/testgtk.c: Apply a patch by Soeren Sandmann to 
1777         test long statusbar texts.
1778
1779         * gtk/gtk.symbols: Add new symbols.
1780
1781         Avoid resizing GtkStatusbar if the text of the label 
1782         changes  (#90955, He Qiangqiang, fix proposed by 
1783         Owen Taylor, patch by Christian Persch)
1784         
1785         * gtk/gtklabel.[hc]: Add a boolean single-line-mode property 
1786         which causes the label height not to depend on the actual
1787         text, but only on the font.
1788
1789         * gtk/gtkstatusbar.c (gtk_statusbar_init): Turn on
1790         single-line-mode for the label.
1791
1792 2004-11-08  Matthias Clasen  <mclasen@redhat.com>
1793
1794         * gtk/gtkfilefilter.c (gtk_file_filter_filter): Use 
1795         xdg_mime_mime_type_subclass() to match mime types. This
1796         also gives use wildcard matching. (#143760, #141224, 
1797         Tommi Komulainen, David A Knight)
1798
1799         * gtk/gtkaction.c (_gtk_action_sync_menu_visible): Use 
1800         gtk_widget_{hide,show} instead of g_object_set (..."visible"...).
1801
1802         * tests/testfilechooserbutton.c (main): Disable the SAVE 
1803         and CREATE_FOLDER modes.  (#157675, Christian Persch)
1804
1805         * gtk/gtkaboutdialog.c (gtk_about_dialog_set_website): Hide the
1806         website button if the url is unset.  (#157630, John Finlay)
1807
1808         * gtk/gtkaboutdialog.[hc]: Change the return types of the 
1809         gchar ** getters to be more const correct.  (#157566, Mariano 
1810         Suárez-Alvarez)
1811
1812         * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_init): Add
1813         uri targets before text targets, to make file dnd work 
1814         better.  (#157651, Christian Persch)
1815
1816         * gtk/gtktreedatalist.c: Support columns whose declared type is
1817         an interface better, by treating them like G_TYPE_OBJECT if
1818         the interface types requires G_TYPE_OBJECT.
1819
1820 2004-11-08  Bastien Nocera  <hadess@hadess.net>
1821
1822         * gtk/stock-icons/stock_media_play_rtl_16.png:
1823         * gtk/stock-icons/stock_media_play_rtl_24.png: add the icons again
1824         with the binary flag (Closes: #157665)
1825
1826 2004-11-07  Matthias Clasen  <mclasen@redhat.com>
1827
1828         * gtk/gtkfilefilter.h:
1829         * gtk/gtkfilefilter.c (gtk_file_filter_add_pixbuf_formats): 
1830         New convenience function to add a filter for image files
1831         which can be loaded by GdkPixbuf. (#145388, Anders Carlsson)
1832
1833         * tests/testfilechooser.c: Test the image filter.
1834         
1835         * gtk/gtkmenu.c (menu_change_screen): Remove some warnings.
1836
1837         Show files in folder modes. (#157013, Nickolay V. Shmyrev)
1838         
1839         * gtk/gtkfilechooserdefault.c (create_file_list): Use a selection
1840         function to determine which rows can be selected.
1841         (update_appearance): Always show files. Also queue a redraw.
1842         (set_list_model): Always show files.
1843         (list_select_func): The selection function used for the file list.
1844         Don't allow to select files when in select/create folder mode.
1845         (list_row_activated): Don't activate files in folder modes.
1846         (list_icon_data_func, list_mtime_data_func, list_size_data_func): 
1847         Render files insensitive in folder modes.
1848
1849 2004-11-06  Matthias Clasen  <mclasen@redhat.com>
1850
1851         * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_set_property): 
1852         Don't support CREATE_FOLDER and SAVE for now. UI authorities
1853         object to it.  (#157384, Seth Nickell)
1854
1855         * gtk/gtkfilechooserdefault.c (file_pane_create): Jump through
1856         a few hoops to make the tooltip on the filter combo box work
1857         a bit better. This fixes #157273 and #157074.
1858
1859         * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_pack_end): 
1860         Add the ComboCellInfo to the list.  (#157528, Carlos Garnacho
1861         Parro)
1862
1863 2004-11-05  Matthias Clasen  <mclasen@redhat.com>
1864
1865         * gtk/gtkcombobox.c (gtk_combo_box_menu_button_state_changed):
1866         Remove this unneeded function, as it breaks state propagation.
1867
1868         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_activate): 
1869         Queue the resize before setting the tearoff state, to 
1870         make sure the torn-off menu picks up the size increase due
1871         to the arrow in the torn off menu item.  (#157286, Adam
1872         Hooper, fix proposed by Owen Taylor)
1873
1874         * gtk/gtkmenu.c (menu_change_screen): Don't unnecessarily
1875         call gtk_menu_position(), since that function has issues
1876         when called on a menu whose parent is unrealized.  (#157354,
1877         Adam Hooper)
1878
1879         * gtk/gtkmain.c: Document new functions.
1880
1881 2004-11-04  Matthias Clasen  <mclasen@redhat.com>
1882
1883         * gtk/stock-icons/Makefile.am: Typo fix.
1884
1885         * gtk/gtkaboutdialog.c: Documentation updates.
1886
1887 2004-11-04  Bastien Nocera  <hadess@hadess.net>
1888
1889         * gtk/gtkiconfactory.c: (get_default_icons): Make sure the RTL
1890         variants are used for media icons
1891         * gtk/stock-icons/Makefile.am: update following the addition of
1892         the 2 Play icon RTL variants
1893         * gtk/stock-icons/stock_media_play_rtl_16.png: added
1894         * gtk/stock-icons/stock_media_play_rtl_24.png: added
1895
1896 2004-11-03  Matthias Clasen  <mclasen@redhat.com>
1897
1898         * gtk/gtkfilechooserdefault.c (new_folder_button_clicked): 
1899         Don't leak the path.  (#157301, Carlos Garnacho Parro)
1900
1901         * gdk/x11/gdkdnd-x11.c (gdk_drag_motion): Handle the 
1902         case that the protocol version in the context is not 
1903         set yet.  (#157123, James Henstridge)
1904
1905         * gtk/gtktreeview.c (gtk_tree_view_search_activate): Don't
1906         try to activate a node if the cursor is not valid.  
1907
1908 2004-11-03  James M. Cape  <jcape@ignore-your.tv>
1909
1910         * gtk/gtkfilechooserbutton.c (update_dialog), (dialog_response_cb):
1911         Don't mysteriously go to the parent dir when hitting "Cancel" in
1912         folder mode (fixes #156971).
1913
1914 2004-11-03  Matthias Clasen  <mclasen@redhat.com>
1915
1916         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): Don't
1917         access label->layout directly.  (#157080, Adam Hooper)
1918
1919         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Allow
1920         unsetting a pattern by passing NULL.  (#156720, Tristan Van Berkom)
1921
1922         * gtk/gtkcombobox.c (gtk_combo_box_get_active): Don't crash 
1923         if the active_row reference has become invalid.  (#157156,
1924         Christophe Fergeau)
1925         
1926 2004-11-02  Matthias Clasen  <mclasen@redhat.com>
1927
1928         * gtk/gtkwindow.c (gtk_window_activate_key_after): As
1929         a last stage in GtkWindow key press handing, try adding
1930         window->mnemonic_modifier to event->state and see if it
1931         matches a mnemonic. (#53709, based on a patch by
1932         Pasupathi Duraisamy, patch by Owen Taylor)
1933
1934         * gtk/gtkcellrenderercombo.c (gtk_cell_renderer_combo_class_init): 
1935         Doc additions.
1936
1937         * gtk/gtkfilechooserbutton.h: Fix trigraphs in private markers.
1938
1939         * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_class_init): 
1940         Fix a doc comment.
1941
1942 2004-11-01  Matthias Clasen  <mclasen@redhat.com>
1943
1944         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
1945         Remove a debug printf().  (#157087, Christian Persch)
1946
1947         * gtk/gtkicontheme.c: Actually commit the "stat less" patch
1948         which appeared in the ChangeLog a few days ago.
1949
1950         * gtk/gtkfilechooserbutton.c: Move some docs inline.
1951
1952         * gtk/gtkaboutdialog.c (gtk_show_about_dialog): Doc update.
1953
1954         * gtk/gtktextbuffer.c (gtk_text_buffer_backspace): Revalidate the
1955         iter.  (#156924, Murray Cumming)
1956
1957         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Don't crash on
1958         broken ClientMessage events.  (#157056, Owen Taylor)
1959
1960         * gtk/gtkactiongroup.c (gtk_action_group_get_visible): Fix a typo in
1961         the docs.  (#157044, Masao Mutoh)
1962
1963 2004-10-31  Matthias Clasen  <mclasen@redhat.com>
1964
1965         * gtk/gtkcombobox.c (gtk_combo_box_button_state_changed): Update the
1966         state of the cell view when the state of the button changes (to 
1967         get prelighted drawing right).  (#138650, Frances Keenan, 
1968         Christian Persch)
1969
1970         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
1971         Don't force the height of the action area, we don't scroll 
1972         it anyway, and the current way of calculating the height can lead
1973         to broken display.  (#156573, Christian Persch)
1974
1975         * tests/testentrycompletion.c (animation_timer): Don't try to
1976         remove stuff from an empty model.  (#156575, Christian Persch)
1977
1978         * gtk/gtkentrycompletion.c (gtk_entry_completion_class_init): 
1979         * gtk/gtkcellrenderercombo.c (gtk_cell_renderer_combo_class_init): 
1980         Update doc comments.
1981
1982 2004-10-31  Tor Lillqvist  <tml@iki.fi>
1983
1984         * gdk/win32/gdkprivate-win32.h
1985         * gdk/win32/gdkglobals-win32.c
1986         * gdk/win32/gdkmain-win32.c: Remove _windows_version and the
1987         IS_WIN_NT() macro.
1988
1989         * gdk/win32/*.c: Use G_WIN32_IS_NT_BASED() from GLib instead.
1990
1991 2004-10-31  Matthias Clasen  <mclasen@redhat.com>
1992
1993         Add api for image transfer via copy-and-paste (#156408)
1994         
1995         * gtk/gtkclipboard.c (gtk_clipboard_set_image) 
1996         (gtk_clipboard_request_image, gtk_clipboard_wait_for_image) 
1997         (gtk_clipboard_wait_is_image_available): New functions for image
1998         transfer.
1999
2000         * gtk/gtkselection.h:
2001         * gtk/gtkselection.c (gtk_selection_data_targets_include_image): 
2002         New function, similar to gtk_selection_data_targets_include_text().
2003
2004         * gtk/gtkprogressbar.[hc]: Add an ellipsize property with 
2005         getter and setter.  (#156845, Morten Welinder)
2006
2007 2004-10-29  Robert Ögren  <gtk@roboros.com>
2008
2009         * gdk/win32/gdkwindow-win32.c (gdk_window_begin_resize_drag),
2010         (gdk_window_begin_move_drag): Implement these on win32, currently
2011         only for button 1. Fixes the resize grip of GtkStatusbar on 
2012         win32. (#143285)
2013
2014 2004-10-30  Matthias Clasen  <mclasen@redhat.com>
2015
2016         * gtk/gtktextbtree.c (_gtk_text_btree_select_range): Redisplay
2017         the new selection.
2018
2019         * gtk/gtktextview.c (gtk_text_view_select_all): Use 
2020         gtk_text_buffer_select_range().
2021
2022         * tests/testtext.c: Add a "Select All" menuitem.  (#156792,
2023         Paolo Borelli)
2024
2025         * gtk/gtkicontheme.c (insert_theme): Sort the dir_mtimes 
2026         list in the same way as the search path.
2027         (theme_subdir_load): Avoid stat()ing subdirs if the theme 
2028         directory doesn't exist.  (#156866)
2029
2030 2004-10-29  Matthias Clasen  <mclasen@redhat.com>
2031
2032         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_finalize): 
2033         Drop the reference to the pixbuf, regardless whether it is
2034         a stock pixbuf.  (#156863, Philip Langdale)
2035
2036 2004-10-29  Hans Breuer  <hans@breuer.org>
2037
2038         * gdk/makefile.msc gtk/makefile.msc.in : updated
2039
2040         * gdk/win32/gdkdisplay-win32.c : dummy implementations for
2041         gdk_display_supports_clipboard_persistence, gdk_display_store_clipboard
2042
2043         * gtk/gtkmodules.c : #include "gtkprivate.h" for GTK_LIBDIR
2044
2045 2004-10-29  Matthias Clasen  <mclasen@redhat.com>
2046
2047         * gtk/gtkclipboard.c (gtk_clipboard_set_text): Don't hardwire
2048         the supported text targets here, use 
2049         gtk_target_list_add_text_targets().  (#156404)
2050
2051         * gtk/gtkliststore.c (gtk_list_store_reorder): Don't
2052         loop over the sentinel node.  (#156298, Torsten Schoenfeld)
2053
2054 2004-10-28  Matthias Clasen  <mclasen@redhat.com>
2055
2056         * gtk/gtkcombobox.c (gtk_combo_box_start_editing): Use
2057         g_signal_connect_object() to prevent premature finalization
2058         of the cell_editable while the key_press_event signal is
2059         handled.  (#156325, Olivier Andrieu)
2060
2061         * *: Clean up many sparse warnings.  (#156698, Kjartan Maraas)
2062         
2063         * gtk/gtktreeview.c (gtk_tree_view_remove_widget): Disconnect
2064         from the remove-widget signal after removing the signal.
2065
2066         * gtk/gtkaboutdialog.c (gtk_show_about_dialog): Destroy
2067         the dialog with the parent.  (#156557, Paolo Borelli)
2068
2069 2004-10-27  Matthias Clasen  <mclasen@redhat.com>
2070
2071         * Bump version
2072
2073         * === Released 2.5.4 ===
2074
2075         * Makefile.am (EXTRA_DIST): Remove po/makefile.mingw
2076
2077 2004-10-28  Anders Carlsson  <andersca@gnome.org>
2078
2079         * gtk/gtkclipboard.c: (gtk_clipboard_set_can_store):
2080         * gtk/gtkclipboard.h:
2081         Make targets const.
2082
2083 2004-10-27  Matthias Clasen  <mclasen@redhat.com>
2084
2085         * gtk/Makefile.am (gtkalias.h): 
2086         * gdk/Makefile.am (gdkalias.h): Fix srcdir != builddir build.
2087         (#156547, Thomas Fitzsimmons)
2088         
2089         * NEWS: Updates.
2090
2091         * gtk/gtkclipboard.c (gtk_clipboard_set_can_store): Silently
2092         ignore non-CLIPBOARD clipboards.  (#156610, Christian Persch)
2093
2094         * gtk/gtksettings.c: Make it build on windows. (#156618,
2095         Kazuki IWAMOTO)
2096
2097 2004-10-26  Matthias Clasen  <mclasen@redhat.com>
2098
2099         * gtk/gtkimcontextsimple.c (check_hex): Stop preediting if strtoul 
2100         couldn't parse the complete preedit string.  (#156434)
2101
2102         * gtk/gtkmessagedialog.c: 
2103         * gtk/gtkfilechooserbutton.c: Add missing includes.  (#156503, 
2104         Kazuki IWAMOTO)
2105
2106         * gtk/gtkimage.h: 
2107         * gtk/gtkimage.c (gtk_image_get_icon_name): Make the icon_name 
2108         parameter G_CONST_RETURN.
2109         
2110         * gtk/gtkimage.c: It is enough to listen for screen changes and 
2111         style-set to catch all icon theme changes.
2112         (gtk_image_set_property): Reset the image size if the pixel size 
2113         property is changed.
2114
2115         * gtk/gtk.symbols: Add new symbols.
2116
2117         * gdk/x11/gdkdisplay-x11.c (gdk_display_store_clipboard): Fix the 
2118         doc comment.
2119
2120 2004-10-26  Anders Carlsson  <andersca@imendio.com>
2121
2122         * gtk/gtktextbuffer.c: (gtk_text_buffer_finalize),
2123         (create_clipboard_contents_buffer), (clipboard_get_contents_cb),
2124         (clipboard_clear_contents_cb), (cut_or_copy):
2125         Rewrite clipboard handling so that the clipboard contents 
2126         won't be freed when the text buffer is finalized. Also add 
2127         clipboard manager support. Fixes #95496.
2128
2129 2004-10-25  Anders Carlsson  <andersca@gnome.org>
2130
2131         * gtk/gtkentry.c: (gtk_entry_completion_timeout):
2132         * gtk/gtkentrycompletion.c: (gtk_entry_completion_set_model),
2133         (gtk_entry_completion_get_model), (gtk_entry_completion_complete):
2134         Really handle a NULL model, fixes #137211 for real.
2135
2136         * gtk/gtkfilechooserentry.c:
2137         (gtk_file_chooser_entry_maybe_update_directory):
2138         Remove _clear, #137211 is fixed.
2139
2140         * tests/testentrycompletion.c: (main):
2141         Add completion with an empty model.
2142         
2143 2004-10-25  Carlos Garnacho Parro  <carlosg@gnome.org>
2144
2145         Fix for #118764, David Bordoley:
2146         
2147         * gtk/gtkmessagedialog.[ch]
2148         (gtk_message_dialog_format_secondary_text),
2149         (gtk_message_dialog_format_secondary_format): API additions to
2150         create HIG-like dialogs
2151
2152         * demos/gtk-demo/dialog.c: Use the new API in the example
2153
2154         * docs/reference/gtk/gtk-sections.txt:
2155         * docs/reference/gtk/tmpl/gtkmessagedialog.sgml: documented API
2156         additions
2157
2158 2004-10-25  James M. Cape  <jcape@ignore-your.tv>
2159
2160         Rework of GtkFileChooserButton, some cleanups. Fixes #154388,
2161         #154390, #154390, #156272.
2162
2163         * docs/reference/gtk/gtk-docs.sgml: Moved GtkFileChooserButton
2164         below GtkFileChooser.
2165         * docs/reference/gtk/gtk-sections.txt: Added
2166         gtk_file_chooser_button_get_width_chars(),
2167         gtk_file_chooser_button_set_width_chars(),
2168         gtk_label_set_width_chars(), gtk_label_get_width_chars().
2169         * docs/reference/gtk/gtk.types: Added
2170         gtk_cell_renderer_combo_get_type,
2171         gtk_cell_view_get_type,
2172         gtk_text_iter_get_type.
2173         * docs/reference/gtk/tmpl/gtkaboutdialog.sgml: Add
2174         "logo-icon-name" property.
2175         * docs/reference/gtk/tmpl/gtkcellview.sgml: Updates for properties
2176         (b/c of get_type() inclusion above).
2177         * docs/reference/gtk/tmpl/gtkfilechooserbutton.sgml:
2178         * docs/reference/gtk/tmpl/gtklabel.sgml: Add "width-chars" property,
2179         getters/setters.
2180         * docs/reference/gtk/tmpl/gtkcellrenderercombo.sgml: Added.
2181         * gtk/gtkentrycompletion.c:
2182         (_gtk_entry_completion_popdown): Don't show if the entry isn't
2183         mapped.
2184         * gtk/gtkfilechooserbutton.[c,h]: (*): About 45%
2185         rewritten, adds "width-chars" property, icons, working save modes,
2186         volume/Home/Desktop friendly-naming support.
2187         * gtk/gtklabel.[c,h]:
2188         (gtk_label_class_init), (gtk_label_init),
2189         (gtk_label_get_property), (gtk_label_set_property),
2190         (gtk_label_get_width_chars), (gtk_label_set_width_chars),
2191         (gtk_label_size_request): Add "width-chars" property.
2192         * tests/testfilechooserbutton.c: Update, use 4 different buttons for
2193         the different ACTIONs.
2194         * gtk/.cvsignore: Ignore gtk-update-icon-cache.
2195         * tests/.cvsignore: Ignore testimage.
2196
2197 2004-10-25  Matthias Clasen  <mclasen@redhat.com>
2198
2199         * gtk/gtkcellrenderercombo.c (find_text): Don't leak text. (#156325,
2200         Olivier Andrieu)
2201
2202 2004-10-25  Anders Carlsson  <andersca@imendio.com>
2203
2204         * gdk/gdk.symbols: 
2205         * gdk/gdkdisplay.h:
2206         * gdk/x11/gdkdisplay-x11.c:
2207         (gdk_display_supports_clipboard_persistence), 
2208         (gdk_display_store_clipboard):
2209         New API to handle the clipboard manager.
2210
2211         * gtk/gtk.symbols:
2212         * gtk/gtkclipboard.c: (gtk_clipboard_class_init),
2213         (gtk_clipboard_finalize), (selection_clear_event_cb),
2214         (clipboard_unset), (gtk_clipboard_set_text),
2215         (gtk_clipboard_request_targets), (gtk_clipboard_wait_for_targets),
2216         (clipboard_peek), (gtk_clipboard_owner_change),
2217         (gtk_clipboard_wait_is_target_available),
2218         (gtk_clipboard_store_timeout), (gtk_clipboard_set_can_store),
2219         (gtk_clipboard_selection_notify), (gtk_clipboard_store),
2220         (_gtk_clipboard_store_all):
2221         * gtk/gtkclipboard.h:
2222         Add API for clipboard persistence and implement it, also add
2223         gtk_clipboard_wait_is_target_available.
2224         
2225         * gtk/gtkmain.c: (gtk_main):
2226         Call _gtk_clipboard_store_all before exiting.
2227         
2228 2004-10-25  Matthias Clasen  <mclasen@redhat.com>
2229
2230         * gtk/gtkaboutdialog.h: 
2231         * gtk/gtkaboutdialog.c (gtk_about_dialog_set_logo_icon_name)
2232         (gtk_about_dialog_get_logo_icon_name): Support named icons as 
2233         logos.  (#156378, James Henstridge)
2234
2235         * gtk/gtkdialog.c (gtk_dialog_set_alternative_button_order): Fix the 
2236         doc formatting.
2237
2238         * gtk/gtkcellview.[hc]: Make function parameter names consistent.
2239
2240         * tests/Makefile.am (noinst_PROGRAMS): Add testimage.
2241
2242         * tests/testicontheme.c (main): Use gtk_image_new_from_icon_name().
2243
2244 2004-10-25  Matthias Clasen  <mclasen@redhat.com>
2245
2246         Add a public setting for button ordering (#74669, Owen Taylor)
2247         
2248         * gtk/gtksettings.c (gtk_settings_class_init): Add a 
2249         gtk-alternative-button-order setting.
2250
2251         * gtk/gtkdialog.h: 
2252         * gtk/gtkdialog.c (gtk_alternative_dialog_button_order): A 
2253         getter for the alternative button order setting.
2254         * gtk/gtkdialog.c (gtk_dialog_set_alternative_button_order): 
2255         New function to install an alternative button order for a 
2256         dialog.
2257
2258         * gtk/gtkfilesel.c (gtk_file_selection_init): 
2259         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): 
2260         * gtk/gtkmessagedialog.c (gtk_message_dialog_add_buttons): 
2261         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
2262         * gtk/gtkfilechooserdefault.c (location_popup_handler): 
2263         Set up an alternative button order.
2264         
2265 2004-10-25  Matthias Clasen  <mclasen@redhat.com>
2266
2267         * gtk/gtkimage.h: 
2268         * gtk/gtkimage.c (gtk_image_new_from_icon_name)
2269         (gtk_image_set_from_icon_name, gtk_image_get_icon_name)
2270         (gtk_image_set_pixel_size, gtk_image_get_pixel_size):  Add a
2271         new type GTK_IMAGE_ICON_NAME for named icons, update the size
2272         and content of stock, icon set and named icon images upon style
2273         changes, and allow to set a fixed pixel size for named icon
2274         images.  (#155688, James Henstridge)
2275
2276         * tests/testimage.c: Test application for theming behaviour of
2277         different image types and for image dnd.
2278
2279 2004-10-24  Matthias Clasen  <mclasen@redhat.com>
2280
2281         * gtk/gtkcellrenderercombo.c: Use G_DEFINE_TYPE, initialize the
2282         has_entry property, ref the model and add a finalizer.  (#156325,
2283         Olivier Andrieu)
2284         
2285 Sun Oct 24 02:56:43 2004  Jonathan Blandford  <jrb@redhat.com>
2286
2287         * docs/tools/widgets.c: Update GtkFileChooserButton doc shot.
2288
2289 2004-10-24  Matthias Clasen  <mclasen@redhat.com>
2290
2291         * gtk/gtkicontheme.c: Use the new g_key_file api in GLib.
2292
2293         * gtk/Makefile.am (gtk_c_sources): Remove gtkiconthemeparser.[hc]
2294
2295         * gtk/gtkiconthemeparser.[hc]: Removed.
2296
2297         * gtk/gtkfilechooserdefault.c (location_popup_handler): If the
2298         location dialog is brought up by typing '/', insert the slash
2299         in the entry.  (#155370, Warren Togami)
2300
2301 2004-10-23  Matthias Clasen  <mclasen@redhat.com>
2302
2303         * gtk/gtkfilechooserdefault.c (tree_view_keybinding_cb) 
2304         (trap_activate_cb): Accept shift-/ for bringing up the location
2305         popup, since German and French keyboards generate such 
2306         events.  (#154163, Frederic Crozat)
2307
2308         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): Invalidate 
2309         the window if the tree is empty, to avoid resizing artifacts
2310         from the focus rectangle.  (#155881, Vincent Noel, patch by
2311         Billy Biggs)    
2312
2313 Sat Oct 23 16:14:37 2004  Søren Sandmann  <sandmann@redhat.com>
2314
2315         * gtk/gtksequence.c (_gtk_sequence_node_insert_sorted): Remove
2316         assertion that can get triggered by broken sort functions.
2317
2318 Sat Oct 23 16:07:46 2004  Søren Sandmann  <sandmann@redhat.com>
2319
2320         * gtk/gtksequence.c (_gtk_sequence_swap): Replace broken, overly
2321         clever implementation with one that works.
2322         
2323         * gtk/gtkliststore.c (gtk_list_store_swap): emit "rows_reordered"
2324         instead of "changed" twice.
2325
2326         Bug 153479
2327
2328 Sat Oct 23 15:17:55 2004  Søren Sandmann  <sandmann@redhat.com>
2329
2330         * gtk/gtkmenutoolbutton.c (button_state_changed_cb): Remove check
2331         for previous state being ACTIVE. Bug 153876.
2332
2333 2004-10-22  Matthias Clasen  <mclasen@redhat.com>
2334
2335         * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_drag_data_received) 
2336         (gtk_file_chooser_button_init): Use the new file DND api.
2337
2338         * gtk/gtkdnd.h:
2339         * gtk/gtkdnd.c (gtk_drag_dest_add_uri_targets) 
2340         (gtk_drag_source_add_uri_targets): 
2341
2342         * gtk/gtkselection.h:
2343         * gtk/gtkselection.c (gtk_target_list_add_uri_targets):
2344         (gtk_selection_data_set_uris):  
2345         (gtk_selection_data_get_uris): New functions to allow
2346         handling file DND "without knowing jack shit".
2347
2348         * configure.in: Bump glib requirement to 2.5.4.
2349
2350         * gtk/gtkfilechooserdefault.c (shortcuts_drop_uris): Use
2351         g_uri_list_extract_uris().
2352
2353 Fri Oct 22 13:25:25 2004  Owen Taylor  <otaylor@redhat.com>
2354
2355         * gtk/gtktextbuffer.c (gtk_text_buffer_backspace): Fix 
2356         backspacing on the empty last line of a buffer 
2357         (https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=136840,
2358         Dan Williams)
2359
2360 2004-10-22  Matthias Clasen  <mclasen@redhat.com>
2361
2362         * gtk/gtkdnd.c: Document how to use info with text/image 
2363         targets.
2364
2365         * gtk/gtkselection.h: 
2366         * gtk/gtkselection.c (gtk_target_list_add_text_targets): 
2367         (gtk_target_list_add_image_targets): Add info argument.
2368         
2369         * gtk/gtkcalendar.c (gtk_calendar_motion_notify): 
2370         * gtk/gtkentry.c (gtk_entry_init): 
2371         * gtk/gtktextview.c (gtk_text_view_init): Adjust all callers.
2372
2373 2004-10-22  Anders Carlsson  <andersca@gnome.org>
2374
2375         * gtk/gtktexttag.c: (gtk_text_tag_get_property):
2376         GdkBitmap is a GObject, not a boxed type.
2377         
2378 Thu Oct 21 15:01:09 2004  Owen Taylor  <otaylor@redhat.com>
2379
2380         #155952
2381
2382         * gtk/gtkentry.c: Fix checking the wrong position for
2383         the backspace_deletes_character PangoLogAttr.
2384
2385         * gtk/gtktextbuffer.[ch] gtk/gtk.symbols (gtk_text_buffer_backspace): 
2386         Move backspace logic from GtkTextView to here, check 
2387         backspace_deletes_char. 
2388
2389         * gtk/gtktextview.c: Use gtk_text_buffer_backspace().
2390
2391 2004-10-21  Matthias Clasen  <mclasen@redhat.com>
2392
2393         * gtk/gtkiconcache.c: Include io.h on windows.  (#156075,
2394         Kazuki IWAMOTO)
2395         (_gtk_icon_cache_new_for_path): Don't use MAP_FAILED if we don't
2396         have mmap.
2397
2398         * gtk/gtkicontheme.c (gtk_icon_theme_has_icon): Implement for
2399         cached themes.
2400
2401         * gtk/gtkiconcache.h: 
2402         * gtk/gtkiconcache.c (_gtk_icon_cache_has_icon): New function.
2403
2404         * gtk/updateiconcache.c (scan_directory): Don't skip .icon 
2405         files which are listed before their images.
2406         (foreach_remove_func): Instead filter lonely .icon files out
2407         here.
2408
2409         * gtk/gtkicontheme.c (theme_dir_get_icon_suffix): Filter out
2410         the HAS_ICON_FILE flag.
2411
2412 2004-10-21  Matthias Clasen  <mclasen@redhat.com>
2413
2414         * gtk/gtkiconcache.c: Make it compile without mmap() and
2415         add some more checks.  (#155973, Morten Welinder)
2416
2417         Add convenience api for image dnd (#150165):
2418         
2419         * gtk/gtkselection.h: 
2420         * gtk/gtkselection.c (gtk_target_list_add_image_targets) 
2421         (gtk_selection_data_set_pixbuf, gtk_selection_data_get_pixbuf): 
2422         New functions to handle the image formats readable/writable 
2423         by gdk-pixbuf. 
2424         
2425         * gtk/gtkdnd.h: 
2426         * gtk/gtkdnd.c (gtk_drag_dest_add_image_targets) 
2427         (gtk_drag_source_add_text_targets): New functions to handle
2428         the image formats readable/writable by gdk-pixbuf. 
2429
2430 2004-10-20  Matthias Clasen  <mclasen@redhat.com>
2431
2432         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_new): Make
2433         the code clearer.  (#155239, Murray Cumming)
2434
2435         * gtk/gtkicontheme.c: Small fixes.
2436
2437         * gtk/gtkrc.c: Include gtkmodules.h.  (#155885, Kazuki IWAMOTO)
2438
2439         * gtk/gtktoolbar.h: Add _gtk_toolbar_rebuild_menu(). (#155885)
2440
2441         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): 
2442         Fix a wrong blurb.  (#155838, Morten Welinder)
2443
2444 2004-10-19  Matthias Clasen  <mclasen@redhat.com>
2445
2446         Implement icon theme caching.  (#154034, Martijn Vernooij,
2447         caching schema proposed by Owen Taylor, initial implementation
2448         by Anders Carlsson)
2449         
2450         * gtk/gtkdebug.h: 
2451         * gtk/gtkmain.c: Add a "icontheme" debug flag.
2452
2453         * gtk/Makefile.am (gtk_c_sources): Add gtkiconcache.c
2454         (gtk_private_h_sources): Add gtkiconcache.h
2455         (bin_PROGRAMS): Add gtk-update-icon-cache
2456
2457         * gtk/gtkicontheme.c: Use icon caches if they are available.
2458         Currently, GTK+ uses the cache to get information about the
2459         available sizes, image file formats and .icon files. The
2460         actual image data, and the .icon file contents are not 
2461         cached yet.
2462
2463         * gtk/updateiconcache.c: A cmdline utility for generating
2464         icon cache files.
2465
2466         * gtk/gtkiconcache.h: 
2467         * gtk/gtkiconcache.c: The glue code to mmap an icon cache
2468         file and manage the information it contains.
2469
2470         * tests/testicontheme.c: Add a "display" option.
2471
2472 2004-10-19  Matthias Clasen  <mclasen@redhat.com>
2473
2474         * tests/testicontheme.c: Set the locale, tidy up output.
2475
2476 2004-10-18  Matthias Clasen  <mclasen@redhat.com>
2477
2478         Fix #155658, Sebastien Bacher:
2479         
2480         * gdk/x11/gdkwindow-x11.h (struct _GdkToplevelX11): Add a new 
2481         is_leader flag.
2482
2483         * gdk/x11/gdkwindow-x11.c (update_wm_hints): Set wm hints on
2484         leader windows even if they are withdrawn.
2485         (gdk_window_set_group): Mark the new leader window as such. We 
2486         never remove the flag again, but that should a) be vanishingly
2487         rare and b) not a problem, since the flag just turns off an
2488         optimization.
2489
2490         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Mark the default
2491         leader window as such.
2492
2493 2004-10-17  Matthias Clasen  <mclasen@redhat.com>
2494
2495         * gtk/gtkaboutdialog.c (gtk_about_dialog_new): Destroy secondary
2496         dialogs if the main dialog is hidden. (#155084, Paolo Borelli)
2497
2498 2004-10-16  Matthias Clasen  <mclasen@redhat.com>
2499
2500         * gtk/gtkaboutdialog.c (gtk_about_dialog_destroy): Don't leak
2501         the secondary dialogs.  (#155084, Paolo Borelli)
2502
2503         * gtk/gtkhsv.c (gtk_hsv_expose): Fix redraw issues with the
2504         focus on the ring. 
2505
2506 2004-10-15  Matthias Clasen  <mclasen@redhat.com>
2507
2508         * gdk/makegdkalias.pl: Include linux-fb/gdkfb.h when building
2509         the framebuffer backend.  (#155486, Olexiy Avramchenko)
2510
2511 2004-10-15  Matthias Clasen  <mclasen@redhat.com>
2512
2513         * gtk/gtksizegroup.c (do_size_request): Unset GTK_REQUEST_NEEDED
2514         before emitting ::size-request, following this weeks discussion
2515         on gtk-devel-list@gnome.org.
2516
2517         * gtk/gtkcellview.c (gtk_cell_view_get_size_of_row): Restore 
2518         the size info for the current row after measuring another 
2519         row.  (#154945, William Jon McCann)
2520
2521 2004-10-14  Matthias Clasen  <mclasen@redhat.com>
2522
2523         * gtk/gtkfilechooserdefault.c (shortcuts_remove_rows): Don't
2524         get text unnecessarily.  (#155384, Morten Welinder)
2525         (gtk_file_chooser_default_finalize): Don't forget to
2526         unref the tooltips.  (#155412, Morten Welinder)
2527         (shortcuts_add_current_folder): Don't leak volume. (#155400,
2528         Morten Welinder)
2529
2530 2004-10-12  Matthias Clasen  <mclasen@redhat.com>
2531
2532         * gtk/gtkcontainer.c (_gtk_container_queue_resize): Acknowledge 
2533         the fact that invariants are broken and loop all the way up to 
2534         the resize container.
2535
2536 Tue Oct 12 17:11:02 2004    <timj@birnet.org>
2537
2538         * gtk/gtkwidget.c (gtk_widget_set_usize_internal): don't queue the
2539         widget for resize or emit change notification if the usize didn't
2540         change. this works around a buggy signal connection in #155139.
2541
2542 2004-10-11  Matthias Clasen  <matthias@localhost.localdomain>
2543
2544         * docs/tools/widgets.c: Create scrolledwindow, statusbar, 
2545         scale and image images. 
2546
2547 2004-10-10  Matthias Clasen  <matthias@localhost.localdomain>
2548
2549         * docs/tools/widgets.c: Create a toolbar, menubar, progressbar,
2550         notebook and messagedialog images.
2551
2552         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_select_all): 
2553         Avoid a warning.
2554
2555 Sun Oct 10 11:24:56 2004  Jonathan Blandford  <jrb@redhat.com>
2556
2557         * gtk/gtkcontainer.h (struct _GtkContainer): add /*< private >*/
2558         markings.
2559
2560 2004-10-09  Matthias Clasen  <mclasen@redhat.com>
2561
2562         * docs/tools/widgets.c: Shrink panes and separators images to MEDIUM.
2563
2564         * gtk/gtkcellview.c: Add docs.
2565
2566         * gtk/gtkmenutoolbutton.c (gtk_menu_tool_button_get_menu): Fix
2567         doc comment.
2568
2569         * gtk/gtkactiongroup.h: 
2570         * gtk/gtkactiongroup.c: Reinstate the accidentally lost addition 
2571         of gtk_action_group_translate_string().
2572
2573         * gtk/gtkaccelgroup.h: Declare gtk_accelerator_get_label.
2574
2575 2004-10-08  Matthias Clasen  <mclasen@redhat.com>
2576
2577         * gdk/x11/gdkx.h: Declare gdk_x11_window_set_user_time here.
2578
2579         * gtk/gtktreeview.c (gtk_tree_view_grab_notify): Don't start a 
2580         drag if we loose the grab.
2581
2582         * gtk/gtkfilechooserdefault.c (renderer_edited_cb): Set the cell 
2583         renderer to inert mode to avoid bug #154921.  This fixes a crash
2584         which would otherwise occur if the editing is stopped for the second
2585         time.  (#154767, Manuel Baena García)
2586
2587         * gtk/gtkdebug.h: 
2588         * gtk/gtkwidget.c (gtk_widget_size_allocate): Add a new debug
2589         flag, geometry, to debug size allocation.
2590
2591         * gtk/gtktreeview.c (gtk_tree_view_button_press): Set cell data
2592         unconditionally.  (#152562, Federico Mena Quintero)
2593
2594 2004-10-08  Matthias Clasen  <mclasen@redhat.com>
2595
2596         * gtk/gtkuimanager.c (update_node): Also update smart separators 
2597         if the visibility of a  menuitem with a submenu changes.  (#153791,
2598         Christian Persch)
2599
2600 2004-10-08  Matthias Clasen  <mclasen@redhat.com>
2601
2602         * gtk/gtkentry.h:
2603         * gtk/gtkentry.c: 
2604         * gtk/gtkentrycompletion.c: 
2605         * gtk/gtkspinbutton.c: Share the three copies of get_borders()
2606         under the name _gtk_entry_get_borders().  (#116368, Owen Taylor)
2607
2608 2004-10-07  Matthias Clasen  <mclasen@redhat.com>
2609
2610         * gtk/gtkfilechooserdefault.c (check_is_folder): Don't free 
2611         info too early.  (#154703, Morten Welinder)
2612
2613         * gtk/gtkfilechooserdefault.c: Include gtkeventbox.h.
2614         (#154798, Morten Welinder)
2615
2616 2004-10-06  Matthias Clasen  <mclasen@redhat.com>
2617
2618         * gtk/gtkpaned.c (gtk_paned_compute_position): Reduce rounding 
2619         error.  (#154658, John Cupitt)
2620
2621         * gtk/gtktreeselection.c (gtk_tree_selection_get_selected): Clear
2622         the iter instead of returning it unmodified. (#154186, Jonathan Blandford)
2623
2624         * gtk/gtkfilechooserentry.c (gtk_file_chooser_entry_focus): Pop up
2625         the completions again after tab.  (#147700, Jens Bech Madsen)
2626
2627         * gtk/gtktreeview.c (gtk_tree_view_search_iter): Set the cursor
2628         before changing the selection to make the file chooser preview
2629         update work better.  (#143826, Tommi Komulainen)
2630
2631 2004-10-06  Matthias Clasen  <mclasen@redhat.com>
2632
2633         * gtk/gtkrange.c (gtk_range_real_change_value): Replace a really
2634         gross way of rounding to a specified number of digits.  (#145232,
2635         Peter Zelezny, patch by Soeren Sandmann)
2636
2637 Wed Oct  6 00:45:04 2004    <timj@birnet.org>
2638
2639         * gdk/gdkwindow.c (gdk_window_is_viewable): check the iteration window
2640         variable, not just the window passed in. fixes #145270.
2641
2642 Tue Oct  5 21:00:54 2004  Tim Janik  <timj@gtk.org>
2643
2644         * gtk/gtkwidget.c (gtk_widget_size_allocate): reverted my last change 
2645         and applied owen's leaner conditional flag update which should be good
2646         enough to preserve resizing flag invariants.
2647
2648 2004-10-05  Matthias Clasen  <mclasen@redhat.com>
2649
2650         * NEWS: Updates
2651
2652 Tue Oct  5 19:29:06 2004  Tim Janik  <timj@gtk.org>
2653
2654         * gtk/gtkentry.h: removed redundant gtk_entry_get_layout() decl.
2655
2656 2004-10-05  Matthias Clasen  <mclasen@redhat.com>
2657
2658         * gtk/gtkicontheme.c (icon_info_ensure_scale_and_pixbuf): Go back to
2659         not scaling up at all. Less magic.
2660
2661 Tue Oct  5 17:06:26 2004  Tim Janik  <timj@gtk.org>
2662
2663         * gtk/gtkwidget.c (gtk_widget_size_allocate): if REQUEST_NEEDED is still
2664         set on ::size-allocate, another size-request has been queued since
2665         ::size-request and needs to be requeued.
2666
2667 2004-10-05  Paolo Borelli  <pborelli@katamail.com>
2668
2669         * gtk/gtkmenutoolbutton.c: rename the activate-menu signal to
2670         show-menu as discussed in bug #153873.
2671
2672 2004-10-05  Matthias Clasen  <mclasen@redhat.com>
2673
2674         * gtk/gtkuimanager.c (gtk_ui_manager_add_ui): Set 
2675         action_name.  (#154526, John Finlay)
2676
2677         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new_for_display): 
2678         Return a new reference to an existing GdkWindow if one already
2679         exists.  (#151378, Gustavo Carneiro)
2680
2681 2004-10-05  Matthias Clasen  <mclasen@redhat.com>
2682
2683         Provide access to the string representation of accelerators used
2684         in GtkAccelLabel.  (#154068, John Spray)
2685
2686         * gtk/gtkaccelgroup.h:
2687         * gtk/gtkaccelgroup.c (gtk_accelerator_get_label): New function
2688         to return the accelerator label used in GtkAccelLabel. 
2689         (gtk_accelerator_name): Update docs to point to 
2690         gtk_accelerator_get_label().
2691         * gtk/gtkaccellabel.h:
2692         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
2693         New auxiliary function which creates the string representing the
2694         accelerator.
2695         
2696 2004-10-05  Matthias Clasen  <mclasen@redhat.com>
2697
2698         * gtk/gtkcombobox.c (gtk_combo_box_set_model): Resize the
2699         popup if a new model is set.  (#154129, Bernd Demian)
2700
2701 2004-10-04  Matthias Clasen  <mclasen@redhat.com>
2702
2703         * gtk/gtkicontheme.c (icon_info_ensure_scale_and_pixbuf): 
2704         Make the code work as intended for unthemed icons; don't scale
2705         them up too much. Allow to scale them down, and do so 
2706         exactly.  (#154142, Ross Burton)
2707         (gtk_icon_info_load_icon): Amend docs.
2708
2709         * gtk/gtkcelllayout.c (gtk_cell_layout_clear): Improve 
2710         docs.  (#154504, Dave Cook)
2711
2712         * gtk/gtkwindow.c (gtk_window_set_icon_list): 
2713         (gtk_window_set_default_icon_list): Ref the new icons
2714         before unreffing the old ones.  (#154468, Morten Welinder)
2715         (gtk_window_realize_icon): Only set using_themed_icon if
2716         we actually got an icon list from the theme.  (#154472, Morten
2717         Welinder)
2718
2719 2004-10-03  Matthias Clasen  <mclasen@redhat.com>
2720
2721         * gtk/gtkiconview.c (gtk_icon_view_set_model): Reset pointers
2722         pointing to the old model.  (#154350)
2723
2724         * gtk/gtkwindow.c (icon_list_from_theme): Don't leak the
2725         sizes array.  (#154310, Christian Persch)
2726
2727         * gtk/gtktreeviewcolumn.c 
2728         (gtk_tree_view_column_setup_sort_column_id_callback): 
2729         Set sort_indicator to FALSE when appropriate.  (#153714, 
2730         Reinout van Schouwen)
2731
2732         * gtk/gtktreeview.c (gtk_tree_view_search_position_func): 
2733         Fix positioning near the monitor boundaries.  (#154341,
2734         Ken Harris)
2735
2736 2004-10-01  Paolo Borelli  <pborelli@katamail.com>
2737
2738         * gtk/gtkmenutoolbutton.c: deactivate the menu before setting it
2739         to something else. Bug #153887.
2740
2741 2004-10-01  Matthias Clasen  <mclasen@redhat.com>
2742
2743         Fix bug #150790:
2744         
2745         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_size): Fix the
2746         calculation of x_offset when ellipsized and in RTL mode.
2747         (gtk_cell_renderer_text_render): Fix the calculation of the layout
2748         width when ellipsized.  
2749
2750 2004-10-01  Tor Lillqvist  <tml@iki.fi>
2751
2752         * gdk/win32/gdkglobals-win32.c: Set _gdk_input_ignore_wintab to
2753         FALSE, thus enabling tablet input by default.
2754
2755         * gdk/win32/gdkmain-win32.c (_gdk_windowing_args): Accept the
2756         --use-wintab option again (but without effect, as this is now the
2757         default, see above). (#153788)
2758
2759         * modules/input/gtkimcontextime.c: Numerous changes.
2760
2761         Remove the ifdef UNICODE conditionals. Always use the
2762         wide-character Imm* API. It is present also in Windows 98 and
2763         Me. (Not Windows 95, but I think we don't care about that.) Using
2764         the multibyte API wouldn't work anyway on systems where the system
2765         codepage doesn't support the language the user uses an IME for, so
2766         for instance I wouldn't be able to test this module on my English
2767         Windows 2000 although I do have C, J and K IMEs available.
2768
2769         Guard against IMM not being active, always check ImmGetContext()
2770         returning NULL. Work to some extent even without any IME. Fixes
2771         #153800 at least partially.
2772
2773         * modules/input/imime.c (ime_info): Rename to "ime" to match the
2774         naming pattern of other input modules. Make it default for
2775         ja:ko:zh only.
2776
2777 2004-10-01  Matthias Clasen  <mclasen@redhat.com>
2778
2779         * gtk/gtkcombobox.c (gtk_combo_box_set_model): Add a comment regarding
2780         cell renderers to the docs.
2781
2782         * gtk/gtkcellview.c (gtk_cell_view_cell_layout_clear_attributes): 
2783         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_layout_clear_attributes): 
2784         Silently ignore info being NULL. This is unavoidable with the 
2785         current design where we have every implementation of layout_clear
2786         call layout_clear_attributes, and also delegate calls to dependent
2787         cell layouts.  (#154191, Martyn Russell)
2788
2789 2004-10-01  Matthias Clasen  <mclasen@redhat.com>
2790
2791         * modules/input/iminuktitut.c: Fix the spelling of Inuktitut
2792         in several places.  (#154176, John Austin)
2793
2794 2004-09-30  Paolo Borelli  <pborelli@katamail.com>
2795
2796         * tests/testellipsize.c: exit on close.
2797
2798 2004-09-29  Matthias Clasen  <mclasen@redhat.com>
2799
2800         * gtk/gtkmain.c: Make --g-fatal-warnings a G_OPTION_ARG_NONE,
2801         since it doesn't take an argument.
2802
2803 2004-09-29  Christopher Blizzard  <blizzard@redhat.com>
2804
2805         * gtk/gtkmenutoolbutton.h: Remove trailing semicolon on
2806         G_END_DECLS
2807
2808 2004-09-29  Paolo Borelli  <pborelli@katamail.com>
2809
2810         * tests/testtoolbar.c: add a GtkMenuToolButton.
2811
2812 2004-09-29  Matthias Clasen  <mclasen@redhat.com>
2813
2814         * gtk/gtkiconview.c (gtk_icon_view_move_cursor_left_right) 
2815         (gtk_icon_view_move_cursor_start_end) 
2816         (gtk_icon_view_move_cursor_page_up_down) 
2817         (gtk_icon_view_move_cursor_up_down): Handle an empty icon
2818         view gracefully.  (#152486)
2819
2820         Allow keynav to selectable labels (#138085, David Hawthorne):
2821         
2822         * gtk/gtkdialog.c (gtk_dialog_map): Skip selectable labels when
2823         looking for the initial focus widget.
2824
2825         * gtk/gtklabel.c (gtk_label_focus): Remove to put selectable labels 
2826         in the regular focus chain again.
2827
2828 2004-09-28  Matthias Clasen  <mclasen@redhat.com>
2829
2830         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Don't
2831         reuse insensitive pixbufs across multiple rows.  (#153984, Milosz
2832         Derezynski)
2833
2834         * gtk/gtkmain.c (gtk_parse_args): Use gtk_get_option_group() 
2835         to obtain an option group with correctly set pre- and post-
2836         parse hooks, instead of manually calling the hooks. This fixes
2837         a problem with setting the program class in the gdk preparse
2838         hook.  (#153788, Robert Ögren)
2839
2840 2004-09-27  Matthias Clasen  <mclasen@redhat.com>
2841
2842         Fix #153082:
2843         
2844         * gtk/gtkmain.c (do_pre_parse_initialization): Don't call gdk_parse_args()
2845         here, we don't want to parse args twice.
2846         (gtk_init_with_args): Add the ugid check here as well.
2847         (gtk_parse_args): Add the gdk options to the main option group as well.
2848
2849 2004-09-27  Paolo Borelli  <pborelli@katamail.com>
2850
2851         * gtk/Makefile.am:
2852         * gtk/gtk.h:
2853         * gtk/gtkmenutoolbutton.[ch]: add the GtkMenuToolButton widget
2854         discussed in bug #151441.
2855
2856         * docs/reference/gtk/gtk-docs.sgml:
2857         * docs/reference/gtk/gtk-sections.txt:
2858         * docs/reference/gtk/gtk.types:
2859         * docs/reference/gtk/tmpl/gtkmenutoolbutton.sgml: docs for the
2860         new widget.
2861
2862 2004-09-27  Matthias Clasen  <mclasen@redhat.com>
2863
2864         * gtk/gtkfilesystemunix.c (gtk_file_folder_unix_list_children): 
2865         Emit ::finished-loading.
2866
2867 2004-09-27  Roozbeh Pournader  <roozbeh@farsiweb.info>
2868  
2869         * configure.in: Added Iranian Azerbaijani (az_IR) to ALL_LINUGAS.
2870
2871 2004-09-27  Matthias Clasen  <mclasen@redhat.com>
2872
2873         * gtk/gtktreeview.c (gtk_tree_view_append_column): Fix typo in
2874         docs.  (#153811, Billy Biggs)
2875
2876         * gtk/gtkpathbar.h (struct _GtkPathBar): Only need a bit for
2877         need_timer.
2878
2879 2004-09-26  Matthias Clasen  <mclasen@redhat.com>
2880
2881         * gtk/gtknotebook.c (gtk_notebook_class_init): Add a missing _
2882         to the name of the has_secondary_backward_stepper property.
2883         Noticed by Michèle Garoche.
2884
2885 Sun Sep 26 02:06:43 2004  Jonathan Blandford  <jrb@gnome.org>
2886
2887         * gtk/gtkpathbar.h (struct _GtkPathBar): add missing structures.
2888
2889 2004-09-26  Matthias Clasen  <mclasen@redhat.com>
2890
2891         * gtk/gtkpathbar.c (gtk_path_bar_check_parent_path): Scroll
2892         to make the current folder visible.  (#152921)
2893
2894         * gtk/gtkbutton.c: Revert the button state to !button_down,
2895         if we're missing the release event due to grab shadowing
2896         or insensitivation.
2897
2898         * gtk/gtkpathbar.c: Make the slider buttons scroll.
2899
2900         * gtk/gtkfilechooserdefault.c (shortcuts_remove_rows): Remove 
2901         debug spew.
2902         (bookmarks_check_remove_sensitivity): Don't free an uninitialized
2903         pointer.
2904
2905         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): 
2906         cursor_pos is in characters, not bytes.  (#153332, Owen Taylor)
2907
2908 2004-09-25  Robert Ögren  <gtk@roboros.com>
2909
2910         * gdk/win32/gdkinput-win32.c (gdk_input_wintab_init): Set
2911         lcSysOrgX and lcSysOrgY from device instead of hardcoding to 0,
2912         a further fix for bug #145467.
2913
2914 2004-09-25  Matthias Clasen  <mclasen@redhat.com>
2915
2916         * gtk/gtktextiter.c (inside_word_func): Don't access 
2917         attr[-1].  (#153628, Padraig O'Briain)
2918
2919 2004-09-23  Matthias Clasen  <mclasen@redhat.com>
2920
2921         * gtk/gtkfilechooserdefault.c: Add some tooltips.
2922
2923 2004-09-22  Matthias Clasen  <mclasen@redhat.com>
2924
2925         * gtk/gtkrange.c (gtk_range_map, gtk_range_unmap): 
2926         * gtk/gtkbutton.c (gtk_button_map, gtk_button_unmap): Remove
2927         unnecessary g_return_if_fail()s from virtual functions.  (#153469,
2928         (Tristan Van Berkom) 
2929
2930         * gtk/gtkaboutdialog.c (gtk_about_dialog_finalize): Don't leak
2931         cursors.  (#153468, Christian Persch)
2932
2933         * gtk/gtktreeview.c (gtk_tree_view_key_press): Don't leak old_text.
2934         (#153467, Christian Persch)
2935
2936         * gtk/gtkfilechooserdefault.c (selection_check_foreach_cb): Don't use
2937         bitops on booleans.
2938         (gtk_file_chooser_default_should_respond): Make it easier to 
2939         select folders in SELECT_FOLDER mode.
2940
2941 Wed Sep 22 00:54:34 2004  Matthias Clasen  <mclasen@redhat.com>
2942
2943         * demos/gtk-demo/pixbufs.c (do_pixbufs): Don't leak the frame
2944         pixbuf.
2945
2946 Tue Sep 21 16:55:38 2004  Manish Singh  <yosh@gimp.org>
2947
2948         * tests/testtreemodel.c: #include <config.h> for HAVE_MALLINFO define,
2949         other minor cleanups.
2950
2951 Tue Sep 21 16:27:19 2004  Manish Singh  <yosh@gimp.org>
2952
2953         * gdk/gdk.c: remove now unused arg variables.
2954
2955         * gdk/gdkinternals.h: declare _gdk_windowing_init ().
2956
2957         * gtk/gtkmain.c (do_pre_parse_initialization): call gdk_parse_args ()
2958         here instead of gdk_pre_parse_libgtk_only (). Should fix #153082.
2959
2960 2004-09-21  Matthias Clasen  <mclasen@redhat.com>
2961
2962         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_should_respond): 
2963         Don't assert that current_focus != NULL, just return FALSE.
2964
2965         * gtk/gtkpathbar.c (gtk_path_bar_size_request): Give the path
2966         bar arrows some more space.
2967
2968         * configure.in: Check for mallinfo.
2969
2970         * tests/testtreemodel.c: Only include malloc.h if HAVE_MALLINFO
2971         is defined.  (#153168, Darren Creutz)
2972
2973         * gtk/gtkactiongroup.c: Fix typos in signal docs.  (#153224,
2974         John Finlay)
2975
2976 Mon Sep 20 19:44:58 2004  Matthias Clasen  <mclasen@redhat.com>
2977
2978         * gtk/gtkfilechooserdefault.c (shortcuts_activate_iter): Don't
2979         return FALSE from a void function.  (#153185, Joel Fredrikson)
2980
2981 2004-09-20  Matthias Clasen  <mclasen@redhat.com>
2982
2983         * gtk/gtkbutton.c (gtk_button_class_init): Add a boolean ::displace-focus
2984         style property and apply child displacement to the focus rectangle 
2985         if it is TRUE.  (#141170, Soeren Sandmann)
2986
2987 Sun Sep 19 23:56:18 2004  Søren Sandmann  <sandmann@redhat.com>
2988
2989         * gtk/gtkmenu.c (MENU_SCROLL_TIMEOUT2): Change from 50 to 20 to
2990         make the menus scroll faster.
2991
2992 2004-09-19  Matthias Clasen  <mclasen@redhat.com>
2993
2994         * configure.in: Bump version
2995
2996         * === Released 2.5.3 ===
2997
2998 2004-09-18  Matthias Clasen  <mclasen@redhat.com>
2999
3000         Make GtkFileChooserButton activatable via mnemonics.
3001         (#152925, Dennis Cranston, patch by James M. Cape)
3002
3003         * gtk/gtkfilechooserbutton.c: Add a ::mnemonic-activate signal
3004         and a suitable default handler.
3005
3006         * tests/testfilechooserbutton.c: Add a mnemonic.
3007
3008 2004-09-18  Matthias Clasen  <mclasen@redhat.com>
3009
3010         Fix win32 build errors.  (#153032, #153028, Robert Ögren)
3011
3012         * gdk/win32/gdkmain-win32.c: Make it compile.  
3013
3014         * gtk/gtkmain.c: Include glib.h.  
3015
3016 2004-09-18  Federico Mena Quintero  <federico@ximian.com>
3017
3018         Merged from 2.4:
3019
3020         * gtk/gtkfilesystem.h: Removed the GTK_FILE_PATH() and
3021         GTK_IS_FILE_PATH() macros.  They are not supposed to exist, as
3022         GtkFilePath is not an object.  And they never worked, anyway.
3023
3024 2004-09-18  Marco Pesenti Gritti  <marco@gnome.org>
3025
3026         * gtk/gtkentry.c: (gtk_entry_completion_key_press):
3027
3028         Make numeric pad enter activate the selected completion
3029         entry. Fix bug 143486 reported by Edd Dumbill.
3030
3031 2004-09-17  Matthias Clasen  <mclasen@redhat.com>
3032
3033         * NEWS: Updates
3034
3035         * gtk/gtkfilechooserdefault.c (select_func): Scroll to the selected
3036         row.  (#143868, Christian Persch)
3037
3038 2004-09-17  Matthias Clasen  <mclasen@redhat.com>
3039
3040         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): Remove
3041         leftover debug code.
3042
3043         Improve the behaviour of the file chooser in save mode. Fixes bugs
3044         #151031, #151608, #151994 reported by Owen Taylor and Alexander 
3045         Larsson.
3046         
3047         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_set_property): 
3048         (location_entry_create): Propagate the action to the file 
3049         chooser entries.
3050         (gtk_file_chooser_default_should_respond): Switch folders if 
3051         the user enters a directory name in the entry and clear the entry
3052         after switching folders.
3053         (gtk_file_chooser_default_should_respond, shortcuts_row_activated_cb): 
3054         Move focus to the file list when activating a shortcut.
3055         (gtk_file_chooser_default_should_respond): Handle the case where the
3056         user clicks on "Save" after selecting a folder in the file list.
3057
3058         * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_set_property): 
3059         Propagate the action to the file chooser entries.
3060         
3061         * gtk/gtkfilechooserentry.h: 
3062         * gtk/gtkfilechooserentry.c (_gtk_file_chooser_entry_set_action): 
3063         (_gtk_file_chooser_entry_get_action): New functions to propagate
3064         the GtkFileChooserAction of the file chooser to the file chooser 
3065         entry.
3066         (check_completion_callback): If we are in save mode, only do 
3067         inline completion for directories. 
3068
3069 Fri Sep 17 11:20:03 2004  Jonathan Blandford  <jrb@gnome.org>
3070
3071         * gtk/gtklabel.c (gtk_label_set_markup): Add an example to the
3072         docs.
3073
3074 Thu Sep 16 23:20:05 2004  Matthias Clasen  <maclas@gmx.de>
3075
3076         * gtk/gtkselection.c (selection_get_text_plain): 
3077         * gdk/x11/gdkselection-x11.c (make_list): Warn if a UTF8_STRING
3078         or text/plain;charset=utf-8 roperty contains invalid 
3079         UTF-8.  (#152845, Owen Taylor)
3080
3081 2004-09-16  Matthias Clasen  <mclasen@redhat.com>
3082
3083         Fix #152760, Christian Persch:
3084         
3085         * gtk/gtkaboutdialog.c (gtk_about_dialog_finalize): Don't free
3086         private data.
3087         (gtk_about_dialog_set_translator_credits): Recommend the msg
3088         id translator-credits.
3089         (display_credits_dialog): Show translator credits if they're
3090         translated, not if they're untranslated.
3091
3092 Thu Sep 16 02:07:56 2004  Jonathan Blandford  <jrb@gnome.org>
3093
3094         * docs/tools/widgets.c (create_icon_view): load images at normal
3095         size.
3096
3097         * docs/reference/gtk/images/*png: Update shots.
3098
3099 Thu Sep 16 00:33:11 2004  Jonathan Blandford  <jrb@gnome.org>
3100
3101         * docs/tools/widgets.c (new_widget_info): Add constrained sizing
3102         to the widgets.  This gives us all images running the same size,
3103         which will make the table layout look better.
3104
3105 2004-09-15  Tor Lillqvist  <tml@iki.fi>
3106
3107         * gdk/win32/gdkwindow-win32.c (gdk_window_get_frame_extents):
3108         Remove bogus code that tried to do what the X11 backend does in
3109         its version of this function. There are no "frame windows" (for
3110         toplevel window decoration) on Windows. The desktop ("root")
3111         window is not the parent of a toplevel window. (#152481)
3112
3113 2004-09-15  Matthias Clasen  <mclasen@redhat.com>
3114
3115         * NEWS: Update.
3116
3117 Wed Sep 15 00:57:37 2004  Matthias Clasen  <maclas@gmx.de>
3118
3119         * docs/tools/widgets.c: Add accel label, file button
3120         and icon view.
3121
3122 Tue Sep 14 22:01:49 2004  Matthias Clasen  <maclas@gmx.de>
3123
3124         * configure.in: New option --disable-visibility to disable
3125         the use of ELF visibility attributes for PLT reduction.
3126
3127         * gtk/makegtkalias.pl: 
3128         * gdk/makegdkalias.pl: Respect the DISABLE_VISIBILITY
3129         define.
3130
3131 Tue Sep 14 23:20:56 2004  Søren Sandmann  <sandmann@redhat.com>
3132
3133         * gtk/gtkaction.c (connect_proxy): Call
3134         gtk_tool_item_rebuild_menu().
3135
3136         * gtk/gtktoolitem.c (gtk_tool_item_class_init): Update
3137         documentation for GtkToolItem::create_menu_proxy.
3138
3139         * gtk/gtktoolitem.c (gtk_tool_item_rebuild_menu): New
3140         API to make the toolbar update itself when the proxy menu item
3141         for a tool item changes.
3142
3143         * gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): Call
3144         gtk_tool_item_rebuild_menu here()
3145
3146         * gtk/gtktoolbutton.c (gtk_tool_button_construct_contents):
3147         Remove redundant check for need_label.
3148
3149 2004-09-14  Matthias Clasen  <mclasen@redhat.com>
3150
3151         * gtk/gtkmain.c (do_post_parse_initialization): Remove an unused 
3152         variable, spotted by Morten Welinder.
3153
3154         * gtk/queryimmodules.c (escape_string): Copy code from queryloaders.c
3155         which turns backslashes in slashes on win32.  (#152608, Kazuki IWAMOTO)
3156
3157         * gtk/gtktreeview.c (gtk_tree_view_focus_to_cursor): Set the cursor
3158         to the first selected row instead of always to the first row if there
3159         is no cursor.  (#143270, Jean Bréfort)
3160
3161         * tests/testfilechooser.c (main): Fix a few typos.
3162
3163 2004-09-13  Matthias Clasen  <mclasen@redhat.com>
3164
3165         * gtk/gtkexpander.c: 
3166         * gtk/gtktreeview.c: Change the default expander size to 12 to compensate 
3167         for the recent change to gtk_default_draw_expander().
3168
3169         * gtk/gtkstyle.c (gtk_default_draw_expander): Use a linewidth of one
3170         for expander sizes up to 16
3171
3172         * gtk/gtkentrycompletion.c (gtk_entry_completion_get_model): Resize the
3173         popup if the model is replaced.  (#152333)
3174
3175 Mon Sep 13 09:11:53 2004  Manish Singh  <yosh@gimp.org>
3176
3177         * gtk/gtkrange.c: fix gtk_range_real_change_value args. Addresses part
3178         of #152518.
3179
3180 2004-09-13  Matthias Clasen  <mclasen@redhat.com>
3181
3182         Fix some problems reported by Morten Welinder:
3183         
3184         * gtk/gtkfilesystem.c: Include gtkmodules.h, not gtkmain.h, since
3185         the modules stuff moved.
3186
3187         * gtk/gtkmain.c (gtk_arg_no_debug_cb): Add a missing return
3188
3189         * gtk/gtksettings.c: Add missing include. 
3190         (settings_update_modules): Remove an unused variable.
3191
3192 2004-09-13  Matthias Clasen  <mclasen@redhat.com>
3193
3194         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
3195         Improve positioning of entry completion popup.
3196
3197 2004-09-09  Matthias Clasen  <mclasen@redhat.com>
3198
3199         * gtk/makegtkalias.pl: 
3200         * gdk/makegdkalias.pl: Use the short prefix "IA__" for 
3201         aliases instead of the long suffix "__internal_alias". 
3202
3203         * tests/testfilechooser.c (main): Update sensitivity of the "Select all"
3204         button.
3205
3206 Wed Sep  8 18:38:08 2004  Soeren Sandmann  <sandmann@redhat.com>
3207
3208         Make dropping of expandable items look nicer.
3209         
3210         * gtk/gtktoolbar.c (gtk_toolbar_set_drop_highlight_item): Make
3211         placeholder expand if highlight item is expanding.
3212
3213         * gtk/gtktoolbar.c (toolbar_content_set_expand): New function.
3214
3215         * gtk/gtktoolbar.c (toolbar_content_get_expand): Return TRUE only
3216         if the item is not disappering.
3217
3218 2004-09-07  Matthias Clasen  <mclasen@redhat.com>
3219
3220         * gtk/gtkuimanager.c (gtk_ui_manager_add_ui): Use the proper node type
3221         for placeholders in toolbars.  (#151963, Olivier Andrieu)
3222
3223         * gtk/gtkstyle.c (gtk_default_draw_expander): Draw expanders a bit 
3224         better.
3225
3226 Sun Sep  5 17:14:16 2004  Matthias Clasen  <maclas@gmx.de>
3227
3228         * gtk/gtkmain.c: 
3229         * gdk/gdk.c: 
3230         * gdk/x11/gdkmain-x11.c: 
3231         * gdk/win32/gdkmain-win32.c: Add descriptions for the 
3232         commandline arguments. The actual descriptions are mostly 
3233         taken from libbonoboui, so translators should be able to 
3234         copy existing translations from there.
3235
3236 2004-09-05  Anders Carlsson  <andersca@gnome.org>
3237
3238         * gdk/gdk.symbols:
3239         * gtk/gtk.symbols:
3240         Add new functions
3241
3242 2004-09-05  Anders Carlsson  <andersca@gnome.org>
3243
3244         * gdk/gdk.c: (gdk_arg_class_cb), (gdk_arg_name_cb),
3245         (gdk_add_option_entries_libgtk_only), (gdk_pre_parse_libgtk_only),
3246         (gdk_parse_args):
3247         * gdk/gdk.h:
3248         * gdk/gdkinternals.h:
3249         * gdk/linux-fb/gdkmain-fb.c: (_gdk_windowing_init):
3250         * gdk/win32/gdkmain-win32.c: (_gdk_windowing_init):
3251         * gdk/x11/gdkdisplay-x11.c: (gdk_display_open):
3252         * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init):
3253         * gtk/gtkmain.c: (gtk_arg_debug_cb), (gtk_arg_no_debug_cb),
3254         (gtk_arg_module_cb), (gtk_arg_warnings_cb),
3255         (do_pre_parse_initialization), (do_post_parse_initialization),
3256         (pre_parse_hook), (post_parse_hook), (gtk_get_option_group),
3257         (gtk_init_with_args), (gtk_parse_args):
3258         * gtk/gtkmain.h:
3259         Make gtk argument parsing use goption. Add gtk_get_option_group and
3260         gtk_init_with_args. 
3261         
3262         * tests/testtreemodel.c: (main):
3263         Use gtk_init_with_args.
3264         
3265 Sun Sep  5 01:04:01 2004  Matthias Clasen  <maclas@gmx.de>
3266
3267         Allow sorting of tree models to be turned off 
3268         again.  (#151139, Torsten Schoenfeld)
3269         
3270         * gtk/gtktreesortable.h: 
3271         Add GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID.
3272
3273         * gtk/gtktreestore.c (gtk_tree_store_sort): 
3274         * gtk/gtkliststore.c (gtk_list_store_sort): Don't sort if
3275         the list store is not sorted.
3276
3277 Sat Sep  4 23:37:56 2004  Matthias Clasen  <maclas@gmx.de>
3278
3279         * configure.in: Fix the Solaris Xinerama checks.  (#151754)
3280
3281 Sat Sep  4 22:45:49 2004  Matthias Clasen  <maclas@gmx.de>
3282
3283         * gtk/gtkentry.c (gtk_entry_backspace): Don't refuse to delete
3284         text in passwords.  (#151723, Owen Taylor)
3285
3286 Sat Sep  4 16:51:00 2004  Søren Sandmann  <sandmann@redhat.com>
3287
3288         * gdk/x11/gdkevents-x11.c (gdk_event_prepare): Revert accidental
3289         change from Aug 02 that removed a flush of the X connection from
3290         gdk_event_prepare() causing applications to get stuck. (#151732,
3291         Richard Hoelscher).
3292
3293 Fri Sep  3 22:45:03 2004  Matthias Clasen  <maclas@gmx.de>
3294
3295         * gtk/gtkuimanager.c (print_node): Don't print out attributes
3296         for the <ui> root node.  (#151752, Lorenzo Gil Sánchez)
3297
3298 Sat Sep  4 02:38:57 2004  Søren Sandmann  <sandmann@redhat.com>
3299
3300         * gtk/gtktoolbar.c (position): Accelerate the animation when it
3301         has been running for a while. (#143647).
3302
3303 2004-09-03  Tor Lillqvist  <tml@iki.fi>
3304
3305         * gtk-zip.sh.in: List the three theme gtkrc files separately, zip
3306         doesn't do anything if one of the files on its command line
3307         doesn't exist.
3308
3309         Handle changes of screen resolution on Win32. (#151581, reported by
3310         Arjohn Kampman)
3311         
3312         * gdk/win32/gdkwindow-win32.c (_gdk_windowing_window_init,
3313         _gdk_root_window_size_init): Factor out setting the root window's
3314         size (as the size of the union of all monitors) to a new function.
3315
3316         * gdk/win32/gdkdisplay-win32.c (gdk_display_open,
3317         _gdk_monitor_init): Factor out the monitor query to a new
3318         function.
3319
3320         * gdk/win32/gdkprivate-win32.h: Declare above new functions.
3321
3322         * gdk/win32/gdkevents-win32.c (gdk_event_translate,
3323         handle_display_change): Handle WM_DISPLAYCHANGE by calling the
3324         above two functions, and emitting the "size_changed" signal on our
3325         (only) GdkScreen.
3326
3327 2004-09-01  Matthias Clasen  <mclasen@redhat.com>
3328
3329         * gtk/gtkcombobox.c (gtk_combo_box_get_popup_accessible): 
3330         Document the return value.
3331
3332 2004-09-01  Matthias Clasen  <mclasen@redhat.com>
3333
3334         Make it possible to specify additional modules to load
3335         via a setting.  (#117236, Alex Graveley)
3336         
3337         * gtk/gtkmodules.h: 
3338         * gtk/gtkmodules.c: New files which contain the module
3339         handling code which was previously in gtkmain.[hc]. 
3340         Additionally, the code now looks for the gtk-modules 
3341         setting, which can specify additional modules to load.
3342
3343         * gtk/gtkmain.c: 
3344         * gtk/gtkmain.h: Remove all the module handling code.
3345
3346         * gtk/gtkdebug.h: Add a debug flag for modules.
3347
3348         * gtk/gtk.h: Include gtkmodules.h
3349
3350         * gtk/Makefile.am (gtk_public_h_sources): Add gtkmodules.h
3351         (gtk_c_sources): Add gtkmodules.c
3352
3353         * gtk/gtksettings.c: Add the gtk-modules setting.
3354
3355         * gdk/x11/gdkevents-x11.c: Add the Gtk/Modules XSetting.
3356
3357 Wed Sep  1 19:11:44 2004  Søren Sandmann  <sandmann@redhat.com>
3358
3359         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Make sure
3360         children of the toolbar are given positive dimensions. (149540,
3361         Felipe Heidrich).
3362
3363 2004-09-01  Matthias Clasen  <mclasen@redhat.com>
3364
3365         * gtk/gtkfilesystemunix.c: 
3366         * gtk/gtkfilechooserbutton.c: Protect the unistd.h include
3367         by HAVE_UNISTD_H.
3368
3369 Wed Sep  1 02:38:48 2004  Matthias Clasen  <maclas@gmx.de>
3370
3371         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): Make
3372         accel labels ellipsize correctly.  (#151559, Christian Persch)
3373
3374 Wed Sep  1 00:55:56 2004  Matthias Clasen  <maclas@gmx.de>
3375
3376         * gtk/gtkimage.c (gtk_image_clear): Don't leak the iter
3377         of a running animation.  (#151542)
3378
3379 Tue Aug 31 23:40:29 2004  Matthias Clasen  <maclas@gmx.de>
3380
3381         * gdk/win32/gdkproperty-win32.c (gdk_screen_get_setting): Make
3382         "ms-windows" the default theme on Win32.  
3383
3384 Tue Aug 31 23:24:49 2004  Matthias Clasen  <maclas@gmx.de>
3385
3386         * gtk/gtkcalendar.c (gtk_calendar_main_button): Only start  
3387         a drag if the left button is pressed.  (#151490, Frederic Croszat)
3388
3389 Tue Aug 31 23:20:58 2004  Matthias Clasen  <maclas@gmx.de>
3390
3391         * gdk/x11/gdkdnd-x11.c (gdk_drop_finish): Remove debug spew.
3392
3393 Tue Aug 31 17:07:41 2004  Jonathan Blandford  <jrb@redhat.com>
3394
3395         * gtk/gtktreeviewcolumn.c
3396         (gtk_tree_view_column_cell_process_action): constrain cell area to
3397         passed in cell_area, #147867
3398
3399         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_size): if
3400         ellipsizing, get_size is only 3 chars wide.
3401
3402         * docs/tree-column-sizing.png: Add Matthias's excellent image.
3403
3404 2004-08-28  Robert Ögren  <gtk@roboros.com>
3405
3406         On Win32, do not produce tablet motion or button events while a
3407         window is being moved or resized. (#151090, reported by Shaneyfelt)
3408
3409         * gdk/win32/gdkprivate-win32.h
3410         * gdk/win32/gdkglobals-win32.c
3411         * gdk/win32/gdkevents-win32.c: Rename the variable resizing to
3412         _sizemove_in_progress and make it extern.
3413
3414         * gdk/win32/gdkinput-win32.c (_gdk_input_other_event): Ignore
3415         motion and button events if _sizemove_in_progress is true.
3416
3417 2004-08-30  Tor Lillqvist  <tml@iki.fi>
3418
3419         Make the ms-windows theme engine build with mingw.
3420
3421         * configure.in: Expand also modules/engines/ms-windows/Theme/
3422         Makefile and .../Theme/gtk-2.0/Makefile.
3423
3424         * modules/engines/ms-windows/Makefile.am: Adapt for building
3425         inside the GTK sources.
3426
3427         * modules/engines/ms-windows/*.c: Use "foo.h" style includes for
3428         GTK and GDK headers. Use correct path for gdkwin32.h header.
3429
3430         * modules/engines/ms-windows/msw_style.c: Don't use deprecated GDK
3431         API.
3432
3433         * modules/engines/ms-windows/xp_theme_defs.h
3434         * modules/engines/ms-windows/xp_theme.c: Move definitions of TMT_*
3435         to xp_theme.c, as they are neither in mingw's nor Platform
3436         SDK's tmschema.h.
3437
3438         * modules/engines/ms-windows/xp_theme.c: Define _WIN32_WINNT as
3439         0x0501 to get the necesssary stuff from mingw's uxtheme.h.
3440
3441 2004-08-30  Matthias Clasen  <mclasen@redhat.com>
3442
3443         Integrate the ms-windows theme engine (better known as Wimp)
3444         into the autotools build. Wimp (http://gtk-wimp.sourceforge.net/) 
3445         was written by Raymond Penners and Dom Lachowicz. The Wimp 0.6.2
3446         sources have been added to the GTK+ source tree in 
3447         modules/engines/ms-windows, and there is a ChangeLog detailing 
3448         the history of Wimp. (#109615, Havoc Pennington)
3449         
3450         * configure.in: Generate modules/engines/Makefile and 
3451         modules/engines/ms-windows/Makefile.
3452
3453         * modules/Makefile.am (SUBDIRS): Add engines.
3454
3455         * modules/engines/Makefile.am: Compile ms-windows for win32.
3456
3457 2004-08-30  Matthias Clasen  <mclasen@redhat.com>
3458
3459         * gtk/gtktextview.c (gtk_text_view_delete_surrounding_handler):
3460         Make it compile.
3461
3462 2004-08-27  Matthias Clasen  <mclasen@redhat.com>
3463
3464         Fix #151112, Olexiy Avramchenko:
3465         
3466         * gtk/gtktreeview.c (gtk_tree_view_search_entry_flush_timeout): 
3467         * gtk/gtkiconview.c (scroll_timeout, layout_callback) 
3468         (gtk_icon_view_item_accessible_idle_do_action): 
3469         * gtk/gtkcombobox.c (list_popup_resize_idle, popdown_idle) 
3470         (popup_idle): Protect idle callbacks and timeouts with 
3471         GDK_THREADS_ENTER/_LEAVE.
3472
3473         * gtk/gtkfilechooserbutton.c (update_dialog_idle): New function to
3474         call update_dialog() from an idle with the necessary protection.
3475
3476 Mon Aug 30 01:34:42 2004  Matthias Clasen  <maclas@gmx.de>
3477
3478         Changes to make sure input methods respect the editability
3479         of entries and text views. #114173, Noah Levitt.
3480         
3481         * gtk/gtkentry.c (popup_targets_received): Make the Input 
3482         Methods menuitem insensitive if we're not editable.
3483
3484         * gtk/gtkentry.c (gtk_entry_delete_surrounding_cb): 
3485         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): 
3486         * gtk/gtkentry.c (gtk_entry_commit_cb): Don't change anything 
3487         if we're not editable.
3488
3489         * gtk/gtkentry.c (gtk_entry_focus_out): 
3490         * gtk/gtkentry.c (gtk_entry_focus_in): Only send focus_in and
3491         focus_out to the im context if we're editable.
3492
3493         * gtk/gtkentry.c (gtk_entry_set_property): Reset the im context
3494         if the entry just became non-editable.
3495
3496         * gtk/gtktextview.c (gtk_text_view_delete_surrounding_handler): 
3497         Use gtk_text_buffer_delete_interactive() to not delete
3498         non-editable portions of text.
3499
3500 2004-08-30  Tor Lillqvist  <tml@iki.fi>
3501
3502         * modules/input/Makefile.am (im_ime_la_LIBADD): Link with -limm32.
3503
3504         * modules/input/gtkimcontextime.c: Use quotes in #includes, to
3505         find headers when building inside GTK+ sources.
3506
3507 2004-08-27  Tor Lillqvist  <tml@iki.fi>
3508
3509         * gdk/win32/gdkdnd-win32.c (GdkDragContextPrivateWin32): Add
3510         drop_failed, like in the X11 backend. Nothing sets it, though.
3511         (gdk_drag_drop_succeeded): Copy from X11 backend.
3512
3513 Thu Aug 26 23:58:11 2004  Matthias Clasen  <maclas@gmx.de>
3514
3515         * gtk/gtkcombobox.c (gtk_combo_box_key_press): Don't crash
3516         if model is not set. Noted by Mariano Suarez-Alvarez.
3517
3518 Thu Aug 26 22:44:12 2004  Matthias Clasen  <maclas@gmx.de>
3519
3520         Provide information about how an adjustment change in a range 
3521         widget happened. Add a "change-value" signal which reports how 
3522         a user is interacting with the range, whether they are clicking 
3523         on a stepper or the trough, or dragging the slider.  (#133263,
3524         Thomas Fitzsimmons)
3525
3526         * gtk/gtkmarshalers.list: Add signal type BOOLEAN:ENUM,DOUBLE.
3527         * gtk/gtkrange.c (gtk_range_class_init): Add "change-value"
3528         signal.
3529         (gtk_range_internal_set_value): Rename to
3530         gtk_range_real_change_value.  Add GtkScrollType parameter.  Emit
3531         the change-value signal when the range's value changes.
3532         (update_slider_position, gtk_range_scroll_event, step_back,
3533         step_forward, page_back, page_forward, scroll_begin,
3534         scroll_end): Change gtk_range_internal_set_value to
3535         gtk_range_real_change_value.
3536         * gtk/gtkrange.h (struct _GtkRangeClass): Declare change_value
3537         function.
3538
3539 2004-08-26  Matthias Clasen  <mclasen@redhat.com>
3540
3541         * modules/input/Makefile.am: Build imime.la on Windows.
3542
3543         * modules/input/gtkimcontextime.h: 
3544         * modules/input/gtkimcontextime.c: 
3545         * modules/input/imime.c: 
3546         * modules/input/imm-extra.h: Add the IME input method for Win32
3547         written by Takuro Ashie and Kazuki IWAMOTO. The code was previously
3548         hosted at http://sourceforge.jp/projects/imime.  (#135195)
3549
3550 2004-08-26  Bill Haneman <billh@gnome.org>
3551
3552         * gtk/gtktreeview:
3553         (gtk_tree_view_move_cursor_up_down):
3554         If a multi-selection list contains only one item,
3555         select it on cursor_up or cursor_down.
3556         Fixes bug #131226.
3557         [patch from Padraig O'Briain]
3558
3559 2004-08-26  Matthias Clasen  <mclasen@redhat.com>
3560
3561         Make gdk_window_process_[all]_updates() respect 
3562         update_freeze_counter  (#144272, Soeren Sandmann)
3563         
3564         * gdk/gdkwindow.c (gdk_window_schedule_update): New function to
3565         install an idle for gdk_window_update_idle() if one isn't there
3566         already.
3567         (gdk_window_process_all_updates): 
3568         (gdk_window_process_updates): Only process the updates if the
3569         window isn't frozen.
3570         (gdk_window_invalidate_maybe_recurse): Schedule an update when
3571         necessary.
3572         (gdk_window_thaw_updates): Use gdk_window_schedule_update() instead
3573         of directly installing the idle.
3574
3575 2004-08-22  Robert Ögren  <gtk@roboros.com>
3576
3577         On Win32, make graphical tablets work on multi-monitor systems.
3578         (#145467, reported by buttknock1@ya...)
3579
3580         * gdk/win32/gdkinput-win32.c (gdk_input_translate_coordinates):
3581         Use dimensions of _gdk_parent_root as screen size.
3582         (gdk_input_get_root_relative_geometry): Get coordinates relative
3583         to GDK root window instead of Win32 coordinates.
3584         (_gdk_input_other_event): Updated accordingly.
3585
3586 Wed Aug 25 17:24:17 2004  Manish Singh  <yosh@gimp.org>
3587
3588         * gdk/x11/gdkfont-x11.c: remove unused gdk_font_charset_for_locale()
3589         function.
3590
3591         * gdk/x11/gdkinput-x11.c (_gdk_input_common_init): remove unused
3592         variables num_extensions and extensions.
3593
3594         * gtk/gtkhsv.c: remove unused gtk_hsv_get_focus_gc() function.
3595
3596 Wed Aug 25 17:14:58 2004  Manish Singh  <yosh@gimp.org>
3597
3598         * gtk/gtktreeview.c (gtk_tree_view_search_activate): initialize
3599         path so we don't potentially use an undefined pointer.
3600
3601         * gtk/gtkfilechooserdefault.c (shortcuts_list_create): add G_CALLBACK
3602         cast for tree_view_keybinding_cb.
3603
3604         * gtk/gtkfilechooserdefault.c (location_entry_create): cast to
3605         GTK_FILE_CHOOSER_ENTRY for _gtk_file_chooser_entry_set_file_part()
3606         calls.
3607
3608         * gtk/gtkcellrenderercombo.c (gtk_cell_renderer_combo_start_editing):
3609         cast to GTK_COMBO_BOX for gtk_combo_box_set_active_iter() call.
3610
3611         * gtk/gtkselection.c (selection_get_text_plain): make len a gsize,
3612         since that's what g_convert_with_fallback() expects.
3613
3614 Wed Aug 25 16:14:34 2004  Jonathan Blandford  <jrb@redhat.com>
3615
3616         * gtk/gtktreeview.c (gtk_tree_view_search_activate): activate the
3617         typeahead entry on enter.
3618
3619 2004-08-25  Matthias Clasen  <mclasen@redhat.com>
3620
3621         * gtk/gtkmenu.c (gtk_menu_attach_to_widget): Steal ATTACHED_MENUS
3622         list so its tail isn't freed when we re-set it, noticed
3623         by Hans Petter Jansson.
3624
3625         * gtk/gtksizegroup.c (gtk_size_group_add_widget): Fix
3626         a typo, noticed by Tim Janik.
3627
3628 Wed Aug 25 15:15:56 2004  Jonathan Blandford  <jrb@redhat.com>
3629
3630         * gtk/gtkpathbar.c (gtk_path_bar_size_allocate): Change the Down
3631         button to be end-justified, so that clicking on it is a stable
3632         operation.
3633
3634 Tue Aug 24 02:06:37 2004  Jonathan Blandford  <jrb@gnome.org>
3635
3636         * gtk/gtktreeview.c
3637         (gtk_tree_view_real_expand_collapse_cursor_row): Don't handle the
3638         event if we have no children.
3639
3640         * gtk/gtkfilechooserdefault.c (trap_activate_cb):
3641         (tree_view_keybinding_cb):Since GtkTreeView has a keybinding
3642          attached to '/', we need to catch keypresses before the TreeView
3643          gets them.
3644         (gtk_file_chooser_default_class_init): add '/' to be a keybinding
3645         to the C-l dialog.
3646         (location_entry_create): Clear the text to "" when loading a file.
3647         This has a much better feel than putting the currently selected
3648         in.
3649         * #include <errno.h>
3650
3651 2004-08-25  Matthias Clasen  <mclasen@redhat.com>
3652
3653         * gtk/gtkfilechooserdefault.c (check_is_folder): Use get_file_info() rather 
3654         than trying get_folder() and checking for an error directly because older 
3655         versions of the gnome-vfs backend don't return an error 
3656         immediately.  (#150852, Zack Cerza )
3657
3658 2004-08-25  Matthias Clasen  <mclasen@redhat.com>
3659
3660         * configure.in: Post-release version bump.
3661
3662         * === Released 2.5.2 ===
3663
3664         * gdk/abicheck.sh:
3665         * gtk/abicheck.sh: Make work during make distcheck.
3666         
3667         * docs/RELEASE-HOWTO: Add hint about doing make check 
3668         before make distcheck.
3669         
3670         * gtk/gtk.symbols: Add some missing symbols.
3671
3672         * gtk/gtkiconview.c: Add some missing statics.
3673
3674 2004-08-24  Matthias Clasen  <mclasen@redhat.com>
3675
3676         * NEWS: Updates for 2.5.2
3677
3678 Wed Aug 25 00:22:48 2004  Søren Sandmann  <sandmann@redhat.com>
3679
3680         * gtk/gtksequence.c: Remove debug spew
3681
3682 Wed Aug 25 00:09:07 2004  Søren Sandmann  <sandmann@redhat.com>
3683
3684         * gtk/gtkliststore.c (gtk_list_store_move_after): Fix logical
3685         errors in gtk_list_store_move_before/after(). (#150983, patch by
3686         Robert Ögren).
3687
3688 Tue Aug 24 21:46:42 2004  Søren Sandmann  <sandmann@redhat.com>
3689
3690         * gtk/gtksequence.c (_gtk_sequence_move): Just return if the
3691         parameters are identical. (#150159, Robert Ögren)
3692
3693 2004-08-24  Matthias Clasen  <mclasen@redhat.com>
3694
3695         * gtk/gtkaction.c (connect_proxy, disconnect_proxy): Handle 
3696         action_group being NULL.  (#150869,  Tommi Komulainen)
3697
3698 2004-08-24  Matthias Clasen  <mclasen@redhat.com>
3699
3700         * gdk/gdkimage.c (allocate_scratch_images): Use the correct 
3701         index variable.  (#150941, Tommi Komulainen)
3702
3703 2004-08-24  Matthias Clasen  <mclasen@redhat.com>
3704
3705         * gtk/gtktreeview.c (gtk_tree_view_node_queue_redraw): Take header
3706         height and adjustment into account.  (#136496, Pawek Salek)
3707
3708 Mon Aug 23 17:19:19 2004  Jonathan Blandford  <jrb@redhat.com>
3709
3710         * configure.in:
3711         * docs/tools/Makefile.am (clean-local): add the doc shooter to the
3712         docs dir as an uninstalled helper tool.
3713
3714 2004-08-23  Matthias Clasen  <mclasen@redhat.com>
3715
3716         * gdk/x11/gdkwindow-x11.c (show_window_internal): Make it compile.
3717
3718         * gdk/x11/gdkwindow-x11.h (struct _GdkToplevelX11): Add a 
3719         user_time field.
3720
3721         * gdk/x11/gdkwindow-x11.c (gdk_x11_window_set_user_time): Update
3722         toplevel->user_time.
3723         (show_window_internal): Update the user time when re-mapping a
3724         toplevel window.  (#150502, Elijah Newren)
3725
3726 2004-08-23  Matthias Clasen  <mclasen@redhat.com>
3727
3728         Fix #150822, reported by Christian Persch
3729         
3730         * gtk/gtklabel.c (gtk_label_ensure_layout): Set the layout width
3731         appropriately when ellipsized.
3732         (gtk_label_size_allocate): Only set the layout width if there
3733         is a layout.
3734
3735 2004-08-23  Matthias Clasen  <mclasen@redhat.com>
3736
3737         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): Support the latest
3738         EWMH additions to the _NET_ACTIVE_WINDOW client message 
3739         format.  (#150668, Elijah Newren)
3740
3741 Mon Aug 23 01:17:59 2004  Matthias Clasen  <maclas@gmx.de>
3742
3743         * gdk/gdkrgb.c (gdk_rgb_xpixel_from_rgb_internal): Set unused
3744         bits in pixel to 1s in case they are used as alpha; copying
3745         code from gdk_colormap_alloc_colors().  (#150466, Rich Wareham)
3746
3747 2004-08-22  Philip Langdale  <plangdale@vmware.com>
3748
3749         * gtk/gtkaction.c (gtk_action_disconnect_proxy): Two signals
3750         (gtk_action_sync_property and gtk_action_sync_sensitive) were
3751         not being correctly disconnected, leading to actions continuing
3752         to affect disconnected proxies. (#150607)
3753
3754 2004-08-22  Tor Lillqvist  <tml@iki.fi>
3755
3756         * gdk/win32/gdkwindow-win32.c (gdk_window_new_internal,
3757         gdk_window_new, gdk_window_set_skip_taskbar_hint): Don't show TEMP
3758         windows in the Task Manager. Implement by calling
3759         gdk_window_set_skip_taskbar_hint(TRUE) on them. (#145481, Tim
3760         Evans)
3761
3762         * gdk/win32/gdkdisplay-win32.c (enum_monitor, gdk_display_open):
3763         Report whole of (primary) monitor, including any taskbars.
3764         Excluding the taskbar area from the "root window" reported to GDK
3765         doesn't seem to be that useful although gdk/win32 had been doing it
3766         for a very long time. (#149013, see also #145467 and #148526)
3767
3768 Sun Aug 22 16:55:15 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3769
3770         * gtk/gtkexpander.c
3771         * gtk/gtkalignment.c: 
3772         * gtk/gtktexttag.c
3773         Make enums match property names. Found by a script by Tommi
3774         Komulainen.
3775
3776         * gtk/gtkpaned.c (gtk_paned_class_init): fix min/max mixup.
3777
3778 Sun Aug 22 16:09:49 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3779
3780         * gtk/gtkliststore.h (struct _GtkListStore): 
3781         * gtk/gtkliststore.c (gtk_list_store_init): 
3782         * gtk/gtkliststore.c (gtk_list_store_insert): 
3783         * gtk/gtkliststore.c (gtk_list_store_remove): 
3784         Restore length field; PyGTK and maybe others use it directly.
3785
3786 Sun Aug 22 15:46:56 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3787
3788         * gtk/gtkpaned.c (gtk_paned_class_init):
3789         s/CYCLE_HANDLE_FOCUS/CYCLE_CHILD_FOCUS/
3790
3791         * gtk/gtkfontbutton.c (gtk_font_button_class_init):
3792         s/PROP_SHOW_SIZE/PROP_SHOW_STYLE/
3793
3794         Both pointed out by Tommi Komulainen.
3795
3796 Sun Aug 22 13:44:53 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3797
3798         * gtk/gtkpaned.c (gtk_paned_class_init): Use PROP_MAX_POSITION,
3799         not PROP_MIN_POSITION for the max_position property. Fix pointed
3800         out by Tommi Komulainen.
3801
3802 Sun Aug 22 13:32:33 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3803
3804         * gtk/gtkliststore.c (gtk_list_store_insert): Normalize the
3805         position so we don't create paths with off-list
3806         indices. (#150320).
3807
3808 Sun Aug 22 12:04:59 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
3809
3810         * gtk/gtkliststore.c (gtk_list_store_sort_iter_changed): Use the
3811         correct tree path (#150289, Morten Welinder).
3812
3813 Sun Aug 22 00:08:44 2004  Matthias Clasen  <maclas@gmx.de>
3814
3815         Fix #150406, reported by Fernando San Martín Woerner, patch
3816         by Gustavo Carneiro.
3817         
3818         * gtk/gtkentrycompletion.c 
3819         (gtk_entry_completion_default_completion_func): Check that 
3820         column is of type G_TYPE_STRING before proceeding.
3821
3822 Sat Aug 21 23:52:13 2004  Matthias Clasen  <maclas@gmx.de>
3823
3824         * gtk/gtktreestore.c (gtk_tree_store_swap): Don't use an 
3825         uninitialized tree iter.  (#150414, Torsten Schoenfeld)
3826
3827 Sat Aug 21 23:29:54 2004  Matthias Clasen  <maclas@gmx.de>
3828
3829         Fix #150738, Tomislav Jonjic.
3830         
3831         * gtk/gtktoolitem.h (GTK_IS_TOOL_ITEM_CLASS): 
3832         * gtk/gtktoolbutton.h (GTK_IS_TOOL_BUTTON_CLASS): 
3833         * gtk/gtktoggleaction.h (GTK_IS_TOGGLE_ACTION_CLASS): 
3834         * gtk/gtkseparatortoolitem.h (GTK_IS_SEPARATOR_TOOL_ITEM_CLASS): 
3835         * gtk/gtkradiotoolbutton.h (GTK_IS_RADIO_TOOL_BUTTON_CLASS): 
3836         * gtk/gtkradioaction.h (GTK_IS_RADIO_ACTION_CLASS): 
3837         * gtk/gtkuimanager.h (GTK_IS_UI_MANAGER_CLASS): 
3838         * gtk/gtkaction.h (GTK_IS_ACTION_CLASS): Fix macro definitions.
3839
3840 Wed Aug 18 17:25:26 2004  Manish Singh  <yosh@gimp.org>
3841
3842         * demos/testpixbuf-save.c
3843         * demos/gtk-demo/hypertext.c: Get rid of some unnecessary casts.
3844
3845         * demos/gtk-demo/appwindow.c: Make activate_email and activate_url
3846         match the arguments for GtkAboutDialogActivateLinkFunc.
3847
3848 Wed Aug 18 16:18:00 2004  Manish Singh  <yosh@gimp.org>
3849
3850         * gtk/gtktreeview.c (gtk_tree_view_row_inserted): Initialize height
3851         from fixed_height before we do anything, so it always has a valid
3852         value.
3853
3854         * gtk/gtkfilechooserdefault.c (shortcuts_reload_icons): Fix call
3855         to gtk_tree_model_get (missing "," in param list).
3856
3857 2004-08-18  Federico Mena Quintero  <federico@ximian.com>
3858
3859         Merged from 2.4:
3860
3861         Fixes #149251:
3862
3863         * gtk/gtkfilechooserdefault.c: Renamed SHORTCUTS_COL_PATH to
3864         SHORTCUTS_COL_DATA.  Add SHORTCUTS_COL_IS_VOLUME, to determine
3865         easily whether the SHORTCUTS_COL_DATA points to a GtkFilePath or a
3866         GtkFileSystemVolume.
3867         (shortcuts_model_create): Create a boolean column for
3868         SHORTCUTS_COL_IS_VOLUME.
3869         (shortcuts_reload_icons): Simplify with the use of the
3870         SHORTCUTS_COL_IS_VOLUME column.  Don't leak the pixbuf.
3871         (shortcuts_insert_path): Add the SHORTCUTS_COL_IS_VOLUME data.
3872         (shortcuts_free_row_data): New helper function; frees the data
3873         columns for an iter.
3874         (shortcuts_remove_rows): Don't take a callback for freeing the
3875         data; free everything here instead.  Use
3876         shortcuts_free_row_data().
3877         (volume_remove_cb): Removed.
3878         (remove_bookmark_cb): Removed.
3879         (remove_row_cb): Make this a single generic function to delete
3880         rows.
3881         (shortcuts_add_volumes): Use remove_row_cb().
3882         (shortcuts_add_bookmarks): Likewise.
3883         (struct _GtkFileChooserDefault): Removed the
3884         shortcuts_current_folder_is_volume field.
3885         (shortcuts_add_current_folder): Oops, don't free the volume.
3886         (remove_current_folder_cb): Removed.
3887         (shortcut_find_position): Simplify through the use of the
3888         SHORTCUTS_COL_IS_VOLUME column.
3889         (remove_selected_bookmarks): Assert that we don't get a volume.
3890         (shortcuts_reorder): Likewise; also, plug a leak.
3891         (gtk_file_chooser_default_remove_shortcut_folder): Simplify
3892         through the use of shortcuts_remove_rows().
3893         (gtk_file_chooser_default_list_shortcut_folders): Assert that we
3894         don't get a volume.
3895         (shortcuts_activate_iter): Simplify.
3896         (home_folder_handler): Simplify by using
3897         shortcuts_activate_iter().
3898         (shortcuts_free): New function; frees all the data columns.
3899         (gtk_file_chooser_default_finalize): Unref the
3900         shortcuts_filter_model and the shortcuts model data first.
3901
3902 Wed Aug 18 08:31:17 2004  Manish Singh  <yosh@gimp.org>
3903
3904         * gtk/gtkiconview.c: Applied patch from Olivier Andrieu to fix
3905         bug #150440.
3906
3907         * gtk/gtkicontheme.c (gtk_icon_theme_init): xdg_data_dirs should
3908         match constness attributes of g_get_system_data_dirs ().
3909
3910 2004-08-17  Matthias Clasen  <mclasen@redhat.com>
3911
3912         * gtk/gtkicontheme.c (gtk_icon_theme_init): Look up icon themes in the 
3913         directories specified in the icon theme spec: $HOME/.icons, 
3914         $XDG_DATA_DIRS/icons, /usr/share/pixmaps. Note that GTK+ used to also look 
3915         in $GTK_DATA_DIR/icons, $GTK_DATA_DIR/pixmaps and /usr/share/icons.  (#148694)
3916         
3917
3918         * gtk/gtkframe.c (gtk_frame_paint): Take widget->state into account when
3919         painting the shadows.  (#150351, Tim Janik)
3920
3921 2004-08-17  Matthias Clasen  <mclasen@redhat.com>
3922
3923         * gtk/abicheck.sh: No need for INCLUDE_INTERNAL_SYMBOLS anymore.
3924
3925         * gdk/gdk.symbols: Don't use #if defined().
3926
3927         * gdk/Makefile.am (gdkalias.h): 
3928         * gtk/Makefile.am (gtkalias.h): Don't use cpp to filter gtk.symbols.
3929
3930         * gdk/makegdkalias.pl: 
3931         * gtk/makegtkalias.pl: Move the #ifdef processing into the perl script, and
3932         keep the #ifdefs which differentiate between platforms.
3933
3934         * gtk/Makefile.am (gtk_private_h_sources): Remove gtkinternals.h, it is no 
3935         longer needed.
3936
3937 2004-08-17  Matthias Clasen  <mclasen@redhat.com>
3938
3939         * tests/testfilechooserbutton.c: Use g_message() throughout, add RTL envar for
3940         rtl testing.
3941
3942         * gtk/gtkfilechooserbutton.c: Get rid of HAVE_CONFIG_H.
3943         (gtk_file_chooser_button_init): Use gtk_drag_dest_add_text_targets().
3944         (gtk_file_chooser_button_drag_data_received): Use gtk_selection_data_get_text().
3945         (gtk_file_chooser_button_set_dialog): _gtk_file_chooser_entry_set_base_folder()
3946         seems to expect a path, not an uri.
3947         (update_dialog): Handle g_filename_from_uri() returning NULL, don't free
3948         info if it is NULL. 
3949
3950         * gtk/gtkfilechooserbutton.h: Minor stylistic changes.
3951
3952 2004-08-17  Matthias Clasen  <mclasen@redhat.com>
3953
3954         * gtk/gtkfilechooserbutton.[hc]: New widget to go along with 
3955         GtkFontButton and GtkColorButton for use in preference dialogs.
3956         Replaces GnomeFileEntry.  (#148108, James M. Cape)
3957
3958         * gtk/gtk.h: Include gtkfilechooserbutton.h
3959
3960         * gtk/Makefile.am (gtk_public_h_sources): Add gtkfilechooserbutton.h
3961         (gtk_c_sources): Add gtkfilechooserbutton.c
3962
3963         * gtk/gtk.symbols: Add the GtkFileChooserButton symbols.
3964
3965         * gtk/gtkfilechooserutils.[hc]: Make the delegate quark available. 
3966
3967         * gtk/gtkfilechooserentry.[hc] (_gtk_file_chooser_entry_new): Allow
3968         to suppress tab-eating using the new eat_tabs argument. Adjust all
3969         callers.
3970
3971         * tests/testfilechooserbutton.c: Test for GtkFileChooserButton.
3972
3973         * tests/Makefile.am (noinst_PROGRAMS): Add testfilechooserbutton
3974
3975 2004-08-16  Matthias Clasen  <mclasen@redhat.com>
3976
3977         * gtk/gtkwidget.c (gtk_widget_render_icon): Doc update.
3978
3979         * gtk/gtkiconfactory.c (render_icon_name_pixbuf): When the size is -1,
3980         use the available size closest to 48.  (#150147)
3981
3982         * gtk/gtkicontheme.c (gtk_icon_theme_get_icon_sizes): Actually return
3983         a pointer to the beginning of the sizes array, not the end.
3984
3985 2004-08-16  Morten Welinder  <terra@gnome.org>
3986
3987         * tests/testtreemodel.c (test_run): Comment out mallinfo stuff.
3988         Fix g_print %-strings.
3989
3990         * gtk/gtksequence.c (_gtk_sequence_set): Fix C99ism.
3991
3992 2004-08-16  Christian Rose  <menthos@menthos.com>
3993
3994         * configure.in: Added "bs" to ALL_LINGUAS.
3995
3996 Mon Aug 16 01:35:25 2004  Matthias Clasen  <maclas@gmx.de>
3997
3998         
3999         * gtk/gtkcombobox.[hc]: Add a ::focus-on-click property and
4000         change the default behaviour to focus on click.
4001
4002         * gtk/gtkbutton.c (gtk_button_set_focus_on_click): Typo fix.
4003
4004 Mon Aug 16 01:03:08 2004  Matthias Clasen  <maclas@gmx.de>
4005
4006         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset): 
4007         (gtk_text_iter_set_visible_line_index): Count from the 
4008         beginning of the line, not from the current position.  (#150101,
4009         Torsten Schoenfeld)
4010
4011 2004-08-15  Tor Lillqvist  <tml@iki.fi>
4012
4013         * gtk-zip.sh.in: Fix typo. The gtk.immodules file had never been
4014         included in my zipfiles...!
4015
4016         * gtk/gtkfilesystemwin32.c (extract_icon): Improve handling of
4017         icon alpha channel (on Windows XP) and mask (older Windows
4018         versions). (#148641, Tim Evans)
4019
4020 Sun Aug 15 02:31:55 2004  Matthias Clasen  <maclas@gmx.de>
4021
4022         * gtk/gtkfilesystemunix.c (get_icon_type_from_stat): Make 
4023         the use of S_ISFIFO and S_ISSOCK conditional.  (#150146,
4024         Gustavo Carneiro)
4025
4026 2004-08-14  Tor Lillqvist  <tml@iki.fi>
4027
4028         * gtk/gtkfilechooserdefault.c (shortcuts_append_home,
4029         shortcuts_append_desktop, set_local_only)
4030         * gtk/gtkfilesystemwin32.c (gtk_file_system_win32_render_icon)
4031         * gtk/gtkpathbar.c (find_button_type, _gtk_path_bar_set_file_system): 
4032         Guard against g_get_home_dir() returning NULL. (#150007)
4033
4034 Sat Aug 14 17:56:33 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4035
4036         * gtk/gtkentry.c (gtk_entry_get_pixel_ranges): New function. 
4037
4038         * gtk/gtkentry.c (in_selection): New function using
4039         gtk_entry_get_pixel_ranges() to determine whether a click is in
4040         the selection. Improve entry behavior wrt. dragging and
4041         selecting. Bug #143249.
4042
4043 Sat Aug 14 17:53:46 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4044
4045         * configure.in: Require glib 2.5.2
4046         
4047         * gtk/gtksequence.[ch]: New internal data structure.
4048
4049         * gtk/gtkliststore.[hc]: Reimplement in terms of new data
4050         structure
4051         
4052         * tests/Makefile.am (testtreemodel_SOURCES):
4053         * tests/testtreemodel.c: New test program written by Matthias.
4054
4055 2004-08-13  Matthias Clasen  <mclasen@redhat.com>
4056
4057         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_style_set): 
4058         Don't install the settings_notify_cb from here, since it
4059         may be called before the first screen_changed signal, 
4060         confusing the logic in gtk_file_chooser_screen_changed().
4061         (#148803, Abel Daniel)
4062
4063         * gtk/gtkcombobox.c: Make re-sensitivation work
4064         in menu mode.
4065
4066         * gtk/gtkaction.c (gtk_action_new): Fix the docs.
4067
4068 Fri Aug 13 01:06:56 2004  Matthias Clasen  <maclas@gmx.de>
4069
4070         * gtk/gtktreeview.c (gtk_tree_view_row_inserted): 
4071         Make fixed height mode handle insertions.  (#135955, 
4072         Michael Vogt, testcase by Tim-Philipp Müller, fix by
4073         Pawel Salek)
4074
4075 Fri Aug 13 00:40:18 2004  Matthias Clasen  <maclas@gmx.de>
4076
4077         * gtk/gtkhandlebox.c: Add missing include.
4078
4079 Thu Aug 12 23:52:12 2004  Matthias Clasen  <maclas@gmx.de>
4080
4081         Fix #149547, Markus Lausser:
4082         
4083         * gtk/gtkcombobox.c (gtk_combo_box_size_allocate): 
4084         * gtk/gtkcombobox.c (gtk_combo_box_size_request): Don't 
4085         crash if size_request or size_allocate are called early.
4086
4087         * gtk/gtkcombobox.c (gtk_combo_box_size_allocate): Protect
4088         against being allocated too small.
4089
4090 Thu Aug 12 21:02:57 2004  Matthias Clasen  <maclas@gmx.de>
4091
4092         * demos/gtk-demo/appwindow.c (about_cb): Adjust to GtkAboutDialog 
4093         API changes.
4094
4095         * gtk/gtkaboutdialog.h: 
4096         * gtk/gtkaboutdialog.c (gtk_about_dialog_set_email_hook): 
4097         (gtk_about_dialog_set_url_hook): Add callback data and destroy notify 
4098         for language bindings.  (#149999, Olivier Andrieu)
4099
4100 2004-08-12  Matthias Clasen  <mclasen@redhat.com>
4101
4102         * gtk/gtkfilesystem.c: Underscore-prefix gtk_file_system_module_get_type().
4103         * gtk/gtkfilechooserdefault.c: Underscore-prefix shortcuts_model_filter_get_type().
4104
4105         * gtk/gtkimmodule.c: Make gtk_im_module_get_type() static.
4106         * gtk/gtk.symbols:
4107         * gtk/gtkinternals.h: Remove the no longer exported get_type functions.
4108
4109 Thu Aug 12 01:35:46 2004  Matthias Clasen  <maclas@gmx.de>
4110
4111         * gtk/gtkiconview.c: Make the icon view accessible by
4112         implementing the necessary ATK interfaces.  (#149728,
4113         Padraig O'Briain)
4114
4115 Thu Aug 12 00:02:29 2004  Matthias Clasen  <maclas@gmx.de
4116
4117         * gtk/gtkaction.c (gtk_action_new): Link to information about
4118         allowed action names.  (#149620, David Malcolm)
4119
4120 Wed Aug 11 23:14:25 2004  Matthias Clasen  <maclas@gmx.de>
4121
4122         * gtk/gtk.symbols: 
4123         * gtk/gtkaction.h:
4124         * gtk/gtkaction.c (gtk_action_set_sensitive): 
4125         (gtk_action_set_visible): Add setters for the ::sensitive
4126         and ::visible properties of GtkAction.  (#149622, David Malcolm)
4127
4128 2004-08-11  Federico Mena Quintero  <federico@ximian.com>
4129
4130         Fix #149422, #143457:
4131
4132         * gtk/gtkfilechooserdefault.c
4133         (gtk_file_chooser_default_should_respond): Rewrite to take the
4134         current focus into account, the contents of the save entry, and
4135         the last focus for the shortcuts list.
4136         (switch_to_selected_folder): We don't need an assertion on the
4137         action here.
4138
4139 Wed Aug 11 20:56:00 2004  Matthias Clasen  <maclas@gmx.de>
4140
4141         * gtk/gtkinternals.h: 
4142         * gtk/gtk.symbols: Add shortcuts_model_filter_get_type.
4143
4144         * gtk/abicheck.sh: Check all symbols.
4145
4146 Wed Aug 11 19:20:34 2004  Matthias Clasen  <maclas@gmx.de>
4147
4148         * gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row): 
4149         Don't start a drag if the treeview is only a 
4150         drag destination.  (#149836, Pawel Salek)
4151
4152 2004-08-11  Matthias Clasen  <mclasen@redhat.com>
4153
4154         * gtk/gtktreedatalist.[hc]: 
4155         * gtk/gtkliststore.c:
4156         * gtk/gtktreestore.c: Underscore-prefix 
4157         gtk_tree_data_list_compare_func. 
4158
4159         * gtk/gtk.symbols: Remove gtk_tree_data_list_compare_func.
4160
4161         * gtk/makegtkalias.pl: No need to include gtktreedatalist.h 
4162         any more.
4163
4164 2004-08-10  Matthias Clasen  <mclasen@redhat.com>
4165
4166         * gdk/Makefile.am: 
4167         * gtk/Makefile.am: Define TESTS, not TEST, so that make check
4168         actually triggers abicheck.sh.
4169
4170         * gdk/makegdkalias.pl: 
4171         * gtk/makegtkalias.pl: Include glib.h before using glib symbols. D'oh.
4172
4173         * gdk/makegdkalias.pl: 
4174         * gtk/makegtkalias.pl: Protect gtkalias.h by G_HAVE_GNUC_VISIBILITY.
4175         
4176         * gtk/Makefile.am: Include gtkalias.h in the generated
4177         sources gtkmarhalers.c and gtkmarshal.c.
4178
4179         * gtk/makegtkalias.pl: Cosmetic fix.
4180
4181         * gdk/Makefile.am: Remove the . which was accidentally added
4182         to SUBDIRS. Include gdkalias.h in the generated sources 
4183         gdkenumtypes.c and gdkmarshalers.c.
4184
4185         * gdk/makegdkalias.pl: Cosmetic fix.
4186
4187         * gdk/Makefile.am: Add gdkalias.h to BUILT_SOURCES.
4188
4189 2004-08-09  Hans Breuer  <hans@breuer.org>
4190
4191         * gtk/makefile.msc.in : autogenerate gtk.def, cleanup
4192
4193         * gdk/win32/gdkwindow-win32.c gdk/win32/gdkevents-win32.c : 
4194         removed long time unused ifdef/ed code (WITHOUT_WM_CREATE), 
4195         removed duplicated call to gdk_window_set_cursor()
4196
4197 Mon Aug  9 15:41:17 2004  Matthias Clasen  <maclas@gmx.de>
4198
4199         Add hidden aliases for exported symbols which are
4200         used internally in order to get rid of many PLT 
4201         entries.  (#145519, Arjan van de Ven)
4202         
4203         * gdk/Makefile.am: Add rules to generate gdk.def and 
4204         gdkalias.h from gdk.symbols, and make make check check 
4205         the abi with abicheck.sh.
4206
4207         * gdk/gdk.symbols: New file. Definition of the GDK ABI.
4208         The file can be processed by cpp to filter out certain 
4209         subsets of symbols.
4210
4211         * gdk/abicheck.sh: New file. Script to check the actually 
4212         symbols exported from libgdk-x11.2.0.so against the symbols
4213         found in gdk.symbols.
4214
4215         * gdk/makegdkalias.pl: New file. Perl script to generate the 
4216         header containing the alias definitions for internally used 
4217         exported symbols from a list of symbols.
4218
4219         * gdk/*.c, gdk/x11/*.c: Include gdkalias.h
4220         
4221 2004-08-09  Morten Welinder  <terra@gnome.org>
4222
4223         * gdk/x11/gdkdnd-x11.c (gdk_drag_drop_succeeded): Fix C99ism.
4224
4225 Mon Aug  9 15:27:01 2004  Matthias Clasen  <maclas@gmx.de>
4226
4227         * gtk/makegtkalias.pl: Also revert 
4228         GTK_TEXT_USE_INTERNAL_UNSUPPORTED_API to its old status.
4229
4230 Mon Aug  9 15:19:34 2004  Matthias Clasen  <maclas@gmx.de>
4231
4232         * gdk/gdk.h: 
4233         * gdk/gdkrgb.h: Add the exported functions 
4234         gdk_rgb_colormap_ditherable(), gdk_pointer_grab_info_libgtk_only(),
4235         gdk_keyboard_grab_info_libgtk_only() to the appropriate
4236         headers.
4237
4238 Mon Aug  9 14:24:46 2004  Matthias Clasen  <maclas@gmx.de>
4239
4240         * gdk/x11/gdkevents-x11.c (gdk_event_send_client_message_to_all_recurse): 
4241         Make static.
4242
4243 Mon Aug  9 12:48:04 2004  Matthias Clasen  <maclas@gmx.de>
4244
4245         Add hidden aliases for exported symbols which are
4246         used internally in order to get rid of many PLT 
4247         entries.  (#145519, Arjan van de Ven)
4248         
4249         * gtk/Makefile.am: Add rules to generate gtk.def and 
4250         gtkalias.h from gtk.symbols, and make make check check 
4251         the abi with abicheck.sh.
4252         (gtk_private_h_sources): Add gtkinternals.h
4253         (gtk_built_private_headers): Add gtkalias.h
4254         (gtk_extra_sources): Add gtk.symbols
4255         (EXTRA_DIST): Add makegtkalias.pl and abicheck.sh
4256
4257         * gtk/gtk.symbols: New file. Definition of the GTK+ ABI.
4258         The file can be processed by cpp to filter out certain 
4259         subsets of symbols.
4260
4261         * gtk/abicheck.sh: New file. Script to check the actually 
4262         symbols exported from libgtk-x11.2.0.so against the symbols
4263         found in gtk.symbols.
4264
4265         * gtk/makegtkalias.pl: New file. Perl script to generate the 
4266         header containing the alias definitions for internally used 
4267         exported symbols from a list of symbols.
4268
4269         * gtk/gtkinternals.h: New file. An uninstalled header listing
4270         symbols which must be exported for some reason and do not appear
4271         in any other header.
4272
4273         * gtk/*.c: Include gtkalias.h
4274         
4275 Mon Aug  9 11:49:46 2004  Matthias Clasen  <maclas@gmx.de>
4276
4277         * gtk/gtkmain.c: Only undef gtk_init_check and gtk_init on win32.
4278
4279 Mon Aug  9 10:50:05 2004  Matthias Clasen  <maclas@gmx.de>
4280
4281         * gtk/gtkentry.h: Add gtk_entry_layout_index_to_text_index() 
4282         and its inverse. The have always been exported and are meant
4283         to be public.
4284         
4285 Mon Aug  9 00:28:34 2004  Matthias Clasen  <maclas@gmx.de>
4286
4287         * gtk/gtkicontheme.c (load_svg_at_size): Don't leak the 
4288         file contents.
4289
4290 Mon Aug  9 00:13:03 2004  Matthias Clasen  <maclas@gmx.de>
4291
4292         * gtk/gtkaboutdialog.c (icon_set_new_from_pixbufs): Don't
4293         leak the icon source.
4294
4295 Sun Aug  8 23:46:20 2004  Matthias Clasen  <maclas@gmx.de>
4296
4297         * gtk/gtkfilechooserdefault.c (shortcuts_reload_icons): Don't
4298         leak a reference to the pixbufs.
4299
4300 Sun Aug  8 23:36:55 2004  Matthias Clasen  <maclas@gmx.de>
4301
4302         * gtk/gtkcombobox.c (gtk_combo_box_menu_setup): Ref
4303         and sink the column.
4304         (gtk_combo_box_menu_destroy): Unref the column.
4305
4306 Sun Aug  8 23:35:00 2004  Matthias Clasen  <maclas@gmx.de>
4307
4308         * gtk/gtkdnd.c (gtk_drag_source_add_text_targets): 
4309         (gtk_drag_dest_add_text_targets): Don't leak a reference 
4310         to the target list.
4311
4312 Sun Aug  8 22:52:26 2004  Matthias Clasen  <maclas@gmx.de>
4313
4314         * gtk/gtkcombobox.c (find_menu_by_path): Don't stumble over
4315         separators which are not backed by model rows.
4316
4317 Sun Aug  8 11:01:23 2004  Matthias Clasen  <maclas@gmx.de>
4318
4319         * gtk/gtkcombobox.c (gtk_combo_box_set_active): Don't leak
4320         the path.
4321
4322 2004-08-08  Hans Breuer  <hans@breuer.org>
4323
4324         * gtk/gtkdnd.c (gtk_drag_dest_set) : take targets into
4325         account again to allow dnd of other things than text
4326
4327         * gdk/win32/gdkselection-win32.c : offer windows bitmap to
4328         be pasted from clipboard (makes The GIMP 2.1's 
4329         "File/Acquire/Paste as New" work, only using gtk+ API) 
4330
4331 Sun Aug  8 01:32:36 2004  Matthias Clasen  <maclas@gmx.de>
4332
4333         * gtk/gtk.def: Add gtk_cell_renderer_progress_get_type.
4334
4335 Sun Aug  8 01:29:08 2004  Matthias Clasen  <maclas@gmx.de>
4336
4337         * gtk/gtk.def: Replace duplicate gtk_tree_view_get_hover_expand
4338         by gtk_tree_view_set_hover_expand.
4339
4340 Sun Aug  8 01:23:08 2004  Matthias Clasen  <maclas@gmx.de>
4341
4342         * gtk/gtk.def: Remove the static function gtk_menu_get_private.
4343
4344 2004-08-07  Tor Lillqvist  <tml@iki.fi>
4345
4346         * gdk/win32/gdkkeys-win32.c (update_keymap): Don't hardcode
4347         mapping of VK_DECIMAL to GDK_KP_Decimal. Instead, let ToAsciiEx()
4348         map it to what's printed on the keypad decimal key for the current
4349         input locale (keyboard layout). (#149404)
4350
4351 Sat Aug  7 18:19:03 2004  Matthias Clasen  <maclas@gmx.de>
4352
4353         * gtk/gtkfilechooserdefault.c (save_folder_combo_create): 
4354         (shortcuts_list_create): Use GtkTreeViewRowSeparatorFunc 
4355         instead of GtkCellRendererSepText.  (#147864)
4356
4357         * gtk/gtkcellrendererseptext.[hc]: Removed.
4358
4359         * gtk/Makefile.am: Remove gtkcellrendererseptext.[hc]
4360         
4361 Sat Aug  7 18:15:15 2004  Matthias Clasen  <maclas@gmx.de>
4362
4363         * gtk/gtkcombobox.c (gtk_combo_box_menu_row_deleted): 
4364         (gtk_combo_box_menu_row_inserted): 
4365         (gtk_combo_box_menu_row_changed): Correctly handle
4366         insertion and deletion of separators in menu mode.
4367
4368 2004-08-07  Tor Lillqvist  <tml@iki.fi>
4369
4370         * gdk/win32/gdkevents-win32.c (handle_configure_event,
4371         gdk_event_translate:WM_WINDOWPOSCHANGED): Add _gdk_offset_{x,y} to
4372         top-level window coordinates, not just in generated
4373         events. (#148526, Robert Ögren)
4374
4375 Sat Aug  7 01:26:08 2004  Matthias Clasen  <maclas@gmx.de>
4376
4377         Make the column drag code a bit more robust (still scary, 
4378         though).  (#106992, Christian Biere)
4379         
4380         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): Assert
4381         that cur_reorder is NULL here.
4382
4383         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column): 
4384         Reset cur_reorder to NULL, and only hide drag_highlight_window 
4385         if it exists.  
4386
4387 2004-08-06  Federico Mena Quintero  <federico@ximian.com>
4388
4389         Fix #144232:
4390
4391         * gtk/gtkfilechooserdefault.c (save_widgets_create): Use a
4392         GtkFileChooserEntry for the file name, rather than a GtkEntry.
4393         (update_chooser_entry): Set the contents of the file chooser entry
4394         rather than the plain entry's.
4395         (gtk_file_chooser_default_set_current_folder): Set the new folder
4396         on the save entry.
4397         (gtk_file_chooser_default_set_current_name): Set the name on the
4398         file chooser entry.
4399         (check_save_entry): Use the file chooser entry rather than the
4400         plain entry.
4401
4402         * gtk/gtkfilechooserentry.c
4403         (_gtk_file_chooser_entry_set_base_folder): Call
4404         gtk_file_chooser_entry_changed() so that we recompute the current
4405         folder based on the new base folder.
4406
4407 2004-08-06  Hans Breuer  <hans@breuer.org>
4408
4409         * gdk/win32/gdkwindow-win32.c : make it compile and more
4410         similar to the X11 implementation [backward compatibility
4411         for GDK_WINDOW_TEMP, GDK_INPUT_ONLY (fixes bug #148702), 
4412         use the *screen* function variants, dont reparent already 
4413         destroyed]
4414         (get_visible_region) : take the win32 part into account
4415         (_gdk_windowing_window_destroy) : remove from handle table
4416
4417         * gdk/win32/gdkdisplay-win32.c : added 
4418         gdk_display_(request|supports)_selection_notification ()
4419         with a currently mostly pointless implementation ;-)
4420
4421         * gtk/gtkfilesystemwin32.c (*_to_path) : same changes as on *NIX,
4422         plugs memory leak
4423         (gtk_file_system_win32_render_icon) : use new GTK_STOCK_DIRECTORY
4424
4425         * gtk/makefile.msc.in demos/gtk-demo/makefile.msc.in 
4426           gtk/stock-icons/makefile.msc tests/makefile.msc : updated
4427
4428         * gdk/gdk.def gtk/gtk.def : updated externals
4429
4430         * tests/testiconview.c : remove unneeded dirent.h inclusion
4431
4432 2004-08-06  Matthias Clasen  <mclasen@redhat.com>
4433
4434         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_page_up_down): Fix
4435         an off-by-one error.  (#141809, Markku Vire)
4436
4437         * gtk/gtkdnd.c (gtk_drag_dest_set, gtk_drag_source_set): Really
4438         fix the initialization of the target list.
4439
4440         Support XDND v5. (#10220, Owen Taylor)
4441         
4442         * gdk/x11/gdkdnd-x11.c: Record the XDND version and whether the
4443         drop was successful in the GdkDragContextPrivateX11 struct.
4444         (xdnd_finished_filter): Store the success status of the drop
4445         for an XDND version 5 interaction. For other versions, always
4446         assume the drop was successful.
4447         (xdnd_check_dest): Return the protocol version.
4448         (_gdk_drag_get_protocol_for_display): Return the protocol version.
4449         (gdk_drag_find_window_for_screen): Store the used protocol version
4450         in the GdkDragContext.
4451         (xdnd_send_enter): Send the used protocol version from the context,
4452         instead of hardwiring 3.
4453         (xdnd_enter_filter): Accept protocol versions >= 3 and store the
4454         used protocol version in the context.
4455
4456         * gdk/gdkdnd.h: 
4457         * gdk/x11/gdkdnd-x11.c (gdk_drag_drop_succeeded): New function
4458         to find out whether a drop was successful.
4459
4460 2004-07-28  Robert Ögren  <gtk@roboros.com>
4461
4462         * gdk/win32/gdkinput-win32.c (_gdk_input_other_event): Set x_root
4463         and y_root in button and motion events from the tablet. (#148715)
4464
4465 Thu Aug  5 19:58:08 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4466
4467         * gtk/gtkplug.c (gtk_plug_realize): Call
4468         gdk_window_enable_synchronized_configure()
4469
4470         * gdk/x11/gdkwindow-x11.c (gdk_window_configure_finished): Make
4471         noop if gdk_window_enable_synchronized_configure() has not been
4472         called.
4473
4474 2004-08-04  Matthias Clasen  <mclasen@redhat.com>
4475
4476         * gtk/gtkfilechooser.[hc]: Add setter and getter for the 
4477         ::show-hidden property.  (#145610, Jeff Franks)
4478
4479         * tests/testiconview.c: Add buttons to select and unselect all
4480         nodes, make the popup menu actually work.
4481
4482         * gtk/gtkiconview.c: Make GTK_SELECTION_BROWSE work as intended,
4483         let button 3 presses through to the app, to make popup menus
4484         work.
4485
4486         * tests/Makefile.am: Add testiconview.
4487         * tests/testiconview.c: A test for GtkIconView
4488         * tests/gnome-textfile.png: ...which uses this image.
4489
4490 Wed Aug  4 01:37:57 2004  Matthias Clasen  <maclas@gmx.de>
4491
4492         * gtk/gtktreeview.c: 
4493         * gtk/gtktreestore.c: 
4494         * gtk/gtktreemodelfilter.c: 
4495         * gtk/gtknotebook.c: s/childs/children/g.
4496
4497 Wed Aug  4 01:04:48 2004  Matthias Clasen  <maclas@gmx.de>
4498
4499         Fix #133446, noticed by Christian Persch:
4500         
4501         * gtk/gtkaction.c (gtk_action_class_init): Add a new boolean 
4502         property ::visible-overflown. 
4503         * gtk/gtkaction.c (gtk_action_create_menu_proxy): Don't create 
4504         a menu proxy if visible_overflown is FALSE.  
4505
4506 Tue Aug  3 20:16:26 2004  Matthias Clasen  <maclas@gmx.de>
4507
4508         * gtk/gtkactiongroup.[hc]: Make the the GtkAction{Toggle,Radio,}Entry*
4509         arguments to the gtk_action_group_add_..._actions() functions const, 
4510         since the most common use case is to use a static array.  (142334, 
4511         Mariano Suarez-Alvarez)
4512
4513 Tue Aug  3 20:03:33 2004  Matthias Clasen  <maclas@gmx.de>
4514
4515         * gtk/gtkuimanager.c (get_node): Make gtk_ui_manager_add_ui()
4516         accept paths with a leading "/ui".  (#149077, David Malcolm)
4517
4518 Tue Aug  3 19:59:29 2004  Matthias Clasen  <maclas@gmx.de>
4519
4520         * gtk/gtkiconview.c: Fix some warnings.
4521
4522 Tue Aug  3 18:38:40 2004  Matthias Clasen  <maclas@gmx.de>
4523
4524         * gtk/gtktreemodelfilter.c: Correct the return type
4525         of gtk_tree_model_filter_get_flags().  (#149195, Morten Welinder)
4526
4527 Tue Aug  3 18:16:55 2004  Matthias Clasen  <maclas@gmx.de>
4528
4529         Fix #149191, reported by Morten Welinder:
4530         
4531         * gtk/gtkmain.c: Include gtkclipboard.h,
4532         * gtk/gtkwidget.h: Declare _gtk_widget_grab_notify, not
4533         _gtk_widget_emit_grab_notify.  
4534
4535 Tue Aug  3 14:50:14 2004  Matthias Clasen  <maclas@gmx.de>
4536
4537         * gtk/gtkicontheme.c (add_size): Add missing parens.
4538         (#149190, Morten Welinder)
4539
4540 Tue Aug  3 14:29:49 2004  Matthias Clasen  <maclas@gmx.de>
4541
4542         * gtk/gtkcombobox.c (gtk_combo_box_menu_fill): Remove 
4543         accidentally committed debug code.
4544
4545 Tue Aug  3 01:19:12 2004  Matthias Clasen  <maclas@gmx.de>
4546
4547         * gtk/gtkcombobox.c (gtk_combo_box_relayout_item): Optimize 
4548         for the case that row_column and col_column are unset.  
4549         (#148868, Lorenzo Gil Sánchez)
4550
4551 Mon Aug  2 21:52:45 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4552
4553         * gdk/x11/gdkwindow-x11.c (ensure_sync_counter): New
4554         function. Make sure the sync counter is recreated when a window is
4555         reparented to become a toplevel. (#148358)
4556
4557 2004-08-02  Matthias Clasen  <mclasen@redhat.com>
4558
4559         * tests/testcombo.c: Some trees in combo boxes.
4560
4561         * gtk/gtkcombobox.c: Rework the combo box to handle 
4562         tree models.  (#139582, Matt Walton)
4563         
4564         * gtk/gtktreeview.h: 
4565         * gtk/gtktreeview.c: 
4566         * gtk/gtktreeprivate.h: Add a new boolean property 
4567         ::hover-expand and make the treeview expand/collapse rows
4568         on mouseover if it is set.
4569
4570         * gtk/gtkiconview.h: Remove some erroneous declarations.
4571
4572         * gtk/gtkcellview.c (gtk_cell_view_set_cell_data): Don't
4573         crash if the displayed row is gone.
4574
4575 2004-08-02  Morten Welinder  <terra@gnome.org>
4576
4577         * gtk/gtkentry.c (gtk_entry_motion_notify): C99ism.
4578
4579 Mon Aug  2 01:30:03 2004  Matthias Clasen  <maclas@gmx.de>
4580
4581         * gtk/gtktextview.[hc]: 
4582         * gtk/gtkentry.[hc]: Add a new binding signal ::backspace,
4583         bind it to the backspace key, and make it pay attention 
4584         to the Pango backspace_deletes_character 
4585         attribute.  (#119891, Noah Levitt, patch by Theppitak 
4586         Karoonboonyanan)
4587
4588 Mon Aug  2 01:02:57 2004  Matthias Clasen  <maclas@gmx.de>
4589
4590         * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed): 
4591         (gdk_check_wm_desktop_changed): Add missing error 
4592         traps.  (#149011, Thomas Leonard)
4593
4594 Mon Aug  2 00:21:26 2004  Matthias Clasen  <maclas@gmx.de>
4595
4596         * gtk/gtktextview.c (blink_cb): Add the same warning
4597         that the blink_cb() in GtkEntry already has.  (#148733)
4598
4599 Mon Aug  2 00:12:16 2004  Matthias Clasen  <maclas@gmx.de>
4600
4601         * gtk/gtkentry.c (gtk_entry_class_init):
4602         (gtk_entry_get_alignment): 
4603         (gtk_entry_set_alignment): Document the xalign property
4604         and its getter and setter as 2.4 additions.  (#148978,
4605         Axel Simon)
4606
4607 Mon Aug  2 00:11:31 2004  Matthias Clasen  <maclas@gmx.de>
4608
4609         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): 
4610         * gtk/gtkactiongroup.c (gtk_action_group_class_init): Use
4611         canonical signal names in doc comments, since gtk-doc won't
4612         pick up signal docs with underscores.  
4613
4614 2004-08-01  Matthias Clasen  <mclasen@redhat.com>
4615         
4616         * configure.in: Post-release version bump
4617
4618         * === Released 2.5.1 ===
4619  
4620 Thu Jul 29 16:36:42 2004  Jonathan Blandford  <jrb@redhat.com>
4621
4622         * gtk/gtktreeprivate.h: New arguments
4623
4624         * gtk/gtktreeview.c:
4625         (gtk_tree_view_class_init): Add key_release callback
4626         (gtk_tree_view_init): Initialize timeout handler
4627         (gtk_tree_view_unrealize): clear timeout if needed
4628         (gtk_tree_view_key_press): Typeahead support
4629         (gtk_tree_view_key_release): Not used yet -- will be needed for
4630         typeahead.
4631         (gtk_tree_view_search_entry_flush_timeout): Remove typeahead entry
4632         in a timeout.
4633         (gtk_tree_view_ensure_interactive_directory):
4634         (gtk_tree_view_real_start_interactive_search):
4635         (gtk_tree_view_search_init):
4636         (gtk_tree_view_start_interactive_search): Typeahead support added.
4637         (gtk_tree_view_search_dialog_hide): Clear timeout and text when we
4638         hide.
4639
4640 Sat Jul 31 23:17:44 2004  Matthias Clasen  <maclas@gmx.de>
4641
4642         * NEWS: Updates
4643
4644 Sat Jul 31 01:13:01 2004  Matthias Clasen  <maclas@gmx.de>
4645
4646         * gtk/gtkwindow.c: 
4647         * gtk/gtkentry.c: 
4648         * gtk/gtkaction.c: Use the canonical form of signal names 
4649         after "notify::". Otherwise, no notification arrives. 
4650         GObject should have a warning for that, really.  (#148879, 
4651         Lorenzo Gil Sánchez)
4652
4653 Sat Jul 31 00:42:08 2004  Matthias Clasen  <maclas@gmx.de>
4654
4655         * gdk/x11/gdkwindow-x11.c (gdk_window_set_keep_below): 
4656         * gdk/x11/gdkwindow-x11.c (gdk_window_set_keep_above): Don't
4657         set both states at once.  (#148789, Matthew Garrett)
4658
4659 2004-07-30  Matthias Clasen  <mclasen@redhat.com>
4660
4661         * gtk/gtkcombobox.c: Don't forget to destroy the row separator
4662         function user data when the combo box is destroyed.
4663
4664 2004-07-30  Matthias Clasen  <mclasen@redhat.com>
4665
4666         * gtk/gtkcombobox.h: 
4667         * gtk/gtkcombobox.c: Change the api for separators to use a 
4668         separator function instead of a boolean column.
4669
4670         * tests/testcombo.c: Update to match the api change.
4671
4672 Fri Jul 30 02:21:41 2004  Matthias Clasen  <maclas@gmx.de>
4673
4674         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
4675         Fix the positioning of the popup. 
4676
4677 Fri Jul 30 00:56:31 2004  Matthias Clasen  <maclas@gmx.de>
4678
4679         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_active_changed): 
4680         Implement this in terms of gtk_combo_box_get_active_iter(),
4681         instead of gtk_combo_box_get_active().
4682
4683 2004-07-29  Federico Mena Quintero  <federico@ximian.com>
4684
4685         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault): Add
4686         a field for an "add to shortcuts" menu item.
4687         (popup_menu_detach_cb): Clear out the field.
4688         (file_list_build_popup_menu): Only build the menu here.
4689         (file_list_update_popup_menu): Build the menu, then update the
4690         sensitivity of its items.
4691         (file_list_popup_menu): Use file_list_update_popup_menu().
4692         (bookmarks_check_add_sensitivity): Also set the sensitivity of the
4693         popup menu item.  Correctly handle the case for a *single* file.
4694         Simplify a bit.
4695         (bookmarks_add_selected_folder): New helper function; code moved
4696         over from add_bookmark_button_clicked_cb().
4697         (add_bookmark_button_clicked_cb): Use the function above.
4698         (selection_check): Rather than returning a boolean value for
4699         emptiness, actually return the number of selected rows.  Also,
4700         simplify a bit.
4701         (get_selected_path): New helper function.
4702
4703 2004-07-29  Anders Carlsson  <andersca@gnome.org>
4704
4705         * demos/gtk-demo/Makefile.am:
4706         * demos/gtk-demo/clipboard.c: (copy_button_clicked),
4707         (paste_received), (paste_button_clicked), (do_clipboard):
4708         Add clipboard demo.
4709         
4710 2004-07-28  Federico Mena Quintero  <federico@ximian.com>
4711
4712         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
4713         Store signal IDs in gulongs, not guints!
4714         (gtk_file_chooser_default_hierarchy_changed): We now monitor the
4715         focus widget on our toplevel to know which widget was last focused
4716         at the time our "should_respond" method gets called.
4717         (shortcuts_activate_selected): New helper function.
4718         (shortcuts_get_selected): New helper function.
4719         (remove_selected_bookmarks): Use shortcuts_get_selected().
4720         (bookmarks_check_remove_sensitivity): Likewise.
4721         (shortcuts_reorder): Likewise.
4722         (shortcuts_activate_iter): Renamed from shortcuts_activate_item().
4723         Activate by iter, not by item number.
4724         (save_folder_combo_changed_cb): Use shortcuts_activate_iter().
4725         (shortcuts_row_activated_cb): Likewise.
4726         (gtk_file_chooser_default_should_respond): If the last focused
4727         widget on the toplevel was the shortcuts list, activate the
4728         selected shortcut.
4729
4730 2004-07-28  Matthias Clasen  <mclasen@redhat.com>
4731
4732         * gdk/linux-fb/gdkprivate-fb.h: Make the fb backend compile against
4733         current freetype.  (#148558, Nicolas Deves)
4734
4735         * gtk/gtktreeview.c: Replace the EXPANDER_MAX macro by 
4736         ROW_HEIGHT.  (#145528)
4737
4738         * gtk/gtkuimanager.c: Warning fixes.
4739
4740         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_background): Fix
4741         prototype mismatch.  (#148589, Nicolas Deves)
4742
4743 2004-07-28  Anders Carlsson  <andersca@gnome.org>
4744
4745         * gdk/x11/gdkdrawable-x11.c (gdk_draw_rectangle_alpha_libgtk_only): 
4746         Cast to 32-bit integers when premultiplying, suggested by Keith Packard.
4747
4748 2004-07-27  Anders Carlsson  <andersca@gnome.org>
4749
4750         * demos/gtk-demo/iconview.c: (do_iconview):
4751         Change selection mode to multiple.
4752         
4753         * gdk/gdkdrawable.h:
4754         * gdk/linux-fb/gdkdrawable-fb2.c:
4755         (gdk_draw_rectangle_alpha_libgtk_only):
4756         * gdk/win32/gdkdrawable-win32.c:
4757         (gdk_draw_rectangle_alpha_libgtk_only):
4758         * gdk/x11/gdkdrawable-x11.c: (gdk_x11_draw_image),
4759         (get_impl_drawable), (gdk_x11_draw_pixbuf),
4760         (gdk_draw_rectangle_alpha_libgtk_only):
4761         Add gdk_draw_rectangle_alpha_libgtk_only which uses 
4762         XRenderFillRectangle on X11. It's stubbed out on the 
4763         Win32 and fb backends.
4764         
4765         * gtk/gtkiconview.c: 
4766         (gtk_icon_view_paint_rubberband):
4767         Use gdk_draw_rectangle_alpha_libgtk_only here.
4768
4769 2004-07-27  Anders Carlsson  <andersca@gnome.org>
4770
4771         * gtk/gtkaboutdialog.c: (gtk_about_dialog_init),
4772         (text_view_style_set), (add_credits_page),
4773         (display_credits_dialog), (display_license_dialog):
4774         Remove dialog separators, fix text view background setting,
4775         use Close buttons instead of OK buttons.
4776         
4777 2004-07-27  Matthias Clasen  <mclasen@redhat.com>
4778
4779         * gtk/gtktreeview.c (gtk_tree_view_ensure_interactive_directory): 
4780         Add a frame around the C-f popup to stop it from merging visually
4781         in whatever is underneath.
4782
4783         * gtk/gtkcombobox.h: 
4784         * gtk/gtkcombobox.c (gtk_combo_box_get_popup_accessible): New 
4785         function necessary to make GtkComboBox accessible.  (#132847, 
4786         Padraig O'Briain)
4787
4788 Tue Jul 27 02:34:06 2004  Matthias Clasen  <maclas@gmx.de>
4789
4790         * gtk/gtkwidget.c (gtk_widget_dispose): Hide parentless
4791         windows when disposing them.  (#133231, Michael Natterer)
4792
4793 2004-07-26  Matthias Clasen  <mclasen@redhat.com>
4794
4795         * gtk/gtklabel.c (gtk_label_class_init): Expand the documentation
4796         for GtkLabel::ellipsize.
4797
4798 Mon Jul 26 00:38:27 2004  Matthias Clasen  <maclas@gmx.de>
4799
4800         Make the GtkComboBox in list mode scroll if the list is too
4801         large to fit in the popup.  (#135543)
4802
4803         * gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Add a 
4804 o       scrolled window to the popup in list mode.
4805         (gtk_combo_box_list_position): Calculate the height of the
4806         popup so that it fits on the screen, set the scrollbar policy
4807         of the scrolled window appropriately.
4808         (gtk_combo_box_popup): Use the height calculated by 
4809         gtk_combo_box_list_position().
4810         (gtk_combo_box_remeasure): Don't add unnecessary padding.
4811         (gtk_combo_box_size_request): But add the focus with here.
4812         (gtk_combo_box_list_setup): Connect to enter notify on the 
4813         popup window to activate auto scrolling.
4814         (gtk_combo_box_list_enter_notify): Activate auto scrolling.
4815         (gtk_combo_box_list_button_pressed): Setup a timeout for
4816         auto scrolling. 
4817         (gtk_combo_box_list_scroll_timeout): Timeout function for
4818         auto scrolling.
4819         (gtk_combo_box_list_auto_scroll): Scroll the list when the 
4820         pointer leaves the window.
4821         
4822 Sun Jul 25 19:51:17 2004  Matthias Clasen  <maclas@gmx.de>
4823
4824         * gtk/gtknotebook.c (gtk_notebook_scroll): Ignore scroll
4825         events from the content of the page.  (#148409, Gabriel 
4826         de Perthuis)
4827
4828 Sat Jul 24 21:38:12 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4829
4830         * gtk/gtktoolbar.c (internal_insert_element): Warn if you try to
4831         add a tool item to a toolbar using the deprecated API.
4832
4833 Fri Jul 23 13:04:10 2004  Matthias Clasen  <maclas@gmx.de>
4834
4835         * gtk/gtkdnd.c (gtk_drag_dest_set): Revert the change to
4836         initialize target_list to an empty list instead of NULL,
4837         since it broke tree dnd.  (#148215, Ernst Persson)
4838
4839         * gtk/gtkdnd.c (gtk_drag_dest_add_text_targets): 
4840         * gtk/gtkdnd.c (gtk_drag_source_add_text_targets): Instead 
4841         handle target list being NULL here.
4842
4843 2004-07-23  Dafydd Harries  <daf@muse.19inch.net>
4844
4845         * gtk/gtkradioaction.c:
4846         * gtk/gtkradiobutton.c:
4847         * gtk/gtkentry.c:
4848         * gtk/gtkmisc.c:
4849         Improve various translatable messages. (#137616)
4850
4851 Fri Jul 23 11:11:10 2004  Matthias Clasen  <maclas@gmx.de>
4852
4853         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_start_editing): 
4854         Align the entry in the same way as the cell.  (#136749)
4855
4856 Fri Jul 23 11:01:00 2004  Matthias Clasen  <maclas@gmx.de>
4857
4858         * gtk/gtktextbtree.c (_gtk_text_line_previous_could_contain_tag): 
4859         Don't iterate too far up. (#147965, Olivier Sessink)
4860
4861 Fri Jul 23 10:28:43 2004  Matthias Clasen  <maclas@gmx.de>
4862
4863         * gtk/gtktreeview.c (gtk_tree_view_finalize): 
4864         * gtk/gtkradioaction.c (gtk_radio_action_finalize): 
4865         * gtk/gtkfontsel.c (gtk_font_selection_finalize): 
4866         * gtk/gtkcellview.c (gtk_cell_view_finalize): 
4867         * gtk/gtkcalendar.c (gtk_calendar_finalize): 
4868         * gtk/gtkactiongroup.c (gtk_action_group_finalize): Remove
4869         unnecessary checks.  (#148175, Morten Welinder)
4870
4871 Thu Jul 22 01:42:16 2004  Matthias Clasen  <maclas@gmx.de>
4872
4873         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): 
4874         Add a new :ellipsize property which controls ellipsization of the 
4875         rendered text.  (#144835, Vincent Untz, patch by Jonathan Blandford
4876         and Anders Carlsson)
4877         
4878         * gtk/gtkfilechooserdefault.c (create_file_list): Use ellipsization
4879         for the name column.
4880
4881 Thu Jul 22 01:21:28 2004  Matthias Clasen  <maclas@gmx.de>
4882
4883         * gtk/gtkfontsel.c (gtk_font_selection_init): Add additional
4884         accessability relations.  (#141804,  Padraig O'Briain)
4885
4886 Thu Jul 22 01:16:23 2004  Matthias Clasen  <maclas@gmx.de>
4887
4888         * gtk/gtkcombobox.c: Avoid some warnings.
4889
4890 Thu Jul 22 01:05:16 2004  Matthias Clasen  <maclas@gmx.de>
4891
4892         * configure.in: Require Pango 1.5.1 (for ellipsisation).
4893
4894         * gtk/gtklabel.h: 
4895         * gtk/gtklabel.c (gtk_label_class_init): Add a new :ellipsize
4896         property which controls ellipsization of the label.  (#125250, 
4897         Tim Van Wassenhove, patch by James M. Cape)
4898
4899         * tests/testellipsise.c: Simple test for ellipsizsation.
4900
4901 Wed Jul 21 22:46:27 2004  Matthias Clasen  <maclas@gmx.de>
4902
4903         * gtk/gtkcombobox.c (gtk_combo_box_new_text): Don't leak the
4904         list store.  (#148134, Crispin Flowerday)
4905
4906 Wed Jul 21 22:35:47 2004  Matthias Clasen  <maclas@gmx.de>
4907
4908         * gtk/gtkcombobox.c (gtk_combo_box_destroy): Don't leak the
4909         menu.  (#148110, Tommi Komulainen)
4910
4911 Wed Jul 21 22:24:10 2004  Matthias Clasen  <maclas@gmx.de>
4912
4913         * gtk/gtkcellview.c (gtk_cell_view_finalize): Don't leak
4914         tree model and tree row reference.  (#148125, Crispin Flowerday)
4915
4916 Wed Jul 21 22:17:06 2004  Matthias Clasen  <maclas@gmx.de>
4917
4918         * tests/testcombo.c (main): Don't leak models.  (#148128,
4919         Tommi Komulainen)
4920
4921 Wed Jul 21 21:26:08 2004  Matthias Clasen  <maclas@gmx.de>
4922
4923         * gtk/gtkviewport.c (viewport_set_adjustment): Don't leak
4924         the adjustments.  (#148089, Tommi Komulainen)
4925
4926 Wed Jul 21 21:20:21 2004  Matthias Clasen  <maclas@gmx.de>
4927
4928         * gtk/gtktreeview.c (gtk_tree_view_destroy): Don't leak
4929         the adjustments.  (#148073, Tommi Komulainen)
4930
4931 Wed Jul 21 21:04:50 2004  Matthias Clasen  <maclas@gmx.de>
4932
4933         * gtk/gtktoolbar.c (gtk_toolbar_finalize): Don't leak the 
4934         arrow.  (#148064, Tommi Komulainen)
4935
4936 2004-07-21  Matthias Clasen  <mclasen@redhat.com>
4937
4938         * gtk/gtkcalendar.c: Use the new text target functionality
4939         in GtkTargetList instead of hardcoding a subset of text targets.
4940
4941 Tue Jul 20 23:11:23 2004  Matthias Clasen  <maclas@gmx.de>
4942
4943         * gdk/x11/gdkevents-x11.c: Hook up gtk-menu-bar-accel to
4944         an XSetting, Gtk/MenuBarAccel.  (#120859, Scott James Remnant)
4945
4946 Tue Jul 20 22:26:29 2004  Matthias Clasen  <maclas@gmx.de>
4947
4948         * gtk/gtkfilechooserutils.h: 
4949         * gtk/gtktoolbutton.c: 
4950         * gtk/gtktoolbar.c: 
4951         * gtk/gtkicontheme.c: 
4952         * gtk/gtkcalendar.c: 
4953         * demos/gtk-demo/ui_manager.c: 
4954         * demos/gtk-demo/appwindow.c: Remove trailing commas
4955         from enumerations.  (#148035)
4956
4957 2004-07-20  Federico Mena Quintero  <federico@ximian.com>
4958
4959         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): Fix the
4960         documentation comment for the editing-started signal.
4961
4962         * gtk/gtkmarshalers.list: Added VOID:OBJECT,STRING for
4963         GtkCellRenderer::editing-started.
4964
4965 2004-07-20  Matthias Clasen  <mclasen@redhat.com>
4966
4967         * tests/testactions.c (main): 
4968         * tests/testmerge.c (main): Add some refcount debugging.
4969
4970         * gtk/gtkuimanager.c (update_node, free_node): Ref an sink
4971         all proxies, so that we can properly clean up floating proxies
4972         which the app didn't adopt.  (#147926, Tommi Komulainen)
4973
4974 2004-07-20  Matthias Clasen  <mclasen@redhat.com>
4975
4976         Allow custom initialization of cell editables.  (#147221)
4977         
4978         * gtk/gtkcellrenderer.h (struct _GtkCellRendererClass): 
4979         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): Add a 
4980         ::editing-started signal as a hook for setting up the 
4981         GtkCellEditable.
4982         (gtk_cell_renderer_start_editing): ...and emit it here.
4983
4984 Mon Jul 19 23:51:50 2004  Matthias Clasen  <maclas@gmx.de>
4985
4986         * gtk/gtktreeview.c (gtk_tree_view_button_press): Set drag_pos
4987         before grabbing the focus, since we may reenter into 
4988         gtk_tree_view_motion_resize_column() which requires drag_pos
4989         to be set.  (#147913, Guilherme Salgado, patch by John Finlay) 
4990
4991 Mon Jul 19 23:51:50 2004  Matthias Clasen  <maclas@gmx.de>
4992
4993         * gtk/gtktreeview.c (gtk_tree_view_enter_notify): Don't
4994         use uninitialized node pointer.  (#147911, Peter Zelezny)
4995
4996 Tue Jul 20 04:34:56 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
4997
4998         * configure.in: Bump version number
4999
5000 Sun Jul 18 17:21:10 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
5001
5002         * === Released 2.5.0 ===
5003
5004         * NEWS: updates
5005
5006         * tests/testcombo.c: Fix compilation
5007
5008 2004-07-19  Matthias Clasen  <mclasen@redhat.com>
5009
5010         * gtk/gtkentrycompletion.c (gtk_entry_completion_set_popup_completion):
5011         Fix doc comment.
5012         
5013 2004-07-19  Matthias Clasen  <mclasen@redhat.com>
5014
5015         Make GtkCellView public, since people seem to have uses for it, 
5016         it is clean API and we were just conservative in not making it 
5017         public initially. At the same time, get rid of GtkCellViewMenuItem,
5018         which doesn't have any function which can't be served by a
5019         GtkMenuItem with a GtkCellView child.  (#136637, Padraig O'Briain)
5020
5021         * gtk/gtk.h: Include gtkcellview.h
5022
5023         * gtk/Makefile.am (gtk_public_h_sources): 
5024
5025         * gtk/Makefile.am (gtk_private_h_sources): 
5026         (gtk_c_sources): Remove gtkcellviewmenuitem.[hc]
5027         * gtk/gtkcombobox.c: Replace all uses of GtkCellViewMenuItem by
5028         GtkMenuItem with a GtkCellView child.
5029
5030         * gtk/gtkcellviewmenuitem.[hc]: Removed.
5031
5032 2004-07-19  Matthias Clasen  <mclasen@redhat.com>
5033
5034         Support inline autocompletion in entries  (#135953)
5035         
5036         * gtk/gtkentryprivate.h: 
5037         * gtk/gtkentrycompletion.h: 
5038         * gtk/gtkentrycompletion.c (gtk_entry_completion_class_init): 
5039         Add a new signal ::insert-prefix which can be used to override 
5040         the default inline-completion behaviour. Add two new boolean
5041         properties, :popup_completion and :inline_completion which
5042         determine how the possible completions should be presented.
5043         (gtk_entry_completion_insert_prefix): New function to request
5044         a prefix insertion. 
5045
5046         * gtk/gtkentry.c: Add the necessary glue for inline completion. 
5047
5048 Sun Jul 18 15:28:24 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
5049
5050         * gtk/gtkdnd.c (gtk_drag_source_set, gtk_drag_dest_set): Create an
5051         empty target list if targets is NULL.
5052
5053         * configure.in: Add check for X11/extensions/sync.h. (#147416,
5054         Morten Welinder)
5055
5056 Sun Jul 18 01:24:31 2004  Matthias Clasen  <maclas@gmx.de>
5057
5058         * NEWS: Updates for 2.5.0
5059
5060 Sat Jul 17 23:11:04 2004  Matthias Clasen  <maclas@gmx.de>
5061
5062         * gtk/gtkiconview.h:
5063         * gtk/gtkiconview.c (gtk_icon_view_class_init): 
5064         * gtk/gtkiconview.c (gtk_icon_view_set_orientation): 
5065         * gtk/gtkiconview.c (gtk_icon_view_get_orientation): 
5066         * gtk/gtkiconview.c (gtk_icon_view_calculate_item_size): 
5067         * gtk/gtkiconview.c (gtk_icon_view_layout_single_row): 
5068         Add a new :orientation property to determine whether text
5069         is positioned below or beside icons.  (#147463)
5070
5071 Sat Jul 17 23:03:30 2004  Matthias Clasen  <maclas@gmx.de>
5072
5073         * gtk/gtkiconview.c (gtk_icon_view_paint_item): 
5074         * gtk/gtkiconview.c (gtk_icon_view_calculate_item_size): 
5075         * gtk/gtkiconview.c (gtk_icon_view_layout_single_row): Draw 
5076         focus indicator outside the selection, respect focus 
5077         line width.  (#147460) 
5078
5079 Sat Jul 17 01:17:33 2004  Matthias Clasen  <maclas@gmx.de>
5080
5081         * gdk/x11/gdkdnd-x11.c (xdnd_check_dest): Fix a warning
5082         message.
5083
5084 Sat Jul 17 00:48:27 2004  Matthias Clasen  <maclas@gmx.de>
5085
5086         Support text/plain selection target  (#55117, Owen Taylor)
5087         
5088         * gtk/gtkselection.h: 
5089         * gtk/gtkdnd.h: 
5090         * gtk/gtkselection.c (gtk_target_list_add_text_targets): 
5091         * gtk/gtkdnd.c (gtk_drag_dest_add_text_targets): 
5092         * gtk/gtkdnd.c (gtk_drag_source_add_text_targets): New
5093         functions to facilitate handling of text targets.
5094
5095         * gtk/gtkentry.c: 
5096         * gtk/gtktextview.c: Use the new text target handling 
5097         functions instead of hardwiring the list of supported
5098         text targets everywhere.
5099
5100         * gtk/gtkselection.c (gtk_selection_data_get_text): 
5101         (gtk_selection_data_set_text): 
5102         Support the targets text/plain, text/plain?charset=utf-8
5103         and text/plain?charset=<LOCALE-CHARSET> as outlined in
5104         #55117: 
5105         For text/plain send only ASCII, but accept 8-bit text 
5106         and treat it as ISO-8859-1 as specified by the Xdnd spec.
5107         Always send CRLF terminators. Accept either and convert
5108         into the native terminator for the platform.
5109         
5110 Fri Jul 16 23:20:34 2004  Matthias Clasen  <maclas@gmx.de>
5111
5112         Support themed window icons.  (#92346, Calum Benson)
5113         
5114         * gtk/gtkicontheme.c (gtk_icon_theme_get_icon_sizes): New 
5115         function to obtain information about the sizes in which an
5116         icon is available.  
5117
5118         * gtk/gtkwindow.h: 
5119         * gtk/gtkwindow.c (gtk_window_class_init): 
5120         (gtk_window_set_icon_name): 
5121         (gtk_window_get_icon_name): Add an "icon_name" property
5122         (gtk_window_set_default_icon_name): ...and a default icon name. 
5123         (icon_list_from_theme): 
5124         (update_themed_icon): New auxiliary functions to create a 
5125         list of all available sizes of a themed icon and update the
5126         window icon list from it.
5127
5128 2004-07-16  Matthias Clasen  <mclasen@redhat.com>
5129
5130         * gtk/gtkcombobox.c (gtk_combo_box_scroll_event): Make 
5131         scrolling work if no item is selected.
5132         (gtk_cell_editable_key_press): Don't eat space.
5133
5134         Add a combo box cell renderer (#139347, Lorenzo Gil Sanchez)
5135         
5136         * gtk/gtkcellrenderercombo.[hc]: New Files.
5137
5138         * gtk/gtk.h: 
5139         * gtk/Makefile.am (gtk_public_h_sources, gtk_c_sources): 
5140         Add the new files.
5141
5142         * gtk/gtkcombobox.[hc]: Implement GtkCellEditable, add a 
5143         :has-frame property for suppressing the frame around 
5144         the child and redo the size allocation logic to take 
5145         focus width into account.
5146
5147         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): 
5148         Acknowledge the GtkComboBox:has-frame property and make
5149         the entry fill its allocation vertically.
5150
5151         * gtk/gtkmarshalers.list: Add BOOLEAN:STRING.
5152                 
5153         * gtk/gtktreeview.c (gtk_tree_view_remove_widget): Queue
5154         a draw here to keep non-widget windows from leaving 
5155         shadows behind.
5156
5157 2004-07-16  Matthias Clasen  <mclasen@redhat.com>
5158
5159         * gtk/gtkcombobox.c (gtk_combo_box_forall): Don't iterate
5160         multiple times over some of the children. 
5161
5162 Thu Jul 15 22:19:40 2004  Matthias Clasen  <maclas@gmx.de>
5163
5164         Fix #60128, #58307, #144706:
5165         
5166         * gtk/gtkstyle.c (gtk_style_real_copy): Handle references
5167         to bg_pixmaps properly.
5168         (gtk_style_real_unrealize): Don't keep dangling references
5169         to the bg_pixmaps.  
5170         (gtk_style_attach): Split the loop into two loops, first 
5171         looking for a matching style, then for an empty one.
5172         (gtk_style_finalize): 
5173         (gtk_style_duplicate): Add comments explaining the handling
5174         of style->styles.
5175
5176 Thu Jul 15 20:31:28 2004  Matthias Clasen  <maclas@gmx.de>
5177
5178         * gtk/gtkspinbutton.c (start_spinning): Install the timeout
5179         before changing the value, so that a ::value_changed handler
5180         has a chance to remove it.  (#122427, Elke Meier)
5181
5182 Thu Jul 15 19:20:05 2004  Matthias Clasen  <maclas@gmx.de>
5183
5184         * gdk/x11/gdkgtk+/im-x11.c (_gdk_x11_initialize_locale): 
5185         * gtk/gtkcalendar.c (gtk_calendar_class_init): Use 'cannot'
5186         instead of 'can not' in messages.  (#144226, Morten Welinder)
5187
5188 2004-07-15  Matthias Clasen  <mclasen@redhat.com>
5189
5190         * gtk/gtktreeview.c (gtk_tree_view_class_init): 
5191         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 
5192         Correct the declared default values of several properties
5193         to be in sync with the actual initial values.
5194
5195         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): 
5196         Make spacing a property, correct the declared default values 
5197         of several properties to be in sync with the actual initial 
5198         values.  (#147654, Matthias Clasen)
5199
5200         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state): Don't reparent
5201         back to menu->toplevel if it is already gone because we're
5202         shutting down.  (#147656, John Cupitt)
5203
5204 2004-07-14  Federico Mena Quintero  <federico@ximian.com>
5205
5206         Fix #126295:
5207
5208         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Draw a focus
5209         indicator along the edge of the bin_window when the tree is empty.
5210         (grab_focus_and_unset_draw_keyfocus): New helper function.
5211         (gtk_tree_view_button_press): Remove a bit of superfluous code.
5212         Use the helper function to save on duplicated code.
5213         (gtk_tree_view_button_press): Grab the focus if the tree is empty.
5214         (gtk_tree_view_focus): Allow focusing into an empty tree.
5215
5216 2004-07-14  Matthias Clasen  <mclasen@redhat.com>
5217
5218         * gtk/gtkaboutdialog.c (add_credits_page): Don't use
5219         gcc extensions for the ternary ?: operator.  (#147590,
5220         Damien Carbery)
5221
5222 2004-07-14  Federico Mena Quintero  <federico@ximian.com>
5223
5224         Fix #144405, patch by Padraig O'Briain <padraig.obriain@sun.com>:
5225
5226         * gtk/gtkfilechooserdefault.c (shortcuts_list_create): Set the
5227         accessible object name for the tree view.
5228         (create_file_list): Likewise.
5229
5230 Tue Jul 13 21:53:08 2004  Matthias Clasen  <maclas@gmx.de>
5231
5232         * gtk/gtkicontheme.c (free_unthemed_icon): Don't leak
5233         no_svg_filename.  (#147399, Kjartan Maraas)
5234
5235 2004-07-13  Matthias Clasen  <mclasen@redhat.com>
5236
5237         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_get_neighbor_sizes): 
5238         Make this work in RTL context.
5239
5240 2004-07-13  Federico Mena Quintero  <federico@ximian.com>
5241
5242         * gtk/gtkfilechooserdefault.c (shortcuts_activate_volume): Set a
5243         busy cursor while mounting the volume.  Also, ref the chooser
5244         while mounting, as we may re-enter.  Fixes #139376.
5245
5246 2004-07-13  Matthias Clasen  <mclasen@redhat.com>
5247
5248         * gtk/gtktreeview.c (gtk_tree_view_adjustment_changed): 
5249         Prepare to handle composite implementations of
5250         GtkCellEditable, but recursively poking at
5251         allocation->y (hack stolen from GtkCList).
5252         (check_expander_max): Tweak the warning.
5253
5254         * gtk/gtkmain.h: Add gtk_parse_args(), its a public 
5255         function.  (#147476, Owen Taylor)
5256
5257         * gtk/gtkcombobox.c (gtk_combo_box_popdown): Don't
5258         crash if unrealized.
5259
5260 Tue Jul 13 01:50:06 2004  Matthias Clasen  <maclas@gmx.de>
5261
5262         * gtk/gtkaboutdialog.c (display_credits_dialog): Don't
5263         display untranslated translator credits. 
5264
5265 Tue Jul 13 01:15:05 2004  Matthias Clasen  <maclas@gmx.de>
5266
5267         * gtk/gtkiconview.c: Some documentation updates.
5268
5269 Tue Jul 13 00:40:29 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
5270
5271         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Do an
5272         empty begin_paint_region()/end_paint() for windows without
5273         EXPOSURE_MASK.
5274
5275         * gdk/x11/gdkwindow-x11.c (_gdk_x11_window_tmp_unset_bg,
5276         _gdk_x11_window_tmp_reset_bg): Remove checks for EXPOSURE_MASK.
5277
5278 2004-07-12  Matthias Clasen  <mclasen@redhat.com>
5279
5280         * demos/gtk-demo/appwindow.c: Use a GtkAboutDialog.
5281
5282         * gtk/gtkaboutdialog.h: 
5283         * gtk/gtkaboutdialog.c: New widget: GtkAboutDialog.
5284
5285         * gtk/Makefile.am (gtk_public_h_sources, gtk_c_sources): 
5286         * gtk/gtk.h: Add GtkAboutDialog. (#109435, Paolo Borelli,
5287         patch by Matthias Clasen)
5288
5289         * gtk/gtkrc.c (_gtk_rc_init): Apply the gtk-default-menu-item-style 
5290         to cell view menu items as well.  (#147405, John Cupitt)
5291
5292         * gtk/gtkentrycompletion.c: Warning fixes.  (#147420,
5293         Morten Welinder)
5294
5295         * gtk/gtkcombobox.c (gtk_combo_box_destroy): Pop down 
5296         first. (#147399, John Cupitt)
5297
5298 Mon Jul 12 01:56:26 2004  Matthias Clasen  <maclas@gmx.de>
5299
5300         * gdk/x11/gdkwindow-x11.c (gdk_toplevel_x11_free_contents): 
5301         Include the update_counter check in the HAVE_XSYNC condition,
5302         since update_counter isn't present in the !HAVE_XSYNC case.
5303
5304 Mon Jul 12 00:52:04 2004  Matthias Clasen  <maclas@gmx.de>
5305
5306         * gtk/stock-icons/Makefile.am: 
5307         * gtk/stock-icons/stock_about_{16,24}.png: 
5308         * gtk/stock-icons/stock_connect_{16,24}.png: 
5309         * gtk/stock-icons/stock_disconnect_{16,24}.png: 
5310         * gtk/stock-icons/stock_edit_{16,24}.png: 
5311         * gtk/stock-icons/stock_media_forward_{16,24}.png: 
5312         * gtk/stock-icons/stock_media_next_{16,24}.png: 
5313         * gtk/stock-icons/stock_media_pause_{16,24}.png: 
5314         * gtk/stock-icons/stock_media_play_{16,24}.png: 
5315         * gtk/stock-icons/stock_media_previous_{16,24}.png: 
5316         * gtk/stock-icons/stock_media_record_{16,24}.png: 
5317         * gtk/stock-icons/stock_media_rewind_{16,24}.png: 
5318         * gtk/stock-icons/stock_media_stop_{16,24}.png: 
5319         * gtk/gtkstock.h (GTK_STOCK_ABOUT): 
5320         * gtk/gtkstock.h (GTK_STOCK_CONNECT): 
5321         * gtk/gtkstock.h (GTK_STOCK_DISCONNECT): 
5322         * gtk/gtkstock.h (GTK_STOCK_EDIT): 
5323         * gtk/gtkstock.h (GTK_STOCK_MEDIA_FORWARD): 
5324         * gtk/gtkstock.h (GTK_STOCK_MEDIA_NEXT): 
5325         * gtk/gtkstock.h (GTK_STOCK_MEDIA_PAUSE): 
5326         * gtk/gtkstock.h (GTK_STOCK_MEDIA_PLAY): 
5327         * gtk/gtkstock.h (GTK_STOCK_MEDIA_PREVIOUS): 
5328         * gtk/gtkstock.h (GTK_STOCK_MEDIA_RECORD): 
5329         * gtk/gtkstock.h (GTK_STOCK_MEDIA_REWIND): 
5330         * gtk/gtkstock.h (GTK_STOCK_MEDIA_STOP): 
5331         * gtk/gtkiconfactory.c (get_default_icons): 
5332         * gtk/gtkstock.c (builtin_items): Add a number of new stock 
5333         items.  (#102530, #68015, #109811, Jordi Mallach, Benjamin Otte,
5334         Michael Opdenacker)
5335
5336 Sun Jul 11 15:24:03 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
5337
5338         Bug 143330, support update counter spec.
5339         
5340         * configure.in: Add check for the Sync extension
5341
5342         * gdk/gdkwindow.h: gdk_window_enable_synchronized_configure() and
5343         gdk_window_configure_finished()
5344
5345         * gtk/gtkwindow.c (gtk_window_move_resize): Call gdk_window_finish_configure().
5346         * gtk/gtkwindow.c (gtk_window_realize): Automatically enable
5347         synchronized configures.
5348
5349         * gdk/x11/gdkwindow-x11.h (struct _GdkToplevelX11): Store current
5350         and pending counter values. 
5351
5352         * gdk/x11/gdkwindow-x11.c (gdk_window_configure_finished): New function.
5353         * gdk/x11/gdkwindow-x11.c
5354         (gdk_window_enable_synchronized_configure): New function.
5355         * gdk/x11/gdkwindow-x11.c (gdk_toplevel_x11_free_contents):
5356         Delete update counter.
5357         * gdk/x11/gdkwindow-x11.c (set_wm_protocols): Advertise
5358         _NET_WM_SYNC_REQUEST when Sync is available
5359
5360         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Handle
5361         _NET_WM_SYNC_REQUEST messages
5362         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Save counter
5363         value for use by gdk_window_configure_finished() when receiving
5364         ConfigureNotifies.
5365
5366         * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add use_sync flag
5367         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Check if the XSync
5368         extension is available
5369         * gdk/x11/gdkdisplay-x11.c: Add _NET_WM_SYNC_REQUEST and
5370         _NET_WM_SYNC_REQUEST_COUNTER to list of supported atoms.
5371
5372         * gdk/linux-fb/gdkwindow-fb.c, gdk/win32/gdkwindow-win32.c: Add
5373         stubs for enable_synchronized_configure() and configure_finished()
5374
5375 Sat Jul 10 23:35:13 2004  Matthias Clasen  <maclas@gmx.de>
5376
5377         * gtk/gtkentry.c (paste_received): Make middle-button pasting
5378         work as expected inside the entry.  (#116789, Scott Bronson)
5379
5380 Sat Jul 10 22:13:53 2004  Matthias Clasen  <maclas@gmx.de>
5381
5382         * gtk/gtktextbuffer.c (gtk_text_buffer_select_range): Update 
5383         clipboards.  (#142805, Mikael Hallendal)
5384
5385 Sun Jul 11 01:38:48 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
5386
5387         * gtk/gtkpaned.c (gtk_paned_expose): Remove clip-region computing
5388         code. Just use &paned->handle_pos.
5389
5390 Sun Jul 11 01:12:50 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
5391
5392         Bug 144271
5393         
5394         * gtk/gtknotebook.c (gtk_notebook_size_allocate): Remove an
5395         unnecessary redraw..
5396
5397         * gtk/gtknotebook.c (gtk_notebook_page_allocate): Remove some
5398         incorrect redraws.
5399
5400 Sat Jul 10 01:33:25 2004  Matthias Clasen  <maclas@gmx.de>
5401
5402         * docs/RELEASE-HOWTO: Updates.
5403
5404 Sat Jul 10 01:55:29 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
5405
5406         * gdk/x11/gdkwindow-x11.c (_gdk_x11_window_tmp_{re|un}set_bg):
5407         Insert checks for root window. The root window is never mapped.
5408
5409 Sat Jul 10 01:06:05 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
5410
5411         * gdk/x11/gdkwindow-x11.c (post_unmap): Fix a warning
5412         * gdk/x11/gdkwindow-x11.c (show_window_internal): Actually unset
5413         bg.
5414
5415 Sat Jul 10 00:37:45 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
5416
5417         Bug 113310.
5418         
5419         * gdk/x11/gdkwindow-x11.c (_gdk_x11_window_tmp_{un|re}set_bg):
5420         New functions that can do a recursive unset/reset bg.
5421
5422         * gdk/x11/gdkgeometry-x11.c: Remove
5423         gdk_window_tmp_{un|re}set_bg().
5424
5425         * gdk/x11/gdkwindow-x11.c (pre_unmap, post_unmap): New functions
5426         called before and after unmapping a window. They unset the
5427         background of all other windows to prevent flicker from the X
5428         server repainting the background. post_unmap() also invalidates
5429         the parent of the unmapped window to draw it without roundtrips.
5430
5431         * gdk/x11/gdkwindow-x11.c (show_window_internal): Unset
5432         background of newly mapped windows and all desendants to prevent
5433         flicker.
5434         
5435 Fri Jul  9 15:33:55 2004  Manish Singh  <yosh@gimp.org>
5436
5437         * gdk/gdkevents.c: have a dummy case GDK_OWNER_CHANGE in switch
5438         statements to avoid gcc warnings about not all enum values handled.
5439
5440         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): ignore should live in 
5441         #ifdef HAVE_XFIXES.
5442
5443 Fri Jul  9 23:26:09 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
5444
5445         (Bug 113340)
5446
5447         * gdk/x11/gdkwindow-x11.h (struct _GdkWindowImplX11): Add an
5448         "override_redirect" bit.
5449
5450         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set it here.
5451         
5452         * gdk/x11/gdkwindow-x11.c (gdk_window_move, gdk_window_resize,
5453         gdk_window_move_resize): 
5454         Update the local size/position cache
5455         immediately for override redirect windows.
5456
5457         * gdk/x11/gdkwindow-x11.c (show_window_internal): Invalidate
5458         newly mapped child and override redirect windows.
5459
5460 2004-07-09  Federico Mena Quintero  <federico@ximian.com>
5461
5462         Fixes #137031:
5463
5464         * gtk/gtkfilesystemunix.c (get_fallback_icon): New helper
5465         function, fetches a stock icon as a fallback.
5466         (gtk_file_system_unix_volume_render_icon): Fall back to a stock
5467         icon.
5468         (gtk_file_system_unix_render_icon): Fall back to a stock icon.
5469         Use helper functions rather than being a mega-function.
5470         (get_icon_name_for_directory): Renamed from
5471         get_icon_for_directory().
5472         (get_icon_type_from_path): New helper function; code pulled out
5473         from gtk_file_system_unix_render_icon().
5474         (get_special_icon): Likewise.
5475         (get_icon_for_mime_type): Likewise.
5476
5477 2004-07-09  Federico Mena Quintero  <federico@ximian.com>
5478
5479         * gdk/x11/gdkdnd-x11.c (xdnd_send_xevent): Fix typo; tmp_event ->
5480         temp_event.
5481
5482 2004-07-09  Matthias Clasen  <mclasen@redhat.com>
5483
5484         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Use the 
5485         requisition of the widget instead of relying on the style
5486         drawing function to supply the size of the drawable.  (#146531) 
5487
5488 2004-07-09  Matthias Clasen  <mclasen@redhat.com>
5489
5490         Make GtkEntry work harder to protect passwords:  (#143955,
5491         Morten Welinder)
5492         
5493         * gtk/gtkentry.c (gtk_entry_destroy): Add a destroy handler
5494         to clear the password even if the widget is leaked.
5495
5496         * gtk/gtkentry.c (gtk_entry_real_delete_text): 
5497         * gtk/gtkentry.c (gtk_entry_finalize): Zero out the memory
5498         before freeing it.
5499         
5500         * gtk/gtkentry.c (gtk_entry_real_insert_text): Zero and free
5501         the old memory instead of just reallocating it.
5502
5503         * gtk/gtkentry.c (gtk_entry_create_layout): Don't leak text
5504         direction information for passwords.
5505
5506 2004-07-09  Matthias Clasen  <mclasen@redhat.com>
5507
5508         * gtk/gtkstyle.c: Fix some cases where style functions were 
5509         not handling widget == NULL properly.  (#146282)
5510
5511 Thu Jul  8 22:38:58 2004  Matthias Clasen  <maclas@gmx.de>
5512
5513         * gtk/gtktreeview.c: Improve the EXPANDER_MAX warning.
5514
5515 2004-07-08  Federico Mena Quintero  <federico@ximian.com>
5516
5517         Fix #139290:
5518
5519         * gtk/gtkfilesystemmodel.c (_gtk_file_system_model_new): Add a
5520         GError argument.  Do check for errors when getting the
5521         GtkFileFolder:  get the folder and read the children before
5522         actually creating the model.  Removed obsolete code that handled
5523         roots-changed on the file system.
5524         (file_model_node_get_info): Assert that we don't reach the old
5525         case to display file system roots.
5526         (roots_changed_callback): Removed.
5527
5528         * gtk/gtkfilechooserdefault.c (set_list_model): Add a GError
5529         argument, and a boolean return value.  Return an error if we
5530         cannot create the file system model.  On error, set a NULL model
5531         on the tree.
5532         (gtk_file_chooser_default_set_current_folder): Use the error value
5533         from set_list_model().
5534         (gtk_file_chooser_default_set_property): Set the show_hidden
5535         property only if the browse_files_model exists.
5536         (gtk_file_chooser_default_unselect_path): Only operate if the
5537         browse_files_model exists.
5538         (check_preview_change): Check whether we have the sort_model.
5539         (change_folder_and_display_error): Copy the path we get passed
5540         before using it.  There's a comment in there that explains why we
5541         need to copy it; basically, if the passed path belongs to the
5542         model, the model may go away in the middle of this function and
5543         we'll be left with a dangling pointer.
5544         (install_list_model_filter): Assert that the model is not NULL.
5545         (set_current_filter): Check whether the model exists.
5546
5547         * gtk/gtktreeselection.c (gtk_tree_selection_get_selected): Don't
5548         g_return_if_fail if the model is NULL.
5549         (gtk_tree_selection_get_selected_rows): Likewise.
5550         (gtk_tree_selection_count_selected_rows): Likewise.
5551         (gtk_tree_selection_selected_foreach): Likewise.
5552         (gtk_tree_selection_path_is_selected): Likewise; rather just
5553         return FALSE.
5554         (gtk_tree_selection_select_all): Likewise.
5555         (gtk_tree_selection_unselect_all): Likewise.
5556         (gtk_tree_selection_select_range): Do g_return_if_fail() if the
5557         model is NULL.
5558         (gtk_tree_selection_unselect_range): Likewise.
5559
5560         * gtk/gtkfilesystemunix.c (fill_in_names): Return immediately if
5561         g_dir_open() fails:  there is no need to set the error ourselves,
5562         as g_dir_open() already does it.
5563
5564 2004-07-08  Matthias Clasen  <mclasen@redhat.com>
5565
5566         * gtk/gtktreeview.c (gtk_tree_view_set_search_equal_func): Allow
5567         to restore the default search function.  (#145365, John Finlay) 
5568
5569         * gdk/x11/gdkdnd-x11.c (xdnd_send_xevent): Don't leak 
5570         references to the drag context.  (#144324, Alex Larsson)
5571
5572 Thu Jul  8 00:31:34 2004  Matthias Clasen  <maclas@gmx.de>
5573
5574         * gtk/gtktreeview.c (gtk_tree_view_set_model): Stop editing
5575         when a new model is set.  (#145566, Dmitry M. Shatrov)
5576
5577 Wed Jul  7 23:44:32 2004  Matthias Clasen  <maclas@gmx.de>
5578
5579         * gtk/gtkimage.c (gtk_image_expose): Make sure that subpixbufs
5580         are properly aligned for gdk_pixbuf_saturate_and_pixelate(),
5581         in order to avoid rendering artifacts from misaligned 
5582         pixelation patterns.  (#145585, Felipe Heidrich, Billy Biggs)
5583
5584 2004-07-07  Matthias Clasen  <mclasen@redhat.com>
5585
5586         * gtk/gtktreeview.c: 
5587         * gtk/gtktreeview.h: Small documentation fixes.
5588
5589 2004-07-07  Matthias Clasen  <mclasen@redhat.com>
5590
5591         Support separators in combo boxes and more generally in tree 
5592         views  (#135873):
5593         
5594         * gtk/gtkcombobox.h: 
5595         * gtk/gtkcombobox.c (gtk_combo_box_get_row_separator_column):
5596         * gtk/gtkcombobox.c (gtk_combo_box_set_row_separator_column):
5597         Add a ::row-separator-column property with getter and setter, 
5598         which can indicate a boolean model column to determine which
5599         rows are separators. 
5600
5601         * gtk/gtkcombobox.c: Display separator rows as separator menu 
5602         items in menu mode, and by using the new treeview separator 
5603         functionality in list mode.
5604
5605         * gtk/gtktreeview.h: 
5606         * gtk/gtktreeprivate.h:
5607         * gtk/gtktreeview.c (gtk_tree_view_get_row_separator_func): 
5608         * gtk/gtktreeview.c (gtk_tree_view_set_row_separator_func): 
5609         Add a callback to determine whether a row is a separator.
5610         
5611         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): 
5612         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): 
5613         * gtk/gtktreeview.c (validate_row): Use the new callback
5614         to determine whether a row is a separator, and draw it
5615         as a separator then. Since separators should take up less
5616         vertical space than regular rows, this requires removing
5617         the redundant MAX(...,expander_size) calls which appear in
5618         many places. Instead, the MAX() is now only done in 
5619         validate_row(), and only if the row is not a separator.
5620         To catch possible side effects of this intrusive change,
5621         I have left EXPANDER_MAX() calls in place of the MAX() calls
5622         which will emit a warning if something breaks. They should
5623         be removed before 2.6.
5624
5625         * gtk/gtktreeselection.c (row_is_selectable): Don't let 
5626         separator rows be selected.
5627         
5628         * tests/testcombo.c (create_blaat): Add a separator column.
5629
5630 Tue Jul  6 22:58:00 2004  Matthias Clasen  <maclas@gmx.de>
5631
5632         * gdk/x11/gdkwindow-x11.c (gdk_x11_window_set_user_time): Fix
5633         a 64bit alignment issue.  (#144302, Sunil)
5634
5635 2004-07-07  Tor Lillqvist  <tml@iki.fi>
5636
5637         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text)
5638         * gdk/win32/gdkfont-win32.c (gdk_text_extents)
5639         * gdk/win32/gdkproperty-win32.c (find_common_locale,
5640         gdk_property_change)
5641         * gdk/win32/gdkselection-win32.c (gdk_selection_convert): Use
5642         g_utf8_to_utf16() instead of the removed _gdk_utf8_to_ucs2() (see
5643         below).
5644
5645         * gdk/win32/gdkglobals-win32.c
5646         * gdk/win32/gdkmain-win32.c (_gdk_windowing_init)
5647         * gdk/win3/gdkprivate-win32.h: Add a variable for the TARGETS
5648         atom. Initialize it. Declare it. Drop the variable for the
5649         COMPOUND_TEXT atom.
5650
5651         * gdk/win32/gdkim-win32.c (gdk_wcstombs): Don't return UTF-8. This
5652         function is supposed to return the string in the locale's charset
5653         and encoding. Use g_convert().
5654
5655         (gdk_mbstowcs): Similarily, don't take an UTF-8 string, but a
5656         string in the locale's charset. Use g_convert().
5657
5658         (_gdk_ucs2_to_utf8, _gdk_utf8_to_wcs, _gdk_utf8_to_ucs2):
5659         Delete. The UCS-2 functions didn't handle surrogates anyway. Use
5660         GLib's UTF-16 functions instead. Windows uses UTF-16.
5661
5662         * gdk/win32/gdkprivate-win32.h: Remove declarations of the deleted
5663         functions mentioned above.
5664
5665         * gdk/win32/gdkproperty-win32.c (gdk_property_change): Use CF_TEXT
5666         also if the string is of type STRING, i.e. ISO-8859-1, and the
5667         current codepage is 1252, and contains no C1 chars. Accept
5668         also UTF8_STRING.
5669
5670         * gdk/win32/gdkselection-win32.c (_gdk_selection_property_store):
5671         Mark as static. When storing STRING data, convert to
5672         Latin-1. (#140537)
5673         (gdk_selection_owner_set_for_display): Now that STRING is always
5674         ISO-8859-1, use UTF8_STRING when sending the selection request
5675         to ourselves.
5676
5677         (gdk_selection_convert): Handle also UTF8_STRING. (#140537, John
5678         Ehresman)
5679
5680         (gdk_text_property_to_text_list_for_display): Make work more like
5681         X11 version. Do obey the encoding parameter.
5682
5683         (gdk_string_to_compound_text_for_display,
5684         gdk_utf8_to_compound_text_for_display): Don't even pretend
5685         supporting COMPOUND_TEXT.
5686
5687         (gdk_utf8_to_string_target): Convert to ISO-8859-1, like on X11.
5688
5689         (sanitize_utf8): Zero-terminate string.
5690
5691 2004-07-06  Matthias Clasen  <mclasen@redhat.com>
5692
5693         * gtk/stock-icons/Makefile.am: Add stock_file_16.png, 
5694         stock_file_24.png, stock_directory_16.png and stock_directory_24.png.
5695
5696         * gtk/gtkstock.h (GTK_STOCK_FILE, GTK_STOCK_DIRECTORY): 
5697         * gtk/gtkiconfactory.c (get_default_icons): New stock icons as 
5698         fallbacks for gtkfilechooser. Currently these are the same images
5699         as the "new" and "open" items...
5700
5701 Tue Jul  6 10:00:22 2004  Jonathan Blandford  <jrb@redhat.com>
5702
5703         Fix for #136496, Pawel Salek:
5704         
5705         * gtk/gtktreeview.c (gtk_tree_view_row_changed): Queue a redraw on
5706         a node when it changes in fixed_height mode.
5707
5708         (gtk_tree_view_node_queue_redraw): new function to queue a redraw
5709         on a node.
5710
5711 2004-07-06  Matthias Clasen  <mclasen@redhat.com>
5712
5713         * gtk/gtkmenu.c (gtk_menu_position): Make sure 
5714         private->monitor_num is a valid monitor number before 
5715         using it.  (#139187, Michael Natterer)
5716
5717 Tue Jul  6 02:00:28 2004  Matthias Clasen  <maclas@gmx.de>
5718
5719         * gtk/gtkfilechooserdefault.c (popup_position_func): 
5720         * gtk/gtkentry.c (popup_position_func): 
5721         * gtk/gtktextview.c (popup_position_func): Improve positioning
5722         of keyboard-activated menus with Xinerama.
5723
5724 Tue Jul  6 00:29:03 2004  Matthias Clasen  <maclas@gmx.de>
5725
5726         * gtk/gtkuimanager.c (do_updates): 
5727         (do_updates_idle): Only call GDK_THREADS_ENTER() / _LEAVE() 
5728         when called from an idle handler.  (#145429, Jan-Marek Glogowski)
5729
5730 Mon Jul  5 23:47:38 2004  Matthias Clasen  <maclas@gmx.de>
5731
5732         * gtk/gtkfilechooserutils.c (delegate_notify): Use
5733         the less efficient g_object_interface_find_property () instead
5734         of the param_id range check, since the GParamSpecs we're 
5735         dealing with are the overridden onces on the interface, whose
5736         param_id is always zero.  (#145312, Alex Roitman, fix proposed
5737         by Owen Taylor)
5738
5739 2004-07-05  Lorenzo Gil Sanchez  <lgs@sicem.biz>
5740
5741         * gtk/gtklayout.c (gtk_layout_add): added a default method for the add
5742         virtual method of GtkContainer.
5743         (gtk_layout_class_init): assign gtk_layout_add to the 'add' virtual
5744         method slot of the container class.
5745
5746 2004-07-05  Anders Carlsson  <andersca@gnome.org>
5747
5748         * gtk/gtkiconview.c: (gtk_icon_view_set_markup_column):
5749         * gtk/gtkiconview.h:
5750         Use gint, not int in gtk_icon_view_set_markup_column,
5751         (Paolo Maggi)
5752         
5753 2004-07-05  Anders Carlsson  <andersca@gnome.org>
5754
5755         * gtk/gtkiconview.c: (gtk_icon_view_class_init),
5756         (gtk_icon_view_real_select_cursor_item),
5757         (gtk_icon_view_real_activate_cursor_item):
5758         * gtk/gtkiconview.h:
5759         Add an "activate_cursor_item" action signal
5760         and bind it to the return key.
5761         
5762 2004-07-04  Anders Carlsson  <andersca@gnome.org>
5763
5764         * demos/gtk-demo/Makefile.am:
5765         * demos/gtk-demo/gnome-fs-directory.png:
5766         * demos/gtk-demo/gnome-fs-regular.png:
5767         * demos/gtk-demo/iconview.c: (load_pixbufs), (fill_store),
5768         (sort_func), (create_store), (item_activated), (up_clicked),
5769         (home_clicked), (do_iconview):
5770         Add a simple file browser based on the icon view.
5771         
5772         * gtk/gtk.h:
5773         Add gtk/gtkiconview.h
5774         
5775         * gtk/gtkiconview.c: (gtk_icon_view_layout),
5776         (gtk_icon_view_item_new), (gtk_icon_view_item_activated):
5777         Fix a few bugs discovered while writing the demo.
5778         
5779 2004-07-04  Anders Carlsson  <andersca@gnome.org>
5780
5781         * gtk/Makefile.am:
5782         * gtk/gtkiconview.c
5783         * gtk/gtkiconview.h:
5784         Add GtkIconView to the build, remove debugging output.
5785         
5786 Sun Jul  4 01:29:35 2004  Matthias Clasen  <maclas@gmx.de>
5787
5788         * gtk/gtkcalendar.c (gtk_calendar_drag_data_get): 
5789         (gtk_calendar_drag_data_received): Fix off-by-one error.  
5790         GDate month is one-based and GtkCalendar month is zero-based.  
5791         (#145134, William Jon McCann)
5792
5793 Sun Jul  4 01:11:07 2004  Matthias Clasen  <maclas@gmx.de>
5794
5795         * gtk/gtktreestore.c (gtk_tree_store_move): Don't crash if
5796         somebody tries to move a node after itself in a list of 
5797         length 1.  (#145291, Sampo Nurmentaus)
5798
5799 Sat Jul  3 23:43:23 2004  Matthias Clasen  <maclas@gmx.de>
5800
5801         * docs/faq/gtk-faq.sgml: 
5802         * gtk/gtkwindow.c: Fix links to www.freedesktop.org.  (#145210,
5803         Billy Biggs)
5804
5805 Sat Jul  3 02:09:51 2004  Matthias Clasen  <maclas@gmx.de>
5806
5807         * gtk/gtksocket.c (gtk_socket_end_embedding): Reset current_width
5808         and current_height to 0 when ending the embedding.  (#143675,
5809         Nickolay V. Shmyrev)
5810
5811 Sat Jul  3 01:48:19 2004  Matthias Clasen  <maclas@gmx.de>
5812
5813         * gtk/gtkentry.c (gtk_entry_move_visually): Let the cursor move
5814         to the right end of the entry text, even if it ends in combining
5815         marks.  (#141728, Theppitak Karoonboonyanan)
5816
5817 Fri Jul  2 23:34:33 2004  Matthias Clasen  <maclas@gmx.de>
5818
5819         * gtk/gtkcombobox.c (gtk_combo_box_unset_model): Unset the displayed
5820         row when unsetting the model.  (#138560, Christian Persch)
5821
5822 Fri Jul  2 23:01:07 2004  Matthias Clasen  <maclas@gmx.de>
5823
5824         * gtk/gtkcombobox.c (update_menu_sensitivity): Don't crash if there
5825         are no items.
5826
5827 Fri Jul  2 22:41:27 2004  Matthias Clasen  <maclas@gmx.de>
5828
5829         * gtk/gtkimage.c (gtk_image_expose): Properly align mask and
5830         pixbuf if a subarea is exposed.  (#135423, fix by John Ehresman)
5831
5832 Fri Jul  2 21:40:21 2004  Matthias Clasen  <maclas@gmx.de>
5833
5834         * gtk/gtknotebook.c (gtk_notebook_realize): Add scroll events
5835         to the event mask, set a scroll_event handler.
5836         * gtk/gtknotebook.c (gtk_notebook_scroll): Handle scroll events
5837         by switching tabs.  (#145244, Gabriel de Perthuis)
5838
5839 2004-07-02  Anders Carlsson  <andersca@gnome.org>
5840
5841         * gtk/gtktreeview.c (gtk_tree_view_set_model): 
5842         Make sure we check for a NULL model first.
5843
5844 2004-07-01  J. Ali Harlow  <ali@juiblex.co.uk>
5845
5846         * gdk/win32/gdkinput-win32.c (_gdk_input_ungrab_pointer): Fix
5847         win32 build problem w/o wintab.  Fixed #145242
5848
5849 2004-06-30  Anders Carlsson  <andersca@gnome.org>
5850
5851         * gtk/gtktreeview.c (gtk_tree_view_set_model): Use
5852         g_return_if_fail to make sure that the model is a GtkTreeModel.
5853
5854 Sat Jun 26 17:41:10 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
5855
5856         * gtk/gtk[hv]separator.c (gtk_[hv]separator_expose): Draw line with the
5857         current state, not GTK_STATE_NORMAL
5858
5859         * gtk/gtkframe.c (gtk_frame_paint): Fix a rounding error
5860
5861 Sat Jun 26 15:07:25 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
5862
5863         * gtk/gtkstyle.c, gtk/gtkrc.c: small color tweak. (#141173)
5864
5865 Sat Jun 26 01:15:40 2004  Matthias Clasen  <maclas@gmx.de>
5866
5867         * gdk/x11/gdkwindow-x11.c (set_initial_hints): Handle
5868         _NET_WM_STATE_ABOVE and _NET_WM_STATE_BELOW.  (#144851, 
5869         Billy Biggs)
5870
5871 Sat Jun 26 01:04:31 2004  Matthias Clasen  <maclas@gmx.de>
5872
5873         * gtk/gtkiconfactory.c (clear_cache): Prevent unwanted 
5874         recursion by resetting icon_set->cache before freeing
5875         the cache.  (#144947, Tim Janik)
5876
5877 Sat Jun 26 00:40:02 2004  Matthias Clasen  <maclas@gmx.de>
5878
5879         * gtk/gtkiconfactory.c (render_icon_name_pixbuf): 
5880         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): 
5881         * gtk/gtkstyle.c (gtk_default_render_icon): Accept a NULL 
5882         style.
5883
5884 Sat Jun 26 00:04:36 2004  Matthias Clasen  <maclas@gmx.de>
5885
5886         * gtk/gtkentrycompletion.c (gtk_entry_completion_set_model): 
5887         * gtk/gtkcombobox.c (gtk_combo_box_set_model): Reflect the 
5888         last change in the docs.
5889
5890 Fri Jun 25 23:35:42 2004  Matthias Clasen  <maclas@gmx.de>
5891
5892         * gtk/gtkentrycompletion.c (gtk_entry_completion_set_model):
5893         * gtk/gtkcombobox.c (gtk_combo_box_set_model): Allow passing
5894         NULL to unset the model.  (#137211, patch by  Mariano Suárez-Alvarez)
5895
5896 Fri Jun 25 23:33:05 2004  Matthias Clasen  <maclas@gmx.de>
5897
5898         * gtk/gtkcombobox.c (gtk_combo_box_menu_position_below): Fix the
5899         placement policy for GtkComboBoxEntry to be: if it fits below, 
5900         place below, if it fits above place above, else place in the 
5901         larger space and scroll so that the scroll arrow appear at the
5902         far end.  (#144362, David A. Knight)
5903
5904 Fri Jun 25 22:49:58 2004  Matthias Clasen  <maclas@gmx.de>
5905
5906         * gtk/gtktreestore.c (gtk_tree_store_move): Avoid uninitialized
5907         use of &parent_iter. (#145007, John Finlay)
5908
5909 2004-06-25  Bastien Nocera  <hadess@hadess.net>
5910
5911         reviewed by: Matthias Clasen  <maclas@gmx.de>
5912
5913         * gdk/x11/gdkkeys-x11.c: (get_symbol), (update_keymaps),
5914         (gdk_keymap_lookup_key), (translate_keysym): fix keys parsing when
5915         the number of keysyms per keycode is odd. Fixes #144808.
5916
5917 2004-06-25  Matthias Clasen  <mclasen@redhat.com>
5918
5919         * gtk/gtkfontbutton.c (gtk_font_button_update_font_info): Avoid
5920         a crash if the font doesn't exist.  (#144967, Yevgen Muntyan) 
5921
5922 Fri Jun 25 00:32:15 2004  Matthias Clasen  <maclas@gmx.de>
5923
5924         * gtk/gtktreestore.c (gtk_tree_store_swap): Commit the change
5925         which was mentioned below.
5926
5927 Thu Jun 24 23:35:09 2004  Matthias Clasen  <maclas@gmx.de>
5928
5929         * gtk/gtknotebook.c (gtk_notebook_class_init): Fix a typo,
5930         string change.  (#139503, Baris Cicek)
5931
5932 2004-06-22  Federico Mena Quintero  <federico@ximian.com>
5933
5934         * gtk/gtkfilechooserdefault.c (location_popup_handler): Use a Save
5935         or an Open stock button for the C-l dialog depending on the action
5936         in which the file chooser operates.  Fixes #141753.
5937
5938 2004-06-22  Federico Mena Quintero  <federico@ximian.com>
5939
5940         Fixes the GTK+ part of #142308:
5941
5942         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_filename_to_path):
5943         Use filename_to_path().
5944         (gtk_file_system_unix_uri_to_path): Likewise.
5945         (filename_to_path): Use remove_trailing_slash().
5946
5947 2004-06-22  Matthias Clasen  <mclasen@redhat.com>
5948
5949         * gtk/gtktextview.c (gtk_text_view_class_init): Improve docs
5950         for the ::move_cursor signal.
5951
5952         * gtk/gtkaccelmap.c (_gtk_accel_path_is_valid): Accept
5953         "<WINDOWTYPE>" as a valid accel path.  (#144427, Philip 
5954         Kendall)        
5955
5956         * gtk/gtkselection.c (GTK_SELECTION_MAX_SIZE): Make sure 
5957         this gets defined for all backends, so linux-fb has a 
5958         chance of compiling.
5959
5960         * gdk/x11/gdkgc-x11.c: 
5961         * gdk/gdkgc.c: Move function docs inline, add hints about 
5962         obtaining rgb colors from gcs.  (#144688, Steve Chaplin)
5963
5964         * gtk/gtktreestore.c (gtk_tree_store_swap): Make this work
5965         for children of the root.  (#139785, Jean-François Wauthy,
5966         patch by John Finlay)
5967
5968         * gtk/gtkicontheme.h (GTK_ICON_THEME_GET_CLASS): Typo
5969         fix.  (#144750, Jeff Franks) 
5970
5971 2004-06-21  Michael Natterer  <mitch@gimp.org>
5972         Merge from stable:
5973
5974         * gdk/x11/gdkdrawable-x11.[ch]: made convert_format() utility
5975         function public as _gdk_x11_convert_to_format().
5976
5977         * gdk/x11/gdkcursor-x11.c (create_cursor_image): premultiply
5978         the pixels from the GdkPixbuf when putting them in the
5979         Xcursor image. Fixes bug #144350.
5980
5981 2004-06-16  Federico Mena Quintero  <federico@ximian.com>
5982
5983         * gtk/gtkfilesystemmodel.c (do_files_added): When inserting a
5984         visible node, free the old path before creating the new one.
5985         Fixes #144356.
5986
5987 Tue Jun 15 01:10:32 2004  Matthias Clasen  <maclas@gmx.de>
5988
5989         * gtk/gtkcombobox.c: Make GtkComboBox work without model.  
5990         (#144198, Mariano Suárez-Alvarez)
5991         
5992 Fri Jun 11 22:05:56 2004  Matthias Clasen  <maclas@gmx.de>
5993
5994         * gtk/gtkfilechooserdefault.c: Don't use
5995         contractions like "don't" or "isn't" in error messages.
5996         It isn't nice to use them in log entries either...
5997         (#137774, Morten Welinder, patch by Alexander Winston)
5998
5999 2004-06-11  Federico Mena Quintero  <federico@ximian.com>
6000
6001         Fixes #143578:
6002
6003         * gtk/gtkfilesystemmodel.c (_gtk_file_system_model_add_editable):
6004         Don't ref the editable node.
6005         (_gtk_file_system_model_remove_editable): Don't unref the editable node.
6006         (_gtk_file_system_model_remove_editable): Ahem, free the node.
6007
6008         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
6009         Added fields for edited_idle and edited_new_text.
6010         (renderer_edited_cb): Queue the
6011         creation of the folder in an idle handler.
6012         (renderer_editing_canceled_cb): Likewise for the cancellation.
6013         (gtk_file_chooser_default_finalize): Free the impl->edited_new_text.
6014
6015 Thu Jun 10 22:12:26 2004  Matthias Clasen  <maclas@gmx.de>
6016
6017         * gtk/gtkmain.c (gtk_parse_args): Typo fix.
6018
6019 2004-06-10  Federico Mena Quintero  <federico@ximian.com>
6020
6021         Fixes #144110, patch by Bastien Nocera <hadess@hadess.net>.
6022
6023         * gtk/gtkfilechooser.c (gtk_file_chooser_list_shortcut_folders):
6024         Refer to gtk_file_chooser_add_shortcut_folder().
6025         (gtk_file_chooser_list_shortcut_folder_uris): Refer to
6026         gtk_file_chooser_add_shortcut_folder_uri().
6027
6028 Thu Jun 10 00:36:15 2004  Matthias Clasen  <maclas@gmx.de>
6029
6030         * gtk/gtkcalendar.c (gtk_calendar_main_button): Start 
6031         the drag before focusing the selected.day.
6032         * gtk/gtkcalendar.c (gtk_calendar_state_changed): Stop
6033         a beginning drag if the widget becomes insensitive.
6034
6035 Thu Jun 10 00:09:06 2004  Matthias Clasen  <maclas@gmx.de>
6036
6037         * gtk/gtkcalendar.c (gtk_calendar_button_press): Start 
6038         spinning before calling arrow_action(), so that a signal
6039         handler triggered from arrow_action() has a chance to 
6040         stop the spinning.  (#143966, Davyd Madeley)
6041
6042 Wed Jun  9 23:11:23 2004  Matthias Clasen  <maclas@gmx.de>
6043
6044         * gtk/gtkstyle.c (_gtk_style_init_for_settings): Fix a 
6045         typo.  (#144070, Kent Sandvik)
6046
6047 Thu Jun 10 00:22:51 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
6048
6049         * gtk/gtkmenu.c: Revert the "drag select" part of
6050         #141169. (#144011).
6051
6052 Mon Jun  7 23:07:40 2004  Matthias Clasen  <maclas@gmx.de>
6053
6054         * gtk/gtkcombobox.c (gtk_combo_box_remeasure): Handle
6055         priv->model being NULL.  (#143856, Mariano Suárez-Alvarez)
6056
6057 2004-06-07  Federico Mena Quintero  <federico@ximian.com>
6058
6059         * gtk/gtktreeview.c (gtk_tree_view_button_press): Revert the patch
6060         from 2003/Sep/12.  This kept DnD in tree views within modal
6061         dialogs from working, which is especially bad for the file
6062         chooser.  Fixes #135168.
6063
6064 Sun Jun  6 23:57:21 2004  Matthias Clasen  <maclas@gmx.de>
6065
6066         Make the entry context menu work in editable text cells. The changes
6067         are based on a patch by Kristian Rietveld, which implemented an 
6068         approach outlined by Owen Taylor.  (#50075)
6069         
6070         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_focus_out_event): 
6071         Ignore focus out if the entry menu is posted.
6072         (gtk_cell_renderer_text_populate_popup): Mark the entry menu as 
6073         posted, and set up a signal handler to clear the flag if the menu 
6074         is unmapped.
6075         (gtk_cell_renderer_text_popup_unmap): Clear the in_entry_menu flag, 
6076         set up a timeout to stop editing if the focus is lost.
6077         (popdown_timeout): Stop editing if the entry doesn't have focus anymore.
6078         (gtk_cell_renderer_text_start_editing): Connect to the populate_popup 
6079         signal on the entry and keep a pointer to the entry.
6080         (gtk_cell_renderer_text_editing_done): Disconnect from popuplate_popup, 
6081         clear the pointer to the entry.
6082
6083 Sun Jun  6 23:24:43 2004  Matthias Clasen  <maclas@gmx.de>
6084
6085         * gtk/gtktexttag.c (gtk_text_tag_class_init): Improve the description
6086         of the ::language property.  (#143802, Owen Taylor)
6087
6088 Sat Jun  5 23:07:30 2004  Matthias Clasen  <maclas@gmx.de>
6089
6090         * gtk/gtkentrycompletion.c: (gtk_entry_completion_init),
6091         (gtk_entry_completion_list_enter_notify),
6092         (gtk_entry_completion_list_motion_notify),
6093         (_gtk_entry_completion_popup), (_gtk_entry_completion_popdown):
6094         * gtk/gtkentryprivate.h: Add an ignore_enter flag and
6095         use it as in the menu code to avoid the initial selection if
6096         the window pops up under the pointer.  (Anders Carlsson)
6097
6098 Sat Jun  5 20:05:39 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
6099
6100         * tests/testmerge.c: Add a checkbox to queue an
6101         merge/unmerge. Patch from Matthias Clasen.
6102
6103         * gtk/gtktoolbar.c (struct _GtkToolbarPrivate): Add a new flag
6104         "need_rebuild"
6105         (rebuild_menu): New function that rebuilds the overflow menu and
6106         makes sure it doesn't start or end with a separator.
6107         (toolbar_content_new_tool_item)
6108         (toolbar_content_remove)
6109         (toolbar_content_new_compatibility): Set the rebuild_needed flag
6110         (gtk_toolbar_size_allocate): Only show the overflow arrow when we
6111         have actually overflown an item with a proxy menu item. Also make
6112         sure we rebuild the menu if needed.
6113
6114         Fix #125504, #142377, #143463
6115         
6116         * gtk/gtkseparatortoolitem.c (gtk_separator_tool_item_expose):
6117         Obey the "priv->draw" flag. (#143692)
6118
6119 2004-06-04  Matthias Clasen  <mclasen@redhat.com>
6120
6121         * docs/widget_geometry.txt: Add a note about the !CAN_FOCUS
6122         quirk in the button size allocation code.
6123
6124         * gtk/gtkbutton.c (gtk_button_size_allocate): Give the space
6125         requested for drawing the focus indicator to the child in the
6126         !CAN_FOCUS case. This should fix issues which the Gimp has with 
6127         the button allocation changes in 2.4.2.
6128
6129 Thu Jun  3 21:17:29 2004  Matthias Clasen  <maclas@gmx.de>
6130
6131         * gtk/gtkentry.c (gtk_entry_completion_timeout): Calculate the
6132         length of the entry contents in characters, not in bytes.
6133
6134         * gtk/gtkentry.c (paste_received): Don't pop up the completion
6135         window on paste, noticed by Anders Carlsson.
6136
6137 Thu Jun  3 20:56:19 2004  Matthias Clasen  <maclas@gmx.de>
6138
6139         * gtk/gtkcombobox.c (gtk_combo_box_class_init): Fix the allowed
6140         values and default value for the ::active property.  (#143669,
6141         Olivier Andrieu)
6142
6143 2004-06-03  Michael Natterer  <mitch@gimp.org>
6144
6145         * gtk/gtkimagemenuitem.c: use gtk_widget_get_child_requisition()
6146         instead of accessing item->image->allocation.width/height
6147         directly. Makes widgets which only have a requisition set using
6148         gtk_widget_set_size_request() work and fixes bug #142789.
6149
6150 Thu Jun  3 08:07:59 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
6151
6152         * gtk/gtkmenu.c: Revert previous commit. It caused the problem
6153         of sticky right click menus to return.
6154
6155 Wed Jun  2 01:56:02 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
6156
6157         * gtk/gtkmenu.c: Fix the stay up algorithm for combo boxes to
6158         better handle the "click" case. bug  Better fix for #141169.
6159
6160 2004-06-02  Federico Mena Quintero  <federico@ximian.com>
6161
6162         * gtk/gtktreeview.c (gtk_tree_view_search_init): Bail out if the
6163         model is empty.  Fixes #143536.
6164
6165 2004-06-02  Matthias Clasen  <mclasen@redhat.com>
6166
6167         * gtk/gtkfontsel.c (gtk_font_selection_size_focus_out): Don't
6168         close the dialog on focus out of the size entry.  (#143505, 
6169         David Hawthorne)
6170
6171 2004-06-02  Federico Mena Quintero  <federico@ximian.com>
6172
6173         Fix #138807.
6174
6175         * gtk/fnmatch.c (_gtk_fnmatch): Take a no_leading_period argument.
6176         (gtk_fnmatch_intern): Likewise; also implement this option.
6177
6178         * gtk/gtkprivate.h (_gtk_fnmatch): Updated prototype.
6179
6180         * gtk/gtkfilesel.c (find_completion_dir): Pass TRUE for the
6181         no_leading_period argument of _gtk_fnmatch().
6182         (attempt_file_completion): Likewise.
6183
6184         * gtk/gtkfilefilter.c (gtk_file_filter_filter): Pass FALSE for the
6185         no_leading_period argument of _gtk_fnmatch().
6186
6187 Wed Jun  2 00:47:11 2004  Matthias Clasen  <maclas@gmx.de>
6188
6189         * gtk/gtkselection.c (_gtk_selection_request): Remove leftover
6190         debug code.
6191
6192 Wed Jun  2 00:13:57 2004  Matthias Clasen  <maclas@gmx.de>
6193
6194         * gtk/gtktreeselection.c (gtk_tree_selection_select_range): Don't
6195         allow unless selection mode is multiple.  (#142634, John Finlay)
6196
6197 Tue Jun  1 23:00:20 2004  Matthias Clasen  <maclas@gmx.de>
6198
6199         * gtk/gtktoolbar.h: 
6200         * gtk/gtktoolbar.c: 
6201         * gtk/gtkentrycompletion.h: 
6202         * gtk/gtkentrycompletion.c: 
6203         * gtk/gtkcombobox.h: 
6204         * gtk/gtkcombobox.c: Rename function parameters from
6205         index to index_ to prevent clash with BSD index().  (#143001)
6206
6207 Tue Jun  1 22:45:42 2004  Matthias Clasen  <maclas@gmx.de>
6208
6209         * gtk/gtkmenu.c (get_accel_path): Handle accel_closure being
6210         NULL on an accel label. (#139641, Sam Stephenson, patch by 
6211         Michael Natterer)
6212
6213 Tue Jun  1 22:19:55 2004  Matthias Clasen  <maclas@gmx.de>
6214
6215         * gtk/gtkicontheme.c (theme_subdir_load):  Prevent icon 
6216         lookup finding icons in the wrong prefix.  (#143328,
6217         Mark McLoughlin)
6218
6219 Wed Jun  2 00:39:58 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
6220
6221         Bug #141169.
6222
6223         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Make menus
6224         only stay up if you release within 500 milliseconds.
6225         (gtk_menu_shell_button_press): Set the activate_time to the event
6226         time when a button is pressed.
6227
6228         * gtk/gtkmenu.c (gtk_menu_motion_notify, gtk_menu_enter_notify):
6229         Interprete button releases as activate when we have seen both an
6230         enter an a motion event.
6231
6232 2004-06-01  Federico Mena Quintero  <federico@ximian.com>
6233
6234         * gtk/gtkfilesystemmodel.c (do_files_removed): Don't insert a
6235         dummy node if there is no parent node.  Fixes #143362.
6236
6237 2004-05-31  Federico Mena Quintero  <federico@ximian.com>
6238
6239         * gtk/gtkfilechooserdefault.c (renderer_edited_cb): Change to the
6240         newly-created folder.  Fixes #138932.
6241         (trap_activate_cb): Only return TRUE if we did handle the event.
6242         Fixes #143359; patch by jylefort@brutele.be.
6243
6244 Mon May 31 02:39:32 2004  Matthias Clasen  <maclas@gmx.de>
6245
6246         * gtk/gtkimage.c (gtk_image_new_from_pixmap): Fix typo in 
6247         docs.  (#142892, Tommi Komulainen)
6248
6249 Mon May 31 02:16:37 2004  Matthias Clasen  <maclas@gmx.de>
6250
6251         * gtk/gtkhandlebox.c: Make detached handleboxes work when their
6252         parent is minimized, porting the fix from 1.2.  (#1923, #57182)
6253
6254 Mon May 31 02:03:17 2004  Matthias Clasen  <maclas@gmx.de>
6255
6256         * gtk/gtkwindow.c (gtk_window_show): Make moving realized, 
6257         unmapped windows work. 
6258
6259 Mon May 31 00:27:33 2004  Matthias Clasen  <maclas@gmx.de>
6260
6261         * gtk/gtkfilechooserutils.c (_gtk_file_chooser_set_delegate): Fix
6262         a typo.
6263
6264 Mon May 31 00:23:55 2004  Matthias Clasen  <maclas@gmx.de>
6265
6266         * gtk/gtkfilechooser.c (gtk_file_chooser_set_preview_widget): 
6267         Refer to ::update-preview, not ::selection-changed.
6268
6269 2004-05-29  Christian Rose  <menthos@menthos.com>
6270  
6271         * configure.in: Added "tk" to ALL_LINGUAS.
6272  
6273 Fri May 28 15:00:01 2004  Matthias Clasen  <maclas@gmx.de>
6274
6275         * gtk/gtkwidget.c (gtk_widget_set_parent): Add informative
6276         messages for common problems.  (#137974, Owen Taylor)
6277
6278 Fri May 28 14:20:17 2004  Matthias Clasen  <maclas@gmx.de>
6279
6280         * gdk/x11/gdkevents-x11.c: Fix off-by-one allocation 
6281         errors. (#143337, Billy Biggs) 
6282
6283 Thu May 27 16:36:22 2004  Owen Taylor  <otaylor@redhat.com>
6284
6285         * gdk/x11/gdkcolor-x11.c (gdk_colormap_alloc_colors): Set
6286         bits within visual->depth that aren't used for color to
6287         1s, in case they are alpha.
6288
6289 2004-05-27  Anders Carlsson  <andersca@gnome.org>
6290
6291         * gtk/gtkfilechooserdefault.c (save_folder_combo_create): 
6292         Make separator rows insensitive.
6293
6294 Thu May 27 00:48:16 2004  Matthias Clasen  <maclas@gmx.de>
6295
6296         * gtk/gtkentrycompletion.c (gtk_entry_completion_set_text_column): 
6297         Add more docs.
6298
6299 Thu May 27 00:45:07 2004  Matthias Clasen  <maclas@gmx.de>
6300
6301         * gtk/gtkentrycompletion.h:
6302         * gtk/gtkentrycompletion.c (gtk_entry_completion_get_text_column): 
6303         Getter for text_column. Also make ::text_column a property.
6304
6305 Thu May 27 00:11:01 2004  Matthias Clasen  <maclas@gmx.de>
6306
6307         * gtk/gtkmenuitem.c (gtk_menu_item_size_request): Fix a typo.
6308
6309 Thu May 27 00:07:47 2004  Jonathan Blandford  <jrb@gnome.org>
6310
6311         * gtk/gtkcombobox.c (gtk_combo_box_list_destroy): only remove the
6312         signal if the box exists.
6313
6314 Wed May 26 23:26:51 2004  Matthias Clasen  <maclas@gmx.de>
6315
6316         Support insensitive cells in tree views and combo boxes:
6317         
6318         * gtk/gtkcellrenderer.h: 
6319         * gtk/gtkcellrenderer.c: Add a ::sensitive property.
6320
6321         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): 
6322         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): 
6323         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render): 
6324         Support drawing insensitive.
6325
6326         * gtk/gtkcellview.h: 
6327         * gtk/gtkcellview.c (gtk_cell_view_get_cell_renderers): New 
6328         function to obtain the cell renderers from a cell view. Also
6329         export gtk_cell_view_set_cell_data().
6330
6331         * gtk/gtktreeselection.c (tree_column_is_sensitive):
6332         * gtk/gtktreeselection.c (row_is_selectable): Helper functions
6333         to determine whether all visible cells in a row are insensitive
6334         and whether a row is selectable. A row is not selectable if the 
6335         user function says so or if all visible cells are insensitive.
6336         * gtk/gtktreeselection.c (_gtk_tree_selection_internal_select_node): 
6337         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node): 
6338         Use row_is_selectable().
6339         
6340         * gtk/gtkcombobox.c (row_is_sensitive): 
6341         * gtk/gtkcombobox.c (tree_column_row_is_sensitive): 
6342         * gtk/gtkcombobox.c (menu_row_is_sensitive): Helper functions
6343         to determine row sensitivity in menu or list mode.
6344
6345         * gtk/gtkcombobox.c (update_menu_sensitivity): Helper function
6346         to set up sensitivity menu items from the underlying rows.
6347
6348         * gtk/gtkcombobox.c (gtk_combo_box_popup): 
6349         * gtk/gtkcombobox.c (gtk_combo_box_menu_button_press): Use
6350         update_menu_sensitivity().
6351                 
6352         * gtk/gtkcombobox.c (gtk_combo_box_list_setup): Setup the cell
6353         data funcs.
6354
6355         * gtk/gtkcombobox.c (gtk_combo_box_key_press): Skip insensitive
6356         rows.
6357
6358         * tests/testcombo.c (main): Make some rows insensitive.
6359
6360 2004-05-26  Robert Ögren  <gtk@roboros.com>
6361
6362         * gdk/win32/gdkinput-win32.c (_gdk_input_other_event): Send key
6363         modifiers (shift, ctrl etc) in button and motion events from the
6364         tablet. (#143240)
6365
6366 2004-05-26  Robert Ögren  <gtk@roboros.com>
6367
6368         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): Simple
6369         implementation for extended input devices using last known 
6370         device state (#143237)
6371
6372 Tue May 25 21:54:00 2004  Matthias Clasen  <maclas@gmx.de>
6373
6374         * gtk/gtkframe.c: Move docs inline, fixing them on the
6375         way.  (#143029, Steve Chaplin)
6376
6377 2004-05-11  Robert Ögren  <gtk@roboros.com>
6378
6379         * gdk/win32/gdkevents-win32.c (propagate): Don't propagate mouse
6380         events to windows that want extended input events. (#142943)
6381         (gdk_event_translate): Move check for extended input devices to
6382         propagate, new parameter to propagate.
6383         (gdk_pointer_grab, gdk_display_pointer_ungrab): Enable calls to
6384         _gdk_input_(un)grab_pointer. (#142943)
6385
6386         * gdk/win32/gdkinput-win32.c (_gdk_input_other_event): Check for
6387         input grab. [Fix missing update of impl in "dijkstra" event
6388         propagation loop] Drop the parallel "impl" pointer, just use a
6389         cast. Don't propagate beyond windows that want normal input
6390         events. (#142943)
6391         (gdk_input_grab_pointer, gdk_input_ungrab_pointer): Limited
6392         implementation of input grab. (#142943)
6393
6394 2004-05-22  Tor Lillqvist  <tml@iki.fi>
6395
6396         * gdk/win32/gdkinput-win32.c (print_lc): Remove duplicated
6397         line. (Spotted by Benoît Carpentier.)
6398
6399 2004-05-18  Matthias Clasen  <mclasen@redhat.com>
6400
6401         * configure.in: Check for XFIXES extension.
6402
6403         * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add 
6404         a gboolean have_xfixes member.
6405
6406         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Register
6407         XFIXES events and set have_xfixes.
6408
6409         * gdk/gdkevents.h (GdkEventType): Add GDK_OWNER_CHANGE.
6410         (GdkEventOwnerChange): New event struct for owner change events.
6411         (GdkOwnerChange): New enum for the reason field of GdkEventOwnerChange.
6412         
6413         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Translate 
6414         XFixesSelectionNotify events into GdkEventOwnerChange events.
6415         
6416         * gdk/gdkdisplay.h:
6417         * gdk/x11/gdkdisplay-x11.c (gdk_display_supports_selection_notification):
6418         (gdk_display_request_selection_notification): New api 
6419         to support selection ownership notification.
6420
6421         * gtk/gtkclipboard.h:
6422         * gtk/gtkclipboard.c (_gtk_clipboard_handle_event): New private
6423         api to handle owner change events.
6424         (clipboard_peek): Refactored out the body of 
6425         gtk_clipboard_get_for_display() for use in _gtk_clipboard_handle_event().
6426
6427         * gtk/gtkmain.c (gtk_main_do_event): Handle GDK_OWNER_CHANGE events
6428         by calling _gtk_clipboard_handle_event().
6429
6430 2004-05-18  Matthias Clasen  <mclasen@redhat.com>
6431
6432         * gtk/gtkintl.h: Include glib/gi18n-lib.h and only define
6433         the P_() macros ourselves.
6434
6435         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
6436         Restrict the width of the popup to be no larger than the
6437         monitor.  (#142678, DmD Ljungmark)
6438
6439         * gtk/gtkbutton.c: Go back to the initial fix for the 
6440         focus-overdrawing problem, which was actually correct 
6441         according to docs/widget_geometry.txt.
6442
6443         * gtk/gtkarrow.c (gtk_arrow_class_init): Bump the initial
6444         arrow size from 11 to 15 to compensate for that.
6445
6446         * gtk/gtktextview.c (gtk_text_view_class_init): Document the
6447         arguments of the ::move-cursor signal.  (#142725)
6448
6449 2004-05-17  Matthias Clasen  <mclasen@redhat.com>
6450
6451         Merged from 2.4:
6452         
6453         * gtk/gtkbutton.c (gtk_button_size_request) 
6454         (gtk_button_size_allocate, _gtk_button_paint): Allocate
6455         space for the focus rectangle only if necessary.  (#142668,
6456         Michael Natterer)
6457
6458 Sun May 16 23:11:47 2004  Matthias Clasen  <maclas@gmx.de>
6459
6460         Merged from 2.4:
6461         
6462         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): Remove two useless 
6463         lines.  (#142479, Morten Welinder)
6464
6465 Sun May 16 22:27:17 2004  Matthias Clasen  <maclas@gmx.de>
6466
6467         * gtk/gtkintl.h (Q_): Add a Q_() macro. 
6468
6469         * gtk/gtkcellrendererprogress.h: Remove GTK_PROGRESS_CELL_UNKNOWN
6470         and GTK_PROGRESS_CELL_FAILED. With the ability the set the label,
6471         they are not really needed.
6472
6473         * gtk/gtkcellrendererprogress.c: Use the xpad and ypad properties
6474         instead of hardwired padding, use Q_() for the default label, 
6475         compute a reasonable minimal size.  (#142571, #142572, #142573,
6476         Tommi Komulainen, Christian Persch)
6477         
6478 2004-05-15  Tor Lillqvist  <tml@iki.fi>
6479
6480         * gdk/win32/gdkdnd-win32.c: Put back the ref_count field in the
6481         GdkDragContextPrivateWin32 struct (but inside ifdef OLE2_DND this
6482         time). It is used by the OLE2_DND code, which is unfinished and
6483         presumably horribly broken, but still, let's not make it not
6484         compile on purpose. Silence some gcc warnings in the OLE2_DND
6485         code.
6486
6487 2004-05-14  Matthias Clasen  <mclasen@redhat.com>
6488
6489         * gtk/gtktreeview.c (gtk_tree_view_tree_window_to_tree_coords): 
6490         New function to go from tree window to tree coordinates, kept
6491         static for now until we figure out the multiple coordinate
6492         system mess in GtkTreeView API-wise.
6493         (gtk_tree_view_scroll_to_cell): Transform the coordinates 
6494         from tree window to tree coordinates, using the new function.
6495         Previously, the x coordinate was wrongly transformed. (#142494)
6496
6497         * gdk/gdktypes.h (GdkModifierType): Add a comment about unused
6498         bits.
6499
6500         * gtk/gtkstock.c (real_add, gtk_stock_lookup): Use an unused
6501         modifier bit to mark stock item which need to be freed 
6502         eventually.  (#140654, Michal Pasternak, Scott Tsai)
6503
6504 2004-05-11  Robert Ögren  <gtk@roboros.com>
6505
6506         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Add missing
6507         call to g_object_ref in Wintab code. (#138341)
6508
6509         * gdk/win32/gdkinput-win32.c: Fix numerous Wintab problems
6510         including unallocated buffers for event->motion.axes and
6511         event->button.axes, unsigned wraparound problem in the code for
6512         detecting missing press/release events and assigning min instead
6513         of max when setting up axes.
6514
6515 2004-05-12  Matthias Clasen  <mclasen@redhat.com>
6516
6517         * tests/testtreeedit.c: Add a progress column.
6518
6519         * gtk/Makefile.am: Add gtkcellrendererprogress.[hc] in the right
6520         places.
6521
6522         * gtk/gtk.h: Include gtkcellrendererprogress.h.
6523
6524         * gtk/gtkcellrendererprogress.[hc]: A progress cell renderer,
6525         based on the one found in Epiphany.
6526
6527 2004-05-11  Michael Natterer  <mitch@gimp.org>
6528
6529         * gtk/gtkcombobox.c (gtk_combo_box_popup)
6530         (gtk_combo_box_menu_button_press): don't allocate the popup
6531         smaller than the combobox. Fixes bug #59660.
6532
6533 2004-05-11  Matthias Clasen  <mclasen@redhat.com>
6534
6535         * gtk/gtkuimanager.c (gtk_ui_manager_get_widget): Revert the
6536         previous change to this function, clarify the docs instead.
6537
6538         * gtk/gtkcombobox.c (gtk_combo_box_list_setup): Use
6539         GTK_SELECTION_BROWSE.
6540
6541         * gtk/gtktreeview.c: Make hover selection work for 
6542         GTK_SELECTION_BROWSE as well.
6543
6544 Tue May 11 00:38:25 2004  Matthias Clasen  <maclas@gmx.de>
6545
6546         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_class_init): 
6547         Document the ::toggled signal.
6548
6549 Mon May 10 23:04:25 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
6550
6551         * gtk/gtkwidget.h: Add prototype for _gtk_widget_grab_notify()
6552
6553 2004-05-10  Matthias Clasen  <mclasen@redhat.com>
6554
6555         * gtk/gtkwindow.c (get_screen_icon_info): Make static.
6556
6557         * gdk/gdkdisplay.c (singlehead_...): 
6558         * gdk/x11/gdkkeys-x11.c (get_effective_keymap): 
6559         * gdk/x11/gdkgeometry-x11.c (expose_serial_predicate): 
6560         * gdk/x11/gdkdisplay-x11.c (escape_for_xmessage): Make static.
6561
6562         * gtk/gtktreeview.c (gtk_tree_view_set_fixed_height_mode): Add a 
6563         note about COLUMN_FIXED restriction.
6564
6565         * gtk/gtkentrycompletion.c (gtk_entry_completion_list_button_press): 
6566         Set the entry in the default handler of the ::match-selected signal.
6567         (#137226)
6568
6569         * gtk/gtkcombobox.c (gtk_combo_box_menu_position_below): If we don't
6570         do the move-selected-item below pointer thingie, do the 
6571         place-below-or-above one.
6572
6573         * tests/testentrycompletion.c: Make the second example use the 
6574         ::match-selected signal to make it actually work.
6575
6576         * gtk/gtkentrycompletion.c (gtk_entry_completion_init): 
6577         * gtk/gtkcombobox.c (gtk_combo_box_list_setup): Use hover selection
6578         mode.  (#127648, Dave Bordoley)
6579
6580         * gtk/gtktreeview.h:
6581         * gtk/gtktreeview.c: Add a new property "hover_selection", which 
6582         when TRUE makes the selection follow the mouse. Also add setter
6583         and getter for the fixed_height property.
6584
6585 2004-05-10  Matthias Clasen  <mclasen@redhat.com>
6586
6587         * gtk/gtkcombobox.c (gtk_combo_box_popup) 
6588         (gtk_combo_box_menu_button_press): Make sure the menu pops up
6589         as wide as the combobox.  (#59660, Havoc Pennington)
6590
6591 2004-05-10  Matthias Clasen  <mclasen@redhat.com>
6592
6593         * gtk/gtkcombobox.h: 
6594         * gtk/gtkcombobox.c: Support tearoffable combo boxes (in menu 
6595         mode). Add a new property, add-tearoffs, for this.  (#135956)
6596
6597         * gtk/gtkfontsel.c (list_row_activated): Make Return activate the
6598         default button.  (#118921)
6599
6600 Mon May 10 15:03:50 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
6601
6602         * gtk/gtkwidget.c (_gtk_widget_grab_notify): New internal function
6603         that emits the grab notify signal.
6604         
6605         * gtk/gtkmain.c (gtk_grab_notify_foreach): Use it here.
6606
6607 Mon May 10 00:48:08 2004  Matthias Clasen  <maclas@gmx.de>
6608
6609         * gtk/gtkmenu.c: Make destruction of a torn off menu work 
6610         like un-tearing off.
6611
6612 Sun May  9 21:05:38 2004  Matthias Clasen  <maclas@gmx.de>
6613
6614         Merge from 2.4:
6615
6616         * gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel): 
6617         Allow to suppress the stock accelerator by using "".  (#142196,
6618         David A Knight)
6619         
6620 Sun May  9 02:01:13 2004  Matthias Clasen  <maclas@gmx.de>
6621
6622         Merge from 2.4:
6623         
6624         * gtk/gtkcombobox.c (gtk_combo_box_list_button_released): 
6625         In list mode, accept the same mouse/wheel bindings on 
6626         the cellview as on the button.  (#136967)
6627
6628 Sun May  9 01:25:37 2004  Matthias Clasen  <maclas@gmx.de>
6629
6630         * gtk/gtkiconfactory.c (add_to_cache): Actually count the
6631         cached icons.  (#135888, Crispin Flowerday)
6632
6633 Sun May  9 00:03:03 2004  Matthias Clasen  <maclas@gmx.de>
6634
6635         * gtk/gtkuimanager.c (gtk_ui_manager_get_widget): Make sure
6636         that we actually return menus for nodes of type menu, not the
6637         menuitems they're attached to.
6638
6639 Sat May  8 22:50:55 2004  Matthias Clasen  <maclas@gmx.de>
6640
6641         * gtk/gtkactiongroup.c (gtk_action_group_set_translation_domain): 
6642         Add a note regarding UTF-8 requirements, proposed by 
6643         Mariano Suárez-Alvarez.
6644
6645 Sat May  8 22:43:11 2004  Matthias Clasen  <maclas@gmx.de>
6646
6647         * gtk/gtktearoffmenuitem.h: 
6648         * gtk/gtktearoffmenuitem.c: Put the torn_off flag back
6649         into the GtkTearoffMenuItem struct, since it is used
6650         by the Gimp, and keep it synchronized with the 
6651         tearoff_state property of the parent menu.
6652
6653 2004-05-08  Hans Breuer  <hans@breuer.org>
6654
6655         * gtk/gtkfilesystemwin32.c (extract_icon) : finally also
6656         create the correct mask for 'pseudo mime' icons
6657
6658         * gdk/win32/gdkwindow-win32.c(show_window_internal) : also
6659         take focus_on_map into account
6660
6661         * gtk/gtkselection.c : g_message() only with DEBUG_SELECTION
6662
6663         * gtk/gtkactiongroup.c gtk/gtkcombobox.c : 
6664         ... must return a value
6665
6666         * gdk/gdk.def gtk/gtk.def demos/gtk-demo/makefile.msc.in : updated
6667
6668 2004-05-07  Matthias Clasen  <mclasen@redhat.com>
6669
6670         * gtk/gtkbutton.c (gtk_button_size_allocate): Don't let the child
6671         draw over the focus rectangle.
6672
6673         * gtk/gtkhsv.c: Draw focus indication in the color wheel using
6674         standard focus style.  (#63071, Bill Haneman, idea for new
6675         style by Owen Taylor)
6676
6677         * gtk/gtkstyle.c (gtk_default_draw_focus): Support drawing on
6678         focus on the colorwheel via details.
6679
6680 2004-05-06  Matthias Clasen  <mclasen@redhat.com>
6681
6682         Merge from 2.4:
6683         
6684         * gtk/gtkcombobox.c (gtk_combo_box_menu_state_changed): Remove
6685         this no longer needed signal handler.  (#141817, Paul Pogonyshev)
6686
6687 Fri May  7 00:41:46 2004  Matthias Clasen  <maclas@gmx.de>
6688
6689         * gtk/gtktearoffmenuitem.h: 
6690         * gtk/gtktearoffmenuitem.c: Make the tearoff 
6691         functionality model/view, the tearoffmenuitem being
6692         the view and the tearoff_state property of the menu
6693         being the model.  (#101185, Owen Taylor)
6694
6695         * gtk/gtkmenu.c: Add a tearoff_state property.
6696
6697 Thu May  6 23:52:13 2004  Matthias Clasen  <maclas@gmx.de>
6698
6699         Merge from 2.4:
6700
6701         * gtk/gtkmenuitem.c (gtk_menu_item_select_timeout): Also 
6702         popup the submenu for items in torn off menus.  (#122051)
6703
6704 2004-05-06  Sven Neumann  <sven@gimp.org>
6705
6706         * gtk/gtkexpander.c (gtk_expander_size_allocate): in RTL mode,
6707         position the title lable next to the arrow just as we do for LTR
6708         rendering. Fixes bug #141825.
6709
6710 2004-05-06  Matthias Clasen  <mclasen@redhat.com>
6711
6712         * docs/RELEASE-HOWTO: Document the new policy of
6713         bumping version numbers after release.
6714
6715         * configure.in: Bump version number to 2.5.0.
6716
6717 2004-05-06  Padraig O'Briain  <padraig.obriain@sun.com>
6718
6719         * gtk/gtkmenu.h:
6720         * gtk/gtkmenu.c: Add new function gtk_menu_get_for_attach_widget.
6721         (bug #113112).
6722
6723 Thu May  6 00:24:11 2004  Matthias Clasen  <maclas@gmx.de>
6724
6725         * gtk/gtkactiongroup.h: 
6726         * gtk/gtkactiongroup.c (gtk_action_group_translate_string): 
6727         New function to translate a string with translate_func.
6728         (#135740)
6729
6730 Thu May  6 00:02:21 2004  Matthias Clasen  <maclas@gmx.de>
6731
6732         * gtk/gtkcombobox.c (gtk_combo_box_get_wrap_width): 
6733         (gtk_combo_box_get_row_span_column): 
6734         (gtk_combo_box_get_column_span_column): Add missing getters
6735         for readwrite properies. (#135649)
6736
6737 Wed May  5 23:42:42 2004  Matthias Clasen  <maclas@gmx.de>
6738
6739         * gtk/gtkcombobox.h: 
6740         * gtk/gtkcombobox.c (gtk_combo_box_get_active_text): 
6741         Add gtk_combo_box_get_active_text() convenience 
6742         function. (#136372, Christian Neumeir, patch by Olivier Andrieu) 
6743
6744 2004-05-05  Elijah Newren  <newren@math.utah.edu>
6745
6746         Changes to support do-not-focus-on-map hint in conjunction with
6747         _NET_WM_USER_TIME (#115650):
6748
6749         * gdk/gdkwindow.h (struct _GdkWindowObject): Add a new boolean
6750         field focus_on_map
6751         
6752         * gdk/gdkwindow.h (gdk_window_set_accept_focus): New function to
6753         set it.
6754
6755         * gtk/gtkwindow.[hc]: Add a boolean property "focus_on_map"
6756         and gtk_window_get_focus_on_map() and gtk_window_set_focus_on_map().
6757
6758         * gdk/win32/gdkwindow-win32.c (gdk_window_new): 
6759         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new): 
6760         * gdk/x11/gdkwindow-x11.c (gdk_window_new):
6761         Initialize the focus_on_map field to TRUE.
6762
6763         * gdk/win32/gdkwindow-win32.c (gdk_window_set_focus_on_map): 
6764         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_focus_on_map): 
6765         * gdk/x11/gdkwindow-x11.c (gdk_window_set_focus_on_map): 
6766         * gdk/x11/gdkwindow-x11.c (setup_toplevel_window):
6767         Implementations for the various backends. The Win32 and linux-fb
6768         implementations set the focus_on_map field, but don't use it yet
6769         to actually implement noinput windows. The X implementation sets
6770         _NET_WM_USER_TIME to 0 if focus_on_map is FALSE (see the EWMH).
6771
6772         * gdk/x11/gdkwindow-x11.h: 
6773         * gdk/x11/gdkevents-x11.c (set_user_time): 
6774         * gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): 
6775         * gdk/x11/gdkwindow-x11.c (gdk_x11_window_set_user_time): 
6776         s/_gdk_x11_window_set_user_time/gdk_x11_window_set_user_time/,
6777         since we want that function to be part of the public API.
6778
6779 Wed May  5 22:20:21 2004  Matthias Clasen  <maclas@gmx.de>
6780
6781         Merge from 2.4:
6782         
6783         * gtk/gtkiconfactory.c (icon_source_clear): Don't
6784         call g_free() on a pixbuf.  (#141961, Crispin Flowerday) 
6785
6786 2004-05-05  Matthias Clasen  <mclasen@redhat.com>
6787    
6788         Merge from 2.4:
6789         
6790         * gtk/gtkuimanager.c (print_node): Make the output 
6791         parseable.  (#141929, Sven Neumann)
6792
6793 2004-05-05  Tor Lillqvist  <tml@iki.fi>
6794
6795         * gdk/win32/gdkdnd-win32.c (gdk_drag_find_window_for_screen): Add
6796         multi-monitor offset. (#141842, John Ehresman)
6797
6798 2004-05-04  Federico Mena Quintero  <federico@ximian.com>
6799
6800         Fixes #139562, based on a patch by Christian Neumair.
6801
6802         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault): Add
6803         a filter_combo_hbox field to contain the filter combo.
6804         (show_filters): Show/hide the filter_combo_hbox.
6805         (create_filename_entry_and_filter_combo): Removed.
6806         (file_pane_create): Create the filter_combo_hbox here.
6807
6808 2004-05-04  Matthias Clasen  <mclasen@redhat.com>
6809
6810         * modules/input/gtkimcontextxim.c: Fix the recent
6811         string_conversion_callback change to work on 
6812         Solaris.  (#141190, Padraig O'Briain)
6813
6814         * gtk/gtkselection.c: Disable debug logging again.
6815
6816 2004-05-03  Matthias Clasen  <mclasen@redhat.com>
6817
6818         * gtk/gtkselection.c: Make the chunk size for 
6819         incremental transfers depend on the maximal request 
6820         size, capped at 256k. This should allow most selections
6821         to be transferred nonincrementally, avoiding many
6822         roundtrips and protocol overhead.
6823
6824 2004-05-03  Federico Mena Quintero  <federico@ximian.com>
6825
6826         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Call
6827         g_signal_new() correctly and initialize the signal fields.  Fixes
6828         #141749; patch based on Michael Natterer's.
6829
6830 u2004-05-03  Matthias Clasen  <mclasen@redhat.com>
6831
6832         * gtk/gtkselection.c (_gtk_selection_request): Fix
6833         a debug message to show correct information.
6834         (_gtk_selection_incr_event): Make INCRemental transfer
6835         of MULTIPLE targets work. This was broken since 1997!
6836
6837 2004-05-02  Hans Breuer  <hans@breuer.org>
6838
6839         * gdk/win32/gdkdrawable-win32.c (draw_segments) : don't
6840         modify the passed in GdkSegment(s) in place, we may get
6841         them again to draw at the same place. Fixes bug #129095, 
6842         bug #137177, ...
6843         (draw_segments) draw the end pixel again to get the 
6844         pixmap mask right, fixes bug #126710, #130202
6845
6846         * gdk/win32/gdkwindow-win32.c : use SetForegroundWindow,
6847         fixes bug #106013, John Ehresman
6848
6849         * gtk/makefile.msc.in : don't try to link gtk.res but
6850         use gtk-win32.res (as supposed to be fixed below :)
6851
6852 2004-05-01  Hans Breuer  <hans@breuer.org>
6853
6854         * tests/Makefile.am : tests/makefile.msc is in CVS for
6855         a long time, finally added to EXTRA_DIST : fixes bug 
6856         #141334, John Ehresman
6857
6858 2004-04-30  Matthias Clasen  <mclasen@redhat.com>
6859
6860         * === Released 2.4.1 ===
6861
6862         * configure.in: Version 2.4.1, interface age 1. 
6863
6864         * NEWS: Updates
6865
6866 2004-04-29  Federico Mena Quintero  <federico@ximian.com>
6867
6868         Fixes #140412.
6869
6870         * gtk/gtkfilechooserdefault.c (remove_selected_bookmarks): New
6871         function; moved the code over from
6872         remove_bookmark_button_clicked_cb().
6873         (remove_selected_bookmarks): Now, getting a non-removable bookmark
6874         is not an error, as we may be called as a result of hitting the
6875         Delete key.
6876         (shortcuts_key_press_event_cb): New handler; delete the bookmark
6877         if the user presses Backspace, Delete, or KP_Delete.
6878
6879 2004-04-29  Matthias Clasen  <mclasen@redhat.com>
6880
6881         * gtk/gtkaction.c (closure_accel_activate): Use
6882         _gtk_action_emit_activate() instead of directly
6883         emitting the activate signal.  (#141429, Jody Goldberg)
6884
6885         * gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel): 
6886         Warn people when the accelerator can not be 
6887         parsed.  (#141429, Jody Goldberg)
6888
6889 2004-04-29  Matthias Clasen  <mclasen@redhat.com>
6890
6891         * tests/testentrycompletion.c (main): Add a missing 
6892         cat.  (#141070, Chris Sherlock)  
6893
6894         * gtk/gtkrc.c (gtk_rc_check_pixmap_dir): Remove unused
6895         variable.  (#141022, Chris Sherlock)
6896         
6897         * gtk/gtkcombo.c (gtk_combo_popup_list): Add a missing
6898         cast.  (#141013, Chris Sherlock)
6899
6900         * gtk/gtkcellview.c (gtk_cell_view_cell_layout_clear): Remove
6901         unused variable.  (#141011, Chris Sherlock)
6902
6903 2004-04-29  Tor Lillqvist  <tml@iki.fi>
6904
6905         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Plug memory
6906         leak. (#140775, John Ehresman)
6907
6908 Thu Apr 29 01:09:50 2004  Matthias Clasen  <maclas@gmx.de>
6909
6910         * gdk/gdkdraw.c (_gdk_drawable_get_scratch_gc): Use depth - 1
6911         to index the cached gcs, not depth.  (#139494)
6912
6913 2004-04-28  Matthias Clasen  <mclasen@redhat.com>
6914
6915         * gdk/gdkdraw.c (_gdk_drawable_get_scratch_gc): Docs typo fix.
6916
6917 Sun Apr 25 15:36:02 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
6918
6919         * gtk/gtktoolbutton.c (gtk_tool_button_set_label_widget): Fix
6920         cut'n'paste-o from previous commit. (#141046, Torsten Schoenfeld).
6921
6922 2004-04-24  Theppitak Karoonboonyanan  <thep@linux.thai.net>
6923
6924         Patch to add support for string conversion callbacks to
6925         GtkIMContextXIM (#101814)
6926
6927         * modules/input/gtkimcontextxim.c: Set the string conversion callback
6928         if supported by the XIC.
6929
6930         (struct _GtkIMContextXIM): Add string_conversion_callback member.
6931
6932         (struct _GtkXIMInfo, setup_im): Check and keep flag inidicating
6933         whether string conversion callback is supported.
6934
6935         (gtk_im_context_get_ic, +set_string_conversion_callback,
6936         +string_conversion_callback): Also initialize string conversion
6937         callback, if supported, along with the IC initialization.
6938
6939         * modules/input/imxim.c: Make "xim" module default for Thai as well.
6940
6941 2004-04-23  Matthias Clasen  <mclasen@redhat.com>
6942
6943         * gtk/gtkclipboard.c (gtk_clipboard_wait_for_targets): Correctly
6944         initialize targets.  (#139883, John Finlay)
6945
6946         * gdk/gdkdraw.c (gdk_draw_drawable): Small doc improvement. 
6947
6948         * gtk/gtktreeselection.c (gtk_tree_selection_get_selected_rows): 
6949         Don't recommend gtk_tree_row_reference_new_proxy().  (#138309,
6950         Tim-Philipp Müller)
6951
6952         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_set_cell_data): 
6953         Remove an excessive g_return_if_fail().
6954
6955         * gdk/x11/gdkevents-x11.c (set_user_time): Make set_user_time()
6956         static.
6957         * gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): 
6958         _-prefix calls of gdk_x11_window_set_user_time().
6959
6960 2004-04-22  Matthias Clasen  <mclasen@redhat.com>
6961
6962         * gtk/gtkuimanager.c (update_node): Make sure the separators 
6963         used to demarkate placeholder ends don't show up on 
6964         show_all().  (#140496, Murray Cumming)
6965
6966         * gtk/gtkspinbutton.c (spin_button_at_limit): Make spinbuttons
6967         work with negative increments.  (#137975, Tim Gerla)
6968
6969 Wed Apr 21 21:38:03 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
6970
6971         * gtk/gtktoolbutton.c (gtk_tool_button_set_label_widget,
6972         gtk_tool_button_set_icon_widget): Remove the old widget from the
6973         tool button before overwriting it with the new widget.
6974
6975         (#140508, Todd Goyen)
6976         
6977 2004-04-22  Tor Lillqvist  <tml@iki.fi>
6978
6979         Fix the file chooser on Windows. I can't make it misbehave or
6980         crash any more now. But presumably there are still corner cases
6981         not handled. I haven't really checked behaviour of UNC paths, for
6982         instance.
6983
6984         * gtk/gtkfilesystemwin32.c: Accept both backslash and slash in
6985         several places. Use G_IS_DIR_SEPARATOR macro (which could be added
6986         to GLib in 2.6).
6987
6988         (gtk_file_system_win32_get_parent): Like the Unix version, assert
6989         filename is absolute, and avoid one unnecessary string allocation
6990         and freeing.
6991         
6992         (canonicalize_filename,gtk_file_system_win32_parse): Handle drive
6993         letters more correctly.
6994
6995         (gtk_file_system_win32_render_icon): Assure correct syntax is used
6996         for root folder of a drive. (#137962, Morten Welinder)
6997
6998         (filename_is_some_root): New function that accepts also root
6999         without any drive specified.
7000
7001         (filename_is_drive_root): Rename from filename_is_root.
7002
7003         * gtk/gtkfilechooserentry.c (completion_match_func): Casefold on
7004         Windows.
7005
7006 2004-04-21  Matthias Clasen  <mclasen@redhat.com>
7007
7008         * gtk/gtkentry.c (gtk_entry_completion_timeout): Pop down the 
7009         completion window if there are no completions anymore.
7010
7011         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
7012         Don't call gtk_tree_view_scroll_to_cell() on an empty tree view. 
7013         It doesn't like that.  (#140642, Christian Persch)
7014
7015         * demos/gtk-demo/expander.c (do_expander): A new demo.
7016
7017         * demos/gtk-demo/Makefile.am (demos): Add expander.c.
7018
7019 2004-04-20  Matthias Clasen  <mclasen@redhat.com>
7020
7021         * gtk/gtktextview.c (gtk_text_view_allocate_children): Make
7022         sure anchored children get size allocated, even if the layout
7023         is valid.  (#122323, Andrew E. Makeev)
7024         (gtk_text_view_scroll_pages): 
7025         (gtk_text_view_scroll_hpages): Don't scroll to cursor position
7026         if we already have pending scrolls. Bandaid fix for #78513.
7027
7028 Mon Apr 19 17:59:17 2004  Owen Taylor  <otaylor@redhat.com>
7029
7030         * INSTALL.in: Update libpng and libjpeg URLs, remove
7031         note about building without since that's not the normal
7032         case.
7033
7034 Sun Apr 11 09:45:11 2004  Owen Taylor  <otaylor@redhat.com>
7035
7036         * gtk/gtkicontheme.c (load_themes): Fix a couple of typos in
7037         handling of SVG/non-SVG unthemed icons.
7038
7039 2004-04-19  Morten Welinder  <terra@gnome.org>
7040
7041         * gtk/gtktoolbar.c (gtk_toolbar_focus): Don't leak list of
7042         children.  (#140523)
7043
7044 2004-04-19  Matthias Clasen  <mclasen@redhat.com>
7045
7046         * gtk/gtktextbtree.c (_gtk_text_line_previous_could_contain_tag): 
7047         Don't stop the iteration up to the tag_root too 
7048         early.  (#109945, Dongho Shin)
7049
7050 Sun Apr 18 17:06:03 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
7051
7052         * gdk/x11/gdkkeys-x11.c (get_effective_keymap): Make
7053         gdk_keymap_translate_keyboard_state() handle NULL
7054         keymaps. (#139715, Torsten Schoenfeld).
7055
7056 Sun Apr 18 16:59:21 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
7057
7058         * configure.in: Don't erase GDK_EXTRA_CFLAGS. Fixes bug 139586,
7059         reported by Pedro RODRIGUEZ, about compilation problems when
7060         Xcursor is installed in a non-standard location.
7061
7062 Sun Apr 18 16:15:15 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
7063
7064         Support for _NET_WM_USER_TIME (bug 115650). Patch by Elijah
7065         Newren.
7066         
7067         * gdk/x11/gdkwindow-x11.[ch]: Add new internal function
7068         _gdk_x11_set_user_time() to set the _NET_WM_USER_TIME property.
7069
7070         * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add user_time field
7071
7072         * gdk/x11/gdkdisplay-x11.c: Add _NET_WM_USER_TIME to list of
7073         precached atoms.
7074         
7075         * gdk/x11/gdkinput-x11.c, gdk/x11/gdkevents-x11.c: Set the
7076         property on user interaction.
7077
7078 2004-04-15  Federico Mena Quintero  <federico@ximian.com>
7079
7080         * gtk/gtkfilesel.c (open_new_dir): Tell the user to use
7081         G_FILENAME_ENCODING, not G_BROKEN_FILENAMES.  Fixes #114065.
7082
7083         * gtk/gtkfilechooserdefault.c (split_uris): Use a variant of the
7084         code from gtkfilesel.c to parse a "text/uri-list" blob.  Fixes
7085         #140126.
7086
7087 2004-04-15  Matthias Clasen  <mclasen@redhat.com>
7088
7089         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 
7090         * gtk/gtkbutton.c (gtk_button_class_init): Doc fixes.
7091
7092 2004-04-14  Matthias Clasen  <mclasen@redhat.com>
7093
7094         * gtk/gtkcombobox.c: 
7095         * gtk/gtkwidget.c: 
7096         Make all style properties readonly.
7097
7098 2004-04-14  Matthias Clasen  <mclasen@redhat.com>
7099
7100         * gtk/gtkcolorsel.c: Add a11y relations between the color
7101         wheel and the spin buttons.  (#132745, Padraig O'Briain)
7102
7103         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): Document
7104         the meaning of size == -1.
7105
7106         * gtk/gtkwidget.c (gtk_widget_render_icon): Explicitly accept  
7107         a size of -1.  (#137436, Brian Cameron)
7108
7109         * gtk/gtkcombobox.c: Make the arrow and separator regular
7110         children of an hbox inside the button, and propagate state
7111         changes from the button to the cell view.  (part of the fix
7112         for #138650, should also fix #137535)
7113
7114         * gtk/gtkcellview.c (gtk_cell_view_expose): Pass the PRELIT
7115         state to gtk_cell_renderer_render() when prelighted. (part 
7116         of the fix for #138650)
7117
7118         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): 
7119         Use PRELIGHT state when appropriate.  (part of the fix for 
7120         #138650)
7121
7122         * gtk/gtkcombobox.c (gtk_combo_box_relayout): Don't spit 
7123         out warnings if called before the combo box is 
7124         realized.  (#139742, Philip Langdale)
7125
7126 Wed Apr 14 03:45:39 2004  Jonathan Blandford  <jrb@gnome.org>
7127
7128         * gtk/gtktreeview.c (gtk_tree_view_expose): propagate expose
7129         events to children.
7130
7131 Wed Apr 14 03:32:58 2004  Jonathan Blandford  <jrb@gnome.org>
7132
7133         * gtk/gtkpathbar.c (make_directory_button): remove spurious
7134         gtk_box_pack_start.
7135
7136 Tue Apr 13 16:19:23 2004  Jonathan Blandford  <jrb@redhat.com>
7137
7138         * gtk/gtkpathbar.c (make_directory_button): patch from Owen to
7139         make the buttons sized by a bold label.  This makes the text
7140         'swim' a little, but stops the buttons from resizing, #137210
7141
7142 2004-04-13  Matthias Clasen  <mclasen@redhat.com>
7143
7144         * gtk/gtkuimanager.c (get_child_node): Don't crash if a node 
7145         has no name.
7146         (start_element_handler): Accept separators without unique 
7147         names.  (#133302, Anders Carlsson)
7148
7149         * gtk/gtkactiongroup.c (gtk_action_group_add_action): Document
7150         possible accelerator gotcha when using this function.  (#139641, 
7151         Christian Persch)
7152
7153         * gtk/gtkuimanager.c (node_remove_ui_reference): Don't leak
7154         list nodes.  (#138862, Morten Welinder)
7155
7156 Tue Apr 13 12:24:49 2004  Jonathan Blandford  <jrb@redhat.com>
7157
7158         * gtk/gtktreeview.c (gtk_tree_view_destroy): remove unused
7159         variable.
7160         (gtk_tree_view_button_press): If we activated the row we don't
7161         want to grab focus back, as moving focus to another widget is
7162         pretty common, #138458
7163
7164 2004-04-12  Federico Mena Quintero  <federico@ximian.com>
7165
7166         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Added
7167         documentation to all the signals.
7168
7169 2004-04-12  Matthias Clasen  <mclasen@dhcp64-228.boston.redhat.com>
7170
7171         * gtk/gtkcombobox.c (gtk_combo_box_unset_model): Don't unref
7172         model if it is NULL. (#139770)
7173
7174         * gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Typo fix.
7175
7176         * gtk/gtkentrycompletion.c (gtk_entry_completion_init): Don't add
7177         a shadow inside the scrolled window, add it around the vbox.
7178
7179         * gtk/gtkentryprivate.h: 
7180         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
7181         Return a boolean indicating whether the popup is positioned above 
7182         or below. Scroll the completions to the beginning or the end, 
7183         depending on the positioning.
7184
7185         * gtk/gtkentry.c (gtk_entry_completion_key_press): Make keynav
7186         wrap around in the entry completion popup, and allow GDK_UP to 
7187         enter the popup.  (#137440)
7188
7189 2004-04-12  Matthias Clasen  <mclasen@redhat.com>
7190
7191         * gtk/gtkentry.c (gtk_entry_size_request): Make sure the style is 
7192         there before using it.
7193
7194 Sun Apr 11 15:08:45 2004  Jonathan Blandford  <jrb@gnome.org>
7195
7196         * gtk/gtktreeprivate.h: Moved search entries into priv data.
7197
7198         * gtk/gtktreeview.c: Prep for type-ahead support.
7199
7200         (gtk_tree_view_destroy): Destroy the search window explicitly.
7201         (gtk_tree_view_key_press): Minor change; prep for type-ahead
7202         (gtk_tree_view_ensure_interactive_directory): New function
7203         (gtk_tree_view_focus_out): Rework to handle new entry life-cycle.
7204         (gtk_tree_view_real_start_interactive_search): rework
7205         (gtk_tree_view_search_dialog_hide): ditto
7206         (gtk_tree_view_search_delete_event): ditto
7207         (gtk_tree_view_search_button_press_event): ditto
7208         (gtk_tree_view_search_key_press_event): ditto
7209         (gtk_tree_view_search_move): ditto
7210         (gtk_tree_view_search_init): ditto
7211
7212         * gtk/gtktreeviewcolumn.c:
7213         (gtk_tree_view_column_cell_layout_clear): remove unused variable.
7214
7215         * tests/testfilechooser.c: (main): change
7216
7217 2004-04-11  Hans Breuer  <hans@breuer.org>
7218
7219         * gdk/win32/gdkspawn-win32.c : workaround for bug #137496,
7220         the real fix would involve just another small API breakage,
7221         i.e. gdk_spawn_* using GPid not just gint.
7222
7223         * gtk/makefile.msc.in : build gtk-win32.res, not gtk.res
7224
7225 2004-04-10  Tor Lillqvist  <tml@iki.fi>
7226
7227         * gdk/win32/gdkkeys-win32.c (gdk_keymap_translate_keyboard_state):
7228         If both Shift and CapsLock pressed, ignore the shift only for
7229         letters (that would have been affected by the CapsLock). (#139095)
7230
7231         * gdk/win32/gdkglobals-win32.c: Disable tablet support by default,
7232         seems to be even buggier now than it used to be. (#138341)
7233         Initialize _gdk_input_ignore_wintab to TRUE.
7234
7235         * gdk/win32/gdkmain-win32.c: Add --use-wintab switch and
7236         GDK_USE_WINTAB environment variable to turn on tablet support.
7237
7238 2004-04-09  Christian Persch  <chpe@cvs.gnome.org>
7239
7240         * gtk/gtkuimanager.c: (gtk_ui_manager_insert_action_group),
7241         (gtk_ui_manager_remove_action_group): Terminate
7242         g_object_[dis]connect() calls with NULL instead of 0.
7243         Fixes #138997.
7244
7245 2004-04-09  Guntupalli Karunakar  <karunakar@freedomink.org>
7246
7247         * configure.in: Added "gu" (Gujarati) to ALL_LINGUAS.
7248
7249 2004-04-07  Federico Mena Quintero  <federico@ximian.com>
7250
7251         Fix #132500.
7252
7253         * gtk/gtkfilesystem.c (gtk_file_system_parse): Ensure that the
7254         passed-in 'str' is not NULL.
7255
7256         * gtk/gtkfilesystemunix.c (expand_tilde): New helper function;
7257         expands "~/" or "~foo/" at the beginning of a filename.
7258         (gtk_file_system_unix_parse): Use expand_tilde() before doing
7259         anything else.
7260
7261         * gtk/gtkfilechooserentry.c
7262         (gtk_file_chooser_entry_maybe_update_directory): Take in a
7263         force_reload argument.
7264         (gtk_file_chooser_entry_changed): If gtk_file_system_parse()
7265         returns an error, set the file_part_pos to -1.
7266         (load_directory_callback): Only populate the model if the
7267         file_part_pos is not -1.
7268
7269 2004-04-06  Pablo Saratxaga  <pablo@mandrakesoft.com>
7270
7271         * configure.in: Added Icelandic (is) to ALL_LINGUAS
7272
7273 2004-04-05  Federico Mena Quintero  <federico@ximian.com>
7274
7275         * gtk/gtkfilechooserdefault.c (location_popup_handler): Use a
7276         title for SAVE and CREATE_FOLDER modes.  Fixes #137272.
7277
7278         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_make_path): Look
7279         for G_DIR_SEPARATOR in the display_name, and err out if it is
7280         present; use the same error message as Nautilus.  Fixes #136467.
7281
7282         * gtk/gtkfilechooserdefault.c (file_pane_create): Make the
7283         new-folder button say "Create Fo_lder" rather than "Create
7284         _Folder", so that the mnemonic doesn't conflict with the "Save in
7285         _folder" label.  Fixes #136975.
7286
7287 2004-04-05  Federico Mena Quintero  <federico@ximian.com>
7288
7289         * gtk/gtkpathbar.c (_gtk_path_bar_set_path): Ref/sink the
7290         buttons.  Also, free them correctly upon failure.  Based on a
7291         patch by Morten Welinder, fixes #137956.
7292
7293 2004-04-05  Anders Carlsson  <andersca@gnome.org>
7294
7295         * gdk/gdk.c (gdk_arg_context_parse): Handle '--' correctly.
7296
7297 Fri Apr  2 17:57:33 2004  Jonathan Blandford  <jrb@redhat.com>
7298
7299         * gtk/gtktreeview.c (gtk_tree_view_row_inserted): set the height
7300         correctly for fixed height when inserting a node, #138082
7301
7302 2004-04-01  Federico Mena Quintero  <federico@ximian.com>
7303
7304         Fix #136077.
7305
7306         * gtk/gtkpathbar.h (struct _GtkPathBarClass): Add a
7307         "child_is_hidden" boolean argument to the "path-clicked" signal.
7308
7309         * gtk/gtkpathbar.c (struct _ButtonData): Added a file_is_hidden
7310         field.
7311         (make_directory_button): Take a file_is_hidden argument; put it in
7312         the ButtonData.
7313         (_gtk_path_bar_set_path): See whether each path component path is
7314         a hidden file.
7315         (gtk_path_bar_class_init): Add the file_is_hidden argument to the
7316         "path-clicked" signal.
7317         (button_clicked_cb): See if the downwards button represents a
7318         hidden file for the file_is_hidden argument in the signal
7319         emission.
7320
7321         * gtk/gtkmarshalers.list: Added a signal type VOID:POINTER,BOOLEAN.
7322
7323         * gtk/gtkfilechooserdefault.c
7324         (gtk_file_chooser_default_select_path): If we fail to switch
7325         folders, don't try to select the path in the file system model.
7326         Also, return the result from _gtk_file_system_model_path_do().
7327         (gtk_file_chooser_default_select_path): Turn on show_hidden in the
7328         file system model if we are asked to select a hidden file.
7329         (path_bar_clicked): Show hidden files based on whether the
7330         immediate downwards folder in the path bar is a hidden file
7331         itself.
7332         (struct _GtkFileChooserDefault): Added fields
7333         browse_files_popup_menu and browse_files_popup_menu_hidden_files_item.
7334         (create_file_list): Set an object data key of
7335         "GtkFileChooserDefault" on the tree view so that we can find the
7336         impl from the popup menu callbacks.  Also, hook up to the
7337         "button-press-event" and "popup-menu" signals in the file list to
7338         bring up a popup menu.
7339         (list_popup_menu_cb): New callback.
7340         (list_button_press_event_cb): New callback.
7341
7342         Fix #138763:
7343
7344         * gtk/gtkfilesystemmodel.c
7345         (_gtk_file_system_model_new): Oops, connect_object to
7346         "finished-loading".
7347
7348 2004-03-31  Tor Lillqvist  <tml@iki.fi>
7349
7350         * configure.in: Move AC_CANONICAL_HOST earlier, before the check
7351         for native Win32. (#136559, J. Ali Harlow)
7352
7353         * gdk/win32/gdkdrawable-win32.c (draw_arc): Use X11 semantics for
7354         angles. Thanks to Tim Newsham.
7355
7356 2004-03-29  Federico Mena Quintero  <federico@ximian.com>
7357
7358         Fix #137520.
7359
7360         * gtk/gtkfilesystem.h (struct _GtkFileFolderIface): Added slots
7361         for an ::is_finished_loading() method and a ::finished_loading()
7362         signal at the end of the struct.
7363
7364         * gtk/gtkfilesystem.c (gtk_file_folder_base_init): Create the
7365         "finished-loading" signal.
7366         (gtk_file_folder_is_finished_loading): New function.
7367
7368         * gtk/gtkfilesystemunix.c
7369         (gtk_file_folder_unix_is_finished_loading): Implement.
7370
7371         * gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModelClass): New
7372         slot for a "finished-loading" signal.
7373         (gtk_file_system_model_class_init): Create the "finished-loading"
7374         signal.
7375         (struct _GtkFileSystemModel): New field
7376         idle_finished_loading_source.  We emit the "finished-loading"
7377         signal in an idle if the root folder was done loading right in
7378         _gtk_file_system_model_new(), so that the caller has a chance to
7379         connect to the signal.
7380         (_gtk_file_system_model_new): Connect to the normal signals of the
7381         folder even if the initial _list_children() fails.  Also, see if
7382         the folder is finished loading; connect to the "finished-loading"
7383         signal otherwise.
7384         (gtk_file_system_model_finalize): Remove the idle handler.
7385
7386         * gtk/gtkfilechooserdefault.c (set_list_model): Set a busy cursor
7387         and connect to the model's "finished-loading" signal.
7388         (get_toplevel): New helper function.
7389         (error_message): Use get_toplevel().
7390         (trap_activate_cb): Likewise.
7391         (location_popup_handler): Likewise.
7392         (set_busy_cursor): New function.
7393         (browse_files_model_finished_loading_cb): New callback.
7394
7395 2004-03-25  Federico Mena Quintero  <federico@ximian.com>
7396
7397         * gtk/gtkfilechooserdefault.c (check_preview_change): Just use the
7398         file under the cursor; we don't need the logic from
7399         GtkFileSelection after all.  Fixes #132255.
7400
7401 2004-03-25  Federico Mena Quintero  <federico@ximian.com>
7402
7403         * gtk/gtkfilechooserdefault.c (location_entry_create): Fill the
7404         location entry with the display name of the file under the cursor
7405         for Open mode, or the typed filename in Save mode.
7406
7407 2004-03-24  J. Ali Harlow  <ali@juiblex.co.uk>
7408
7409         * gtk/gtkfilesystemwin32.c
7410         (filename_is_root): Bare drive designators (eg., "c:") are
7411         no longer considered as root filenames.  Fixed #137942
7412
7413 2004-03-24  J. Ali Harlow  <ali@juiblex.co.uk>
7414
7415         * gtk/gtkfilesystemwin32.c
7416         (gtk_file_system_win32_create_folder): Invert test for error in
7417         mkdir.  Fixes #137945
7418
7419 2004-03-24  J. Ali Harlow  <ali@juiblex.co.uk>
7420
7421         Fixed #138004 using Federico's code from #132327.
7422
7423         * gtk/gtkfilesystemwin32.c (struct _GtkFileSystemWin32): Add a
7424         folder_hash field to keep a list of live folder objects.
7425         (gtk_file_system_win32_init): Create the folder_hash.
7426         (gtk_file_system_win32_finalize): Destroy the folder_hash.
7427         (gtk_file_system_win32_get_folder): Ref and return an existing
7428         folder if we have it around, otherwise return a new folder object.
7429         (struct _GtkFileFolderWin32): Add a field for the parent file system.
7430         (gtk_file_folder_win32_finalize): Remove the folder from the file
7431         system's hash table.
7432         (gtk_file_system_win32_create_folder):  Emit "files-added" on the
7433         newly-created folder's parent.  Fixes #138004.
7434
7435 2004-03-24  J. Ali Harlow  <ali@juiblex.co.uk>
7436
7437         * gtk/gtkfilesystemwin32.c
7438         (gtk_file_system_win32_get_folder): Test that path is actually
7439         a directory and throw error if not. Fixed bug #137950
7440
7441 2004-03-22  J. Ali Harlow  <ali@juiblex.co.uk>
7442
7443         * gtk/gtkfilesystemwin32.c
7444         (gtk_file_system_win32_volume_get_display_name): Ignore empty
7445         volume labels; assume that GetVolumeInformation would fail if
7446         GetVolumeInformationW does; catches a small memory leak;
7447         pass the buffer size to GetVolumeInformationW in wide
7448         characters instead of bytes. Fixes bug #137543
7449         (list_volumes): Cope with the theoretical possibility of
7450         more than 26 logical drives. Fixes bug #137940
7451         (bookmarks_serialize): Now actually removes bookmarks.
7452         Fixes bug #137943
7453
7454 2004-03-22  Guntupalli Karunakar  <karunakar@freedomink.org>
7455
7456         * configure.in: Added "pa" (Punjabi) to ALL_LINGUAS.
7457
7458 2004-03-21  Tor Lillqvist  <tml@iki.fi>
7459
7460         * gtk/gtkfilesystemwin32.c
7461         (gtk_file_system_win32_volume_get_base_path): Include the
7462         backslash. Otherwise gtk_file_system_win32_path_to_uri() returns
7463         NULL for a volume base path, as g_filename_to_uri() requires an
7464         absolute path, and just a drive letter and colon isn't. (#137543)
7465
7466 2004-03-20  Hans Breuer  <hans@breuer.org>
7467
7468         * gtk/gtkfilesystemwin32.c : applied the undisputable and
7469         required [due to recent gtkfilesystem internal api semantic 
7470         changes] part of patches to fix bug #137543 (Tor Lillqvist,
7471         J. Ali Harlow)
7472
7473         * gdk/gdkevents-win32.c (handle_configure_event) :
7474              (gdk_event_translate), WM_WINDOWPOSCHANGED : initialize
7475         GdkWindowObject::x, y with screen coords to make 
7476         gdk_window_get_position () return the right thing and thus fix
7477         drag and drop positioning (e.g. Gimp tabs, fixes bug #137192)
7478
7479 2004-03-19  Federico Mena Quintero  <federico@ximian.com>
7480
7481         * Revert the patch to #137520, as 2.4.1 is for conservative bug
7482         fixes only.  The patch is attached to the bug report, for
7483         reference.
7484
7485 2004-03-19  Morten Welinder  <terra@gnome.org>
7486
7487         * gtk/gtkfilechooserdefault.c
7488         (gtk_file_chooser_default_set_current_folder): Test existance of
7489         the path after checking for locality, if needed.
7490
7491 2004-03-19  Federico Mena Quintero  <federico@ximian.com>
7492
7493         Fix #137520.
7494
7495         * gtk/gtkfilesystem.h (struct _GtkFileFolderIface): Added slots
7496         for an ::is_finished_loading() method and a ::finished_loading()
7497         signal at the end of the struct.
7498
7499         * gtk/gtkfilesystem.c (gtk_file_folder_base_init): Create the
7500         "finished-loading" signal.
7501         (gtk_file_folder_is_finished_loading): New function.
7502
7503         * gtk/gtkfilesystemunix.c
7504         (gtk_file_folder_unix_is_finished_loading): Implement.
7505
7506         * gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModelClass): New
7507         slot for a "finished-loading" signal.
7508         (gtk_file_system_model_class_init): Create the "finished-loading"
7509         signal.
7510         (struct _GtkFileSystemModel): New field
7511         idle_finished_loading_source.  We emit the "finished-loading"
7512         signal in an idle if the root folder was done loading right in
7513         _gtk_file_system_model_new(), so that the caller has a chance to
7514         connect to the signal.
7515         (_gtk_file_system_model_new): Connect to the normal signals of the
7516         folder even if the initial _list_children() fails.  Also, see if
7517         the folder is finished loading; connect to the "finished-loading"
7518         signal otherwise.
7519         (gtk_file_system_model_finalize): Remove the idle handler.
7520
7521         * gtk/gtkfilechooserdefault.c (set_list_model): Set a busy cursor
7522         and connect to the model's "finished-loading" signal.
7523         (get_toplevel): New helper function.
7524         (error_message): Use get_toplevel().
7525         (trap_activate_cb): Likewise.
7526         (location_popup_handler): Likewise.
7527         (set_busy_cursor): New function.
7528         (browse_files_model_finished_loading_cb): New callback.
7529
7530 Thu Mar 18 12:10:45 2004  Owen Taylor  <otaylor@redhat.com>
7531
7532         * gtk/gtktreeitem.c (gtk_tree_item_forall): Include 
7533         eventbox for expander. (#137564, reported by
7534         Jacques Garrigue)
7535
7536 2004-03-18  Guntupalli Karunakar  <karunakar@freedomink.org>
7537
7538         * mr.po: Added "mr" for Marathi to ALL_LINGUAS.
7539
7540 2004-03-17  Morten Welinder  <terra@gnome.org>
7541
7542         * gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): Free
7543         volumes not actually put into the shortcut list.
7544
7545         * tests/prop-editor.c (object_changed): Plug leak.
7546
7547         * tests/testfilechooser.c (main): Plug some leaks and expose
7548         others.
7549
7550         * tests/prop-editor.c (create_prop_editor): Don't leak the tooltip
7551         object.  Fixed #136652.
7552
7553         * gtk/gtkfilechooserdefault.c (check_icon_theme): Do nothing if we
7554         have no screen.  Fixes #137260.
7555         (shortcuts_add_bookmark_from_path): Simplify using check_is_folder
7556         thereby fixing leak.  Fixes #137259.
7557
7558         * gtk/gtkpathbar.c (gtk_path_bar_forall): Make this work when the
7559         slider buttons have been destroyed.
7560         (gtk_path_bar_remove): Make this work for slider buttons too.
7561         Fixes #137257
7562
7563 2004-03-15  Morten Welinder  <terra@gnome.org>
7564
7565         * gtk/gtkfilechooserdefault.c (shortcuts_add_bookmark_from_path):
7566         Sanitize and plug leak.
7567         (check_icon_theme): Only do something if the widget has a screen.
7568
7569 Wed Mar 17 01:20:28 2004  Matthias Clasen  <maclas@gmx.de>
7570
7571         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
7572         Move the repositioning logic from _gtk_entry_completion() popup
7573         over here. Fixes #137355, reported by Niklas Knutsson.
7574