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