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