]> Pileus Git - ~andy/gtk/blob - ChangeLog
Documentation fixes. (#324815, Ross Burton)
[~andy/gtk] / ChangeLog
1 2005-12-25  Matthias Clasen  <mclasen@redhat.com>
2
3         * gtk/gtkwindow.c: Documentation fixes.  (#324815, 
4         Ross Burton)
5
6         * configure.in: Require GLib 2.9.2
7
8 2005-12-24  Matthias Clasen  <mclasen@redhat.com>
9
10         * gdk/gdkregion-generic.c: 
11         * gdk/gdkpolyreg-generic.c: 
12         * gdk/gdkregion.h: 
13         * gdk/gdkrectangle.c: Inline docs, use g_assert(), avoid 
14         extra allocation for rectangular regions.
15
16 Thu Dec 22 18:53:14 2005  Tim Janik  <timj@gtk.org>
17
18         * gtk/gtkobject.[hc]: renamed GUnowned to GInitiallyUnowned.
19
20 Thu Dec 22 17:55:11 2005  Tim Janik  <timj@gtk.org>
21
22         * gtk/gtkobject.h: parent type fixups in structure declarations.
23
24 Thu Dec 22 16:01:27 2005  Tim Janik  <timj@imendio.com>
25
26         * gtk/gtkobject.c: derive GtkObject from GUnowned,
27         so it initially has a floating reference count.
28         gtk_object_class_init(): installa floating flag handler with
29         libgobject, so for GtkObjects the flag is stored as GTK_FLOATING
30         in the ->flags member.
31
32         * tests/floatingtest.c: test floating flag uses.
33
34 2005-12-21  Matthias Clasen  <mclasen@redhat.com>
35
36         * gdk/gdkregion-generic.c: Use the slice allocator
37         for regions. Still todo: avoid extra allocations for
38         the single-rectangle case.
39
40         * gtk/gtksettings.c (gtk_settings_class_init): Update
41         class_n_properties after installing color-hash, since
42         other classes install settings, too.
43
44         * gtk/gtkctree.c: 
45         * gtk/gtkclist.c: Fix some mistakes in the conversion
46         from mem chunks to slice allocator.
47
48         * gtk/gtkiconview.c (adjust_wrap_width): Adjust the 
49         wrap-width also if an explicit item width is set.  
50         (#322475, Alex Graveley)
51         
52 2005-12-20  Matthias Clasen  <mclasen@redhat.com>
53
54         * gtk/gtkiconview.c (gtk_icon_view_button_press): Reset 
55         pressed_button to -1 after handling a double click, so that
56         motion events occurring between here and the release event
57         don't trigger DND.  (#324588, Dave Andreoli)
58
59 2005-12-19  Matthias Clasen  <mclasen@redhat.com>
60
61         * gtk/gtkcellrenderer.c: 
62         * gtk/gtkselection.c: 
63         * gtk/gtkcalendar.c: 
64         * gtk/gtkitemfactory.c: 
65         * gdk/gtkcombo.c: 
66         * gdk/gdkpixbuf-render.c: Documentation updates
67
68         * gtk/gtktreemodel.c: 
69         * gtk/gtkplug.c: 
70         * gtk/gtkwindow.c: Documentation fixes.
71
72 2005-12-19  Michael Natterer  <mitch@imendio.com>
73
74         * gtk/gtkentry.c: implement boolean property "truncate-multiline"
75         which, when enabled, truncates multi-line pastes or drops to their
76         first line. Fixes bug #322252.
77
78         * gtk/gtkfilechooserentry.c (gtk_file_chooser_entry_init): enable
79         truncate-multiline here.
80
81 2005-12-17  Matthias Clasen  <mclasen@redhat.com>
82
83         * gtk/gtksettings.c (get_color_hash): Don't crash if
84         there is no color scheme.  (#324429, Diego Gonzalez)
85
86 2005-12-16  Matthias Clasen  <mclasen@redhat.com>
87
88         * gtk/gtkfilesystem.c (gtk_file_system_module_load): 
89         * gtk/gtkimmodule.c (gtk_im_module_load): 
90         * gtk/gtkthemes.c (gtk_theme_engine_load): 
91         * gtk/gtkmodules.c (find_module): Use G_MODULE_BIND_LAZY when
92         opening modules.
93
94         * gtk/gtksettings.[hc]: Rework the way the color scheme setting
95         is inherited. Now the overriding is done on a per-color basis,
96         rather than for the setting as a whole. This has the effect
97         that themes can declare defaults for all the symbolic colors they
98         use by specifying a value for the gtk-color-scheme setting in 
99         their rc file, while still allowing the XSetting to override
100         "standard" symbolic colors. The hash table is now available
101         through the color-hash property.
102         
103         * gtk/gtkrc.c: Use the new color-hash property.
104         
105 2005-12-14  Matthias Clasen  <mclasen@redhat.com>
106
107         * gtk/gtkcontainer.c (_gtk_container_focus_sort): Skip unrealized
108         children when doing focus sorting.  (#323995, Dan Winship)
109
110 2005-12-14  Rodney Dawes  <dobey@novell.com>
111
112         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon):
113         Default to "drive-harddisk" and then fall back to gnome-dev-harddisk
114         (get_icon_for_mime_type): Look up the mime type icons according to the
115         Icon Naming Specification and then fall back to the gnome-mime- prefix
116         for the mime type icons
117
118         Fixes #323655
119         
120 2005-12-14  Matthias Clasen  <mclasen@redhat.com>
121
122         * gtk/gtkdnd.c (gtk_drag_set_icon_name): Warn if the icon
123         cannot be loaded.  (#323504, Kjartan Maraas)
124
125         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add docs 
126         for the row-activated signal.  (#324044, Davyd Madeley)
127
128 2005-12-14  Michael Natterer  <mitch@imendio.com>
129
130         * tests/test-images/valid_jpeg_progressive_test: new test image.
131
132 Tue Dec 13 09:47:20 2005  Tim Janik  <timj@gtk.org>
133
134         * README.in: added a link to the floating reference docs in the
135         2.10 release NEWS section.
136
137 2005-12-12  Matthias Clasen  <mclasen@redhat.com>
138
139         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_index): 
140         Speed this function up, using the fact that visibility is 
141         constant across segments. (#321548, Paolo Borelli)
142
143         * gtk/gtktextbtree.c (_gtk_text_line_char_to_byte_offsets): 
144         * gtk/gtktextiter.c (gtk_text_iter_backward_chars): Speed up
145         stepping backwards.  (#320638, Larry Ewing, Paolo Borelli)
146
147         * gtk/gtkicontheme.c (ensure_valid_themes): Only broadcast
148         _GTK_LOAD_ICONTHEMES if we detect a real theme change, not
149         upon initial theme load.  (#323876, Peter Lund)
150
151         * gtk/gtkstatusicon.c (gtk_status_icon_class_init): Register
152         the size-changed signal correctly.  (#323848, Murray Cumming)
153
154         * gtk/gtkmarshalers.list: Add necessary marshaller.
155
156         * gtk/gtktextview.c (gtk_text_view_get_border_window_size): Don't
157         fall thru to the wrong window types.  (#323843)
158
159         Make the gtk-color-scheme setting work.
160         
161         * gtk/gtksettings.h: 
162         * gtk/gtksettings.c (_gtk_settings_get_color_hash): Add a getter
163         that takes care of initializing the color hash if it is not 
164         already there.  
165
166         * gtk/gtkrc.c (gtk_rc_color_scheme_changed, gtk_rc_context_get): 
167         And use it here.        
168
169 2005-12-10  Matthias Clasen  <mclasen@redhat.com>
170
171         * gdk/gdk.c (gdk_parse_args): Warn if parsing fails,
172         not if it succeeds. 
173
174 2005-12-09  Matthias Clasen  <mclasen@redhat.com>
175
176         * gtk/gtkselection.c (gtk_selection_data_get_uris): Don't
177         leak list[0].  (#323629, Markku Vire)
178
179         * gtk/gtktextbuffer.c (paste_from_buffer): Unref the buffer
180         when freeing the RequestData.  (#323577)
181
182 2005-12-07  Matthias Clasen  <mclasen@redhat.com>
183
184         * demos/gtk-demo/iconview_edit.c (set_cell_color): Don't
185         leak text.
186
187         * gtk/gtktoolbutton.c (clone_image_menu_size): Fix a 
188         variable name clash.  (#323475, Ross Burton)
189
190 2005-12-07  Ross Burton  <ross@burtonini.com>
191
192         * docs/reference/gtk/tmpl/gtkenums.sgml:
193         * gtk/gtktoolbutton.c:
194         If the toolbar mode is ICONS and there is no icon set then show
195         the label, and vice versa (#322019)
196
197 2005-12-07  Matthias Clasen  <mclasen@redhat.com>
198
199         * gtk/gtktoolbutton.c (clone_image_menu_size): Fix a 
200         variable name clash.  (#323475, Ross Burton)
201
202         * gtk/gtktreeview.c (gtk_tree_view_key_press): Use the correct
203         window when synthesizing the key event.  (#323077,
204         Sadrul Habib Chowdhury)
205         
206         (gtk_tree_view_search_key_press_event): Also listen for
207         GDK_ISO_Left_Tab.  (#323077, Sadrul Habib Chowdhury)
208
209         * gtk/gtktextview.c (gtk_text_view_preedit_changed_handler): 
210         Only scroll if we have focus.  (#316310, Paolo Borelli)
211
212         * gtk/gtkfilesystemunix.c (cb_fill_in_mime_type): Fix a C99ism,
213         spotted by Crispin Flowerday.
214
215 2005-12-06  Behdad Esfahbod  <behdad@gnome.org>
216
217         * gtk/gtksettings.c (settings_update_font_options): Turn metrics
218         hinting on (part of #307196)
219
220 2005-12-06  Matthias Clasen  <mclasen@redhat.com>
221
222         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_reset): Don't
223         commit from reset, it upstets GtkTextView.
224
225         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Be more
226         careful when turning blinking on and off.
227         (gtk_text_view_focus_out_event): Make the cursor really invisible
228         when the focus goes away.  (#323087, Sadrul Habib Chowdhury)
229         (cursor_blinks): Check the gtk-cursor-blink setting first.
230
231         * gtk/gtktreeview.c (gtk_tree_view_key_press): Fix refcounting
232         issues with new_event and its window.
233
234         * gtk/gtkmenu.c (gtk_menu_attach_to_widget): Accept NULL
235         as a detach func.  (#323386, Jorn Baayen)
236
237         * gtk/gtkcalendar.c: Avoid conflict with win32 headers in
238         the libdate routines.  (#323045, Kazuki Iwamoto)
239
240         * gdk/gdk.c (gdk_parse_args): 
241         * gtk/gtkmain.c (gtk_parse_args): Don't ignore errors
242         from g_option_context_parse(). 
243
244 Tue Dec  6 11:37:59 2005  Tim Janik  <timj@gtk.org>
245
246         * gdk/gdkevents.c (gdk_event_new): fix missing hash table 
247         initialization.
248
249 Tue Dec  6 10:32:17 2005  Tim Janik  <timj@gtk.org>
250
251         * gtk/gtkstatusbar.c: ported memchunk uses to g_slice, so the code
252         compiles again.
253
254 2005-12-05  Federico Mena Quintero  <federico@ximian.com>
255
256         * gtk/gtkfilechooserdefault.c (trap_activate_cb): "event->state &
257         modifiers", not "event->state && modifiers".  Patch by Sadrul
258         Habib Chowdhury <imadil@gmail.com>.  Fixes bug #323073.
259
260 2005-12-05  Matthias Clasen  <mclasen@redhat.com>
261
262         * gtk/gtkwidget.c: 
263         * gtk/gtkuimanager.c: 
264         * gtk/gtktreedatalist.c: 
265         * gtk/gtktext.c: 
266         * gtk/gtkmain.c: 
267         * gtk/gtkitemfactory.c: 
268         * gtk/gtkseparator.[hc]:
269         * gtk/gtkclist.[hc]: 
270         * gtk/gtkctree.c:
271         * gtk/gtkgc.c: Use g_slice instead of mem chunks.
272
273 2005-12-05  Michael Natterer  <mitch@imendio.com>
274
275         * gdk/x11/gdkevents-x11.c: map the new GtkSettings properties
276         "timeout-initial", "timeout-repeat", "color-scheme" and
277         "enable-animations" to X settings.
278
279 2005-12-05  Matthias Clasen  <mclasen@redhat.com>
280
281         * gdk/gdkevents.c: 
282         * gdk/gdkcolor.c: Use g_slice instead of mem chunks.
283
284         * gtk/gtktreeview.c (gtk_tree_view_key_press): Free new_event
285         after sending it to the search entry.  (#323209, Crispin Flowerday)
286
287         * README.in: Add a note about GTK_FLOATING.
288
289         * gtk/gtkobject.h (GTK_OBJECT_FLOATING): Use g_object_is_floating.
290
291 2005-12-02  Matthias Clasen  <mclasen@redhat.com>
292
293         * gtk/gtktoolbutton.c (clone_image_menu_size): Don't leak
294         a pixbuf.  (#323024, Paolo Borelli)
295
296 2005-12-02  Matthias Clasen  <mclasen@redhat.com>
297
298         * gtk/gtkfilesystemunix.c (get_icon_for_mime_type): Don't crash
299         if mime_type is NULL.  (#322998, Sadrul Habib Chowdhury)
300
301 2005-12-02  Michael Natterer  <mitch@imendio.com>
302
303         * gtk/gtkmenu.c: applied modified patch from maemo-gtk which
304         adds a "horizontal-padding" style property. Fixes bug #323036.
305
306 2005-12-01  Michael Natterer  <mitch@imendio.com>
307
308         Merged modified patch from maemo-gtk that allows to disable
309         toolbar animations. Addresses bug #142582.
310
311         * gtk/gtksettings.c: added boolean property "gtk-enable-animations".
312         (patch from Christian Neumair)
313
314         * gtk/gtktoolbar.c: don't animate toolbar changes if the settings
315         property is FALSE. Replaced the individual "notify::foo"
316         connections to GtkSettings by a single "notify" callback and
317         dispatch internally.
318
319 2005-12-01  Michael Natterer  <mitch@imendio.com>
320
321         * gtk/gtkmenu.c (gtk_menu_class_init): removed redundant
322         assignment of widget_class->motion_notify_event.
323
324 2005-11-29  Matthias Clasen  <mclasen@redhat.com>
325
326         * gtk/gtktoggleaction.c (gtk_toggle_action_class_init): Add 
327         an active property.  (#322673, Jorn Baayen)
328
329         Properly handle model changes in GtkTreeSelection: (#322569,
330         Milosz Derezynski)
331         
332         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach): 
333         Get a reference to the model, and stop the iteration if the model
334         of the treeview is changed on the way.
335
336         * gtk/gtktreeprivate.h: 
337         * gtk/gtktreeselection.c (_gtk_tree_selection_emit_changed): New 
338         private function to emit the GtkTreeSelection::changed signal.
339
340         * gtk/gtktreeview.c (gtk_tree_view_set_model): Call 
341         _gtk_tree_selection_emit_changed() when the model changes.
342
343 2005-11-28  Federico Mena Quintero  <federico@ximian.com>
344
345         Fixes the critical warnings from bug #317999, thus fixing the bug
346         completely:
347
348         * gtk/gtkfilechooserdefault.c
349         (gtk_file_chooser_default_get_paths): In SELECT_FOLDER mode,
350         use _gtk_file_chooser_get_current_folder_path() instead of fetching the
351         impl->current_folder directly.  The latter may be null if we are
352         in RELOAD_NONE state.
353
354 2005-11-28  Federico Mena Quintero  <federico@ximian.com>
355
356         Fix bug #321560, based on a patch by Bogdan Nicula (bogdanni@hotmail.com):
357
358         * gtk/gtkfilechooserdefault.c (up_folder_handler): Don't add the
359         current_folder to the pending select paths here; the path bar will
360         give it to us now.
361         (path_bar_clicked): Add the child_path to the pending select paths
362         here.
363         (show_and_select_paths): Don't filter out folders.
364         (show_and_select_paths): Don't take separate arguments for
365         only_one_path and multiple paths.
366
367         * tests/autotestfilechooser.c (test_folder_switch_and_filters):
368         New test about preserving the filters when we change folders.
369
370 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
371
372         * gtk/gtkscale.c (_gtk_scale_format_value): Insert an LRM, to prevent
373         -20 to come out as 20- in RTL locales.  (#322571, Tze'ela Hebron)
374
375         * gtk/gtkaction.c (gtk_action_sync_button_stock_id) 
376         (connect_proxy): Buttons use the label property for stock ids.  (#322565,
377         Milosz Derezynski)
378
379         * gtk/gtkiconview.c (update_text_cell, update_pixbuf_cell): Correctly
380         handle the cell list and indices into it.  (#321856)
381
382 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
383
384         * gtk/gtktooltips.c (gtk_tooltips_timeout): Set timer_tag to 0 when
385         the timeout is done.  (#322291, Jean-Yves Lefort)
386
387 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
388
389         * gtk/gtkfilechooserdefault.c (shortcuts_key_press_event_cb): Make
390         F2 work for renaming bookmarks.  (#320822, Jaap A. Haitsma, patch
391         by Paolo Borelli)
392
393 2005-11-28  Tor Lillqvist  <tml@novell.com>
394
395         * gdk/win32/gdkwindow-win32.c (gdk_window_set_urgency_hint):
396         Implement the conditional use of FlashWindowEx() properly for MSVC
397         compilations. The code was confusingly assuming that if compiled
398         with a "new" compiler, it will only be run on "new" Windows
399         versions. We want it to run on "old" versions, too, even if
400         compiled with a "new" compiler. There are two orthogonal issues:
401         whether the compiler defines the necessary API in its headers, and
402         whether it is present at run-time. (#318077)
403
404         * gtk/gtkcalendar.c (gtk_calendar_init): Use GetLocaleInfo() on
405         Windows to get the localized weekday and month names. strftime()
406         in the Microsoft C library returns strings in the default codepage
407         for the locale of the process, not the system codepage. Thus
408         g_locale_to_utf8() isn't useable on the return value from
409         strftime(). (#322603)
410
411 2005-11-27  Matthias Clasen  <mclasen@redhat.com>
412
413         * gtk/gtkmessagedialog.c (gtk_message_dialog_new_with_markup): 
414         Fix an example.  (#322493, Elie De Brauwer)
415         
416         Fix two memory handling problems in GtkTreeView: (#322350, 
417         Søren Sandmann)
418         
419         * gtk/gtktreeview.c (gtk_tree_view_destroy) 
420         (gtk_tree_view_set_model): Remove all references to nodes in
421         the old model.
422         (gtk_tree_view_real_collapse_row): Unmark expanded_collapsed_node
423         before removing the children.
424
425         * gtk/gtkcolorbutton.c (gtk_color_button_init): Don't leak a 
426         PangoLayout here.  (#322505, Paolo Borelli)
427
428 2005-11-27  Tor Lillqvist  <tml@novell.com>
429
430         Once again rework Win32 window decoration code. Doesn't break
431         #104514. The dialogs in gtk-demo now have the same decorations and
432         behaviour as on X11. Tried to fix #322516 but it seems very hard
433         to make the trivial sample program there behave as expected. OTOH,
434         simply moving the gtk_window_decorate() call in the #322516 sample
435         program after the call to gtk_widget_show() helps...
436             
437         * gdk/win32/gdkwindow-win32.c (set_or_clear_style_bits): Revert to
438         the correct semantics. Each call to gdk_window_set_decorations()
439         which calls this function is supposed to affect all decorations.
440
441         (decorate_based_on_hints): New function, looks at both geometry
442         hints and type hint and sets window decorations based on
443         that. Consolidate code from gdk_window_set_geometry_hints() and
444         gdk_window_set_type_hint() here.
445
446         (gdk_window_set_geometry_hints, gdk_window_set_type_hint): Call
447         decorate_based_on_hints().
448
449 2005-11-25  Dom Lachowicz <cinamod@hotmail.com>
450
451         * modules/engines/ms-windows/*.[ch]: Merge with gtk-wimp's CVS.
452         Includes improved menu icon spacing, [+]/[-] expander drawing,
453         status-bar gippie drawing, and notebook tab drawing.
454         
455 2005-11-24  Michael Natterer  <mitch@imendio.com>
456
457         * gtk/gtktoolbar.h (struct _GtkToolbar): changed two private guint
458         that used to hold signal handler IDs to two guint of padding.
459
460         * gtk/gtktoolbar.c (struct _GtkToolbarPrivate): added them as
461         gulong here.
462
463         (gtk_toolbar_screen_changed): changed accordingly.
464
465 Wed Nov 23 18:55:47 2005  Tim Janik  <timj@imendio.com>
466
467         * gtk/gtkobject.[hc]: deprecated floating/sink API and implemented it
468         in terms of the GObject floating/sink API.
469
470         * gtk/gtkaboutdialog.c:
471         * gtk/gtkaction.c:
472         * gtk/gtkcellview.c:
473         * gtk/gtkclist.c:
474         * gtk/gtkcolorsel.c:
475         * gtk/gtkcombobox.c:
476         * gtk/gtkfilechooserdefault.c:
477         * gtk/gtkiconview.c:
478         * gtk/gtkinvisible.c:
479         * gtk/gtkitemfactory.c:
480         * gtk/gtklayout.c:
481         * gtk/gtkmenu.c:
482         * gtk/gtkmenutoolbutton.c:
483         * gtk/gtknotebook.c:
484         * gtk/gtkprogress.c:
485         * gtk/gtkrange.c:
486         * gtk/gtkspinbutton.c:
487         * gtk/gtkstatusicon.c:
488         * gtk/gtktext.c:
489         * gtk/gtktextview.c:
490         * gtk/gtktoolbar.c:
491         * gtk/gtktoolbutton.c:
492         * gtk/gtktoolitem.c:
493         * gtk/gtktreeitem.c:
494         * gtk/gtktreeview.c:
495         * gtk/gtktreeviewcolumn.c:
496         * gtk/gtkuimanager.c:
497         * gtk/gtkviewport.c:
498         * gtk/gtkwidget.c:
499         * gtk/gtkwindow.c:
500         ported to use GObject's g_object_ref_sink().
501
502         * gtk/gtkcolorsel.c:
503         * gtk/gtkfilechooserdefault.c:
504         * gtk/gtkaboutdialog.c:
505         fixed compiler warnings.
506
507 2005-11-23  Matthias Clasen  <mclasen@redhat.com>
508
509         * gtk/gtksettings.c (gtk_settings_class_init): Add some docs
510         about gtk-color-scheme.
511
512 2005-11-23  Behdad Esfahbod  <behdad@gnome.org>
513
514         * configure.in (enable_explicit_deps): Fix typo when checking
515         libtool config deplibs_check_method. Moreover, enable explicit
516         deps if we get anything other than pass_all from libtool. (part of
517         #318750)
518
519 2005-11-23  Matthias Clasen  <mclasen@redhat.com>
520
521         * gtk/updateiconcache.c (write_csource): Don't create a big
522         string, since Visual C++ doesn't like strings longer than 64k. 
523         (#322238, Kazuki IWAMOTO
524
525         * gtk/gtkentry.c: Include gtkimcontextsimple.h  (#322235,
526         Kazuki IWAMOTO)
527
528 2005-11-23  Michael Natterer  <mitch@imendio.com>
529
530         * gtk/gtkrc.c (gtk_rc_reset_widgets): don't leak all toplevel
531         windows on other screens (correctly remove all temporary
532         references).
533
534 2005-11-23  Michael Natterer  <mitch@imendio.com>
535
536         Added symbolic themable colors. Patch is a merged version of
537         proposals from Matthias and maemo-gtk. Fixes bug #114355.
538
539         * configure.in: require glib >= 2.9.1 for refcountable hashtables.
540
541         * gtk/gtksettings.c: added property "color-scheme" which is a
542         string defining colors like "foreground:black\nbackground:grey".
543         Automatically provide a name->GdkColor hash table mapping for the
544         color scheme.
545
546         * gtk/gtkrc.[ch]: added list of color hashes that works like the
547         list of icon factories. Append the color scheme hash from
548         GtkSettings if it exists. Extended gtkrc syntax to allow defining
549         and referencing of logical colors. Also allow to modulate colors
550         in gtkrc by using arbitrary expressions of mix(), shade(),
551         lighter() and darker(). Added internal function
552         _gtk_rc_style_get_color_hashes().
553
554         * gtk/gtkstyle.[ch]: keep a private list of color hashes around.
555         Get the list from _gtk_rc_style_get_color_hashes(). Export
556         internal function _gtk_style_shade() (used by above color
557         expressions). Added public API gtk_style_lookup_color() which
558         looks up a logical color by name.
559
560         * gtk/gtk.symbols: add gtk_style_lookup_color
561
562         * tests/testgtkrc: use symbolic colors for making
563         the scrollbars red.
564
565 2005-11-22  Michael Natterer  <mitch@imendio.com>
566
567         Made button-press timeouts which work like key repeat timeouts
568         configurable. Addresses bug #142582:
569
570         * gtk/gtksettings.c: added properties "gtk-timeout-initial" and
571         "gtk-timeout-repeat" which defalt to 200/20 (ms).
572
573         Use the values from GtkSettings instead of hardcoding them
574         (the repeat value is either taken as-is for fast repeat or
575         multiplied by 5 for slow repeat). Changed all places to use these
576         two standard initial/repeat timings:
577
578         * gtk/gtkcalendar.c (unchanged 200/20)
579         * gtk/gtknotebook.c (unchanged 200/100)
580         * gtk/gtkpathbar.c (changed from 300/150 to 200/100)
581         * gtk/gtkrange.c (changed from 250/100 to 200/100)
582         * gtk/gtkspinbutton.c (unchanged 200/20)
583
584 2005-11-21  Anders Carlsson  <andersca@imendio.com>
585
586         * configure.in:
587         * gtk/Makefile.am:
588         * gdk/Makefile.am:
589         * gdk/quartz/*:
590         Add quartz backend.
591         
592         * docs/tools/Makefile.am:
593         Only build docshooter when the X11 backend is used.
594         
595         * gtk/gtkplug-stub.c:
596         Include gtkplug.h here.
597         
598         * gtk/gtksocket-stub.c:
599         Include gtksocket.h here.
600         
601 2005-11-21  Matthias Clasen  <mclasen@redhat.com>
602
603         * gtk/gtkinputdialog.c: Convert GtkInputDialog to 
604         g_type_class_add_private.
605
606         * gtk/gtksocket.c: Convert GtkSocket to g_type_class_add_private.
607
608         * gtk/gtkmenu.c: Convert GtkMenu to g_type_class_add_private.
609
610         * gtk/gtk.symbols:
611         * gtk/gtkcombobox.[hc]: Add a tearoff-title property,
612         with getter and setter.  (#316482, Olexiy Avramchenko)
613
614         * tests/testcombo.c (main): Test gtk_combo_box_set_title
615
616         * gtk/gtkpathbar.c: Merge remaining fixes from the 2.8 branch,
617         pointed out by Michael Natterer.
618
619         Fix for bug #321542, Benedikt Meurer:
620         
621         * gtk/gtkcombobox.c (gtk_combo_box_set_active_internal):
622         Emit notify::active.
623         
624         (gtk_combo_box_child_show, gtk_combo_box_child_hide): Use
625         g_signal_emit, not g_signal_emit_by_name.
626
627 2005-11-18  Matthias Clasen  <mclasen@redhat.com>
628
629         Fix crashes in connection with pathbar scrolling (#321560,
630         Bogdan Nicula)
631         
632         * gtk/gtkpathbar.c (gtk_path_bar_update_slider_buttons): 
633         Stop scrolling when desensitising slider buttons.
634         (gtk_path_bar_scroll_timeout, gtk_path_bar_slider_button_press): 
635         And use it here.  
636
637         * gtk/gtkpathbar.h (struct _GtkPathBar): Add a separate
638         scrolling_down flag.
639
640 2005-11-18  Matthias Clasen  <mclasen@redhat.com>
641
642         * gtk/gtkpathbar.c (button_clicked_cb): Fix a C99ism.
643         (#321777, Jens Granseuer)
644
645         * gtk/gtkaction.c (disconnect_proxy): Disconnect the
646         sync callback for the visibility property.  (#321761,
647         Philip Langdale)
648
649         Turn off input methods in invisible entries, since
650         they are confusing.  (#317002, James Su)
651         
652         * gtk/gtkentry.c (gtk_entry_set_visibility): Toggle input
653         methods if visibility changes.
654         (popup_targets_received): Don't show the input method
655         menu if the entry is invisible.  
656
657 2005-11-17  Matthias Clasen  <mclasen@redhat.com>
658
659         * README.in: Add a note about range arrow sensitivity.
660
661         * perf/treeview.c: const correctness fixes
662         found by Arjan van de Ven and gcc.
663
664 2005-11-16  Michael Natterer  <mitch@imendio.com>
665
666         * gtk/gtkimage.c (animation_timeout): call
667         gtk_window_process_updates() so the animation keeps running even
668         if the main loop is busy with sources that eat a lot of cpu with
669         high priority. Fixes bug #321444.
670
671         (gtk_image_new_from_animation): document the fact that the
672         animation will stop running if the main loop is busy with sources
673         that have priorities higher than G_PRIORITY_DEFAULT.
674
675         * tests/testimage.c: added test case that shows an animation even
676         though a cpu-eating idle function is running.
677
678 2005-11-16  Michael Natterer  <mitch@imendio.com>
679
680         * gdk/x11/gdkevents-x11.c (_gdk_events_uninit): new internal
681         function which destroys the display's event source. Also removes
682         the source from the global display_sources list and unrefs it.
683
684         * gdk/x11/gdkprivate-x11.h: declare the function.
685
686         * gdk/x11/gdkdisplay-x11.c (gdk_display_x11_dispose): call it
687         instead of half-destroying the source here.
688
689 2005-11-15  Matthias Clasen  <mclasen@redhat.com>
690
691         * gtk/gtktreestore.c (gtk_tree_store_move): Fix a memory
692         leak.  (#321032, Peter Zelezny)
693
694 2005-11-15  Michael Natterer  <mitch@imendio.com>
695
696         * gdk/x11/gdkdisplay-x11.c (gdk_display_x11_finalize): destroy
697         display->xid_ht as late as possible (right before XCloseDisplay)
698         because it still needs to be around when the display's screens are
699         finalized. (#85715)
700
701 2005-11-14  Matthias Clasen  <mclasen@redhat.com>
702
703         * gtk/gtkselection.c (gtk_selection_data_set_uris): Don't
704         leak result.  (#321441, Tommi Komulainen)
705
706 2005-11-14  Matthias Clasen  <mclasen@redhat.com>
707
708         * gtk/gtkicontheme.c (gtk_icon_theme_get_icon_sizes):
709         Don't crash if there is no builtin icon.
710
711 2005-11-14  Michael Natterer  <mitch@imendio.com>
712
713         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_set_property):
714         removed redundant calls to g_object_notify().
715
716 2005-11-13  Matthias Clasen  <mclasen@redhat.com>
717
718         * gdk/gdkcolor.c (gdk_color_parse): Documentation 
719         improvements.  (#321338)
720
721         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Make
722         limit an inclusive boundary.  (#321299)
723
724 2005-11-12  Michael Natterer  <mitch@imendio.com>
725
726         * gtk/Makefile.am: fixed icon rules so gtkbuiltincache.h is only
727         rebuilt if needed.
728
729 2005-11-12  Dom Lachowicz <cinamod@hotmail.com>
730
731         * modules/engines/ms-windows/msw_style.c: Bug #313627. Make win32 
732         theme's handling of toolbars, handleboxes, and menubars more in-line
733         with Microsoft's IE style.
734         * modules/engines/ms-windows/*.c: Indentation cleanups
735         
736 2005-11-12  Matthias Clasen  <mclasen@redhat.com>
737
738         Make builtin icons work in gtk_window_set_icon_name() 
739         (#321046, Maxim Udushlivy)
740
741         * gtk/gtkicontheme.c (insert_theme): Always insert the default
742         theme.
743         (ensure_valid_themes): Call _gtk_icon_theme_ensure_builtin_cache()
744         from here.
745         (theme_lookup_icon, find_builtin_icon): ...and not from here.
746         (gtk_icon_theme_lookup_icon): Remove an unncessary assert.
747         (gtk_icon_theme_get_icon_sizes): Also check builtin icons.
748
749 2005-11-12  Tor Lillqvist  <tml@novell.com>
750
751         * gtk/gtkfilesystemwin32.c (filename_get_info): Don't hide
752         dotfiles, no such convention on Win32. Just hide files with the
753         hidden attribute. (#314627)
754
755 2005-11-11  Federico Mena Quintero  <federico@ximian.com>
756
757         * gtk/gtkfilechooserdefault.c (shortcuts_insert_path): Do not
758         check whether the path is a folder.  It is useful to bookmark
759         files as well (e.g. todo.txt), and this will also help
760         performance.
761         (shortcuts_add_bookmark_from_path): Likewise.
762         (shortcuts_activate_iter): Change folders or select files, as
763         appropriate.
764
765 2005-11-11  Federico Mena Quintero  <federico@ximian.com>
766
767         * tests/autotestfilechooser.c (main): Use
768         g_log_set_default_handler() instead of explicitly setting a
769         handler for each domain.
770
771         * gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): Only get
772         the base path of the volume if it is mounted.
773
774 2005-11-11  Michael Natterer  <mitch@imendio.com>
775
776         Added per-stepper API for GtkRange's stepper sensitivity as
777         discussed in bug #321056:
778
779         * gtk/gtkenums.h: added GtkSensitivityType which can be
780         { AUTO, ON, OFF }.
781
782         * gtk/gtkrange.[ch]: added properties "lower-stepper-sensitivity"
783         and "upper-stepper-sensitivity" and public getters/setters for
784         them. Changed stepper drawing to honor the new properties.
785
786         * gtk/gtk.symbols: added the new symbols.
787
788 2005-11-10  Matthias Clasen  <mclasen@redhat.com>
789
790         * gtk/gtkcombobox.c: Add show-popup and hide-popup signals and
791         emit them when the popup is shown or hidden.  (#162531, Tommi
792         Komulainen)
793
794         * tests/testcombo.c: Add an example of popuplating a combobox
795         on click.
796
797         * gtk/gtktreeview.c (gtk_tree_view_motion_resize_column): Another
798         erroneous semicolon.
799
800         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get): Remove an erroneous
801         semicolon. 
802
803         Don't corrupt odd keymaps (#316638, Kean Johnston)
804         
805         * gdk/x11/gdkkeys-x11.c (set_symbol): Auxiliary function to
806         handle frobbing keymaps with odd numbers of syms/code.
807         
808         * gdk/x11/gdkkeys-x11.c (update_keymaps): Use set_symbol() to 
809         frob the keymap.
810
811         Improve navigation to parent folders.  (#318444, Andrei Yurkevich)
812         
813         * gtk/gtkpathbar.[hc]: Add a child_path argument to
814         the path_clicked signal.
815         * gtk/gtkfilechooserdefault.c (path_bar_clicked): Select the
816         child_path, if it is provided.
817         * gtk/marshalers.list (path_bar_clicked): Add the necessary
818         glue.
819
820         * gtk/gtkmenu.c: Fix some compiler warnings. (#321141,
821         Kjartan Maraas)
822         
823         * gtk/gtk.symbols: 
824         * gtk/gtktreeview.h: 
825         * gtk/gtktreeview.c: Implement a getter for headers-clickable.
826         (#163851, Richard Hult)
827
828 2005-11-10  Michael Natterer  <mitch@imendio.com>
829
830         Applied patch from maemo-gtk that addresses many issues wrt
831         display migration and display closing (bug #85715).
832
833         * gdk/gdkdisplay.c (gdk_display_dispose): don't just set the
834         default display to NULL when it's closed. Instead set the most
835         recently opened display as new default (if one exists).
836
837         * gdk/gdkpango.c (on_renderer_display_closed): fixed signature
838         of this callback.
839
840         * gdk/gdkscreen.c (gdk_screen_dispose): check if the GCs still
841         exist before unrefing them.
842
843         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): if the screen
844         is closed, allow destruction of the root window.
845
846         * gdk/x11/gdkdisplay-x11.c: moved some stuff from finalize() to
847         dispose(), free stuff that was leaked before.
848
849         * gdk/x11/gdkevents-x11.c (_gdk_x11_events_uninit_screen): check if
850         the xsettings_client still exists before destroying it.
851
852         * gdk/x11/gdkkeys-x11.c: added finalization and free the allocated
853         X resources.
854
855         * gdk/x11/gdkpixmap-x11.c: moved stuff from finalize() to new
856         dispose() implementation.
857
858         * gdk/x11/gdkscreen-x11.c: moved stuff from finalize() to
859         dispose() and check if it still exists before unrefing it. Set
860         their pointers to NULL/None *after* upchaining in dispose(),
861         because X11 implementations of members of the parent class still
862         need them for their own destruction.
863
864         * gdk/x11/gdkvisual-x11.c: removed finalize() implementation which
865         was g_error()ing when finalizing a visual.
866
867         * gtk/gtkclipboard.c (gtk_clipboard_finalize): don't use
868         get_clipboard_widget() because it would create the widget if it
869         doesn't exist. Use g_object_get_data() directly instead.
870
871         * gtk/gtktextdisplay.c (on_renderer_display_closed): fixed signature
872         of this callback.
873
874 2005-11-10  Simos Xenitellis  <simos@gnome.org>
875
876         * configure.in: Added Tatar (tt) to ALL_LINGUAS.
877
878 Wed Nov  9 16:29:42 2005  Tim Janik  <timj@imendio.com>
879
880         * gtk/gtkrange.c: patch from maemo-gtk that changes GtkRange
881         to render its arrows insensitive when the adjustment is in
882         its min or max position. this makes range arrow behaviour 
883         consistent with spin button behaviour. (#321056)
884
885 2005-11-09  Tor Lillqvist  <tml@novell.com>
886
887         * gdk/gdkinternals.h
888         * gdk/gdk.c (gdk_debug_keys[]): Add new GDK_DEBUG_DRAW flag to
889         the GdkDebugFlag enum.
890
891         * gdk/win32/gdkdrawable-win32.c: Use DRAW to trigger GDK_NOTEs in
892         this file instead of MISC. Now asking for MISC will give mainly
893         window manipulation debugging output with the Win32 backend.
894
895 2005-11-09  Tor Lillqvist  <tml@novell.com>
896
897         * gdk/win32/gdkwindow-win32.c: Remove unnecessary includes.
898
899         (_gdk_win32_get_adjusted_client_rect): Remove this two-line
900         function which was used only in one place.
901
902         (get_outer_rect): Use _gdk_win32_adjust_client_rect().
903
904         (gdk_window_set_geometry_hints): If we have identical minimum and
905         maximum size hints, remove the resize and maximize
906         decorations/functions. (#104514)
907
908         If we have a maximum size hint, remove the maximize
909         decoration/function but ensure the resize decoration/function is
910         available. Otherwise ensure both resize and maximize
911         decorations/functions are there.
912
913         (set_or_clear_style_bits): Factored out common code from
914         gdk_window_set_decorations() and gdk_window_set_functions(). 
915
916         Hack the window style setting once more: Only touch the window
917         style bits corresponding to the GdkWMDecoration or GdkWMFunction
918         parameter bitmasks. Hopefully this finally is the correct thing to
919         do. We used to clear all other bits than those that were being
920         set, or set all other bits than those that were being cleared.
921
922         Take into account that adding or removing decorations leaves the
923         window's outer size unchanged, i.e., the client area's size and
924         position change. This is apparently not what we want, so change
925         also the window's (outer) position and size appropriately so that
926         the client area's position and size stay constant.
927
928         gtk-demo's color selector dialog is now non-resizable like on X11
929         (I tested with metacity in GNOME). Torn off menus are shrinkable
930         vertically but have a maximum size, and are not maximizable or
931         minimizable, like on X11.
932
933         (gdk_window_set_decorations, gdk_window_set_functions): Let
934         set_or_clear_decorations() do most of the job.
935
936         * gdk/win32/gdkprivate-win32.h: Remove declaration of
937         _gdk_win32_get_adjusted_client_rect().
938
939 2005-11-09  Tor Lillqvist  <tml@novell.com>
940
941         * gdk/win32/gdkwindow-win32.h (struct _GdkWindowImplWin32)
942         * gdk/win32/gdkwindow-win32.c (gdk_window_impl_win32_init,
943         gdk_window_get_type_hint, gdk_window_get_type_hint): Store the
944         type hint. Implement gdk_window_get_type_hint() by just returning
945         the hint stored.
946
947 2005-11-09  Tor Lillqvist  <tml@novell.com>
948
949         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
950         Remove code that has been permanently ifdeffed out for two years.
951
952 2005-11-08  Matthias Clasen  <mclasen@redhat.com>
953
954         * gdk/gdkgc.c (gdk_gc_finalize): Unref tile and stipple when
955         finalizing a gc.  (#320789, Nickolay V. Shmyrev)
956
957         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Ignore
958         icons if they would make the request large enough to cause
959         Xlib to loose the connection.  (#320909, Claudio Saavedra)
960
961 2005-11-08  Michael Natterer  <mitch@imendio.com>
962
963         * gdk/gdk.symbols
964         * gdk/gdkwindow.h
965         * gdk/x11/gdkwindow-x11.c: added gdk_window_get_type_hint() (patch
966         extracted from maemo-gtk). Fixes bug #320872.
967
968 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
969
970         * gtk/gtkfilechooserdefault.c (shortcuts_reorder): Don't
971         looks the bookmark label when reordering.  (#320720, Jeremy Cook)
972
973         * gtk/gtkpathbar.[hc]: Set focus-on-click to FALSE for all buttons.
974         Don't grab focus when a slider button is pressed, instead, use
975         a bit in the pathbar struct to determine whether to scroll up
976         or down.  (#314486, Carlos Garnacho)
977
978         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): 
979         Don't popup the completions if the focus has already been
980         moved somewhere else.  (#319914, Christian Persch)
981
982         * gtk/gtktoolitem.c (_gtk_tool_item_toolbar_reconfigured): 
983         Raise the drag_window after reconfiguring the 
984         toolbar.  (#320803, Christian Persch)
985
986         * gtk/gtk.symbols: 
987         * gtk/gtkfilechooserbutton.h: 
988         * gtk/gtkfilechooserbutton.c: Add a focus-on-click property
989         with setter and getter.  (#318945, Christian Persch)
990         
991 Mon Nov  7 16:15:16 2005  Tim Janik  <timj@imendio.com>
992
993         * configure.in: fixed missing $X_CFLAGS setup in case x11.pc is present.
994
995 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
996
997         * configure.in: Adjust to the stock icon changes.
998         
999 2005-11-07  Tor Lillqvist  <tml@novell.com>
1000
1001         * gdk/win32/gdkcursor-win32.c (pixbuf_to_hbitmaps_normal):
1002         Correct the calculation of maskstride. (#320152, Peter Zelezny)
1003         
1004 2005-11-06  Michael Natterer  <mitch@imendio.com>
1005
1006         * gtk/Makefile.am (icons): fixed rule to actually create the
1007         symlinks, erroring out if anything goes wrong.
1008
1009 2005-11-06  Tor Lillqvist  <tml@novell.com>
1010
1011         * gtk/updateiconcache.c (build_cache): Can't rename a file if the
1012         target exists on Win32. First rename the target temporarily, then
1013         if the renaming of the source to target fails, restore the
1014         original name for the target.
1015
1016         * gtk/Makefile.am: Use EXEEXT in the dependency on gtk-update-icon-cache.
1017
1018 2005-11-06  Tor Lillqvist  <tml@novell.com>
1019
1020         (pixbuf_to_hbitmaps_alpha_winxp): Use an 1-bit mask bitmap,
1021         like pixbuf_to_hbitmaps_normal().
1022         (_gdk_win32_pixbuf_to_hicon_supports_alpha): Check
1023         G_WIN32_IS_NT_BASED() first, so we can pretend being on Win9x by
1024         setting the G_WIN32_PRETEND_WIN9X environment variable.
1025         
1026 2005-11-06  Tor Lillqvist  <tml@novell.com>
1027
1028         Make icon masks work on Win98 (#320152, Peter Zelezny)
1029
1030         * gdk/win32/gdkcursor-win32.c (create_color_bitmap): Take also a
1031         parameter for the depth of the bitmap, so that this function can
1032         be used to create 1-bit bitmaps, too.
1033         (pixbuf_to_hbitmaps_normal): Create an 1-bit bitmap for the mask,
1034         and initialize it properly.
1035
1036 2005-11-04  Matthias Clasen  <mclasen@redhat.com>
1037
1038         Store builtin stock icons in an icon cache, instead of
1039         populating a hash table with pixbufs at startup, to save both
1040         memory and startup time.
1041
1042         * gtk/stock-icons/*: Reorganize the icons in a directory structure
1043         suitable for gtk-update-icon-cache, and rename them to match the
1044         stock ids.
1045
1046         * gtk/gtkiconcache.[hc]: Support non-mmapped icon caches, and
1047         add _gtk_icon_cache_has_icon_in_directory().
1048
1049         * gtk/updateiconcache.c: Support a --source <VARIABLE> argument
1050         to store the contents of the icon cache in a C header.
1051
1052         * gtk/gtkbuiltincache.h: Generated private header which contains 
1053         the icon cache for the builtin icons.
1054
1055         * gtk/gtkicontheme.c: Create a GtkIconCache for the builtin
1056         icons, and use that in addition to the hash table whenever
1057         builtin icons are searched.
1058
1059         * gtk/gtkiconfactory.c: Add GTK_ICON_SOURCE_STATIC_ICON_NAME and
1060         use it for static stock ids. 
1061         (get_default_icons): Don't add the builtin
1062         icons to the icon theme, just register the stock ids.
1063         (render_fallback_image): Take the fallback image out of the
1064         builtin icon cache.
1065         
1066         * gtk/Makefile.am: Remove stock-icons from SUBDIRS and add 
1067         the necessary machinery to rebuild gtkbuiltincache.h.
1068
1069 2005-11-04  Michael Natterer  <mitch@imendio.com>
1070
1071         * gtk/gtkrc.c (gtk_rc_reparse_all_for_settings): applied patch
1072         from maemo-gtk that changes the mtime check for rc files from
1073         '>' to '!=', otherwise theme changes go unnoticed when turning
1074         back the clock (Tommi Komulainen).
1075
1076 2005-11-04  Tor Lillqvist  <tml@novell.com>
1077
1078         * gtk/gtkstatusicon.c (gtk_status_icon_set_tooltip): Plug memory
1079         leak on Win32.
1080
1081 2005-11-03  Tor Lillqvist  <tml@novell.com>
1082
1083         * gdk/win32/gdkcursor-win32.c: As there is only one GdkDisplay in
1084         the Win32 backend, check that GdkDisplay* parameters are equal to
1085         _gdk_display instead of using the unnecessarily general
1086         GDK_IS_DISPLAY().
1087
1088         (pixbuf_to_hbitmaps_alpha_winxp): Rename the variables for the
1089         color bitmap to have "color" in their name, for similarity with
1090         pixbuf_to_hbitmaps_normal(). Create a color bitmap for the mask,
1091         too, instead of creating a b&w bitmap with CreateBitmap(). Set up
1092         the mask bitmap's contents, ones for those pixels in the color
1093         bitmap where the alpha is zero, zero for other pixels. We used to
1094         use an uninitialized mask bitmap! This meant that icons and
1095         cursors created presumably worked more or less by accident.
1096         Totally blank icons with zero alpha everywhere (as used by
1097         gtktrayicon.c) definitely did not work as expected.
1098
1099         * gtk/Makefile.am: Include gtkstatusicon.c on all platforms.
1100
1101         * gtk/gtkstatusicon.c: Implement for Win32. Use code from
1102         gtktrayicon-win32.c as applicable. (gtktrayicon-win32.c is not
1103         necessary and can be removed from CVS. It has never been mentioned
1104         in gtk/Makefile.am.) No tray icon widget, GtkImage or GtkTooltips
1105         are used on Win32. One label widget is used (but never shown) as
1106         gtk_widget_render_icon() needs a widget.
1107
1108         Ifdefs used as necessary in several places. It might be cleaner to
1109         split out the backend-specific parts to separate files, or at
1110         least collect them into separate blocks in the file.
1111
1112         (wndproc): New function. Window procedure to monitor mouse events
1113         in the system tray icon. Call gtk_status_icon_button_press() as
1114         needed.
1115         (create_tray_observer): New function. Creates a hidden window that
1116         only serves as a tray icon message observer.
1117
1118         * tests/teststatusicon.c (icon_activated): Position the dialog
1119         with GTK_WIN_POS_CENTER.
1120         (do_quit): New function, hide and unref the GtkStatusIcon, and
1121         call gtk_main_quit().
1122         (popup_menu): Add a Quit menu item that calls do_quit().
1123         
1124 2005-11-02  Tor Lillqvist  <tml@novell.com>
1125
1126         * gdk/win32/gdkcolor-win32.c
1127         * gdk/win32/gdkscreen-win32.c
1128         * gdk/win32/gdkwindow-win32.c: Whitespace consistency
1129         fixes. Remove superfluous test for GdkWindow* parameters being
1130         non-NULL. Testing GDK_IS_WINDOW() is enough. As there is only one
1131         GdkScreen and one GdkDisplay in the Win32 backend, use those
1132         variables instead of the getter functions. For GdkDisplay* and
1133         GdkScreen* parameters, check that they are equal to the
1134         corresponding singleton variables instead of the more general
1135         GDK_IS_DISPLAY() or GDK_IS_SCREEN().
1136
1137 2005-11-02  Matthias Clasen  <mclasen@redhat.com>
1138
1139         * gtk/gtktextview.c: Remove some g_return_if_fail() from
1140         static functions, replace some others by g_assert().
1141         
1142         * gtk/gtktextview.c (selection_motion_event_handler) 
1143         (gtk_text_view_start_selection_drag): Keep track of the original
1144         selection boundaries during a drag selection, in order to correctly
1145         decide when to extend or shrink the selection.  (#320167,
1146         reported by Arvind S N, patch by Paolo Borelli)
1147
1148         * gtk/gtktextbtree.c (_gtk_text_line_char_to_byte_offsets): 
1149         * gtk/gtktextiter.c (gtk_text_iter_backward_chars): Replace
1150         manual offset calculations by g_utf8_offset_to_pointer().
1151         (#320360, Paolo Borelli)
1152
1153 Tue Nov  1 16:18:24 2005  Tim Janik  <timj@imendio.com>
1154
1155         * gtk/gtkrbtree.[hc]: get rid of GAllocator usage, allocate and free 
1156         nodes via the g_slice_*() API.
1157         _gtk_rbtree_new(): fixed wrong node allocation via g_new().
1158
1159 2005-11-01  Tor Lillqvist  <tml@novell.com>
1160
1161         * gdk/win32/gdkprivate-win32.h
1162         * gdk/win32/gdkglobals-win32.c
1163         * gdk/win32/gdkmain-win32.c (_gdk_windowing_init): Add more
1164         pre-interned GdkAtoms and pre-registered clipboard formats. Sort
1165         their declarations, definitions and assignments into a more
1166         logical and consistent order.
1167
1168         * gdk/win32/gdkmain-win32.c (_gdk_win32_cf_to_string): Include the
1169         CF_ prefix for the predefined clipboard format names. Put quotes
1170         around registered format names to distinguish them.
1171         
1172         * gdk/win32/gdkproperty-win32.c (gdk_property_change): Return
1173         immediately with a warning if the property type is STRING, TEXT,
1174         COMPOUND_TEXT or SAVE_TARGETS, as these are X11-specific that we
1175         should never pretend to handle on Win32. Handle only UTF8_STRING
1176         here, other formats with delayed rendering. Use \uc1 instead of
1177         \uc0 when generating Rich Text Format for easier testability on
1178         XP, where WordPad misinterprets \uc0 encoded characters. Add more
1179         GDK_NOTE debugging output for Clipboard operations.
1180
1181         * gdk/win32/gdkselection-win32.c: Debugging printout improvements.
1182         (gdk_selection_convert): Don't pretent to handle STRING, just
1183         UTF8_STRING. Streamline error handling, don't unnecessarily have a
1184         GError which then isn't used for anything anyway if it gets set.
1185         (gdk_win32_selection_add_targets): Skip also STRING, TEXT,
1186         COMPOUND_TEXT and SAVE_TARGETS in addition to UTF8_STRING.
1187
1188         * config.h.win32.in: Sync with what configure produces.
1189
1190         * configure.in: Don't look for X_PACKAGES unless building for
1191         x11. (#313986, John Ehresman)
1192
1193 2005-10-28  Erdal Ronahi  <erdal.ronahi@gmail.com>
1194
1195         * configure.in: Added ku (Kurdish) to ALL_LINGUAS
1196                         Wondered why there was no ku there before??
1197
1198 2005-10-28  Matthias Clasen  <mclasen@redhat.com>
1199
1200         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): Add the popup
1201         window to the toplevels window group.  (#319912, Christian Persch)
1202
1203 2005-10-28  Kristian Rietveld  <kris@gtk.org>
1204
1205         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_deleted): fix
1206         stupid thinko.
1207
1208 2005-10-28  Matthias Clasen  <mclasen@redhat.com>
1209
1210         * gtk/gtkdnd.c (gtk_drag_get_cursor): Fix the anchor of the default
1211         drag cursors.  (#319200, Federico Mena Quintero)
1212
1213         * gtk/gtktreeview.c (gtk_tree_view_search_key_press_event): Handle
1214         Shift-G to go to the previous match, like firefox.  (#320061, Christian 
1215         Neumair)
1216
1217         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_build_level): Fix a
1218         C99ism.  (#320000, Kazuki Iwamoto)
1219
1220         * gtk/gtkaboutdialog.c (gtk_about_dialog_init): Add the little 
1221         stars.  (#319985, Bastien Nocera)
1222
1223         * gtk/gtktreeview.c (gtk_tree_view_search_entry_flush_timeout): Return
1224         FALSE, so we don't flush repeatedly.  (#319151, Alexander Larsson)
1225
1226 2005-10-26  Michael Natterer  <mitch@imendio.com>
1227
1228         Fix bug #319974:
1229
1230         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
1231         make sure that setting any of pixbuf/stock-id/icon-name resets the
1232         others because they are mutually exclusive, and that unsetting any
1233         of them only resets the pixbuf and nothing else. Also added
1234         some missing g_object_notify().
1235
1236         (gtk_cell_renderer_pixbuf_get_property): simplified calls to
1237         g_value_set_object().
1238
1239         (gtk_cell_renderer_pixbuf_create_stock_pixbuf)
1240         (gtk_cell_renderer_pixbuf_create_named_icon_pixbuf): added
1241         g_object_notify ("pixbuf").
1242
1243 2005-10-27  Matthias Clasen  <mclasen@redhat.com>
1244
1245         * gtk/gtktreeview.c (gtk_tree_view_button_press): Be more 
1246         careful about initializing cell_area.  (#319382, Tommi
1247         Komulainen)
1248
1249         * gtk/gtkcombobox.c (gtk_combo_box_key_press): Don't eat
1250         Ctrl-PageUp/PageDown.  (#318670, Christian Neumair)
1251
1252         * demos/gtk-demo/clipboard.c (paste_received): Only set the
1253         text if it is not NULL.  (#319930, Thomas Klausner)
1254
1255         * gtk/gtkselection.c (gtk_selection_data_get_pixbuf): Close the
1256         loader before trying to get the pixbuf.  (#319930, Thomas Klausner)
1257
1258 2005-10-26  Matthias Clasen  <mclasen@redhat.com>
1259
1260         * gtk/gtkfilesystem.c (gtk_file_system_module_load): 
1261         * gtk/gtkthemes.c (gtk_theme_engine_load): 
1262         * gtk/gtkimmodule.c (gtk_im_module_load): Use G_MODULE_BIND_LAZY
1263         when dlopening modules.  (#319557, Laszlo Peter)
1264
1265 2005-10-26  Matthias Clasen  <mclasen@redhat.com>
1266
1267         * gtk/gtktextbtree.c (gtk_text_btree_resolve_bidi): Only use text
1268         segments when determining text direction.  (#319065, Tommi Komulainen)
1269
1270         * gtk/gtktreeview.c (gtk_tree_view_destroy): Don't crash
1271         on duplicate destroy.  (#318953, Gustavo Carneiro)
1272
1273         * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_new_with_dialog): 
1274         Point out that destroy-with-parent is a bad idea for the dialog
1275         passed to this function.  (#318943, Christian Persch)
1276
1277         * */Makefile.am: use $(GLIB_MKENUMS) instead of 
1278         glib-mkenums.  (#318582, Damien Carbery)
1279
1280         * gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Clarify
1281         docs.  (#317682, Christian Neumair)
1282
1283         * gdk/x11/gdkdnd-x11.c: Remove an extra const which doesn't
1284         seem to affect the placement of the data in the readonly 
1285         section, and causes problems with some compilers.  (#317844)
1286
1287 2005-10-25  Matthias Clasen  <mclasen@redhat.com>
1288
1289         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
1290         Fix some issues with background drawing in RTL.  (#318781,
1291         Eric Cazeaux)
1292
1293         * tests/Makefile.am:
1294         * tests/testentrycompletion.c: Apply a patch by Christian
1295         Persch to add property editors.
1296
1297         * gtk/gtkstatusicon.c: Emit activate on single-click,
1298         not on double-click, change proposed by Milosz Derezynski.
1299
1300 2005-10-25  Kristian Rietveld  <kris@gtk.org>
1301
1302         Fixes #311955, reported by Markku Vire; and a lot more.
1303
1304         * gtk/gtktreemodelfilter.c: Made this thing work correctly.
1305         Levels can now have invisible nodes cached, functions have been
1306         rewritten/refactored to take this into account; also the logic in
1307         some functions has been corrected.
1308         
1309         Each referenced node now references all visible children or a single
1310         invisible child, in order to be able to monitor all changes in the
1311         child model required for correct operation.
1312
1313         When a virtual root is set, all nodes on the virtual root level are
1314         referenced.
1315
1316         At last, a bunch of random bug fixes and comment updates.
1317
1318 2005-10-25  Matthias Clasen  <mclasen@redhat.com>
1319
1320         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Add some
1321         more docs.  (#319722, Paolo Borelli)
1322
1323         * gdk/x11/gdkxftdefaults.c (init_xft_settings): Make the 
1324         initialization of screen_x11->xft_rgba more explicit.  (#319627,
1325         Bogdan Nicula)
1326
1327         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Fix whitespace
1328         in a blurb.  (#319499, Francisco Javier F. Serrador)
1329
1330 2005-10-24  Matthias Clasen  <mclasen@redhat.com>
1331
1332         Add settings to hide the input method and Unicode control character
1333         submenus in the context menus of GtkEntry and GtkTextView.  
1334         
1335         * gdk/x11/gdkevents-x11.c: Map GTK+ settings to X settings.
1336         
1337         * gtk/gtksettings.c (gtk_settings_class_init): Declare GTK+ settings here.
1338
1339         * gtk/gtktextview.c (popup_targets_received): 
1340         * gtk/gtkentry.c (popup_targets_received): Use the settings here.
1341
1342 2005-10-24  Kristian Rietveld  <kris@gtk.org>
1343
1344         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): emitting
1345         row-has-child-toggled when the level is not in the cache does not
1346         make sense.  (This bug probably crept in during the early stages
1347         of GtkTreeModelSort when there wasn't a correct row-has-child-toggled
1348         implementation yet),
1349         (gtk_tree_model_sort_real_unref_node): only get the child iter
1350         when we will actually also use it.
1351
1352 2005-10-22  Michael Natterer  <mitch@imendio.com>
1353
1354         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): check for the
1355         widget being realized, in addition to being visible, to avoid
1356         running into precondition check in gtk_tree_view_get_cell_area().
1357         (approved by Kris).
1358
1359 2005-10-22  Dom Lachowicz <cinamod@hotmail.com>
1360
1361         * modules/engines/ms-windows/msw_style.c (setup_msw_rc_style): 
1362         Experimentally, scrollbar steppers can shrink to 8 pixels on 
1363         Win32. Reflect that in the theme.
1364         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Experimentally,
1365         there is a 1-pixel border between a scrollbar and its child
1366         in ScrolledWindows on Win32. Reflect that in the theme.
1367         
1368 2005-10-20  Matthias Clasen  <mclasen@redhat.com>
1369
1370         * gtk/gtklabel.c (gtk_label_create_window): Use GDK_WINDOW_CHILD
1371         for the selection window.  (#318806, Alex Larsson)
1372
1373 2005-10-18  Federico Mena Quintero  <federico@ximian.com>
1374
1375         Fixes bug #317999:
1376
1377         * tests/autotestfilechooser.c
1378         (test_button_folder_states_for_action): Test that we have either
1379         $cwd or the explicitly-set folder.
1380         (test_reload_sequence): Likewise.
1381
1382         * gtk/gtkfilechooserdefault.c
1383         (gtk_file_chooser_default_get_current_folder): If our reload_state
1384         is RELOAD_EMPTY, return a GtkFilePath corresponding to $cwd.
1385
1386 2005-10-14  Tor Lillqvist  <tml@novell.com>
1387
1388         * gdk/win32/gdkdisplay-win32.c: Remove the clipboard viewer code.
1389         It didn't really do anything useful, and was just confusing and
1390         incomplete. Comments claimed we don't do delayed rendering, but in
1391         fact we do, for images. (The delayed rendering code has other
1392         problems, though, see #168173.) The clipboard viewer code was
1393         probably even buggy (the WM_CHANGECBCHAIN handled didn't propagate
1394         the message when necessary). It was just test code, it said so in
1395         a comment. Add something similar back later if necessary.
1396
1397         (_win32_on_clipboard_change,
1398         _gdk_win32_register_clipboard_notification): Remove.
1399
1400         (gdk_display_supports_selection_notification,
1401         gdk_display_request_selection_notification): Always just return
1402         FALSE. We didn't generate any GDK_OWNER_CHANGE events anywhere.
1403
1404 2005-10-13  Tor Lillqvist  <tml@novell.com>
1405
1406         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't treat
1407         Alt-Enter specially. It does not have any special meaning and
1408         should be passed on to the application. (#318378, Tim Evans)
1409
1410 2005-10-13  Tor Lillqvist  <tml@novell.com>
1411
1412         Set visual depth to 24 for 32 bits-per-pixel devices on
1413         Win32. This allows gdk_drawable_real_draw_pixbuf() to use the
1414         optimized composite_0888() function rather than the slower image
1415         dithering functions to draw pixbufs (#313993, John Ehresman)
1416
1417         * gdk/win32/gdkimage-win32.c (_gdk_win32_new_image): Use
1418         _gdk_windowing_get_bits_for_depth() to initialize
1419         GdkImage::bits_per_pixel.
1420         (_gdk_windowing_get_bits_for_depth): Return 32 bits for depth 24.
1421
1422         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use
1423         _gdk_windowing_get_bits_for_depth() to initialize
1424         BITMAPINFOHEADER::biBitCount.
1425
1426         * gdk/win32/gdkvisual-win32.c (_gdk_visual_init): Set
1427         GdkVisual::depth to 24 even if GetDeviceCaps(BITSPIXEL) returns
1428         32.
1429
1430 2005-10-12  Stefan Kost  <ensonic@users.sf.net>
1431
1432         * demos/gtk-demo/appwindow.c: (about_cb):
1433           use PACKAGE_VERSION,bump year (#318654)
1434
1435 2005-10-11  Matthias Clasen  <mclasen@redhat.com>
1436
1437         * gtk/gtktextbtree.c (_gtk_text_btree_delete): Try to match an off 
1438         toggle here with the matching on toggle if it immediately follows. 
1439         This is a common case, and handling it here prevents quadratic blowup 
1440         in cleanup_line() below.  (#317125)
1441
1442         * gtk/gtktextsegment.h: 
1443         * gtk/gtktextsegment.c (_gtk_char_segment_new_from_two_strings): Pass
1444         the character counts into this function instead of computing them
1445         again.
1446
1447 2005-10-10  Tommi Komulainen  <tommi.komulainen@iki.fi>
1448
1449         * gtk/gtkfilechooser.h (GtkFileChooserError): Add ALREADY_EXISTS error
1450         code.
1451         * gtk/gtkfilechooserdefault.c
1452         (gtk_file_chooser_default_add_shortcut_folder): Return an error code
1453         when the shortcut already exists in the sidebar.  (#147521)
1454
1455 2005-10-09  Matthias Clasen  <mclasen@redhat.com>
1456
1457         * tests/testcombo.c: Demonstrate how to use custom widgets in
1458         a GtkComboBox.  
1459
1460 2005-10-07  Federico Mena Quintero  <federico@ximian.com>
1461
1462         Fixes bug #317999:
1463
1464         * tests/autotestfilechooser.c (test_reload_sequence): Ensure that
1465         the the result of gtk_file_chooser_get_folder() is NULL or
1466         non-NULL at the right times.  Log the tests.
1467         (test_button_folder_states): New test for the initial states of
1468         the current folder in GtkFileChooserButton.
1469         (main): Test that the number of warnings/errors/critical errors is
1470         zero.
1471
1472         * gtk/gtkfilechooser.c (gtk_file_chooser_get_current_folder):
1473         Clarify the documentation on when this can return NULL.
1474         (gtk_file_chooser_get_current_folder_uri): Likewise.
1475
1476         * gtk/gtkfilechooserbutton.c (struct
1477         _GtkFileChooserButtonPrivate): Added a folder_has_been_set flag;
1478         we use it to keep track of whether a folder has been set.
1479         (gtk_file_chooser_button_map):  Implement.  If no folder has been
1480         loaded before, we at least try to load $cwd here.
1481         (gtk_file_chooser_button_constructor): If the construct-time
1482         dialog already has a folder set, turn on our folder_has_been_set
1483         flag.
1484         (dialog_current_folder_changed_cb): Turn on our
1485         folder_has_been_set flag.
1486
1487 2005-10-07  Michael Natterer  <mitch@gimp.org>
1488
1489         * gtk/gtkfilechooserdefault.c: remove some explicit #defines of
1490         PROFILE_FILE_CHOOSER because they break compilation after the
1491         removal of <unistd.h>.
1492
1493 2005-10-07   Matthias Clasen  <mclasen@redhat.com>
1494
1495         * gtk/gtkfilechooserdefault.c: Properly fix the unistd.h include
1496         by moving it out of the profiling ifdef.
1497
1498         * gtk/gtkfilechooserdefault.c: Remove a redundant (and
1499         unconditional) include of unistd.h  (#318211, Kazuki Iwamoto)
1500
1501         * gtk/gtktexttag.c (gtk_text_attributes_ref): Use
1502         g_return_val_if_fail(), not g_return_if_fail().  (#318412,
1503         Kazuki Iwamoto)
1504
1505 2005-10-06  Matthias Clasen  <mclasen@redhat.com> 
1506                 
1507         * gtk/gtk.symbols:
1508         * gtk/gtktextbuffer.h:
1509         * gtk/gtktextbuffer.c: Add a readonly has-selection property
1510         with a getter.  (#318161, Paolo Borelli)
1511
1512 2005-10-05  Matthias Clasen  <mclasen@redhat.com>
1513
1514         * README.in: Start collecting release notes for 2.10.
1515
1516         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Readd the memory
1517         leak fix, since the assertion failures were traced to 
1518         an xchat bug.  (#314696)
1519         
1520         * gtk/gtkstyle.c (gtk_style_detach):
1521         (gtk_style_attach):  Documentation improvements.
1522         (gtk_style_detach): Assert that the attach_count is > 0.
1523
1524 2005-10-04  Federico Mena Quintero  <federico@ximian.com>
1525
1526         * gtk/gtkfilechooserdefault.c (switch_to_shortcut): Take a
1527         shortcut position, not a ShortcutsIndex, to make the function more
1528         generic.
1529         (home_folder_handler): Pass the resolved index to
1530         switch_to_shortcut(), rather than just SHORTCUTS_HOME.
1531         (desktop_folder_handler): Likewise for SHORTCUTS_DESKTOP.
1532         (gtk_file_chooser_default_class_init): Add a "quick-bookmark"
1533         binding signal, and bind it to Alt-1, Alt-2. ..., Alt-0.  These
1534         make the respective key switch to the first, second, ..., tenth
1535         bookmark.
1536         (quick_bookmark_handler): Implement.
1537
1538 2005-10-04  Federico Mena Quintero  <federico@ximian.com>
1539
1540         * gtk/gtkpathbar.c (get_dir_name): Don't special-case Home and
1541         Desktop; just use their real names on the file system for the
1542         user-visible names.
1543
1544         * gtk/gtkfilechooserdefault.c
1545         (gtk_file_chooser_default_class_init): Add a "desktop-folder"
1546         binding signal, and bind it to M-d by default.
1547         (desktop_folder_handler): Implement the default handler.
1548         (home_folder_handler): Use a helper function.
1549         (switch_to_shortcut): New helper function.
1550         (shortcuts_append_home): Don't special-case the name of "Home";
1551         just use the folder name.
1552
1553 2005-10-04  Tor Lillqvist  <tml@novell.com>
1554
1555         * gtk/gtkcalendar.c (gtk_calendar_init): Make it compile without
1556         HAVE__NL_TIME_FIRST_WEEKDAY. (#317910, Mathias Hasselmann)
1557
1558 2005-10-04  Matthias Clasen  <mclasen@redhat.com>
1559
1560         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Revert the change
1561         from yesterday, since it leads to assertion failures.  (#317879,
1562         Sebastian Bacher)
1563
1564 2005-10-03  Matthias Clasen  <mclasen@redhat.com>
1565
1566         * gtk/gtkcalendar.c (gtk_calendar_init): Call 
1567         calendar_compute_days() after setting priv->week_start.
1568
1569 2005-10-03  Matthias Clasen  <mclasen@redhat.com>
1570
1571         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Unref the style when
1572         removing it from the hash table.  (#314696, Benjamin Berg)
1573
1574 2005-10-01  Tor Lillqvist  <tml@novell.com>
1575
1576         * gdk/win32/gdkdrawable-win32.c (blit_from_pixmap): In case
1577         BitBlt() fails with ERROR_INVALID_HANDLE, the most probable cause
1578         is that the the desktop isn't visible because the session has been
1579         switched, the screen is locked, or a terminal server session
1580         disconnected, so no error message necessary. (#137796)
1581
1582         It is of course remotely possible that BitBlt() failing with
1583         ERROR_INVALID_HANDLE might also be caused by some other
1584         problem. We could strive for perfection and track whether the
1585         desktop is visible by using WTSRegisterSessionNotification() and
1586         handling WM_WTSESSION_CHANGE. I think that's overdoing it just for
1587         this issue, though. If we would track desktop visibility, we
1588         should then avoid even trying to update the display at all while
1589         the desktop isn't visible.
1590
1591 2005-09-30  Matthias Clasen  <mclasen@redhat.com>
1592
1593         * gtk/gtkcalendar.c (gtk_calendar_init): Another attempt
1594         to correct the calculations for the first week day. We may
1595         just have to remove this code if too many locales turn out 
1596         to have broken data. 
1597
1598         * gtk/gtkimage.c (gtk_image_expose): Don't leak pixbuf in
1599         some cases.  (#317611, Tommi Komulainen)
1600
1601         * gtk/gtksocket-x11.c (_gtk_socket_windowing_size_request):
1602         Prevent overflow when storing size hints in an unsigned
1603         short variable. Tracked down by Ray Strode and Søren Sandmann.
1604
1605 2005-09-29  Matthias Clasen  <mclasen@redhat.com>
1606
1607         * gtk/gtkbutton.c (gtk_button_set_image): Check arguments.  (#317491,
1608         Paolo Borelli)
1609
1610         * gtk/gtkpaned.c (gtk_paned_grab_notify): Stop drags when being
1611         grab shadowed.  (#317332)
1612
1613 2005-09-29  Tor Lillqvist  <tml@novell.com>
1614
1615         * gtk-zip.sh.in: DLLs are always in bin nowadays, no need to test.
1616
1617 2005-09-28  Federico Mena Quintero  <federico@ximian.com>
1618
1619         * tests/autotestfilechooser.c (test_reload_sequence): Oops, return
1620         if the unmap test fails.
1621         (test_reload_sequence): Use gtk_widget_show_now() instead of
1622         gtk_widget_show() for the dialog.
1623         Thanks to Tim Janik for noticing these.
1624
1625 2005-09-28  Federico Mena Quintero  <federico@ximian.com>
1626
1627         * tests/testcellrenderertext.c: New file with a set of tests for
1628         GtkCellRendererText.  The idea is to run a text renderer through
1629         most of its interesting property values to see that it works
1630         correctly.
1631
1632         * tests/Makefile.am: Added testcellrenderertext.
1633
1634         * gtk/gtkfilechooserdefault.c (load_set_model): Mark the
1635         entry/exit of this function for profiling.
1636         (gtk_file_chooser_default_style_set): Mark the start/end of the
1637         calls to the parent class and the the signal emission for profiling.
1638
1639 2005-09-29  Tor Lillqvist  <tml@novell.com>
1640
1641         * gtk/gtkmain.c (_gtk_get_localedir): The locale directory is
1642         passed to bindtextdomain() which isn't UTF-8-aware, so convert to
1643         system codepage using g_win32_locale_filename_from_utf8().
1644         (#317457, Kazuki Iwamoto)
1645
1646 2005-09-28  Matthias Clasen  <mclasen@redhat.com>
1647
1648         * gtk/gtkselection.c (_gtk_selection_request): Free mult_atoms 
1649         here. (#317039, Paolo Borelli)
1650
1651         * gtk/gtktexttag.h: 
1652         * gtk/gtktexttag.c (gtk_text_attributes_ref): Return the attributes
1653         to make this function work as boxed copy function.  (#317455,
1654         Gustavo Carneiro)
1655
1656         * gtk/gtkclipboard.c (request_image_received_func): Don't unref
1657         NULL.  (#316828, Tor Lillqvist)
1658
1659 2005-09-28  Tor Lillqvist  <tml@novell.com>
1660
1661         * modules/input/imime.c: Include <config.h>. (#317444, Kazuki
1662         Iwamoto)
1663
1664 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
1665
1666         Don't reload the current folder unnecessarily on ::map().
1667
1668         * gtk/gtkfilechooserprivate.h (ReloadState): New enum to represent
1669         the reloading state.
1670         (struct _GtkFileChooserDefault): Added a "reload_state" field.
1671
1672         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init):
1673         Initialize impl->reload_state.
1674         (gtk_file_chooser_default_map): Check the impl->reload_state; load
1675         a default folder if no folder has been set, or reload the current
1676         one only if we had been unmapped first.
1677         (gtk_file_chooser_default_update_current_folder): Set the
1678         reload_state to RELOAD_HAS_FOLDER.
1679         (gtk_file_chooser_default_unmap): Implement, and set the
1680         reload_state to RELOAD_WAS_UNMAPPED.
1681         (shortcuts_model_create): Don't call shortcuts_add_bookmarks()
1682         here; they'll get (re)loaded on ::map() anyway.
1683
1684         * gtk/gtkfilechooserwidget.c
1685         (gtk_file_chooser_widget_constructor): Don't set a default folder here.
1686
1687         * tests/autotestfilechooser.c (test_action_widgets): Don't take in
1688         a dialog; build it ourselves.
1689         (test_reload): New test to ensure that we don't load the default
1690         folder more than once, and that we reload it when
1691         unmapping/remapping.
1692         (get_impl_from_dialog): New utility function.
1693         (test_widgets_for_current_action): Use get_impl_from_dialog().
1694
1695 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
1696
1697         * gtk/gtkfilechooserdefault.c
1698         (gtk_file_chooser_default_constructor): Mark the entry/exit of
1699         this function for profiling.
1700         (check_icon_theme): Likewise.
1701         (change_icon_theme): Likewise.
1702         (settings_notify_cb): Likewise.
1703         (gtk_file_chooser_default_screen_changed): Likewise.
1704         (update_chooser_entry): If the selection is empty, clear the file
1705         name entry only if we are in CREATE_FOLDER mode.  In SAVE mode,
1706         nothing will be selected when the user starts typeahead in the
1707         treeview, and we don't want to clear the file name entry in that
1708         case --- the user could be typing-ahead to look for a folder name.
1709         Fixes bug #308332, patch by Jürg Billeter.
1710
1711 2005-09-27  Matthias Clasen  <mclasen@redhat.com>
1712
1713         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
1714         Pop below the entry if there's more free space below the entry
1715         than above.  (#316948, Tommi Komulainen)
1716
1717 2005-09-26  Federico Mena Quintero  <federico@ximian.com>
1718
1719         Do not create the save mode-specific widgets in the open modes, so
1720         that we don't carry their baggage around.
1721
1722         * gtk/gtkfilechooserdefault.c
1723         (gtk_file_chooser_default_constructor): Don't create the
1724         save_widgets here.
1725         (save_widgets_create): Set the impl->save_widgets directly here,
1726         instead of passing the widgets back to the caller.  Also, pack
1727         them into the impl's box.
1728         (update_appearance): Create or destroy the save widgets as
1729         appropriate.  Set the action of the save_file_name_entry here.
1730         (shortcuts_add_current_folder): Set the active item in the
1731         save_folder_combo only if it exists.
1732         (gtk_file_chooser_default_set_property): Don't set the action of
1733         the save_file_name_entry here.
1734         (gtk_file_chooser_default_update_current_folder): Set the base
1735         folder of the save_file_name_entry only if the entry exists.
1736         (shortcuts_drag_data_received_cb): Cast the selection_data->data
1737         to (const char *) since that's what shortcuts_drop_uris() expects.
1738         (file_list_drag_data_received_cb): Likewise, for
1739         g_uri_list_extract_uris().
1740
1741 2005-09-26  Tor Lillqvist  <tml@novell.com>
1742
1743         * gdk/win32/gdkwindow-win32.c (gdk_window_shape_combine_mask): Set
1744         the shaped flag here, too. (#316871)
1745         (gdk_window_shape_combine_region): Currently unimplemented, so
1746         don't do anything to the shaped flag here.
1747
1748 2005-09-26  Matthias Clasen  <mclasen@redhat.com>
1749
1750         Fix #316871, reported by Dan Winship:
1751         
1752         * gdk/gdkwindow.h (struct _GdkWindowObject): Add a shaped flag.
1753
1754         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_mask) 
1755         (gdk_window_shape_combine_region): Set it here.
1756
1757         * gdk/gdkwindow.c (gdk_window_invalidate_maybe_recurse): Don't
1758         remove the child area for shaped windows.
1759
1760 2005-09-23  Matthias Clasen  <mclasen@redhat.com>
1761
1762         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_finalize):
1763         Don't leak expander pixbufs.  (#316946, Tommi Komulainen)
1764
1765 2005-09-22  Michael Natterer  <mitch@imendio.com>
1766
1767         Renamed GtkCellRendererKeys to GtkCellRendererAccel to be
1768         consistent with GTK+ terminology:
1769
1770         * gtk/gtkcellrendererkeys.[ch]
1771         * tests/testkeys.c: removed...
1772
1773         * gtk/gtkcellrendereraccel.[ch]
1774         * tests/testaccel.c: ...and added.
1775
1776         * gtk/Makefile.am
1777         * gtk/gtk.h
1778         * gtk/gtk.symbols
1779         * tests/Makefile.am: changed accordingly.
1780
1781 2005-09-22  Matthias Clasen  <mclasen@redhat.com>
1782
1783         * gtk/gtkwidget.c (gtk_widget_class_init): Fix the documentation
1784         for the grab-broken-event signal, noticed by Damon Chaplin.
1785
1786 2005-09-21  Tor Lillqvist  <tml@novell.com>
1787
1788         * gdk/win32/gdkselection-win32.c (gdk_selection_convert,
1789         gdk_text_property_to_text_list_for_display,
1790         gdk_text_property_to_utf8_list_for_display,
1791         gdk_win32_selection_add_targets,
1792         _gdk_win32_selection_convert_to_dib): Free return value from
1793         gdk_atom_name().
1794         (gdk_text_property_to_text_list_for_display): Drop GError variable
1795         that isn't actually used after being set.
1796
1797 2005-09-20  Johan Dahlin  <jdahlin@async.com.br>
1798
1799         * gtk/gtkentry.c (gtk_entry_set_completion): Mention NULL in 
1800         documentation.
1801
1802 2005-09-20  Tor Lillqvist  <tml@novell.com>
1803
1804         * gdk/win32/gdkselection-win32.c
1805         (gdk_selection_owner_get_for_display): Do return the correct owner
1806         for CLIPBOARD (i.e., the owner of the Windows Clipboard, if it is
1807         a window GDK knows about). The reason to return NULL seems to have
1808         gone when in the fix for bug #163702 the artificial
1809         GDK_SELECTION_CLEAR event generation was removed from
1810         gdk_selection_send_notify_for_display(). Fixes bug #316552.
1811
1812 2005-09-20  Matthias Clasen  <mclasen@redhat.com>
1813
1814         Avoid unnecessary XkbGetState() calls and XkbStateNotify
1815         events.  (#151555, Søren Sandmann)
1816
1817         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Use 
1818         XkbSelectEventDetails() to select XkbStateNotify events
1819         for only the state we care about.
1820
1821         * gdk/x11/gdkprivate-x11.h:
1822         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_state_changed): Pass
1823         the event into the function and update the keymap state from
1824         the state information contained in the event. Adjust all callers.
1825         
1826 2005-09-19  Matthias Clasen  <mclasen@redhat.com>
1827
1828         * gtk/gtkiconview.c: Use g_list_nth_data() instead of g_list_nth()->data
1829         in multiple places to avoid segfaults if the index is out of range.  
1830         (#316422, Guillaume Cottenceau)
1831         (gtk_icon_view_set_drag_dest_item): 
1832         (gtk_icon_view_scroll_to_path): Fix a typo in the docs.  (#316419,
1833         #316424, Guillaume Cottenceau)
1834
1835 2005-09-18  Hans Breuer  <hans@breuer.org>
1836
1837         * gtk/gtktrayicon-win32.c : now handling events by hard-coded 
1838         g_signal_emit_by_name() - will break when gtkstatusicon.c changes.
1839
1840 2005-09-18  Hans Breuer  <hans@breuer.org>
1841
1842         * gdk/gdk.symbols gdk/win32/gdkwin32.h gdk/win32/gdkcursorwin32.c : export
1843         _gdk_win32_pixbuf_to_hicon() as gdk_win32_pixbuf_to_hicon_libgtk_only()
1844         * gtk/gtktrayicon-win32.c : a lot of debug spew but it has started to show
1845         the icon and is blinking with teststatusicon. More to come ...
1846
1847 2005-09-18  Hans Breuer  <hans@breuer.org>
1848
1849         * gtk/makefile.msc.in : fix typo for GTK_VER; define HAVE_CONFIG_H
1850         cause gtkprogressbar.c has #include <config.h> conditionally; less
1851         noise from generated gtk.def
1852         * gtk/stock-icons/makefile.msc gdk/makefile.msc tests/makefile.msc : updated
1853         
1854         * gtk/gtktrayicon-win32.c : dummy implmentation to make gtk compile.
1855         For me it works as well as the *NIX implemenation, that is not at all.
1856
1857         * gdk/win32/gdkproperty-win32.c : implement gdk_atom_intern_static_string()
1858
1859         * gdk/win32/gdkwindow-win32.c(gdk_window_set_urgency_hint) : only use
1860         only use (WINVER >= 0x0500) when available from the SDK. Otherwise fall
1861         back to true dynamic linking of FlashWindowEx. Makes gtk+ work on NT4.0
1862         again - if compiled properly.
1863
1864         * tests/teststatusicon.c : don't use GNOME icons for testing, but icons
1865         already coming with Gtk+. Makes it compile on win32.
1866
1867 2005-09-18  Guilherme de S. Pastore  <gpastore@cvs.gnome.org>
1868
1869         * README.cvs-commits: fixed some tiny typos
1870
1871 2005-09-16  Tor Lillqvist  <tml@novell.com>
1872
1873         * modules/engines/ms-windows/msw_style.c (draw_extension,
1874         draw_box_gap): Check whether the widget actually is a GtkNotebook
1875         before treating it as such. Drop some unneeded local variables,
1876         use parameter with same information instead. (#316412)
1877
1878 2005-09-15  Federico Mena Quintero  <federico@ximian.com>
1879
1880         * tests/autotestfilechooser.c: Start a set of automated tests for
1881         the file chooser.  The only test in there right now doesn't pass
1882         yet.  It specifies the intended behavior of the first optimization
1883         of a series which I'll do on the file chooser (see
1884         http://primates.ximian.com/~federico/news-2005-09.html#14 for the
1885         details of this optimization).
1886
1887         * tests/Makefile.am: Added autotestfilechooser.c.
1888
1889         * gtk/gtkfilechooserprivate.h (struct
1890         _GtkFileChooserDialogPrivate): Move all the file chooser's private
1891         structures to here, so that they can be accessed by
1892         tests/autotestfilechooser.c:  _GtkFileChooserDialogPrivate,
1893         _GtkFileChooserWidgetPrivate, LoadState, _GtkFileChooserDefault.
1894
1895         * gtk/gtkfilechooserdialog.c: See above.
1896
1897         * gtk/gtkfilechooserwidget.c: See above.
1898
1899         * gtk/gtkfilechooserdefault.c: See above.
1900
1901 Thu Sep 15 15:27:55 2005  Tim Janik  <timj@imendio.com>
1902
1903         * gtk/gtkwindow.c: 
1904         gtk_window_map_event(): new function to work around lost unmap requests.
1905         fixes bug #316180.
1906
1907 2005-09-14  Federico Mena Quintero  <federico@ximian.com>
1908
1909         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): Add
1910         an easy-to-find profiling marker when starting to create a file
1911         chooser.
1912         (browse_files_model_finished_loading_cb): Likewise, for when the
1913         chooser is finished loading.
1914
1915 2005-09-14  Tristan Van Berkom <tvb@cvs.gnome.org>
1916
1917         * gtk/gtkcolorbutton.c: Check "color" argument in 
1918         gtk_color_button_set_color ()
1919
1920 2005-09-14  Matthias Clasen  <mclasen@redhat.com>
1921
1922         * gtk/gtklabel.c (gtk_label_get_type): 
1923         * gtk/gtkbutton.c (gtk_button_get_type): 
1924         * gtk/gtkwindow.c (gtk_window_group_get_type): No point in 
1925         using a mem chunk for window groups, buttons, labels.
1926
1927         * gtk/updateiconcache.c (foreach_remove_func): Fix
1928         a use-after-free bug.  (#316256, Alexander Nedotsukov)
1929
1930 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
1931
1932         * gtk/*.c: Various cleanups.  (#315360, Kjartan Maraas)
1933
1934         * gdk/*.c: Various cleanups.  (#315359, Kjartan Maraas)
1935         
1936 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
1937
1938         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
1939         Let GDK_Return pass through in some more cases.
1940
1941         * gtk/gtkentry.c (gtk_entry_key_press): Reset the im context before
1942         activating the entry. 
1943
1944         * gtk/gtkiconview.c (gtk_icon_view_class_init):
1945         (gtk_icon_view_get_dest_item_at_pos):  Fix typos in the 
1946         docs.  (#316008, #316027, #316121, Guillaume Cottenceau)
1947
1948         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Add some docs.
1949         (#316001, Guillaume Cottenceau)
1950
1951         * gtk/gtkdnd.c (gtk_drag_set_icon_name): Fix a copy-and-paste
1952         mistake in the docs.  (#315993, Guillaume Cottenceau)
1953
1954         * tests/testentrycompletion.c (create_simple_completion_model): Add
1955         some strings containing multibyte characters.
1956
1957         * gtk/gtkentrycompletion.c (gtk_entry_completion_real_insert_prefix): 
1958         Fix prefix insertion for multibyte characters.  (#316095,
1959         Tommi Komulainen)
1960
1961         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): 
1962         * gtk/gtkiconview.c (gtk_icon_view_create_drag_icon): Silently
1963         return NULL if the widget is not realized.  (#316023,
1964         Guillaume Cottenceau)
1965
1966 2005-09-11  Matthias Clasen  <mclasen@redhat.com>
1967
1968         * gdk/gdk.symbols: 
1969         * gdk/gdkproperty.h: 
1970         * gdk/x11/gdkproperty-x11.c (gdk_atom_intern_static_string): 
1971         New function to avoid pointless strdups when creating atoms
1972         from static strings.  
1973
1974         * gdk/x11/*.c:
1975         * gtk/*.c:  Use gdk_atom_intern_static_string() where 
1976         appropriate.
1977
1978 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
1979
1980         * gtk/gtkcellrendererkeys.h: 
1981         * gtk/gtkcellrendererkeys.c: Add a cell renderer for displaying
1982         and editing accelerators, a port of EggCellRendererKeys .
1983
1984         * gtk/gtk.symbols:
1985         * gtk/gtk.h:
1986         * gtk/Makefile.am: Add the keys cell renderer.
1987
1988         * tests/Makefile.am: 
1989         * tests/testkeys.c: Test GtkCellRendererKeys
1990
1991 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
1992
1993         Make it possible to determine if a key event is for a
1994         modifier key:
1995         
1996         * gdk/x11/gdkprivate-x11.h: 
1997         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_key_is_modifier): 
1998         New function to determine if a keycode is mapped to a modifier.
1999         (get_xkb): Get the modmap.
2000
2001         * gdk/x11/gdkevents-x11.c (translate_key_event): Set the 
2002         is_modifier bit by calling _gdk_keymap_key_is_modifier().
2003
2004         * gdk/gdkevents.h (struct _GdkEventKey): Add an is_modifier
2005         bit.
2006
2007 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
2008
2009         * gdk/gdkpixbuf-drawable.c (convert_real_slow): Remove an 
2010         unused variable, noticed by Kjartan Maraas.
2011
2012 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
2013
2014         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event): 
2015         Make drag reordering work properly for columns other than the
2016         first.  (#315054, Dan Winship)
2017         
2018         * gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Handle 
2019         invalid fontnames better. (#136926, Michael R. Walton)
2020         
2021         Stop cursor blinking in non-editable regions of a text view.
2022         (#311508, Torbjörn Andersson)
2023         
2024         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): 
2025         (cursor_blinks): Take editability into account when deciding
2026         whether the cursor blinks.
2027         (gtk_text_view_button_release_event): 
2028         (gtk_text_view_move_cursor_internal): Update cursor blinking here.
2029
2030         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_start_editing): 
2031         Use connect_after to connect to the focus_out event. This
2032         ensures that the entry has already stopped blinking by the time
2033         we emit the edited signal.  (#315229, Thomas Leonard)
2034
2035         * tests/testgtk.c: Use GDK_MOD1_MASK, not GDK_ALT_MASK.
2036
2037         * gtk/gtkwindow.c (gtk_window_parse_geometry): Don't set
2038         unsigned ints to -1.  (#315481, Kjartan Maraas)
2039
2040         * gtk/gtkcalendar.c (gtk_calendar_init): first_weekday is relative
2041         to week_1stday, not to Sunday. Gotta love the ISO 14652 guys...
2042         (#314473, Stanislav Brabec)
2043
2044 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
2045
2046         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Document
2047         memory handling.  (#314975, Torsten Schoenfeld)
2048
2049         * gtk/gtkiconview.c (gtk_icon_view_class_init): 
2050         * gtk/gtkfilesel.c (gtk_file_selection_class_init): 
2051         * gtk/gtkcombobox.c (gtk_combo_box_class_init): 
2052         * gtk/gtklabel.c (gtk_label_class_init): 
2053         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): 
2054         Stylistic improvements and clarifications for some blurbs. 
2055         (#315520, Clytie Siddall)
2056
2057 2005-09-09  Tor Lillqvist  <tml@novell.com>
2058
2059         * gdk/win32/gdkdisplay-win32.c (gdk_display_get_name): Cache the
2060         display name. There is only one GdkDisplay on Win32, and
2061         constructing the display name isn't entirely trivial, so cacheing
2062         is probably worth it. For instance GIMP calls this function a lot.
2063         (gdk_display_open): Call gdk_display_get_name() to prime the
2064         cached name.
2065         (gdk_display_get_n_screens, gdk_display_get_screen,
2066         gdk_display_get_default_screen): Verify parameter correctness like
2067         the X11 backend does.
2068
2069         * gdk/win32/gdkscreen-win32.c (gdk_screen_make_display_name):
2070         Return a freshly allocated string, as the API specifies. Fixes a
2071         heap corruption problem that caused random errors and crashes in
2072         GIMP, for instance.
2073
2074 2005-09-07  Matthias Clasen  <mclasen@redhat.com>
2075
2076         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
2077         Make C-u commit and restart hex input if we are already in a
2078         hex sequence.
2079
2080 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
2081
2082         * gdk/x11/gdkkeys-x11.c (update_modmap): Make the modmap reflexive.
2083         (_gdk_keymap_add_virtual_modifiers): Don't add both Alt and Meta
2084         if they are mapped to the same modifier.
2085
2086         * gtk/Makefile.am: Rename gtkstatusicon-x11.c and gtktrayicon.c
2087         to gtkstatusicon.c and gtktrayicon-x11.c
2088
2089         * gtk/gtkaccelgroup.c: Include Super, Hyper and Meta in the
2090         default accel mod mask.
2091
2092         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): 
2093         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
2094         Don't use GDK_ALT_MASK.
2095
2096         * gdk/gdktypes.h: No need to introduce GDK_ALT_MASK
2097
2098 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
2099
2100         Add support for extra virtual modifiers:  (#85780, Owen Taylor)
2101         
2102         * tests/testgtk.c (create_key_lookup): Add tests for extra virtual
2103         modifiers.
2104
2105         * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Try to match both against
2106         Mod2 - Mod5 and against Super, Hyper, Meta.
2107
2108         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
2109         * gtk/gtkaccelgroup.c (gtk_accelerator_parse) 
2110         (gtk_accelerator_name): Support Super, Hyper Meta and Mod2 - Mod5.
2111
2112         * gdk/x11/gdkkeys-x11.c (struct _GdkKeymapX11): Add a 
2113         modmap to maintain the information which X modifiers map to
2114         virtual modifiers.
2115         (get_xkb): Set up the modmap from the XKB tables.
2116         (update_keymaps): Set up the modmap from the information returned
2117         by XGetModifierMapping in the non-XKB case.
2118
2119         * gdk/x11/gdkprivate-x11.h: 
2120         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_add_virtual_modifiers): New 
2121         function to set the virtual modifiers in the state.
2122
2123         * gdk/x11/gdkevents-x11.c (translate_key_event): Call 
2124         _gdk_keymap_add_virtual_modifiers here.
2125
2126         * gdk/gdktypes.h (GdkModifierType): Add bits for virtual Super, 
2127         Hyper and Meta modifiers. Also add GDK_ALT_MASK as an alias
2128         for GDK_MOD1_MASK.
2129
2130 2005-09-05  Matthias Clasen  <mclasen@redhat.com>
2131
2132         * gtk/gtkaction.c (connect_proxy): Set the label of a button
2133         if it has no child.  (#315253, John Finlay)
2134
2135 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
2136
2137         * gtkimcontextsimple.h: Add a modifiers_dropped bit
2138
2139 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
2140
2141         * gtk/gtkentry.c (gtk_entry_destroy): Disconnect idle handlers
2142         on destroy to avoid problems when they are called on a destroyed
2143         widget.  (#315135, John Cupitt)
2144         
2145         * gtk/gtkentry.c (gtk_entry_class_init):
2146         * gtk/gtktextview.c (gtk_text_view_class_init): Add bindings
2147         for Ctrl-Shift-A to unselect all.  (#309301, Kathy Fernandes)
2148
2149         * gtk/gtkimcontextsimple.c: Rework the Unicode hex input
2150         code. Now we only steal a single key combination, Ctrl-Shift-U,
2151         instead of sixteen. 
2152         A hex Unicode sequence must be started with Ctrl-Shift-U, followed
2153         by a sequence of hex digits entered with Ctrl-Shift still held.
2154         Releasing one of the modifiers or pressing space while the modifiers
2155         are still held commits the character. It is possible to erase
2156         digits using backspace.
2157         As an extension to the above, we also allow to start the sequence
2158         with Ctrl-Shift-U, then release the modifiers before typing any
2159         digits, and enter the digits without modifiers.
2160         (#82011, Owen Taylor)
2161         
2162 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
2163
2164         * gtk/gtkmain.c (gtk_get_event_widget): If the window is destroyed,
2165         we still need to deliver the destroy event.  (#314980, Chris Lahey)
2166
2167         * gtk/gtktextview.c (gtk_text_view_key_press_event): Reset 
2168         im context before committing \n or \t.
2169
2170 2005-09-02  Alexander Larsson  <alexl@redhat.com>
2171
2172         * gtk/gtkfilechooserdefault.c: (shortcuts_add_volumes),
2173         (shortcuts_activate_volume):
2174         Handle base_path being null in the rest of the cases (#310270)
2175
2176 2005-09-02  Tor Lillqvist  <tml@novell.com>
2177
2178         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Keep track of
2179         cursor position also in root window coordinates. Prune out
2180         superfluous WM_MOUSEMOVE events even earlier, based on root window
2181         coordinates. Windows sends WM_MOUSEMOVE messages after a new
2182         window has ben mapped below the cursor even if the mouse doesn't
2183         move. We used to generate GDK_MOTION_NOTIFY in these cases. This
2184         confused at least gtk_menu_motion_notify(). (#314995)
2185
2186         * gtk/gtkintl.h: No need to include config.h here. It caused
2187         warnings about GTK_LOCALEDIR being redefined on Win32 when
2188         compiling files where gtkintl.h is included after gtkprivate.h
2189         (which #undefines and re-#defines GTK_LOCALEDIR on Win32).
2190
2191         * gtk/gtkplug.c: Include config.h.
2192
2193 2005-09-01  Matthias Clasen  <mclasen@redhat.com>
2194
2195         * gtk/gtkfilesystemunix.c: Pass statbufs down to 
2196         xdg_mime_get_mime_type_for_file() where possible, to avoid
2197         useless re-stating.  
2198         
2199         * gtk/gtkaction.c (gtk_action_get_accel_closure): Fix doc
2200         typo.  (#314921, Guillaume Cottenceau)
2201
2202         * gdk/*.c: Intern some more strings.
2203         * gtk/gtkintl.h: 
2204         * gtk/*.c: Define an I_() macro and use it instead of the 
2205         bulky g_intern_static_string().
2206
2207 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
2208
2209         * gtk/gtkbindings.c (binding_signal_new): Intern the signal name
2210         instead of copying it.
2211
2212         * gtk/gtktypeutils.c (gtk_identifier_get_type): Some more string interning.
2213
2214         * gtk/*.c: Also intern static strings passed to 
2215         g_object_set_data().
2216
2217         * gdk/Makefile.am: 
2218         * gtk/Makefile.am: Intern type names in code generated by 
2219         glib-mkenums, too.
2220
2221         * gtk/*.c: 
2222         * gdk/x11/*.c: 
2223         * gdk/*.c: Intern type names before registering the type to avoid 
2224         unnecessary copies.
2225
2226         * configure.in: Require GLib 2.9.0
2227
2228 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
2229
2230         * gtk/gtktoolbar.c: Undeprecate gtk_toolbar_set_icon_size(),
2231         and add icon-size and icon-size-set properties.  (#314172)      
2232
2233         * gtk/gtkwindow.c (gtk_window_set_transient_for): Inherit window
2234         groups across transient parents.  (#312918, Christian Persch)
2235
2236         * gtk/gtktreemodel.c: Some documentation fixes.  (#314882,
2237         Guillaume Cottenceau)
2238
2239         * gtk/gtktextiter.c (gtk_text_iter_backward_visible_cursor_positions): 
2240         Fix a typo in the docs.  (#314878, Guillaume Cottenceau)
2241
2242 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
2243
2244         * gtk/gtkentry.c (gtk_entry_class_init): Add key bindings to
2245         make C-/ select all and C-\ unselect all.  (#309301,
2246         Kathy Fernandez)
2247
2248         * gtk/gtkimcontextsimple.c: Change the compose sequence for
2249         soft hyphen to be multi_key-minus-minus-space, and add
2250         compose sequences multi_key-minus-minus-period and 
2251         multi_key-minus-minus-minus for en dash and em dash.
2252         (#172653, Christian Lohmaier)
2253
2254         * gtk/gtkentry.c (gtk_entry_draw_frame): Fix some unused
2255         code.  (#313946, Christian Persch)
2256
2257         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Another
2258         fix for the default value of the "ui" property.
2259
2260 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
2261
2262         * gtk/gtk.symbols: 
2263         * gtk/gtkselection.h:
2264         * gtk/gtkselection.c: Add functions which look for text, image
2265         or uri targets in an array of atoms.   (#314089, Mark Wielaard)
2266
2267         * gtk/gtk.symbols: 
2268         * gtk/gtkselection.h:
2269         * gtk/gtkselection.c (gtk_selection_data_targets_include_uri): 
2270         Add a function to check wether targets include uri.  
2271         (#314092, Mark Wielaard)
2272         
2273         * gtk/gtk.symbols: 
2274         * gtk/gtkwindow.h: 
2275         * gtk/gtkwindow.c: Add a deletable property with getter
2276         and setter, to control the close button in the window 
2277         frame.  (#59718, Havoc Pennington)
2278
2279 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
2280
2281         * gtk/gtkrc.key.emacs: Add C-n/C-p/C-f/C-b as alternatives
2282         to the arrow keys for menu navigation.  (#162825, Carl Worth)
2283
2284         * gtk/gtkentry.c, gtk/gtktextview.c: More typo fixes
2285
2286         * gtk/gtksocket-x11.c, gtk/gtkstatusicon-x11.c: Fix typos.
2287
2288         * gtk/gtkstatusicon-x11.c (gtk_status_icon_new_from_stock): 
2289         * gtk/gtkimage.c (gtk_image_new_from_stock): Don't
2290         refer to nonexisting stock ids.
2291
2292         * gtk/gtktextview.c (popup_targets_received): 
2293         * gtk/gtkentry.c (popup_targets_received): Construct
2294         the "Select All" menuitem from stock.
2295
2296         * gtk/stock-icons/stock_select_all_{16,24}.png:
2297         * gtk/stock-icons/Makefile.am: 
2298         * gtk/gtkiconfactory.c:
2299         * gtk/gtkstock.h: 
2300         * gtk/gtkstock.c: Add a "Select All" stock item.  (#78545,
2301         Calum Benson)
2302
2303         * gtk/gtktrayicon.c: Add a pointer to the spec.
2304
2305         * gtk/gtkstatusicon-x11.c: Add docs.
2306
2307         * gtk/gtkstatusicon.h: Fix a typo.
2308
2309         Add a cross-platform "tray icon" API, by
2310         porting EggStatusIcon/EggTrayIcon (#105101)
2311         
2312         * gtk/gtkstatusicon.h: A GtkStatusIcon is an object which
2313         displays an icon in a notification area.
2314
2315         * gtk/gtkstatusicon-x11.c: GtkStatusIcon implementation for
2316         X11, using GtkTrayIcon.
2317
2318         * gtk/gtktrayicon.h: 
2319         * gtk/gtktrayicon.c: An implementation of the freedesktop.org
2320         system tray specification, not public API.
2321
2322         * gtk/gtk.symbols: Add new exported functions.
2323
2324         * gtk/gtk.h: Include gtkstatusicon.h.
2325
2326         * gtk/Makefile.am: Add new files.
2327
2328         * tests/Makefile.am:
2329         * tests/teststatusicon.c: Test for GtkStatusIcon.
2330
2331 2005-08-29  Christopher Aillon  <caillon@redhat.com>
2332
2333         * gtk/gtkstock.c: Add builtin GtkStockItems for GTK_STOCK_CONNECT
2334         and GTK_STOCK_DISCONNECT
2335         
2336 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
2337
2338         * gtk/gtksocket-x11.c (_gtk_socket_windowing_embed_notify): 
2339         Use XFixesChangeSaveSet if available.  (#314682)
2340
2341         * gtk/gtkmenu.c (gtk_menu_grab_notify):  Only cancel if the menu
2342         was active.  (#314298, Christian Persch, analysis by Mark McLoughlin)
2343
2344 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
2345
2346         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): Remove an
2347         accidentally leftover duplicate pixbuf creation.  (#314700,
2348         Kjartan Maraas)
2349
2350         * gtk/gtksettings.c (settings_update_cursor_theme): Don't 
2351         leak the cursor theme name.  (#314693, Kjartan Maraas)
2352
2353         * gdk/x11/gdkasync.c (_gdk_x11_get_window_child_info): Free 
2354         state.children in all cases.  (#313862, Kjartan Maraas)
2355
2356 2005-08-28  Matthias Clasen  <mclasen@redhat.com>
2357
2358         * po/POTFILES.in, po-properties/POTFILES.in:
2359         Add gdk/gdkscreen.c
2360
2361 2005-08-27  Matthias Clasen  <mclasen@redhat.com>
2362
2363         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Fix the default
2364         value of the ui property. (#314532, Yong Wang)
2365
2366         * gdk/x11/gdkproperty-x11.c (gdk_property_get): Don't warn
2367         when G_MAXLONG is passed as length.  
2368
2369 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
2370
2371         * gtk/updateiconcache.c: Add a separate --ignore-theme-index option
2372         to avoid overloading --force.  (JP Rosevaar)
2373
2374 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
2375
2376         * configure.in: Bump version to 2.9.0
2377
2378         * gdk/gdk.symbols: 
2379         * gdk/gdkscreen.h: 
2380         * gdk/gdkscreen.c: Make the GdkScreen font options api
2381         public, and add properties GdkScreen::font-options and
2382         GdkScreen::resolution.  (#314004)
2383
2384         * gdk/gdkpango.c:
2385         * gtk/gtksettings.c:
2386         * gtk/gtkwidget.c: Adjust all callers.
2387         
2388         * gdk/gdkintl.h: Simplify and use glib/gi18n-lib.h.
2389         * gdk/gdkpango.c: Include gdkintl.h, not gtkintl.h.
2390         * gdk/gdkscreen.c: Include gdkintl.h.
2391
2392         * gtk/gtkicontheme.c (theme_lookup_icon): Avoid an uninitialized
2393         variable warning, pointed out by Colin Walters. (#314585)
2394
2395 2005-08-26  Tor Lillqvist  <tml@novell.com>
2396
2397         * gtk/gtkfilesystemwin32.c: Remove some ifdeffed out debugging
2398         printouts.
2399         (gtk_file_system_win32_parse): Don't mishandle UNC paths. (#314519)
2400
2401 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
2402
2403         * gtk/gtkcalendar.c (gtk_calendar_init): Fix the calculation
2404         of week_start.  (#314473, JP Rosevaar)
2405
2406 2005-08-25  Thomas Fitzsimmons  <fitzsim@redhat.com>
2407
2408         * gtk/gtkfilesystemmodel.c (idle_finished_loading_cb): Acquire GDK
2409         lock.  (#314533, Thomas Fitzsimmons)
2410
2411 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
2412
2413         * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Handle
2414         NULL gracefully.  (#314523, Ed Catmur)
2415
2416 2005-08-25  Owen Taylor  <otaylor@redhat.com>
2417
2418         * gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): 
2419         Handle theme == NULL.
2420
2421 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
2422
2423         * gtk/gtkmenutoolbutton.c (menu_position_func): Take widget
2424         y offset into account when positioning the popup.  (#314470,
2425         Christian Persch)
2426
2427 2005-08-25  Owen Taylor  <otaylor@redhat.com>
2428
2429         * gdk/gdkscreen.c (gdk_screen_get_type): Use gdk_screen_init
2430         as instance_init, not base_init! (#314452, Fix from Frederic
2431         Crozat, reported by Joe Marcus Clarke). Trivial cleanup: use -1.
2432         rather than 1 for a negative flag value.
2433
2434 2005-08-24  Owen Taylor  <otaylor@redhat.com>
2435
2436         * gdk/gdkpango.c (draw_error_underline): Add a note about
2437         cut-and-paste between here and Pango.
2438
2439 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
2440
2441         * === Released 2.8.2 ===
2442
2443         * gtk/gtkclipboard.c (request_image_received_func): Use the correct
2444         callback for image/gif, and also try image/bmp.  (#314086,  Mark 
2445         Wielaard)
2446
2447         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon): 
2448         Use gnome-dev-harddisk for volumes, not gnome-fs-blockdev.  (#314382,
2449         Sebastien Bacher)
2450         
2451         * NEWS: Updates
2452
2453         * gtk/gtksettings.c (gtk_settings_get_for_screen): Make sure font
2454         and cursor settings get propagated down to the screen initially.
2455         Pointed out by Frederic Crozat.
2456
2457         * gtk/gtkicontheme.c (ensure_valid_themes): Don't try to send a client
2458         message if the screen is NULL. Noticed by Kjartan Maraas.
2459
2460 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
2461
2462         * Bump version
2463
2464         * === Released 2.8.1 ===
2465
2466         * NEWS: Updates
2467         
2468 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
2469
2470         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_visible): Protect
2471         against lazy filterers which return values other than TRUE or
2472         FALSE from their visible func.  (#314335)
2473
2474 2005-08-23  Owen Taylor  <otaylor@redhat.com>
2475
2476         Fix for #314004, reported by Michael Reinsch:
2477
2478         * gdk/gdk.symbols:
2479         * gdk/gdkscreen.[ch]: Add gdk_screen_get/set_font_options_libgtk_only()
2480         Add gdk_screen_get/set_resolution_libgtk_only()
2481
2482         * gdk/gdkpango.c (gdk_pango_context_get_for_screen): Set
2483         the options for the screen on the newly created context.
2484
2485         * gtk/gtksettings.c (settings_update_font_options/dpi) gtkwidget.c: 
2486         Move font options and dpi code from gtkwidget.c to gtksettings.c, set
2487         the font options on the screen.
2488
2489         * gtk/gtkwidget.c (gtk_widget_update_pango_context): Just get
2490         the font options from the screen and set them on the context.
2491
2492 2005-08-23  Kristian Rietveld  <kris@gtk.org>
2493
2494         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): don't
2495         bother inserting new rows in a level with a zero refcount and
2496         immediately free the level. (Fixes #312350, reported by Markku Vire).
2497
2498 2005-08-23  Matthias Clasen  <mclasen@redhat.com>
2499
2500         * gtk/updateiconcache.c: Complain when there is no index.theme file
2501         in the specified directory, unless --force is used. Also add an
2502         --index-only option to create caches without image data.
2503
2504         * gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Fix a
2505         C99ism.  (#314262, Robert Jeff Mitchell)
2506         
2507 2005-08-22  Manish Singh  <yosh@gimp.org>
2508
2509         * gtk/gtkicontheme.h: add declaration for _gtk_icon_theme_check_reload.
2510
2511         * gtk/gtkwindow.c: remove declaration of gtk_window_read_rcfiles.
2512
2513 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
2514
2515         * gtk/gtkwindow.c (gtk_window_client_event): 
2516         * gtk/gtkicontheme.c (ensure_valid_themes) 
2517         (_gtk_icon_theme_check_reload): Implement a clientmessage based
2518         scheme for makeing sure that all GTK+ applications notice if an
2519         icon theme has been updated. This should prevent multiple versions
2520         of an icon theme cache to be mapped in memory at the same time,
2521         which can cause excessive memory consumption.  (#313156, Chris 
2522         Lahey)
2523
2524 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
2525
2526         * gtk/gtkicontheme.c (gtk_icon_theme_load_icon): Add a note
2527         regarding icon theme changes.
2528
2529         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): When returning
2530         pixbufs which are backed by the mmapped memory of an icon cache,
2531         increase the refcount of the icon cache, so that the memory is not
2532         munmapped away underneath the pixbuf upon icon theme changes.  
2533         (#314170, Kjartan Maraas)
2534
2535         * docs/tools/Makefile.am (LDADDS): Add GTK_DEP_LIBS, in order 
2536         to link against Xext.  (#314062)
2537
2538         * gtk/gtkhsv.c (paint_triangle): One more fix to prevent buffer
2539         overruns.  (#314081, Hans Breuer)
2540
2541 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
2542
2543         * gtk/gtkentry.c (gtk_entry_get_layout): Clarify that the
2544         returned layout must not be modified.
2545
2546 Sat Aug 20 16:12:14 2005  Jonathan Blandford  <jrb@redhat.com>
2547
2548         * gtk/gtktreeview.c (gtk_tree_view_set_model): clear
2549         scroll_to_path if the model changes.
2550
2551         * gtk/gtkiconview.c: (gtk_icon_view_destroy),
2552         (gtk_icon_view_size_allocate), (gtk_icon_view_set_cursor),
2553         (gtk_icon_view_scroll_to_path): Handle scrolling to a path before
2554         we're realized, #312798
2555         (gtk_icon_view_set_model): clear scroll_to_path if the model
2556         changes.
2557
2558 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
2559
2560         * gtk/gtkrange.c (gtk_range_adjustment_changed) 
2561         (gtk_range_adjustment_value_changed):  Don't queue a draw
2562         if the layout has not changed.  (#313991, Benjamin Berg)
2563
2564 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
2565
2566         * gtk/gtktreeitem.c: Remove duplicate lines.  (#313344,
2567         Benoit Carpentier)
2568
2569         * modules/engines/ms-windows/msw_style.c (setup_system_styles): 
2570         Fix a typo. 
2571
2572         * gtk/gtkfilechooserbutton.c (change_icon_theme) 
2573         (model_add_special, model_add_special, model_add_volumes):
2574         Handle pixbuf being NULL without warnings. Also, don't
2575         leak pixbuf references when the icon theme is changed.
2576
2577         * gtk/gtkmain.c (gtk_get_event_widget): Don't access
2578         the user data on destroyed windows, since at best
2579         it can be a stale pointer.  (#313953, Robin Green)      
2580
2581 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
2582
2583         * gtk/gtkhsv.c (paint_triangle): Avoid a buffer overrun.  
2584         (#313900, Sebastien Bacher)
2585
2586         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Return
2587         FALSE if the tree is empty.  (#313891, Guillaume Cottenceau)
2588
2589         * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display) 
2590         (xdnd_read_actions, get_client_window_at_coords_recurse): 
2591         Free data returned from XGetWindowProperty. 
2592
2593         * gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window) 
2594         Free data returned from XGetWindowProperty.  (313867, Kjartan
2595         Maraas)
2596         
2597         * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse): Free
2598         children in all cases.  (#313862, Kjartan Maraas)
2599
2600         * gtk/gtkicontheme.c (theme_lookup_icon): Store GtkIconData structs 
2601         in the per-directory hash, even if they come from the icon cache. 
2602         We tried to avoid that before, but as a result leaked icon data
2603         structs.  (#313852, Kjartan Maraas)
2604
2605 2005-08-18  Matthias Clasen  <mclasen@redhat.com>
2606
2607         * gtk/gtkmenutoolbutton.c (gtk_menu_tool_button_destroy): Disconnect
2608         signal handlers on destroy, not on finalize.  (#313759, Brett Atoms)
2609
2610 2005-08-15  Owen Taylor  <otaylor@redhat.com>
2611
2612         * configure.in: Add -lXext to GDK_EXTRA_LIBS in absence of pkg-config
2613         files for x11/xext. (Jonas Bonn)
2614
2615 2005-08-15  Tor Lillqvist  <tml@novell.com>
2616
2617         * gtk/gtkicontheme.c (theme_lookup_icon): Put debugging printout
2618         inside GTK_NOTE.
2619
2620 2005-08-15  Owen Taylor  <otaylor@redhat.com>
2621
2622         * configure.in: Fix have_base_pc / have_base_x_pc typo.
2623
2624         * gdk/x11/gdkdrawable-x11.c gtk/gtksettings.c: Remove panoxft.h includes.
2625         (#313417, James Andrewartha)
2626
2627         * configure.in: Add fontconfig to X_PACKAGES, since we use it for
2628         FcNameConstant(). (More of #313417)
2629
2630 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
2631
2632         * gtk/gtkfilechooserdefault.c: When using gtk_dialog_run() for
2633         modal dialogs, make sure to inherit the window group from 
2634         the parent, since we don't inherit window groups across
2635         transient parents currently.  (#312918, Christian Persch)
2636
2637         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): 
2638         * gtk/gtkdialog.c (gtk_dialog_run): Slight update to the docs. 
2639
2640         * gtk/gtkiconview.c (gtk_icon_view_select_path) 
2641         (gtk_icon_view_scroll_to_path): Handle paths of depth 0
2642         gracefully.  (#312796, Jonathan Blandford)
2643
2644         * tests/testtoolbar.c: Add some more tests for menu placement.
2645
2646         * gtk/gtkmenutoolbutton.c (menu_position_func): 
2647         * gtk/gtktoolbar.c (menu_position_func): Improve positioning
2648         of toolbutton menus and of the overflow menu.  (#312937, 
2649         #153870, Christian Persch, Paolo Borelli)
2650
2651 2005-08-15  Tor Lillqvist  <tml@novell.com>
2652
2653         * gtk/updateiconcache.c: Use g_path_get_dirname() instead of
2654         the nonportable <libgen.h> and dirname().
2655
2656 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
2657
2658         * gtk/gtksizegroup.c: Use object data to mark widgets and
2659         groups as visited, so that we avoid constant extra list
2660         traversals. Also allocate quarks in class_init.  (#311618,
2661         Michael Natterer)
2662
2663         * gtk/gtkicontheme.c (gtk_icon_theme_lookup_icon): Correct the 
2664         download location for the hicolor icon theme. (#313475, Olexiy 
2665         Avramchenko)
2666
2667         * gtk/gtkicontheme.c: Remove debug spew. 
2668
2669 2005-08-15  Owen Taylor  <otaylor@redhat.com>
2670
2671         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_back_pixmap): 
2672         * gdk/win32/gdkwindow-win32.c (gdk_window_set_back_pixmap): 
2673         * gdk/x11/gdkwindow-x11.c (gdk_window_set_back_pixmap):
2674         Handle pixmap == NULL when checking for a colormap.
2675         (Allin Cottrell).
2676
2677 2005-08-14  Matthias Clasen  <mclasen@redhat.com>
2678
2679         * gtk/updateiconcache.c: Store only one copy of the pixel data
2680         for symlinked icons. To achieve this, maintain a hashtable 
2681         mapping pathnames to pixel data, and share the pixel data for
2682         all symlinks resolving to the same pathname. When writing out
2683         the image data, write out the pixel data only the first time
2684         it is met, and store the offset pointing to the first copy
2685         for use in all later cases.
2686         This reduces the size of the Bluecurve icon cache from 40
2687         to 13MB. (#312972)
2688