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