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