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