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