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