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