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