]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-10
use PACKAGE_VERSION,bump year (#318654)
[~andy/gtk] / ChangeLog.pre-2-10
1 2005-10-12  Stefan Kost  <ensonic@users.sf.net>
2
3         * demos/gtk-demo/appwindow.c: (about_cb):
4           use PACKAGE_VERSION,bump year (#318654)
5
6 2005-10-11  Matthias Clasen  <mclasen@redhat.com>
7
8         * gtk/gtktextbtree.c (_gtk_text_btree_delete): Try to match an off 
9         toggle here with the matching on toggle if it immediately follows. 
10         This is a common case, and handling it here prevents quadratic blowup 
11         in cleanup_line() below.  (#317125)
12
13         * gtk/gtktextsegment.h: 
14         * gtk/gtktextsegment.c (_gtk_char_segment_new_from_two_strings): Pass
15         the character counts into this function instead of computing them
16         again.
17
18 2005-10-10  Tommi Komulainen  <tommi.komulainen@iki.fi>
19
20         * gtk/gtkfilechooser.h (GtkFileChooserError): Add ALREADY_EXISTS error
21         code.
22         * gtk/gtkfilechooserdefault.c
23         (gtk_file_chooser_default_add_shortcut_folder): Return an error code
24         when the shortcut already exists in the sidebar.  (#147521)
25
26 2005-10-09  Matthias Clasen  <mclasen@redhat.com>
27
28         * tests/testcombo.c: Demonstrate how to use custom widgets in
29         a GtkComboBox.  
30
31 2005-10-07  Federico Mena Quintero  <federico@ximian.com>
32
33         Fixes bug #317999:
34
35         * tests/autotestfilechooser.c (test_reload_sequence): Ensure that
36         the the result of gtk_file_chooser_get_folder() is NULL or
37         non-NULL at the right times.  Log the tests.
38         (test_button_folder_states): New test for the initial states of
39         the current folder in GtkFileChooserButton.
40         (main): Test that the number of warnings/errors/critical errors is
41         zero.
42
43         * gtk/gtkfilechooser.c (gtk_file_chooser_get_current_folder):
44         Clarify the documentation on when this can return NULL.
45         (gtk_file_chooser_get_current_folder_uri): Likewise.
46
47         * gtk/gtkfilechooserbutton.c (struct
48         _GtkFileChooserButtonPrivate): Added a folder_has_been_set flag;
49         we use it to keep track of whether a folder has been set.
50         (gtk_file_chooser_button_map):  Implement.  If no folder has been
51         loaded before, we at least try to load $cwd here.
52         (gtk_file_chooser_button_constructor): If the construct-time
53         dialog already has a folder set, turn on our folder_has_been_set
54         flag.
55         (dialog_current_folder_changed_cb): Turn on our
56         folder_has_been_set flag.
57
58 2005-10-07  Michael Natterer  <mitch@gimp.org>
59
60         * gtk/gtkfilechooserdefault.c: remove some explicit #defines of
61         PROFILE_FILE_CHOOSER because they break compilation after the
62         removal of <unistd.h>.
63
64 2005-10-07   Matthias Clasen  <mclasen@redhat.com>
65
66         * gtk/gtkfilechooserdefault.c: Properly fix the unistd.h include
67         by moving it out of the profiling ifdef.
68
69         * gtk/gtkfilechooserdefault.c: Remove a redundant (and
70         unconditional) include of unistd.h  (#318211, Kazuki Iwamoto)
71
72         * gtk/gtktexttag.c (gtk_text_attributes_ref): Use
73         g_return_val_if_fail(), not g_return_if_fail().  (#318412,
74         Kazuki Iwamoto)
75
76 2005-10-06  Matthias Clasen  <mclasen@redhat.com> 
77                 
78         * gtk/gtk.symbols:
79         * gtk/gtktextbuffer.h:
80         * gtk/gtktextbuffer.c: Add a readonly has-selection property
81         with a getter.  (#318161, Paolo Borelli)
82
83 2005-10-05  Matthias Clasen  <mclasen@redhat.com>
84
85         * README.in: Start collecting release notes for 2.10.
86
87         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Readd the memory
88         leak fix, since the assertion failures were traced to 
89         an xchat bug.  (#314696)
90         
91         * gtk/gtkstyle.c (gtk_style_detach):
92         (gtk_style_attach):  Documentation improvements.
93         (gtk_style_detach): Assert that the attach_count is > 0.
94
95 2005-10-04  Federico Mena Quintero  <federico@ximian.com>
96
97         * gtk/gtkfilechooserdefault.c (switch_to_shortcut): Take a
98         shortcut position, not a ShortcutsIndex, to make the function more
99         generic.
100         (home_folder_handler): Pass the resolved index to
101         switch_to_shortcut(), rather than just SHORTCUTS_HOME.
102         (desktop_folder_handler): Likewise for SHORTCUTS_DESKTOP.
103         (gtk_file_chooser_default_class_init): Add a "quick-bookmark"
104         binding signal, and bind it to Alt-1, Alt-2. ..., Alt-0.  These
105         make the respective key switch to the first, second, ..., tenth
106         bookmark.
107         (quick_bookmark_handler): Implement.
108
109 2005-10-04  Federico Mena Quintero  <federico@ximian.com>
110
111         * gtk/gtkpathbar.c (get_dir_name): Don't special-case Home and
112         Desktop; just use their real names on the file system for the
113         user-visible names.
114
115         * gtk/gtkfilechooserdefault.c
116         (gtk_file_chooser_default_class_init): Add a "desktop-folder"
117         binding signal, and bind it to M-d by default.
118         (desktop_folder_handler): Implement the default handler.
119         (home_folder_handler): Use a helper function.
120         (switch_to_shortcut): New helper function.
121         (shortcuts_append_home): Don't special-case the name of "Home";
122         just use the folder name.
123
124 2005-10-04  Tor Lillqvist  <tml@novell.com>
125
126         * gtk/gtkcalendar.c (gtk_calendar_init): Make it compile without
127         HAVE__NL_TIME_FIRST_WEEKDAY. (#317910, Mathias Hasselmann)
128
129 2005-10-04  Matthias Clasen  <mclasen@redhat.com>
130
131         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Revert the change
132         from yesterday, since it leads to assertion failures.  (#317879,
133         Sebastian Bacher)
134
135 2005-10-03  Matthias Clasen  <mclasen@redhat.com>
136
137         * gtk/gtkcalendar.c (gtk_calendar_init): Call 
138         calendar_compute_days() after setting priv->week_start.
139
140 2005-10-03  Matthias Clasen  <mclasen@redhat.com>
141
142         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Unref the style when
143         removing it from the hash table.  (#314696, Benjamin Berg)
144
145 2005-10-01  Tor Lillqvist  <tml@novell.com>
146
147         * gdk/win32/gdkdrawable-win32.c (blit_from_pixmap): In case
148         BitBlt() fails with ERROR_INVALID_HANDLE, the most probable cause
149         is that the the desktop isn't visible because the session has been
150         switched, the screen is locked, or a terminal server session
151         disconnected, so no error message necessary. (#137796)
152
153         It is of course remotely possible that BitBlt() failing with
154         ERROR_INVALID_HANDLE might also be caused by some other
155         problem. We could strive for perfection and track whether the
156         desktop is visible by using WTSRegisterSessionNotification() and
157         handling WM_WTSESSION_CHANGE. I think that's overdoing it just for
158         this issue, though. If we would track desktop visibility, we
159         should then avoid even trying to update the display at all while
160         the desktop isn't visible.
161
162 2005-09-30  Matthias Clasen  <mclasen@redhat.com>
163
164         * gtk/gtkcalendar.c (gtk_calendar_init): Another attempt
165         to correct the calculations for the first week day. We may
166         just have to remove this code if too many locales turn out 
167         to have broken data. 
168
169         * gtk/gtkimage.c (gtk_image_expose): Don't leak pixbuf in
170         some cases.  (#317611, Tommi Komulainen)
171
172         * gtk/gtksocket-x11.c (_gtk_socket_windowing_size_request):
173         Prevent overflow when storing size hints in an unsigned
174         short variable. Tracked down by Ray Strode and Søren Sandmann.
175
176 2005-09-29  Matthias Clasen  <mclasen@redhat.com>
177
178         * gtk/gtkbutton.c (gtk_button_set_image): Check arguments.  (#317491,
179         Paolo Borelli)
180
181         * gtk/gtkpaned.c (gtk_paned_grab_notify): Stop drags when being
182         grab shadowed.  (#317332)
183
184 2005-09-29  Tor Lillqvist  <tml@novell.com>
185
186         * gtk-zip.sh.in: DLLs are always in bin nowadays, no need to test.
187
188 2005-09-28  Federico Mena Quintero  <federico@ximian.com>
189
190         * tests/autotestfilechooser.c (test_reload_sequence): Oops, return
191         if the unmap test fails.
192         (test_reload_sequence): Use gtk_widget_show_now() instead of
193         gtk_widget_show() for the dialog.
194         Thanks to Tim Janik for noticing these.
195
196 2005-09-28  Federico Mena Quintero  <federico@ximian.com>
197
198         * tests/testcellrenderertext.c: New file with a set of tests for
199         GtkCellRendererText.  The idea is to run a text renderer through
200         most of its interesting property values to see that it works
201         correctly.
202
203         * tests/Makefile.am: Added testcellrenderertext.
204
205         * gtk/gtkfilechooserdefault.c (load_set_model): Mark the
206         entry/exit of this function for profiling.
207         (gtk_file_chooser_default_style_set): Mark the start/end of the
208         calls to the parent class and the the signal emission for profiling.
209
210 2005-09-29  Tor Lillqvist  <tml@novell.com>
211
212         * gtk/gtkmain.c (_gtk_get_localedir): The locale directory is
213         passed to bindtextdomain() which isn't UTF-8-aware, so convert to
214         system codepage using g_win32_locale_filename_from_utf8().
215         (#317457, Kazuki Iwamoto)
216
217 2005-09-28  Matthias Clasen  <mclasen@redhat.com>
218
219         * gtk/gtkselection.c (_gtk_selection_request): Free mult_atoms 
220         here. (#317039, Paolo Borelli)
221
222         * gtk/gtktexttag.h: 
223         * gtk/gtktexttag.c (gtk_text_attributes_ref): Return the attributes
224         to make this function work as boxed copy function.  (#317455,
225         Gustavo Carneiro)
226
227         * gtk/gtkclipboard.c (request_image_received_func): Don't unref
228         NULL.  (#316828, Tor Lillqvist)
229
230 2005-09-28  Tor Lillqvist  <tml@novell.com>
231
232         * modules/input/imime.c: Include <config.h>. (#317444, Kazuki
233         Iwamoto)
234
235 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
236
237         Don't reload the current folder unnecessarily on ::map().
238
239         * gtk/gtkfilechooserprivate.h (ReloadState): New enum to represent
240         the reloading state.
241         (struct _GtkFileChooserDefault): Added a "reload_state" field.
242
243         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init):
244         Initialize impl->reload_state.
245         (gtk_file_chooser_default_map): Check the impl->reload_state; load
246         a default folder if no folder has been set, or reload the current
247         one only if we had been unmapped first.
248         (gtk_file_chooser_default_update_current_folder): Set the
249         reload_state to RELOAD_HAS_FOLDER.
250         (gtk_file_chooser_default_unmap): Implement, and set the
251         reload_state to RELOAD_WAS_UNMAPPED.
252         (shortcuts_model_create): Don't call shortcuts_add_bookmarks()
253         here; they'll get (re)loaded on ::map() anyway.
254
255         * gtk/gtkfilechooserwidget.c
256         (gtk_file_chooser_widget_constructor): Don't set a default folder here.
257
258         * tests/autotestfilechooser.c (test_action_widgets): Don't take in
259         a dialog; build it ourselves.
260         (test_reload): New test to ensure that we don't load the default
261         folder more than once, and that we reload it when
262         unmapping/remapping.
263         (get_impl_from_dialog): New utility function.
264         (test_widgets_for_current_action): Use get_impl_from_dialog().
265
266 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
267
268         * gtk/gtkfilechooserdefault.c
269         (gtk_file_chooser_default_constructor): Mark the entry/exit of
270         this function for profiling.
271         (check_icon_theme): Likewise.
272         (change_icon_theme): Likewise.
273         (settings_notify_cb): Likewise.
274         (gtk_file_chooser_default_screen_changed): Likewise.
275         (update_chooser_entry): If the selection is empty, clear the file
276         name entry only if we are in CREATE_FOLDER mode.  In SAVE mode,
277         nothing will be selected when the user starts typeahead in the
278         treeview, and we don't want to clear the file name entry in that
279         case --- the user could be typing-ahead to look for a folder name.
280         Fixes bug #308332, patch by Jürg Billeter.
281
282 2005-09-27  Matthias Clasen  <mclasen@redhat.com>
283
284         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
285         Pop below the entry if there's more free space below the entry
286         than above.  (#316948, Tommi Komulainen)
287
288 2005-09-26  Federico Mena Quintero  <federico@ximian.com>
289
290         Do not create the save mode-specific widgets in the open modes, so
291         that we don't carry their baggage around.
292
293         * gtk/gtkfilechooserdefault.c
294         (gtk_file_chooser_default_constructor): Don't create the
295         save_widgets here.
296         (save_widgets_create): Set the impl->save_widgets directly here,
297         instead of passing the widgets back to the caller.  Also, pack
298         them into the impl's box.
299         (update_appearance): Create or destroy the save widgets as
300         appropriate.  Set the action of the save_file_name_entry here.
301         (shortcuts_add_current_folder): Set the active item in the
302         save_folder_combo only if it exists.
303         (gtk_file_chooser_default_set_property): Don't set the action of
304         the save_file_name_entry here.
305         (gtk_file_chooser_default_update_current_folder): Set the base
306         folder of the save_file_name_entry only if the entry exists.
307         (shortcuts_drag_data_received_cb): Cast the selection_data->data
308         to (const char *) since that's what shortcuts_drop_uris() expects.
309         (file_list_drag_data_received_cb): Likewise, for
310         g_uri_list_extract_uris().
311
312 2005-09-26  Tor Lillqvist  <tml@novell.com>
313
314         * gdk/win32/gdkwindow-win32.c (gdk_window_shape_combine_mask): Set
315         the shaped flag here, too. (#316871)
316         (gdk_window_shape_combine_region): Currently unimplemented, so
317         don't do anything to the shaped flag here.
318
319 2005-09-26  Matthias Clasen  <mclasen@redhat.com>
320
321         Fix #316871, reported by Dan Winship:
322         
323         * gdk/gdkwindow.h (struct _GdkWindowObject): Add a shaped flag.
324
325         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_mask) 
326         (gdk_window_shape_combine_region): Set it here.
327
328         * gdk/gdkwindow.c (gdk_window_invalidate_maybe_recurse): Don't
329         remove the child area for shaped windows.
330
331 2005-09-23  Matthias Clasen  <mclasen@redhat.com>
332
333         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_finalize):
334         Don't leak expander pixbufs.  (#316946, Tommi Komulainen)
335
336 2005-09-22  Michael Natterer  <mitch@imendio.com>
337
338         Renamed GtkCellRendererKeys to GtkCellRendererAccel to be
339         consistent with GTK+ terminology:
340
341         * gtk/gtkcellrendererkeys.[ch]
342         * tests/testkeys.c: removed...
343
344         * gtk/gtkcellrendereraccel.[ch]
345         * tests/testaccel.c: ...and added.
346
347         * gtk/Makefile.am
348         * gtk/gtk.h
349         * gtk/gtk.symbols
350         * tests/Makefile.am: changed accordingly.
351
352 2005-09-22  Matthias Clasen  <mclasen@redhat.com>
353
354         * gtk/gtkwidget.c (gtk_widget_class_init): Fix the documentation
355         for the grab-broken-event signal, noticed by Damon Chaplin.
356
357 2005-09-21  Tor Lillqvist  <tml@novell.com>
358
359         * gdk/win32/gdkselection-win32.c (gdk_selection_convert,
360         gdk_text_property_to_text_list_for_display,
361         gdk_text_property_to_utf8_list_for_display,
362         gdk_win32_selection_add_targets,
363         _gdk_win32_selection_convert_to_dib): Free return value from
364         gdk_atom_name().
365         (gdk_text_property_to_text_list_for_display): Drop GError variable
366         that isn't actually used after being set.
367
368 2005-09-20  Johan Dahlin  <jdahlin@async.com.br>
369
370         * gtk/gtkentry.c (gtk_entry_set_completion): Mention NULL in 
371         documentation.
372
373 2005-09-20  Tor Lillqvist  <tml@novell.com>
374
375         * gdk/win32/gdkselection-win32.c
376         (gdk_selection_owner_get_for_display): Do return the correct owner
377         for CLIPBOARD (i.e., the owner of the Windows Clipboard, if it is
378         a window GDK knows about). The reason to return NULL seems to have
379         gone when in the fix for bug #163702 the artificial
380         GDK_SELECTION_CLEAR event generation was removed from
381         gdk_selection_send_notify_for_display(). Fixes bug #316552.
382
383 2005-09-20  Matthias Clasen  <mclasen@redhat.com>
384
385         Avoid unnecessary XkbGetState() calls and XkbStateNotify
386         events.  (#151555, Søren Sandmann)
387
388         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Use 
389         XkbSelectEventDetails() to select XkbStateNotify events
390         for only the state we care about.
391
392         * gdk/x11/gdkprivate-x11.h:
393         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_state_changed): Pass
394         the event into the function and update the keymap state from
395         the state information contained in the event. Adjust all callers.
396         
397 2005-09-19  Matthias Clasen  <mclasen@redhat.com>
398
399         * gtk/gtkiconview.c: Use g_list_nth_data() instead of g_list_nth()->data
400         in multiple places to avoid segfaults if the index is out of range.  
401         (#316422, Guillaume Cottenceau)
402         (gtk_icon_view_set_drag_dest_item): 
403         (gtk_icon_view_scroll_to_path): Fix a typo in the docs.  (#316419,
404         #316424, Guillaume Cottenceau)
405
406 2005-09-18  Hans Breuer  <hans@breuer.org>
407
408         * gtk/gtktrayicon-win32.c : now handling events by hard-coded 
409         g_signal_emit_by_name() - will break when gtkstatusicon.c changes.
410
411 2005-09-18  Hans Breuer  <hans@breuer.org>
412
413         * gdk/gdk.symbols gdk/win32/gdkwin32.h gdk/win32/gdkcursorwin32.c : export
414         _gdk_win32_pixbuf_to_hicon() as gdk_win32_pixbuf_to_hicon_libgtk_only()
415         * gtk/gtktrayicon-win32.c : a lot of debug spew but it has started to show
416         the icon and is blinking with teststatusicon. More to come ...
417
418 2005-09-18  Hans Breuer  <hans@breuer.org>
419
420         * gtk/makefile.msc.in : fix typo for GTK_VER; define HAVE_CONFIG_H
421         cause gtkprogressbar.c has #include <config.h> conditionally; less
422         noise from generated gtk.def
423         * gtk/stock-icons/makefile.msc gdk/makefile.msc tests/makefile.msc : updated
424         
425         * gtk/gtktrayicon-win32.c : dummy implmentation to make gtk compile.
426         For me it works as well as the *NIX implemenation, that is not at all.
427
428         * gdk/win32/gdkproperty-win32.c : implement gdk_atom_intern_static_string()
429
430         * gdk/win32/gdkwindow-win32.c(gdk_window_set_urgency_hint) : only use
431         only use (WINVER >= 0x0500) when available from the SDK. Otherwise fall
432         back to true dynamic linking of FlashWindowEx. Makes gtk+ work on NT4.0
433         again - if compiled properly.
434
435         * tests/teststatusicon.c : don't use GNOME icons for testing, but icons
436         already coming with Gtk+. Makes it compile on win32.
437
438 2005-09-18  Guilherme de S. Pastore  <gpastore@cvs.gnome.org>
439
440         * README.cvs-commits: fixed some tiny typos
441
442 2005-09-16  Tor Lillqvist  <tml@novell.com>
443
444         * modules/engines/ms-windows/msw_style.c (draw_extension,
445         draw_box_gap): Check whether the widget actually is a GtkNotebook
446         before treating it as such. Drop some unneeded local variables,
447         use parameter with same information instead. (#316412)
448
449 2005-09-15  Federico Mena Quintero  <federico@ximian.com>
450
451         * tests/autotestfilechooser.c: Start a set of automated tests for
452         the file chooser.  The only test in there right now doesn't pass
453         yet.  It specifies the intended behavior of the first optimization
454         of a series which I'll do on the file chooser (see
455         http://primates.ximian.com/~federico/news-2005-09.html#14 for the
456         details of this optimization).
457
458         * tests/Makefile.am: Added autotestfilechooser.c.
459
460         * gtk/gtkfilechooserprivate.h (struct
461         _GtkFileChooserDialogPrivate): Move all the file chooser's private
462         structures to here, so that they can be accessed by
463         tests/autotestfilechooser.c:  _GtkFileChooserDialogPrivate,
464         _GtkFileChooserWidgetPrivate, LoadState, _GtkFileChooserDefault.
465
466         * gtk/gtkfilechooserdialog.c: See above.
467
468         * gtk/gtkfilechooserwidget.c: See above.
469
470         * gtk/gtkfilechooserdefault.c: See above.
471
472 Thu Sep 15 15:27:55 2005  Tim Janik  <timj@imendio.com>
473
474         * gtk/gtkwindow.c: 
475         gtk_window_map_event(): new function to work around lost unmap requests.
476         fixes bug #316180.
477
478 2005-09-14  Federico Mena Quintero  <federico@ximian.com>
479
480         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): Add
481         an easy-to-find profiling marker when starting to create a file
482         chooser.
483         (browse_files_model_finished_loading_cb): Likewise, for when the
484         chooser is finished loading.
485
486 2005-09-14  Tristan Van Berkom <tvb@cvs.gnome.org>
487
488         * gtk/gtkcolorbutton.c: Check "color" argument in 
489         gtk_color_button_set_color ()
490
491 2005-09-14  Matthias Clasen  <mclasen@redhat.com>
492
493         * gtk/gtklabel.c (gtk_label_get_type): 
494         * gtk/gtkbutton.c (gtk_button_get_type): 
495         * gtk/gtkwindow.c (gtk_window_group_get_type): No point in 
496         using a mem chunk for window groups, buttons, labels.
497
498         * gtk/updateiconcache.c (foreach_remove_func): Fix
499         a use-after-free bug.  (#316256, Alexander Nedotsukov)
500
501 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
502
503         * gtk/*.c: Various cleanups.  (#315360, Kjartan Maraas)
504
505         * gdk/*.c: Various cleanups.  (#315359, Kjartan Maraas)
506         
507 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
508
509         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
510         Let GDK_Return pass through in some more cases.
511
512         * gtk/gtkentry.c (gtk_entry_key_press): Reset the im context before
513         activating the entry. 
514
515         * gtk/gtkiconview.c (gtk_icon_view_class_init):
516         (gtk_icon_view_get_dest_item_at_pos):  Fix typos in the 
517         docs.  (#316008, #316027, #316121, Guillaume Cottenceau)
518
519         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Add some docs.
520         (#316001, Guillaume Cottenceau)
521
522         * gtk/gtkdnd.c (gtk_drag_set_icon_name): Fix a copy-and-paste
523         mistake in the docs.  (#315993, Guillaume Cottenceau)
524
525         * tests/testentrycompletion.c (create_simple_completion_model): Add
526         some strings containing multibyte characters.
527
528         * gtk/gtkentrycompletion.c (gtk_entry_completion_real_insert_prefix): 
529         Fix prefix insertion for multibyte characters.  (#316095,
530         Tommi Komulainen)
531
532         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): 
533         * gtk/gtkiconview.c (gtk_icon_view_create_drag_icon): Silently
534         return NULL if the widget is not realized.  (#316023,
535         Guillaume Cottenceau)
536
537 2005-09-11  Matthias Clasen  <mclasen@redhat.com>
538
539         * gdk/gdk.symbols: 
540         * gdk/gdkproperty.h: 
541         * gdk/x11/gdkproperty-x11.c (gdk_atom_intern_static_string): 
542         New function to avoid pointless strdups when creating atoms
543         from static strings.  
544
545         * gdk/x11/*.c:
546         * gtk/*.c:  Use gdk_atom_intern_static_string() where 
547         appropriate.
548
549 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
550
551         * gtk/gtkcellrendererkeys.h: 
552         * gtk/gtkcellrendererkeys.c: Add a cell renderer for displaying
553         and editing accelerators, a port of EggCellRendererKeys .
554
555         * gtk/gtk.symbols:
556         * gtk/gtk.h:
557         * gtk/Makefile.am: Add the keys cell renderer.
558
559         * tests/Makefile.am: 
560         * tests/testkeys.c: Test GtkCellRendererKeys
561
562 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
563
564         Make it possible to determine if a key event is for a
565         modifier key:
566         
567         * gdk/x11/gdkprivate-x11.h: 
568         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_key_is_modifier): 
569         New function to determine if a keycode is mapped to a modifier.
570         (get_xkb): Get the modmap.
571
572         * gdk/x11/gdkevents-x11.c (translate_key_event): Set the 
573         is_modifier bit by calling _gdk_keymap_key_is_modifier().
574
575         * gdk/gdkevents.h (struct _GdkEventKey): Add an is_modifier
576         bit.
577
578 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
579
580         * gdk/gdkpixbuf-drawable.c (convert_real_slow): Remove an 
581         unused variable, noticed by Kjartan Maraas.
582
583 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
584
585         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event): 
586         Make drag reordering work properly for columns other than the
587         first.  (#315054, Dan Winship)
588         
589         * gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Handle 
590         invalid fontnames better. (#136926, Michael R. Walton)
591         
592         Stop cursor blinking in non-editable regions of a text view.
593         (#311508, Torbjörn Andersson)
594         
595         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): 
596         (cursor_blinks): Take editability into account when deciding
597         whether the cursor blinks.
598         (gtk_text_view_button_release_event): 
599         (gtk_text_view_move_cursor_internal): Update cursor blinking here.
600
601         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_start_editing): 
602         Use connect_after to connect to the focus_out event. This
603         ensures that the entry has already stopped blinking by the time
604         we emit the edited signal.  (#315229, Thomas Leonard)
605
606         * tests/testgtk.c: Use GDK_MOD1_MASK, not GDK_ALT_MASK.
607
608         * gtk/gtkwindow.c (gtk_window_parse_geometry): Don't set
609         unsigned ints to -1.  (#315481, Kjartan Maraas)
610
611         * gtk/gtkcalendar.c (gtk_calendar_init): first_weekday is relative
612         to week_1stday, not to Sunday. Gotta love the ISO 14652 guys...
613         (#314473, Stanislav Brabec)
614
615 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
616
617         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Document
618         memory handling.  (#314975, Torsten Schoenfeld)
619
620         * gtk/gtkiconview.c (gtk_icon_view_class_init): 
621         * gtk/gtkfilesel.c (gtk_file_selection_class_init): 
622         * gtk/gtkcombobox.c (gtk_combo_box_class_init): 
623         * gtk/gtklabel.c (gtk_label_class_init): 
624         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): 
625         Stylistic improvements and clarifications for some blurbs. 
626         (#315520, Clytie Siddall)
627
628 2005-09-09  Tor Lillqvist  <tml@novell.com>
629
630         * gdk/win32/gdkdisplay-win32.c (gdk_display_get_name): Cache the
631         display name. There is only one GdkDisplay on Win32, and
632         constructing the display name isn't entirely trivial, so cacheing
633         is probably worth it. For instance GIMP calls this function a lot.
634         (gdk_display_open): Call gdk_display_get_name() to prime the
635         cached name.
636         (gdk_display_get_n_screens, gdk_display_get_screen,
637         gdk_display_get_default_screen): Verify parameter correctness like
638         the X11 backend does.
639
640         * gdk/win32/gdkscreen-win32.c (gdk_screen_make_display_name):
641         Return a freshly allocated string, as the API specifies. Fixes a
642         heap corruption problem that caused random errors and crashes in
643         GIMP, for instance.
644
645 2005-09-07  Matthias Clasen  <mclasen@redhat.com>
646
647         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
648         Make C-u commit and restart hex input if we are already in a
649         hex sequence.
650
651 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
652
653         * gdk/x11/gdkkeys-x11.c (update_modmap): Make the modmap reflexive.
654         (_gdk_keymap_add_virtual_modifiers): Don't add both Alt and Meta
655         if they are mapped to the same modifier.
656
657         * gtk/Makefile.am: Rename gtkstatusicon-x11.c and gtktrayicon.c
658         to gtkstatusicon.c and gtktrayicon-x11.c
659
660         * gtk/gtkaccelgroup.c: Include Super, Hyper and Meta in the
661         default accel mod mask.
662
663         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): 
664         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
665         Don't use GDK_ALT_MASK.
666
667         * gdk/gdktypes.h: No need to introduce GDK_ALT_MASK
668
669 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
670
671         Add support for extra virtual modifiers:  (#85780, Owen Taylor)
672         
673         * tests/testgtk.c (create_key_lookup): Add tests for extra virtual
674         modifiers.
675
676         * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Try to match both against
677         Mod2 - Mod5 and against Super, Hyper, Meta.
678
679         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
680         * gtk/gtkaccelgroup.c (gtk_accelerator_parse) 
681         (gtk_accelerator_name): Support Super, Hyper Meta and Mod2 - Mod5.
682
683         * gdk/x11/gdkkeys-x11.c (struct _GdkKeymapX11): Add a 
684         modmap to maintain the information which X modifiers map to
685         virtual modifiers.
686         (get_xkb): Set up the modmap from the XKB tables.
687         (update_keymaps): Set up the modmap from the information returned
688         by XGetModifierMapping in the non-XKB case.
689
690         * gdk/x11/gdkprivate-x11.h: 
691         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_add_virtual_modifiers): New 
692         function to set the virtual modifiers in the state.
693
694         * gdk/x11/gdkevents-x11.c (translate_key_event): Call 
695         _gdk_keymap_add_virtual_modifiers here.
696
697         * gdk/gdktypes.h (GdkModifierType): Add bits for virtual Super, 
698         Hyper and Meta modifiers. Also add GDK_ALT_MASK as an alias
699         for GDK_MOD1_MASK.
700
701 2005-09-05  Matthias Clasen  <mclasen@redhat.com>
702
703         * gtk/gtkaction.c (connect_proxy): Set the label of a button
704         if it has no child.  (#315253, John Finlay)
705
706 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
707
708         * gtkimcontextsimple.h: Add a modifiers_dropped bit
709
710 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
711
712         * gtk/gtkentry.c (gtk_entry_destroy): Disconnect idle handlers
713         on destroy to avoid problems when they are called on a destroyed
714         widget.  (#315135, John Cupitt)
715         
716         * gtk/gtkentry.c (gtk_entry_class_init):
717         * gtk/gtktextview.c (gtk_text_view_class_init): Add bindings
718         for Ctrl-Shift-A to unselect all.  (#309301, Kathy Fernandes)
719
720         * gtk/gtkimcontextsimple.c: Rework the Unicode hex input
721         code. Now we only steal a single key combination, Ctrl-Shift-U,
722         instead of sixteen. 
723         A hex Unicode sequence must be started with Ctrl-Shift-U, followed
724         by a sequence of hex digits entered with Ctrl-Shift still held.
725         Releasing one of the modifiers or pressing space while the modifiers
726         are still held commits the character. It is possible to erase
727         digits using backspace.
728         As an extension to the above, we also allow to start the sequence
729         with Ctrl-Shift-U, then release the modifiers before typing any
730         digits, and enter the digits without modifiers.
731         (#82011, Owen Taylor)
732         
733 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
734
735         * gtk/gtkmain.c (gtk_get_event_widget): If the window is destroyed,
736         we still need to deliver the destroy event.  (#314980, Chris Lahey)
737
738         * gtk/gtktextview.c (gtk_text_view_key_press_event): Reset 
739         im context before committing \n or \t.
740
741 2005-09-02  Alexander Larsson  <alexl@redhat.com>
742
743         * gtk/gtkfilechooserdefault.c: (shortcuts_add_volumes),
744         (shortcuts_activate_volume):
745         Handle base_path being null in the rest of the cases (#310270)
746
747 2005-09-02  Tor Lillqvist  <tml@novell.com>
748
749         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Keep track of
750         cursor position also in root window coordinates. Prune out
751         superfluous WM_MOUSEMOVE events even earlier, based on root window
752         coordinates. Windows sends WM_MOUSEMOVE messages after a new
753         window has ben mapped below the cursor even if the mouse doesn't
754         move. We used to generate GDK_MOTION_NOTIFY in these cases. This
755         confused at least gtk_menu_motion_notify(). (#314995)
756
757         * gtk/gtkintl.h: No need to include config.h here. It caused
758         warnings about GTK_LOCALEDIR being redefined on Win32 when
759         compiling files where gtkintl.h is included after gtkprivate.h
760         (which #undefines and re-#defines GTK_LOCALEDIR on Win32).
761
762         * gtk/gtkplug.c: Include config.h.
763
764 2005-09-01  Matthias Clasen  <mclasen@redhat.com>
765
766         * gtk/gtkfilesystemunix.c: Pass statbufs down to 
767         xdg_mime_get_mime_type_for_file() where possible, to avoid
768         useless re-stating.  
769         
770         * gtk/gtkaction.c (gtk_action_get_accel_closure): Fix doc
771         typo.  (#314921, Guillaume Cottenceau)
772
773         * gdk/*.c: Intern some more strings.
774         * gtk/gtkintl.h: 
775         * gtk/*.c: Define an I_() macro and use it instead of the 
776         bulky g_intern_static_string().
777
778 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
779
780         * gtk/gtkbindings.c (binding_signal_new): Intern the signal name
781         instead of copying it.
782
783         * gtk/gtktypeutils.c (gtk_identifier_get_type): Some more string interning.
784
785         * gtk/*.c: Also intern static strings passed to 
786         g_object_set_data().
787
788         * gdk/Makefile.am: 
789         * gtk/Makefile.am: Intern type names in code generated by 
790         glib-mkenums, too.
791
792         * gtk/*.c: 
793         * gdk/x11/*.c: 
794         * gdk/*.c: Intern type names before registering the type to avoid 
795         unnecessary copies.
796
797         * configure.in: Require GLib 2.9.0
798
799 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
800
801         * gtk/gtktoolbar.c: Undeprecate gtk_toolbar_set_icon_size(),
802         and add icon-size and icon-size-set properties.  (#314172)      
803
804         * gtk/gtkwindow.c (gtk_window_set_transient_for): Inherit window
805         groups across transient parents.  (#312918, Christian Persch)
806
807         * gtk/gtktreemodel.c: Some documentation fixes.  (#314882,
808         Guillaume Cottenceau)
809
810         * gtk/gtktextiter.c (gtk_text_iter_backward_visible_cursor_positions): 
811         Fix a typo in the docs.  (#314878, Guillaume Cottenceau)
812
813 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
814
815         * gtk/gtkentry.c (gtk_entry_class_init): Add key bindings to
816         make C-/ select all and C-\ unselect all.  (#309301,
817         Kathy Fernandez)
818
819         * gtk/gtkimcontextsimple.c: Change the compose sequence for
820         soft hyphen to be multi_key-minus-minus-space, and add
821         compose sequences multi_key-minus-minus-period and 
822         multi_key-minus-minus-minus for en dash and em dash.
823         (#172653, Christian Lohmaier)
824
825         * gtk/gtkentry.c (gtk_entry_draw_frame): Fix some unused
826         code.  (#313946, Christian Persch)
827
828         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Another
829         fix for the default value of the "ui" property.
830
831 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
832
833         * gtk/gtk.symbols: 
834         * gtk/gtkselection.h:
835         * gtk/gtkselection.c: Add functions which look for text, image
836         or uri targets in an array of atoms.   (#314089, Mark Wielaard)
837
838         * gtk/gtk.symbols: 
839         * gtk/gtkselection.h:
840         * gtk/gtkselection.c (gtk_selection_data_targets_include_uri): 
841         Add a function to check wether targets include uri.  
842         (#314092, Mark Wielaard)
843         
844         * gtk/gtk.symbols: 
845         * gtk/gtkwindow.h: 
846         * gtk/gtkwindow.c: Add a deletable property with getter
847         and setter, to control the close button in the window 
848         frame.  (#59718, Havoc Pennington)
849
850 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
851
852         * gtk/gtkrc.key.emacs: Add C-n/C-p/C-f/C-b as alternatives
853         to the arrow keys for menu navigation.  (#162825, Carl Worth)
854
855         * gtk/gtkentry.c, gtk/gtktextview.c: More typo fixes
856
857         * gtk/gtksocket-x11.c, gtk/gtkstatusicon-x11.c: Fix typos.
858
859         * gtk/gtkstatusicon-x11.c (gtk_status_icon_new_from_stock): 
860         * gtk/gtkimage.c (gtk_image_new_from_stock): Don't
861         refer to nonexisting stock ids.
862
863         * gtk/gtktextview.c (popup_targets_received): 
864         * gtk/gtkentry.c (popup_targets_received): Construct
865         the "Select All" menuitem from stock.
866
867         * gtk/stock-icons/stock_select_all_{16,24}.png:
868         * gtk/stock-icons/Makefile.am: 
869         * gtk/gtkiconfactory.c:
870         * gtk/gtkstock.h: 
871         * gtk/gtkstock.c: Add a "Select All" stock item.  (#78545,
872         Calum Benson)
873
874         * gtk/gtktrayicon.c: Add a pointer to the spec.
875
876         * gtk/gtkstatusicon-x11.c: Add docs.
877
878         * gtk/gtkstatusicon.h: Fix a typo.
879
880         Add a cross-platform "tray icon" API, by
881         porting EggStatusIcon/EggTrayIcon (#105101)
882         
883         * gtk/gtkstatusicon.h: A GtkStatusIcon is an object which
884         displays an icon in a notification area.
885
886         * gtk/gtkstatusicon-x11.c: GtkStatusIcon implementation for
887         X11, using GtkTrayIcon.
888
889         * gtk/gtktrayicon.h: 
890         * gtk/gtktrayicon.c: An implementation of the freedesktop.org
891         system tray specification, not public API.
892
893         * gtk/gtk.symbols: Add new exported functions.
894
895         * gtk/gtk.h: Include gtkstatusicon.h.
896
897         * gtk/Makefile.am: Add new files.
898
899         * tests/Makefile.am:
900         * tests/teststatusicon.c: Test for GtkStatusIcon.
901
902 2005-08-29  Christopher Aillon  <caillon@redhat.com>
903
904         * gtk/gtkstock.c: Add builtin GtkStockItems for GTK_STOCK_CONNECT
905         and GTK_STOCK_DISCONNECT
906         
907 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
908
909         * gtk/gtksocket-x11.c (_gtk_socket_windowing_embed_notify): 
910         Use XFixesChangeSaveSet if available.  (#314682)
911
912         * gtk/gtkmenu.c (gtk_menu_grab_notify):  Only cancel if the menu
913         was active.  (#314298, Christian Persch, analysis by Mark McLoughlin)
914
915 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
916
917         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): Remove an
918         accidentally leftover duplicate pixbuf creation.  (#314700,
919         Kjartan Maraas)
920
921         * gtk/gtksettings.c (settings_update_cursor_theme): Don't 
922         leak the cursor theme name.  (#314693, Kjartan Maraas)
923
924         * gdk/x11/gdkasync.c (_gdk_x11_get_window_child_info): Free 
925         state.children in all cases.  (#313862, Kjartan Maraas)
926
927 2005-08-28  Matthias Clasen  <mclasen@redhat.com>
928
929         * po/POTFILES.in, po-properties/POTFILES.in:
930         Add gdk/gdkscreen.c
931
932 2005-08-27  Matthias Clasen  <mclasen@redhat.com>
933
934         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Fix the default
935         value of the ui property. (#314532, Yong Wang)
936
937         * gdk/x11/gdkproperty-x11.c (gdk_property_get): Don't warn
938         when G_MAXLONG is passed as length.  
939
940 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
941
942         * gtk/updateiconcache.c: Add a separate --ignore-theme-index option
943         to avoid overloading --force.  (JP Rosevaar)
944
945 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
946
947         * configure.in: Bump version to 2.9.0
948
949         * gdk/gdk.symbols: 
950         * gdk/gdkscreen.h: 
951         * gdk/gdkscreen.c: Make the GdkScreen font options api
952         public, and add properties GdkScreen::font-options and
953         GdkScreen::resolution.  (#314004)
954
955         * gdk/gdkpango.c:
956         * gtk/gtksettings.c:
957         * gtk/gtkwidget.c: Adjust all callers.
958         
959         * gdk/gdkintl.h: Simplify and use glib/gi18n-lib.h.
960         * gdk/gdkpango.c: Include gdkintl.h, not gtkintl.h.
961         * gdk/gdkscreen.c: Include gdkintl.h.
962
963         * gtk/gtkicontheme.c (theme_lookup_icon): Avoid an uninitialized
964         variable warning, pointed out by Colin Walters. (#314585)
965
966 2005-08-26  Tor Lillqvist  <tml@novell.com>
967
968         * gtk/gtkfilesystemwin32.c: Remove some ifdeffed out debugging
969         printouts.
970         (gtk_file_system_win32_parse): Don't mishandle UNC paths. (#314519)
971
972 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
973
974         * gtk/gtkcalendar.c (gtk_calendar_init): Fix the calculation
975         of week_start.  (#314473, JP Rosevaar)
976
977 2005-08-25  Thomas Fitzsimmons  <fitzsim@redhat.com>
978
979         * gtk/gtkfilesystemmodel.c (idle_finished_loading_cb): Acquire GDK
980         lock.  (#314533, Thomas Fitzsimmons)
981
982 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
983
984         * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Handle
985         NULL gracefully.  (#314523, Ed Catmur)
986
987 2005-08-25  Owen Taylor  <otaylor@redhat.com>
988
989         * gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): 
990         Handle theme == NULL.
991
992 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
993
994         * gtk/gtkmenutoolbutton.c (menu_position_func): Take widget
995         y offset into account when positioning the popup.  (#314470,
996         Christian Persch)
997
998 2005-08-25  Owen Taylor  <otaylor@redhat.com>
999
1000         * gdk/gdkscreen.c (gdk_screen_get_type): Use gdk_screen_init
1001         as instance_init, not base_init! (#314452, Fix from Frederic
1002         Crozat, reported by Joe Marcus Clarke). Trivial cleanup: use -1.
1003         rather than 1 for a negative flag value.
1004
1005 2005-08-24  Owen Taylor  <otaylor@redhat.com>
1006
1007         * gdk/gdkpango.c (draw_error_underline): Add a note about
1008         cut-and-paste between here and Pango.
1009
1010 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
1011
1012         * === Released 2.8.2 ===
1013
1014         * gtk/gtkclipboard.c (request_image_received_func): Use the correct
1015         callback for image/gif, and also try image/bmp.  (#314086,  Mark 
1016         Wielaard)
1017
1018         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon): 
1019         Use gnome-dev-harddisk for volumes, not gnome-fs-blockdev.  (#314382,
1020         Sebastien Bacher)
1021         
1022         * NEWS: Updates
1023
1024         * gtk/gtksettings.c (gtk_settings_get_for_screen): Make sure font
1025         and cursor settings get propagated down to the screen initially.
1026         Pointed out by Frederic Crozat.
1027
1028         * gtk/gtkicontheme.c (ensure_valid_themes): Don't try to send a client
1029         message if the screen is NULL. Noticed by Kjartan Maraas.
1030
1031 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
1032
1033         * Bump version
1034
1035         * === Released 2.8.1 ===
1036
1037         * NEWS: Updates
1038         
1039 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
1040
1041         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_visible): Protect
1042         against lazy filterers which return values other than TRUE or
1043         FALSE from their visible func.  (#314335)
1044
1045 2005-08-23  Owen Taylor  <otaylor@redhat.com>
1046
1047         Fix for #314004, reported by Michael Reinsch:
1048
1049         * gdk/gdk.symbols:
1050         * gdk/gdkscreen.[ch]: Add gdk_screen_get/set_font_options_libgtk_only()
1051         Add gdk_screen_get/set_resolution_libgtk_only()
1052
1053         * gdk/gdkpango.c (gdk_pango_context_get_for_screen): Set
1054         the options for the screen on the newly created context.
1055
1056         * gtk/gtksettings.c (settings_update_font_options/dpi) gtkwidget.c: 
1057         Move font options and dpi code from gtkwidget.c to gtksettings.c, set
1058         the font options on the screen.
1059
1060         * gtk/gtkwidget.c (gtk_widget_update_pango_context): Just get
1061         the font options from the screen and set them on the context.
1062
1063 2005-08-23  Kristian Rietveld  <kris@gtk.org>
1064
1065         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): don't
1066         bother inserting new rows in a level with a zero refcount and
1067         immediately free the level. (Fixes #312350, reported by Markku Vire).
1068
1069 2005-08-23  Matthias Clasen  <mclasen@redhat.com>
1070
1071         * gtk/updateiconcache.c: Complain when there is no index.theme file
1072         in the specified directory, unless --force is used. Also add an
1073         --index-only option to create caches without image data.
1074
1075         * gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Fix a
1076         C99ism.  (#314262, Robert Jeff Mitchell)
1077         
1078 2005-08-22  Manish Singh  <yosh@gimp.org>
1079
1080         * gtk/gtkicontheme.h: add declaration for _gtk_icon_theme_check_reload.
1081
1082         * gtk/gtkwindow.c: remove declaration of gtk_window_read_rcfiles.
1083
1084 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
1085
1086         * gtk/gtkwindow.c (gtk_window_client_event): 
1087         * gtk/gtkicontheme.c (ensure_valid_themes) 
1088         (_gtk_icon_theme_check_reload): Implement a clientmessage based
1089         scheme for makeing sure that all GTK+ applications notice if an
1090         icon theme has been updated. This should prevent multiple versions
1091         of an icon theme cache to be mapped in memory at the same time,
1092         which can cause excessive memory consumption.  (#313156, Chris 
1093         Lahey)
1094
1095 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
1096
1097         * gtk/gtkicontheme.c (gtk_icon_theme_load_icon): Add a note
1098         regarding icon theme changes.
1099
1100         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): When returning
1101         pixbufs which are backed by the mmapped memory of an icon cache,
1102         increase the refcount of the icon cache, so that the memory is not
1103         munmapped away underneath the pixbuf upon icon theme changes.  
1104         (#314170, Kjartan Maraas)
1105
1106         * docs/tools/Makefile.am (LDADDS): Add GTK_DEP_LIBS, in order 
1107         to link against Xext.  (#314062)
1108
1109         * gtk/gtkhsv.c (paint_triangle): One more fix to prevent buffer
1110         overruns.  (#314081, Hans Breuer)
1111
1112 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
1113
1114         * gtk/gtkentry.c (gtk_entry_get_layout): Clarify that the
1115         returned layout must not be modified.
1116
1117 Sat Aug 20 16:12:14 2005  Jonathan Blandford  <jrb@redhat.com>
1118
1119         * gtk/gtktreeview.c (gtk_tree_view_set_model): clear
1120         scroll_to_path if the model changes.
1121
1122         * gtk/gtkiconview.c: (gtk_icon_view_destroy),
1123         (gtk_icon_view_size_allocate), (gtk_icon_view_set_cursor),
1124         (gtk_icon_view_scroll_to_path): Handle scrolling to a path before
1125         we're realized, #312798
1126         (gtk_icon_view_set_model): clear scroll_to_path if the model
1127         changes.
1128
1129 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
1130
1131         * gtk/gtkrange.c (gtk_range_adjustment_changed) 
1132         (gtk_range_adjustment_value_changed):  Don't queue a draw
1133         if the layout has not changed.  (#313991, Benjamin Berg)
1134
1135 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
1136
1137         * gtk/gtktreeitem.c: Remove duplicate lines.  (#313344,
1138         Benoit Carpentier)
1139
1140         * modules/engines/ms-windows/msw_style.c (setup_system_styles): 
1141         Fix a typo. 
1142
1143         * gtk/gtkfilechooserbutton.c (change_icon_theme) 
1144         (model_add_special, model_add_special, model_add_volumes):
1145         Handle pixbuf being NULL without warnings. Also, don't
1146         leak pixbuf references when the icon theme is changed.
1147
1148         * gtk/gtkmain.c (gtk_get_event_widget): Don't access
1149         the user data on destroyed windows, since at best
1150         it can be a stale pointer.  (#313953, Robin Green)      
1151
1152 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
1153
1154         * gtk/gtkhsv.c (paint_triangle): Avoid a buffer overrun.  
1155         (#313900, Sebastien Bacher)
1156
1157         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Return
1158         FALSE if the tree is empty.  (#313891, Guillaume Cottenceau)
1159
1160         * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display) 
1161         (xdnd_read_actions, get_client_window_at_coords_recurse): 
1162         Free data returned from XGetWindowProperty. 
1163
1164         * gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window) 
1165         Free data returned from XGetWindowProperty.  (313867, Kjartan
1166         Maraas)
1167         
1168         * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse): Free
1169         children in all cases.  (#313862, Kjartan Maraas)
1170
1171         * gtk/gtkicontheme.c (theme_lookup_icon): Store GtkIconData structs 
1172         in the per-directory hash, even if they come from the icon cache. 
1173         We tried to avoid that before, but as a result leaked icon data
1174         structs.  (#313852, Kjartan Maraas)
1175
1176 2005-08-18  Matthias Clasen  <mclasen@redhat.com>
1177
1178         * gtk/gtkmenutoolbutton.c (gtk_menu_tool_button_destroy): Disconnect
1179         signal handlers on destroy, not on finalize.  (#313759, Brett Atoms)
1180
1181 2005-08-15  Owen Taylor  <otaylor@redhat.com>
1182
1183         * configure.in: Add -lXext to GDK_EXTRA_LIBS in absence of pkg-config
1184         files for x11/xext. (Jonas Bonn)
1185
1186 2005-08-15  Tor Lillqvist  <tml@novell.com>
1187
1188         * gtk/gtkicontheme.c (theme_lookup_icon): Put debugging printout
1189         inside GTK_NOTE.
1190
1191 2005-08-15  Owen Taylor  <otaylor@redhat.com>
1192
1193         * configure.in: Fix have_base_pc / have_base_x_pc typo.
1194
1195         * gdk/x11/gdkdrawable-x11.c gtk/gtksettings.c: Remove panoxft.h includes.
1196         (#313417, James Andrewartha)
1197
1198         * configure.in: Add fontconfig to X_PACKAGES, since we use it for
1199         FcNameConstant(). (More of #313417)
1200
1201 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
1202
1203         * gtk/gtkfilechooserdefault.c: When using gtk_dialog_run() for
1204         modal dialogs, make sure to inherit the window group from 
1205         the parent, since we don't inherit window groups across
1206         transient parents currently.  (#312918, Christian Persch)
1207
1208         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): 
1209         * gtk/gtkdialog.c (gtk_dialog_run): Slight update to the docs. 
1210
1211         * gtk/gtkiconview.c (gtk_icon_view_select_path) 
1212         (gtk_icon_view_scroll_to_path): Handle paths of depth 0
1213         gracefully.  (#312796, Jonathan Blandford)
1214
1215         * tests/testtoolbar.c: Add some more tests for menu placement.
1216
1217         * gtk/gtkmenutoolbutton.c (menu_position_func): 
1218         * gtk/gtktoolbar.c (menu_position_func): Improve positioning
1219         of toolbutton menus and of the overflow menu.  (#312937, 
1220         #153870, Christian Persch, Paolo Borelli)
1221
1222 2005-08-15  Tor Lillqvist  <tml@novell.com>
1223
1224         * gtk/updateiconcache.c: Use g_path_get_dirname() instead of
1225         the nonportable <libgen.h> and dirname().
1226
1227 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
1228
1229         * gtk/gtksizegroup.c: Use object data to mark widgets and
1230         groups as visited, so that we avoid constant extra list
1231         traversals. Also allocate quarks in class_init.  (#311618,
1232         Michael Natterer)
1233
1234         * gtk/gtkicontheme.c (gtk_icon_theme_lookup_icon): Correct the 
1235         download location for the hicolor icon theme. (#313475, Olexiy 
1236         Avramchenko)
1237
1238         * gtk/gtkicontheme.c: Remove debug spew. 
1239
1240 2005-08-15  Owen Taylor  <otaylor@redhat.com>
1241
1242         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_back_pixmap): 
1243         * gdk/win32/gdkwindow-win32.c (gdk_window_set_back_pixmap): 
1244         * gdk/x11/gdkwindow-x11.c (gdk_window_set_back_pixmap):
1245         Handle pixmap == NULL when checking for a colormap.
1246         (Allin Cottrell).
1247
1248 2005-08-14  Matthias Clasen  <mclasen@redhat.com>
1249
1250         * gtk/updateiconcache.c: Store only one copy of the pixel data
1251         for symlinked icons. To achieve this, maintain a hashtable 
1252         mapping pathnames to pixel data, and share the pixel data for
1253         all symlinks resolving to the same pathname. When writing out
1254         the image data, write out the pixel data only the first time
1255         it is met, and store the offset pointing to the first copy
1256         for use in all later cases.
1257         This reduces the size of the Bluecurve icon cache from 40
1258         to 13MB. (#312972)
1259