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