]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-10
Revert the last change.
[~andy/gtk] / ChangeLog.pre-2-10
1 2006-01-05  Matthias Clasen  <mclasen@redhat.com>
2
3         * gtk/gtkbindings.c (binding_signal_new): Revert the last change.
4
5         * gtk/gtkaction.c (gtk_action_sync_property): Removed.
6
7 2006-01-05  Rodrigo Moya <rodrigo@novell.com>
8
9         * gtk/gtkbindings.c (binding_signal_new): allocate correct amount for
10         signal and arguments.
11
12 2006-01-05  Matthias Clasen  <mclasen@redhat.com>
13
14         * gtk/gtklabel.c (gtk_label_grab_focus): Don't return a value from
15         a void function.
16
17 2006-01-04  Matthias Clasen  <mclasen@redhat.com>
18
19         * gtk/gtkbindings.h (struct _GtkBindingSignal): Revert questionable
20         changes.
21         
22         * gtk/gtkbindings.c: Use the slice allocator and allocate signal
23         and arguments in one block.
24
25         * gtk/gtkuimanager.c (gtk_ui_manager_get_toplevels): Don't return
26         a list of NULLs.  (#325723, Steve Chaplin)
27
28 2006-01-04  Rodrigo Moya <rodrigo@novell.com>
29
30         * gtk/gtkbindings.c (binding_signal_new): guard against multiplying
31         by -1 (when n_args is 0).
32
33 2006-01-04  Michael Natterer  <mitch@imendio.com>
34
35         * gtk/gtkmenutoolbutton.c
36         (gtk_menu_tool_button_set_menu)
37         (gtk_menu_tool_button_destroy): use gtk_menu_attach_to_widget()
38         and gtk_menu_detach() instead of reffing/unreffing the menu
39         manually. Also fixes brokenness on screen change (bug #85715).
40
41 2006-01-04  Matthias Clasen  <mclasen@redhat.com>
42
43         * gtk/gtkaccelmap.c: 
44         * gtk/gtkactiongroup.c: 
45         * gtk/gtkdialog.c: 
46         * gtk/gtkfilesystemunix.c: 
47         * gtk/gtkgc.c: 
48         * gtk/gtkkeyhash.c: 
49         * gtk/gtkplug.c: 
50         * gtk/gtktextiter.c: 
51         * gtk/gtktextlayout.c: 
52         * gtk/gtkuimanager.c: 
53         * gtk/gtkwidget.c: 
54         * gtk/gtkwindow.c: 
55         * gtk/gtkxembed.c: Use the slice allocator for many small 
56         allocations.
57
58         * gtk/gtkcolorsel.c: 
59         * gtk/gtktreeview.c: Use IPN.
60
61         * gtk/gtkwidget.c: Remove an unused field from the AccelPath 
62         struct.
63
64 2006-01-04  Tor Lillqvist  <tml@novell.com>
65
66         * gtk-zip.sh.in: Include also the gtk20-properties message catalogs.
67
68 2006-01-03  Matthias Clasen  <mclasen@redhat.com>
69         
70         * gtk/gtkdnd.c: Make it compile
71
72         * gtk/gtkdnd.c (gtk_drag_begin_internal): Call gtk_drag_update
73         for non-motion events.  (#325443, Peter Harvey)
74
75         * gtk/gtkaction.c: Avoid connecting to notify on our own
76         properties. 
77
78 2006-01-02  Matthias Clasen  <mclasen@redhat.com>
79
80         * gtk/gtkentry.c (gtk_entry_delete_from_cursor): When deleting
81         words, delete preceding whitespace as well.  (#325358,  Akkana Peck)
82
83 2006-01-02  Anders Carlsson  <andersca@imendio.com>
84
85         * gdk/quartz/GdkQuartzWindow.c:
86         (-[GdkQuartzWindow canBecomeMainWindow]):
87         (-[GdkQuartzWindow canBecomeKeyWindow]):
88         Have these return TRUE
89         
90         * gdk/quartz/gdkevents-quartz.c:
91         (pointer_grab_internal):
92         Remove FIXME
93         
94         (find_child_window_by_point_helper):
95         Fix bug in offset calculation
96         
97         (find_window_for_event):
98         Use grab window toplevel when a grab is in effect
99         
100         (gdk_event_translate):
101         Don't call _gdk_event_button_generate on mouse up
102         
103         * gdk/quartz/gdkgc-quartz.c:
104         (_gdk_quartz_gc_new):
105         Fix indentation
106         
107         * gdk/quartz/gdkwindow-quartz.c:
108         (gdk_window_new):
109         Make TEMP windows borderless
110         
111         (gdk_window_hide):
112         Hide window
113         
114         (gdk_window_get_origin):
115         Implement
116         
117 2006-01-02  Tor Lillqvist  <tml@novell.com>
118
119         * gdk/win32/gdkwindow-win32.c
120         (gdk_window_impl_win32_get_visible_region): Make identical to the
121         X11 implementation. (#322264, John Ehresman)
122
123         * gdk/win32/gdkgeometry-win32.c (gdk_window_scroll): Get the
124         invalidated region from ScrollWindowEx() instead of an incorrect
125         attempt to calculate it ourselves. Fix by John Ehresman. (#323666)
126
127         * gdkevents-win32.c: Make _gdk_win32_hrgn_to_region() non-static.
128
129         * gdkprivate-win32.h: Declare it.
130
131 2005-12-31  Matthias Clasen  <mclasen@redhat.com>
132
133         * gtk/gtkaction.c: 
134         * gtk/gtkentry.c: Connect to notify instead of multiple
135         detailed signals.
136
137 2005-12-30  Matthias Clasen  <mclasen@redhat.com>
138
139         * gdk/gdk.symbols: 
140         * gdk/gdkcairo.h: 
141         * gdk/gdkcairo.c: Add gdk_cairo_set_source_pixmap.  (#318805,
142         Alexander Larsson)
143
144         * gdk/gdkdisplaymanager.c (gdk_display_manager_set_property): Call
145         gdk_display_manager_set_default_display() to change the default
146         display.  (#153623, Stefan Kost)
147
148         * gtk/gtkmessagedialog.c (gtk_message_dialog_init):
149          (setup_type): Alert dialogs should not have titles and should 
150         not be displayed in the taskbar.  (#310443, Carlos Garnacho Parro,
151         Dennis Cranston)
152
153 2005-12-29  Matthias Clasen  <mclasen@redhat.com>
154
155         * gtk/gtkliststore.c: 
156         * gtk/gtktreestore.c: Always call the get_path and get_iter
157         implementations directly, rather than the current mixture whith
158         some calls going through the GtkTreeModel interface.
159
160         * gtk/gtktreemodelsort.c: 
161         * gtk/gtkliststore.c: 
162         * gtk/gtktreestore.c: Remove excessive g_return_if_fail() checks
163         in static functions.
164         
165         * gtk/gtktreedatalist.c: Use the slice allocater for 
166         GtkTreeDataSortHeader.
167
168         * gtk/gtktreedatalist.h: 
169         * gtk/gtktreedatalist.c (_gtk_tree_data_list_set_header): New function.
170
171         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_sort_func): 
172         * gtk/gtkliststore.c (gtk_list_store_set_sort_func): 
173         * gtk/gtktreestore.c (gtk_tree_store_set_sort_func): Use it here.
174
175 2005-12-27  Matthias Clasen  <mclasen@redhat.com>
176
177         * gtk/gtkbindings.h (GtkBindingSignal): 
178         * gtk/gtkbindings.c (binding_signal_new): Make the
179         args a flexible array inside the struct, and allocate them
180         together.
181
182 Wed Dec 28 00:45:46 2005  Tim Janik  <timj@gtk.org>
183
184         * gtk/gtkctree.c (row_delete): delete GtkCTreeRow as GtkCTreeRow, not
185         clist rows which crashes in gslice later on.
186
187 2005-12-27  Federico Mena Quintero  <federico@ximian.com>
188
189         * gtk/gtkfilefilter.c (gtk_file_filter_filter): In the case for
190         FILTER_RULE_PIXBUF_FORMATS, check that filter_info->mime_type is
191         not NULL.  Fixes bug #317687.
192
193 2005-12-27  Matthias Clasen  <mclasen@redhat.com>
194
195         * gdk/x11/gdkevents-x11.c (check_transform): Fix a typo.
196         (gdk_screen_get_setting): Avoid relocations for the settings
197         map.
198
199         * gdk/x11/gdkproperty-x11.c: Avoid relocations for the list
200         of standard atoms.
201
202         * gtk/gtkbindings.c (gtk_binding_set_new): Avoid copying
203         the set_name by interning it.
204
205 2005-12-26  Matthias Clasen  <mclasen@redhat.com>
206
207         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Precache atoms
208         before calling gdk_window_new().
209
210         * gtk/gtktextbtree.c: Use the slice allocator for some other small
211         auxiliary structures as well.
212
213         * gtk/gtkimcontext.c (gtk_im_context_filter_keypress): Clarify
214         docs.  (#324996)
215
216         * gtk/gtktextbtree.c (gtk_text_btree_get_tag_info) 
217         (gtk_text_btree_remove_tag_info): Use the slice allocator for 
218         tag info.
219
220         * README.in: Mention the stripping of (_F) suffixes.
221
222         * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Strip a suffix of 
223         the form "(_<single character>)", since this is the preferred way
224         for some languages to indicate accelerators.  (#323956, Yang Hong)
225
226         * gtk/gtklabel.c (gtk_label_class_init): Add a gtk-label-select-on-focus
227         setting.
228         (gtk_label_grab_focus): And use it here to select the contents of
229         the label when appropriate.
230         (gtk_label_class_init): Use the same keybindings for select all/
231         unselect all as GtkEntry and GtkTextView.
232
233         * gtk/gtkdialog.c (gtk_dialog_map): When looking for the initial
234         focus, avoid leaving a selection in a label.
235
236 2005-12-25  Matthias Clasen  <mclasen@redhat.com>
237
238         * gtk/gtkwindow.c: Documentation fixes.  (#324815, 
239         Ross Burton)
240
241         * configure.in: Require GLib 2.9.2
242
243 2005-12-24  Matthias Clasen  <mclasen@redhat.com>
244
245         * gdk/gdkregion-generic.c: 
246         * gdk/gdkpolyreg-generic.c: 
247         * gdk/gdkregion.h: 
248         * gdk/gdkrectangle.c: Inline docs, use g_assert(), avoid 
249         extra allocation for rectangular regions.
250
251 Thu Dec 22 18:53:14 2005  Tim Janik  <timj@gtk.org>
252
253         * gtk/gtkobject.[hc]: renamed GUnowned to GInitiallyUnowned.
254
255 Thu Dec 22 17:55:11 2005  Tim Janik  <timj@gtk.org>
256
257         * gtk/gtkobject.h: parent type fixups in structure declarations.
258
259 Thu Dec 22 16:01:27 2005  Tim Janik  <timj@imendio.com>
260
261         * gtk/gtkobject.c: derive GtkObject from GUnowned,
262         so it initially has a floating reference count.
263         gtk_object_class_init(): installa floating flag handler with
264         libgobject, so for GtkObjects the flag is stored as GTK_FLOATING
265         in the ->flags member.
266
267         * tests/floatingtest.c: test floating flag uses.
268
269 2005-12-21  Matthias Clasen  <mclasen@redhat.com>
270
271         * gdk/gdkregion-generic.c: Use the slice allocator
272         for regions. Still todo: avoid extra allocations for
273         the single-rectangle case.
274
275         * gtk/gtksettings.c (gtk_settings_class_init): Update
276         class_n_properties after installing color-hash, since
277         other classes install settings, too.
278
279         * gtk/gtkctree.c: 
280         * gtk/gtkclist.c: Fix some mistakes in the conversion
281         from mem chunks to slice allocator.
282
283         * gtk/gtkiconview.c (adjust_wrap_width): Adjust the 
284         wrap-width also if an explicit item width is set.  
285         (#322475, Alex Graveley)
286         
287 2005-12-20  Matthias Clasen  <mclasen@redhat.com>
288
289         * gtk/gtkiconview.c (gtk_icon_view_button_press): Reset 
290         pressed_button to -1 after handling a double click, so that
291         motion events occurring between here and the release event
292         don't trigger DND.  (#324588, Dave Andreoli)
293
294 2005-12-19  Matthias Clasen  <mclasen@redhat.com>
295
296         * gtk/gtkcellrenderer.c: 
297         * gtk/gtkselection.c: 
298         * gtk/gtkcalendar.c: 
299         * gtk/gtkitemfactory.c: 
300         * gdk/gtkcombo.c: 
301         * gdk/gdkpixbuf-render.c: Documentation updates
302
303         * gtk/gtktreemodel.c: 
304         * gtk/gtkplug.c: 
305         * gtk/gtkwindow.c: Documentation fixes.
306
307 2005-12-19  Michael Natterer  <mitch@imendio.com>
308
309         * gtk/gtkentry.c: implement boolean property "truncate-multiline"
310         which, when enabled, truncates multi-line pastes or drops to their
311         first line. Fixes bug #322252.
312
313         * gtk/gtkfilechooserentry.c (gtk_file_chooser_entry_init): enable
314         truncate-multiline here.
315
316 2005-12-17  Matthias Clasen  <mclasen@redhat.com>
317
318         * gtk/gtksettings.c (get_color_hash): Don't crash if
319         there is no color scheme.  (#324429, Diego Gonzalez)
320
321 2005-12-16  Matthias Clasen  <mclasen@redhat.com>
322
323         * gtk/gtkfilesystem.c (gtk_file_system_module_load): 
324         * gtk/gtkimmodule.c (gtk_im_module_load): 
325         * gtk/gtkthemes.c (gtk_theme_engine_load): 
326         * gtk/gtkmodules.c (find_module): Use G_MODULE_BIND_LAZY when
327         opening modules.
328
329         * gtk/gtksettings.[hc]: Rework the way the color scheme setting
330         is inherited. Now the overriding is done on a per-color basis,
331         rather than for the setting as a whole. This has the effect
332         that themes can declare defaults for all the symbolic colors they
333         use by specifying a value for the gtk-color-scheme setting in 
334         their rc file, while still allowing the XSetting to override
335         "standard" symbolic colors. The hash table is now available
336         through the color-hash property.
337         
338         * gtk/gtkrc.c: Use the new color-hash property.
339         
340 2005-12-14  Matthias Clasen  <mclasen@redhat.com>
341
342         * gtk/gtkcontainer.c (_gtk_container_focus_sort): Skip unrealized
343         children when doing focus sorting.  (#323995, Dan Winship)
344
345 2005-12-14  Rodney Dawes  <dobey@novell.com>
346
347         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon):
348         Default to "drive-harddisk" and then fall back to gnome-dev-harddisk
349         (get_icon_for_mime_type): Look up the mime type icons according to the
350         Icon Naming Specification and then fall back to the gnome-mime- prefix
351         for the mime type icons
352
353         Fixes #323655
354         
355 2005-12-14  Matthias Clasen  <mclasen@redhat.com>
356
357         * gtk/gtkdnd.c (gtk_drag_set_icon_name): Warn if the icon
358         cannot be loaded.  (#323504, Kjartan Maraas)
359
360         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add docs 
361         for the row-activated signal.  (#324044, Davyd Madeley)
362
363 2005-12-14  Michael Natterer  <mitch@imendio.com>
364
365         * tests/test-images/valid_jpeg_progressive_test: new test image.
366
367 Tue Dec 13 09:47:20 2005  Tim Janik  <timj@gtk.org>
368
369         * README.in: added a link to the floating reference docs in the
370         2.10 release NEWS section.
371
372 2005-12-12  Matthias Clasen  <mclasen@redhat.com>
373
374         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_index): 
375         Speed this function up, using the fact that visibility is 
376         constant across segments. (#321548, Paolo Borelli)
377
378         * gtk/gtktextbtree.c (_gtk_text_line_char_to_byte_offsets): 
379         * gtk/gtktextiter.c (gtk_text_iter_backward_chars): Speed up
380         stepping backwards.  (#320638, Larry Ewing, Paolo Borelli)
381
382         * gtk/gtkicontheme.c (ensure_valid_themes): Only broadcast
383         _GTK_LOAD_ICONTHEMES if we detect a real theme change, not
384         upon initial theme load.  (#323876, Peter Lund)
385
386         * gtk/gtkstatusicon.c (gtk_status_icon_class_init): Register
387         the size-changed signal correctly.  (#323848, Murray Cumming)
388
389         * gtk/gtkmarshalers.list: Add necessary marshaller.
390
391         * gtk/gtktextview.c (gtk_text_view_get_border_window_size): Don't
392         fall thru to the wrong window types.  (#323843)
393
394         Make the gtk-color-scheme setting work.
395         
396         * gtk/gtksettings.h: 
397         * gtk/gtksettings.c (_gtk_settings_get_color_hash): Add a getter
398         that takes care of initializing the color hash if it is not 
399         already there.  
400
401         * gtk/gtkrc.c (gtk_rc_color_scheme_changed, gtk_rc_context_get): 
402         And use it here.        
403
404 2005-12-10  Matthias Clasen  <mclasen@redhat.com>
405
406         * gdk/gdk.c (gdk_parse_args): Warn if parsing fails,
407         not if it succeeds. 
408
409 2005-12-09  Matthias Clasen  <mclasen@redhat.com>
410
411         * gtk/gtkselection.c (gtk_selection_data_get_uris): Don't
412         leak list[0].  (#323629, Markku Vire)
413
414         * gtk/gtktextbuffer.c (paste_from_buffer): Unref the buffer
415         when freeing the RequestData.  (#323577)
416
417 2005-12-07  Matthias Clasen  <mclasen@redhat.com>
418
419         * demos/gtk-demo/iconview_edit.c (set_cell_color): Don't
420         leak text.
421
422         * gtk/gtktoolbutton.c (clone_image_menu_size): Fix a 
423         variable name clash.  (#323475, Ross Burton)
424
425 2005-12-07  Ross Burton  <ross@burtonini.com>
426
427         * docs/reference/gtk/tmpl/gtkenums.sgml:
428         * gtk/gtktoolbutton.c:
429         If the toolbar mode is ICONS and there is no icon set then show
430         the label, and vice versa (#322019)
431
432 2005-12-07  Matthias Clasen  <mclasen@redhat.com>
433
434         * gtk/gtktoolbutton.c (clone_image_menu_size): Fix a 
435         variable name clash.  (#323475, Ross Burton)
436
437         * gtk/gtktreeview.c (gtk_tree_view_key_press): Use the correct
438         window when synthesizing the key event.  (#323077,
439         Sadrul Habib Chowdhury)
440         
441         (gtk_tree_view_search_key_press_event): Also listen for
442         GDK_ISO_Left_Tab.  (#323077, Sadrul Habib Chowdhury)
443
444         * gtk/gtktextview.c (gtk_text_view_preedit_changed_handler): 
445         Only scroll if we have focus.  (#316310, Paolo Borelli)
446
447         * gtk/gtkfilesystemunix.c (cb_fill_in_mime_type): Fix a C99ism,
448         spotted by Crispin Flowerday.
449
450 2005-12-06  Behdad Esfahbod  <behdad@gnome.org>
451
452         * gtk/gtksettings.c (settings_update_font_options): Turn metrics
453         hinting on (part of #307196)
454
455 2005-12-06  Matthias Clasen  <mclasen@redhat.com>
456
457         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_reset): Don't
458         commit from reset, it upstets GtkTextView.
459
460         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Be more
461         careful when turning blinking on and off.
462         (gtk_text_view_focus_out_event): Make the cursor really invisible
463         when the focus goes away.  (#323087, Sadrul Habib Chowdhury)
464         (cursor_blinks): Check the gtk-cursor-blink setting first.
465
466         * gtk/gtktreeview.c (gtk_tree_view_key_press): Fix refcounting
467         issues with new_event and its window.
468
469         * gtk/gtkmenu.c (gtk_menu_attach_to_widget): Accept NULL
470         as a detach func.  (#323386, Jorn Baayen)
471
472         * gtk/gtkcalendar.c: Avoid conflict with win32 headers in
473         the libdate routines.  (#323045, Kazuki Iwamoto)
474
475         * gdk/gdk.c (gdk_parse_args): 
476         * gtk/gtkmain.c (gtk_parse_args): Don't ignore errors
477         from g_option_context_parse(). 
478
479 Tue Dec  6 11:37:59 2005  Tim Janik  <timj@gtk.org>
480
481         * gdk/gdkevents.c (gdk_event_new): fix missing hash table 
482         initialization.
483
484 Tue Dec  6 10:32:17 2005  Tim Janik  <timj@gtk.org>
485
486         * gtk/gtkstatusbar.c: ported memchunk uses to g_slice, so the code
487         compiles again.
488
489 2005-12-05  Federico Mena Quintero  <federico@ximian.com>
490
491         * gtk/gtkfilechooserdefault.c (trap_activate_cb): "event->state &
492         modifiers", not "event->state && modifiers".  Patch by Sadrul
493         Habib Chowdhury <imadil@gmail.com>.  Fixes bug #323073.
494
495 2005-12-05  Matthias Clasen  <mclasen@redhat.com>
496
497         * gtk/gtkwidget.c: 
498         * gtk/gtkuimanager.c: 
499         * gtk/gtktreedatalist.c: 
500         * gtk/gtktext.c: 
501         * gtk/gtkmain.c: 
502         * gtk/gtkitemfactory.c: 
503         * gtk/gtkseparator.[hc]:
504         * gtk/gtkclist.[hc]: 
505         * gtk/gtkctree.c:
506         * gtk/gtkgc.c: Use g_slice instead of mem chunks.
507
508 2005-12-05  Michael Natterer  <mitch@imendio.com>
509
510         * gdk/x11/gdkevents-x11.c: map the new GtkSettings properties
511         "timeout-initial", "timeout-repeat", "color-scheme" and
512         "enable-animations" to X settings.
513
514 2005-12-05  Matthias Clasen  <mclasen@redhat.com>
515
516         * gdk/gdkevents.c: 
517         * gdk/gdkcolor.c: Use g_slice instead of mem chunks.
518
519         * gtk/gtktreeview.c (gtk_tree_view_key_press): Free new_event
520         after sending it to the search entry.  (#323209, Crispin Flowerday)
521
522         * README.in: Add a note about GTK_FLOATING.
523
524         * gtk/gtkobject.h (GTK_OBJECT_FLOATING): Use g_object_is_floating.
525
526 2005-12-02  Matthias Clasen  <mclasen@redhat.com>
527
528         * gtk/gtktoolbutton.c (clone_image_menu_size): Don't leak
529         a pixbuf.  (#323024, Paolo Borelli)
530
531 2005-12-02  Matthias Clasen  <mclasen@redhat.com>
532
533         * gtk/gtkfilesystemunix.c (get_icon_for_mime_type): Don't crash
534         if mime_type is NULL.  (#322998, Sadrul Habib Chowdhury)
535
536 2005-12-02  Michael Natterer  <mitch@imendio.com>
537
538         * gtk/gtkmenu.c: applied modified patch from maemo-gtk which
539         adds a "horizontal-padding" style property. Fixes bug #323036.
540
541 2005-12-01  Michael Natterer  <mitch@imendio.com>
542
543         Merged modified patch from maemo-gtk that allows to disable
544         toolbar animations. Addresses bug #142582.
545
546         * gtk/gtksettings.c: added boolean property "gtk-enable-animations".
547         (patch from Christian Neumair)
548
549         * gtk/gtktoolbar.c: don't animate toolbar changes if the settings
550         property is FALSE. Replaced the individual "notify::foo"
551         connections to GtkSettings by a single "notify" callback and
552         dispatch internally.
553
554 2005-12-01  Michael Natterer  <mitch@imendio.com>
555
556         * gtk/gtkmenu.c (gtk_menu_class_init): removed redundant
557         assignment of widget_class->motion_notify_event.
558
559 2005-11-29  Matthias Clasen  <mclasen@redhat.com>
560
561         * gtk/gtktoggleaction.c (gtk_toggle_action_class_init): Add 
562         an active property.  (#322673, Jorn Baayen)
563
564         Properly handle model changes in GtkTreeSelection: (#322569,
565         Milosz Derezynski)
566         
567         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach): 
568         Get a reference to the model, and stop the iteration if the model
569         of the treeview is changed on the way.
570
571         * gtk/gtktreeprivate.h: 
572         * gtk/gtktreeselection.c (_gtk_tree_selection_emit_changed): New 
573         private function to emit the GtkTreeSelection::changed signal.
574
575         * gtk/gtktreeview.c (gtk_tree_view_set_model): Call 
576         _gtk_tree_selection_emit_changed() when the model changes.
577
578 2005-11-28  Federico Mena Quintero  <federico@ximian.com>
579
580         Fixes the critical warnings from bug #317999, thus fixing the bug
581         completely:
582
583         * gtk/gtkfilechooserdefault.c
584         (gtk_file_chooser_default_get_paths): In SELECT_FOLDER mode,
585         use _gtk_file_chooser_get_current_folder_path() instead of fetching the
586         impl->current_folder directly.  The latter may be null if we are
587         in RELOAD_NONE state.
588
589 2005-11-28  Federico Mena Quintero  <federico@ximian.com>
590
591         Fix bug #321560, based on a patch by Bogdan Nicula (bogdanni@hotmail.com):
592
593         * gtk/gtkfilechooserdefault.c (up_folder_handler): Don't add the
594         current_folder to the pending select paths here; the path bar will
595         give it to us now.
596         (path_bar_clicked): Add the child_path to the pending select paths
597         here.
598         (show_and_select_paths): Don't filter out folders.
599         (show_and_select_paths): Don't take separate arguments for
600         only_one_path and multiple paths.
601
602         * tests/autotestfilechooser.c (test_folder_switch_and_filters):
603         New test about preserving the filters when we change folders.
604
605 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
606
607         * gtk/gtkscale.c (_gtk_scale_format_value): Insert an LRM, to prevent
608         -20 to come out as 20- in RTL locales.  (#322571, Tze'ela Hebron)
609
610         * gtk/gtkaction.c (gtk_action_sync_button_stock_id) 
611         (connect_proxy): Buttons use the label property for stock ids.  (#322565,
612         Milosz Derezynski)
613
614         * gtk/gtkiconview.c (update_text_cell, update_pixbuf_cell): Correctly
615         handle the cell list and indices into it.  (#321856)
616
617 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
618
619         * gtk/gtktooltips.c (gtk_tooltips_timeout): Set timer_tag to 0 when
620         the timeout is done.  (#322291, Jean-Yves Lefort)
621
622 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
623
624         * gtk/gtkfilechooserdefault.c (shortcuts_key_press_event_cb): Make
625         F2 work for renaming bookmarks.  (#320822, Jaap A. Haitsma, patch
626         by Paolo Borelli)
627
628 2005-11-28  Tor Lillqvist  <tml@novell.com>
629
630         * gdk/win32/gdkwindow-win32.c (gdk_window_set_urgency_hint):
631         Implement the conditional use of FlashWindowEx() properly for MSVC
632         compilations. The code was confusingly assuming that if compiled
633         with a "new" compiler, it will only be run on "new" Windows
634         versions. We want it to run on "old" versions, too, even if
635         compiled with a "new" compiler. There are two orthogonal issues:
636         whether the compiler defines the necessary API in its headers, and
637         whether it is present at run-time. (#318077)
638
639         * gtk/gtkcalendar.c (gtk_calendar_init): Use GetLocaleInfo() on
640         Windows to get the localized weekday and month names. strftime()
641         in the Microsoft C library returns strings in the default codepage
642         for the locale of the process, not the system codepage. Thus
643         g_locale_to_utf8() isn't useable on the return value from
644         strftime(). (#322603)
645
646 2005-11-27  Matthias Clasen  <mclasen@redhat.com>
647
648         * gtk/gtkmessagedialog.c (gtk_message_dialog_new_with_markup): 
649         Fix an example.  (#322493, Elie De Brauwer)
650         
651         Fix two memory handling problems in GtkTreeView: (#322350, 
652         Søren Sandmann)
653         
654         * gtk/gtktreeview.c (gtk_tree_view_destroy) 
655         (gtk_tree_view_set_model): Remove all references to nodes in
656         the old model.
657         (gtk_tree_view_real_collapse_row): Unmark expanded_collapsed_node
658         before removing the children.
659
660         * gtk/gtkcolorbutton.c (gtk_color_button_init): Don't leak a 
661         PangoLayout here.  (#322505, Paolo Borelli)
662
663 2005-11-27  Tor Lillqvist  <tml@novell.com>
664
665         Once again rework Win32 window decoration code. Doesn't break
666         #104514. The dialogs in gtk-demo now have the same decorations and
667         behaviour as on X11. Tried to fix #322516 but it seems very hard
668         to make the trivial sample program there behave as expected. OTOH,
669         simply moving the gtk_window_decorate() call in the #322516 sample
670         program after the call to gtk_widget_show() helps...
671             
672         * gdk/win32/gdkwindow-win32.c (set_or_clear_style_bits): Revert to
673         the correct semantics. Each call to gdk_window_set_decorations()
674         which calls this function is supposed to affect all decorations.
675
676         (decorate_based_on_hints): New function, looks at both geometry
677         hints and type hint and sets window decorations based on
678         that. Consolidate code from gdk_window_set_geometry_hints() and
679         gdk_window_set_type_hint() here.
680
681         (gdk_window_set_geometry_hints, gdk_window_set_type_hint): Call
682         decorate_based_on_hints().
683
684 2005-11-25  Dom Lachowicz <cinamod@hotmail.com>
685
686         * modules/engines/ms-windows/*.[ch]: Merge with gtk-wimp's CVS.
687         Includes improved menu icon spacing, [+]/[-] expander drawing,
688         status-bar gippie drawing, and notebook tab drawing.
689         
690 2005-11-24  Michael Natterer  <mitch@imendio.com>
691
692         * gtk/gtktoolbar.h (struct _GtkToolbar): changed two private guint
693         that used to hold signal handler IDs to two guint of padding.
694
695         * gtk/gtktoolbar.c (struct _GtkToolbarPrivate): added them as
696         gulong here.
697
698         (gtk_toolbar_screen_changed): changed accordingly.
699
700 Wed Nov 23 18:55:47 2005  Tim Janik  <timj@imendio.com>
701
702         * gtk/gtkobject.[hc]: deprecated floating/sink API and implemented it
703         in terms of the GObject floating/sink API.
704
705         * gtk/gtkaboutdialog.c:
706         * gtk/gtkaction.c:
707         * gtk/gtkcellview.c:
708         * gtk/gtkclist.c:
709         * gtk/gtkcolorsel.c:
710         * gtk/gtkcombobox.c:
711         * gtk/gtkfilechooserdefault.c:
712         * gtk/gtkiconview.c:
713         * gtk/gtkinvisible.c:
714         * gtk/gtkitemfactory.c:
715         * gtk/gtklayout.c:
716         * gtk/gtkmenu.c:
717         * gtk/gtkmenutoolbutton.c:
718         * gtk/gtknotebook.c:
719         * gtk/gtkprogress.c:
720         * gtk/gtkrange.c:
721         * gtk/gtkspinbutton.c:
722         * gtk/gtkstatusicon.c:
723         * gtk/gtktext.c:
724         * gtk/gtktextview.c:
725         * gtk/gtktoolbar.c:
726         * gtk/gtktoolbutton.c:
727         * gtk/gtktoolitem.c:
728         * gtk/gtktreeitem.c:
729         * gtk/gtktreeview.c:
730         * gtk/gtktreeviewcolumn.c:
731         * gtk/gtkuimanager.c:
732         * gtk/gtkviewport.c:
733         * gtk/gtkwidget.c:
734         * gtk/gtkwindow.c:
735         ported to use GObject's g_object_ref_sink().
736
737         * gtk/gtkcolorsel.c:
738         * gtk/gtkfilechooserdefault.c:
739         * gtk/gtkaboutdialog.c:
740         fixed compiler warnings.
741
742 2005-11-23  Matthias Clasen  <mclasen@redhat.com>
743
744         * gtk/gtksettings.c (gtk_settings_class_init): Add some docs
745         about gtk-color-scheme.
746
747 2005-11-23  Behdad Esfahbod  <behdad@gnome.org>
748
749         * configure.in (enable_explicit_deps): Fix typo when checking
750         libtool config deplibs_check_method. Moreover, enable explicit
751         deps if we get anything other than pass_all from libtool. (part of
752         #318750)
753
754 2005-11-23  Matthias Clasen  <mclasen@redhat.com>
755
756         * gtk/updateiconcache.c (write_csource): Don't create a big
757         string, since Visual C++ doesn't like strings longer than 64k. 
758         (#322238, Kazuki IWAMOTO
759
760         * gtk/gtkentry.c: Include gtkimcontextsimple.h  (#322235,
761         Kazuki IWAMOTO)
762
763 2005-11-23  Michael Natterer  <mitch@imendio.com>
764
765         * gtk/gtkrc.c (gtk_rc_reset_widgets): don't leak all toplevel
766         windows on other screens (correctly remove all temporary
767         references).
768
769 2005-11-23  Michael Natterer  <mitch@imendio.com>
770
771         Added symbolic themable colors. Patch is a merged version of
772         proposals from Matthias and maemo-gtk. Fixes bug #114355.
773
774         * configure.in: require glib >= 2.9.1 for refcountable hashtables.
775
776         * gtk/gtksettings.c: added property "color-scheme" which is a
777         string defining colors like "foreground:black\nbackground:grey".
778         Automatically provide a name->GdkColor hash table mapping for the
779         color scheme.
780
781         * gtk/gtkrc.[ch]: added list of color hashes that works like the
782         list of icon factories. Append the color scheme hash from
783         GtkSettings if it exists. Extended gtkrc syntax to allow defining
784         and referencing of logical colors. Also allow to modulate colors
785         in gtkrc by using arbitrary expressions of mix(), shade(),
786         lighter() and darker(). Added internal function
787         _gtk_rc_style_get_color_hashes().
788
789         * gtk/gtkstyle.[ch]: keep a private list of color hashes around.
790         Get the list from _gtk_rc_style_get_color_hashes(). Export
791         internal function _gtk_style_shade() (used by above color
792         expressions). Added public API gtk_style_lookup_color() which
793         looks up a logical color by name.
794
795         * gtk/gtk.symbols: add gtk_style_lookup_color
796
797         * tests/testgtkrc: use symbolic colors for making
798         the scrollbars red.
799
800 2005-11-22  Michael Natterer  <mitch@imendio.com>
801
802         Made button-press timeouts which work like key repeat timeouts
803         configurable. Addresses bug #142582:
804
805         * gtk/gtksettings.c: added properties "gtk-timeout-initial" and
806         "gtk-timeout-repeat" which defalt to 200/20 (ms).
807
808         Use the values from GtkSettings instead of hardcoding them
809         (the repeat value is either taken as-is for fast repeat or
810         multiplied by 5 for slow repeat). Changed all places to use these
811         two standard initial/repeat timings:
812
813         * gtk/gtkcalendar.c (unchanged 200/20)
814         * gtk/gtknotebook.c (unchanged 200/100)
815         * gtk/gtkpathbar.c (changed from 300/150 to 200/100)
816         * gtk/gtkrange.c (changed from 250/100 to 200/100)
817         * gtk/gtkspinbutton.c (unchanged 200/20)
818
819 2005-11-21  Anders Carlsson  <andersca@imendio.com>
820
821         * configure.in:
822         * gtk/Makefile.am:
823         * gdk/Makefile.am:
824         * gdk/quartz/*:
825         Add quartz backend.
826         
827         * docs/tools/Makefile.am:
828         Only build docshooter when the X11 backend is used.
829         
830         * gtk/gtkplug-stub.c:
831         Include gtkplug.h here.
832         
833         * gtk/gtksocket-stub.c:
834         Include gtksocket.h here.
835         
836 2005-11-21  Matthias Clasen  <mclasen@redhat.com>
837
838         * gtk/gtkinputdialog.c: Convert GtkInputDialog to 
839         g_type_class_add_private.
840
841         * gtk/gtksocket.c: Convert GtkSocket to g_type_class_add_private.
842
843         * gtk/gtkmenu.c: Convert GtkMenu to g_type_class_add_private.
844
845         * gtk/gtk.symbols:
846         * gtk/gtkcombobox.[hc]: Add a tearoff-title property,
847         with getter and setter.  (#316482, Olexiy Avramchenko)
848
849         * tests/testcombo.c (main): Test gtk_combo_box_set_title
850
851         * gtk/gtkpathbar.c: Merge remaining fixes from the 2.8 branch,
852         pointed out by Michael Natterer.
853
854         Fix for bug #321542, Benedikt Meurer:
855         
856         * gtk/gtkcombobox.c (gtk_combo_box_set_active_internal):
857         Emit notify::active.
858         
859         (gtk_combo_box_child_show, gtk_combo_box_child_hide): Use
860         g_signal_emit, not g_signal_emit_by_name.
861
862 2005-11-18  Matthias Clasen  <mclasen@redhat.com>
863
864         Fix crashes in connection with pathbar scrolling (#321560,
865         Bogdan Nicula)
866         
867         * gtk/gtkpathbar.c (gtk_path_bar_update_slider_buttons): 
868         Stop scrolling when desensitising slider buttons.
869         (gtk_path_bar_scroll_timeout, gtk_path_bar_slider_button_press): 
870         And use it here.  
871
872         * gtk/gtkpathbar.h (struct _GtkPathBar): Add a separate
873         scrolling_down flag.
874
875 2005-11-18  Matthias Clasen  <mclasen@redhat.com>
876
877         * gtk/gtkpathbar.c (button_clicked_cb): Fix a C99ism.
878         (#321777, Jens Granseuer)
879
880         * gtk/gtkaction.c (disconnect_proxy): Disconnect the
881         sync callback for the visibility property.  (#321761,
882         Philip Langdale)
883
884         Turn off input methods in invisible entries, since
885         they are confusing.  (#317002, James Su)
886         
887         * gtk/gtkentry.c (gtk_entry_set_visibility): Toggle input
888         methods if visibility changes.
889         (popup_targets_received): Don't show the input method
890         menu if the entry is invisible.  
891
892 2005-11-17  Matthias Clasen  <mclasen@redhat.com>
893
894         * README.in: Add a note about range arrow sensitivity.
895
896         * perf/treeview.c: const correctness fixes
897         found by Arjan van de Ven and gcc.
898
899 2005-11-16  Michael Natterer  <mitch@imendio.com>
900
901         * gtk/gtkimage.c (animation_timeout): call
902         gtk_window_process_updates() so the animation keeps running even
903         if the main loop is busy with sources that eat a lot of cpu with
904         high priority. Fixes bug #321444.
905
906         (gtk_image_new_from_animation): document the fact that the
907         animation will stop running if the main loop is busy with sources
908         that have priorities higher than G_PRIORITY_DEFAULT.
909
910         * tests/testimage.c: added test case that shows an animation even
911         though a cpu-eating idle function is running.
912
913 2005-11-16  Michael Natterer  <mitch@imendio.com>
914
915         * gdk/x11/gdkevents-x11.c (_gdk_events_uninit): new internal
916         function which destroys the display's event source. Also removes
917         the source from the global display_sources list and unrefs it.
918
919         * gdk/x11/gdkprivate-x11.h: declare the function.
920
921         * gdk/x11/gdkdisplay-x11.c (gdk_display_x11_dispose): call it
922         instead of half-destroying the source here.
923
924 2005-11-15  Matthias Clasen  <mclasen@redhat.com>
925
926         * gtk/gtktreestore.c (gtk_tree_store_move): Fix a memory
927         leak.  (#321032, Peter Zelezny)
928
929 2005-11-15  Michael Natterer  <mitch@imendio.com>
930
931         * gdk/x11/gdkdisplay-x11.c (gdk_display_x11_finalize): destroy
932         display->xid_ht as late as possible (right before XCloseDisplay)
933         because it still needs to be around when the display's screens are
934         finalized. (#85715)
935
936 2005-11-14  Matthias Clasen  <mclasen@redhat.com>
937
938         * gtk/gtkselection.c (gtk_selection_data_set_uris): Don't
939         leak result.  (#321441, Tommi Komulainen)
940
941 2005-11-14  Matthias Clasen  <mclasen@redhat.com>
942
943         * gtk/gtkicontheme.c (gtk_icon_theme_get_icon_sizes):
944         Don't crash if there is no builtin icon.
945
946 2005-11-14  Michael Natterer  <mitch@imendio.com>
947
948         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_set_property):
949         removed redundant calls to g_object_notify().
950
951 2005-11-13  Matthias Clasen  <mclasen@redhat.com>
952
953         * gdk/gdkcolor.c (gdk_color_parse): Documentation 
954         improvements.  (#321338)
955
956         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Make
957         limit an inclusive boundary.  (#321299)
958
959 2005-11-12  Michael Natterer  <mitch@imendio.com>
960
961         * gtk/Makefile.am: fixed icon rules so gtkbuiltincache.h is only
962         rebuilt if needed.
963
964 2005-11-12  Dom Lachowicz <cinamod@hotmail.com>
965
966         * modules/engines/ms-windows/msw_style.c: Bug #313627. Make win32 
967         theme's handling of toolbars, handleboxes, and menubars more in-line
968         with Microsoft's IE style.
969         * modules/engines/ms-windows/*.c: Indentation cleanups
970         
971 2005-11-12  Matthias Clasen  <mclasen@redhat.com>
972
973         Make builtin icons work in gtk_window_set_icon_name() 
974         (#321046, Maxim Udushlivy)
975
976         * gtk/gtkicontheme.c (insert_theme): Always insert the default
977         theme.
978         (ensure_valid_themes): Call _gtk_icon_theme_ensure_builtin_cache()
979         from here.
980         (theme_lookup_icon, find_builtin_icon): ...and not from here.
981         (gtk_icon_theme_lookup_icon): Remove an unncessary assert.
982         (gtk_icon_theme_get_icon_sizes): Also check builtin icons.
983
984 2005-11-12  Tor Lillqvist  <tml@novell.com>
985
986         * gtk/gtkfilesystemwin32.c (filename_get_info): Don't hide
987         dotfiles, no such convention on Win32. Just hide files with the
988         hidden attribute. (#314627)
989
990 2005-11-11  Federico Mena Quintero  <federico@ximian.com>
991
992         * gtk/gtkfilechooserdefault.c (shortcuts_insert_path): Do not
993         check whether the path is a folder.  It is useful to bookmark
994         files as well (e.g. todo.txt), and this will also help
995         performance.
996         (shortcuts_add_bookmark_from_path): Likewise.
997         (shortcuts_activate_iter): Change folders or select files, as
998         appropriate.
999
1000 2005-11-11  Federico Mena Quintero  <federico@ximian.com>
1001
1002         * tests/autotestfilechooser.c (main): Use
1003         g_log_set_default_handler() instead of explicitly setting a
1004         handler for each domain.
1005
1006         * gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): Only get
1007         the base path of the volume if it is mounted.
1008
1009 2005-11-11  Michael Natterer  <mitch@imendio.com>
1010
1011         Added per-stepper API for GtkRange's stepper sensitivity as
1012         discussed in bug #321056:
1013
1014         * gtk/gtkenums.h: added GtkSensitivityType which can be
1015         { AUTO, ON, OFF }.
1016
1017         * gtk/gtkrange.[ch]: added properties "lower-stepper-sensitivity"
1018         and "upper-stepper-sensitivity" and public getters/setters for
1019         them. Changed stepper drawing to honor the new properties.
1020
1021         * gtk/gtk.symbols: added the new symbols.
1022
1023 2005-11-10  Matthias Clasen  <mclasen@redhat.com>
1024
1025         * gtk/gtkcombobox.c: Add show-popup and hide-popup signals and
1026         emit them when the popup is shown or hidden.  (#162531, Tommi
1027         Komulainen)
1028
1029         * tests/testcombo.c: Add an example of popuplating a combobox
1030         on click.
1031
1032         * gtk/gtktreeview.c (gtk_tree_view_motion_resize_column): Another
1033         erroneous semicolon.
1034
1035         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get): Remove an erroneous
1036         semicolon. 
1037
1038         Don't corrupt odd keymaps (#316638, Kean Johnston)
1039         
1040         * gdk/x11/gdkkeys-x11.c (set_symbol): Auxiliary function to
1041         handle frobbing keymaps with odd numbers of syms/code.
1042         
1043         * gdk/x11/gdkkeys-x11.c (update_keymaps): Use set_symbol() to 
1044         frob the keymap.
1045
1046         Improve navigation to parent folders.  (#318444, Andrei Yurkevich)
1047         
1048         * gtk/gtkpathbar.[hc]: Add a child_path argument to
1049         the path_clicked signal.
1050         * gtk/gtkfilechooserdefault.c (path_bar_clicked): Select the
1051         child_path, if it is provided.
1052         * gtk/marshalers.list (path_bar_clicked): Add the necessary
1053         glue.
1054
1055         * gtk/gtkmenu.c: Fix some compiler warnings. (#321141,
1056         Kjartan Maraas)
1057         
1058         * gtk/gtk.symbols: 
1059         * gtk/gtktreeview.h: 
1060         * gtk/gtktreeview.c: Implement a getter for headers-clickable.
1061         (#163851, Richard Hult)
1062
1063 2005-11-10  Michael Natterer  <mitch@imendio.com>
1064
1065         Applied patch from maemo-gtk that addresses many issues wrt
1066         display migration and display closing (bug #85715).
1067
1068         * gdk/gdkdisplay.c (gdk_display_dispose): don't just set the
1069         default display to NULL when it's closed. Instead set the most
1070         recently opened display as new default (if one exists).
1071
1072         * gdk/gdkpango.c (on_renderer_display_closed): fixed signature
1073         of this callback.
1074
1075         * gdk/gdkscreen.c (gdk_screen_dispose): check if the GCs still
1076         exist before unrefing them.
1077
1078         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): if the screen
1079         is closed, allow destruction of the root window.
1080
1081         * gdk/x11/gdkdisplay-x11.c: moved some stuff from finalize() to
1082         dispose(), free stuff that was leaked before.
1083
1084         * gdk/x11/gdkevents-x11.c (_gdk_x11_events_uninit_screen): check if
1085         the xsettings_client still exists before destroying it.
1086
1087         * gdk/x11/gdkkeys-x11.c: added finalization and free the allocated
1088         X resources.
1089
1090         * gdk/x11/gdkpixmap-x11.c: moved stuff from finalize() to new
1091         dispose() implementation.
1092
1093         * gdk/x11/gdkscreen-x11.c: moved stuff from finalize() to
1094         dispose() and check if it still exists before unrefing it. Set
1095         their pointers to NULL/None *after* upchaining in dispose(),
1096         because X11 implementations of members of the parent class still
1097         need them for their own destruction.
1098
1099         * gdk/x11/gdkvisual-x11.c: removed finalize() implementation which
1100         was g_error()ing when finalizing a visual.
1101
1102         * gtk/gtkclipboard.c (gtk_clipboard_finalize): don't use
1103         get_clipboard_widget() because it would create the widget if it
1104         doesn't exist. Use g_object_get_data() directly instead.
1105
1106         * gtk/gtktextdisplay.c (on_renderer_display_closed): fixed signature
1107         of this callback.
1108
1109 2005-11-10  Simos Xenitellis  <simos@gnome.org>
1110
1111         * configure.in: Added Tatar (tt) to ALL_LINGUAS.
1112
1113 Wed Nov  9 16:29:42 2005  Tim Janik  <timj@imendio.com>
1114
1115         * gtk/gtkrange.c: patch from maemo-gtk that changes GtkRange
1116         to render its arrows insensitive when the adjustment is in
1117         its min or max position. this makes range arrow behaviour 
1118         consistent with spin button behaviour. (#321056)
1119
1120 2005-11-09  Tor Lillqvist  <tml@novell.com>
1121
1122         * gdk/gdkinternals.h
1123         * gdk/gdk.c (gdk_debug_keys[]): Add new GDK_DEBUG_DRAW flag to
1124         the GdkDebugFlag enum.
1125
1126         * gdk/win32/gdkdrawable-win32.c: Use DRAW to trigger GDK_NOTEs in
1127         this file instead of MISC. Now asking for MISC will give mainly
1128         window manipulation debugging output with the Win32 backend.
1129
1130 2005-11-09  Tor Lillqvist  <tml@novell.com>
1131
1132         * gdk/win32/gdkwindow-win32.c: Remove unnecessary includes.
1133
1134         (_gdk_win32_get_adjusted_client_rect): Remove this two-line
1135         function which was used only in one place.
1136
1137         (get_outer_rect): Use _gdk_win32_adjust_client_rect().
1138
1139         (gdk_window_set_geometry_hints): If we have identical minimum and
1140         maximum size hints, remove the resize and maximize
1141         decorations/functions. (#104514)
1142
1143         If we have a maximum size hint, remove the maximize
1144         decoration/function but ensure the resize decoration/function is
1145         available. Otherwise ensure both resize and maximize
1146         decorations/functions are there.
1147
1148         (set_or_clear_style_bits): Factored out common code from
1149         gdk_window_set_decorations() and gdk_window_set_functions(). 
1150
1151         Hack the window style setting once more: Only touch the window
1152         style bits corresponding to the GdkWMDecoration or GdkWMFunction
1153         parameter bitmasks. Hopefully this finally is the correct thing to
1154         do. We used to clear all other bits than those that were being
1155         set, or set all other bits than those that were being cleared.
1156
1157         Take into account that adding or removing decorations leaves the
1158         window's outer size unchanged, i.e., the client area's size and
1159         position change. This is apparently not what we want, so change
1160         also the window's (outer) position and size appropriately so that
1161         the client area's position and size stay constant.
1162
1163         gtk-demo's color selector dialog is now non-resizable like on X11
1164         (I tested with metacity in GNOME). Torn off menus are shrinkable
1165         vertically but have a maximum size, and are not maximizable or
1166         minimizable, like on X11.
1167
1168         (gdk_window_set_decorations, gdk_window_set_functions): Let
1169         set_or_clear_decorations() do most of the job.
1170
1171         * gdk/win32/gdkprivate-win32.h: Remove declaration of
1172         _gdk_win32_get_adjusted_client_rect().
1173
1174 2005-11-09  Tor Lillqvist  <tml@novell.com>
1175
1176         * gdk/win32/gdkwindow-win32.h (struct _GdkWindowImplWin32)
1177         * gdk/win32/gdkwindow-win32.c (gdk_window_impl_win32_init,
1178         gdk_window_get_type_hint, gdk_window_get_type_hint): Store the
1179         type hint. Implement gdk_window_get_type_hint() by just returning
1180         the hint stored.
1181
1182 2005-11-09  Tor Lillqvist  <tml@novell.com>
1183
1184         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
1185         Remove code that has been permanently ifdeffed out for two years.
1186
1187 2005-11-08  Matthias Clasen  <mclasen@redhat.com>
1188
1189         * gdk/gdkgc.c (gdk_gc_finalize): Unref tile and stipple when
1190         finalizing a gc.  (#320789, Nickolay V. Shmyrev)
1191
1192         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Ignore
1193         icons if they would make the request large enough to cause
1194         Xlib to loose the connection.  (#320909, Claudio Saavedra)
1195
1196 2005-11-08  Michael Natterer  <mitch@imendio.com>
1197
1198         * gdk/gdk.symbols
1199         * gdk/gdkwindow.h
1200         * gdk/x11/gdkwindow-x11.c: added gdk_window_get_type_hint() (patch
1201         extracted from maemo-gtk). Fixes bug #320872.
1202
1203 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
1204
1205         * gtk/gtkfilechooserdefault.c (shortcuts_reorder): Don't
1206         looks the bookmark label when reordering.  (#320720, Jeremy Cook)
1207
1208         * gtk/gtkpathbar.[hc]: Set focus-on-click to FALSE for all buttons.
1209         Don't grab focus when a slider button is pressed, instead, use
1210         a bit in the pathbar struct to determine whether to scroll up
1211         or down.  (#314486, Carlos Garnacho)
1212
1213         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): 
1214         Don't popup the completions if the focus has already been
1215         moved somewhere else.  (#319914, Christian Persch)
1216
1217         * gtk/gtktoolitem.c (_gtk_tool_item_toolbar_reconfigured): 
1218         Raise the drag_window after reconfiguring the 
1219         toolbar.  (#320803, Christian Persch)
1220
1221         * gtk/gtk.symbols: 
1222         * gtk/gtkfilechooserbutton.h: 
1223         * gtk/gtkfilechooserbutton.c: Add a focus-on-click property
1224         with setter and getter.  (#318945, Christian Persch)
1225         
1226 Mon Nov  7 16:15:16 2005  Tim Janik  <timj@imendio.com>
1227
1228         * configure.in: fixed missing $X_CFLAGS setup in case x11.pc is present.
1229
1230 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
1231
1232         * configure.in: Adjust to the stock icon changes.
1233         
1234 2005-11-07  Tor Lillqvist  <tml@novell.com>
1235
1236         * gdk/win32/gdkcursor-win32.c (pixbuf_to_hbitmaps_normal):
1237         Correct the calculation of maskstride. (#320152, Peter Zelezny)
1238         
1239 2005-11-06  Michael Natterer  <mitch@imendio.com>
1240
1241         * gtk/Makefile.am (icons): fixed rule to actually create the
1242         symlinks, erroring out if anything goes wrong.
1243
1244 2005-11-06  Tor Lillqvist  <tml@novell.com>
1245
1246         * gtk/updateiconcache.c (build_cache): Can't rename a file if the
1247         target exists on Win32. First rename the target temporarily, then
1248         if the renaming of the source to target fails, restore the
1249         original name for the target.
1250
1251         * gtk/Makefile.am: Use EXEEXT in the dependency on gtk-update-icon-cache.
1252
1253 2005-11-06  Tor Lillqvist  <tml@novell.com>
1254
1255         (pixbuf_to_hbitmaps_alpha_winxp): Use an 1-bit mask bitmap,
1256         like pixbuf_to_hbitmaps_normal().
1257         (_gdk_win32_pixbuf_to_hicon_supports_alpha): Check
1258         G_WIN32_IS_NT_BASED() first, so we can pretend being on Win9x by
1259         setting the G_WIN32_PRETEND_WIN9X environment variable.
1260         
1261 2005-11-06  Tor Lillqvist  <tml@novell.com>
1262
1263         Make icon masks work on Win98 (#320152, Peter Zelezny)
1264
1265         * gdk/win32/gdkcursor-win32.c (create_color_bitmap): Take also a
1266         parameter for the depth of the bitmap, so that this function can
1267         be used to create 1-bit bitmaps, too.
1268         (pixbuf_to_hbitmaps_normal): Create an 1-bit bitmap for the mask,
1269         and initialize it properly.
1270
1271 2005-11-04  Matthias Clasen  <mclasen@redhat.com>
1272
1273         Store builtin stock icons in an icon cache, instead of
1274         populating a hash table with pixbufs at startup, to save both
1275         memory and startup time.
1276
1277         * gtk/stock-icons/*: Reorganize the icons in a directory structure
1278         suitable for gtk-update-icon-cache, and rename them to match the
1279         stock ids.
1280
1281         * gtk/gtkiconcache.[hc]: Support non-mmapped icon caches, and
1282         add _gtk_icon_cache_has_icon_in_directory().
1283
1284         * gtk/updateiconcache.c: Support a --source <VARIABLE> argument
1285         to store the contents of the icon cache in a C header.
1286
1287         * gtk/gtkbuiltincache.h: Generated private header which contains 
1288         the icon cache for the builtin icons.
1289
1290         * gtk/gtkicontheme.c: Create a GtkIconCache for the builtin
1291         icons, and use that in addition to the hash table whenever
1292         builtin icons are searched.
1293
1294         * gtk/gtkiconfactory.c: Add GTK_ICON_SOURCE_STATIC_ICON_NAME and
1295         use it for static stock ids. 
1296         (get_default_icons): Don't add the builtin
1297         icons to the icon theme, just register the stock ids.
1298         (render_fallback_image): Take the fallback image out of the
1299         builtin icon cache.
1300         
1301         * gtk/Makefile.am: Remove stock-icons from SUBDIRS and add 
1302         the necessary machinery to rebuild gtkbuiltincache.h.
1303
1304 2005-11-04  Michael Natterer  <mitch@imendio.com>
1305
1306         * gtk/gtkrc.c (gtk_rc_reparse_all_for_settings): applied patch
1307         from maemo-gtk that changes the mtime check for rc files from
1308         '>' to '!=', otherwise theme changes go unnoticed when turning
1309         back the clock (Tommi Komulainen).
1310
1311 2005-11-04  Tor Lillqvist  <tml@novell.com>
1312
1313         * gtk/gtkstatusicon.c (gtk_status_icon_set_tooltip): Plug memory
1314         leak on Win32.
1315
1316 2005-11-03  Tor Lillqvist  <tml@novell.com>
1317
1318         * gdk/win32/gdkcursor-win32.c: As there is only one GdkDisplay in
1319         the Win32 backend, check that GdkDisplay* parameters are equal to
1320         _gdk_display instead of using the unnecessarily general
1321         GDK_IS_DISPLAY().
1322
1323         (pixbuf_to_hbitmaps_alpha_winxp): Rename the variables for the
1324         color bitmap to have "color" in their name, for similarity with
1325         pixbuf_to_hbitmaps_normal(). Create a color bitmap for the mask,
1326         too, instead of creating a b&w bitmap with CreateBitmap(). Set up
1327         the mask bitmap's contents, ones for those pixels in the color
1328         bitmap where the alpha is zero, zero for other pixels. We used to
1329         use an uninitialized mask bitmap! This meant that icons and
1330         cursors created presumably worked more or less by accident.
1331         Totally blank icons with zero alpha everywhere (as used by
1332         gtktrayicon.c) definitely did not work as expected.
1333
1334         * gtk/Makefile.am: Include gtkstatusicon.c on all platforms.
1335
1336         * gtk/gtkstatusicon.c: Implement for Win32. Use code from
1337         gtktrayicon-win32.c as applicable. (gtktrayicon-win32.c is not
1338         necessary and can be removed from CVS. It has never been mentioned
1339         in gtk/Makefile.am.) No tray icon widget, GtkImage or GtkTooltips
1340         are used on Win32. One label widget is used (but never shown) as
1341         gtk_widget_render_icon() needs a widget.
1342
1343         Ifdefs used as necessary in several places. It might be cleaner to
1344         split out the backend-specific parts to separate files, or at
1345         least collect them into separate blocks in the file.
1346
1347         (wndproc): New function. Window procedure to monitor mouse events
1348         in the system tray icon. Call gtk_status_icon_button_press() as
1349         needed.
1350         (create_tray_observer): New function. Creates a hidden window that
1351         only serves as a tray icon message observer.
1352
1353         * tests/teststatusicon.c (icon_activated): Position the dialog
1354         with GTK_WIN_POS_CENTER.
1355         (do_quit): New function, hide and unref the GtkStatusIcon, and
1356         call gtk_main_quit().
1357         (popup_menu): Add a Quit menu item that calls do_quit().
1358         
1359 2005-11-02  Tor Lillqvist  <tml@novell.com>
1360
1361         * gdk/win32/gdkcolor-win32.c
1362         * gdk/win32/gdkscreen-win32.c
1363         * gdk/win32/gdkwindow-win32.c: Whitespace consistency
1364         fixes. Remove superfluous test for GdkWindow* parameters being
1365         non-NULL. Testing GDK_IS_WINDOW() is enough. As there is only one
1366         GdkScreen and one GdkDisplay in the Win32 backend, use those
1367         variables instead of the getter functions. For GdkDisplay* and
1368         GdkScreen* parameters, check that they are equal to the
1369         corresponding singleton variables instead of the more general
1370         GDK_IS_DISPLAY() or GDK_IS_SCREEN().
1371
1372 2005-11-02  Matthias Clasen  <mclasen@redhat.com>
1373
1374         * gtk/gtktextview.c: Remove some g_return_if_fail() from
1375         static functions, replace some others by g_assert().
1376         
1377         * gtk/gtktextview.c (selection_motion_event_handler) 
1378         (gtk_text_view_start_selection_drag): Keep track of the original
1379         selection boundaries during a drag selection, in order to correctly
1380         decide when to extend or shrink the selection.  (#320167,
1381         reported by Arvind S N, patch by Paolo Borelli)
1382
1383         * gtk/gtktextbtree.c (_gtk_text_line_char_to_byte_offsets): 
1384         * gtk/gtktextiter.c (gtk_text_iter_backward_chars): Replace
1385         manual offset calculations by g_utf8_offset_to_pointer().
1386         (#320360, Paolo Borelli)
1387
1388 Tue Nov  1 16:18:24 2005  Tim Janik  <timj@imendio.com>
1389
1390         * gtk/gtkrbtree.[hc]: get rid of GAllocator usage, allocate and free 
1391         nodes via the g_slice_*() API.
1392         _gtk_rbtree_new(): fixed wrong node allocation via g_new().
1393
1394 2005-11-01  Tor Lillqvist  <tml@novell.com>
1395
1396         * gdk/win32/gdkprivate-win32.h
1397         * gdk/win32/gdkglobals-win32.c
1398         * gdk/win32/gdkmain-win32.c (_gdk_windowing_init): Add more
1399         pre-interned GdkAtoms and pre-registered clipboard formats. Sort
1400         their declarations, definitions and assignments into a more
1401         logical and consistent order.
1402
1403         * gdk/win32/gdkmain-win32.c (_gdk_win32_cf_to_string): Include the
1404         CF_ prefix for the predefined clipboard format names. Put quotes
1405         around registered format names to distinguish them.
1406         
1407         * gdk/win32/gdkproperty-win32.c (gdk_property_change): Return
1408         immediately with a warning if the property type is STRING, TEXT,
1409         COMPOUND_TEXT or SAVE_TARGETS, as these are X11-specific that we
1410         should never pretend to handle on Win32. Handle only UTF8_STRING
1411         here, other formats with delayed rendering. Use \uc1 instead of
1412         \uc0 when generating Rich Text Format for easier testability on
1413         XP, where WordPad misinterprets \uc0 encoded characters. Add more
1414         GDK_NOTE debugging output for Clipboard operations.
1415
1416         * gdk/win32/gdkselection-win32.c: Debugging printout improvements.
1417         (gdk_selection_convert): Don't pretent to handle STRING, just
1418         UTF8_STRING. Streamline error handling, don't unnecessarily have a
1419         GError which then isn't used for anything anyway if it gets set.
1420         (gdk_win32_selection_add_targets): Skip also STRING, TEXT,
1421         COMPOUND_TEXT and SAVE_TARGETS in addition to UTF8_STRING.
1422
1423         * config.h.win32.in: Sync with what configure produces.
1424
1425         * configure.in: Don't look for X_PACKAGES unless building for
1426         x11. (#313986, John Ehresman)
1427
1428 2005-10-28  Erdal Ronahi  <erdal.ronahi@gmail.com>
1429
1430         * configure.in: Added ku (Kurdish) to ALL_LINGUAS
1431                         Wondered why there was no ku there before??
1432
1433 2005-10-28  Matthias Clasen  <mclasen@redhat.com>
1434
1435         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): Add the popup
1436         window to the toplevels window group.  (#319912, Christian Persch)
1437
1438 2005-10-28  Kristian Rietveld  <kris@gtk.org>
1439
1440         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_deleted): fix
1441         stupid thinko.
1442
1443 2005-10-28  Matthias Clasen  <mclasen@redhat.com>
1444
1445         * gtk/gtkdnd.c (gtk_drag_get_cursor): Fix the anchor of the default
1446         drag cursors.  (#319200, Federico Mena Quintero)
1447
1448         * gtk/gtktreeview.c (gtk_tree_view_search_key_press_event): Handle
1449         Shift-G to go to the previous match, like firefox.  (#320061, Christian 
1450         Neumair)
1451
1452         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_build_level): Fix a
1453         C99ism.  (#320000, Kazuki Iwamoto)
1454
1455         * gtk/gtkaboutdialog.c (gtk_about_dialog_init): Add the little 
1456         stars.  (#319985, Bastien Nocera)
1457
1458         * gtk/gtktreeview.c (gtk_tree_view_search_entry_flush_timeout): Return
1459         FALSE, so we don't flush repeatedly.  (#319151, Alexander Larsson)
1460
1461 2005-10-26  Michael Natterer  <mitch@imendio.com>
1462
1463         Fix bug #319974:
1464
1465         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
1466         make sure that setting any of pixbuf/stock-id/icon-name resets the
1467         others because they are mutually exclusive, and that unsetting any
1468         of them only resets the pixbuf and nothing else. Also added
1469         some missing g_object_notify().
1470
1471         (gtk_cell_renderer_pixbuf_get_property): simplified calls to
1472         g_value_set_object().
1473
1474         (gtk_cell_renderer_pixbuf_create_stock_pixbuf)
1475         (gtk_cell_renderer_pixbuf_create_named_icon_pixbuf): added
1476         g_object_notify ("pixbuf").
1477
1478 2005-10-27  Matthias Clasen  <mclasen@redhat.com>
1479
1480         * gtk/gtktreeview.c (gtk_tree_view_button_press): Be more 
1481         careful about initializing cell_area.  (#319382, Tommi
1482         Komulainen)
1483
1484         * gtk/gtkcombobox.c (gtk_combo_box_key_press): Don't eat
1485         Ctrl-PageUp/PageDown.  (#318670, Christian Neumair)
1486
1487         * demos/gtk-demo/clipboard.c (paste_received): Only set the
1488         text if it is not NULL.  (#319930, Thomas Klausner)
1489
1490         * gtk/gtkselection.c (gtk_selection_data_get_pixbuf): Close the
1491         loader before trying to get the pixbuf.  (#319930, Thomas Klausner)
1492
1493 2005-10-26  Matthias Clasen  <mclasen@redhat.com>
1494
1495         * gtk/gtkfilesystem.c (gtk_file_system_module_load): 
1496         * gtk/gtkthemes.c (gtk_theme_engine_load): 
1497         * gtk/gtkimmodule.c (gtk_im_module_load): Use G_MODULE_BIND_LAZY
1498         when dlopening modules.  (#319557, Laszlo Peter)
1499
1500 2005-10-26  Matthias Clasen  <mclasen@redhat.com>
1501
1502         * gtk/gtktextbtree.c (gtk_text_btree_resolve_bidi): Only use text
1503         segments when determining text direction.  (#319065, Tommi Komulainen)
1504
1505         * gtk/gtktreeview.c (gtk_tree_view_destroy): Don't crash
1506         on duplicate destroy.  (#318953, Gustavo Carneiro)
1507
1508         * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_new_with_dialog): 
1509         Point out that destroy-with-parent is a bad idea for the dialog
1510         passed to this function.  (#318943, Christian Persch)
1511
1512         * */Makefile.am: use $(GLIB_MKENUMS) instead of 
1513         glib-mkenums.  (#318582, Damien Carbery)
1514
1515         * gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Clarify
1516         docs.  (#317682, Christian Neumair)
1517
1518         * gdk/x11/gdkdnd-x11.c: Remove an extra const which doesn't
1519         seem to affect the placement of the data in the readonly 
1520         section, and causes problems with some compilers.  (#317844)
1521
1522 2005-10-25  Matthias Clasen  <mclasen@redhat.com>
1523
1524         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
1525         Fix some issues with background drawing in RTL.  (#318781,
1526         Eric Cazeaux)
1527
1528         * tests/Makefile.am:
1529         * tests/testentrycompletion.c: Apply a patch by Christian
1530         Persch to add property editors.
1531
1532         * gtk/gtkstatusicon.c: Emit activate on single-click,
1533         not on double-click, change proposed by Milosz Derezynski.
1534
1535 2005-10-25  Kristian Rietveld  <kris@gtk.org>
1536
1537         Fixes #311955, reported by Markku Vire; and a lot more.
1538
1539         * gtk/gtktreemodelfilter.c: Made this thing work correctly.
1540         Levels can now have invisible nodes cached, functions have been
1541         rewritten/refactored to take this into account; also the logic in
1542         some functions has been corrected.
1543         
1544         Each referenced node now references all visible children or a single
1545         invisible child, in order to be able to monitor all changes in the
1546         child model required for correct operation.
1547
1548         When a virtual root is set, all nodes on the virtual root level are
1549         referenced.
1550
1551         At last, a bunch of random bug fixes and comment updates.
1552
1553 2005-10-25  Matthias Clasen  <mclasen@redhat.com>
1554
1555         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Add some
1556         more docs.  (#319722, Paolo Borelli)
1557
1558         * gdk/x11/gdkxftdefaults.c (init_xft_settings): Make the 
1559         initialization of screen_x11->xft_rgba more explicit.  (#319627,
1560         Bogdan Nicula)
1561
1562         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Fix whitespace
1563         in a blurb.  (#319499, Francisco Javier F. Serrador)
1564
1565 2005-10-24  Matthias Clasen  <mclasen@redhat.com>
1566
1567         Add settings to hide the input method and Unicode control character
1568         submenus in the context menus of GtkEntry and GtkTextView.  
1569         
1570         * gdk/x11/gdkevents-x11.c: Map GTK+ settings to X settings.
1571         
1572         * gtk/gtksettings.c (gtk_settings_class_init): Declare GTK+ settings here.
1573
1574         * gtk/gtktextview.c (popup_targets_received): 
1575         * gtk/gtkentry.c (popup_targets_received): Use the settings here.
1576
1577 2005-10-24  Kristian Rietveld  <kris@gtk.org>
1578
1579         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): emitting
1580         row-has-child-toggled when the level is not in the cache does not
1581         make sense.  (This bug probably crept in during the early stages
1582         of GtkTreeModelSort when there wasn't a correct row-has-child-toggled
1583         implementation yet),
1584         (gtk_tree_model_sort_real_unref_node): only get the child iter
1585         when we will actually also use it.
1586
1587 2005-10-22  Michael Natterer  <mitch@imendio.com>
1588
1589         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): check for the
1590         widget being realized, in addition to being visible, to avoid
1591         running into precondition check in gtk_tree_view_get_cell_area().
1592         (approved by Kris).
1593
1594 2005-10-22  Dom Lachowicz <cinamod@hotmail.com>
1595
1596         * modules/engines/ms-windows/msw_style.c (setup_msw_rc_style): 
1597         Experimentally, scrollbar steppers can shrink to 8 pixels on 
1598         Win32. Reflect that in the theme.
1599         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Experimentally,
1600         there is a 1-pixel border between a scrollbar and its child
1601         in ScrolledWindows on Win32. Reflect that in the theme.
1602         
1603 2005-10-20  Matthias Clasen  <mclasen@redhat.com>
1604
1605         * gtk/gtklabel.c (gtk_label_create_window): Use GDK_WINDOW_CHILD
1606         for the selection window.  (#318806, Alex Larsson)
1607
1608 2005-10-18  Federico Mena Quintero  <federico@ximian.com>
1609
1610         Fixes bug #317999:
1611
1612         * tests/autotestfilechooser.c
1613         (test_button_folder_states_for_action): Test that we have either
1614         $cwd or the explicitly-set folder.
1615         (test_reload_sequence): Likewise.
1616
1617         * gtk/gtkfilechooserdefault.c
1618         (gtk_file_chooser_default_get_current_folder): If our reload_state
1619         is RELOAD_EMPTY, return a GtkFilePath corresponding to $cwd.
1620
1621 2005-10-14  Tor Lillqvist  <tml@novell.com>
1622
1623         * gdk/win32/gdkdisplay-win32.c: Remove the clipboard viewer code.
1624         It didn't really do anything useful, and was just confusing and
1625         incomplete. Comments claimed we don't do delayed rendering, but in
1626         fact we do, for images. (The delayed rendering code has other
1627         problems, though, see #168173.) The clipboard viewer code was
1628         probably even buggy (the WM_CHANGECBCHAIN handled didn't propagate
1629         the message when necessary). It was just test code, it said so in
1630         a comment. Add something similar back later if necessary.
1631
1632         (_win32_on_clipboard_change,
1633         _gdk_win32_register_clipboard_notification): Remove.
1634
1635         (gdk_display_supports_selection_notification,
1636         gdk_display_request_selection_notification): Always just return
1637         FALSE. We didn't generate any GDK_OWNER_CHANGE events anywhere.
1638
1639 2005-10-13  Tor Lillqvist  <tml@novell.com>
1640
1641         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't treat
1642         Alt-Enter specially. It does not have any special meaning and
1643         should be passed on to the application. (#318378, Tim Evans)
1644
1645 2005-10-13  Tor Lillqvist  <tml@novell.com>
1646
1647         Set visual depth to 24 for 32 bits-per-pixel devices on
1648         Win32. This allows gdk_drawable_real_draw_pixbuf() to use the
1649         optimized composite_0888() function rather than the slower image
1650         dithering functions to draw pixbufs (#313993, John Ehresman)
1651
1652         * gdk/win32/gdkimage-win32.c (_gdk_win32_new_image): Use
1653         _gdk_windowing_get_bits_for_depth() to initialize
1654         GdkImage::bits_per_pixel.
1655         (_gdk_windowing_get_bits_for_depth): Return 32 bits for depth 24.
1656
1657         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use
1658         _gdk_windowing_get_bits_for_depth() to initialize
1659         BITMAPINFOHEADER::biBitCount.
1660
1661         * gdk/win32/gdkvisual-win32.c (_gdk_visual_init): Set
1662         GdkVisual::depth to 24 even if GetDeviceCaps(BITSPIXEL) returns
1663         32.
1664
1665 2005-10-12  Stefan Kost  <ensonic@users.sf.net>
1666
1667         * demos/gtk-demo/appwindow.c: (about_cb):
1668           use PACKAGE_VERSION,bump year (#318654)
1669
1670 2005-10-11  Matthias Clasen  <mclasen@redhat.com>
1671
1672         * gtk/gtktextbtree.c (_gtk_text_btree_delete): Try to match an off 
1673         toggle here with the matching on toggle if it immediately follows. 
1674         This is a common case, and handling it here prevents quadratic blowup 
1675         in cleanup_line() below.  (#317125)
1676
1677         * gtk/gtktextsegment.h: 
1678         * gtk/gtktextsegment.c (_gtk_char_segment_new_from_two_strings): Pass
1679         the character counts into this function instead of computing them
1680         again.
1681
1682 2005-10-10  Tommi Komulainen  <tommi.komulainen@iki.fi>
1683
1684         * gtk/gtkfilechooser.h (GtkFileChooserError): Add ALREADY_EXISTS error
1685         code.
1686         * gtk/gtkfilechooserdefault.c
1687         (gtk_file_chooser_default_add_shortcut_folder): Return an error code
1688         when the shortcut already exists in the sidebar.  (#147521)
1689
1690 2005-10-09  Matthias Clasen  <mclasen@redhat.com>
1691
1692         * tests/testcombo.c: Demonstrate how to use custom widgets in
1693         a GtkComboBox.  
1694
1695 2005-10-07  Federico Mena Quintero  <federico@ximian.com>
1696
1697         Fixes bug #317999:
1698
1699         * tests/autotestfilechooser.c (test_reload_sequence): Ensure that
1700         the the result of gtk_file_chooser_get_folder() is NULL or
1701         non-NULL at the right times.  Log the tests.
1702         (test_button_folder_states): New test for the initial states of
1703         the current folder in GtkFileChooserButton.
1704         (main): Test that the number of warnings/errors/critical errors is
1705         zero.
1706
1707         * gtk/gtkfilechooser.c (gtk_file_chooser_get_current_folder):
1708         Clarify the documentation on when this can return NULL.
1709         (gtk_file_chooser_get_current_folder_uri): Likewise.
1710
1711         * gtk/gtkfilechooserbutton.c (struct
1712         _GtkFileChooserButtonPrivate): Added a folder_has_been_set flag;
1713         we use it to keep track of whether a folder has been set.
1714         (gtk_file_chooser_button_map):  Implement.  If no folder has been
1715         loaded before, we at least try to load $cwd here.
1716         (gtk_file_chooser_button_constructor): If the construct-time
1717         dialog already has a folder set, turn on our folder_has_been_set
1718         flag.
1719         (dialog_current_folder_changed_cb): Turn on our
1720         folder_has_been_set flag.
1721
1722 2005-10-07  Michael Natterer  <mitch@gimp.org>
1723
1724         * gtk/gtkfilechooserdefault.c: remove some explicit #defines of
1725         PROFILE_FILE_CHOOSER because they break compilation after the
1726         removal of <unistd.h>.
1727
1728 2005-10-07   Matthias Clasen  <mclasen@redhat.com>
1729
1730         * gtk/gtkfilechooserdefault.c: Properly fix the unistd.h include
1731         by moving it out of the profiling ifdef.
1732
1733         * gtk/gtkfilechooserdefault.c: Remove a redundant (and
1734         unconditional) include of unistd.h  (#318211, Kazuki Iwamoto)
1735
1736         * gtk/gtktexttag.c (gtk_text_attributes_ref): Use
1737         g_return_val_if_fail(), not g_return_if_fail().  (#318412,
1738         Kazuki Iwamoto)
1739
1740 2005-10-06  Matthias Clasen  <mclasen@redhat.com> 
1741                 
1742         * gtk/gtk.symbols:
1743         * gtk/gtktextbuffer.h:
1744         * gtk/gtktextbuffer.c: Add a readonly has-selection property
1745         with a getter.  (#318161, Paolo Borelli)
1746
1747 2005-10-05  Matthias Clasen  <mclasen@redhat.com>
1748
1749         * README.in: Start collecting release notes for 2.10.
1750
1751         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Readd the memory
1752         leak fix, since the assertion failures were traced to 
1753         an xchat bug.  (#314696)
1754         
1755         * gtk/gtkstyle.c (gtk_style_detach):
1756         (gtk_style_attach):  Documentation improvements.
1757         (gtk_style_detach): Assert that the attach_count is > 0.
1758
1759 2005-10-04  Federico Mena Quintero  <federico@ximian.com>
1760
1761         * gtk/gtkfilechooserdefault.c (switch_to_shortcut): Take a
1762         shortcut position, not a ShortcutsIndex, to make the function more
1763         generic.
1764         (home_folder_handler): Pass the resolved index to
1765         switch_to_shortcut(), rather than just SHORTCUTS_HOME.
1766         (desktop_folder_handler): Likewise for SHORTCUTS_DESKTOP.
1767         (gtk_file_chooser_default_class_init): Add a "quick-bookmark"
1768         binding signal, and bind it to Alt-1, Alt-2. ..., Alt-0.  These
1769         make the respective key switch to the first, second, ..., tenth
1770         bookmark.
1771         (quick_bookmark_handler): Implement.
1772
1773 2005-10-04  Federico Mena Quintero  <federico@ximian.com>
1774
1775         * gtk/gtkpathbar.c (get_dir_name): Don't special-case Home and
1776         Desktop; just use their real names on the file system for the
1777         user-visible names.
1778
1779         * gtk/gtkfilechooserdefault.c
1780         (gtk_file_chooser_default_class_init): Add a "desktop-folder"
1781         binding signal, and bind it to M-d by default.
1782         (desktop_folder_handler): Implement the default handler.
1783         (home_folder_handler): Use a helper function.
1784         (switch_to_shortcut): New helper function.
1785         (shortcuts_append_home): Don't special-case the name of "Home";
1786         just use the folder name.
1787
1788 2005-10-04  Tor Lillqvist  <tml@novell.com>
1789
1790         * gtk/gtkcalendar.c (gtk_calendar_init): Make it compile without
1791         HAVE__NL_TIME_FIRST_WEEKDAY. (#317910, Mathias Hasselmann)
1792
1793 2005-10-04  Matthias Clasen  <mclasen@redhat.com>
1794
1795         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Revert the change
1796         from yesterday, since it leads to assertion failures.  (#317879,
1797         Sebastian Bacher)
1798
1799 2005-10-03  Matthias Clasen  <mclasen@redhat.com>
1800
1801         * gtk/gtkcalendar.c (gtk_calendar_init): Call 
1802         calendar_compute_days() after setting priv->week_start.
1803
1804 2005-10-03  Matthias Clasen  <mclasen@redhat.com>
1805
1806         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Unref the style when
1807         removing it from the hash table.  (#314696, Benjamin Berg)
1808
1809 2005-10-01  Tor Lillqvist  <tml@novell.com>
1810
1811         * gdk/win32/gdkdrawable-win32.c (blit_from_pixmap): In case
1812         BitBlt() fails with ERROR_INVALID_HANDLE, the most probable cause
1813         is that the the desktop isn't visible because the session has been
1814         switched, the screen is locked, or a terminal server session
1815         disconnected, so no error message necessary. (#137796)
1816
1817         It is of course remotely possible that BitBlt() failing with
1818         ERROR_INVALID_HANDLE might also be caused by some other
1819         problem. We could strive for perfection and track whether the
1820         desktop is visible by using WTSRegisterSessionNotification() and
1821         handling WM_WTSESSION_CHANGE. I think that's overdoing it just for
1822         this issue, though. If we would track desktop visibility, we
1823         should then avoid even trying to update the display at all while
1824         the desktop isn't visible.
1825
1826 2005-09-30  Matthias Clasen  <mclasen@redhat.com>
1827
1828         * gtk/gtkcalendar.c (gtk_calendar_init): Another attempt
1829         to correct the calculations for the first week day. We may
1830         just have to remove this code if too many locales turn out 
1831         to have broken data. 
1832
1833         * gtk/gtkimage.c (gtk_image_expose): Don't leak pixbuf in
1834         some cases.  (#317611, Tommi Komulainen)
1835
1836         * gtk/gtksocket-x11.c (_gtk_socket_windowing_size_request):
1837         Prevent overflow when storing size hints in an unsigned
1838         short variable. Tracked down by Ray Strode and Søren Sandmann.
1839
1840 2005-09-29  Matthias Clasen  <mclasen@redhat.com>
1841
1842         * gtk/gtkbutton.c (gtk_button_set_image): Check arguments.  (#317491,
1843         Paolo Borelli)
1844
1845         * gtk/gtkpaned.c (gtk_paned_grab_notify): Stop drags when being
1846         grab shadowed.  (#317332)
1847
1848 2005-09-29  Tor Lillqvist  <tml@novell.com>
1849
1850         * gtk-zip.sh.in: DLLs are always in bin nowadays, no need to test.
1851
1852 2005-09-28  Federico Mena Quintero  <federico@ximian.com>
1853
1854         * tests/autotestfilechooser.c (test_reload_sequence): Oops, return
1855         if the unmap test fails.
1856         (test_reload_sequence): Use gtk_widget_show_now() instead of
1857         gtk_widget_show() for the dialog.
1858         Thanks to Tim Janik for noticing these.
1859
1860 2005-09-28  Federico Mena Quintero  <federico@ximian.com>
1861
1862         * tests/testcellrenderertext.c: New file with a set of tests for
1863         GtkCellRendererText.  The idea is to run a text renderer through
1864         most of its interesting property values to see that it works
1865         correctly.
1866
1867         * tests/Makefile.am: Added testcellrenderertext.
1868
1869         * gtk/gtkfilechooserdefault.c (load_set_model): Mark the
1870         entry/exit of this function for profiling.
1871         (gtk_file_chooser_default_style_set): Mark the start/end of the
1872         calls to the parent class and the the signal emission for profiling.
1873
1874 2005-09-29  Tor Lillqvist  <tml@novell.com>
1875
1876         * gtk/gtkmain.c (_gtk_get_localedir): The locale directory is
1877         passed to bindtextdomain() which isn't UTF-8-aware, so convert to
1878         system codepage using g_win32_locale_filename_from_utf8().
1879         (#317457, Kazuki Iwamoto)
1880
1881 2005-09-28  Matthias Clasen  <mclasen@redhat.com>
1882
1883         * gtk/gtkselection.c (_gtk_selection_request): Free mult_atoms 
1884         here. (#317039, Paolo Borelli)
1885
1886         * gtk/gtktexttag.h: 
1887         * gtk/gtktexttag.c (gtk_text_attributes_ref): Return the attributes
1888         to make this function work as boxed copy function.  (#317455,
1889         Gustavo Carneiro)
1890
1891         * gtk/gtkclipboard.c (request_image_received_func): Don't unref
1892         NULL.  (#316828, Tor Lillqvist)
1893
1894 2005-09-28  Tor Lillqvist  <tml@novell.com>
1895
1896         * modules/input/imime.c: Include <config.h>. (#317444, Kazuki
1897         Iwamoto)
1898
1899 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
1900
1901         Don't reload the current folder unnecessarily on ::map().
1902
1903         * gtk/gtkfilechooserprivate.h (ReloadState): New enum to represent
1904         the reloading state.
1905         (struct _GtkFileChooserDefault): Added a "reload_state" field.
1906
1907         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init):
1908         Initialize impl->reload_state.
1909         (gtk_file_chooser_default_map): Check the impl->reload_state; load
1910         a default folder if no folder has been set, or reload the current
1911         one only if we had been unmapped first.
1912         (gtk_file_chooser_default_update_current_folder): Set the
1913         reload_state to RELOAD_HAS_FOLDER.
1914         (gtk_file_chooser_default_unmap): Implement, and set the
1915         reload_state to RELOAD_WAS_UNMAPPED.
1916         (shortcuts_model_create): Don't call shortcuts_add_bookmarks()
1917         here; they'll get (re)loaded on ::map() anyway.
1918
1919         * gtk/gtkfilechooserwidget.c
1920         (gtk_file_chooser_widget_constructor): Don't set a default folder here.
1921
1922         * tests/autotestfilechooser.c (test_action_widgets): Don't take in
1923         a dialog; build it ourselves.
1924         (test_reload): New test to ensure that we don't load the default
1925         folder more than once, and that we reload it when
1926         unmapping/remapping.
1927         (get_impl_from_dialog): New utility function.
1928         (test_widgets_for_current_action): Use get_impl_from_dialog().
1929
1930 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
1931
1932         * gtk/gtkfilechooserdefault.c
1933         (gtk_file_chooser_default_constructor): Mark the entry/exit of
1934         this function for profiling.
1935         (check_icon_theme): Likewise.
1936         (change_icon_theme): Likewise.
1937         (settings_notify_cb): Likewise.
1938         (gtk_file_chooser_default_screen_changed): Likewise.
1939         (update_chooser_entry): If the selection is empty, clear the file
1940         name entry only if we are in CREATE_FOLDER mode.  In SAVE mode,
1941         nothing will be selected when the user starts typeahead in the
1942         treeview, and we don't want to clear the file name entry in that
1943         case --- the user could be typing-ahead to look for a folder name.
1944         Fixes bug #308332, patch by Jürg Billeter.
1945
1946 2005-09-27  Matthias Clasen  <mclasen@redhat.com>
1947
1948         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
1949         Pop below the entry if there's more free space below the entry
1950         than above.  (#316948, Tommi Komulainen)
1951
1952 2005-09-26  Federico Mena Quintero  <federico@ximian.com>
1953
1954         Do not create the save mode-specific widgets in the open modes, so
1955         that we don't carry their baggage around.
1956
1957         * gtk/gtkfilechooserdefault.c
1958         (gtk_file_chooser_default_constructor): Don't create the
1959         save_widgets here.
1960         (save_widgets_create): Set the impl->save_widgets directly here,
1961         instead of passing the widgets back to the caller.  Also, pack
1962         them into the impl's box.
1963         (update_appearance): Create or destroy the save widgets as
1964         appropriate.  Set the action of the save_file_name_entry here.
1965         (shortcuts_add_current_folder): Set the active item in the
1966         save_folder_combo only if it exists.
1967         (gtk_file_chooser_default_set_property): Don't set the action of
1968         the save_file_name_entry here.
1969         (gtk_file_chooser_default_update_current_folder): Set the base
1970         folder of the save_file_name_entry only if the entry exists.
1971         (shortcuts_drag_data_received_cb): Cast the selection_data->data
1972         to (const char *) since that's what shortcuts_drop_uris() expects.
1973         (file_list_drag_data_received_cb): Likewise, for
1974         g_uri_list_extract_uris().
1975
1976 2005-09-26  Tor Lillqvist  <tml@novell.com>
1977
1978         * gdk/win32/gdkwindow-win32.c (gdk_window_shape_combine_mask): Set
1979         the shaped flag here, too. (#316871)
1980         (gdk_window_shape_combine_region): Currently unimplemented, so
1981         don't do anything to the shaped flag here.
1982
1983 2005-09-26  Matthias Clasen  <mclasen@redhat.com>
1984
1985         Fix #316871, reported by Dan Winship:
1986         
1987         * gdk/gdkwindow.h (struct _GdkWindowObject): Add a shaped flag.
1988
1989         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_mask) 
1990         (gdk_window_shape_combine_region): Set it here.
1991
1992         * gdk/gdkwindow.c (gdk_window_invalidate_maybe_recurse): Don't
1993         remove the child area for shaped windows.
1994
1995 2005-09-23  Matthias Clasen  <mclasen@redhat.com>
1996
1997         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_finalize):
1998         Don't leak expander pixbufs.  (#316946, Tommi Komulainen)
1999
2000 2005-09-22  Michael Natterer  <mitch@imendio.com>
2001
2002         Renamed GtkCellRendererKeys to GtkCellRendererAccel to be
2003         consistent with GTK+ terminology:
2004
2005         * gtk/gtkcellrendererkeys.[ch]
2006         * tests/testkeys.c: removed...
2007
2008         * gtk/gtkcellrendereraccel.[ch]
2009         * tests/testaccel.c: ...and added.
2010
2011         * gtk/Makefile.am
2012         * gtk/gtk.h
2013         * gtk/gtk.symbols
2014         * tests/Makefile.am: changed accordingly.
2015
2016 2005-09-22  Matthias Clasen  <mclasen@redhat.com>
2017
2018         * gtk/gtkwidget.c (gtk_widget_class_init): Fix the documentation
2019         for the grab-broken-event signal, noticed by Damon Chaplin.
2020
2021 2005-09-21  Tor Lillqvist  <tml@novell.com>
2022
2023         * gdk/win32/gdkselection-win32.c (gdk_selection_convert,
2024         gdk_text_property_to_text_list_for_display,
2025         gdk_text_property_to_utf8_list_for_display,
2026         gdk_win32_selection_add_targets,
2027         _gdk_win32_selection_convert_to_dib): Free return value from
2028         gdk_atom_name().
2029         (gdk_text_property_to_text_list_for_display): Drop GError variable
2030         that isn't actually used after being set.
2031
2032 2005-09-20  Johan Dahlin  <jdahlin@async.com.br>
2033
2034         * gtk/gtkentry.c (gtk_entry_set_completion): Mention NULL in 
2035         documentation.
2036
2037 2005-09-20  Tor Lillqvist  <tml@novell.com>
2038
2039         * gdk/win32/gdkselection-win32.c
2040         (gdk_selection_owner_get_for_display): Do return the correct owner
2041         for CLIPBOARD (i.e., the owner of the Windows Clipboard, if it is
2042         a window GDK knows about). The reason to return NULL seems to have
2043         gone when in the fix for bug #163702 the artificial
2044         GDK_SELECTION_CLEAR event generation was removed from
2045         gdk_selection_send_notify_for_display(). Fixes bug #316552.
2046
2047 2005-09-20  Matthias Clasen  <mclasen@redhat.com>
2048
2049         Avoid unnecessary XkbGetState() calls and XkbStateNotify
2050         events.  (#151555, Søren Sandmann)
2051
2052         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Use 
2053         XkbSelectEventDetails() to select XkbStateNotify events
2054         for only the state we care about.
2055
2056         * gdk/x11/gdkprivate-x11.h:
2057         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_state_changed): Pass
2058         the event into the function and update the keymap state from
2059         the state information contained in the event. Adjust all callers.
2060         
2061 2005-09-19  Matthias Clasen  <mclasen@redhat.com>
2062
2063         * gtk/gtkiconview.c: Use g_list_nth_data() instead of g_list_nth()->data
2064         in multiple places to avoid segfaults if the index is out of range.  
2065         (#316422, Guillaume Cottenceau)
2066         (gtk_icon_view_set_drag_dest_item): 
2067         (gtk_icon_view_scroll_to_path): Fix a typo in the docs.  (#316419,
2068         #316424, Guillaume Cottenceau)
2069
2070 2005-09-18  Hans Breuer  <hans@breuer.org>
2071
2072         * gtk/gtktrayicon-win32.c : now handling events by hard-coded 
2073         g_signal_emit_by_name() - will break when gtkstatusicon.c changes.
2074
2075 2005-09-18  Hans Breuer  <hans@breuer.org>
2076
2077         * gdk/gdk.symbols gdk/win32/gdkwin32.h gdk/win32/gdkcursorwin32.c : export
2078         _gdk_win32_pixbuf_to_hicon() as gdk_win32_pixbuf_to_hicon_libgtk_only()
2079         * gtk/gtktrayicon-win32.c : a lot of debug spew but it has started to show
2080         the icon and is blinking with teststatusicon. More to come ...
2081
2082 2005-09-18  Hans Breuer  <hans@breuer.org>
2083
2084         * gtk/makefile.msc.in : fix typo for GTK_VER; define HAVE_CONFIG_H
2085         cause gtkprogressbar.c has #include <config.h> conditionally; less
2086         noise from generated gtk.def
2087         * gtk/stock-icons/makefile.msc gdk/makefile.msc tests/makefile.msc : updated
2088         
2089         * gtk/gtktrayicon-win32.c : dummy implmentation to make gtk compile.
2090         For me it works as well as the *NIX implemenation, that is not at all.
2091
2092         * gdk/win32/gdkproperty-win32.c : implement gdk_atom_intern_static_string()
2093
2094         * gdk/win32/gdkwindow-win32.c(gdk_window_set_urgency_hint) : only use
2095         only use (WINVER >= 0x0500) when available from the SDK. Otherwise fall
2096         back to true dynamic linking of FlashWindowEx. Makes gtk+ work on NT4.0
2097         again - if compiled properly.
2098
2099         * tests/teststatusicon.c : don't use GNOME icons for testing, but icons
2100         already coming with Gtk+. Makes it compile on win32.
2101
2102 2005-09-18  Guilherme de S. Pastore  <gpastore@cvs.gnome.org>
2103
2104         * README.cvs-commits: fixed some tiny typos
2105
2106 2005-09-16  Tor Lillqvist  <tml@novell.com>
2107
2108         * modules/engines/ms-windows/msw_style.c (draw_extension,
2109         draw_box_gap): Check whether the widget actually is a GtkNotebook
2110         before treating it as such. Drop some unneeded local variables,
2111         use parameter with same information instead. (#316412)
2112
2113 2005-09-15  Federico Mena Quintero  <federico@ximian.com>
2114
2115         * tests/autotestfilechooser.c: Start a set of automated tests for
2116         the file chooser.  The only test in there right now doesn't pass
2117         yet.  It specifies the intended behavior of the first optimization
2118         of a series which I'll do on the file chooser (see
2119         http://primates.ximian.com/~federico/news-2005-09.html#14 for the
2120         details of this optimization).
2121
2122         * tests/Makefile.am: Added autotestfilechooser.c.
2123
2124         * gtk/gtkfilechooserprivate.h (struct
2125         _GtkFileChooserDialogPrivate): Move all the file chooser's private
2126         structures to here, so that they can be accessed by
2127         tests/autotestfilechooser.c:  _GtkFileChooserDialogPrivate,
2128         _GtkFileChooserWidgetPrivate, LoadState, _GtkFileChooserDefault.
2129
2130         * gtk/gtkfilechooserdialog.c: See above.
2131
2132         * gtk/gtkfilechooserwidget.c: See above.
2133
2134         * gtk/gtkfilechooserdefault.c: See above.
2135
2136 Thu Sep 15 15:27:55 2005  Tim Janik  <timj@imendio.com>
2137
2138         * gtk/gtkwindow.c: 
2139         gtk_window_map_event(): new function to work around lost unmap requests.
2140         fixes bug #316180.
2141
2142 2005-09-14  Federico Mena Quintero  <federico@ximian.com>
2143
2144         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): Add
2145         an easy-to-find profiling marker when starting to create a file
2146         chooser.
2147         (browse_files_model_finished_loading_cb): Likewise, for when the
2148         chooser is finished loading.
2149
2150 2005-09-14  Tristan Van Berkom <tvb@cvs.gnome.org>
2151
2152         * gtk/gtkcolorbutton.c: Check "color" argument in 
2153         gtk_color_button_set_color ()
2154
2155 2005-09-14  Matthias Clasen  <mclasen@redhat.com>
2156
2157         * gtk/gtklabel.c (gtk_label_get_type): 
2158         * gtk/gtkbutton.c (gtk_button_get_type): 
2159         * gtk/gtkwindow.c (gtk_window_group_get_type): No point in 
2160         using a mem chunk for window groups, buttons, labels.
2161
2162         * gtk/updateiconcache.c (foreach_remove_func): Fix
2163         a use-after-free bug.  (#316256, Alexander Nedotsukov)
2164
2165 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
2166
2167         * gtk/*.c: Various cleanups.  (#315360, Kjartan Maraas)
2168
2169         * gdk/*.c: Various cleanups.  (#315359, Kjartan Maraas)
2170         
2171 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
2172
2173         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
2174         Let GDK_Return pass through in some more cases.
2175
2176         * gtk/gtkentry.c (gtk_entry_key_press): Reset the im context before
2177         activating the entry. 
2178
2179         * gtk/gtkiconview.c (gtk_icon_view_class_init):
2180         (gtk_icon_view_get_dest_item_at_pos):  Fix typos in the 
2181         docs.  (#316008, #316027, #316121, Guillaume Cottenceau)
2182
2183         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Add some docs.
2184         (#316001, Guillaume Cottenceau)
2185
2186         * gtk/gtkdnd.c (gtk_drag_set_icon_name): Fix a copy-and-paste
2187         mistake in the docs.  (#315993, Guillaume Cottenceau)
2188
2189         * tests/testentrycompletion.c (create_simple_completion_model): Add
2190         some strings containing multibyte characters.
2191
2192         * gtk/gtkentrycompletion.c (gtk_entry_completion_real_insert_prefix): 
2193         Fix prefix insertion for multibyte characters.  (#316095,
2194         Tommi Komulainen)
2195
2196         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): 
2197         * gtk/gtkiconview.c (gtk_icon_view_create_drag_icon): Silently
2198         return NULL if the widget is not realized.  (#316023,
2199         Guillaume Cottenceau)
2200
2201 2005-09-11  Matthias Clasen  <mclasen@redhat.com>
2202
2203         * gdk/gdk.symbols: 
2204         * gdk/gdkproperty.h: 
2205         * gdk/x11/gdkproperty-x11.c (gdk_atom_intern_static_string): 
2206         New function to avoid pointless strdups when creating atoms
2207         from static strings.  
2208
2209         * gdk/x11/*.c:
2210         * gtk/*.c:  Use gdk_atom_intern_static_string() where 
2211         appropriate.
2212
2213 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
2214
2215         * gtk/gtkcellrendererkeys.h: 
2216         * gtk/gtkcellrendererkeys.c: Add a cell renderer for displaying
2217         and editing accelerators, a port of EggCellRendererKeys .
2218
2219         * gtk/gtk.symbols:
2220         * gtk/gtk.h:
2221         * gtk/Makefile.am: Add the keys cell renderer.
2222
2223         * tests/Makefile.am: 
2224         * tests/testkeys.c: Test GtkCellRendererKeys
2225
2226 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
2227
2228         Make it possible to determine if a key event is for a
2229         modifier key:
2230         
2231         * gdk/x11/gdkprivate-x11.h: 
2232         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_key_is_modifier): 
2233         New function to determine if a keycode is mapped to a modifier.
2234         (get_xkb): Get the modmap.
2235
2236         * gdk/x11/gdkevents-x11.c (translate_key_event): Set the 
2237         is_modifier bit by calling _gdk_keymap_key_is_modifier().
2238
2239         * gdk/gdkevents.h (struct _GdkEventKey): Add an is_modifier
2240         bit.
2241
2242 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
2243
2244         * gdk/gdkpixbuf-drawable.c (convert_real_slow): Remove an 
2245         unused variable, noticed by Kjartan Maraas.
2246
2247 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
2248
2249         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event): 
2250         Make drag reordering work properly for columns other than the
2251         first.  (#315054, Dan Winship)
2252         
2253         * gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Handle 
2254         invalid fontnames better. (#136926, Michael R. Walton)
2255         
2256         Stop cursor blinking in non-editable regions of a text view.
2257         (#311508, Torbjörn Andersson)
2258         
2259         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): 
2260         (cursor_blinks): Take editability into account when deciding
2261         whether the cursor blinks.
2262         (gtk_text_view_button_release_event): 
2263         (gtk_text_view_move_cursor_internal): Update cursor blinking here.
2264
2265         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_start_editing): 
2266         Use connect_after to connect to the focus_out event. This
2267         ensures that the entry has already stopped blinking by the time
2268         we emit the edited signal.  (#315229, Thomas Leonard)
2269
2270         * tests/testgtk.c: Use GDK_MOD1_MASK, not GDK_ALT_MASK.
2271
2272         * gtk/gtkwindow.c (gtk_window_parse_geometry): Don't set
2273         unsigned ints to -1.  (#315481, Kjartan Maraas)
2274
2275         * gtk/gtkcalendar.c (gtk_calendar_init): first_weekday is relative
2276         to week_1stday, not to Sunday. Gotta love the ISO 14652 guys...
2277         (#314473, Stanislav Brabec)
2278
2279 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
2280
2281         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Document
2282         memory handling.  (#314975, Torsten Schoenfeld)
2283
2284         * gtk/gtkiconview.c (gtk_icon_view_class_init): 
2285         * gtk/gtkfilesel.c (gtk_file_selection_class_init): 
2286         * gtk/gtkcombobox.c (gtk_combo_box_class_init): 
2287         * gtk/gtklabel.c (gtk_label_class_init): 
2288         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): 
2289         Stylistic improvements and clarifications for some blurbs. 
2290         (#315520, Clytie Siddall)
2291
2292 2005-09-09  Tor Lillqvist  <tml@novell.com>
2293
2294         * gdk/win32/gdkdisplay-win32.c (gdk_display_get_name): Cache the
2295         display name. There is only one GdkDisplay on Win32, and
2296         constructing the display name isn't entirely trivial, so cacheing
2297         is probably worth it. For instance GIMP calls this function a lot.
2298         (gdk_display_open): Call gdk_display_get_name() to prime the
2299         cached name.
2300         (gdk_display_get_n_screens, gdk_display_get_screen,
2301         gdk_display_get_default_screen): Verify parameter correctness like
2302         the X11 backend does.
2303
2304         * gdk/win32/gdkscreen-win32.c (gdk_screen_make_display_name):
2305         Return a freshly allocated string, as the API specifies. Fixes a
2306         heap corruption problem that caused random errors and crashes in
2307         GIMP, for instance.
2308
2309 2005-09-07  Matthias Clasen  <mclasen@redhat.com>
2310
2311         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
2312         Make C-u commit and restart hex input if we are already in a
2313         hex sequence.
2314
2315 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
2316
2317         * gdk/x11/gdkkeys-x11.c (update_modmap): Make the modmap reflexive.
2318         (_gdk_keymap_add_virtual_modifiers): Don't add both Alt and Meta
2319         if they are mapped to the same modifier.
2320
2321         * gtk/Makefile.am: Rename gtkstatusicon-x11.c and gtktrayicon.c
2322         to gtkstatusicon.c and gtktrayicon-x11.c
2323
2324         * gtk/gtkaccelgroup.c: Include Super, Hyper and Meta in the
2325         default accel mod mask.
2326
2327         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): 
2328         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
2329         Don't use GDK_ALT_MASK.
2330
2331         * gdk/gdktypes.h: No need to introduce GDK_ALT_MASK
2332
2333 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
2334
2335         Add support for extra virtual modifiers:  (#85780, Owen Taylor)
2336         
2337         * tests/testgtk.c (create_key_lookup): Add tests for extra virtual
2338         modifiers.
2339
2340         * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Try to match both against
2341         Mod2 - Mod5 and against Super, Hyper, Meta.
2342
2343         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
2344         * gtk/gtkaccelgroup.c (gtk_accelerator_parse) 
2345         (gtk_accelerator_name): Support Super, Hyper Meta and Mod2 - Mod5.
2346
2347         * gdk/x11/gdkkeys-x11.c (struct _GdkKeymapX11): Add a 
2348         modmap to maintain the information which X modifiers map to
2349         virtual modifiers.
2350         (get_xkb): Set up the modmap from the XKB tables.
2351         (update_keymaps): Set up the modmap from the information returned
2352         by XGetModifierMapping in the non-XKB case.
2353
2354         * gdk/x11/gdkprivate-x11.h: 
2355         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_add_virtual_modifiers): New 
2356         function to set the virtual modifiers in the state.
2357
2358         * gdk/x11/gdkevents-x11.c (translate_key_event): Call 
2359         _gdk_keymap_add_virtual_modifiers here.
2360
2361         * gdk/gdktypes.h (GdkModifierType): Add bits for virtual Super, 
2362         Hyper and Meta modifiers. Also add GDK_ALT_MASK as an alias
2363         for GDK_MOD1_MASK.
2364
2365 2005-09-05  Matthias Clasen  <mclasen@redhat.com>
2366
2367         * gtk/gtkaction.c (connect_proxy): Set the label of a button
2368         if it has no child.  (#315253, John Finlay)
2369
2370 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
2371
2372         * gtkimcontextsimple.h: Add a modifiers_dropped bit
2373
2374 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
2375
2376         * gtk/gtkentry.c (gtk_entry_destroy): Disconnect idle handlers
2377         on destroy to avoid problems when they are called on a destroyed
2378         widget.  (#315135, John Cupitt)
2379         
2380         * gtk/gtkentry.c (gtk_entry_class_init):
2381         * gtk/gtktextview.c (gtk_text_view_class_init): Add bindings
2382         for Ctrl-Shift-A to unselect all.  (#309301, Kathy Fernandes)
2383
2384         * gtk/gtkimcontextsimple.c: Rework the Unicode hex input
2385         code. Now we only steal a single key combination, Ctrl-Shift-U,
2386         instead of sixteen. 
2387         A hex Unicode sequence must be started with Ctrl-Shift-U, followed
2388         by a sequence of hex digits entered with Ctrl-Shift still held.
2389         Releasing one of the modifiers or pressing space while the modifiers
2390         are still held commits the character. It is possible to erase
2391         digits using backspace.
2392         As an extension to the above, we also allow to start the sequence
2393         with Ctrl-Shift-U, then release the modifiers before typing any
2394         digits, and enter the digits without modifiers.
2395         (#82011, Owen Taylor)
2396         
2397 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
2398
2399         * gtk/gtkmain.c (gtk_get_event_widget): If the window is destroyed,
2400         we still need to deliver the destroy event.  (#314980, Chris Lahey)
2401
2402         * gtk/gtktextview.c (gtk_text_view_key_press_event): Reset 
2403         im context before committing \n or \t.
2404
2405 2005-09-02  Alexander Larsson  <alexl@redhat.com>
2406
2407         * gtk/gtkfilechooserdefault.c: (shortcuts_add_volumes),
2408         (shortcuts_activate_volume):
2409         Handle base_path being null in the rest of the cases (#310270)
2410
2411 2005-09-02  Tor Lillqvist  <tml@novell.com>
2412
2413         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Keep track of
2414         cursor position also in root window coordinates. Prune out
2415         superfluous WM_MOUSEMOVE events even earlier, based on root window
2416         coordinates. Windows sends WM_MOUSEMOVE messages after a new
2417         window has ben mapped below the cursor even if the mouse doesn't
2418         move. We used to generate GDK_MOTION_NOTIFY in these cases. This
2419         confused at least gtk_menu_motion_notify(). (#314995)
2420
2421         * gtk/gtkintl.h: No need to include config.h here. It caused
2422         warnings about GTK_LOCALEDIR being redefined on Win32 when
2423         compiling files where gtkintl.h is included after gtkprivate.h
2424         (which #undefines and re-#defines GTK_LOCALEDIR on Win32).
2425
2426         * gtk/gtkplug.c: Include config.h.
2427
2428 2005-09-01  Matthias Clasen  <mclasen@redhat.com>
2429
2430         * gtk/gtkfilesystemunix.c: Pass statbufs down to 
2431         xdg_mime_get_mime_type_for_file() where possible, to avoid
2432         useless re-stating.  
2433         
2434         * gtk/gtkaction.c (gtk_action_get_accel_closure): Fix doc
2435         typo.  (#314921, Guillaume Cottenceau)
2436
2437         * gdk/*.c: Intern some more strings.
2438         * gtk/gtkintl.h: 
2439         * gtk/*.c: Define an I_() macro and use it instead of the 
2440         bulky g_intern_static_string().
2441
2442 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
2443
2444         * gtk/gtkbindings.c (binding_signal_new): Intern the signal name
2445         instead of copying it.
2446
2447         * gtk/gtktypeutils.c (gtk_identifier_get_type): Some more string interning.
2448
2449         * gtk/*.c: Also intern static strings passed to 
2450         g_object_set_data().
2451
2452         * gdk/Makefile.am: 
2453         * gtk/Makefile.am: Intern type names in code generated by 
2454         glib-mkenums, too.
2455
2456         * gtk/*.c: 
2457         * gdk/x11/*.c: 
2458         * gdk/*.c: Intern type names before registering the type to avoid 
2459         unnecessary copies.
2460
2461         * configure.in: Require GLib 2.9.0
2462
2463 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
2464
2465         * gtk/gtktoolbar.c: Undeprecate gtk_toolbar_set_icon_size(),
2466         and add icon-size and icon-size-set properties.  (#314172)      
2467
2468         * gtk/gtkwindow.c (gtk_window_set_transient_for): Inherit window
2469         groups across transient parents.  (#312918, Christian Persch)
2470
2471         * gtk/gtktreemodel.c: Some documentation fixes.  (#314882,
2472         Guillaume Cottenceau)
2473
2474         * gtk/gtktextiter.c (gtk_text_iter_backward_visible_cursor_positions): 
2475         Fix a typo in the docs.  (#314878, Guillaume Cottenceau)
2476
2477 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
2478
2479         * gtk/gtkentry.c (gtk_entry_class_init): Add key bindings to
2480         make C-/ select all and C-\ unselect all.  (#309301,
2481         Kathy Fernandez)
2482
2483         * gtk/gtkimcontextsimple.c: Change the compose sequence for
2484         soft hyphen to be multi_key-minus-minus-space, and add
2485         compose sequences multi_key-minus-minus-period and 
2486         multi_key-minus-minus-minus for en dash and em dash.
2487         (#172653, Christian Lohmaier)
2488
2489         * gtk/gtkentry.c (gtk_entry_draw_frame): Fix some unused
2490         code.  (#313946, Christian Persch)
2491
2492         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Another
2493         fix for the default value of the "ui" property.
2494
2495 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
2496
2497         * gtk/gtk.symbols: 
2498         * gtk/gtkselection.h:
2499         * gtk/gtkselection.c: Add functions which look for text, image
2500         or uri targets in an array of atoms.   (#314089, Mark Wielaard)
2501
2502         * gtk/gtk.symbols: 
2503         * gtk/gtkselection.h:
2504         * gtk/gtkselection.c (gtk_selection_data_targets_include_uri): 
2505         Add a function to check wether targets include uri.  
2506         (#314092, Mark Wielaard)
2507         
2508         * gtk/gtk.symbols: 
2509         * gtk/gtkwindow.h: 
2510         * gtk/gtkwindow.c: Add a deletable property with getter
2511         and setter, to control the close button in the window 
2512         frame.  (#59718, Havoc Pennington)
2513
2514 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
2515
2516         * gtk/gtkrc.key.emacs: Add C-n/C-p/C-f/C-b as alternatives
2517         to the arrow keys for menu navigation.  (#162825, Carl Worth)
2518
2519         * gtk/gtkentry.c, gtk/gtktextview.c: More typo fixes
2520
2521         * gtk/gtksocket-x11.c, gtk/gtkstatusicon-x11.c: Fix typos.
2522
2523         * gtk/gtkstatusicon-x11.c (gtk_status_icon_new_from_stock): 
2524         * gtk/gtkimage.c (gtk_image_new_from_stock): Don't
2525         refer to nonexisting stock ids.
2526
2527         * gtk/gtktextview.c (popup_targets_received): 
2528         * gtk/gtkentry.c (popup_targets_received): Construct
2529         the "Select All" menuitem from stock.
2530
2531         * gtk/stock-icons/stock_select_all_{16,24}.png:
2532         * gtk/stock-icons/Makefile.am: 
2533         * gtk/gtkiconfactory.c:
2534         * gtk/gtkstock.h: 
2535         * gtk/gtkstock.c: Add a "Select All" stock item.  (#78545,
2536         Calum Benson)
2537
2538         * gtk/gtktrayicon.c: Add a pointer to the spec.
2539
2540         * gtk/gtkstatusicon-x11.c: Add docs.
2541
2542         * gtk/gtkstatusicon.h: Fix a typo.
2543
2544         Add a cross-platform "tray icon" API, by
2545         porting EggStatusIcon/EggTrayIcon (#105101)
2546         
2547         * gtk/gtkstatusicon.h: A GtkStatusIcon is an object which
2548         displays an icon in a notification area.
2549
2550         * gtk/gtkstatusicon-x11.c: GtkStatusIcon implementation for
2551         X11, using GtkTrayIcon.
2552
2553         * gtk/gtktrayicon.h: 
2554         * gtk/gtktrayicon.c: An implementation of the freedesktop.org
2555         system tray specification, not public API.
2556
2557         * gtk/gtk.symbols: Add new exported functions.
2558
2559         * gtk/gtk.h: Include gtkstatusicon.h.
2560
2561         * gtk/Makefile.am: Add new files.
2562
2563         * tests/Makefile.am:
2564         * tests/teststatusicon.c: Test for GtkStatusIcon.
2565
2566 2005-08-29  Christopher Aillon  <caillon@redhat.com>
2567
2568         * gtk/gtkstock.c: Add builtin GtkStockItems for GTK_STOCK_CONNECT
2569         and GTK_STOCK_DISCONNECT
2570         
2571 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
2572
2573         * gtk/gtksocket-x11.c (_gtk_socket_windowing_embed_notify): 
2574         Use XFixesChangeSaveSet if available.  (#314682)
2575
2576         * gtk/gtkmenu.c (gtk_menu_grab_notify):  Only cancel if the menu
2577         was active.  (#314298, Christian Persch, analysis by Mark McLoughlin)
2578
2579 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
2580
2581         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): Remove an
2582         accidentally leftover duplicate pixbuf creation.  (#314700,
2583         Kjartan Maraas)
2584
2585         * gtk/gtksettings.c (settings_update_cursor_theme): Don't 
2586         leak the cursor theme name.  (#314693, Kjartan Maraas)
2587
2588         * gdk/x11/gdkasync.c (_gdk_x11_get_window_child_info): Free 
2589         state.children in all cases.  (#313862, Kjartan Maraas)
2590
2591 2005-08-28  Matthias Clasen  <mclasen@redhat.com>
2592
2593         * po/POTFILES.in, po-properties/POTFILES.in:
2594         Add gdk/gdkscreen.c
2595
2596 2005-08-27  Matthias Clasen  <mclasen@redhat.com>
2597
2598         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Fix the default
2599         value of the ui property. (#314532, Yong Wang)
2600
2601         * gdk/x11/gdkproperty-x11.c (gdk_property_get): Don't warn
2602         when G_MAXLONG is passed as length.  
2603
2604 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
2605
2606         * gtk/updateiconcache.c: Add a separate --ignore-theme-index option
2607         to avoid overloading --force.  (JP Rosevaar)
2608
2609 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
2610
2611         * configure.in: Bump version to 2.9.0
2612
2613         * gdk/gdk.symbols: 
2614         * gdk/gdkscreen.h: 
2615         * gdk/gdkscreen.c: Make the GdkScreen font options api
2616         public, and add properties GdkScreen::font-options and
2617         GdkScreen::resolution.  (#314004)
2618
2619         * gdk/gdkpango.c:
2620         * gtk/gtksettings.c:
2621         * gtk/gtkwidget.c: Adjust all callers.
2622         
2623         * gdk/gdkintl.h: Simplify and use glib/gi18n-lib.h.
2624         * gdk/gdkpango.c: Include gdkintl.h, not gtkintl.h.
2625         * gdk/gdkscreen.c: Include gdkintl.h.
2626
2627         * gtk/gtkicontheme.c (theme_lookup_icon): Avoid an uninitialized
2628         variable warning, pointed out by Colin Walters. (#314585)
2629
2630 2005-08-26  Tor Lillqvist  <tml@novell.com>
2631
2632         * gtk/gtkfilesystemwin32.c: Remove some ifdeffed out debugging
2633         printouts.
2634         (gtk_file_system_win32_parse): Don't mishandle UNC paths. (#314519)
2635
2636 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
2637
2638         * gtk/gtkcalendar.c (gtk_calendar_init): Fix the calculation
2639         of week_start.  (#314473, JP Rosevaar)
2640
2641 2005-08-25  Thomas Fitzsimmons  <fitzsim@redhat.com>
2642
2643         * gtk/gtkfilesystemmodel.c (idle_finished_loading_cb): Acquire GDK
2644         lock.  (#314533, Thomas Fitzsimmons)
2645
2646 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
2647
2648         * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Handle
2649         NULL gracefully.  (#314523, Ed Catmur)
2650
2651 2005-08-25  Owen Taylor  <otaylor@redhat.com>
2652
2653         * gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): 
2654         Handle theme == NULL.
2655
2656 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
2657
2658         * gtk/gtkmenutoolbutton.c (menu_position_func): Take widget
2659         y offset into account when positioning the popup.  (#314470,
2660         Christian Persch)
2661
2662 2005-08-25  Owen Taylor  <otaylor@redhat.com>
2663
2664         * gdk/gdkscreen.c (gdk_screen_get_type): Use gdk_screen_init
2665         as instance_init, not base_init! (#314452, Fix from Frederic
2666         Crozat, reported by Joe Marcus Clarke). Trivial cleanup: use -1.
2667         rather than 1 for a negative flag value.
2668
2669 2005-08-24  Owen Taylor  <otaylor@redhat.com>
2670
2671         * gdk/gdkpango.c (draw_error_underline): Add a note about
2672         cut-and-paste between here and Pango.
2673
2674 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
2675
2676         * === Released 2.8.2 ===
2677
2678         * gtk/gtkclipboard.c (request_image_received_func): Use the correct
2679         callback for image/gif, and also try image/bmp.  (#314086,  Mark 
2680         Wielaard)
2681
2682         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon): 
2683         Use gnome-dev-harddisk for volumes, not gnome-fs-blockdev.  (#314382,
2684         Sebastien Bacher)
2685         
2686         * NEWS: Updates
2687
2688         * gtk/gtksettings.c (gtk_settings_get_for_screen): Make sure font
2689         and cursor settings get propagated down to the screen initially.
2690         Pointed out by Frederic Crozat.
2691
2692         * gtk/gtkicontheme.c (ensure_valid_themes): Don't try to send a client
2693         message if the screen is NULL. Noticed by Kjartan Maraas.
2694
2695 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
2696
2697         * Bump version
2698
2699         * === Released 2.8.1 ===
2700
2701         * NEWS: Updates
2702         
2703 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
2704
2705         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_visible): Protect
2706         against lazy filterers which return values other than TRUE or
2707         FALSE from their visible func.  (#314335)
2708
2709 2005-08-23  Owen Taylor  <otaylor@redhat.com>
2710
2711         Fix for #314004, reported by Michael Reinsch:
2712
2713         * gdk/gdk.symbols:
2714         * gdk/gdkscreen.[ch]: Add gdk_screen_get/set_font_options_libgtk_only()
2715         Add gdk_screen_get/set_resolution_libgtk_only()
2716
2717         * gdk/gdkpango.c (gdk_pango_context_get_for_screen): Set
2718         the options for the screen on the newly created context.
2719
2720         * gtk/gtksettings.c (settings_update_font_options/dpi) gtkwidget.c: 
2721         Move font options and dpi code from gtkwidget.c to gtksettings.c, set
2722         the font options on the screen.
2723
2724         * gtk/gtkwidget.c (gtk_widget_update_pango_context): Just get
2725         the font options from the screen and set them on the context.
2726
2727 2005-08-23  Kristian Rietveld  <kris@gtk.org>
2728
2729         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): don't
2730         bother inserting new rows in a level with a zero refcount and
2731         immediately free the level. (Fixes #312350, reported by Markku Vire).
2732
2733 2005-08-23  Matthias Clasen  <mclasen@redhat.com>
2734
2735         * gtk/updateiconcache.c: Complain when there is no index.theme file
2736         in the specified directory, unless --force is used. Also add an
2737         --index-only option to create caches without image data.
2738
2739         * gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Fix a
2740         C99ism.  (#314262, Robert Jeff Mitchell)
2741         
2742 2005-08-22  Manish Singh  <yosh@gimp.org>
2743
2744         * gtk/gtkicontheme.h: add declaration for _gtk_icon_theme_check_reload.
2745
2746         * gtk/gtkwindow.c: remove declaration of gtk_window_read_rcfiles.
2747
2748 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
2749
2750         * gtk/gtkwindow.c (gtk_window_client_event): 
2751         * gtk/gtkicontheme.c (ensure_valid_themes) 
2752         (_gtk_icon_theme_check_reload): Implement a clientmessage based
2753         scheme for makeing sure that all GTK+ applications notice if an
2754         icon theme has been updated. This should prevent multiple versions
2755         of an icon theme cache to be mapped in memory at the same time,
2756         which can cause excessive memory consumption.  (#313156, Chris 
2757         Lahey)
2758
2759 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
2760
2761         * gtk/gtkicontheme.c (gtk_icon_theme_load_icon): Add a note
2762         regarding icon theme changes.
2763
2764         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): When returning
2765         pixbufs which are backed by the mmapped memory of an icon cache,
2766         increase the refcount of the icon cache, so that the memory is not
2767         munmapped away underneath the pixbuf upon icon theme changes.  
2768         (#314170, Kjartan Maraas)
2769
2770         * docs/tools/Makefile.am (LDADDS): Add GTK_DEP_LIBS, in order 
2771         to link against Xext.  (#314062)
2772
2773         * gtk/gtkhsv.c (paint_triangle): One more fix to prevent buffer
2774         overruns.  (#314081, Hans Breuer)
2775
2776 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
2777
2778         * gtk/gtkentry.c (gtk_entry_get_layout): Clarify that the
2779         returned layout must not be modified.
2780
2781 Sat Aug 20 16:12:14 2005  Jonathan Blandford  <jrb@redhat.com>
2782
2783         * gtk/gtktreeview.c (gtk_tree_view_set_model): clear
2784         scroll_to_path if the model changes.
2785
2786         * gtk/gtkiconview.c: (gtk_icon_view_destroy),
2787         (gtk_icon_view_size_allocate), (gtk_icon_view_set_cursor),
2788         (gtk_icon_view_scroll_to_path): Handle scrolling to a path before
2789         we're realized, #312798
2790         (gtk_icon_view_set_model): clear scroll_to_path if the model
2791         changes.
2792
2793 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
2794
2795         * gtk/gtkrange.c (gtk_range_adjustment_changed) 
2796         (gtk_range_adjustment_value_changed):  Don't queue a draw
2797         if the layout has not changed.  (#313991, Benjamin Berg)
2798
2799 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
2800
2801         * gtk/gtktreeitem.c: Remove duplicate lines.  (#313344,
2802         Benoit Carpentier)
2803
2804         * modules/engines/ms-windows/msw_style.c (setup_system_styles): 
2805         Fix a typo. 
2806
2807         * gtk/gtkfilechooserbutton.c (change_icon_theme) 
2808         (model_add_special, model_add_special, model_add_volumes):
2809         Handle pixbuf being NULL without warnings. Also, don't
2810         leak pixbuf references when the icon theme is changed.
2811
2812         * gtk/gtkmain.c (gtk_get_event_widget): Don't access
2813         the user data on destroyed windows, since at best
2814         it can be a stale pointer.  (#313953, Robin Green)      
2815
2816 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
2817
2818         * gtk/gtkhsv.c (paint_triangle): Avoid a buffer overrun.  
2819         (#313900, Sebastien Bacher)
2820
2821         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Return
2822         FALSE if the tree is empty.  (#313891, Guillaume Cottenceau)
2823
2824         * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display) 
2825         (xdnd_read_actions, get_client_window_at_coords_recurse): 
2826         Free data returned from XGetWindowProperty. 
2827
2828         * gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window) 
2829         Free data returned from XGetWindowProperty.  (313867, Kjartan
2830         Maraas)
2831         
2832         * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse): Free
2833         children in all cases.  (#313862, Kjartan Maraas)
2834
2835         * gtk/gtkicontheme.c (theme_lookup_icon): Store GtkIconData structs 
2836         in the per-directory hash, even if they come from the icon cache. 
2837         We tried to avoid that before, but as a result leaked icon data
2838         structs.  (#313852, Kjartan Maraas)
2839
2840 2005-08-18  Matthias Clasen  <mclasen@redhat.com>
2841
2842         * gtk/gtkmenutoolbutton.c (gtk_menu_tool_button_destroy): Disconnect
2843         signal handlers on destroy, not on finalize.  (#313759, Brett Atoms)
2844
2845 2005-08-15  Owen Taylor  <otaylor@redhat.com>
2846
2847         * configure.in: Add -lXext to GDK_EXTRA_LIBS in absence of pkg-config
2848         files for x11/xext. (Jonas Bonn)
2849
2850 2005-08-15  Tor Lillqvist  <tml@novell.com>
2851
2852         * gtk/gtkicontheme.c (theme_lookup_icon): Put debugging printout
2853         inside GTK_NOTE.
2854
2855 2005-08-15  Owen Taylor  <otaylor@redhat.com>
2856
2857         * configure.in: Fix have_base_pc / have_base_x_pc typo.
2858
2859         * gdk/x11/gdkdrawable-x11.c gtk/gtksettings.c: Remove panoxft.h includes.
2860         (#313417, James Andrewartha)
2861
2862         * configure.in: Add fontconfig to X_PACKAGES, since we use it for
2863         FcNameConstant(). (More of #313417)
2864
2865 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
2866
2867         * gtk/gtkfilechooserdefault.c: When using gtk_dialog_run() for
2868         modal dialogs, make sure to inherit the window group from 
2869         the parent, since we don't inherit window groups across
2870         transient parents currently.  (#312918, Christian Persch)
2871
2872         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): 
2873         * gtk/gtkdialog.c (gtk_dialog_run): Slight update to the docs. 
2874
2875         * gtk/gtkiconview.c (gtk_icon_view_select_path) 
2876         (gtk_icon_view_scroll_to_path): Handle paths of depth 0
2877         gracefully.  (#312796, Jonathan Blandford)
2878
2879         * tests/testtoolbar.c: Add some more tests for menu placement.
2880
2881         * gtk/gtkmenutoolbutton.c (menu_position_func): 
2882         * gtk/gtktoolbar.c (menu_position_func): Improve positioning
2883         of toolbutton menus and of the overflow menu.  (#312937, 
2884         #153870, Christian Persch, Paolo Borelli)
2885
2886 2005-08-15  Tor Lillqvist  <tml@novell.com>
2887
2888         * gtk/updateiconcache.c: Use g_path_get_dirname() instead of
2889         the nonportable <libgen.h> and dirname().
2890
2891 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
2892
2893         * gtk/gtksizegroup.c: Use object data to mark widgets and
2894         groups as visited, so that we avoid constant extra list
2895         traversals. Also allocate quarks in class_init.  (#311618,
2896         Michael Natterer)
2897
2898         * gtk/gtkicontheme.c (gtk_icon_theme_lookup_icon): Correct the 
2899         download location for the hicolor icon theme. (#313475, Olexiy 
2900         Avramchenko)
2901
2902         * gtk/gtkicontheme.c: Remove debug spew. 
2903
2904 2005-08-15  Owen Taylor  <otaylor@redhat.com>
2905
2906         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_back_pixmap): 
2907         * gdk/win32/gdkwindow-win32.c (gdk_window_set_back_pixmap): 
2908         * gdk/x11/gdkwindow-x11.c (gdk_window_set_back_pixmap):
2909         Handle pixmap == NULL when checking for a colormap.
2910         (Allin Cottrell).
2911
2912 2005-08-14  Matthias Clasen  <mclasen@redhat.com>
2913
2914         * gtk/updateiconcache.c: Store only one copy of the pixel data
2915         for symlinked icons. To achieve this, maintain a hashtable 
2916         mapping pathnames to pixel data, and share the pixel data for
2917         all symlinks resolving to the same pathname. When writing out
2918         the image data, write out the pixel data only the first time
2919         it is met, and store the offset pointing to the first copy
2920         for use in all later cases.
2921         This reduces the size of the Bluecurve icon cache from 40
2922         to 13MB. (#312972)
2923