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