]> Pileus Git - ~andy/gtk/blob - ChangeLog
Update the size of the image, by swapping the implementations of
[~andy/gtk] / ChangeLog
1 2006-03-16  Matthias Clasen  <mclasen@redhat.com>
2
3         * gtk/gtkimage.c (gtk_image_clear): Update the size of the image, 
4         by swapping the implementations of gtk_image_clear and
5         gtk_image_reset.  (#334657)
6
7         * README.in: Add a note about GtkNotebook signals.
8
9 2006-03-15  Matthias Clasen  <mclasen@redhat.com>
10
11         * gtk/gtkcombobox.c (gtk_combo_box_list_button_released) 
12         (gtk_combo_box_list_key_press): Popdown the list before changing
13         the active iter, otherwise people will be surprised by the
14         grabs that are still in place when their ::changed handler
15         runs. 
16
17 2006-03-15  Dom Lachowicz <cinamod@hotmail.com>
18
19         * modules/engines/ms-windows/msw_style.c: Override style->realize/
20         style->unrealize, so that GTK+ doesn't automatically attempt to apply
21         shading to the GC colors, causing a mismatch with the Win32 native
22         colors. Problem found by (and suggested solution by) "Cosmic Integer"
23
24         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Make expander-size
25         a bit closer to Microsoft's values (bug 325699, Brad Taylor)
26         
27 2006-03-14  Matthias Clasen  <mclasen@redhat.com>
28
29         * tests/testcellrenderertext.c: Add test cases for alignment.
30
31         * gtk/gtkcellrenderertext.c: Add an alignment property,
32         and fix some cases where ellipsize_set was being used to
33         mean "we're ellipsizing" even when ellipsize was set to NONE.  
34         (#318761, Ross Burton)
35
36         * gtk/gtkimcontextsimple.c: Make return and release work again
37         to commit a hex sequence. Additionally, make escape reset the
38         im context when in a hex sequence.  (#334423, Behdad Esfahbod)
39
40 2006-03-13  Matthias Clasen  <mclasen@redhat.com>
41
42         Make actions work with named icons.  (#323484, Jorn Baayen)
43         
44         * gtk/gtkactiongroup.c: If the stock-id field of a GtkActionEntry
45         does not contain a registered stock id, interpret it as an
46         icon name.
47
48         * gtk/gtkaction.c: Add an icon-name property to actions and
49         use it for icons if a stock-id is not specified.
50
51 2006-03-12  Matthias Clasen  <mclasen@redhat.com>
52
53         * gtk/gtkwindow.c (gtk_window_compute_configure_request): Don't
54         for the creation of geometry info here.  (#114533)
55
56 2006-03-11  Tor Lillqvist  <tml@novell.com>
57
58         * gdk/win32/gdkdrawable-win32.c (draw_polygon): Use Polygon() for
59         outlined polygons, too. Same idea as in draw_rectangle(): Set pen
60         to NULL_PEN if drawing a filled polygon, set brush to HOLLOW_BRUSH
61         if drawing a polygon outline. (#332662)
62         (gdk_win32_draw_polygon): Corresponding simplification: no need to
63         add an extra final copy of the starting point.
64
65 2006-03-11  Dom Lachowicz <cinamod@hotmail.com>
66
67         * modules/engines/ms-windows: Speed up the Windows theme
68         considerably (#163724, John Ehresman)
69         Be more careful about setting Pango font descriptions (#333372)
70         
71 2006-03-11  Matthias Clasen  <mclasen@redhat.com>
72
73         * gtk/gtkrange.c (gtk_range_key_press): Allow to cancel 
74         a drag with ESC.  (#58389, Søren Sandmann)
75
76 2006-03-10  Matthias Clasen  <mclasen@redhat.com>
77
78         * gtk/gtkrange.c: Add a style property ::activate_slider that
79         allows themes to draw the slider active while dragged.  (#311992,
80         Benjamin Berg)
81
82         * gtk/gtkcolorsel.c (gtk_color_selection_init): Fix two labels.
83
84         * gtk-engine-check-abi.sh: Add a script to check that theme
85         engines don't export any extra functions. 
86
87 2006-03-10  Matthias Clasen  <mclasen@redhat.com>
88
89         * gtk/gtkcolorsel.c (gtk_color_selection_init): Avoid a mnemonic
90         conflict.  (#163850, Dennis Cranston)
91
92         * gtk/gtkaboutdialog.c (gtk_show_about_dialog): Make the behaviour
93         of the about dialog consistent with other dialogs in gtk. If the
94         dialog is constructed with gtk_about_dialog_new(), the creator
95         is reponsible for handling the response by hiding or closing the
96         dialog. gtk_show_about_dialog() handles it by hiding the dialog.
97         (#333360, Daniel Drake)
98
99         * README.in: Mention this change.
100
101 2006-03-10  Matthias Clasen  <mclasen@redhat.com>
102
103         Apply a patch from Dennis Cranston to make dialogs more
104         consistent  (#163850)
105         
106         * gtk/gtkcolorsel.c (make_label_spinbutton): Left-align labels.
107         
108         * gtk/gtkfontsel.c (gtk_font_selection_init): 
109         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): 
110         * gtk/gtkcolorsel.c (gtk_color_selection_init): 
111         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
112         * gtk/gtkinputdialog.c (gtk_input_dialog_init): Update the layout
113         of the dialog to follow HIG recommendations. Also update labels.
114
115         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): HIG-compatible 
116         spacing.
117         (gtk_message_dialog_font_size_change): Merged into 
118          gtk_message_dialog_style_set.
119
120 2006-03-10  Matthias Clasen  <mclasen@redhat.com>
121
122         * gtk/gtkstyle.c: Remove g_return_if_fail() checks
123         from static functions.
124
125 2006-03-10  Federico Mena Quintero  <federico@novell.com>
126
127         Make Shift-P and Shift-N activate typeahead in GtkTreeView
128         (i.e. they are just normal capital letters).  Fixes bug #334098.
129
130         * gtk/gtktreeview.c (gtk_tree_view_add_move_binding): Add an
131         "add_shifted_binding" argument which determines whether we'll add
132         the same binding with GDK_SHIFT_MASK.
133         (gtk_tree_view_class_init): Use add_shifted_binding=FALSE for GDK_p
134         and GDK_n; use TRUE for all the rest.
135
136 2006-03-10  Michael Natterer  <mitch@imendio.com>
137
138         * gtk/gtkentry.[ch]: applied refactored patch from maemo-gtk that
139         replaces the INNER_BORDER define by an "inner-border" style
140         property of type GtkBorder. Additionally, add an "inner-border"
141         object property plus API which allows to override any theme
142         border, to allow pixel-perfect positioning of entries for inline
143         editing. Fixes bug #333922.
144
145         * gtk/gtk.symbols: add the new public functions.
146
147 2006-03-09  Matthias Clasen  <mclasen@redhat.com>
148
149         * gtk/gtkcombobox.c (gtk_combo_box_class_init): Replace the
150         popup-show and popup-hide signals with a readonly popup-shown
151         property.  (#162531, Christian Persch)
152
153 2006-03-09  Ross Burton  <ross@openedhand.com>
154
155         * gtk/gtkwidget.c:
156         * gtk/gtkrange.c:
157         * gtk/gtktogglebutton.c:
158         Turn off prelighting when gtk-touchscreen-mode is enabled (#135666)
159
160 Thu Mar  9 14:29:43 2006  Tim Janik  <timj@gtk.org>
161
162         * gtk/gtkobject.c (gtk_object_init): move the floating flag from
163         the GInitiallyUnowned bit to GTK_FLOATING. fixes tests/floatingcheck.
164         kudos to mitch for debugging this.
165
166 2006-03-09  Matthias Clasen <mclasen@redhat.com>
167
168         * Makefile.am: Add ChangeLog.pre-2.8 to EXTRA_DIST.
169
170 2006-03-09  Tor Lillqvist  <tml@novell.com>
171
172         * gtk/gtk.symbols: No gtk_tray_icon_get_type on Win32.
173
174 2006-03-08  Carlos Garnacho  <carlosg@gnome.org>
175
176         Rename ::tab-added and ::tab-removed signals to ::page-added and
177         ::page-removed for not conflicting with other tab reordering
178         implementations. Fixes bug #333743.
179
180         Also rename ::tab-reordered to ::page-reordered, and emit it in
181         gtk_notebook_reorder_child () to make it behave consistently with the
182         other two signals.
183
184         * gtk/gtknotebook.c (gtk_notebook_class_init): rename signals.
185         (gtk_notebook_reorder_tab)
186         (gtk_notebook_button_release)
187         (gtk_notebook_remove)
188         (gtk_notebook_real_insert_page): emit respectively renamed signals
189         (gtk_notebook_reorder_child): also emit ::page-reordered here
190
191         * tests/testnotebookdnd.c: use renamed signals
192
193 2006-03-08  Michael Natterer  <mitch@imendio.com>
194
195         * gdk/gdkscreen.h
196         * gdk/x11/gdkscreen-x11.c
197         * gdk/gdk.symbols: added gdk_screen_get_active_window() and
198         gdk_screen_get_window_stack() (patch from maemo-gtk).
199         Fixes bug #320881.
200
201         * gdk/directfb/gdkscreen-directfb.c
202         * gdk/quartz/gdkscreen-quartz.c
203         * gdk/win32/gdkscreen-win32.c: added the functions as stubs.
204
205 2006-03-08  Michael Natterer  <mitch@imendio.com>
206
207         * tests/prop-editor.c (unichar_changed): zero-initialize the
208         GValue before calling g_value_init().
209
210 2006-03-08  Michael Natterer  <mitch@imendio.com>
211
212         * gtk/gtkentry.c (gtk_entry_adjust_scroll): make sure that the
213         text_area_width is always >= 0. Fixes bug #316712 (Dan Winship).
214
215 2006-03-07  Federico Mena Quintero  <federico@novell.com>
216
217         Cancel drags when the grabs get broken.  Fixes bug #333056:
218
219         * gtk/gtkdnd.c (gtk_drag_selection_received): The time argument is
220         a guint, not guint32.
221         (gtk_drag_source_event_cb): Return gboolean, not gint.
222         (gtk_drag_anim_timeout): Likewise.
223         (gtk_drag_motion_cb): Likewise.
224         (gtk_drag_key_cb): Likewise.
225         (gtk_drag_button_release_cb): Likewise.
226         (gtk_drag_abort_timeout): Likewise.
227         (gtk_drag_begin_internal): Connect to "grab-broken-event" on the
228         ipc_widget.
229         (gtk_drag_source_info_destroy): Disconnect from the
230         "grab-broken-event" callback.
231         (gtk_drag_end): Likewise.
232         (gtk_drag_grab_broken_event_cb): New callback.  We cancel the drag
233         if the grab was broken and not regrabbed by the DnD code.
234
235 2006-03-07  Federico Mena Quintero  <federico@novell.com>
236
237         * gtk/gtkfilechooserdefault.c (shortcuts_button_press_event_cb):
238         Hack to let the treeview's button-press-event handler run before
239         ours.  This lets the selection be updated before we pop up a
240         context menu.
241
242 Tue Mar  7 17:16:34 2006  Tim Janik  <timj@gtk.org>
243
244         * configure.in: depend on glib-2.10.1.
245
246         * gtk/gtkobject.c: fixed up messing with non-GtkObject floating flags.
247         this requires glib-2.10.1.
248
249 2006-03-07  Michael Natterer  <mitch@imendio.com>
250
251         Add infrastructure for copy/paste and DND of rich text for
252         GtkTextBuffer. Fixes bug #324177.
253
254         * gtk/gtktextbufferrichtext.[ch]: new files implementing a
255         per-buffer registry of rich text formats.
256
257         * gtk/gtk.h: #include gtktextbufferrichtext.h
258
259         * gtk/gtktextbufferserialize.[ch]: new files implementing an
260         internal serialization format that can handle all of a text
261         buffer's tags and pixbufs. It's not useful for anything except
262         tranfer between instances of GtkTextBuffer (Anders Carlsson).
263
264         * gtk/Makefile.am: build the new files.
265
266         * gtk/gtkclipboard.[ch]: added convenience APIs for rich text,
267         just as they exist for plain text and pixbufs.
268
269         * gtk/gtkselection.[ch]: added rich text convenience APIs here
270         too.  Return the target list from gtk_target_list_ref(). Register
271         GtkTargetList as boxed type. Added
272         gtk_target_table_new_from_list() and gtk_target_table_free(),
273         which make converting between GtkTargetList and arrays of
274         GtkTargetEntry considerably easier.
275
276         * gtk/gtktextutil.[ch]: added _gtk_text_util_create_rich_drag_icon()
277         which creates a fancy rich text icon (Matthias Clasen).
278
279         * gtk/gtktextbuffer.[ch]: use all the new stuff above and
280         implement copy and paste of rich text. Added APIs for getting the
281         target lists used for copy and paste. Added public enum
282         GtkTextBufferTargetInfo which contains the "info" IDs associated
283         with the entries of the target lists.
284
285         * gtk/gtktextview.c: use the new rich text APIs and
286         GtkTextBuffer's new target list API to enable DND of rich text
287         chunks.
288
289         * gtk/gtk.symbols: export all the new symbols added.
290
291         * tests/testtext.c: added rich text testing stuff.
292
293 2006-03-06  Matthias Clasen  <mclasen@redhat.com>
294
295         * gtk/gtktextview.c (text_window_invalidate_cursors): Take
296         cursor width into account when calculating the area to 
297         be invalidated.  (#333377, #323401 Steve Frécinaux)
298
299         * gtk/gtkmain.c (post_parse_hook): Set error when returning
300         FALSE.  (#333268, Paolo Maggi, Christian Persch)
301         
302         * gtk/gtkpixmap.c (gtk_pixmap_set): Check that the pixmap
303         has the right depth.  (#333363, Ed Catmur)
304
305 2006-03-05  Matthias Clasen  <mclasen@redhat.com>
306
307         * gtk/gtkiconview.c (adjust_wrap_width): Apply some
308         arbitrary lower limit for the guessed wrap width. (#332466,
309         Donald Straney)
310
311 2006-03-05  Matthias Clasen  <mclasen@redhat.com>
312
313         Fix handling of image-only buttons.  (#332985, Kalle 
314         Vahlmann, #333555)
315         
316         * gtk/gtkbutton.c (gtk_button_construct_child): Don't
317         return early if there an image to show.
318         (show_image): Always return TRUE if there is no text.
319
320 2006-03-04  Matthias Clasen  <mclasen@redhat.com>
321
322         * gdk/x11/gdkinput-x11 (gdk_input_translate_coordinates):
323         Adjust the handling of min values for the x and y axes of 
324         extended input devices  (#324562, #142536, Denis Auroux and 
325         Robert Ã–gren)
326
327         * gtk/gtkexpander.c (gtk_expander_paint_focus): Position
328         the focus rectangle correctly in RTL mode.  (#333291,
329         Benjamin Berg)
330
331 2006-03-03  Tor Lillqvist  <tml@novell.com>
332
333         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_commit_char)
334         (gtk_im_context_simple_reset): Avoid emitting superfluous
335         preedit_changed signals. Thanks to Matthias. (#319407)
336
337 2006-03-03  Michael Natterer  <mitch@imendio.com>
338
339         Applied modified patch from maemo-gtk which makes separators more
340         themeable. Fixes bug #332022.
341
342         * gtk/gtkwidget.c: added style properties "wide-separators",
343         "separator-width" and "separator-height".
344
345         * gtk/gtkhseparator.c
346         * gtk/gtkvseparator.c
347         * gtk/gtkmenuitem.c
348         * gtk/gtktoolbar.c: honor the new settings and paint separators
349         using gtk_paint_box() if wide-separators is true.
350
351 2006-03-02  Dom Lachowicz <cinamod@hotmail.com>
352
353         * modules/engines/ms-windows/msw_style.c: Fix combobox theming
354         regression noted in bug 321301
355         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Ditto
356         
357 2006-03-02  Matthias Clasen  <mclasen@redhat.com>
358
359         * gtk/gtkiconview.c (gtk_icon_view_layout) 
360         (gtk_icon_view_row_inserted, gtk_icon_view_scroll_to_path): 
361         Make scroll_to_path work for newly inserted items, by delaying
362         the scroll until layout is done.  (#332923, Cory Dodt)
363
364         * gtk/gtkcolorbutton.c (render): Use GTK_WIDGET_IS_SENSITIVE,
365         not GTK_WIDGET_SENSITIVE.  (#333133, Christian Persch)
366
367 2006-03-02  Ross Burton  <ross@openedhand.com>
368
369         * gtk/gtktooltips.c:
370         Disable tooltips if gtk-touchscreen-mode is activated (#315112).
371
372 2006-03-01  Kristian Rietveld  <kris@imendio.com>
373
374         * gtk/gtktreeselection.c (row_is_selectable): rename to
375         _gtk_tree_selection_row_is_selectable and export internally,
376         (gtk_tree_selection_real_select_node): changed so it is always
377         possible to unselect insensitive nodes, changed the logic a bit to
378         be more clear.
379
380         * gtk/gtktreeprivate.h: add _gtk_tree_selection_row_is_selectable.
381
382         * gtk/gtktreeview.c (gtk_tree_view_row_changed): Unselect a row if
383         it became insensitive.
384
385 2006-02-27  Federico Mena Quintero  <federico@novell.com>
386
387         * gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Check that
388         the fontsel has a screen assigned before doing anything.  This
389         will at least warn the caller of what is wrong, since we only
390         populate the family_list until we get a screen.  Also, put the
391         reference docs here.  Fixes bug #332756.
392         (gtk_font_selection_dialog_get_font_name): Document this here.
393         (gtk_font_selection_get_font_name): Document this here; mention
394         that the font names get normalized, so the result of this function
395         may not be the same as what you set with
396         gtk_font_selection_set_font_name().
397
398 2006-02-27  Matthias Clasen  <mclasen@redhat.com>
399
400         * gtk/gtk.symbols:
401         * gtk/gtktrayicon-x11.c: Fix symbol lists for make check.
402
403 2006-02-27  Michael Natterer  <mitch@imendio.com>
404
405         * gdk/x11/gdksettings.c: map "gtk-touchscreen-mode" to the
406         "Gtk/TouchscreenMode" XSettings property, remove trailing
407         whitespace.
408
409         * gdk/x11/checksettings.c: #include <string.h> and sprinkled some
410         newlines.
411
412 Mon Feb 27 14:52:50 2006  Tim Janik  <timj@imendio.com>
413
414         * gdkevents-x11.c:
415         * gdksettings.c: moved and renamed the gdk_settings_names and 
416         gdk_settings_map.
417
418         * gdk/x11/checksettings.c: test program for the gdk_settings_map array.
419
420         * gdk/x11/Makefile.am: run checksettings as part of make check.
421
422 2006-02-27  Matthias Clasen  <mclasen@redhat.com>
423
424         * gtk/gtkdnd.c (gtk_drag_get_cursor): Comment out some unused
425         code, and fix the reference point of composited drag cursors.
426         (#320132, Christian Neumair)
427
428 Sun Feb 26 10:24:10 PST 2006  Michael Emmel  <mike.emmel@gmail.com>
429         
430         *gdk/directfb/README
431         Updated README to remove old build instructions
432
433 Sat Feb 25 10:35:23 PST 2006  Michael Emmel  <mike.emmel@gmail.com>
434         
435         *gdk/directfb/gdkdisplay-directfb.c
436         *gdk/directfb/gdkwindow-directfb.c
437         Added stubs for shape window functions to fix compile problems
438
439 2006-02-24  Federico Mena Quintero  <federico@novell.com>
440
441         * gtk/gtkfilechooserdefault.c (shortcuts_list_create): Make the
442         column header visible, and make it be "_Places".  Changed the
443         accessible object name to Places as well.  Fixes bug #331306.
444         (file_pane_create): Do not create the path bar and "create folder"
445         button here...
446         (browse_widgets_create): ... but create them here instead.  This
447         moves the path bar to be above both the hpaned, giving it the full
448         width of the dialog.  Fixes bug #327733.
449
450 Thu Feb 23 13:28:21 2006  Tim Janik  <timj@imendio.com>
451
452         * gdk/x11/gdkim-x11.c (_gdk_x11_initialize_locale): remove unconditional
453         warnings about missing X locale support. Gdk properly handles this
454         situation anyway.
455
456 Fri Feb 17 14:20:29 2006  Tim Janik  <timj@imendio.com>
457
458         * gtk/gtktreemodel.h: 
459         * gtk/gtktextbtree.h: added G_GNUC_WARN_UNUSED_RESULT warnings for
460         iterator functions, to avoid invalid iterators go unnoticed,
461         suggested by Markku Vire <markku.vire@movial.fi>.
462
463 2006-02-23  Matthias Clasen  <mclasen@redhat.com>
464
465         * tests/Makefile.am: 
466         * tests/testnotebookdnd.c: Add notebook DND tests.
467
468         * gtk/gtknotebook.h: Add a reorder_tab keynav signal and an
469         insert_page vfunc to GtkNotebook.
470
471         * gtk/gtk.symbols:
472         * gtk/gtknotebook.c: Support notebook DND. New API includes
473         gtk_notebook_set_window_creation_hook, 
474         gtk_notebook_[gs]et_group_id,
475         gtk_notebook_[gs]et_tab_reorderable, 
476         gtk_notebook_[gs]et_tab_detachable (#73240, Carlos Garnacho)
477
478 2006-02-23  Matthias Clasen  <mclasen@redhat.com>
479
480         * gtk/gtktextiter.c: Fix macro declaration
481
482         * gtk/gtkaboutdialog.c: Remove an accidentally included function.
483
484 2006-02-22  Matthias Clasen  <mclasen@redhat.com>
485
486         * gtk/gtktextbtree.c: 
487         * gtk/gtktextiter.c: Minor optimizations.  (#332059, Arnaud Charlet)
488
489         * gtk/gtkradiobutton.c (gtk_radio_button_clicked): Emit notify::active
490         here, when changing the value of this property.  (#331651)
491
492         * gtk/gtknotebook.c: Apply a patch by Paolo Borelli to
493         make the tab menu keynavigatable.  (#331440)
494
495 2006-02-22  Matthias Clasen  <mclasen@redhat.com>
496
497         * gtk/gtkaboutdialog.c: Change Close buttons to GTK_RESPONSE_CANCEL
498         so Escape works. (#331940, Daniel Drake)
499
500 2006-02-22  Michael Natterer  <mitch@imendio.com>
501
502         * gtk/gtksettings.c: added boolean property gtk-touchscreen-mode,
503         which essentially means "there are no motion notify events", so
504         widgets can't use the pointer hovering them for anything.
505
506         * gtk/gtkmenu.c: if gtk-touchscreen-mode is TRUE, scroll menus
507         when clicking the scroll arrows, since hovering goes undetected.
508         Fixes bug #323028.
509
510         Added boolean style property "double-arrows" which always makes
511         both scroll arrows visible when the menu is too long.
512         For pushed-in popup menus, both arrows are always shown
513         (regardless of double-arrows), in order to fix user confusion
514         about the blank area. Fixes bug #129463.
515
516 2006-02-21  Kristian Rietveld  <kris@imendio.com>
517
518         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_rows_reordered):
519         Make sure we always update the virtual root, also when ->priv->root
520         is still NULL.  (Markku Vire)
521
522 2006-02-21  Anders Carlsson  <andersca@imendio.com>
523
524         * gdk/quartz/gdkselection-quartz.c:
525         (make_list):
526         (gdk_text_property_to_utf8_list_for_display):
527         Add these from the win32 backend.
528
529 2006-02-20  Matthias Clasen  <mclasen@redhat.com>
530
531         * gtk/gtknotebook.c: Properly update internal state
532         when child visibility changes.  (#331785, Sebastien Bacher)
533
534         * gdk/gdkgc.c (_gdk_gc_update_context): Obtain the
535         background color from the gc when it is needed.  (#331820)
536
537 2006-02-19  Matthias Clasen  <mclasen@redhat.com>
538
539         * gdk/gdkgc.c (_gdk_gc_update_context): Add a gc_changed
540         argument, and avoid setting the clip region if the gc
541         has not changed. 
542
543         * gdk/gdkgc.c: Update all callers.
544
545         * gdk/gdkpango.c (get_cairo_context): Avoid updating the
546         context if nothing changed.
547
548 2006-02-20  Anders Carlsson  <andersca@imendio.com>
549
550         * gdk/quartz/gdkdisplay-quartz.c:
551         (gdk_display_supports_shapes):
552         (gdk_display_supports_input_shapes):
553         * gdk/quartz/gdkwindow-quartz.c:
554         (gdk_display_warp_pointer):
555         (gdk_window_input_shape_combine_mask):
556         (gdk_window_input_shape_combine_region):
557         (gdk_window_set_child_input_shapes):
558         (gdk_window_set_accept_focus):
559         (gdk_window_merge_child_input_shapes):
560         Add stubs for input shape functions.
561
562 2006-02-20  Anders Carlsson  <andersca@imendio.com>
563
564         * gdk/quartz/gdkevents-quartz.c:
565         (get_keyboard_modifiers_from_nsevent):
566         Fix typo so ctrl gets passed on to the gdk event.
567         
568         * gdk/quartz/gdkproperty-quartz.c:
569         (gdk_atom_name):
570         g_strdup the atom name.
571
572 2006-02-20  Tor Lillqvist  <tml@novell.com>
573
574         * gdk/win32/gdkdisplay-win32.c (gdk_display_supports_shapes):
575         New function, return TRUE.
576         (gdk_display_supports_input_shapes): New function, return FALSE.
577
578         * gdk/win32/gdkwindow-win32.c (do_shape_combine_region): New
579         function. Factor out code from gdk_window_shape_combine_mask().
580         (gdk_window_shape_combine_region): Actually do something. Convert
581         region to a HRGN and call do_shape_combine_region().
582         (gdk_window_input_shape_combine_mask)
583         (gdk_window_input_shape_combine_region)
584         (gdk_window_set_child_input_shapes)
585         (gdk_window_merge_child_input_shapes): New functions, dummy
586         implementations.
587
588 2006-02-20  Michael Natterer  <mitch@imendio.com>
589
590         * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): adding boolean
591         have_shapes and have_input_shapes members fixes the build.
592
593 2006-02-20  Tor Lillqvist  <tml@novell.com>
594
595         * gdk/win32/gdkfont-win32.c: Replace all calls to g_strcasecmp()
596         with g_ascii_strcasecmp().
597
598 2006-02-19  Matthias Clasen  <mclasen@redhat.com>
599
600         Support input shapes:  (#331070)
601         
602         * gdk/gdk.symbols: 
603         * gdk/gdkdisplay.h: 
604         * gdk/gdkwindow.h: 
605         * gdk/x11/gdkdisplay-x11.c (gdk_display_supports_shapes) 
606         (gdk_display_supports_input_shapes): Functions to determine
607         if a display supports shaped windows or input shapes.
608
609         * gdk/x11/gdkwindow-x11.c (gdk_window_input_shape_combine_region): 
610         (gdk_window_input_shape_combine_mask): 
611         (gdk_window_set_child_input_shapes): 
612         (gdk_window_merge_child_input_shapes): Input shape versions
613         of the window shape API.
614
615         * gtk/gtk.symbols: 
616         * gtk/gtkwidget.h: 
617         * gtk/gtkwidget.c (gtk_widget_input_shape_combine_mask): 
618         New function to set an input shape on a widget.
619
620 2006-02-19  Matthias Clasen  <mclasen@redhat.com>
621
622         * gtk/gtklinkbutton.c (gtk_link_button_class_init): Fix
623         a cast.
624
625 2006-02-17  Matthias Clasen  <mclasen@redhat.com>
626
627         DND keynav support:
628         
629         * gtk/gtkdnd.c (gtk_drag_update_idle): Protect against 
630         info->last_event being NULL.
631         (gtk_drag_key_cb): Handle arrow keys to move the drag icon
632         and space or enter to drop.
633
634 2006-02-17  Matthias Clasen  <mclasen@redhat.com>
635
636         * gdk/gdkregion-generic.c (gdk_region_union_with_rect):
637         Be robust and reject rectangles with negative width or
638         height.  (#331467, Benjamin Berg)
639
640
641 2006-02-17  Kristian Rietveld  <kris@imendio.com>
642
643         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_rows_reordered):
644         Only update the virtual root if the child path is an ancestor
645         of the virtual root.  (Patch from Markku Vire).
646
647 2006-02-16  Federico Mena Quintero  <federico@novell.com>
648
649         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_map): Call
650         ::initial_focus() on the child before calling ::map() on our
651         parent class.  This will prevent the shortcuts treeview from
652         highlighting its first row as a result of getting assigned focus
653         by gtk_dialog_map().
654
655 2006-02-14  Matthias Clasen  <mclasen@redhat.com>
656
657         * gtk/gtkwidget.c (gtk_widget_send_expose): Remove redundant
658         check.  Pointed out by Bodo-Merle Sandor.
659
660         * gtk/gtkcolorbutton.c (gtk_color_button_[un]realize):
661         Remove unnecessary checks.  
662
663 2006-02-12  Matthias Clasen  <mclasen@redhat.com>
664
665         * gtk/gtkicontheme.c (gtk_icon_theme_list_icons): Give working
666         examples in the docs.  (#330944, John Spray)
667
668 2006-02-10  Matthias Clasen  <mclasen@redhat.com>
669         
670         * gtk/gtkiconview.c (gtk_icon_view_get_item_at_coords): Fix
671         row_spacing/column_spacing confusion.  (#330732, Donald Straney)
672
673 2006-02-10  Matthias Clasen  <mclasen@redhat.com>
674
675         * gtk/gtkstyle.c: Add some docs. (#330073, Mart Raudsepp)
676
677         * gtk/gtkentrycompletion.c (gtk_entry_completion_match_selected): 
678         Guard against NULL.  (#330177, Raphael Slinckx)
679
680 2006-02-10  Murray Cumming  <murrayc@murrayc.com>
681
682         * docs/reference/gtk/tmpl/gtkcomboboxentry.sgml: Mention that 
683         the changed signal is emitted when typing - not just when 
684         selecting from the list. Suggest use of GtkEntry::action to 
685         etect end of typing.
686          gtk/gtkcombobox.c: (gtk_combo_box_class_init): changed signal 
687         ocumentation: Mention that the GtkComboBoxEntry emits it when 
688         he users types, not just when he selects from the list.
689
690 2006-02-10  Murray Cumming  <murrayc@murrayc.com
691
692         * gtk/gtkassistant.h: Correct the declaration of the prepare 
693         default signal handler to match its registration and use.
694
695 2006-02-09  Ross Burton  <ross@burtonini.com>
696
697         * gtk/gtkfontbutton.c:
698         Work out the font size in floating point, and display the font
699         size with %g instead of %d (#317590)
700
701 2006-02-09  Tor Lillqvist  <tml@novell.com>
702
703         * gdk/win32/gdkevents-win32.c (gdk_event_translate)
704         <WM_MOUSELEAVE>: If we don't know where we went, and have
705         generated a leave event, set current_window to the root
706         window. This assures we will generate proper enter and leave
707         events for popup windows. (#325521)
708
709 2006-02-08  John Ehresman  <jpe@wingware.com>
710
711         * gdk/win32/gdkevents-win32.c (gdk_event_translate)
712         <WM_MOUSEACTIVATE>
713         * gdk/win32/gdkwindow-win32.c (show_window_internal)
714         (gdk_window_raise): Call SetWindowPos() instead of
715         SetForegroundWindow() or BringWindowToTop() if the window
716         shouldn't accept focus. (#327375)
717         
718 2006-02-08  John Ehresman  <jpe@wingware.com>
719
720         * gdk/win32/gdkwindow-win32.c: Let gdk_window_set_decorations()
721         take precedence over anything derived from hints. Restructure
722         related code and logic, add some new helper functions. (#327217)
723
724 2006-02-08  Matthias Clasen  <mclasen@redhat.com>
725
726         * gtk/gtkfilechooserbutton.c: Don't put relevant callss
727         in g_assert().  (#329876, Kristian Rietveld)
728
729 2006-02-08  Tor Lillqvist  <tml@novell.com>
730
731         * gdk/win32/gdkevents-win32.c (gdk_pointer_grab)
732         (gdk_display_pointer_ungrab, gdk_keyboard_grab)
733         (gdk_display_keyboard_ungrab): Consistenly use assign_object()
734         when assigning GdkWindow pointers so that the ref counting doesn't
735         get off whack.
736
737         (handle_stuff_while_moving_or_resizing): Don't use deprecated API.
738
739         (gdk_event_translate) <WM_MOUSEMOVE>: When the pointer is grabbed
740         with owner_events FALSE, generate enter and leave events only for
741         the grab window. (#321054)
742
743 2006-02-08  Kristian Rietveld  <kris@imendio.com>
744
745         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_ref_path),
746         (gtk_tree_model_filter_unref_path): free temporary paths after
747         usage (patch from maemo-gtk),
748         (gtk_tree_model_filter_clear_cache): fix little typo in the docs
749         (patch from maemo-gtk).
750
751         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_deleted): remove
752         stale FIXME.
753
754 2006-02-08  Matthias Clasen  <mclasen@redhat.com>
755
756         * gtk/gtkfilesystem.c (gtk_file_info_copy): Copy the display_key
757         as well.  (#330389, Markku Vire)
758
759 2006-02-08  Tor Lillqvist  <tml@novell.com>
760
761         * gtk-zip.sh.in: Drop the timestamp from the zipfile names.
762
763 2006-02-07  Sven Neumann  <sven@gimp.org>
764
765         * gdk/directfb/AUTHORS: updated mine and Dok's email address.
766
767 2006-02-06  Kristian Rietveld  <kris@gtk.org>
768
769         * gtk/gtktreeview.c (gtk_tree_view_get_search_entry): fix compiler
770         warning.
771
772 2006-02-05  Dom Lachowicz <cinamod@hotmail.com>
773
774         * gdk/gdkcairo.c (gdk_cairo_set_source_pixbuf): Bug #330022
775         Wrong pixel values are computed when color = 0xFF and alpha = 0xFF
776         
777 2006-02-04  Michael Emmel  <mike.emmel@gmail.com>
778         Added new directfb backend located in gdk/directfb
779         plus patches to compile new backend
780         compile with --with-gdktarget=directfb
781
782 2006-02-03  Federico Mena Quintero  <federico@ximian.com>
783
784         Work around https://bugs.freedesktop.org/show_bug.cgi?id=4320,
785         which used to be our own
786         http://bugzilla.gnome.org/show_bug.cgi?id=314616.  If one uses a
787         pixmap for a pattern in Cairo, and sets the pattern to
788         CAIRO_EXTEND_REPEAT; and if the destination surface is also a
789         pixmap, Cairo does a slow copy instead of using XCopyArea().  So,
790         we use the same code that we used in GTK+ 2.6 (pre-cairo), by
791         filling the double-buffer pixmap with a tiled GC and
792         XFillRectangle().
793
794         * gdk/gdkwindow.c (BackingRectMethod): New structure with a
795         cairo_t and a GdkGC field.  Depending on which of these fields
796         gets filled in, we'll use Cairo or GDK to clear the double-buffer
797         pixmap when painting a window.
798         (setup_backing_rect_method): Fill a BackingRectMethod as
799         appropriate, depending on the window's configuration and our
800         knowledge of whether Cairo is fast or slow when doing repeating
801         patterns.
802         (gdk_window_clear_backing_rect): Call
803         setup_backing_rect_method().  Depending on what it returns, use
804         Cairo to clear the double-buffer pixmap, or plain GDK.
805
806 2006-02-03  Matthias Clasen  <mclasen@redhat.com>
807
808         * gtk/gtklabel.c (get_layout_location): Fix handling
809         of padding in RTL.  (#329099, Hooman Mesgary) 
810
811 2006-02-02  Matthias Clasen  <mclasen@redhat.com>
812
813         * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display):
814         Make drops on the root window work again.  (#145243, Andrew S. Dixon)
815
816 2006-02-01  Matthias Clasen  <mclasen@redhat.com>
817
818         * gtk/gtkwidget.c (gtk_widget_class_init): Wrap dnd signal
819         docs to 80 columns.
820
821 2006-01-31  Matthias Clasen  <mclasen@redhat.com>
822
823         * autogen.sh: Touch README and INSTALL here to pacify 
824         automake.  (#329124, Kjartan Maraas, Tim Janik)
825
826 2006-01-31  Matthias Clasen  <mclasen@redhat.com>
827
828         * gtk/gtk.symbols:
829         * gtk/gtkassistant.h: 
830         * gtk/gtkassistant.c: Actually implement visibility handling,
831         and add gtk_assistant_update_buttons_state.
832
833         * tests/testassistant.c: Test visibility handling.
834
835 2006-01-31  Kristian Rietveld  <kris@imendio.com>
836
837         * gtk/gtkstyle.c (gtk_default_draw_flat_box): Add support for row
838         hinting for the selected state.
839
840 2006-01-30  Matthias Clasen  <mclasen@redhat.com>
841
842         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
843         Make sure the tree view is realized, since we grab the
844         focus to it.  (#329144, Wouter Bolsterlee)
845
846         * gtk/gtkspinbutton.h: 
847         * gtk/gtkspinbutton.c: Add a wrapped signal.  (#322933,
848         Carlos Garnacho Parro)
849
850         * gtk/gtkassistant.c: More generous spacing. (#328082,
851         Christian Persch, patch by Carlos Garnacho)
852         
853         * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_set_property): 
854         Use the setter for active.  (#329208, Guillaume Cottenceau)
855
856         * docs/tools/widgets.c (get_all_widgets): Add GtkLinkButton
857
858         * gtk/gtkassistant.c (gtk_assistant_init): Move the
859         last button to the left where it does not affect
860         the positioning of forward/back.
861
862 2006-01-29  Matthias Clasen  <mclasen@redhat.com>
863
864         More GtkAssistant work, by Carlos Garnacho.
865         
866         * tests/testassistant.c: Additions.
867
868         * gtk/gtkassistant.c: Handle page visibility, other 
869         small fixes.
870
871         * docs/tools/widgets.c: Add GtkAssistant.
872
873 2006-01-28  Behdad Esfahbod  <behdad@gnome.org>
874
875         * configure.in: If major.minor of required and available glib versions
876         are the same, add -DG_DISABLE_DEPRECATED to GLIB_CFLAGS. (bug #328617)
877
878         * */Makefile.am: Remove hardcoded -DG_DISABLE_DEPRECATED.
879
880 2006-01-28  Dom Lachowicz <cinamod@hotmail.com>
881
882         * modules/engines/ms-windows/msw-style.c: Re-sync with gtk-wimp
883         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Ditto
884         
885 2006-01-28  Matthias Clasen  <mclasen@redhat.com>
886
887         * gtk/gtk.symbols: 
888         * gtk/gtklinkbutton.h: 
889         * gtk/gtklinkbutton.c: Allow to set a global hook function
890         thats called whenever a link button is clicked.
891
892         More work on GtkAssistant by Carlos Garnacho:
893         
894         * demos/gtk-demo/Makefile.am: 
895         * demos/gtk-demo/assistant.c: Add a  GtkAssistant demo.
896
897         * gtk/gtkassistant.c: Handle focus, several small fixes to the
898         flow computations.
899
900 2006-01-27  Federico Mena Quintero  <federico@ximian.com>
901
902         Fixes bug #328820:
903
904         * gtk/gtkfilechooserdefault.c
905         (gtk_file_chooser_default_class_init): Make GDK_KP_Divide pop up
906         the location dialog populated to "/".
907         (tree_view_keybinding_cb): Likewise.
908         (trap_activate_cb): Likewise.
909
910 2006-01-25  Behdad Esfahbod  <behdad@gnome.org>
911
912         * gtk/gtkcalendar.c (gtk_calendar_size_request): Use translated format
913         strings for L10n in size calculation too.
914
915         * gtk/gtkcalendar.c (calendar_paint_week_numbers): Expand buffer to
916         accomodate localized digits.
917
918 2006-01-26  Matthias Clasen  <mclasen@redhat.com>
919
920         * tests/prop-editor.c: Introspect child properties. too.
921
922 2006-01-25  Behdad Esfahbod  <behdad@gnome.org>
923
924         * gtk/gtkcalendar.c (calendar_paint_week_numbers, calendar_paint_day):
925         Use contexed translated strings calendar:week:digits|%d and
926         calendar:day:digits|%d to let translators choose localized digits for
927         week and day numbers. (bug #317171, Hamed Malek)
928
929 2006-01-25  Behdad Esfahbod  <behdad@gnome.org>
930
931         * gtk/gtklabel.c (get_layout_location): Use logical extents of the
932         layout instead of ink extents.  According to Pango docs, that's what
933         should be used for placement.  Moreover, simply use
934         pango_layout_get_pixel_size instead of getting the extents and
935         dividing ourselves.
936
937 2006-01-25  Matthias Clasen  <mclasen@redhat.com>
938
939         * gtk/gtkentrycompletion.c: 
940         * gtk/gtkentry.c: Be more careful when blocking signals. 
941
942         * gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): Only
943         set the cursor size if it is != 0.
944
945         * gtk/gtksettings.c (gtk_settings_class_init): Change the default value
946         of gtk-cursor-theme-size to 0, meaning "use default".
947
948 2006-01-24  Kristian Rietveld  <kris@gtk.org>
949
950         #322591, Jonathan Blandford.
951
952         * gtk/gtktreeview.[ch] (gtk_tree_view_get_search_entry),
953         (gtk_tree_view_set_search_entry),
954         (gtk_tree_view_get_search_position_func),
955         (gtk_tree_view_set_search_position_func): New functions,
956         and small adaptions to the tree view code to allow for setting
957         the entry and search position function.
958
959         * gtk/gtktreeprivate.h: Removed GtkTreeViewSearchDialogPositionFunc
960         typedef, which is now in gtktreeview.h as
961         GtkTreeViewSearchPositionFunc.  Add/update fields.
962
963         * gtk/gtk.symbols: Add new functions.
964
965         * tests/testtreesort.c: Add a little test for _set_search_entry().
966
967 2006-01-23  Matthias Clasen  <mclasen@redhat.com>
968
969         Add GtkLinkButton, a port of GnomeHRef.  (#314808, Emmanuele Bassi)
970         
971         * gtk/gtklinkbutton.h: 
972         * gtk/gtklinkbutton.c: New files.
973
974         * gtk/gtk.h:
975         * gtk/gtk.symbols: 
976         * gtk/Makefile.am: Glue.
977
978         * gtk/gtkaboutdialog.c: Use GtkLinkButton.
979         
980         * gtk/gtkwidget.c: Add link-color and visited-link-color style
981         properties.  (#113649, Leena Gunda)
982
983         * gtk/gtkaboutdialog.c: Use the new style properties here instead
984         of the about dialogs own link-color property. 
985
986 2006-01-23  Kristian Rietveld  <kris@gtk.org>
987
988         * gtk/gtktreemodel.c (gtk_tree_model_base_init): don't copy
989         tree paths when emitting signals. (#325041, Matthias Clasen).
990
991 2006-01-23  Behdad Esfahbod  <behdad@gnome.org>
992
993         * gtk/gtklabel.c (get_layout_location): Fix misalignment of RTL
994         text in ellipsized GtkLabel: use layout width if set, otherwise
995         fallback to ink extents width. (#322042)
996
997 2006-01-23  Matthias Clasen  <mclasen@redhat.com>
998
999         * gtk/gtkassistant.c (compute_last_button_state): Only show the
1000         last button if we can jump to the end. 
1001         (gtk_assistant_init): Make the spacing and button order more
1002         HIG compliant.
1003
1004         Fix drawing issues in progress bars.  (#328081, Christian Persch)
1005         
1006         * gtk/gtkprogressbar.c (gtk_progress_bar_size_request): Always
1007         request enough space. 
1008         (gtk_progress_bar_paint_activity) 
1009         (gtk_progress_bar_paint_continuous) 
1010         (gtk_progress_bar_paint_discrete): Clip when drawing the bar.
1011
1012 2006-01-23  Michael Natterer  <mitch@imendio.com>
1013
1014         * gtk/gtkcolorbutton.c: move destruction of the private GdkGC
1015         from finalize() to unrealize(). Fixes BadMatch on display change
1016         (bug #85715).
1017
1018 2006-01-22  Kristian Rietveld  <kris@gtk.org>
1019
1020         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Revert previous
1021         commit after more searching in the bugzilla archives (see #309221).
1022
1023 2006-01-22  Kristian Rietveld  <kris@gtk.org>
1024
1025         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Remove second call
1026         to gtk_tree_view_column_cell_set_cell_data, since we also set the
1027         cell data before iterating over the columns for exposure. (Fixes
1028         #322471, Duncan Coutts).
1029
1030 2006-01-21  Matthias Clasen  <mclasen@redhat.com>
1031
1032         * tests/testassistant.c: Add some tests for GtkAssistant
1033
1034         * tests/Makefile.am: Glue
1035
1036 2006-01-20  Matthias Clasen  <mclasen@redhat.com>
1037
1038         * gtk/gtkassistant.c: Fix the docs to reflect the actual signal
1039         signatures.
1040
1041         * gtk/gtktextview.c (gtk_text_view_set_virtual_cursor_pos): Don't
1042         crash if layout is NULL.  (#327934, Christian Kirbach)
1043
1044 2006-01-20  Dan Winship  <danw@novell.com>
1045
1046         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_class_init,
1047         tree_view_keybinding_cb, trap_activate_cb): On "unix", pop up the
1048         "Open Location" window on "~" as well as "/". #153213
1049         (location_entry_create): Fix this so autocompletion still works
1050         correctly in that case.
1051
1052 2006-01-19  Matthias Clasen  <mclasen@redhat.com>
1053
1054         * configure.in: Explicitly link against Xrender.  
1055         (#327538, Christophe Belle)
1056         
1057         * gdk/x11/gdkprivate-x11.h (XID_FONT_BIT): 
1058         * gdk/x11/gdkfont-x11.c: 
1059         * gdk/x11/gdkxid.c: Use an unused high bit in the
1060         XID to mark fonts in the global xid hash table.
1061
1062         * gdk/x11/gdkcursor-x11.c (update_cursor): Skip fonts
1063         when iterating over the xid hash table, since calling
1064         GDK_IS_WINDOW () on an GdkFont can cause a segfault.
1065         (#327751, Ryan Lovett)
1066
1067 2006-01-19  Matthias Clasen  <mclasen@redhat.com>
1068         
1069         * gtk/gtkassistant.[hc]: Use a priv pointer for
1070         cheap access to the priv struct.  (#327725, Christian
1071         Persch)
1072
1073         * gtk/gtkassistant.h: Fix line endings.
1074
1075 2006-01-18  Matthias Clasen  <mclasen@redhat.com>
1076
1077         * gtk/gtkassistant.[hc]: Add GtkAssistant, a widget to
1078         construct multi-step wizards.  (#115348, Martyn Russell, 
1079         Matthias Clasen, Carlos Garnacho Parro)
1080
1081         * gtk/gtk.symbols:
1082         * gtk/Makefile.am: 
1083         * gtk/gtk.h: Necessary glue.
1084
1085 2006-01-18  Anders Carlsson  <andersca@imendio.com>
1086
1087         * gdk/quartz/gdkevents-quartz.c:
1088         (get_mm_from_pixels):
1089         (gdk_screen_get_width_mm):
1090         (gdk_screen_get_height_mm):
1091         Implement these functions.
1092         (#327228, Thomas Broyer).
1093
1094 2006-01-18  Anders Carlsson  <andersca@imendio.com>
1095
1096         * gdk/quartz/gdkdrawable-quartz.c:
1097         (gdk_quartz_draw_polygon):
1098         (gdk_quartz_draw_lines):
1099         Implement these functions.
1100         (#327226, Thomas Broyer)
1101         
1102 2006-01-18  Anders Carlsson  <andersca@imendio.com>
1103
1104         * gdk/quartz/gdkkeys-quartz.c:
1105         (maybe_update_keymap):
1106         Support non-MacRoman keyboard layouts.
1107         (#322585, Wolfgang Thaller)
1108         
1109 2006-01-18  Anders Carlsson  <andersca@imendio.com>
1110
1111         * gdk/quartz/gdkmain-quartz.c:
1112         (_gdk_windowing_init):
1113         Make the process a foreground application.
1114         (#322481, Wolfgang Thaller)
1115         
1116 2006-01-18  Matthias Clasen  <mclasen@redhat.com>
1117
1118         * gtk/gtkrbtree.c: 
1119         * gtk/gtktreemodel.c: Fix several g_new() calls which
1120         were using extra indirections or pointless casts.  
1121         (#327423, Morten Welinder)
1122
1123 Tue Jan 17 19:27:59 2006  Tim Janik  <timj@imendio.com>
1124
1125         * gtk/gtkprogress.c: fix adopted from maemo-gtk.
1126         gtk_progress_create_pixmap(): clear out the newly created offscreen 
1127         pixmap, so themes making use of transparency don't draw onto garbage.
1128
1129 2006-01-17  Michael Natterer  <mitch@imendio.com>
1130
1131         * gtk/gtkbutton.c: remove the "child-spacing" style property again
1132         and add "inner-border" instead. That's far more flexible and
1133         "child-spacing" was a bad name anyway.
1134
1135 2006-01-17  Michael Natterer  <mitch@imendio.com>
1136
1137         * configure.in (ALL_LINGUAS): remove "ang" again until all po
1138         files are there.
1139
1140 2006-01-16  Abel Cheung  <maddog@linuxhall.org>
1141
1142         * configure.in: Added "ang" "zh_HK" to ALL_LINGUAS.
1143
1144 2006-01-16  Matthias Clasen  <mclasen@redhat.com>
1145
1146         * README.in: Mention new pixbuf engine features.
1147
1148         * gtk/gtk.symbols: 
1149         * gtk/gtkradioaction.[hc]: Add a current-value property and a
1150         setter for it.  (#322735, Jorn Baayen)
1151         
1152 2006-01-16  Michael Natterer  <mitch@imendio.com>
1153
1154         * gtk/gtkbutton.c: applied patch from maemo-gtk which adds a
1155         child-spacing style property. Fixes bug #327202.
1156
1157 2006-01-16  Anders Carlsson  <andersca@imendio.com>
1158
1159         * gdk/quartz/gdkdisplay-quartz.c:
1160         * gdk/quartz/gdkevents-quartz.c:
1161         (gdk_keyboard_grab):
1162         (gdk_display_keyboard_ungrab):
1163         (gdk_keyboard_grab_info_libgtk_only):
1164         (find_window_for_event):
1165         Implement keyboard grabs.
1166         
1167         (_gdk_quartz_send_map_events):
1168         * gdk/quartz/gdkmain-quartz.c:
1169         * gdk/quartz/gdkprivate-quartz.h:
1170         New function that synthesizes map events.
1171         
1172         * gdk/quartz/gdkwindow-quartz.c:
1173         (_gdk_windowing_window_init):
1174         The root window is always visible.
1175         
1176         (all_parents_shown):
1177         (show_window_internal):
1178         Send map events.
1179         
1180         (gdk_window_hide):
1181         Ungrab keyboard and pointer
1182
1183 2006-01-15  Kristian Rietveld  <kris@gtk.org>
1184
1185         Fixes #324099, Tommi Komulainen.
1186
1187         * gtk/gtktreestore.[ch] (gtk_tree_store_insert_with_values),
1188         (gtk_tree_store_insert_with_valuesv): new functions, analog to
1189         those found in GtkListStore.
1190
1191         * gtk/gtktreestore.c (gtk_tree_store_real_set_value),
1192         (gtk_tree_store_set_valist), (gtk_tree_store_set_valist_internal),
1193         (gtk_tree_store_sort_iter_changed): refactored.
1194
1195         * gtk/gtk.symbols: updated.
1196
1197         * tests/treestoretest.c: added a test for this new functionality.
1198
1199 2006-01-14  Matthias Clasen  <mclasen@redhat.com>
1200
1201         * gtk/gtkentry.c (gtk_entry_drag_data_received): Remove 
1202         an unused variable.
1203
1204         * gtk/gtkiconfactory.c (get_default_icons): Register RTL 
1205         versions of the indent and unindent icons.  (#326857,
1206         Itai Bar-Haim)
1207
1208         * gtk/Makefile.am (STOCK_ICONS): And add them here.
1209
1210         Fix a crash with combo boxes in RESIZE_IMMEDIATE
1211         containers.  (#326806, Sebastian Bacher)
1212         
1213         * gtk/gtkcombobox.c (gtk_combo_box_size_allocate) 
1214         (gtk_combo_box_size_request): Don't call 
1215         gtk_combo_box_check_appearance() from here, as that 
1216         can lead to recursion. 
1217         (gtk_combo_box_init): Instead, call it here.
1218
1219 2006-01-14  Kristian Rietveld  <kris@gtk.org>
1220
1221         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_iter_children): fix
1222         a typo which caused this whole thing to not function ...
1223
1224 2006-01-14  Kristian Rietveld  <kris@gtk.org>
1225
1226         * gtk/gtktreeview.c (gtk_tree_view_size_allocate),
1227         (validate_visible_area): fixup adjustments and top_row if the
1228         current dy + page_size exceeds the new tree view height. (Fixes
1229         #316689, reported by Chris Lord).
1230
1231 2006-01-13  Matthias Clasen  <mclasen@redhat.com>
1232
1233         * */abicheck.sh: Make this work on more platforms.
1234
1235 2006-01-13  Kristian Rietveld  <kris@imendio.com>
1236
1237         * tests/testtreefocus.c (set_indicator_size), (main): add a little
1238         test for the newly introduced indicator-size property.
1239
1240 2006-01-13  Kristian Rietveld  <kris@imendio.com>
1241
1242         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_init):
1243         initialize the inconsistent field in the private structure,
1244         (gtk_cell_renderer_toggle_class_init),
1245         (gtk_cell_renderer_toggle_{set,get}_property),
1246         (gtk_cell_renderer_toggle_get_size): introduce a indicator-size
1247         property.
1248
1249 2006-01-13  Michael Natterer  <mitch@imendio.com>
1250
1251         * gtk/gtktreeview.c (gtk_tree_view_real_expand_row)
1252         (gtk_tree_view_real_collapse_row): don't animate the expander
1253         arrows if gtk-enable-animations is FALSE (bug #142582).
1254
1255 2006-01-12  Matthias Clasen  <mclasen@redhat.com>
1256
1257         * gtk/gtknotebook.c: Replace hardcoded values for tab-overlap and
1258         tab-curvature with style properties.  (#325282, Alexander Nedotsukov)
1259
1260         * gtk/gtktextview.c (gtk_text_view_commit_text) 
1261         (gtk_text_view_delete_from_cursor, gtk_text_view_backspace): 
1262         Reset the virtual cursor position.  (#326003, Evert Verhellen)
1263
1264         * gtk/gtkwidget.c (gtk_widget_set_app_paintable): Add some docs
1265         about RGBA windows. (#326486, Benjamin Otte)
1266
1267 2006-01-12  Michael Natterer  <mitch@imendio.com>
1268
1269         * gdk/gdkimage.c (scratch_image_info_for_depth): connect to the
1270         display's "closed" signal and free the cached scratch images upon
1271         display closing (bug #85715).
1272
1273 2006-01-12  Michael Natterer  <mitch@imendio.com>
1274
1275         * gtk/gtkexpander.c (gtk_expander_set_expanded): skip the
1276         animation if the gtk-enable-animations setting is FALSE
1277         (bug #142582).
1278
1279 2006-01-11  Matthias Clasen  <mclasen@redhat.com>
1280
1281         * gtk/gtklabel.c: Fix a C99ism (#326658, Kazuki Iwamoto)
1282
1283 2006-01-11  Matthias Clasen  <mclasen@redhat.com>
1284
1285         * gtk/gtklabel.c: Add some notify batching, always
1286         emit notify after setting the new value.
1287
1288         * gtk/gtkmessagedialog.c: Add properties.  (#311254,
1289         Johan Dahlin)
1290         (gtk_message_dialog_new): Remove some redundant code, pointed
1291         out by Gustavo Carneiro.
1292
1293         * gdk/x11/gdkwindow-x11.c (create_moveresize_window): Clean
1294         up properly if the grab fails.
1295         (finish_drag): Don't leak a reference to moveresize_window
1296         here.
1297
1298 2006-01-11  Matthias Clasen  <mclasen@redhat.com>
1299
1300         * gdk/x11/gdkevents-x11.c: Fix string offsets.
1301
1302         Allow falling back to another icon theme before 
1303         hicolor.   (#325546, Rodney Dawes)
1304         
1305         * gtk/gtksettings.c: Add a gtk-fallback-icon-theme setting.
1306
1307         * gdk/x11/gdkevents-x11.c: Map it to the XSetting Net/FallbackIconTheme.
1308         
1309         * gtk/gtkicontheme.c: Consult the fallback icon theme before
1310         looking in hicolor. 
1311
1312 2006-01-10  Matthias Clasen  <mclasen@redhat.com>
1313
1314         * tests/testgtk.c: Add an expander example.
1315
1316         * gtk/gtkcalendar.c (gtk_calendar_focus_out): Queue a draw
1317         when losing the focus.  (#326064, Andrew Conkling)
1318
1319         * gtk/gtkimmulticontext.c: 
1320         * gtk/gtkhsv.c: 
1321         * gtk/gtkhandlebox.c: Convert to use instance private data.
1322
1323         * gtk/gtk.h: Remove duplicate include.  (#326429, 
1324         Benoît Carpentier)
1325
1326         * gtk/gtkpaned.c: Convert to use instance private data.
1327
1328 2006-01-10  Michael Natterer  <mitch@imendio.com>
1329
1330         * gdk/gdkpango.c (on_renderer_display_closed): disconnect from the
1331         right object ("closed" is emitted by the display, not the screen).
1332         (bug #85715)
1333
1334 2006-01-10  Anders Carlsson  <andersca@imendio.com>
1335
1336         * gdk/quartz/gdkproperty-quartz.c:
1337         (ensure_atom_tables):
1338         (intern_atom_internal):
1339         (gdk_atom_intern):
1340         (gdk_atom_intern_static_string):
1341         (gdk_atom_name):
1342         Implement local-only atoms.
1343
1344 2006-01-09  Matthias Clasen  <mclasen@redhat.com>
1345
1346         * gdk/gdkgc.c (gc_get_foreground): Correct a warning.
1347         (#326341, Benoît Carpentier)
1348
1349         * gtk/gtk.symbols:
1350         * gtk/gtkwindow.h:
1351         * gtk/gtkwindow.c (gtk_window_get_group): Make this function
1352         public API.  (#307099, Todd Berman)
1353
1354         * gtk/gtkmenu.c: 
1355         * gtk/gtkmain.c: 
1356         * gtk/gtkentrycompletion.c: 
1357         * gtk/gtkcombo.c: 
1358         * gtk/gtkcombobox.c: Update all callers.
1359
1360         * gtk/gtkentry.c (paste_received):  Make GtkEntryCompletion
1361         complete on pastes at the end.  (#165714, Christian Neumair)
1362
1363         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): 
1364         Prevent the first row being focused on map.  (#137351,
1365         Niklas Knutsson)
1366
1367 2006-01-09  Johan Dahlin  <jdahlin@async.com.br>
1368
1369         * gtk/gtk.symbols:
1370         * gtk/gtkeditable.h:
1371         * gtk/gtksizegroup.c: (gtk_size_group_get_widgets):
1372         * gtk/gtksizegroup.h:
1373         (struct _GtkSizeGroup): 
1374
1375         Add gtk_size_group_get_widgets, fixes #326324.
1376         Also mark all fields of GtkSizeGroup as private
1377
1378 2006-01-09  Matthias Clasen  <mclasen@redhat.com>
1379
1380         * gtk/gtktextlayout.c (gtk_text_layout_finalize): Don't
1381         leak preedit_string and preedit_attrs.  (#322332, Paolo
1382         Borelli)
1383
1384         * gtk/gtk.symbols:
1385         * gtk/gtkaction.h: 
1386         * gtk/gtkaction.c (gtk_widget_get_action): New function to
1387         get the action for a proxy.  (#326288)
1388
1389         * gtk/gtkaction.c: Go back to the old key for attaching the
1390         action to the proxy.  (#326288, Diego González)
1391
1392 2006-01-08  Matthias Clasen  <mclasen@redhat.com>
1393
1394         * gtk/gtkactiongroup.c (dgettext_swapped): Don't translate
1395         empty strings.  (#326200, Christian Stimming)
1396
1397 2006-01-08  Matthias Clasen  <mclasen@redhat.com>
1398
1399         * gtk/gtkentry.[hc]: 
1400         * gtk/gtklabel.[hc]: Shrink the private structs of these a bit.
1401
1402         * gtk/gtklabel.c (get_layout_location): Fix label alignment 
1403         when width-chars is set.  (#326098, Benjamin Otte)
1404
1405         * gdk/gdkregion-generic.c (miRegionCopy): Fix this for the 
1406         single-rectangle case.  (#326127, Benjamin Berg)
1407         (gdk_region_copy): Use miRegionCopy() here.
1408
1409 2006-01-07  Matthias Clasen  <mclasen@redhat.com>
1410
1411         Fix actiongroup-action interaction that relied on 
1412         actions connecting to notify on themselves:
1413         
1414         * gtk/gtkaction.[hc]: Factor out the code updating the
1415         visibility/sensitivity of proxies into _gtk_action_sync_visible()
1416         and _gtk_action_sync_sensible().
1417
1418         * gtk/gtkactiongroup.c: Call the new functions when the
1419         group visibility/sensitivity changes. 
1420
1421 2006-01-06  Matthias Clasen  <mclasen@redhat.com>
1422
1423         * gtk/gtkactiongroup.c (gtk_action_group_set_sensitive) 
1424         (gtk_action_group_set_visible): Add missing property change
1425         notification.
1426
1427 2006-01-06  Matthias Clasen  <mclasen@redhat.com>
1428
1429         * gtk/gtkfilechooserbutton.c (model_add_special): Just use the
1430         directory name for the home dir.  (#325817, Federico Mena Quintero)
1431         
1432         * gtk/gtktexttag.c (gtk_text_attributes_new): Initialize editable 
1433         to TRUE. 
1434         (gtk_text_tag_class_init): The default value for the direction 
1435         property is GTK_TEXT_DIR_NONE. Add notes about the initial values 
1436         of the font and language properties.
1437
1438         * gtk/gtktoolbutton.c (gtk_tool_button_class_init): Make clicked
1439         an action signal.  (#325782, Martyn Russell)
1440
1441         * gtk/gtkviewport.c (viewport_set_adjustment): Disconnect from
1442         the old adjustments signals.  (#325869, Jorn Baayen)
1443
1444 2006-01-06  Hans Breuer  <hans@breuer.org>
1445
1446         * tests/makefile.msc : added a bunch of tests
1447         * tests/testcellrenderertext.c : use g_snprintf()
1448         * tests/testfilechooserbutton.c : don't include unistd.h twice.
1449         Removed the unconditional one and added direct.h for G_OS_WIN32
1450         
1451 2006-01-05  Hans Breuer  <hans@breuer.org>
1452
1453         * gdk/makefile.msc : also recurse into win32 for ::clean
1454         * gtk/makefile.msc.in : create gtkbuiltincache.h (most code
1455         to simulate links) and file renames
1456
1457 2006-01-05  Johan Dahlin  <jdahlin@async.com.br>
1458
1459         * gtk/gtkprogressbar.c: Set minimum for activity-step property to 0
1460         instead of -G_MAXUINT.
1461         
1462 2006-01-05  Matthias Clasen  <mclasen@redhat.com>
1463
1464         * gtk/gtkwindow.c: Only connect to the event if we have
1465         a frame, since the handler is only relevant in that case.
1466
1467         * gtk/gtkaction.c (connect_proxy, disconnect_proxy): 
1468         Use a weak reference rather than the destroy signal to track 
1469         proxies going away.
1470
1471         * gtk/gtkbindings.c (binding_signal_new): Revert the last change.
1472
1473         * gtk/gtkaction.c (gtk_action_sync_property): 
1474         (gtk_action_sync_stock_id): Removed.
1475
1476 2006-01-05  Rodrigo Moya <rodrigo@novell.com>
1477
1478         * gtk/gtkbindings.c (binding_signal_new): allocate correct amount for
1479         signal and arguments.
1480
1481 2006-01-05  Matthias Clasen  <mclasen@redhat.com>
1482
1483         * gtk/gtklabel.c (gtk_label_grab_focus): Don't return a value from
1484         a void function.
1485
1486 2006-01-04  Matthias Clasen  <mclasen@redhat.com>
1487
1488         * gtk/gtkbindings.h (struct _GtkBindingSignal): Revert questionable
1489         changes.
1490         
1491         * gtk/gtkbindings.c: Use the slice allocator and allocate signal
1492         and arguments in one block.
1493
1494         * gtk/gtkuimanager.c (gtk_ui_manager_get_toplevels): Don't return
1495         a list of NULLs.  (#325723, Steve Chaplin)
1496
1497 2006-01-04  Rodrigo Moya <rodrigo@novell.com>
1498
1499         * gtk/gtkbindings.c (binding_signal_new): guard against multiplying
1500         by -1 (when n_args is 0).
1501
1502 2006-01-04  Michael Natterer  <mitch@imendio.com>
1503
1504         * gtk/gtkmenutoolbutton.c
1505         (gtk_menu_tool_button_set_menu)
1506         (gtk_menu_tool_button_destroy): use gtk_menu_attach_to_widget()
1507         and gtk_menu_detach() instead of reffing/unreffing the menu
1508         manually. Also fixes brokenness on screen change (bug #85715).
1509
1510 2006-01-04  Matthias Clasen  <mclasen@redhat.com>
1511
1512         * gtk/gtkaccelmap.c: 
1513         * gtk/gtkactiongroup.c: 
1514         * gtk/gtkdialog.c: 
1515         * gtk/gtkfilesystemunix.c: 
1516         * gtk/gtkgc.c: 
1517         * gtk/gtkkeyhash.c: 
1518         * gtk/gtkplug.c: 
1519         * gtk/gtktextiter.c: 
1520         * gtk/gtktextlayout.c: 
1521         * gtk/gtkuimanager.c: 
1522         * gtk/gtkwidget.c: 
1523         * gtk/gtkwindow.c: 
1524         * gtk/gtkxembed.c: Use the slice allocator for many small 
1525         allocations.
1526
1527         * gtk/gtkcolorsel.c: 
1528         * gtk/gtktreeview.c: Use IPN.
1529
1530         * gtk/gtkwidget.c: Remove an unused field from the AccelPath 
1531         struct.
1532
1533 2006-01-04  Tor Lillqvist  <tml@novell.com>
1534
1535         * gtk-zip.sh.in: Include also the gtk20-properties message catalogs.
1536
1537 2006-01-03  Matthias Clasen  <mclasen@redhat.com>
1538         
1539         * gtk/gtkdnd.c: Make it compile
1540
1541         * gtk/gtkdnd.c (gtk_drag_begin_internal): Call gtk_drag_update
1542         for non-motion events.  (#325443, Peter Harvey)
1543
1544         * gtk/gtkaction.c: Avoid connecting to notify on our own
1545         properties. 
1546
1547 2006-01-02  Matthias Clasen  <mclasen@redhat.com>
1548
1549         * gtk/gtkentry.c (gtk_entry_delete_from_cursor): When deleting
1550         words, delete preceding whitespace as well.  (#325358,  Akkana Peck)
1551
1552 2006-01-02  Anders Carlsson  <andersca@imendio.com>
1553
1554         * gdk/quartz/GdkQuartzWindow.c:
1555         (-[GdkQuartzWindow canBecomeMainWindow]):
1556         (-[GdkQuartzWindow canBecomeKeyWindow]):
1557         Have these return TRUE
1558         
1559         * gdk/quartz/gdkevents-quartz.c:
1560         (pointer_grab_internal):
1561         Remove FIXME
1562         
1563         (find_child_window_by_point_helper):
1564         Fix bug in offset calculation
1565         
1566         (find_window_for_event):
1567         Use grab window toplevel when a grab is in effect
1568         
1569         (gdk_event_translate):
1570         Don't call _gdk_event_button_generate on mouse up
1571         
1572         * gdk/quartz/gdkgc-quartz.c:
1573         (_gdk_quartz_gc_new):
1574         Fix indentation
1575         
1576         * gdk/quartz/gdkwindow-quartz.c:
1577         (gdk_window_new):
1578         Make TEMP windows borderless
1579         
1580         (gdk_window_hide):
1581         Hide window
1582         
1583         (gdk_window_get_origin):
1584         Implement
1585         
1586 2006-01-02  Tor Lillqvist  <tml@novell.com>
1587
1588         * gdk/win32/gdkwindow-win32.c
1589         (gdk_window_impl_win32_get_visible_region): Make identical to the
1590         X11 implementation. (#322264, John Ehresman)
1591
1592         * gdk/win32/gdkgeometry-win32.c (gdk_window_scroll): Get the
1593         invalidated region from ScrollWindowEx() instead of an incorrect
1594         attempt to calculate it ourselves. Fix by John Ehresman. (#323666)
1595
1596         * gdkevents-win32.c: Make _gdk_win32_hrgn_to_region() non-static.
1597
1598         * gdkprivate-win32.h: Declare it.
1599
1600 2005-12-31  Matthias Clasen  <mclasen@redhat.com>
1601
1602         * gtk/gtkaction.c: 
1603         * gtk/gtkentry.c: Connect to notify instead of multiple
1604         detailed signals.
1605
1606 2005-12-30  Matthias Clasen  <mclasen@redhat.com>
1607
1608         * gdk/gdk.symbols: 
1609         * gdk/gdkcairo.h: 
1610         * gdk/gdkcairo.c: Add gdk_cairo_set_source_pixmap.  (#318805,
1611         Alexander Larsson)
1612
1613         * gdk/gdkdisplaymanager.c (gdk_display_manager_set_property): Call
1614         gdk_display_manager_set_default_display() to change the default
1615         display.  (#153623, Stefan Kost)
1616
1617         * gtk/gtkmessagedialog.c (gtk_message_dialog_init):
1618          (setup_type): Alert dialogs should not have titles and should 
1619         not be displayed in the taskbar.  (#310443, Carlos Garnacho Parro,
1620         Dennis Cranston)
1621
1622 2005-12-29  Matthias Clasen  <mclasen@redhat.com>
1623
1624         * gtk/gtkliststore.c: 
1625         * gtk/gtktreestore.c: Always call the get_path and get_iter
1626         implementations directly, rather than the current mixture whith
1627         some calls going through the GtkTreeModel interface.
1628
1629         * gtk/gtktreemodelsort.c: 
1630         * gtk/gtkliststore.c: 
1631         * gtk/gtktreestore.c: Remove excessive g_return_if_fail() checks
1632         in static functions.
1633         
1634         * gtk/gtktreedatalist.c: Use the slice allocater for 
1635         GtkTreeDataSortHeader.
1636
1637         * gtk/gtktreedatalist.h: 
1638         * gtk/gtktreedatalist.c (_gtk_tree_data_list_set_header): New function.
1639
1640         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_sort_func): 
1641         * gtk/gtkliststore.c (gtk_list_store_set_sort_func): 
1642         * gtk/gtktreestore.c (gtk_tree_store_set_sort_func): Use it here.
1643
1644 2005-12-27  Matthias Clasen  <mclasen@redhat.com>
1645
1646         * gtk/gtkbindings.h (GtkBindingSignal): 
1647         * gtk/gtkbindings.c (binding_signal_new): Make the
1648         args a flexible array inside the struct, and allocate them
1649         together.
1650
1651 Wed Dec 28 00:45:46 2005  Tim Janik  <timj@gtk.org>
1652
1653         * gtk/gtkctree.c (row_delete): delete GtkCTreeRow as GtkCTreeRow, not
1654         clist rows which crashes in gslice later on.
1655
1656 2005-12-27  Federico Mena Quintero  <federico@ximian.com>
1657
1658         * gtk/gtkfilefilter.c (gtk_file_filter_filter): In the case for
1659         FILTER_RULE_PIXBUF_FORMATS, check that filter_info->mime_type is
1660         not NULL.  Fixes bug #317687.
1661
1662 2005-12-27  Matthias Clasen  <mclasen@redhat.com>
1663
1664         * gdk/x11/gdkevents-x11.c (check_transform): Fix a typo.
1665         (gdk_screen_get_setting): Avoid relocations for the settings
1666         map.
1667
1668         * gdk/x11/gdkproperty-x11.c: Avoid relocations for the list
1669         of standard atoms.
1670
1671         * gtk/gtkbindings.c (gtk_binding_set_new): Avoid copying
1672         the set_name by interning it.
1673
1674 2005-12-26  Matthias Clasen  <mclasen@redhat.com>
1675
1676         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Precache atoms
1677         before calling gdk_window_new().
1678
1679         * gtk/gtktextbtree.c: Use the slice allocator for some other small
1680         auxiliary structures as well.
1681
1682         * gtk/gtkimcontext.c (gtk_im_context_filter_keypress): Clarify
1683         docs.  (#324996)
1684
1685         * gtk/gtktextbtree.c (gtk_text_btree_get_tag_info) 
1686         (gtk_text_btree_remove_tag_info): Use the slice allocator for 
1687         tag info.
1688
1689         * README.in: Mention the stripping of (_F) suffixes.
1690
1691         * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Strip a suffix of 
1692         the form "(_<single character>)", since this is the preferred way
1693         for some languages to indicate accelerators.  (#323956, Yang Hong)
1694
1695         * gtk/gtklabel.c (gtk_label_class_init): Add a gtk-label-select-on-focus
1696         setting.
1697         (gtk_label_grab_focus): And use it here to select the contents of
1698         the label when appropriate.
1699         (gtk_label_class_init): Use the same keybindings for select all/
1700         unselect all as GtkEntry and GtkTextView.
1701
1702         * gtk/gtkdialog.c (gtk_dialog_map): When looking for the initial
1703         focus, avoid leaving a selection in a label.
1704
1705 2005-12-25  Matthias Clasen  <mclasen@redhat.com>
1706
1707         * gtk/gtkwindow.c: Documentation fixes.  (#324815, 
1708         Ross Burton)
1709
1710         * configure.in: Require GLib 2.9.2
1711
1712 2005-12-24  Matthias Clasen  <mclasen@redhat.com>
1713
1714         * gdk/gdkregion-generic.c: 
1715         * gdk/gdkpolyreg-generic.c: 
1716         * gdk/gdkregion.h: 
1717         * gdk/gdkrectangle.c: Inline docs, use g_assert(), avoid 
1718         extra allocation for rectangular regions.
1719
1720 Thu Dec 22 18:53:14 2005  Tim Janik  <timj@gtk.org>
1721
1722         * gtk/gtkobject.[hc]: renamed GUnowned to GInitiallyUnowned.
1723
1724 Thu Dec 22 17:55:11 2005  Tim Janik  <timj@gtk.org>
1725
1726         * gtk/gtkobject.h: parent type fixups in structure declarations.
1727
1728 Thu Dec 22 16:01:27 2005  Tim Janik  <timj@imendio.com>
1729
1730         * gtk/gtkobject.c: derive GtkObject from GUnowned,
1731         so it initially has a floating reference count.
1732         gtk_object_class_init(): installa floating flag handler with
1733         libgobject, so for GtkObjects the flag is stored as GTK_FLOATING
1734         in the ->flags member.
1735
1736         * tests/floatingtest.c: test floating flag uses.
1737
1738 2005-12-21  Matthias Clasen  <mclasen@redhat.com>
1739
1740         * gdk/gdkregion-generic.c: Use the slice allocator
1741         for regions. Still todo: avoid extra allocations for
1742         the single-rectangle case.
1743
1744         * gtk/gtksettings.c (gtk_settings_class_init): Update
1745         class_n_properties after installing color-hash, since
1746         other classes install settings, too.
1747
1748         * gtk/gtkctree.c: 
1749         * gtk/gtkclist.c: Fix some mistakes in the conversion
1750         from mem chunks to slice allocator.
1751
1752         * gtk/gtkiconview.c (adjust_wrap_width): Adjust the 
1753         wrap-width also if an explicit item width is set.  
1754         (#322475, Alex Graveley)
1755         
1756 2005-12-20  Matthias Clasen  <mclasen@redhat.com>
1757
1758         * gtk/gtkiconview.c (gtk_icon_view_button_press): Reset 
1759         pressed_button to -1 after handling a double click, so that
1760         motion events occurring between here and the release event
1761         don't trigger DND.  (#324588, Dave Andreoli)
1762
1763 2005-12-19  Matthias Clasen  <mclasen@redhat.com>
1764
1765         * gtk/gtkcellrenderer.c: 
1766         * gtk/gtkselection.c: 
1767         * gtk/gtkcalendar.c: 
1768         * gtk/gtkitemfactory.c: 
1769         * gdk/gtkcombo.c: 
1770         * gdk/gdkpixbuf-render.c: Documentation updates
1771
1772         * gtk/gtktreemodel.c: 
1773         * gtk/gtkplug.c: 
1774         * gtk/gtkwindow.c: Documentation fixes.
1775
1776 2005-12-19  Michael Natterer  <mitch@imendio.com>
1777
1778         * gtk/gtkentry.c: implement boolean property "truncate-multiline"
1779         which, when enabled, truncates multi-line pastes or drops to their
1780         first line. Fixes bug #322252.
1781
1782         * gtk/gtkfilechooserentry.c (gtk_file_chooser_entry_init): enable
1783         truncate-multiline here.
1784
1785 2005-12-17  Matthias Clasen  <mclasen@redhat.com>
1786
1787         * gtk/gtksettings.c (get_color_hash): Don't crash if
1788         there is no color scheme.  (#324429, Diego Gonzalez)
1789
1790 2005-12-16  Matthias Clasen  <mclasen@redhat.com>
1791
1792         * gtk/gtkfilesystem.c (gtk_file_system_module_load): 
1793         * gtk/gtkimmodule.c (gtk_im_module_load): 
1794         * gtk/gtkthemes.c (gtk_theme_engine_load): 
1795         * gtk/gtkmodules.c (find_module): Use G_MODULE_BIND_LAZY when
1796         opening modules.
1797
1798         * gtk/gtksettings.[hc]: Rework the way the color scheme setting
1799         is inherited. Now the overriding is done on a per-color basis,
1800         rather than for the setting as a whole. This has the effect
1801         that themes can declare defaults for all the symbolic colors they
1802         use by specifying a value for the gtk-color-scheme setting in 
1803         their rc file, while still allowing the XSetting to override
1804         "standard" symbolic colors. The hash table is now available
1805         through the color-hash property.
1806         
1807         * gtk/gtkrc.c: Use the new color-hash property.
1808         
1809 2005-12-14  Matthias Clasen  <mclasen@redhat.com>
1810
1811         * gtk/gtkcontainer.c (_gtk_container_focus_sort): Skip unrealized
1812         children when doing focus sorting.  (#323995, Dan Winship)
1813
1814 2005-12-14  Rodney Dawes  <dobey@novell.com>
1815
1816         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon):
1817         Default to "drive-harddisk" and then fall back to gnome-dev-harddisk
1818         (get_icon_for_mime_type): Look up the mime type icons according to the
1819         Icon Naming Specification and then fall back to the gnome-mime- prefix
1820         for the mime type icons
1821
1822         Fixes #323655
1823         
1824 2005-12-14  Matthias Clasen  <mclasen@redhat.com>
1825
1826         * gtk/gtkdnd.c (gtk_drag_set_icon_name): Warn if the icon
1827         cannot be loaded.  (#323504, Kjartan Maraas)
1828
1829         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add docs 
1830         for the row-activated signal.  (#324044, Davyd Madeley)
1831
1832 2005-12-14  Michael Natterer  <mitch@imendio.com>
1833
1834         * tests/test-images/valid_jpeg_progressive_test: new test image.
1835
1836 Tue Dec 13 09:47:20 2005  Tim Janik  <timj@gtk.org>
1837
1838         * README.in: added a link to the floating reference docs in the
1839         2.10 release NEWS section.
1840
1841 2005-12-12  Matthias Clasen  <mclasen@redhat.com>
1842
1843         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_index): 
1844         Speed this function up, using the fact that visibility is 
1845         constant across segments. (#321548, Paolo Borelli)
1846
1847         * gtk/gtktextbtree.c (_gtk_text_line_char_to_byte_offsets): 
1848         * gtk/gtktextiter.c (gtk_text_iter_backward_chars): Speed up
1849         stepping backwards.  (#320638, Larry Ewing, Paolo Borelli)
1850
1851         * gtk/gtkicontheme.c (ensure_valid_themes): Only broadcast
1852         _GTK_LOAD_ICONTHEMES if we detect a real theme change, not
1853         upon initial theme load.  (#323876, Peter Lund)
1854
1855         * gtk/gtkstatusicon.c (gtk_status_icon_class_init): Register
1856         the size-changed signal correctly.  (#323848, Murray Cumming)
1857
1858         * gtk/gtkmarshalers.list: Add necessary marshaller.
1859
1860         * gtk/gtktextview.c (gtk_text_view_get_border_window_size): Don't
1861         fall thru to the wrong window types.  (#323843)
1862
1863         Make the gtk-color-scheme setting work.
1864         
1865         * gtk/gtksettings.h: 
1866         * gtk/gtksettings.c (_gtk_settings_get_color_hash): Add a getter
1867         that takes care of initializing the color hash if it is not 
1868         already there.  
1869
1870         * gtk/gtkrc.c (gtk_rc_color_scheme_changed, gtk_rc_context_get): 
1871         And use it here.        
1872
1873 2005-12-10  Matthias Clasen  <mclasen@redhat.com>
1874
1875         * gdk/gdk.c (gdk_parse_args): Warn if parsing fails,
1876         not if it succeeds. 
1877
1878 2005-12-09  Matthias Clasen  <mclasen@redhat.com>
1879
1880         * gtk/gtkselection.c (gtk_selection_data_get_uris): Don't
1881         leak list[0].  (#323629, Markku Vire)
1882
1883         * gtk/gtktextbuffer.c (paste_from_buffer): Unref the buffer
1884         when freeing the RequestData.  (#323577)
1885
1886 2005-12-07  Matthias Clasen  <mclasen@redhat.com>
1887
1888         * demos/gtk-demo/iconview_edit.c (set_cell_color): Don't
1889         leak text.
1890
1891         * gtk/gtktoolbutton.c (clone_image_menu_size): Fix a 
1892         variable name clash.  (#323475, Ross Burton)
1893
1894 2005-12-07  Ross Burton  <ross@burtonini.com>
1895
1896         * docs/reference/gtk/tmpl/gtkenums.sgml:
1897         * gtk/gtktoolbutton.c:
1898         If the toolbar mode is ICONS and there is no icon set then show
1899         the label, and vice versa (#322019)
1900
1901 2005-12-07  Matthias Clasen  <mclasen@redhat.com>
1902
1903         * gtk/gtktoolbutton.c (clone_image_menu_size): Fix a 
1904         variable name clash.  (#323475, Ross Burton)
1905
1906         * gtk/gtktreeview.c (gtk_tree_view_key_press): Use the correct
1907         window when synthesizing the key event.  (#323077,
1908         Sadrul Habib Chowdhury)
1909         
1910         (gtk_tree_view_search_key_press_event): Also listen for
1911         GDK_ISO_Left_Tab.  (#323077, Sadrul Habib Chowdhury)
1912
1913         * gtk/gtktextview.c (gtk_text_view_preedit_changed_handler): 
1914         Only scroll if we have focus.  (#316310, Paolo Borelli)
1915
1916         * gtk/gtkfilesystemunix.c (cb_fill_in_mime_type): Fix a C99ism,
1917         spotted by Crispin Flowerday.
1918
1919 2005-12-06  Behdad Esfahbod  <behdad@gnome.org>
1920
1921         * gtk/gtksettings.c (settings_update_font_options): Turn metrics
1922         hinting on (part of #307196)
1923
1924 2005-12-06  Matthias Clasen  <mclasen@redhat.com>
1925
1926         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_reset): Don't
1927         commit from reset, it upstets GtkTextView.
1928
1929         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Be more
1930         careful when turning blinking on and off.
1931         (gtk_text_view_focus_out_event): Make the cursor really invisible
1932         when the focus goes away.  (#323087, Sadrul Habib Chowdhury)
1933         (cursor_blinks): Check the gtk-cursor-blink setting first.
1934
1935         * gtk/gtktreeview.c (gtk_tree_view_key_press): Fix refcounting
1936         issues with new_event and its window.
1937
1938         * gtk/gtkmenu.c (gtk_menu_attach_to_widget): Accept NULL
1939         as a detach func.  (#323386, Jorn Baayen)
1940
1941         * gtk/gtkcalendar.c: Avoid conflict with win32 headers in
1942         the libdate routines.  (#323045, Kazuki Iwamoto)
1943
1944         * gdk/gdk.c (gdk_parse_args): 
1945         * gtk/gtkmain.c (gtk_parse_args): Don't ignore errors
1946         from g_option_context_parse(). 
1947
1948 Tue Dec  6 11:37:59 2005  Tim Janik  <timj@gtk.org>
1949
1950         * gdk/gdkevents.c (gdk_event_new): fix missing hash table 
1951         initialization.
1952
1953 Tue Dec  6 10:32:17 2005  Tim Janik  <timj@gtk.org>
1954
1955         * gtk/gtkstatusbar.c: ported memchunk uses to g_slice, so the code
1956         compiles again.
1957
1958 2005-12-05  Federico Mena Quintero  <federico@ximian.com>
1959
1960         * gtk/gtkfilechooserdefault.c (trap_activate_cb): "event->state &
1961         modifiers", not "event->state && modifiers".  Patch by Sadrul
1962         Habib Chowdhury <imadil@gmail.com>.  Fixes bug #323073.
1963
1964 2005-12-05  Matthias Clasen  <mclasen@redhat.com>
1965
1966         * gtk/gtkwidget.c: 
1967         * gtk/gtkuimanager.c: 
1968         * gtk/gtktreedatalist.c: 
1969         * gtk/gtktext.c: 
1970         * gtk/gtkmain.c: 
1971         * gtk/gtkitemfactory.c: 
1972         * gtk/gtkseparator.[hc]:
1973         * gtk/gtkclist.[hc]: 
1974         * gtk/gtkctree.c:
1975         * gtk/gtkgc.c: Use g_slice instead of mem chunks.
1976
1977 2005-12-05  Michael Natterer  <mitch@imendio.com>
1978
1979         * gdk/x11/gdkevents-x11.c: map the new GtkSettings properties
1980         "timeout-initial", "timeout-repeat", "color-scheme" and
1981         "enable-animations" to X settings.
1982
1983 2005-12-05  Matthias Clasen  <mclasen@redhat.com>
1984
1985         * gdk/gdkevents.c: 
1986         * gdk/gdkcolor.c: Use g_slice instead of mem chunks.
1987
1988         * gtk/gtktreeview.c (gtk_tree_view_key_press): Free new_event
1989         after sending it to the search entry.  (#323209, Crispin Flowerday)
1990
1991         * README.in: Add a note about GTK_FLOATING.
1992
1993         * gtk/gtkobject.h (GTK_OBJECT_FLOATING): Use g_object_is_floating.
1994
1995 2005-12-02  Matthias Clasen  <mclasen@redhat.com>
1996
1997         * gtk/gtktoolbutton.c (clone_image_menu_size): Don't leak
1998         a pixbuf.  (#323024, Paolo Borelli)
1999
2000 2005-12-02  Matthias Clasen  <mclasen@redhat.com>
2001
2002         * gtk/gtkfilesystemunix.c (get_icon_for_mime_type): Don't crash
2003         if mime_type is NULL.  (#322998, Sadrul Habib Chowdhury)
2004
2005 2005-12-02  Michael Natterer  <mitch@imendio.com>
2006
2007         * gtk/gtkmenu.c: applied modified patch from maemo-gtk which
2008         adds a "horizontal-padding" style property. Fixes bug #323036.
2009
2010 2005-12-01  Michael Natterer  <mitch@imendio.com>
2011
2012         Merged modified patch from maemo-gtk that allows to disable
2013         toolbar animations. Addresses bug #142582.
2014
2015         * gtk/gtksettings.c: added boolean property "gtk-enable-animations".
2016         (patch from Christian Neumair)
2017
2018         * gtk/gtktoolbar.c: don't animate toolbar changes if the settings
2019         property is FALSE. Replaced the individual "notify::foo"
2020         connections to GtkSettings by a single "notify" callback and
2021         dispatch internally.
2022
2023 2005-12-01  Michael Natterer  <mitch@imendio.com>
2024
2025         * gtk/gtkmenu.c (gtk_menu_class_init): removed redundant
2026         assignment of widget_class->motion_notify_event.
2027
2028 2005-11-29  Matthias Clasen  <mclasen@redhat.com>
2029
2030         * gtk/gtktoggleaction.c (gtk_toggle_action_class_init): Add 
2031         an active property.  (#322673, Jorn Baayen)
2032
2033         Properly handle model changes in GtkTreeSelection: (#322569,
2034         Milosz Derezynski)
2035         
2036         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach): 
2037         Get a reference to the model, and stop the iteration if the model
2038         of the treeview is changed on the way.
2039
2040         * gtk/gtktreeprivate.h: 
2041         * gtk/gtktreeselection.c (_gtk_tree_selection_emit_changed): New 
2042         private function to emit the GtkTreeSelection::changed signal.
2043
2044         * gtk/gtktreeview.c (gtk_tree_view_set_model): Call 
2045         _gtk_tree_selection_emit_changed() when the model changes.
2046
2047 2005-11-28  Federico Mena Quintero  <federico@ximian.com>
2048
2049         Fixes the critical warnings from bug #317999, thus fixing the bug
2050         completely:
2051
2052         * gtk/gtkfilechooserdefault.c
2053         (gtk_file_chooser_default_get_paths): In SELECT_FOLDER mode,
2054         use _gtk_file_chooser_get_current_folder_path() instead of fetching the
2055         impl->current_folder directly.  The latter may be null if we are
2056         in RELOAD_NONE state.
2057
2058 2005-11-28  Federico Mena Quintero  <federico@ximian.com>
2059
2060         Fix bug #321560, based on a patch by Bogdan Nicula (bogdanni@hotmail.com):
2061
2062         * gtk/gtkfilechooserdefault.c (up_folder_handler): Don't add the
2063         current_folder to the pending select paths here; the path bar will
2064         give it to us now.
2065         (path_bar_clicked): Add the child_path to the pending select paths
2066         here.
2067         (show_and_select_paths): Don't filter out folders.
2068         (show_and_select_paths): Don't take separate arguments for
2069         only_one_path and multiple paths.
2070
2071         * tests/autotestfilechooser.c (test_folder_switch_and_filters):
2072         New test about preserving the filters when we change folders.
2073
2074 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
2075
2076         * gtk/gtkscale.c (_gtk_scale_format_value): Insert an LRM, to prevent
2077         -20 to come out as 20- in RTL locales.  (#322571, Tze'ela Hebron)
2078
2079         * gtk/gtkaction.c (gtk_action_sync_button_stock_id) 
2080         (connect_proxy): Buttons use the label property for stock ids.  (#322565,
2081         Milosz Derezynski)
2082
2083         * gtk/gtkiconview.c (update_text_cell, update_pixbuf_cell): Correctly
2084         handle the cell list and indices into it.  (#321856)
2085
2086 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
2087
2088         * gtk/gtktooltips.c (gtk_tooltips_timeout): Set timer_tag to 0 when
2089         the timeout is done.  (#322291, Jean-Yves Lefort)
2090
2091 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
2092
2093         * gtk/gtkfilechooserdefault.c (shortcuts_key_press_event_cb): Make
2094         F2 work for renaming bookmarks.  (#320822, Jaap A. Haitsma, patch
2095         by Paolo Borelli)
2096
2097 2005-11-28  Tor Lillqvist  <tml@novell.com>
2098
2099         * gdk/win32/gdkwindow-win32.c (gdk_window_set_urgency_hint):
2100         Implement the conditional use of FlashWindowEx() properly for MSVC
2101         compilations. The code was confusingly assuming that if compiled
2102         with a "new" compiler, it will only be run on "new" Windows
2103         versions. We want it to run on "old" versions, too, even if
2104         compiled with a "new" compiler. There are two orthogonal issues:
2105         whether the compiler defines the necessary API in its headers, and
2106         whether it is present at run-time. (#318077)
2107
2108         * gtk/gtkcalendar.c (gtk_calendar_init): Use GetLocaleInfo() on
2109         Windows to get the localized weekday and month names. strftime()
2110         in the Microsoft C library returns strings in the default codepage
2111         for the locale of the process, not the system codepage. Thus
2112         g_locale_to_utf8() isn't useable on the return value from
2113         strftime(). (#322603)
2114
2115 2005-11-27  Matthias Clasen  <mclasen@redhat.com>
2116
2117         * gtk/gtkmessagedialog.c (gtk_message_dialog_new_with_markup): 
2118         Fix an example.  (#322493, Elie De Brauwer)
2119         
2120         Fix two memory handling problems in GtkTreeView: (#322350, 
2121         Søren Sandmann)
2122         
2123         * gtk/gtktreeview.c (gtk_tree_view_destroy) 
2124         (gtk_tree_view_set_model): Remove all references to nodes in
2125         the old model.
2126         (gtk_tree_view_real_collapse_row): Unmark expanded_collapsed_node
2127         before removing the children.
2128
2129         * gtk/gtkcolorbutton.c (gtk_color_button_init): Don't leak a 
2130         PangoLayout here.  (#322505, Paolo Borelli)
2131
2132 2005-11-27  Tor Lillqvist  <tml@novell.com>
2133
2134         Once again rework Win32 window decoration code. Doesn't break
2135         #104514. The dialogs in gtk-demo now have the same decorations and
2136         behaviour as on X11. Tried to fix #322516 but it seems very hard
2137         to make the trivial sample program there behave as expected. OTOH,
2138         simply moving the gtk_window_decorate() call in the #322516 sample
2139         program after the call to gtk_widget_show() helps...
2140             
2141         * gdk/win32/gdkwindow-win32.c (set_or_clear_style_bits): Revert to
2142         the correct semantics. Each call to gdk_window_set_decorations()
2143         which calls this function is supposed to affect all decorations.
2144
2145         (decorate_based_on_hints): New function, looks at both geometry
2146         hints and type hint and sets window decorations based on
2147         that. Consolidate code from gdk_window_set_geometry_hints() and
2148         gdk_window_set_type_hint() here.
2149
2150         (gdk_window_set_geometry_hints, gdk_window_set_type_hint): Call
2151         decorate_based_on_hints().
2152
2153 2005-11-25  Dom Lachowicz <cinamod@hotmail.com>
2154
2155         * modules/engines/ms-windows/*.[ch]: Merge with gtk-wimp's CVS.
2156         Includes improved menu icon spacing, [+]/[-] expander drawing,
2157         status-bar gippie drawing, and notebook tab drawing.
2158         
2159 2005-11-24  Michael Natterer  <mitch@imendio.com>
2160
2161         * gtk/gtktoolbar.h (struct _GtkToolbar): changed two private guint
2162         that used to hold signal handler IDs to two guint of padding.
2163
2164         * gtk/gtktoolbar.c (struct _GtkToolbarPrivate): added them as
2165         gulong here.
2166
2167         (gtk_toolbar_screen_changed): changed accordingly.
2168
2169 Wed Nov 23 18:55:47 2005  Tim Janik  <timj@imendio.com>
2170
2171         * gtk/gtkobject.[hc]: deprecated floating/sink API and implemented it
2172         in terms of the GObject floating/sink API.
2173
2174         * gtk/gtkaboutdialog.c:
2175         * gtk/gtkaction.c:
2176         * gtk/gtkcellview.c:
2177         * gtk/gtkclist.c:
2178         * gtk/gtkcolorsel.c:
2179         * gtk/gtkcombobox.c:
2180         * gtk/gtkfilechooserdefault.c:
2181         * gtk/gtkiconview.c:
2182         * gtk/gtkinvisible.c:
2183         * gtk/gtkitemfactory.c:
2184         * gtk/gtklayout.c:
2185         * gtk/gtkmenu.c:
2186         * gtk/gtkmenutoolbutton.c:
2187         * gtk/gtknotebook.c:
2188         * gtk/gtkprogress.c:
2189         * gtk/gtkrange.c:
2190         * gtk/gtkspinbutton.c:
2191         * gtk/gtkstatusicon.c:
2192         * gtk/gtktext.c:
2193         * gtk/gtktextview.c:
2194         * gtk/gtktoolbar.c:
2195         * gtk/gtktoolbutton.c:
2196         * gtk/gtktoolitem.c:
2197         * gtk/gtktreeitem.c:
2198         * gtk/gtktreeview.c:
2199         * gtk/gtktreeviewcolumn.c:
2200         * gtk/gtkuimanager.c:
2201         * gtk/gtkviewport.c:
2202         * gtk/gtkwidget.c:
2203         * gtk/gtkwindow.c:
2204         ported to use GObject's g_object_ref_sink().
2205
2206         * gtk/gtkcolorsel.c:
2207         * gtk/gtkfilechooserdefault.c:
2208         * gtk/gtkaboutdialog.c:
2209         fixed compiler warnings.
2210
2211 2005-11-23  Matthias Clasen  <mclasen@redhat.com>
2212
2213         * gtk/gtksettings.c (gtk_settings_class_init): Add some docs
2214         about gtk-color-scheme.
2215
2216 2005-11-23  Behdad Esfahbod  <behdad@gnome.org>
2217
2218         * configure.in (enable_explicit_deps): Fix typo when checking
2219         libtool config deplibs_check_method. Moreover, enable explicit
2220         deps if we get anything other than pass_all from libtool. (part of
2221         #318750)
2222
2223 2005-11-23  Matthias Clasen  <mclasen@redhat.com>
2224
2225         * gtk/updateiconcache.c (write_csource): Don't create a big
2226         string, since Visual C++ doesn't like strings longer than 64k. 
2227         (#322238, Kazuki IWAMOTO
2228
2229         * gtk/gtkentry.c: Include gtkimcontextsimple.h  (#322235,
2230         Kazuki IWAMOTO)
2231
2232 2005-11-23  Michael Natterer  <mitch@imendio.com>
2233
2234         * gtk/gtkrc.c (gtk_rc_reset_widgets): don't leak all toplevel
2235         windows on other screens (correctly remove all temporary
2236         references).
2237
2238 2005-11-23  Michael Natterer  <mitch@imendio.com>
2239
2240         Added symbolic themable colors. Patch is a merged version of
2241         proposals from Matthias and maemo-gtk. Fixes bug #114355.
2242
2243         * configure.in: require glib >= 2.9.1 for refcountable hashtables.
2244
2245         * gtk/gtksettings.c: added property "color-scheme" which is a
2246         string defining colors like "foreground:black\nbackground:grey".
2247         Automatically provide a name->GdkColor hash table mapping for the
2248         color scheme.
2249
2250         * gtk/gtkrc.[ch]: added list of color hashes that works like the
2251         list of icon factories. Append the color scheme hash from
2252         GtkSettings if it exists. Extended gtkrc syntax to allow defining
2253         and referencing of logical colors. Also allow to modulate colors
2254         in gtkrc by using arbitrary expressions of mix(), shade(),
2255         lighter() and darker(). Added internal function
2256         _gtk_rc_style_get_color_hashes().
2257
2258         * gtk/gtkstyle.[ch]: keep a private list of color hashes around.
2259         Get the list from _gtk_rc_style_get_color_hashes(). Export
2260         internal function _gtk_style_shade() (used by above color
2261         expressions). Added public API gtk_style_lookup_color() which
2262         looks up a logical color by name.
2263
2264         * gtk/gtk.symbols: add gtk_style_lookup_color
2265
2266         * tests/testgtkrc: use symbolic colors for making
2267         the scrollbars red.
2268
2269 2005-11-22  Michael Natterer  <mitch@imendio.com>
2270
2271         Made button-press timeouts which work like key repeat timeouts
2272         configurable. Addresses bug #142582:
2273
2274         * gtk/gtksettings.c: added properties "gtk-timeout-initial" and
2275         "gtk-timeout-repeat" which defalt to 200/20 (ms).
2276
2277         Use the values from GtkSettings instead of hardcoding them
2278         (the repeat value is either taken as-is for fast repeat or
2279         multiplied by 5 for slow repeat). Changed all places to use these
2280         two standard initial/repeat timings:
2281
2282         * gtk/gtkcalendar.c (unchanged 200/20)
2283         * gtk/gtknotebook.c (unchanged 200/100)
2284         * gtk/gtkpathbar.c (changed from 300/150 to 200/100)
2285         * gtk/gtkrange.c (changed from 250/100 to 200/100)
2286         * gtk/gtkspinbutton.c (unchanged 200/20)
2287
2288 2005-11-21  Anders Carlsson  <andersca@imendio.com>
2289
2290         * configure.in:
2291         * gtk/Makefile.am:
2292         * gdk/Makefile.am:
2293         * gdk/quartz/*:
2294         Add quartz backend.
2295         
2296         * docs/tools/Makefile.am:
2297         Only build docshooter when the X11 backend is used.
2298         
2299         * gtk/gtkplug-stub.c:
2300         Include gtkplug.h here.
2301         
2302         * gtk/gtksocket-stub.c:
2303         Include gtksocket.h here.
2304         
2305 2005-11-21  Matthias Clasen  <mclasen@redhat.com>
2306
2307         * gtk/gtkinputdialog.c: Convert GtkInputDialog to 
2308         g_type_class_add_private.
2309
2310         * gtk/gtksocket.c: Convert GtkSocket to g_type_class_add_private.
2311
2312         * gtk/gtkmenu.c: Convert GtkMenu to g_type_class_add_private.
2313
2314         * gtk/gtk.symbols:
2315         * gtk/gtkcombobox.[hc]: Add a tearoff-title property,
2316         with getter and setter.  (#316482, Olexiy Avramchenko)
2317
2318         * tests/testcombo.c (main): Test gtk_combo_box_set_title
2319
2320         * gtk/gtkpathbar.c: Merge remaining fixes from the 2.8 branch,
2321         pointed out by Michael Natterer.
2322
2323         Fix for bug #321542, Benedikt Meurer:
2324         
2325         * gtk/gtkcombobox.c (gtk_combo_box_set_active_internal):
2326         Emit notify::active.
2327         
2328         (gtk_combo_box_child_show, gtk_combo_box_child_hide): Use
2329         g_signal_emit, not g_signal_emit_by_name.
2330
2331 2005-11-18  Matthias Clasen  <mclasen@redhat.com>
2332
2333         Fix crashes in connection with pathbar scrolling (#321560,
2334         Bogdan Nicula)
2335         
2336         * gtk/gtkpathbar.c (gtk_path_bar_update_slider_buttons): 
2337         Stop scrolling when desensitising slider buttons.
2338         (gtk_path_bar_scroll_timeout, gtk_path_bar_slider_button_press): 
2339         And use it here.  
2340
2341         * gtk/gtkpathbar.h (struct _GtkPathBar): Add a separate
2342         scrolling_down flag.
2343
2344 2005-11-18  Matthias Clasen  <mclasen@redhat.com>
2345
2346         * gtk/gtkpathbar.c (button_clicked_cb): Fix a C99ism.
2347         (#321777, Jens Granseuer)
2348
2349         * gtk/gtkaction.c (disconnect_proxy): Disconnect the
2350         sync callback for the visibility property.  (#321761,
2351         Philip Langdale)
2352
2353         Turn off input methods in invisible entries, since
2354         they are confusing.  (#317002, James Su)
2355         
2356         * gtk/gtkentry.c (gtk_entry_set_visibility): Toggle input
2357         methods if visibility changes.
2358         (popup_targets_received): Don't show the input method
2359         menu if the entry is invisible.  
2360
2361 2005-11-17  Matthias Clasen  <mclasen@redhat.com>
2362
2363         * README.in: Add a note about range arrow sensitivity.
2364
2365         * perf/treeview.c: const correctness fixes
2366         found by Arjan van de Ven and gcc.
2367
2368 2005-11-16  Michael Natterer  <mitch@imendio.com>
2369
2370         * gtk/gtkimage.c (animation_timeout): call
2371         gtk_window_process_updates() so the animation keeps running even
2372         if the main loop is busy with sources that eat a lot of cpu with
2373         high priority. Fixes bug #321444.
2374
2375         (gtk_image_new_from_animation): document the fact that the
2376         animation will stop running if the main loop is busy with sources
2377         that have priorities higher than G_PRIORITY_DEFAULT.
2378
2379         * tests/testimage.c: added test case that shows an animation even
2380         though a cpu-eating idle function is running.
2381
2382 2005-11-16  Michael Natterer  <mitch@imendio.com>
2383
2384         * gdk/x11/gdkevents-x11.c (_gdk_events_uninit): new internal
2385         function which destroys the display's event source. Also removes
2386         the source from the global display_sources list and unrefs it.
2387
2388         * gdk/x11/gdkprivate-x11.h: declare the function.
2389
2390         * gdk/x11/gdkdisplay-x11.c (gdk_display_x11_dispose): call it
2391         instead of half-destroying the source here.
2392
2393 2005-11-15  Matthias Clasen  <mclasen@redhat.com>
2394
2395         * gtk/gtktreestore.c (gtk_tree_store_move): Fix a memory
2396         leak.  (#321032, Peter Zelezny)
2397
2398 2005-11-15  Michael Natterer  <mitch@imendio.com>
2399
2400         * gdk/x11/gdkdisplay-x11.c (gdk_display_x11_finalize): destroy
2401         display->xid_ht as late as possible (right before XCloseDisplay)
2402         because it still needs to be around when the display's screens are
2403         finalized. (#85715)
2404
2405 2005-11-14  Matthias Clasen  <mclasen@redhat.com>
2406
2407         * gtk/gtkselection.c (gtk_selection_data_set_uris): Don't
2408         leak result.  (#321441, Tommi Komulainen)
2409
2410 2005-11-14  Matthias Clasen  <mclasen@redhat.com>
2411
2412         * gtk/gtkicontheme.c (gtk_icon_theme_get_icon_sizes):
2413         Don't crash if there is no builtin icon.
2414
2415 2005-11-14  Michael Natterer  <mitch@imendio.com>
2416
2417         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_set_property):
2418         removed redundant calls to g_object_notify().
2419
2420 2005-11-13  Matthias Clasen  <mclasen@redhat.com>
2421
2422         * gdk/gdkcolor.c (gdk_color_parse): Documentation 
2423         improvements.  (#321338)
2424
2425         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Make
2426         limit an inclusive boundary.  (#321299)
2427
2428 2005-11-12  Michael Natterer  <mitch@imendio.com>
2429
2430         * gtk/Makefile.am: fixed icon rules so gtkbuiltincache.h is only
2431         rebuilt if needed.
2432
2433 2005-11-12  Dom Lachowicz <cinamod@hotmail.com>
2434
2435         * modules/engines/ms-windows/msw_style.c: Bug #313627. Make win32 
2436         theme's handling of toolbars, handleboxes, and menubars more in-line
2437         with Microsoft's IE style.
2438         * modules/engines/ms-windows/*.c: Indentation cleanups
2439         
2440 2005-11-12  Matthias Clasen  <mclasen@redhat.com>
2441
2442         Make builtin icons work in gtk_window_set_icon_name() 
2443         (#321046, Maxim Udushlivy)
2444
2445         * gtk/gtkicontheme.c (insert_theme): Always insert the default
2446         theme.
2447         (ensure_valid_themes): Call _gtk_icon_theme_ensure_builtin_cache()
2448         from here.
2449         (theme_lookup_icon, find_builtin_icon): ...and not from here.
2450         (gtk_icon_theme_lookup_icon): Remove an unncessary assert.
2451         (gtk_icon_theme_get_icon_sizes): Also check builtin icons.
2452
2453 2005-11-12  Tor Lillqvist  <tml@novell.com>
2454
2455         * gtk/gtkfilesystemwin32.c (filename_get_info): Don't hide
2456         dotfiles, no such convention on Win32. Just hide files with the
2457         hidden attribute. (#314627)
2458
2459 2005-11-11  Federico Mena Quintero  <federico@ximian.com>
2460
2461         * gtk/gtkfilechooserdefault.c (shortcuts_insert_path): Do not
2462         check whether the path is a folder.  It is useful to bookmark
2463         files as well (e.g. todo.txt), and this will also help
2464         performance.
2465         (shortcuts_add_bookmark_from_path): Likewise.
2466         (shortcuts_activate_iter): Change folders or select files, as
2467         appropriate.
2468
2469 2005-11-11  Federico Mena Quintero  <federico@ximian.com>
2470
2471         * tests/autotestfilechooser.c (main): Use
2472         g_log_set_default_handler() instead of explicitly setting a
2473         handler for each domain.
2474
2475         * gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): Only get
2476         the base path of the volume if it is mounted.
2477
2478 2005-11-11  Michael Natterer  <mitch@imendio.com>
2479
2480         Added per-stepper API for GtkRange's stepper sensitivity as
2481         discussed in bug #321056:
2482
2483         * gtk/gtkenums.h: added GtkSensitivityType which can be
2484         { AUTO, ON, OFF }.
2485
2486         * gtk/gtkrange.[ch]: added properties "lower-stepper-sensitivity"
2487         and "upper-stepper-sensitivity" and public getters/setters for
2488         them. Changed stepper drawing to honor the new properties.
2489
2490         * gtk/gtk.symbols: added the new symbols.
2491
2492 2005-11-10  Matthias Clasen  <mclasen@redhat.com>
2493
2494         * gtk/gtkcombobox.c: Add show-popup and hide-popup signals and
2495         emit them when the popup is shown or hidden.  (#162531, Tommi
2496         Komulainen)
2497
2498         * tests/testcombo.c: Add an example of popuplating a combobox
2499         on click.
2500
2501         * gtk/gtktreeview.c (gtk_tree_view_motion_resize_column): Another
2502         erroneous semicolon.
2503
2504         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get): Remove an erroneous
2505         semicolon. 
2506
2507         Don't corrupt odd keymaps (#316638, Kean Johnston)
2508         
2509         * gdk/x11/gdkkeys-x11.c (set_symbol): Auxiliary function to
2510         handle frobbing keymaps with odd numbers of syms/code.
2511         
2512         * gdk/x11/gdkkeys-x11.c (update_keymaps): Use set_symbol() to 
2513         frob the keymap.
2514
2515         Improve navigation to parent folders.  (#318444, Andrei Yurkevich)
2516         
2517         * gtk/gtkpathbar.[hc]: Add a child_path argument to
2518         the path_clicked signal.
2519         * gtk/gtkfilechooserdefault.c (path_bar_clicked): Select the
2520         child_path, if it is provided.
2521         * gtk/marshalers.list (path_bar_clicked): Add the necessary
2522         glue.
2523
2524         * gtk/gtkmenu.c: Fix some compiler warnings. (#321141,
2525         Kjartan Maraas)
2526         
2527         * gtk/gtk.symbols: 
2528         * gtk/gtktreeview.h: 
2529         * gtk/gtktreeview.c: Implement a getter for headers-clickable.
2530         (#163851, Richard Hult)
2531
2532 2005-11-10  Michael Natterer  <mitch@imendio.com>
2533
2534         Applied patch from maemo-gtk that addresses many issues wrt
2535         display migration and display closing (bug #85715).
2536
2537         * gdk/gdkdisplay.c (gdk_display_dispose): don't just set the
2538         default display to NULL when it's closed. Instead set the most
2539         recently opened display as new default (if one exists).
2540
2541         * gdk/gdkpango.c (on_renderer_display_closed): fixed signature
2542         of this callback.
2543
2544         * gdk/gdkscreen.c (gdk_screen_dispose): check if the GCs still
2545         exist before unrefing them.
2546
2547         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): if the screen
2548         is closed, allow destruction of the root window.
2549
2550         * gdk/x11/gdkdisplay-x11.c: moved some stuff from finalize() to
2551         dispose(), free stuff that was leaked before.
2552
2553         * gdk/x11/gdkevents-x11.c (_gdk_x11_events_uninit_screen): check if
2554         the xsettings_client still exists before destroying it.
2555
2556         * gdk/x11/gdkkeys-x11.c: added finalization and free the allocated
2557         X resources.
2558
2559         * gdk/x11/gdkpixmap-x11.c: moved stuff from finalize() to new
2560         dispose() implementation.
2561
2562         * gdk/x11/gdkscreen-x11.c: moved stuff from finalize() to
2563         dispose() and check if it still exists before unrefing it. Set
2564         their pointers to NULL/None *after* upchaining in dispose(),
2565         because X11 implementations of members of the parent class still
2566         need them for their own destruction.
2567
2568         * gdk/x11/gdkvisual-x11.c: removed finalize() implementation which
2569         was g_error()ing when finalizing a visual.
2570
2571         * gtk/gtkclipboard.c (gtk_clipboard_finalize): don't use
2572         get_clipboard_widget() because it would create the widget if it
2573         doesn't exist. Use g_object_get_data() directly instead.
2574
2575         * gtk/gtktextdisplay.c (on_renderer_display_closed): fixed signature
2576         of this callback.
2577
2578 2005-11-10  Simos Xenitellis  <simos@gnome.org>
2579
2580         * configure.in: Added Tatar (tt) to ALL_LINGUAS.
2581
2582 Wed Nov  9 16:29:42 2005  Tim Janik  <timj@imendio.com>
2583
2584         * gtk/gtkrange.c: patch from maemo-gtk that changes GtkRange
2585         to render its arrows insensitive when the adjustment is in
2586         its min or max position. this makes range arrow behaviour 
2587         consistent with spin button behaviour. (#321056)
2588
2589 2005-11-09  Tor Lillqvist  <tml@novell.com>
2590
2591         * gdk/gdkinternals.h
2592         * gdk/gdk.c (gdk_debug_keys[]): Add new GDK_DEBUG_DRAW flag to
2593         the GdkDebugFlag enum.
2594
2595         * gdk/win32/gdkdrawable-win32.c: Use DRAW to trigger GDK_NOTEs in
2596         this file instead of MISC. Now asking for MISC will give mainly
2597         window manipulation debugging output with the Win32 backend.
2598
2599 2005-11-09  Tor Lillqvist  <tml@novell.com>
2600
2601         * gdk/win32/gdkwindow-win32.c: Remove unnecessary includes.
2602
2603         (_gdk_win32_get_adjusted_client_rect): Remove this two-line
2604         function which was used only in one place.
2605
2606         (get_outer_rect): Use _gdk_win32_adjust_client_rect().
2607
2608         (gdk_window_set_geometry_hints): If we have identical minimum and
2609         maximum size hints, remove the resize and maximize
2610         decorations/functions. (#104514)
2611
2612         If we have a maximum size hint, remove the maximize
2613         decoration/function but ensure the resize decoration/function is
2614         available. Otherwise ensure both resize and maximize
2615         decorations/functions are there.
2616
2617         (set_or_clear_style_bits): Factored out common code from
2618         gdk_window_set_decorations() and gdk_window_set_functions(). 
2619
2620         Hack the window style setting once more: Only touch the window
2621         style bits corresponding to the GdkWMDecoration or GdkWMFunction
2622         parameter bitmasks. Hopefully this finally is the correct thing to
2623         do. We used to clear all other bits than those that were being
2624         set, or set all other bits than those that were being cleared.
2625
2626         Take into account that adding or removing decorations leaves the
2627         window's outer size unchanged, i.e., the client area's size and
2628         position change. This is apparently not what we want, so change
2629         also the window's (outer) position and size appropriately so that
2630         the client area's position and size stay constant.
2631
2632         gtk-demo's color selector dialog is now non-resizable like on X11
2633         (I tested with metacity in GNOME). Torn off menus are shrinkable
2634         vertically but have a maximum size, and are not maximizable or
2635         minimizable, like on X11.
2636
2637         (gdk_window_set_decorations, gdk_window_set_functions): Let
2638         set_or_clear_decorations() do most of the job.
2639
2640         * gdk/win32/gdkprivate-win32.h: Remove declaration of
2641         _gdk_win32_get_adjusted_client_rect().
2642
2643 2005-11-09  Tor Lillqvist  <tml@novell.com>
2644
2645         * gdk/win32/gdkwindow-win32.h (struct _GdkWindowImplWin32)
2646         * gdk/win32/gdkwindow-win32.c (gdk_window_impl_win32_init,
2647         gdk_window_get_type_hint, gdk_window_get_type_hint): Store the
2648         type hint. Implement gdk_window_get_type_hint() by just returning
2649         the hint stored.
2650
2651 2005-11-09  Tor Lillqvist  <tml@novell.com>
2652
2653         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
2654         Remove code that has been permanently ifdeffed out for two years.
2655
2656 2005-11-08  Matthias Clasen  <mclasen@redhat.com>
2657
2658         * gdk/gdkgc.c (gdk_gc_finalize): Unref tile and stipple when
2659         finalizing a gc.  (#320789, Nickolay V. Shmyrev)
2660
2661         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Ignore
2662         icons if they would make the request large enough to cause
2663         Xlib to loose the connection.  (#320909, Claudio Saavedra)
2664
2665 2005-11-08  Michael Natterer  <mitch@imendio.com>
2666
2667         * gdk/gdk.symbols
2668         * gdk/gdkwindow.h
2669         * gdk/x11/gdkwindow-x11.c: added gdk_window_get_type_hint() (patch
2670         extracted from maemo-gtk). Fixes bug #320872.
2671
2672 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
2673
2674         * gtk/gtkfilechooserdefault.c (shortcuts_reorder): Don't
2675         looks the bookmark label when reordering.  (#320720, Jeremy Cook)
2676
2677         * gtk/gtkpathbar.[hc]: Set focus-on-click to FALSE for all buttons.
2678         Don't grab focus when a slider button is pressed, instead, use
2679         a bit in the pathbar struct to determine whether to scroll up
2680         or down.  (#314486, Carlos Garnacho)
2681
2682         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): 
2683         Don't popup the completions if the focus has already been
2684         moved somewhere else.  (#319914, Christian Persch)
2685
2686         * gtk/gtktoolitem.c (_gtk_tool_item_toolbar_reconfigured): 
2687         Raise the drag_window after reconfiguring the 
2688         toolbar.  (#320803, Christian Persch)
2689
2690         * gtk/gtk.symbols: 
2691         * gtk/gtkfilechooserbutton.h: 
2692         * gtk/gtkfilechooserbutton.c: Add a focus-on-click property
2693         with setter and getter.  (#318945, Christian Persch)
2694         
2695 Mon Nov  7 16:15:16 2005  Tim Janik  <timj@imendio.com>
2696
2697         * configure.in: fixed missing $X_CFLAGS setup in case x11.pc is present.
2698
2699 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
2700
2701         * configure.in: Adjust to the stock icon changes.
2702         
2703 2005-11-07  Tor Lillqvist  <tml@novell.com>
2704
2705         * gdk/win32/gdkcursor-win32.c (pixbuf_to_hbitmaps_normal):
2706         Correct the calculation of maskstride. (#320152, Peter Zelezny)
2707         
2708 2005-11-06  Michael Natterer  <mitch@imendio.com>
2709
2710         * gtk/Makefile.am (icons): fixed rule to actually create the
2711         symlinks, erroring out if anything goes wrong.
2712
2713 2005-11-06  Tor Lillqvist  <tml@novell.com>
2714
2715         * gtk/updateiconcache.c (build_cache): Can't rename a file if the
2716         target exists on Win32. First rename the target temporarily, then
2717         if the renaming of the source to target fails, restore the
2718         original name for the target.
2719
2720         * gtk/Makefile.am: Use EXEEXT in the dependency on gtk-update-icon-cache.
2721
2722 2005-11-06  Tor Lillqvist  <tml@novell.com>
2723
2724         (pixbuf_to_hbitmaps_alpha_winxp): Use an 1-bit mask bitmap,
2725         like pixbuf_to_hbitmaps_normal().
2726         (_gdk_win32_pixbuf_to_hicon_supports_alpha): Check
2727         G_WIN32_IS_NT_BASED() first, so we can pretend being on Win9x by
2728         setting the G_WIN32_PRETEND_WIN9X environment variable.
2729         
2730 2005-11-06  Tor Lillqvist  <tml@novell.com>
2731
2732         Make icon masks work on Win98 (#320152, Peter Zelezny)
2733
2734         * gdk/win32/gdkcursor-win32.c (create_color_bitmap): Take also a
2735         parameter for the depth of the bitmap, so that this function can
2736         be used to create 1-bit bitmaps, too.
2737         (pixbuf_to_hbitmaps_normal): Create an 1-bit bitmap for the mask,
2738         and initialize it properly.
2739
2740 2005-11-04  Matthias Clasen  <mclasen@redhat.com>
2741
2742         Store builtin stock icons in an icon cache, instead of
2743         populating a hash table with pixbufs at startup, to save both
2744         memory and startup time.
2745
2746         * gtk/stock-icons/*: Reorganize the icons in a directory structure
2747         suitable for gtk-update-icon-cache, and rename them to match the
2748         stock ids.
2749
2750         * gtk/gtkiconcache.[hc]: Support non-mmapped icon caches, and
2751         add _gtk_icon_cache_has_icon_in_directory().
2752
2753         * gtk/updateiconcache.c: Support a --source <VARIABLE> argument
2754         to store the contents of the icon cache in a C header.
2755
2756         * gtk/gtkbuiltincache.h: Generated private header which contains 
2757         the icon cache for the builtin icons.
2758
2759         * gtk/gtkicontheme.c: Create a GtkIconCache for the builtin
2760         icons, and use that in addition to the hash table whenever
2761         builtin icons are searched.
2762
2763         * gtk/gtkiconfactory.c: Add GTK_ICON_SOURCE_STATIC_ICON_NAME and
2764         use it for static stock ids. 
2765         (get_default_icons): Don't add the builtin
2766         icons to the icon theme, just register the stock ids.
2767         (render_fallback_image): Take the fallback image out of the
2768         builtin icon cache.
2769         
2770         * gtk/Makefile.am: Remove stock-icons from SUBDIRS and add 
2771         the necessary machinery to rebuild gtkbuiltincache.h.
2772
2773 2005-11-04  Michael Natterer  <mitch@imendio.com>
2774
2775         * gtk/gtkrc.c (gtk_rc_reparse_all_for_settings): applied patch
2776         from maemo-gtk that changes the mtime check for rc files from
2777         '>' to '!=', otherwise theme changes go unnoticed when turning
2778         back the clock (Tommi Komulainen).
2779
2780 2005-11-04  Tor Lillqvist  <tml@novell.com>
2781
2782         * gtk/gtkstatusicon.c (gtk_status_icon_set_tooltip): Plug memory
2783         leak on Win32.
2784
2785 2005-11-03  Tor Lillqvist  <tml@novell.com>
2786
2787         * gdk/win32/gdkcursor-win32.c: As there is only one GdkDisplay in
2788         the Win32 backend, check that GdkDisplay* parameters are equal to
2789         _gdk_display instead of using the unnecessarily general
2790         GDK_IS_DISPLAY().
2791
2792         (pixbuf_to_hbitmaps_alpha_winxp): Rename the variables for the
2793         color bitmap to have "color" in their name, for similarity with
2794         pixbuf_to_hbitmaps_normal(). Create a color bitmap for the mask,
2795         too, instead of creating a b&w bitmap with CreateBitmap(). Set up
2796         the mask bitmap's contents, ones for those pixels in the color
2797         bitmap where the alpha is zero, zero for other pixels. We used to
2798         use an uninitialized mask bitmap! This meant that icons and
2799         cursors created presumably worked more or less by accident.
2800         Totally blank icons with zero alpha everywhere (as used by
2801         gtktrayicon.c) definitely did not work as expected.
2802
2803         * gtk/Makefile.am: Include gtkstatusicon.c on all platforms.
2804
2805         * gtk/gtkstatusicon.c: Implement for Win32. Use code from
2806         gtktrayicon-win32.c as applicable. (gtktrayicon-win32.c is not
2807         necessary and can be removed from CVS. It has never been mentioned
2808         in gtk/Makefile.am.) No tray icon widget, GtkImage or GtkTooltips
2809         are used on Win32. One label widget is used (but never shown) as
2810         gtk_widget_render_icon() needs a widget.
2811
2812         Ifdefs used as necessary in several places. It might be cleaner to
2813         split out the backend-specific parts to separate files, or at
2814         least collect them into separate blocks in the file.
2815
2816         (wndproc): New function. Window procedure to monitor mouse events
2817         in the system tray icon. Call gtk_status_icon_button_press() as
2818         needed.
2819         (create_tray_observer): New function. Creates a hidden window that
2820         only serves as a tray icon message observer.
2821
2822         * tests/teststatusicon.c (icon_activated): Position the dialog
2823         with GTK_WIN_POS_CENTER.
2824         (do_quit): New function, hide and unref the GtkStatusIcon, and
2825         call gtk_main_quit().
2826         (popup_menu): Add a Quit menu item that calls do_quit().
2827         
2828 2005-11-02  Tor Lillqvist  <tml@novell.com>
2829
2830         * gdk/win32/gdkcolor-win32.c
2831         * gdk/win32/gdkscreen-win32.c
2832         * gdk/win32/gdkwindow-win32.c: Whitespace consistency
2833         fixes. Remove superfluous test for GdkWindow* parameters being
2834         non-NULL. Testing GDK_IS_WINDOW() is enough. As there is only one
2835         GdkScreen and one GdkDisplay in the Win32 backend, use those
2836         variables instead of the getter functions. For GdkDisplay* and
2837         GdkScreen* parameters, check that they are equal to the
2838         corresponding singleton variables instead of the more general
2839         GDK_IS_DISPLAY() or GDK_IS_SCREEN().
2840
2841 2005-11-02  Matthias Clasen  <mclasen@redhat.com>
2842
2843         * gtk/gtktextview.c: Remove some g_return_if_fail() from
2844         static functions, replace some others by g_assert().
2845         
2846         * gtk/gtktextview.c (selection_motion_event_handler) 
2847         (gtk_text_view_start_selection_drag): Keep track of the original
2848         selection boundaries during a drag selection, in order to correctly
2849         decide when to extend or shrink the selection.  (#320167,
2850         reported by Arvind S N, patch by Paolo Borelli)
2851
2852         * gtk/gtktextbtree.c (_gtk_text_line_char_to_byte_offsets): 
2853         * gtk/gtktextiter.c (gtk_text_iter_backward_chars): Replace
2854         manual offset calculations by g_utf8_offset_to_pointer().
2855         (#320360, Paolo Borelli)
2856
2857 Tue Nov  1 16:18:24 2005  Tim Janik  <timj@imendio.com>
2858
2859         * gtk/gtkrbtree.[hc]: get rid of GAllocator usage, allocate and free 
2860         nodes via the g_slice_*() API.
2861         _gtk_rbtree_new(): fixed wrong node allocation via g_new().
2862
2863 2005-11-01  Tor Lillqvist  <tml@novell.com>
2864
2865         * gdk/win32/gdkprivate-win32.h
2866         * gdk/win32/gdkglobals-win32.c
2867         * gdk/win32/gdkmain-win32.c (_gdk_windowing_init): Add more
2868         pre-interned GdkAtoms and pre-registered clipboard formats. Sort
2869         their declarations, definitions and assignments into a more
2870         logical and consistent order.
2871
2872         * gdk/win32/gdkmain-win32.c (_gdk_win32_cf_to_string): Include the
2873         CF_ prefix for the predefined clipboard format names. Put quotes
2874         around registered format names to distinguish them.
2875         
2876         * gdk/win32/gdkproperty-win32.c (gdk_property_change): Return
2877         immediately with a warning if the property type is STRING, TEXT,
2878         COMPOUND_TEXT or SAVE_TARGETS, as these are X11-specific that we
2879         should never pretend to handle on Win32. Handle only UTF8_STRING
2880         here, other formats with delayed rendering. Use \uc1 instead of
2881         \uc0 when generating Rich Text Format for easier testability on
2882         XP, where WordPad misinterprets \uc0 encoded characters. Add more
2883         GDK_NOTE debugging output for Clipboard operations.
2884
2885         * gdk/win32/gdkselection-win32.c: Debugging printout improvements.
2886         (gdk_selection_convert): Don't pretent to handle STRING, just
2887         UTF8_STRING. Streamline error handling, don't unnecessarily have a
2888         GError which then isn't used for anything anyway if it gets set.
2889         (gdk_win32_selection_add_targets): Skip also STRING, TEXT,
2890         COMPOUND_TEXT and SAVE_TARGETS in addition to UTF8_STRING.
2891
2892         * config.h.win32.in: Sync with what configure produces.
2893
2894         * configure.in: Don't look for X_PACKAGES unless building for
2895         x11. (#313986, John Ehresman)
2896
2897 2005-10-28  Erdal Ronahi  <erdal.ronahi@gmail.com>
2898
2899         * configure.in: Added ku (Kurdish) to ALL_LINGUAS
2900                         Wondered why there was no ku there before??
2901
2902 2005-10-28  Matthias Clasen  <mclasen@redhat.com>
2903
2904         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): Add the popup
2905         window to the toplevels window group.  (#319912, Christian Persch)
2906
2907 2005-10-28  Kristian Rietveld  <kris@gtk.org>
2908
2909         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_deleted): fix
2910         stupid thinko.
2911
2912 2005-10-28  Matthias Clasen  <mclasen@redhat.com>
2913
2914         * gtk/gtkdnd.c (gtk_drag_get_cursor): Fix the anchor of the default
2915         drag cursors.  (#319200, Federico Mena Quintero)
2916
2917         * gtk/gtktreeview.c (gtk_tree_view_search_key_press_event): Handle
2918         Shift-G to go to the previous match, like firefox.  (#320061, Christian 
2919         Neumair)
2920
2921         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_build_level): Fix a
2922         C99ism.  (#320000, Kazuki Iwamoto)
2923
2924         * gtk/gtkaboutdialog.c (gtk_about_dialog_init): Add the little 
2925         stars.  (#319985, Bastien Nocera)
2926
2927         * gtk/gtktreeview.c (gtk_tree_view_search_entry_flush_timeout): Return
2928         FALSE, so we don't flush repeatedly.  (#319151, Alexander Larsson)
2929
2930 2005-10-26  Michael Natterer  <mitch@imendio.com>
2931
2932         Fix bug #319974:
2933
2934         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
2935         make sure that setting any of pixbuf/stock-id/icon-name resets the
2936         others because they are mutually exclusive, and that unsetting any
2937         of them only resets the pixbuf and nothing else. Also added
2938         some missing g_object_notify().
2939
2940         (gtk_cell_renderer_pixbuf_get_property): simplified calls to
2941         g_value_set_object().
2942
2943         (gtk_cell_renderer_pixbuf_create_stock_pixbuf)
2944         (gtk_cell_renderer_pixbuf_create_named_icon_pixbuf): added
2945         g_object_notify ("pixbuf").
2946
2947 2005-10-27  Matthias Clasen  <mclasen@redhat.com>
2948
2949         * gtk/gtktreeview.c (gtk_tree_view_button_press): Be more 
2950         careful about initializing cell_area.  (#319382, Tommi
2951         Komulainen)
2952
2953         * gtk/gtkcombobox.c (gtk_combo_box_key_press): Don't eat
2954         Ctrl-PageUp/PageDown.  (#318670, Christian Neumair)
2955
2956         * demos/gtk-demo/clipboard.c (paste_received): Only set the
2957         text if it is not NULL.  (#319930, Thomas Klausner)
2958
2959         * gtk/gtkselection.c (gtk_selection_data_get_pixbuf): Close the
2960         loader before trying to get the pixbuf.  (#319930, Thomas Klausner)
2961
2962 2005-10-26  Matthias Clasen  <mclasen@redhat.com>
2963
2964         * gtk/gtkfilesystem.c (gtk_file_system_module_load): 
2965         * gtk/gtkthemes.c (gtk_theme_engine_load): 
2966         * gtk/gtkimmodule.c (gtk_im_module_load): Use G_MODULE_BIND_LAZY
2967         when dlopening modules.  (#319557, Laszlo Peter)
2968
2969 2005-10-26  Matthias Clasen  <mclasen@redhat.com>
2970
2971         * gtk/gtktextbtree.c (gtk_text_btree_resolve_bidi): Only use text
2972         segments when determining text direction.  (#319065, Tommi Komulainen)
2973
2974         * gtk/gtktreeview.c (gtk_tree_view_destroy): Don't crash
2975         on duplicate destroy.  (#318953, Gustavo Carneiro)
2976
2977         * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_new_with_dialog): 
2978         Point out that destroy-with-parent is a bad idea for the dialog
2979         passed to this function.  (#318943, Christian Persch)
2980
2981         * */Makefile.am: use $(GLIB_MKENUMS) instead of 
2982         glib-mkenums.  (#318582, Damien Carbery)
2983
2984         * gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Clarify
2985         docs.  (#317682, Christian Neumair)
2986
2987         * gdk/x11/gdkdnd-x11.c: Remove an extra const which doesn't
2988         seem to affect the placement of the data in the readonly 
2989         section, and causes problems with some compilers.  (#317844)
2990
2991 2005-10-25  Matthias Clasen  <mclasen@redhat.com>
2992
2993         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
2994         Fix some issues with background drawing in RTL.  (#318781,
2995         Eric Cazeaux)
2996
2997         * tests/Makefile.am:
2998         * tests/testentrycompletion.c: Apply a patch by Christian
2999         Persch to add property editors.
3000
3001         * gtk/gtkstatusicon.c: Emit activate on single-click,
3002         not on double-click, change proposed by Milosz Derezynski.
3003
3004 2005-10-25  Kristian Rietveld  <kris@gtk.org>
3005
3006         Fixes #311955, reported by Markku Vire; and a lot more.
3007
3008         * gtk/gtktreemodelfilter.c: Made this thing work correctly.
3009         Levels can now have invisible nodes cached, functions have been
3010         rewritten/refactored to take this into account; also the logic in
3011         some functions has been corrected.
3012         
3013         Each referenced node now references all visible children or a single
3014         invisible child, in order to be able to monitor all changes in the
3015         child model required for correct operation.
3016
3017         When a virtual root is set, all nodes on the virtual root level are
3018         referenced.
3019
3020         At last, a bunch of random bug fixes and comment updates.
3021
3022 2005-10-25  Matthias Clasen  <mclasen@redhat.com>
3023
3024         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Add some
3025         more docs.  (#319722, Paolo Borelli)
3026
3027         * gdk/x11/gdkxftdefaults.c (init_xft_settings): Make the 
3028         initialization of screen_x11->xft_rgba more explicit.  (#319627,
3029         Bogdan Nicula)
3030
3031         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Fix whitespace
3032         in a blurb.  (#319499, Francisco Javier F. Serrador)
3033
3034 2005-10-24  Matthias Clasen  <mclasen@redhat.com>
3035
3036         Add settings to hide the input method and Unicode control character
3037         submenus in the context menus of GtkEntry and GtkTextView.  
3038         
3039         * gdk/x11/gdkevents-x11.c: Map GTK+ settings to X settings.
3040         
3041         * gtk/gtksettings.c (gtk_settings_class_init): Declare GTK+ settings here.
3042
3043         * gtk/gtktextview.c (popup_targets_received): 
3044         * gtk/gtkentry.c (popup_targets_received): Use the settings here.
3045
3046 2005-10-24  Kristian Rietveld  <kris@gtk.org>
3047
3048         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): emitting
3049         row-has-child-toggled when the level is not in the cache does not
3050         make sense.  (This bug probably crept in during the early stages
3051         of GtkTreeModelSort when there wasn't a correct row-has-child-toggled
3052         implementation yet),
3053         (gtk_tree_model_sort_real_unref_node): only get the child iter
3054         when we will actually also use it.
3055
3056 2005-10-22  Michael Natterer  <mitch@imendio.com>
3057
3058         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): check for the
3059         widget being realized, in addition to being visible, to avoid
3060         running into precondition check in gtk_tree_view_get_cell_area().
3061         (approved by Kris).
3062
3063 2005-10-22  Dom Lachowicz <cinamod@hotmail.com>
3064
3065         * modules/engines/ms-windows/msw_style.c (setup_msw_rc_style): 
3066         Experimentally, scrollbar steppers can shrink to 8 pixels on 
3067         Win32. Reflect that in the theme.
3068         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Experimentally,
3069         there is a 1-pixel border between a scrollbar and its child
3070         in ScrolledWindows on Win32. Reflect that in the theme.
3071         
3072 2005-10-20  Matthias Clasen  <mclasen@redhat.com>
3073
3074         * gtk/gtklabel.c (gtk_label_create_window): Use GDK_WINDOW_CHILD
3075         for the selection window.  (#318806, Alex Larsson)
3076
3077 2005-10-18  Federico Mena Quintero  <federico@ximian.com>
3078
3079         Fixes bug #317999:
3080
3081         * tests/autotestfilechooser.c
3082         (test_button_folder_states_for_action): Test that we have either
3083         $cwd or the explicitly-set folder.
3084         (test_reload_sequence): Likewise.
3085
3086         * gtk/gtkfilechooserdefault.c
3087         (gtk_file_chooser_default_get_current_folder): If our reload_state
3088         is RELOAD_EMPTY, return a GtkFilePath corresponding to $cwd.
3089
3090 2005-10-14  Tor Lillqvist  <tml@novell.com>
3091
3092         * gdk/win32/gdkdisplay-win32.c: Remove the clipboard viewer code.
3093         It didn't really do anything useful, and was just confusing and
3094         incomplete. Comments claimed we don't do delayed rendering, but in
3095         fact we do, for images. (The delayed rendering code has other
3096         problems, though, see #168173.) The clipboard viewer code was
3097         probably even buggy (the WM_CHANGECBCHAIN handled didn't propagate
3098         the message when necessary). It was just test code, it said so in
3099         a comment. Add something similar back later if necessary.
3100
3101         (_win32_on_clipboard_change,
3102         _gdk_win32_register_clipboard_notification): Remove.
3103
3104         (gdk_display_supports_selection_notification,
3105         gdk_display_request_selection_notification): Always just return
3106         FALSE. We didn't generate any GDK_OWNER_CHANGE events anywhere.
3107
3108 2005-10-13  Tor Lillqvist  <tml@novell.com>
3109
3110         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't treat
3111         Alt-Enter specially. It does not have any special meaning and
3112         should be passed on to the application. (#318378, Tim Evans)
3113
3114 2005-10-13  Tor Lillqvist  <tml@novell.com>
3115
3116         Set visual depth to 24 for 32 bits-per-pixel devices on
3117         Win32. This allows gdk_drawable_real_draw_pixbuf() to use the
3118         optimized composite_0888() function rather than the slower image
3119         dithering functions to draw pixbufs (#313993, John Ehresman)
3120
3121         * gdk/win32/gdkimage-win32.c (_gdk_win32_new_image): Use
3122         _gdk_windowing_get_bits_for_depth() to initialize
3123         GdkImage::bits_per_pixel.
3124         (_gdk_windowing_get_bits_for_depth): Return 32 bits for depth 24.
3125
3126         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use
3127         _gdk_windowing_get_bits_for_depth() to initialize
3128         BITMAPINFOHEADER::biBitCount.
3129
3130         * gdk/win32/gdkvisual-win32.c (_gdk_visual_init): Set
3131         GdkVisual::depth to 24 even if GetDeviceCaps(BITSPIXEL) returns
3132         32.
3133
3134 2005-10-12  Stefan Kost  <ensonic@users.sf.net>
3135
3136         * demos/gtk-demo/appwindow.c: (about_cb):
3137           use PACKAGE_VERSION,bump year (#318654)
3138
3139 2005-10-11  Matthias Clasen  <mclasen@redhat.com>
3140
3141         * gtk/gtktextbtree.c (_gtk_text_btree_delete): Try to match an off 
3142         toggle here with the matching on toggle if it immediately follows. 
3143         This is a common case, and handling it here prevents quadratic blowup 
3144         in cleanup_line() below.  (#317125)
3145
3146         * gtk/gtktextsegment.h: 
3147         * gtk/gtktextsegment.c (_gtk_char_segment_new_from_two_strings): Pass
3148         the character counts into this function instead of computing them
3149         again.
3150
3151 2005-10-10  Tommi Komulainen  <tommi.komulainen@iki.fi>
3152
3153         * gtk/gtkfilechooser.h (GtkFileChooserError): Add ALREADY_EXISTS error
3154         code.
3155         * gtk/gtkfilechooserdefault.c
3156         (gtk_file_chooser_default_add_shortcut_folder): Return an error code
3157         when the shortcut already exists in the sidebar.  (#147521)
3158
3159 2005-10-09  Matthias Clasen  <mclasen@redhat.com>
3160
3161         * tests/testcombo.c: Demonstrate how to use custom widgets in
3162         a GtkComboBox.  
3163
3164 2005-10-07  Federico Mena Quintero  <federico@ximian.com>
3165
3166         Fixes bug #317999:
3167
3168         * tests/autotestfilechooser.c (test_reload_sequence): Ensure that
3169         the the result of gtk_file_chooser_get_folder() is NULL or
3170         non-NULL at the right times.  Log the tests.
3171         (test_button_folder_states): New test for the initial states of
3172         the current folder in GtkFileChooserButton.
3173         (main): Test that the number of warnings/errors/critical errors is
3174         zero.
3175
3176         * gtk/gtkfilechooser.c (gtk_file_chooser_get_current_folder):
3177         Clarify the documentation on when this can return NULL.
3178         (gtk_file_chooser_get_current_folder_uri): Likewise.
3179
3180         * gtk/gtkfilechooserbutton.c (struct
3181         _GtkFileChooserButtonPrivate): Added a folder_has_been_set flag;
3182         we use it to keep track of whether a folder has been set.
3183         (gtk_file_chooser_button_map):  Implement.  If no folder has been
3184         loaded before, we at least try to load $cwd here.
3185         (gtk_file_chooser_button_constructor): If the construct-time
3186         dialog already has a folder set, turn on our folder_has_been_set
3187         flag.
3188         (dialog_current_folder_changed_cb): Turn on our
3189         folder_has_been_set flag.
3190
3191 2005-10-07  Michael Natterer  <mitch@gimp.org>
3192
3193         * gtk/gtkfilechooserdefault.c: remove some explicit #defines of
3194         PROFILE_FILE_CHOOSER because they break compilation after the
3195         removal of <unistd.h>.
3196
3197 2005-10-07   Matthias Clasen  <mclasen@redhat.com>
3198
3199         * gtk/gtkfilechooserdefault.c: Properly fix the unistd.h include
3200         by moving it out of the profiling ifdef.
3201
3202         * gtk/gtkfilechooserdefault.c: Remove a redundant (and
3203         unconditional) include of unistd.h  (#318211, Kazuki Iwamoto)
3204
3205         * gtk/gtktexttag.c (gtk_text_attributes_ref): Use
3206         g_return_val_if_fail(), not g_return_if_fail().  (#318412,
3207         Kazuki Iwamoto)
3208
3209 2005-10-06  Matthias Clasen  <mclasen@redhat.com> 
3210                 
3211         * gtk/gtk.symbols:
3212         * gtk/gtktextbuffer.h:
3213         * gtk/gtktextbuffer.c: Add a readonly has-selection property
3214         with a getter.  (#318161, Paolo Borelli)
3215
3216 2005-10-05  Matthias Clasen  <mclasen@redhat.com>
3217
3218         * README.in: Start collecting release notes for 2.10.
3219
3220         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Readd the memory
3221         leak fix, since the assertion failures were traced to 
3222         an xchat bug.  (#314696)
3223         
3224         * gtk/gtkstyle.c (gtk_style_detach):
3225         (gtk_style_attach):  Documentation improvements.
3226         (gtk_style_detach): Assert that the attach_count is > 0.
3227
3228 2005-10-04  Federico Mena Quintero  <federico@ximian.com>
3229
3230         * gtk/gtkfilechooserdefault.c (switch_to_shortcut): Take a
3231         shortcut position, not a ShortcutsIndex, to make the function more
3232         generic.
3233         (home_folder_handler): Pass the resolved index to
3234         switch_to_shortcut(), rather than just SHORTCUTS_HOME.
3235         (desktop_folder_handler): Likewise for SHORTCUTS_DESKTOP.
3236         (gtk_file_chooser_default_class_init): Add a "quick-bookmark"
3237         binding signal, and bind it to Alt-1, Alt-2. ..., Alt-0.  These
3238         make the respective key switch to the first, second, ..., tenth
3239         bookmark.
3240         (quick_bookmark_handler): Implement.
3241
3242 2005-10-04  Federico Mena Quintero  <federico@ximian.com>
3243
3244         * gtk/gtkpathbar.c (get_dir_name): Don't special-case Home and
3245         Desktop; just use their real names on the file system for the
3246         user-visible names.
3247
3248         * gtk/gtkfilechooserdefault.c
3249         (gtk_file_chooser_default_class_init): Add a "desktop-folder"
3250         binding signal, and bind it to M-d by default.
3251         (desktop_folder_handler): Implement the default handler.
3252         (home_folder_handler): Use a helper function.
3253         (switch_to_shortcut): New helper function.
3254         (shortcuts_append_home): Don't special-case the name of "Home";
3255         just use the folder name.
3256
3257 2005-10-04  Tor Lillqvist  <tml@novell.com>
3258
3259         * gtk/gtkcalendar.c (gtk_calendar_init): Make it compile without
3260         HAVE__NL_TIME_FIRST_WEEKDAY. (#317910, Mathias Hasselmann)
3261
3262 2005-10-04  Matthias Clasen  <mclasen@redhat.com>
3263
3264         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Revert the change
3265         from yesterday, since it leads to assertion failures.  (#317879,
3266         Sebastian Bacher)
3267
3268 2005-10-03  Matthias Clasen  <mclasen@redhat.com>
3269
3270         * gtk/gtkcalendar.c (gtk_calendar_init): Call 
3271         calendar_compute_days() after setting priv->week_start.
3272
3273 2005-10-03  Matthias Clasen  <mclasen@redhat.com>
3274
3275         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Unref the style when
3276         removing it from the hash table.  (#314696, Benjamin Berg)
3277
3278 2005-10-01  Tor Lillqvist  <tml@novell.com>
3279
3280         * gdk/win32/gdkdrawable-win32.c (blit_from_pixmap): In case
3281         BitBlt() fails with ERROR_INVALID_HANDLE, the most probable cause
3282         is that the the desktop isn't visible because the session has been
3283         switched, the screen is locked, or a terminal server session
3284         disconnected, so no error message necessary. (#137796)
3285
3286         It is of course remotely possible that BitBlt() failing with
3287         ERROR_INVALID_HANDLE might also be caused by some other
3288         problem. We could strive for perfection and track whether the
3289         desktop is visible by using WTSRegisterSessionNotification() and
3290         handling WM_WTSESSION_CHANGE. I think that's overdoing it just for
3291         this issue, though. If we would track desktop visibility, we
3292         should then avoid even trying to update the display at all while
3293         the desktop isn't visible.
3294
3295 2005-09-30  Matthias Clasen  <mclasen@redhat.com>
3296
3297         * gtk/gtkcalendar.c (gtk_calendar_init): Another attempt
3298         to correct the calculations for the first week day. We may
3299         just have to remove this code if too many locales turn out 
3300         to have broken data. 
3301
3302         * gtk/gtkimage.c (gtk_image_expose): Don't leak pixbuf in
3303         some cases.  (#317611, Tommi Komulainen)
3304
3305         * gtk/gtksocket-x11.c (_gtk_socket_windowing_size_request):
3306         Prevent overflow when storing size hints in an unsigned
3307         short variable. Tracked down by Ray Strode and Søren Sandmann.
3308
3309 2005-09-29  Matthias Clasen  <mclasen@redhat.com>
3310
3311         * gtk/gtkbutton.c (gtk_button_set_image): Check arguments.  (#317491,
3312         Paolo Borelli)
3313
3314         * gtk/gtkpaned.c (gtk_paned_grab_notify): Stop drags when being
3315         grab shadowed.  (#317332)
3316
3317 2005-09-29  Tor Lillqvist  <tml@novell.com>
3318
3319         * gtk-zip.sh.in: DLLs are always in bin nowadays, no need to test.
3320
3321 2005-09-28  Federico Mena Quintero  <federico@ximian.com>
3322
3323         * tests/autotestfilechooser.c (test_reload_sequence): Oops, return
3324         if the unmap test fails.
3325         (test_reload_sequence): Use gtk_widget_show_now() instead of
3326         gtk_widget_show() for the dialog.
3327         Thanks to Tim Janik for noticing these.
3328
3329 2005-09-28  Federico Mena Quintero  <federico@ximian.com>
3330
3331         * tests/testcellrenderertext.c: New file with a set of tests for
3332         GtkCellRendererText.  The idea is to run a text renderer through
3333         most of its interesting property values to see that it works
3334         correctly.
3335
3336         * tests/Makefile.am: Added testcellrenderertext.
3337
3338         * gtk/gtkfilechooserdefault.c (load_set_model): Mark the
3339         entry/exit of this function for profiling.
3340         (gtk_file_chooser_default_style_set): Mark the start/end of the
3341         calls to the parent class and the the signal emission for profiling.
3342
3343 2005-09-29  Tor Lillqvist  <tml@novell.com>
3344
3345         * gtk/gtkmain.c (_gtk_get_localedir): The locale directory is
3346         passed to bindtextdomain() which isn't UTF-8-aware, so convert to
3347         system codepage using g_win32_locale_filename_from_utf8().
3348         (#317457, Kazuki Iwamoto)
3349
3350 2005-09-28  Matthias Clasen  <mclasen@redhat.com>
3351
3352         * gtk/gtkselection.c (_gtk_selection_request): Free mult_atoms 
3353         here. (#317039, Paolo Borelli)
3354
3355         * gtk/gtktexttag.h: 
3356         * gtk/gtktexttag.c (gtk_text_attributes_ref): Return the attributes
3357         to make this function work as boxed copy function.  (#317455,
3358         Gustavo Carneiro)
3359
3360         * gtk/gtkclipboard.c (request_image_received_func): Don't unref
3361         NULL.  (#316828, Tor Lillqvist)
3362
3363 2005-09-28  Tor Lillqvist  <tml@novell.com>
3364
3365         * modules/input/imime.c: Include <config.h>. (#317444, Kazuki
3366         Iwamoto)
3367
3368 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
3369
3370         Don't reload the current folder unnecessarily on ::map().
3371
3372         * gtk/gtkfilechooserprivate.h (ReloadState): New enum to represent
3373         the reloading state.
3374         (struct _GtkFileChooserDefault): Added a "reload_state" field.
3375
3376         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init):
3377         Initialize impl->reload_state.
3378         (gtk_file_chooser_default_map): Check the impl->reload_state; load
3379         a default folder if no folder has been set, or reload the current
3380         one only if we had been unmapped first.
3381         (gtk_file_chooser_default_update_current_folder): Set the
3382         reload_state to RELOAD_HAS_FOLDER.
3383         (gtk_file_chooser_default_unmap): Implement, and set the
3384         reload_state to RELOAD_WAS_UNMAPPED.
3385         (shortcuts_model_create): Don't call shortcuts_add_bookmarks()
3386         here; they'll get (re)loaded on ::map() anyway.
3387
3388         * gtk/gtkfilechooserwidget.c
3389         (gtk_file_chooser_widget_constructor): Don't set a default folder here.
3390
3391         * tests/autotestfilechooser.c (test_action_widgets): Don't take in
3392         a dialog; build it ourselves.
3393         (test_reload): New test to ensure that we don't load the default
3394         folder more than once, and that we reload it when
3395         unmapping/remapping.
3396         (get_impl_from_dialog): New utility function.
3397         (test_widgets_for_current_action): Use get_impl_from_dialog().
3398
3399 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
3400
3401         * gtk/gtkfilechooserdefault.c
3402         (gtk_file_chooser_default_constructor): Mark the entry/exit of
3403         this function for profiling.
3404         (check_icon_theme): Likewise.
3405         (change_icon_theme): Likewise.
3406         (settings_notify_cb): Likewise.
3407         (gtk_file_chooser_default_screen_changed): Likewise.
3408         (update_chooser_entry): If the selection is empty, clear the file
3409         name entry only if we are in CREATE_FOLDER mode.  In SAVE mode,
3410         nothing will be selected when the user starts typeahead in the
3411         treeview, and we don't want to clear the file name entry in that
3412         case --- the user could be typing-ahead to look for a folder name.
3413         Fixes bug #308332, patch by Jürg Billeter.
3414
3415 2005-09-27  Matthias Clasen  <mclasen@redhat.com>
3416
3417         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
3418         Pop below the entry if there's more free space below the entry
3419         than above.  (#316948, Tommi Komulainen)
3420
3421 2005-09-26  Federico Mena Quintero  <federico@ximian.com>
3422
3423         Do not create the save mode-specific widgets in the open modes, so
3424         that we don't carry their baggage around.
3425
3426         * gtk/gtkfilechooserdefault.c
3427         (gtk_file_chooser_default_constructor): Don't create the
3428         save_widgets here.
3429         (save_widgets_create): Set the impl->save_widgets directly here,
3430         instead of passing the widgets back to the caller.  Also, pack
3431         them into the impl's box.
3432         (update_appearance): Create or destroy the save widgets as
3433         appropriate.  Set the action of the save_file_name_entry here.
3434         (shortcuts_add_current_folder): Set the active item in the
3435         save_folder_combo only if it exists.
3436         (gtk_file_chooser_default_set_property): Don't set the action of
3437         the save_file_name_entry here.
3438         (gtk_file_chooser_default_update_current_folder): Set the base
3439         folder of the save_file_name_entry only if the entry exists.
3440         (shortcuts_drag_data_received_cb): Cast the selection_data->data
3441         to (const char *) since that's what shortcuts_drop_uris() expects.
3442         (file_list_drag_data_received_cb): Likewise, for
3443         g_uri_list_extract_uris().
3444
3445 2005-09-26  Tor Lillqvist  <tml@novell.com>
3446
3447         * gdk/win32/gdkwindow-win32.c (gdk_window_shape_combine_mask): Set
3448         the shaped flag here, too. (#316871)
3449         (gdk_window_shape_combine_region): Currently unimplemented, so
3450         don't do anything to the shaped flag here.
3451
3452 2005-09-26  Matthias Clasen  <mclasen@redhat.com>
3453
3454         Fix #316871, reported by Dan Winship:
3455         
3456         * gdk/gdkwindow.h (struct _GdkWindowObject): Add a shaped flag.
3457
3458         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_mask) 
3459         (gdk_window_shape_combine_region): Set it here.
3460
3461         * gdk/gdkwindow.c (gdk_window_invalidate_maybe_recurse): Don't
3462         remove the child area for shaped windows.
3463
3464 2005-09-23  Matthias Clasen  <mclasen@redhat.com>
3465
3466         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_finalize):
3467         Don't leak expander pixbufs.  (#316946, Tommi Komulainen)
3468
3469 2005-09-22  Michael Natterer  <mitch@imendio.com>
3470
3471         Renamed GtkCellRendererKeys to GtkCellRendererAccel to be
3472         consistent with GTK+ terminology:
3473
3474         * gtk/gtkcellrendererkeys.[ch]
3475         * tests/testkeys.c: removed...
3476
3477         * gtk/gtkcellrendereraccel.[ch]
3478         * tests/testaccel.c: ...and added.
3479
3480         * gtk/Makefile.am
3481         * gtk/gtk.h
3482         * gtk/gtk.symbols
3483         * tests/Makefile.am: changed accordingly.
3484
3485 2005-09-22  Matthias Clasen  <mclasen@redhat.com>
3486
3487         * gtk/gtkwidget.c (gtk_widget_class_init): Fix the documentation
3488         for the grab-broken-event signal, noticed by Damon Chaplin.
3489
3490 2005-09-21  Tor Lillqvist  <tml@novell.com>
3491
3492         * gdk/win32/gdkselection-win32.c (gdk_selection_convert,
3493         gdk_text_property_to_text_list_for_display,
3494         gdk_text_property_to_utf8_list_for_display,
3495         gdk_win32_selection_add_targets,
3496         _gdk_win32_selection_convert_to_dib): Free return value from
3497         gdk_atom_name().
3498         (gdk_text_property_to_text_list_for_display): Drop GError variable
3499         that isn't actually used after being set.
3500
3501 2005-09-20  Johan Dahlin  <jdahlin@async.com.br>
3502
3503         * gtk/gtkentry.c (gtk_entry_set_completion): Mention NULL in 
3504         documentation.
3505
3506 2005-09-20  Tor Lillqvist  <tml@novell.com>
3507
3508         * gdk/win32/gdkselection-win32.c
3509         (gdk_selection_owner_get_for_display): Do return the correct owner
3510         for CLIPBOARD (i.e., the owner of the Windows Clipboard, if it is
3511         a window GDK knows about). The reason to return NULL seems to have
3512         gone when in the fix for bug #163702 the artificial
3513         GDK_SELECTION_CLEAR event generation was removed from
3514         gdk_selection_send_notify_for_display(). Fixes bug #316552.
3515
3516 2005-09-20  Matthias Clasen  <mclasen@redhat.com>
3517
3518         Avoid unnecessary XkbGetState() calls and XkbStateNotify
3519         events.  (#151555, Søren Sandmann)
3520
3521         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Use 
3522         XkbSelectEventDetails() to select XkbStateNotify events
3523         for only the state we care about.
3524
3525         * gdk/x11/gdkprivate-x11.h:
3526         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_state_changed): Pass
3527         the event into the function and update the keymap state from
3528         the state information contained in the event. Adjust all callers.
3529         
3530 2005-09-19  Matthias Clasen  <mclasen@redhat.com>
3531
3532         * gtk/gtkiconview.c: Use g_list_nth_data() instead of g_list_nth()->data
3533         in multiple places to avoid segfaults if the index is out of range.  
3534         (#316422, Guillaume Cottenceau)
3535         (gtk_icon_view_set_drag_dest_item): 
3536         (gtk_icon_view_scroll_to_path): Fix a typo in the docs.  (#316419,
3537         #316424, Guillaume Cottenceau)
3538
3539 2005-09-18  Hans Breuer  <hans@breuer.org>
3540
3541         * gtk/gtktrayicon-win32.c : now handling events by hard-coded 
3542         g_signal_emit_by_name() - will break when gtkstatusicon.c changes.
3543
3544 2005-09-18  Hans Breuer  <hans@breuer.org>
3545
3546         * gdk/gdk.symbols gdk/win32/gdkwin32.h gdk/win32/gdkcursorwin32.c : export
3547         _gdk_win32_pixbuf_to_hicon() as gdk_win32_pixbuf_to_hicon_libgtk_only()
3548         * gtk/gtktrayicon-win32.c : a lot of debug spew but it has started to show
3549         the icon and is blinking with teststatusicon. More to come ...
3550
3551 2005-09-18  Hans Breuer  <hans@breuer.org>
3552
3553         * gtk/makefile.msc.in : fix typo for GTK_VER; define HAVE_CONFIG_H
3554         cause gtkprogressbar.c has #include <config.h> conditionally; less
3555         noise from generated gtk.def
3556         * gtk/stock-icons/makefile.msc gdk/makefile.msc tests/makefile.msc : updated
3557         
3558         * gtk/gtktrayicon-win32.c : dummy implmentation to make gtk compile.
3559         For me it works as well as the *NIX implemenation, that is not at all.
3560
3561         * gdk/win32/gdkproperty-win32.c : implement gdk_atom_intern_static_string()
3562
3563         * gdk/win32/gdkwindow-win32.c(gdk_window_set_urgency_hint) : only use
3564         only use (WINVER >= 0x0500) when available from the SDK. Otherwise fall
3565         back to true dynamic linking of FlashWindowEx. Makes gtk+ work on NT4.0
3566         again - if compiled properly.
3567
3568         * tests/teststatusicon.c : don't use GNOME icons for testing, but icons
3569         already coming with Gtk+. Makes it compile on win32.
3570
3571 2005-09-18  Guilherme de S. Pastore  <gpastore@cvs.gnome.org>
3572
3573         * README.cvs-commits: fixed some tiny typos
3574
3575 2005-09-16  Tor Lillqvist  <tml@novell.com>
3576
3577         * modules/engines/ms-windows/msw_style.c (draw_extension,
3578         draw_box_gap): Check whether the widget actually is a GtkNotebook
3579         before treating it as such. Drop some unneeded local variables,
3580         use parameter with same information instead. (#316412)
3581
3582 2005-09-15  Federico Mena Quintero  <federico@ximian.com>
3583
3584         * tests/autotestfilechooser.c: Start a set of automated tests for
3585         the file chooser.  The only test in there right now doesn't pass
3586         yet.  It specifies the intended behavior of the first optimization
3587         of a series which I'll do on the file chooser (see
3588         http://primates.ximian.com/~federico/news-2005-09.html#14 for the
3589         details of this optimization).
3590
3591         * tests/Makefile.am: Added autotestfilechooser.c.
3592
3593         * gtk/gtkfilechooserprivate.h (struct
3594         _GtkFileChooserDialogPrivate): Move all the file chooser's private
3595         structures to here, so that they can be accessed by
3596         tests/autotestfilechooser.c:  _GtkFileChooserDialogPrivate,
3597         _GtkFileChooserWidgetPrivate, LoadState, _GtkFileChooserDefault.
3598
3599         * gtk/gtkfilechooserdialog.c: See above.
3600
3601         * gtk/gtkfilechooserwidget.c: See above.
3602
3603         * gtk/gtkfilechooserdefault.c: See above.
3604
3605 Thu Sep 15 15:27:55 2005  Tim Janik  <timj@imendio.com>
3606
3607         * gtk/gtkwindow.c: 
3608         gtk_window_map_event(): new function to work around lost unmap requests.
3609         fixes bug #316180.
3610
3611 2005-09-14  Federico Mena Quintero  <federico@ximian.com>
3612
3613         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): Add
3614         an easy-to-find profiling marker when starting to create a file
3615         chooser.
3616         (browse_files_model_finished_loading_cb): Likewise, for when the
3617         chooser is finished loading.
3618
3619 2005-09-14  Tristan Van Berkom <tvb@cvs.gnome.org>
3620
3621         * gtk/gtkcolorbutton.c: Check "color" argument in 
3622         gtk_color_button_set_color ()
3623
3624 2005-09-14  Matthias Clasen  <mclasen@redhat.com>
3625
3626         * gtk/gtklabel.c (gtk_label_get_type): 
3627         * gtk/gtkbutton.c (gtk_button_get_type): 
3628         * gtk/gtkwindow.c (gtk_window_group_get_type): No point in 
3629         using a mem chunk for window groups, buttons, labels.
3630
3631         * gtk/updateiconcache.c (foreach_remove_func): Fix
3632         a use-after-free bug.  (#316256, Alexander Nedotsukov)
3633
3634 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
3635
3636         * gtk/*.c: Various cleanups.  (#315360, Kjartan Maraas)
3637
3638         * gdk/*.c: Various cleanups.  (#315359, Kjartan Maraas)
3639         
3640 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
3641
3642         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
3643         Let GDK_Return pass through in some more cases.
3644
3645         * gtk/gtkentry.c (gtk_entry_key_press): Reset the im context before
3646         activating the entry. 
3647
3648         * gtk/gtkiconview.c (gtk_icon_view_class_init):
3649         (gtk_icon_view_get_dest_item_at_pos):  Fix typos in the 
3650         docs.  (#316008, #316027, #316121, Guillaume Cottenceau)
3651
3652         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Add some docs.
3653         (#316001, Guillaume Cottenceau)
3654
3655         * gtk/gtkdnd.c (gtk_drag_set_icon_name): Fix a copy-and-paste
3656         mistake in the docs.  (#315993, Guillaume Cottenceau)
3657
3658         * tests/testentrycompletion.c (create_simple_completion_model): Add
3659         some strings containing multibyte characters.
3660
3661         * gtk/gtkentrycompletion.c (gtk_entry_completion_real_insert_prefix): 
3662         Fix prefix insertion for multibyte characters.  (#316095,
3663         Tommi Komulainen)
3664
3665         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): 
3666         * gtk/gtkiconview.c (gtk_icon_view_create_drag_icon): Silently
3667         return NULL if the widget is not realized.  (#316023,
3668         Guillaume Cottenceau)
3669
3670 2005-09-11  Matthias Clasen  <mclasen@redhat.com>
3671
3672         * gdk/gdk.symbols: 
3673         * gdk/gdkproperty.h: 
3674         * gdk/x11/gdkproperty-x11.c (gdk_atom_intern_static_string): 
3675         New function to avoid pointless strdups when creating atoms
3676         from static strings.  
3677
3678         * gdk/x11/*.c:
3679         * gtk/*.c:  Use gdk_atom_intern_static_string() where 
3680         appropriate.
3681
3682 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
3683
3684         * gtk/gtkcellrendererkeys.h: 
3685         * gtk/gtkcellrendererkeys.c: Add a cell renderer for displaying
3686         and editing accelerators, a port of EggCellRendererKeys .
3687
3688         * gtk/gtk.symbols:
3689         * gtk/gtk.h:
3690         * gtk/Makefile.am: Add the keys cell renderer.
3691
3692         * tests/Makefile.am: 
3693         * tests/testkeys.c: Test GtkCellRendererKeys
3694
3695 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
3696
3697         Make it possible to determine if a key event is for a
3698         modifier key:
3699         
3700         * gdk/x11/gdkprivate-x11.h: 
3701         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_key_is_modifier): 
3702         New function to determine if a keycode is mapped to a modifier.
3703         (get_xkb): Get the modmap.
3704
3705         * gdk/x11/gdkevents-x11.c (translate_key_event): Set the 
3706         is_modifier bit by calling _gdk_keymap_key_is_modifier().
3707
3708         * gdk/gdkevents.h (struct _GdkEventKey): Add an is_modifier
3709         bit.
3710
3711 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
3712
3713         * gdk/gdkpixbuf-drawable.c (convert_real_slow): Remove an 
3714         unused variable, noticed by Kjartan Maraas.
3715
3716 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
3717
3718         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event): 
3719         Make drag reordering work properly for columns other than the
3720         first.  (#315054, Dan Winship)
3721         
3722         * gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Handle 
3723         invalid fontnames better. (#136926, Michael R. Walton)
3724         
3725         Stop cursor blinking in non-editable regions of a text view.
3726         (#311508, Torbjörn Andersson)
3727         
3728         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): 
3729         (cursor_blinks): Take editability into account when deciding
3730         whether the cursor blinks.
3731         (gtk_text_view_button_release_event): 
3732         (gtk_text_view_move_cursor_internal): Update cursor blinking here.
3733
3734         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_start_editing): 
3735         Use connect_after to connect to the focus_out event. This
3736         ensures that the entry has already stopped blinking by the time
3737         we emit the edited signal.  (#315229, Thomas Leonard)
3738
3739         * tests/testgtk.c: Use GDK_MOD1_MASK, not GDK_ALT_MASK.
3740
3741         * gtk/gtkwindow.c (gtk_window_parse_geometry): Don't set
3742         unsigned ints to -1.  (#315481, Kjartan Maraas)
3743
3744         * gtk/gtkcalendar.c (gtk_calendar_init): first_weekday is relative
3745         to week_1stday, not to Sunday. Gotta love the ISO 14652 guys...
3746         (#314473, Stanislav Brabec)
3747
3748 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
3749
3750         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Document
3751         memory handling.  (#314975, Torsten Schoenfeld)
3752
3753         * gtk/gtkiconview.c (gtk_icon_view_class_init): 
3754         * gtk/gtkfilesel.c (gtk_file_selection_class_init): 
3755         * gtk/gtkcombobox.c (gtk_combo_box_class_init): 
3756         * gtk/gtklabel.c (gtk_label_class_init): 
3757         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): 
3758         Stylistic improvements and clarifications for some blurbs. 
3759         (#315520, Clytie Siddall)
3760
3761 2005-09-09  Tor Lillqvist  <tml@novell.com>
3762
3763         * gdk/win32/gdkdisplay-win32.c (gdk_display_get_name): Cache the
3764         display name. There is only one GdkDisplay on Win32, and
3765         constructing the display name isn't entirely trivial, so cacheing
3766         is probably worth it. For instance GIMP calls this function a lot.
3767         (gdk_display_open): Call gdk_display_get_name() to prime the
3768         cached name.
3769         (gdk_display_get_n_screens, gdk_display_get_screen,
3770         gdk_display_get_default_screen): Verify parameter correctness like
3771         the X11 backend does.
3772
3773         * gdk/win32/gdkscreen-win32.c (gdk_screen_make_display_name):
3774         Return a freshly allocated string, as the API specifies. Fixes a
3775         heap corruption problem that caused random errors and crashes in
3776         GIMP, for instance.
3777
3778 2005-09-07  Matthias Clasen  <mclasen@redhat.com>
3779
3780         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
3781         Make C-u commit and restart hex input if we are already in a
3782         hex sequence.
3783
3784 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
3785
3786         * gdk/x11/gdkkeys-x11.c (update_modmap): Make the modmap reflexive.
3787         (_gdk_keymap_add_virtual_modifiers): Don't add both Alt and Meta
3788         if they are mapped to the same modifier.
3789
3790         * gtk/Makefile.am: Rename gtkstatusicon-x11.c and gtktrayicon.c
3791         to gtkstatusicon.c and gtktrayicon-x11.c
3792
3793         * gtk/gtkaccelgroup.c: Include Super, Hyper and Meta in the
3794         default accel mod mask.
3795
3796         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): 
3797         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
3798         Don't use GDK_ALT_MASK.
3799
3800         * gdk/gdktypes.h: No need to introduce GDK_ALT_MASK
3801
3802 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
3803
3804         Add support for extra virtual modifiers:  (#85780, Owen Taylor)
3805         
3806         * tests/testgtk.c (create_key_lookup): Add tests for extra virtual
3807         modifiers.
3808
3809         * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Try to match both against
3810         Mod2 - Mod5 and against Super, Hyper, Meta.
3811
3812         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
3813         * gtk/gtkaccelgroup.c (gtk_accelerator_parse) 
3814         (gtk_accelerator_name): Support Super, Hyper Meta and Mod2 - Mod5.
3815
3816         * gdk/x11/gdkkeys-x11.c (struct _GdkKeymapX11): Add a 
3817         modmap to maintain the information which X modifiers map to
3818         virtual modifiers.
3819         (get_xkb): Set up the modmap from the XKB tables.
3820         (update_keymaps): Set up the modmap from the information returned
3821         by XGetModifierMapping in the non-XKB case.
3822
3823         * gdk/x11/gdkprivate-x11.h: 
3824         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_add_virtual_modifiers): New 
3825         function to set the virtual modifiers in the state.
3826
3827         * gdk/x11/gdkevents-x11.c (translate_key_event): Call 
3828         _gdk_keymap_add_virtual_modifiers here.
3829
3830         * gdk/gdktypes.h (GdkModifierType): Add bits for virtual Super, 
3831         Hyper and Meta modifiers. Also add GDK_ALT_MASK as an alias
3832         for GDK_MOD1_MASK.
3833
3834 2005-09-05  Matthias Clasen  <mclasen@redhat.com>
3835
3836         * gtk/gtkaction.c (connect_proxy): Set the label of a button
3837         if it has no child.  (#315253, John Finlay)
3838
3839 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
3840
3841         * gtkimcontextsimple.h: Add a modifiers_dropped bit
3842
3843 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
3844
3845         * gtk/gtkentry.c (gtk_entry_destroy): Disconnect idle handlers
3846         on destroy to avoid problems when they are called on a destroyed
3847         widget.  (#315135, John Cupitt)
3848         
3849         * gtk/gtkentry.c (gtk_entry_class_init):
3850         * gtk/gtktextview.c (gtk_text_view_class_init): Add bindings
3851         for Ctrl-Shift-A to unselect all.  (#309301, Kathy Fernandes)
3852
3853         * gtk/gtkimcontextsimple.c: Rework the Unicode hex input
3854         code. Now we only steal a single key combination, Ctrl-Shift-U,
3855         instead of sixteen. 
3856         A hex Unicode sequence must be started with Ctrl-Shift-U, followed
3857         by a sequence of hex digits entered with Ctrl-Shift still held.
3858         Releasing one of the modifiers or pressing space while the modifiers
3859         are still held commits the character. It is possible to erase
3860         digits using backspace.
3861         As an extension to the above, we also allow to start the sequence
3862         with Ctrl-Shift-U, then release the modifiers before typing any
3863         digits, and enter the digits without modifiers.
3864         (#82011, Owen Taylor)
3865         
3866 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
3867
3868         * gtk/gtkmain.c (gtk_get_event_widget): If the window is destroyed,
3869         we still need to deliver the destroy event.  (#314980, Chris Lahey)
3870
3871         * gtk/gtktextview.c (gtk_text_view_key_press_event): Reset 
3872         im context before committing \n or \t.
3873
3874 2005-09-02  Alexander Larsson  <alexl@redhat.com>
3875
3876         * gtk/gtkfilechooserdefault.c: (shortcuts_add_volumes),
3877         (shortcuts_activate_volume):
3878         Handle base_path being null in the rest of the cases (#310270)
3879
3880 2005-09-02  Tor Lillqvist  <tml@novell.com>
3881
3882         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Keep track of
3883         cursor position also in root window coordinates. Prune out
3884         superfluous WM_MOUSEMOVE events even earlier, based on root window
3885         coordinates. Windows sends WM_MOUSEMOVE messages after a new
3886         window has ben mapped below the cursor even if the mouse doesn't
3887         move. We used to generate GDK_MOTION_NOTIFY in these cases. This
3888         confused at least gtk_menu_motion_notify(). (#314995)
3889
3890         * gtk/gtkintl.h: No need to include config.h here. It caused
3891         warnings about GTK_LOCALEDIR being redefined on Win32 when
3892         compiling files where gtkintl.h is included after gtkprivate.h
3893         (which #undefines and re-#defines GTK_LOCALEDIR on Win32).
3894
3895         * gtk/gtkplug.c: Include config.h.
3896
3897 2005-09-01  Matthias Clasen  <mclasen@redhat.com>
3898
3899         * gtk/gtkfilesystemunix.c: Pass statbufs down to 
3900         xdg_mime_get_mime_type_for_file() where possible, to avoid
3901         useless re-stating.  
3902         
3903         * gtk/gtkaction.c (gtk_action_get_accel_closure): Fix doc
3904         typo.  (#314921, Guillaume Cottenceau)
3905
3906         * gdk/*.c: Intern some more strings.
3907         * gtk/gtkintl.h: 
3908         * gtk/*.c: Define an I_() macro and use it instead of the 
3909         bulky g_intern_static_string().
3910
3911 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
3912
3913         * gtk/gtkbindings.c (binding_signal_new): Intern the signal name
3914         instead of copying it.
3915
3916         * gtk/gtktypeutils.c (gtk_identifier_get_type): Some more string interning.
3917
3918         * gtk/*.c: Also intern static strings passed to 
3919         g_object_set_data().
3920
3921         * gdk/Makefile.am: 
3922         * gtk/Makefile.am: Intern type names in code generated by 
3923         glib-mkenums, too.
3924
3925         * gtk/*.c: 
3926         * gdk/x11/*.c: 
3927         * gdk/*.c: Intern type names before registering the type to avoid 
3928         unnecessary copies.
3929
3930         * configure.in: Require GLib 2.9.0
3931
3932 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
3933
3934         * gtk/gtktoolbar.c: Undeprecate gtk_toolbar_set_icon_size(),
3935         and add icon-size and icon-size-set properties.  (#314172)      
3936
3937         * gtk/gtkwindow.c (gtk_window_set_transient_for): Inherit window
3938         groups across transient parents.  (#312918, Christian Persch)
3939
3940         * gtk/gtktreemodel.c: Some documentation fixes.  (#314882,
3941         Guillaume Cottenceau)
3942
3943         * gtk/gtktextiter.c (gtk_text_iter_backward_visible_cursor_positions): 
3944         Fix a typo in the docs.  (#314878, Guillaume Cottenceau)
3945
3946 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
3947
3948         * gtk/gtkentry.c (gtk_entry_class_init): Add key bindings to
3949         make C-/ select all and C-\ unselect all.  (#309301,
3950         Kathy Fernandez)
3951
3952         * gtk/gtkimcontextsimple.c: Change the compose sequence for
3953         soft hyphen to be multi_key-minus-minus-space, and add
3954         compose sequences multi_key-minus-minus-period and 
3955         multi_key-minus-minus-minus for en dash and em dash.
3956         (#172653, Christian Lohmaier)
3957
3958         * gtk/gtkentry.c (gtk_entry_draw_frame): Fix some unused
3959         code.  (#313946, Christian Persch)
3960
3961         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Another
3962         fix for the default value of the "ui" property.
3963
3964 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
3965
3966         * gtk/gtk.symbols: 
3967         * gtk/gtkselection.h:
3968         * gtk/gtkselection.c: Add functions which look for text, image
3969         or uri targets in an array of atoms.   (#314089, Mark Wielaard)
3970
3971         * gtk/gtk.symbols: 
3972         * gtk/gtkselection.h:
3973         * gtk/gtkselection.c (gtk_selection_data_targets_include_uri): 
3974         Add a function to check wether targets include uri.  
3975         (#314092, Mark Wielaard)
3976         
3977         * gtk/gtk.symbols: 
3978         * gtk/gtkwindow.h: 
3979         * gtk/gtkwindow.c: Add a deletable property with getter
3980         and setter, to control the close button in the window 
3981         frame.  (#59718, Havoc Pennington)
3982
3983 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
3984
3985         * gtk/gtkrc.key.emacs: Add C-n/C-p/C-f/C-b as alternatives
3986         to the arrow keys for menu navigation.  (#162825, Carl Worth)
3987
3988         * gtk/gtkentry.c, gtk/gtktextview.c: More typo fixes
3989
3990         * gtk/gtksocket-x11.c, gtk/gtkstatusicon-x11.c: Fix typos.
3991
3992         * gtk/gtkstatusicon-x11.c (gtk_status_icon_new_from_stock): 
3993         * gtk/gtkimage.c (gtk_image_new_from_stock): Don't
3994         refer to nonexisting stock ids.
3995
3996         * gtk/gtktextview.c (popup_targets_received): 
3997         * gtk/gtkentry.c (popup_targets_received): Construct
3998         the "Select All" menuitem from stock.
3999
4000         * gtk/stock-icons/stock_select_all_{16,24}.png:
4001         * gtk/stock-icons/Makefile.am: 
4002         * gtk/gtkiconfactory.c:
4003         * gtk/gtkstock.h: 
4004         * gtk/gtkstock.c: Add a "Select All" stock item.  (#78545,
4005         Calum Benson)
4006
4007         * gtk/gtktrayicon.c: Add a pointer to the spec.
4008
4009         * gtk/gtkstatusicon-x11.c: Add docs.
4010
4011         * gtk/gtkstatusicon.h: Fix a typo.
4012
4013         Add a cross-platform "tray icon" API, by
4014         porting EggStatusIcon/EggTrayIcon (#105101)
4015         
4016         * gtk/gtkstatusicon.h: A GtkStatusIcon is an object which
4017         displays an icon in a notification area.
4018
4019         * gtk/gtkstatusicon-x11.c: GtkStatusIcon implementation for
4020         X11, using GtkTrayIcon.
4021
4022         * gtk/gtktrayicon.h: 
4023         * gtk/gtktrayicon.c: An implementation of the freedesktop.org
4024         system tray specification, not public API.
4025
4026         * gtk/gtk.symbols: Add new exported functions.
4027
4028         * gtk/gtk.h: Include gtkstatusicon.h.
4029
4030         * gtk/Makefile.am: Add new files.
4031
4032         * tests/Makefile.am:
4033         * tests/teststatusicon.c: Test for GtkStatusIcon.
4034
4035 2005-08-29  Christopher Aillon  <caillon@redhat.com>
4036
4037         * gtk/gtkstock.c: Add builtin GtkStockItems for GTK_STOCK_CONNECT
4038         and GTK_STOCK_DISCONNECT
4039         
4040 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
4041
4042         * gtk/gtksocket-x11.c (_gtk_socket_windowing_embed_notify): 
4043         Use XFixesChangeSaveSet if available.  (#314682)
4044
4045         * gtk/gtkmenu.c (gtk_menu_grab_notify):  Only cancel if the menu
4046         was active.  (#314298, Christian Persch, analysis by Mark McLoughlin)
4047
4048 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
4049
4050         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): Remove an
4051         accidentally leftover duplicate pixbuf creation.  (#314700,
4052         Kjartan Maraas)
4053
4054         * gtk/gtksettings.c (settings_update_cursor_theme): Don't 
4055         leak the cursor theme name.  (#314693, Kjartan Maraas)
4056
4057         * gdk/x11/gdkasync.c (_gdk_x11_get_window_child_info): Free 
4058         state.children in all cases.  (#313862, Kjartan Maraas)
4059
4060 2005-08-28  Matthias Clasen  <mclasen@redhat.com>
4061
4062         * po/POTFILES.in, po-properties/POTFILES.in:
4063         Add gdk/gdkscreen.c
4064
4065 2005-08-27  Matthias Clasen  <mclasen@redhat.com>
4066
4067         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Fix the default
4068         value of the ui property. (#314532, Yong Wang)
4069
4070         * gdk/x11/gdkproperty-x11.c (gdk_property_get): Don't warn
4071         when G_MAXLONG is passed as length.  
4072
4073 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
4074
4075         * gtk/updateiconcache.c: Add a separate --ignore-theme-index option
4076         to avoid overloading --force.  (JP Rosevaar)
4077
4078 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
4079
4080         * configure.in: Bump version to 2.9.0
4081
4082         * gdk/gdk.symbols: 
4083         * gdk/gdkscreen.h: 
4084         * gdk/gdkscreen.c: Make the GdkScreen font options api
4085         public, and add properties GdkScreen::font-options and
4086         GdkScreen::resolution.  (#314004)
4087
4088         * gdk/gdkpango.c:
4089         * gtk/gtksettings.c:
4090         * gtk/gtkwidget.c: Adjust all callers.
4091         
4092         * gdk/gdkintl.h: Simplify and use glib/gi18n-lib.h.
4093         * gdk/gdkpango.c: Include gdkintl.h, not gtkintl.h.
4094         * gdk/gdkscreen.c: Include gdkintl.h.
4095
4096         * gtk/gtkicontheme.c (theme_lookup_icon): Avoid an uninitialized
4097         variable warning, pointed out by Colin Walters. (#314585)
4098
4099 2005-08-26  Tor Lillqvist  <tml@novell.com>
4100
4101         * gtk/gtkfilesystemwin32.c: Remove some ifdeffed out debugging
4102         printouts.
4103         (gtk_file_system_win32_parse): Don't mishandle UNC paths. (#314519)
4104
4105 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
4106
4107         * gtk/gtkcalendar.c (gtk_calendar_init): Fix the calculation
4108         of week_start.  (#314473, JP Rosevaar)
4109
4110 2005-08-25  Thomas Fitzsimmons  <fitzsim@redhat.com>
4111
4112         * gtk/gtkfilesystemmodel.c (idle_finished_loading_cb): Acquire GDK
4113         lock.  (#314533, Thomas Fitzsimmons)
4114
4115 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
4116
4117         * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Handle
4118         NULL gracefully.  (#314523, Ed Catmur)
4119
4120 2005-08-25  Owen Taylor  <otaylor@redhat.com>
4121
4122         * gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): 
4123         Handle theme == NULL.
4124
4125 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
4126
4127         * gtk/gtkmenutoolbutton.c (menu_position_func): Take widget
4128         y offset into account when positioning the popup.  (#314470,
4129         Christian Persch)
4130
4131 2005-08-25  Owen Taylor  <otaylor@redhat.com>
4132
4133         * gdk/gdkscreen.c (gdk_screen_get_type): Use gdk_screen_init
4134         as instance_init, not base_init! (#314452, Fix from Frederic
4135         Crozat, reported by Joe Marcus Clarke). Trivial cleanup: use -1.
4136         rather than 1 for a negative flag value.
4137
4138 2005-08-24  Owen Taylor  <otaylor@redhat.com>
4139
4140         * gdk/gdkpango.c (draw_error_underline): Add a note about
4141         cut-and-paste between here and Pango.
4142
4143 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
4144
4145         * === Released 2.8.2 ===
4146
4147         * gtk/gtkclipboard.c (request_image_received_func): Use the correct
4148         callback for image/gif, and also try image/bmp.  (#314086,  Mark 
4149         Wielaard)
4150
4151         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon): 
4152         Use gnome-dev-harddisk for volumes, not gnome-fs-blockdev.  (#314382,
4153         Sebastien Bacher)
4154         
4155         * NEWS: Updates
4156
4157         * gtk/gtksettings.c (gtk_settings_get_for_screen): Make sure font
4158         and cursor settings get propagated down to the screen initially.
4159         Pointed out by Frederic Crozat.
4160
4161         * gtk/gtkicontheme.c (ensure_valid_themes): Don't try to send a client
4162         message if the screen is NULL. Noticed by Kjartan Maraas.
4163
4164 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
4165
4166         * Bump version
4167
4168         * === Released 2.8.1 ===
4169
4170         * NEWS: Updates
4171         
4172 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
4173
4174         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_visible): Protect
4175         against lazy filterers which return values other than TRUE or
4176         FALSE from their visible func.  (#314335)
4177
4178 2005-08-23  Owen Taylor  <otaylor@redhat.com>
4179
4180         Fix for #314004, reported by Michael Reinsch:
4181
4182         * gdk/gdk.symbols:
4183         * gdk/gdkscreen.[ch]: Add gdk_screen_get/set_font_options_libgtk_only()
4184         Add gdk_screen_get/set_resolution_libgtk_only()
4185
4186         * gdk/gdkpango.c (gdk_pango_context_get_for_screen): Set
4187         the options for the screen on the newly created context.
4188
4189         * gtk/gtksettings.c (settings_update_font_options/dpi) gtkwidget.c: 
4190         Move font options and dpi code from gtkwidget.c to gtksettings.c, set
4191         the font options on the screen.
4192
4193         * gtk/gtkwidget.c (gtk_widget_update_pango_context): Just get
4194         the font options from the screen and set them on the context.
4195
4196 2005-08-23  Kristian Rietveld  <kris@gtk.org>
4197
4198         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): don't
4199         bother inserting new rows in a level with a zero refcount and
4200         immediately free the level. (Fixes #312350, reported by Markku Vire).
4201
4202 2005-08-23  Matthias Clasen  <mclasen@redhat.com>
4203
4204         * gtk/updateiconcache.c: Complain when there is no index.theme file
4205         in the specified directory, unless --force is used. Also add an
4206         --index-only option to create caches without image data.
4207
4208         * gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Fix a
4209         C99ism.  (#314262, Robert Jeff Mitchell)
4210         
4211 2005-08-22  Manish Singh  <yosh@gimp.org>
4212
4213         * gtk/gtkicontheme.h: add declaration for _gtk_icon_theme_check_reload.
4214
4215         * gtk/gtkwindow.c: remove declaration of gtk_window_read_rcfiles.
4216
4217 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
4218
4219         * gtk/gtkwindow.c (gtk_window_client_event): 
4220         * gtk/gtkicontheme.c (ensure_valid_themes) 
4221         (_gtk_icon_theme_check_reload): Implement a clientmessage based
4222         scheme for makeing sure that all GTK+ applications notice if an
4223         icon theme has been updated. This should prevent multiple versions
4224         of an icon theme cache to be mapped in memory at the same time,
4225         which can cause excessive memory consumption.  (#313156, Chris 
4226         Lahey)
4227
4228 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
4229
4230         * gtk/gtkicontheme.c (gtk_icon_theme_load_icon): Add a note
4231         regarding icon theme changes.
4232
4233         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): When returning
4234         pixbufs which are backed by the mmapped memory of an icon cache,
4235         increase the refcount of the icon cache, so that the memory is not
4236         munmapped away underneath the pixbuf upon icon theme changes.  
4237         (#314170, Kjartan Maraas)
4238
4239         * docs/tools/Makefile.am (LDADDS): Add GTK_DEP_LIBS, in order 
4240         to link against Xext.  (#314062)
4241
4242         * gtk/gtkhsv.c (paint_triangle): One more fix to prevent buffer
4243         overruns.  (#314081, Hans Breuer)
4244
4245 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
4246
4247         * gtk/gtkentry.c (gtk_entry_get_layout): Clarify that the
4248         returned layout must not be modified.
4249
4250 Sat Aug 20 16:12:14 2005  Jonathan Blandford  <jrb@redhat.com>
4251
4252         * gtk/gtktreeview.c (gtk_tree_view_set_model): clear
4253         scroll_to_path if the model changes.
4254
4255         * gtk/gtkiconview.c: (gtk_icon_view_destroy),
4256         (gtk_icon_view_size_allocate), (gtk_icon_view_set_cursor),
4257         (gtk_icon_view_scroll_to_path): Handle scrolling to a path before
4258         we're realized, #312798
4259         (gtk_icon_view_set_model): clear scroll_to_path if the model
4260         changes.
4261
4262 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
4263
4264         * gtk/gtkrange.c (gtk_range_adjustment_changed) 
4265         (gtk_range_adjustment_value_changed):  Don't queue a draw
4266         if the layout has not changed.  (#313991, Benjamin Berg)
4267
4268 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
4269
4270         * gtk/gtktreeitem.c: Remove duplicate lines.  (#313344,
4271         Benoit Carpentier)
4272
4273         * modules/engines/ms-windows/msw_style.c (setup_system_styles): 
4274         Fix a typo. 
4275
4276         * gtk/gtkfilechooserbutton.c (change_icon_theme) 
4277         (model_add_special, model_add_special, model_add_volumes):
4278         Handle pixbuf being NULL without warnings. Also, don't
4279         leak pixbuf references when the icon theme is changed.
4280
4281         * gtk/gtkmain.c (gtk_get_event_widget): Don't access
4282         the user data on destroyed windows, since at best
4283         it can be a stale pointer.  (#313953, Robin Green)      
4284
4285 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
4286
4287         * gtk/gtkhsv.c (paint_triangle): Avoid a buffer overrun.  
4288         (#313900, Sebastien Bacher)
4289
4290         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Return
4291         FALSE if the tree is empty.  (#313891, Guillaume Cottenceau)
4292
4293         * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display) 
4294         (xdnd_read_actions, get_client_window_at_coords_recurse): 
4295         Free data returned from XGetWindowProperty. 
4296
4297         * gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window) 
4298         Free data returned from XGetWindowProperty.  (313867, Kjartan
4299         Maraas)
4300         
4301         * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse): Free
4302         children in all cases.  (#313862, Kjartan Maraas)
4303
4304         * gtk/gtkicontheme.c (theme_lookup_icon): Store GtkIconData structs 
4305         in the per-directory hash, even if they come from the icon cache. 
4306         We tried to avoid that before, but as a result leaked icon data
4307         structs.  (#313852, Kjartan Maraas)
4308
4309 2005-08-18  Matthias Clasen  <mclasen@redhat.com>
4310
4311         * gtk/gtkmenutoolbutton.c (gtk_menu_tool_button_destroy): Disconnect
4312         signal handlers on destroy, not on finalize.  (#313759, Brett Atoms)
4313
4314 2005-08-15  Owen Taylor  <otaylor@redhat.com>
4315
4316         * configure.in: Add -lXext to GDK_EXTRA_LIBS in absence of pkg-config
4317         files for x11/xext. (Jonas Bonn)
4318
4319 2005-08-15  Tor Lillqvist  <tml@novell.com>
4320
4321         * gtk/gtkicontheme.c (theme_lookup_icon): Put debugging printout
4322         inside GTK_NOTE.
4323
4324 2005-08-15  Owen Taylor  <otaylor@redhat.com>
4325
4326         * configure.in: Fix have_base_pc / have_base_x_pc typo.
4327
4328         * gdk/x11/gdkdrawable-x11.c gtk/gtksettings.c: Remove panoxft.h includes.
4329         (#313417, James Andrewartha)
4330
4331         * configure.in: Add fontconfig to X_PACKAGES, since we use it for
4332         FcNameConstant(). (More of #313417)
4333
4334 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
4335
4336         * gtk/gtkfilechooserdefault.c: When using gtk_dialog_run() for
4337         modal dialogs, make sure to inherit the window group from 
4338         the parent, since we don't inherit window groups across
4339         transient parents currently.  (#312918, Christian Persch)
4340
4341         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): 
4342         * gtk/gtkdialog.c (gtk_dialog_run): Slight update to the docs. 
4343
4344         * gtk/gtkiconview.c (gtk_icon_view_select_path) 
4345         (gtk_icon_view_scroll_to_path): Handle paths of depth 0
4346         gracefully.  (#312796, Jonathan Blandford)
4347
4348         * tests/testtoolbar.c: Add some more tests for menu placement.
4349
4350         * gtk/gtkmenutoolbutton.c (menu_position_func): 
4351         * gtk/gtktoolbar.c (menu_position_func): Improve positioning
4352         of toolbutton menus and of the overflow menu.  (#312937, 
4353         #153870, Christian Persch, Paolo Borelli)
4354
4355 2005-08-15  Tor Lillqvist  <tml@novell.com>
4356
4357         * gtk/updateiconcache.c: Use g_path_get_dirname() instead of
4358         the nonportable <libgen.h> and dirname().
4359
4360 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
4361
4362         * gtk/gtksizegroup.c: Use object data to mark widgets and
4363         groups as visited, so that we avoid constant extra list
4364         traversals. Also allocate quarks in class_init.  (#311618,
4365         Michael Natterer)
4366
4367         * gtk/gtkicontheme.c (gtk_icon_theme_lookup_icon): Correct the 
4368         download location for the hicolor icon theme. (#313475, Olexiy 
4369         Avramchenko)
4370
4371         * gtk/gtkicontheme.c: Remove debug spew. 
4372
4373 2005-08-15  Owen Taylor  <otaylor@redhat.com>
4374
4375         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_back_pixmap): 
4376         * gdk/win32/gdkwindow-win32.c (gdk_window_set_back_pixmap): 
4377         * gdk/x11/gdkwindow-x11.c (gdk_window_set_back_pixmap):
4378         Handle pixmap == NULL when checking for a colormap.
4379         (Allin Cottrell).
4380
4381 2005-08-14  Matthias Clasen  <mclasen@redhat.com>
4382
4383         * gtk/updateiconcache.c: Store only one copy of the pixel data
4384         for symlinked icons. To achieve this, maintain a hashtable 
4385         mapping pathnames to pixel data, and share the pixel data for
4386         all symlinks resolving to the same pathname. When writing out
4387         the image data, write out the pixel data only the first time
4388         it is met, and store the offset pointing to the first copy
4389         for use in all later cases.
4390         This reduces the size of the Bluecurve icon cache from 40
4391         to 13MB. (#312972)
4392