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