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