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