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