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