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