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