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