]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-10
Fix another Coverity bug
[~andy/gtk] / ChangeLog.pre-2-10
1 2006-04-12  Matthias Clasen  <mclasen@redhat.com>
2
3         * gtk/gtkicontheme.c (insert_theme): Handle dirs == NULL
4         gracefully.  (Coverity)
5
6         * gtk/gtknotebook.c (gtk_notebook_remove): Silently do nothing
7         if the widget is not a child.  (Coverity)
8
9 2006-04-11  Matthias Clasen  <mclasen@redhat.com>
10
11         * gdk/x11/gdkkeys-x11.c (get_xkb): Return early in error
12         cases.  (Coverity)
13
14         * gtk/gtktextview.c (selection_motion_event_handler): Remove
15         some unused variables.
16
17         * gtk/gtktreeview.c ((gtk_tree_view_search_position_func): Apply
18         a patch from David Trowbridge to improve the positioning of the
19         search popup.  (#338047)
20
21 2006-04-11  Emmanuele Bassi  <ebassi@cvs.gnome.org>
22
23         * gtk/gtkrecentmanager.c (gtk_recent_manager_init)
24         (gtk_recent_manager_new): Remove the unneeded setting of the
25         storage file inside the constructor. (Murray Cumming)
26         (build_recent_items_list): Reset the dirty bit when done rebuilding
27         the list from the storage file.
28
29 2006-04-11  Matthias Clasen  <mclasen@redhat.com>
30
31         * gtk/gtkscale.c (gtk_scale_get_layout_offsets): Silence
32         compiler warnings.
33
34         * gtk/gtkinputdialog.c (gtk_input_dialog_set_mapping_mode): Don't
35         dereference info before checking it for NULL.  (Coverity)
36
37 2006-04-11  Anders Carlsson  <andersca@mac.imendio.com>
38
39         * gdk/quartz/GdkQuartzView.c:
40         (-[GdkQuartzView drawRect:]):
41         * gdk/quartz/gdkdrawable-quartz.c:
42         (gdk_quartz_ref_cairo_surface):
43         (_gdk_quartz_drawable_get_context):
44         (_gdk_quartz_drawable_release_context):
45         * gdk/quartz/gdkwindow-quartz.c:
46         (gdk_window_impl_quartz_finalize):
47         (gdk_window_impl_quartz_class_init):
48         (gdk_window_impl_quartz_begin_paint_region):
49         (gdk_window_impl_quartz_end_paint):
50         (gdk_window_impl_quartz_invalidate_maybe_recurse):
51         (gdk_window_impl_quartz_process_updates):
52         (gdk_window_impl_quartz_paintable_init):
53         (_gdk_window_impl_quartz_get_type):
54         * gdk/quartz/gdkwindow-quartz.h:
55         Have GdkWindowImplQuartz implement GdkPaintable.
56
57 2006-04-10  Michael Natterer  <mitch@imendio.com>
58
59         * gtk/gtktextbufferrichtext.c (gtk_text_buffer_deserialize):
60         pasted rich text should not be affected by tags that are active at
61         the insertion point. Therefore, remove and remember all active
62         tags, and re-apply them left and right of the inserted text after
63         pasting. Fixes bug #337653.
64
65 2006-04-11  Anders Carlsson  <andersca@imendio.com>
66
67         * gdk/gdkinternals.h:
68         * gdk/gdkwindow.c:
69         (_gdk_paintable_get_type):
70         (gdk_window_begin_paint_region):
71         (gdk_window_end_paint):
72         (gdk_window_process_updates):
73         (gdk_window_invalidate_maybe_recurse):
74         Add new GdkPaintable interface which implementation objects can 
75         implement in order to override gdk painting functions.
76
77 2006-04-10 Vladimer Sichinava  <vlsichinava@gmail.com>
78
79         * configure.in: Added "ka" (Georgian) to ALL_LINGUAS
80
81 2006-04-07  Hans Breuer  <hans@breuer.org>
82
83         * gtk/makefile.msc.in tests/makefile.msc : updated
84
85 2006-04-06  Tor Lillqvist  <tml@novell.com>
86
87         Correct the appearance of non-square icons and cursors: pad them
88         to square so that Windows won't stretch them.
89
90         * gdk/win32/gdkcursor-win32.c (create_alpha_bitmap)
91         (create_color_bitmap): Always create square bitmaps, take only
92         side length as argument.
93         (pixbuf_to_hbitmaps_alpha_winxp, pixbuf_to_hbitmaps_normal):
94         Corresponding changes.
95
96 2006-04-05  Matthias Clasen  <mclasen@redhat.com>
97
98         * gtk/gtktextview.c (text_window_realize): Lower the window, to
99         prevent late-constructed text windows from covering child 
100         widgets.  (#336796, Yevgen Muntyan)
101
102         * gtk/gtkmain.c (gtk_grab_add, gtk_grab_remove, gtk_grab_notify) 
103         (gtk_grab_notify_foreach): Rework the code which emits ::grab-notify
104         signals to ensure that we emit enough signals. Also optimize the
105         code to not do unnecessary tree walking.
106
107         * gtk/gtkwidget.c (gtk_widget_class_init): Document ::grab-notify.
108
109 2006-04-05  Paolo Borelli  <pborelli@katamail.com>
110
111         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle the case of \r
112         and \n split across lines. Bug #337022.
113         * tests/testtextbuffer.c: add unit test.
114
115 Tue Apr  4 12:25:36 2006  Søren Sandmann  <sandmann@redhat.com>
116
117         * gdk/x11/gdkimage-x11.c (gdk_image_class_init): Add "_private" to
118         make it build.
119
120 2006-04-04  Matthias Clasen  <mclasen@redhat.com>
121
122         * gdk/gdkdisplay.c: 
123         * gdk/gdkdisplaymanager.c:
124         * gdk/gdkdraw.c:
125         * gdk/gdkkeys.c:
126         * gdk/gdkpixmap.c:
127         * gdk/gdkscreen.c:
128         * gdk/gdkwindow.c:
129         * gdk/x11/gdkcolor-x11.c:
130         * gdk/x11/gdkdisplay-x11.c:
131         * gdk/x11/gdkdnd-x11.c:
132         * gdk/x11/gdkdrawable-x11.c:
133         * gdk/x11/gdkgc-x11.c:
134         * gdk/x11/gdkimage-x11.c:
135         * gdk/x11/gdkinput.c:
136         * gdk/x11/gdkpixmap-x11.c:
137         * gdk/x11/gdkscreen-x11.c:
138         * gdk/x11/gdkwindow-x11.c: Use G_DEFINE_TYPE.
139
140         * gdk/x11/gdkcolor-x11.c: 
141         * gdk/x11/gdkdnd-x11.c:
142         * gdk/x11/gdkimage-x11.c: Use instance private data.
143
144 2006-04-03  Matthias Clasen  <mclasen@redhat.com>
145
146         * gdk/gdkrgb.c: Get rid of a duplicate copy of the visual names.
147
148         * gtk/gtkmain.c: Make gtk_args const.
149
150         * gtk/gtkicontheme.c (pixbuf_supports_svg): Save one static.
151
152         * gtk/gtkrecentchooser.c (gtk_recent_chooser_error_quark):
153         * gtk/gtkrecentmanager.c (gtk_recent_manager_error_quark):
154         * gtk/gtkfilechooser.c (gtk_file_chooser_error_quark):
155         * gtk/gtkfilesystem.c (gtk_file_system_error_quark):
156         * gtk/gtkicontheme.c (gtk_icon_theme_error_quark): No point
157         in making the error path fast by caching quarks. 
158
159         * gtk/gtkfilesel.c (no_stat_dirs): Avoid relocation.
160
161         * gdk/gdk.c: Here too.
162
163         * gdk/gdkinternals.h: 
164         * gdk/x11/gdkmain-x11.c: 
165         * gdk/win32/gdkmain-win32.c: 
166         * gdk/directfb/gdkdisplay-directfb.c: 
167         * gdk/quartz/gdkmain-quartz.c: Make _gdk_windowing_args const.
168
169         * gdk/win32/gdkpixmap-win32.c: Include gdkscreen.h  (#337032,
170          Kazuki IWAMOTO)
171
172         * gtk/gtkprogressbar.c (gtk_progress_bar_set_text): Mention
173         that %NULL is allowed.  (#336937, Christian Neumair)
174
175         * gtk/gtkmain.c: Get rid of an unnecessary static variable.
176
177         * gtk/gtktextlayout.c: Fix a warning.
178         
179         * gtk/gtktextsegment.h: 
180         * gtk/gtktextsegment.c: 
181         * gtk/gtktextchild.c:
182         * gtk/gtktextbtree.c:
183         * gtk/gtktextmark.c: 
184         * gtk/gtktexttypes.h: Make the segment class pointers const.
185
186         * gtk/gtktextbufferserialize.c: Make parser struct const.
187         
188         * gtk/gtkuimanager.c: Make parser struct const.
189
190         * gtk/gtklinkbutton.c: Make the default colors const.
191
192         * gtk/gtkuimanager.c: Avoid relocations. 
193
194         * gtk/gtkxembed.c (_gtk_xembed_message_name): Reduce size of static
195         buffer.
196
197         * gtk/gtktext.c (gtk_text_key_press): Avoid relocations.
198
199         * gtk/gtkrc.c (gtk_rc_add_initial_default_files) 
200         (gtk_rc_add_default_file): Allocate the gtk_rc_default_files array
201         dynamically.
202
203 2006-04-02  Matthias Clasen  <mclasen@redhat.com>
204
205         * gtk/gtkrc.c: Avoid relocations for the array of symbol names. 
206
207         * gtk/gtkruler.c: Remove unused strings from the ruler_metrics 
208         structs, to avoid relocations.  (#336917, Stephane Chauveau)
209
210 2006-04-02  Emmanuele Bassi  <ebassi@cvs.gnome.org>
211
212         * gtk/gtkrecentmanager.c (gtk_recent_manager_set_filename): Build
213         the items list after setting the storage file.
214
215         * gtk/gtkrecentmanager.c (display_closed): Use the right string
216         for unsetting the default manager object from the screen.       
217
218 2006-04-01  Behdad Esfahbod  <behdad@gnome.org>
219
220         * gtk/gtkfilesel.c (gtk_file_selection_get_filename): Oops. (#336784)
221
222 2006-04-01  Behdad Esfahbod  <behdad@gnome.org>
223
224         * gtk/gtkfilesel.c (gtk_file_selection_get_filename): Use a GString
225         instead of static buffer to reduce .bss by 8kb. (#336784)
226
227 2006-04-01  Dom Lachowicz <cinamod@hotmail.com>
228
229         * modules/engines/ms-windows/msw_style.c (draw_hline): Emulate WinXP's
230         drawing of menu separators
231         
232 2006-03-31  Behdad Esfahbod  <behdad@gnome.org>
233
234         * gtk/gtkrecentmanager.c: Convert filenames to UTF-8 before printing
235         them out in warning messages. (#336770, Morten Welinder)
236
237 2006-03-31  Behdad Esfahbod  <behdad@gnome.org>
238
239         * gtk/gtkrecentmanager.c (gtk_recent_info_last_application): Update
240         last_stamp inside the look. (#336771, Morten Welinder)
241
242 2006-03-31  Behdad Esfahbod  <behdad@gnome.org>
243
244         * gtk/gtkrecentchoosermenu.c (gtk_recent_chooser_menu_get_property):
245         Add missing break. (#336769, Morten Welinder)
246
247 2006-03-31  Behdad Esfahbod  <behdad@gnome.org>
248
249         * gtk/gtkfilesystem.c (gtk_file_system_get_bookmark_label):
250         * gtk/gtklinkbutton.c (gtk_link_button_new_with_label): Return NULL
251         instead of FALSE in g_return_val_if_fail in a pointer-returning
252         function. (#336764, Morten Welinder)
253
254 2006-04-01  Gora Mohanty  <gmohanty@cvs.gnome.org>
255
256         * configure.in: Added 'or' (Oriya) to ALL_LINGUAS.
257
258 2006-03-31  Matthias Clasen  <mclasen@redhat.com>
259
260         * gtk/gtkrecentmanager.c (gtk_recent_info_get_age): Don't
261         assert that the age is positive.  (#336773, Morten Welinder)
262
263 2006-03-31  Matthias Clasen  <mclasen@redhat.com>
264
265         * gtk/gtkicontheme.c (load_icon_data): Don't leak the keyfile 
266         parser in the error case. 
267         
268         * gtk/gtkicontheme.c (load_icon_data, free_unthemed_icon) 
269         (icon_data_free, load_themes):
270         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon_data): Use the slice
271         allocator for GtkIconData and UnthemedIcon structs.
272
273 2006-03-30  Behdad Esfahbod  <behdad@gnome.org>
274
275         * gtk/gtkcalendar.c: Fix translation comments for localizable
276         digit formats. (fixes bug #336650)
277
278 2006-03-30  Matthias Clasen  <mclasen@redhat.com>
279
280         * gtk/gtkrecentmanager.h (struct _GtkRecentData): Fix the doc
281         comment format.
282
283         * gtk/gtkrecentmanager.c (gtk_recent_manager_has_item) 
284         (gtk_recent_manager_purge_items, gtk_recent_manager_lookup_item) 
285         (gtk_recent_manager_get_limit, gtk_recent_manager_add_full) 
286         (gtk_recent_manager_get_items, gtk_recent_manager_remove_item): 
287
288         * gtk/gtkrecentfilter.c (gtk_recent_filter_add_age): 
289         * gtk/gtkrecentchooser.c (gtk_recent_chooser_set_show_numbers) 
290         (gtk_recent_chooser_set_sort_func): 
291         * gtk/gtknotebook.h (gtk_notebook_set_tab_detachable): Sync
292         parameter names between .c and .h files to help gtk-doc.
293
294         * gdk/gdkregion-generic.c (gdk_region_get_clipbox): Reword
295         docs to help gtk-doc.
296
297         * docs/tools/widgets.c (get_all_widgets): Add 
298         GtkRecentChooserDialog.
299
300         * gtk/gtkdnd.c (gtk_drag_get_icon): Make sure to get an
301         icon window when constructing the fallback_icon. This
302         fixes a crash when dragging icons between screens in
303         nautilus.  (#325751, Hylke van der Schaaf)
304
305 2006-03-30  Michael Emmel  <mike.emmel@gmail.com>
306
307         * gdk/directfb/gdkpixmap-directfb.c implement
308             (gdk_pixmap_foreign_new_for_screen)
309
310 2006-03-30  Emmanuele Bassi  <ebassi@cvs.gnome.org>
311
312         Add documentation for the GtkLinkButton (#336592)
313
314         * docs/reference/tmpl/gtklinkbutton.sgml: Add description
315         of the GtkLinkButton.
316
317         * docs/reference/gtk/migrating-GtkLinkButton.sgml: Guidelines
318         for migrating code from GnomeHRef to the GtkLinkButton.
319
320         * docs/reference/gtk/gtk-docs.sgml:
321         * docs/reference/gtk/Makefile.am: Build glue for the porting
322         guide.
323
324 2006-03-29  Matthias Clasen <mclasen@redhat.com>
325
326         * gdk/gdk.symbols:
327         * gdk/gdkpixmap.h:
328         * gdk/win32/gdkpixmap-win32.c:
329         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new_for_screen):
330         New function to allow wrapping a native pixmap without
331         a server roundtrip.  (#334954, David Baron) 
332
333         * gtk/gtk.symbols:
334         * gtk/gtkrecent*.c: Fix some symbol aliasing glitches.
335
336 2006-03-29  Emmanuele Bassi  <ebassi@cvs.gnome.org>
337
338         * gtk/gtkrecentchoosermenu.c: Make gtkalias.h the last included file.
339
340 2006-03-29  Emmanuele Bassi  <ebassi@cvs.gnome.org>
341
342         * gtk/gtk.symbols: Fix a typo that broke aliasing rules.
343
344 2006-03-29  Richard Hult  <richard@imendio.com>
345
346         * gdk/quartz/gdkproperty-quartz.c: Add missing CLIPBOARD atom.
347
348 2006-03-29  Emmanuele Bassi  <ebassi@cvs.gnome.org>
349
350         * docs/reference/gtk/migrating-GtkRecentChooser.sgml: Add a migration
351         guide for porting to the new GtkRecent stuff from the old EggRecent
352         code.
353
354         * docs/reference/gtk/tmpl/gtkrecentchooser.sgml:
355         * docs/reference/gtk/tmpl/gtkrecentchooserdialog.sgml:
356         * docs/reference/gtk/tmpl/gtkrecentchoosermenu.sgml:
357         * docs/reference/gtk/tmpl/gtkrecentchooserwidget.sgml:
358         * docs/reference/gtk/tmpl/gtkrecentfilter.sgml:
359         * docs/reference/gtk/tmpl/gtkrecentmanager.sgml: Add template files
360         for the reference guide.
361
362         * docs/reference/gtk/gtk-docs.sgml:
363         * docs/reference/gtk/gtk-sections.txt:
364         * docs/reference/gtk/Makefile.am: Build glue for add GtkRecent to
365         the reference guide.
366
367 2006-03-29  Emmanuele Bassi  <ebassi@cvs.gnome.org>
368
369         * tests/Makefile.am:
370         * tests/testrecentchooser.c: Add a test suite for GtkRecentChooser.
371
372 2006-03-29  Emmanuele Bassi  <ebassi@cvs.gnome.org>
373
374         Import GtkRecent* from libegg.
375
376         * gtk/gtkrecentmanager.[ch]: Add GtkRecentManager, an object
377         for managing a list of recently used resources.
378
379         * gtk/gtkrecentchooser.[ch]:
380         * gtk/gtkrecentchooserdefault.[ch]:
381         * gtk/gtkrecentchooserdialog.[ch]:
382         * gtk/gtkrecentchoosermenu.[ch]:
383         * gtk/gtkrecentchooserprivate.h:
384         * gtk/gtkrecentchooserutils.[ch]:
385         * gtk/gtkrecentchooserwidget.[ch]: Add GtkRecentChooser, a
386         GTypeInterface for widgets implementing viewers for recently
387         used resources.
388
389         * gtk/gtkrecentfilter.[ch]: GtkRecentFilter, a filter object
390         for GtkRecentChooser implementations.
391
392         * gtk/gtk.h:
393         * gtk/gtk.symbols:
394         * gtk/Makefile.am: Build glue for GtkRecent*.
395
396 2006-03-29  Matthias Clasen  <mclasen@redhat.com>
397
398         * gtk/gtknotebook.c (gtk_notebook_real_insert_page): Emit
399         page-added before switch-page.  (#335691, Christian Persch)
400
401 2006-03-29  Matthias Clasen  <mclasen@redhat.com>
402
403         * gtk/gtkfilechooserdefault.c (queue_edited_idle): Handle
404         double queuing, rather than asserting that it does not 
405         happen.  (#330617)
406
407 2006-03-28  Matthias Clasen  <mclasen@redhat.com>       
408
409         * gtk/gtknotebook.c (gtk_notebook_set_tab_detachable): Fix
410         docs syntax, also commit a patch from #335707 to improve
411         notebook DND with window widgets.
412
413         * gtk/gtktextview.c (gtk_text_view_start_selection_drag): 
414         (selection_motion_event_handler): Fix drag-selection after
415         double-click.  (#323862, Benjamin Berg)
416
417         * gtk/gtktextview.c (get_iter_at_pointer): Factor this out
418         into a function and use it in move_mark_to_pointer_and_scroll,
419         drag_scan_timeout and selection_motion_event_handler.
420         (Paolo Borelli)
421
422 2006-03-28  Matthias Clasen  <mclasen@redhat.com>
423
424         * gtk/gtktextview.c (gtk_text_view_do_popup) 
425         (gtk_text_view_grab_notify): Move the call to 
426         gtk_text_view_end_selection_drag() from gtk_text_view_do_popup
427         to gtk_text_view_grab_notify, so that it works not only
428         for the text views own popup, but also for other ways in which
429         we might become grab-shadowed during a selection drag.
430         (#74620, Li Yuan)
431
432 2006-03-28  Sven Herzberg  <herzi@gnome-de.org>
433
434         reviewed by: Tim Janik
435         
436         * gtk/gtkpixmap.c: (gtk_pixmap_set): only check for equal colormaps if
437         the new pixmap is not NULL; fixes a warning when gtk_pixmap_set is
438         called from gtk_pixmap_finalize (bug 336254)
439
440 2006-03-27  Anders Carlsson  <andersca@imendio.com>
441
442         * gdk/quartz/gdkevents-quartz.c:
443         (select_thread_func):
444         (got_fd_activity):
445         (poll_func):
446         (gdk_event_translate):
447         Make the poll func work with real file descriptors.
448         We do this by creating a thread which calls poll and then
449         signals the main thread using a run loop source.
450         
451         * gtk/gtkclipboard-quartz.c:        
452         (-[GtkClipboardOwner pasteboard:provideDataForType:]):
453         Remove debugging output
454
455 2006-03-27  Matthias Clasen  <mclasen@redhat.com>
456
457         * gtk/gtkmnemonichash.c (_gtk_mnemonic_hash_activate): Check that 
458         the widget is viewable.  (#336200, Bastian Nocera)
459
460 2006-03-27  Michael Natterer  <mitch@imendio.com>
461
462         * gtk/gtkmenu.c (gtk_menu_scroll_by): bail out if there is no need
463         for scrolling (more obvious than adding additional conditions to
464         the scroll offset calculation). Fixes bug #335912.
465
466 2006-03-27  Anders Carlsson  <andersca@imendio.com>
467
468         * gtk/Makefile.am:
469         Add -xobjective-c to cflags.
470         (#335956, Lllian Angel)
471         
472         * gtk/gtkdnd-quartz.c:
473         (gtk_drag_dest_set_track_motion):
474         (gtk_drag_dest_get_track_motion):
475         Add stubs for new functions.
476         (#335955, Lillian Angel)
477         
478 2006-03-27  Richard Hult  <richard@imendio.com>
479
480         * gdk/quartz: Add more stubs.
481
482 2006-03-27  Michael Natterer  <mitch@imendio.com>
483
484         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
485         add missing ')'.
486
487 2006-03-26  Matthias Clasen  <mclasen@redhat.com>
488
489         * gtk/Makefile.am: Fix a srcdir != builddir build problem.
490         (#335915, Yevgen Muntyan)
491
492         * gtk/gtktextbuffer.c (gtk_text_buffer_get_property):
493         * gtk/gtksettings.c (gtk_settings_get_property):
494         * gtk/gtkuimanager.c (gtk_ui_manager_get_property): Fix leaks.
495
496         * gtk/gtktexttag.c (gtk_text_tag_get_property):
497         * gtk/gtkcellrenderertext.c (gtk_cell_render_text_get_property):
498         Avoid an unnecessary strdup.  (#336013)
499
500 2006-03-24  Matthias Clasen  <mclasen@redhat.com>
501
502         * gtk/gtktextview.c (gtk_text_view_value_changed): Don't call
503         gdk_window_invalidate_rect() on unrealized widgets.  (#335717,
504         Nicolas Setton)
505
506 Fri Mar 24 14:53:20 2006  Tim Janik  <timj@imendio.com>
507
508         * gtk/gtktreemodel.h: 
509         * gtk/gtktextbtree.h: back out G_GNUC_WARN_UNUSED_RESULT on iterator
510         functions which turned out to cause too much trouble.
511
512 2006-03-23  Matthias Clasen  <mclasen@redhat.com>
513
514         * AUTHORS: small update
515
516 2006-03-23  Matthias Clasen  <mclasen@redhat.com>
517
518         Support subclasses in RC files.  (#142417, Todd Berman, patch
519         based on a patch by Benjamin Berg)
520         
521         * gtk/gtkrc.h: 
522         * gtk/gtkrc.c: Support <classname> elements in widget_class paths 
523         in rc files which match any classes derived from named class.
524
525         (_gtk_rc_init): Use the new syntax in the default rc string.
526
527         * gtk/gtkbindings.c: Support the new syntax for bindings too.
528         
529         * tests/testrc.c: Tests for widget_class path matching
530
531 2006-03-23  Carlos Garnacho  <carlosg@gnome.org>
532
533         * gtk/gtkdnd.c (gtk_drag_dest_motion): make sure that gdk_drag_event()
534         is called when track_motion is TRUE to receive drag_motion and
535         drag_leave events properly.
536
537 2006-03-22  Matthias Clasen  <mclasen@redhat.com>
538
539         * gtk/gtknotebook.c (gtk_notebook_remove): Emit the ::page-removed
540         signal after removing the page.  (#335238, Christian Persch)
541
542 2006-03-22  Carlos Garnacho  <carlosg@gnome.org>
543
544         * gtk/gtkexpander.c: Make it to expand when hovering during DnD
545
546 2006-03-22  Matthias Clasen  <mclasen@redhat.com>
547
548         Improved DND support for GtkNotebook  (#332991, Carlos Garnacho)
549         
550         * gtk/gtk.symbols: 
551         * gtk/gtkdnd.h: 
552         * gtk/gtkdnd.c: Add a track_motion flag on GtkDragDest
553         with getter and setter, for cases where the drag destination
554         is interested in drag motion events independent of targets.
555
556         * gtk/gtksettings.c (gtk_settings_class_init): Add a setting
557         for the timeout used when expanding during DND.
558
559         * gtk/gtknotebook.c: Use the track_motion flag to switch
560         notebook tabs when hovering over tabs during DND.
561         
562 2006-03-22  Matthias Clasen  <mclasen@redhat.com>
563
564         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Use fg_gc to
565         draw the inter-row drop highlight. Also draw the line all the 
566         way across, and flip it in RTL mode. (#334906, Ian McDonald)
567
568 2006-03-22  Johan Dahlin  <jdahlin@async.com.br>
569
570         * tests/testtreeview.c: Add a column that demonstrates how to use
571         the new spinbutton cellrenderer.
572
573 2006-03-22  Matthias Clasen  <mclasen@redhat.com>
574
575         * tests/prop-editor.c: 
576         * tests/testtreeview.c: Remove pointless includes of config.h,
577         to make it easier compilable against system GTK+.
578
579 2006-03-22  Michael Natterer  <mitch@imendio.com>
580
581         * gtk/gtkentry.c: renamed last-char-timeout to
582         password-hint-timeout and store all its data in a struct attached
583         as QData.
584
585         * gtk/gtkcellrendererspin.c: fix typo in #include.
586
587 2006-03-22  Carlos Garnacho  <carlosg@gnome.org>
588
589         * gtk/gtknotebook.c: send a GtkWidget** instead of a GtkNotebookPage*
590         when doing tabs DnD, this allows DnD interaction with other widgets,
591         added some docs for this too.
592         * tests/testnotebookdnd.c: add some code to test it.
593
594 2006-03-22  Matthias Clasen  <mclasen@redhat.com>
595
596         * gtk/gtk.symbols: 
597         * gtk/gtkcellrendererspin.h:
598         * gtk/gtkcellrendererspin.c: Add a cell renderer which 
599         uses a spinbutton to edit the value of a cell. (#156023,
600         Daniel Kasak, Lorenzo Gil Sanchez, Carlos Garnacho)
601
602         * gtk/gtk.h: 
603         * gtk/Makefile.am: Glue it in.
604
605 2006-03-21  Matthias Clasen  <mclasen@redhat.com>
606
607         * tests/testtreeview.c (drag_begin_cb): Test setting up
608         drag icons for tree dnd.
609
610 2006-03-22  Michael Natterer  <mitch@imendio.com>
611
612         * gtk/gtkentry.c: applied modified patch from maemo-gtk which
613         allows the most recently entered character in a hidden entry to be
614         shown for a configurable period of time. Fixes bug #334560.
615
616 2006-03-22  Michael Natterer  <mitch@imendio.com>
617
618         * gtk/gtktextbuffer.h (enum GtkTextBufferTargetInfo): count down
619         from G_MAXUINT to avoid clashes with application-added DND
620         targets.
621
622         * gtk/gtktextview.c (gtk_text_view_init): set an empty
623         GtkTargetList on the drag_dest so it is not NULL when a derived
624         class' init() function is called.
625
626         (gtk_text_view_target_list_notify): copy the text buffer's paste
627         targets into the view's destinstion target list (preserving
628         application-added DND targets), instead of replacing the view's
629         target list. Fixes bug #334399.
630
631 2006-03-21  Anders Carlsson  <andersca@imendio.com>
632
633         * gtk/Makefile.am:
634         Add new files.
635         
636         * gtk/gtkclipboard-quartz.c: Added.
637         * gtk/gtkdnd-quartz.c: Added.
638         * gtk/gtkquartz.c: Added.
639         * gtk/gtkquartz.h: Added.
640         Add dnd and clipboard implementations.
641
642 2006-03-21  Michael Natterer  <mitch@imendio.com>
643
644         * gdk/quartz/Makefile.am: removing trailing \ fixes the build.
645
646 2006-03-21  Anders Carlsson  <andersca@imendio.com>
647
648         * gdk/quartz/gdkgeometry-quartz.c:
649         (gdk_window_scroll):
650         Implement gdk_window_scroll.
651
652 2006-03-21  Anders Carlsson  <andersca@imendio.com>
653
654         * gdk/quartz/GdkQuartzWindow.c:
655         (drag_operation_to_drag_action):
656         (drag_action_to_drag_operation):
657         (update_context_from_dragging_info):
658         (-[GdkQuartzWindow draggingEntered:]):
659         (-[GdkQuartzWindow draggingEnded:]):
660         (-[GdkQuartzWindow draggingExited:]):
661         (-[GdkQuartzWindow draggingUpdated:]):
662         (-[GdkQuartzWindow performDragOperation:]):
663         (-[GdkQuartzWindow wantsPeriodicDraggingUpdates]):
664         (-[GdkQuartzWindow draggedImage:endedAt:operation:]):
665         * gdk/quartz/gdkdnd-quartz.c:
666         (gdk_drag_context_finalize):
667         (gdk_drag_context_init):
668         (gdk_drag_context_class_init):
669         (gdk_drag_begin):
670         (gdk_drag_status):
671         Add the GDK part of the DND implementation.
672
673         * gdk/quartz/Makefile.am:
674         Add some missing headers.
675         
676         * gdk/quartz/gdkdrawable-quartz.h:
677         * gdk/quartz/gdkprivate-quartz.h:
678         * gdk/quartz/gdkquartz.h:
679         * gdk/quartz/gdkwindow-quartz.c:
680         (gdk_quartz_window_get_nsview):
681         New function, for use by the GTK part of the DND implementation
682
683 2006-03-21  Anders Carlsson  <andersca@imendio.com>
684
685         * gdk/quartz/gdkdrawable-quartz.c:
686         (gdk_quartz_ref_cairo_surface):
687         (gdk_quartz_draw_rectangle):
688         (gdk_quartz_draw_arc):
689         (gdk_quartz_draw_polygon):
690         (gdk_quartz_draw_drawable):
691         (gdk_quartz_draw_segments):
692         (gdk_quartz_draw_lines):
693         (gdk_quartz_draw_pixbuf):
694         (gdk_quartz_draw_image):
695         (_gdk_quartz_drawable_get_context):
696         * gdk/quartz/gdkdrawable-quartz.h:
697         Offset coordinates by 0.5 pixels to get consistant results for both
698         image contexts and screen contexts.
699
700 2006-03-21  Anders Carlsson  <andersca@imendio.com>
701
702         * gdk/quartz/GdkQuartzWindow.c 
703         ([GdkQuartzWindow -windowDidMove:]): Synthesize GDK_CONFIGURE events
704         when the window position changes.
705
706 2006-03-20  Matthias Clasen  <mclasen@redhat.com>
707
708         * gtk/gtkdnd.c (gtk_drag_get_cursor): Remove an unused variable.
709
710         * gtk/gtknotebook.c (gtk_notebook_remove_tab_label): Don't leave
711         page->tab_label dangling.
712         (gtk_notebook_real_remove): Use GTK_IN_DESTRUCTION to determine
713         if we are being called during destruction of the notebook, rather
714         than maintaining that information as a passed-in parameter.
715         (gtk_notebook_destroy): Leave the removal of the children
716         to the container destroy method.  (#319032, Yevgen Muntyan)
717
718 2006-03-20  Matthias Clasen  <mclasen@redhat.com>
719
720         * gtk/gtkcombobox.c (gtk_combo_box_remove): Use the existing
721         GTK_IN_DESTRUCTION flag, rather than roll our own.
722
723 2006-03-20  Matthias Clasen  <mclasen@redhat.com>
724         
725         * gtk/gtk.symbols: 
726         * gtk/gtkscrolledwindow.h: 
727         * gtk/gtkscrolledwindow.c: Add a window-placement-set property
728         and a gtk-scrolled-window-placement setting.  (#157025, Christian
729         Neumair)
730
731 2006-03-20  Matthias Clasen  <mclasen@redhat.com>
732
733         * gtk/gtkmain.c (gtk_get_option_group): Make sure gettext
734         is initialized before using it.  (#335129, Christian Persch)
735
736 2006-03-19  Matthias Clasen  <mclasen@redhat.com>
737
738         * MAINTAINERS: Add this, at the request of the GNOME sysadmin team.
739
740         * AUTHORS: Updates, typo fix
741
742         * gtk/gtkiconview.c (gtk_icon_view_set_cursor): Document that
743         @cell must be one of the renderers of the icon view, warn if 
744         it is not, and ignore @start_editing if @cell is not set.
745         (#335001, Emmanuel Rodriguez)
746
747 2006-03-16  Matthias Clasen  <mclasen@redhat.com>
748
749         * configure.in: Add a missing comma.  (#334774, Peter Breitenlohner)
750
751         * gtk/gtkactiongroup.c (gtk_action_group_add_actions_full) 
752         (gtk_action_group_add_toggle_actions_full) 
753         (gtk_action_group_add_radio_actions_full): Check for a stock 
754         icon, not a stock item, when deciding whether to use stock-id 
755         or icon-name.  (#334760, Jody Goldberg)
756
757         * gtk/gtkimage.c (gtk_image_clear): Update the size of the image, 
758         by swapping the implementations of gtk_image_clear and
759         gtk_image_reset.  (#334657)
760
761         * README.in: Add a note about GtkNotebook signals.
762
763 2006-03-15  Matthias Clasen  <mclasen@redhat.com>
764
765         * gtk/gtkcombobox.c (gtk_combo_box_list_button_released) 
766         (gtk_combo_box_list_key_press): Popdown the list before changing
767         the active iter, otherwise people will be surprised by the
768         grabs that are still in place when their ::changed handler
769         runs. 
770
771 2006-03-15  Dom Lachowicz <cinamod@hotmail.com>
772
773         * modules/engines/ms-windows/msw_style.c: Override style->realize/
774         style->unrealize, so that GTK+ doesn't automatically attempt to apply
775         shading to the GC colors, causing a mismatch with the Win32 native
776         colors. Problem found by (and suggested solution by) "Cosmic Integer"
777
778         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Make expander-size
779         a bit closer to Microsoft's values (bug 325699, Brad Taylor)
780         
781 2006-03-14  Matthias Clasen  <mclasen@redhat.com>
782
783         * tests/testcellrenderertext.c: Add test cases for alignment.
784
785         * gtk/gtkcellrenderertext.c: Add an alignment property,
786         and fix some cases where ellipsize_set was being used to
787         mean "we're ellipsizing" even when ellipsize was set to NONE.  
788         (#318761, Ross Burton)
789
790         * gtk/gtkimcontextsimple.c: Make return and release work again
791         to commit a hex sequence. Additionally, make escape reset the
792         im context when in a hex sequence.  (#334423, Behdad Esfahbod)
793
794 2006-03-13  Matthias Clasen  <mclasen@redhat.com>
795
796         Make actions work with named icons.  (#323484, Jorn Baayen)
797         
798         * gtk/gtkactiongroup.c: If the stock-id field of a GtkActionEntry
799         does not contain a registered stock id, interpret it as an
800         icon name.
801
802         * gtk/gtkaction.c: Add an icon-name property to actions and
803         use it for icons if a stock-id is not specified.
804
805 2006-03-12  Matthias Clasen  <mclasen@redhat.com>
806
807         * gtk/gtkwindow.c (gtk_window_compute_configure_request): Don't
808         for the creation of geometry info here.  (#114533)
809
810 2006-03-11  Tor Lillqvist  <tml@novell.com>
811
812         * gdk/win32/gdkdrawable-win32.c (draw_polygon): Use Polygon() for
813         outlined polygons, too. Same idea as in draw_rectangle(): Set pen
814         to NULL_PEN if drawing a filled polygon, set brush to HOLLOW_BRUSH
815         if drawing a polygon outline. (#332662)
816         (gdk_win32_draw_polygon): Corresponding simplification: no need to
817         add an extra final copy of the starting point.
818
819 2006-03-11  Dom Lachowicz <cinamod@hotmail.com>
820
821         * modules/engines/ms-windows: Speed up the Windows theme
822         considerably (#163724, John Ehresman)
823         Be more careful about setting Pango font descriptions (#333372)
824         
825 2006-03-11  Matthias Clasen  <mclasen@redhat.com>
826
827         * gtk/gtkrange.c (gtk_range_key_press): Allow to cancel 
828         a drag with ESC.  (#58389, Søren Sandmann)
829
830 2006-03-10  Matthias Clasen  <mclasen@redhat.com>
831
832         * gtk/gtkrange.c: Add a style property ::activate_slider that
833         allows themes to draw the slider active while dragged.  (#311992,
834         Benjamin Berg)
835
836         * gtk/gtkcolorsel.c (gtk_color_selection_init): Fix two labels.
837
838         * gtk-engine-check-abi.sh: Add a script to check that theme
839         engines don't export any extra functions. 
840
841 2006-03-10  Matthias Clasen  <mclasen@redhat.com>
842
843         * gtk/gtkcolorsel.c (gtk_color_selection_init): Avoid a mnemonic
844         conflict.  (#163850, Dennis Cranston)
845
846         * gtk/gtkaboutdialog.c (gtk_show_about_dialog): Make the behaviour
847         of the about dialog consistent with other dialogs in gtk. If the
848         dialog is constructed with gtk_about_dialog_new(), the creator
849         is reponsible for handling the response by hiding or closing the
850         dialog. gtk_show_about_dialog() handles it by hiding the dialog.
851         (#333360, Daniel Drake)
852
853         * README.in: Mention this change.
854
855 2006-03-10  Matthias Clasen  <mclasen@redhat.com>
856
857         Apply a patch from Dennis Cranston to make dialogs more
858         consistent  (#163850)
859         
860         * gtk/gtkcolorsel.c (make_label_spinbutton): Left-align labels.
861         
862         * gtk/gtkfontsel.c (gtk_font_selection_init): 
863         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): 
864         * gtk/gtkcolorsel.c (gtk_color_selection_init): 
865         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
866         * gtk/gtkinputdialog.c (gtk_input_dialog_init): Update the layout
867         of the dialog to follow HIG recommendations. Also update labels.
868
869         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): HIG-compatible 
870         spacing.
871         (gtk_message_dialog_font_size_change): Merged into 
872          gtk_message_dialog_style_set.
873
874 2006-03-10  Matthias Clasen  <mclasen@redhat.com>
875
876         * gtk/gtkstyle.c: Remove g_return_if_fail() checks
877         from static functions.
878
879 2006-03-10  Federico Mena Quintero  <federico@novell.com>
880
881         Make Shift-P and Shift-N activate typeahead in GtkTreeView
882         (i.e. they are just normal capital letters).  Fixes bug #334098.
883
884         * gtk/gtktreeview.c (gtk_tree_view_add_move_binding): Add an
885         "add_shifted_binding" argument which determines whether we'll add
886         the same binding with GDK_SHIFT_MASK.
887         (gtk_tree_view_class_init): Use add_shifted_binding=FALSE for GDK_p
888         and GDK_n; use TRUE for all the rest.
889
890 2006-03-10  Michael Natterer  <mitch@imendio.com>
891
892         * gtk/gtkentry.[ch]: applied refactored patch from maemo-gtk that
893         replaces the INNER_BORDER define by an "inner-border" style
894         property of type GtkBorder. Additionally, add an "inner-border"
895         object property plus API which allows to override any theme
896         border, to allow pixel-perfect positioning of entries for inline
897         editing. Fixes bug #333922.
898
899         * gtk/gtk.symbols: add the new public functions.
900
901 2006-03-09  Matthias Clasen  <mclasen@redhat.com>
902
903         * gtk/gtkcombobox.c (gtk_combo_box_class_init): Replace the
904         popup-show and popup-hide signals with a readonly popup-shown
905         property.  (#162531, Christian Persch)
906
907 2006-03-09  Ross Burton  <ross@openedhand.com>
908
909         * gtk/gtkwidget.c:
910         * gtk/gtkrange.c:
911         * gtk/gtktogglebutton.c:
912         Turn off prelighting when gtk-touchscreen-mode is enabled (#135666)
913
914 Thu Mar  9 14:29:43 2006  Tim Janik  <timj@gtk.org>
915
916         * gtk/gtkobject.c (gtk_object_init): move the floating flag from
917         the GInitiallyUnowned bit to GTK_FLOATING. fixes tests/floatingcheck.
918         kudos to mitch for debugging this.
919
920 2006-03-09  Matthias Clasen <mclasen@redhat.com>
921
922         * Makefile.am: Add ChangeLog.pre-2.8 to EXTRA_DIST.
923
924 2006-03-09  Tor Lillqvist  <tml@novell.com>
925
926         * gtk/gtk.symbols: No gtk_tray_icon_get_type on Win32.
927
928 2006-03-08  Carlos Garnacho  <carlosg@gnome.org>
929
930         Rename ::tab-added and ::tab-removed signals to ::page-added and
931         ::page-removed for not conflicting with other tab reordering
932         implementations. Fixes bug #333743.
933
934         Also rename ::tab-reordered to ::page-reordered, and emit it in
935         gtk_notebook_reorder_child () to make it behave consistently with the
936         other two signals.
937
938         * gtk/gtknotebook.c (gtk_notebook_class_init): rename signals.
939         (gtk_notebook_reorder_tab)
940         (gtk_notebook_button_release)
941         (gtk_notebook_remove)
942         (gtk_notebook_real_insert_page): emit respectively renamed signals
943         (gtk_notebook_reorder_child): also emit ::page-reordered here
944
945         * tests/testnotebookdnd.c: use renamed signals
946
947 2006-03-08  Michael Natterer  <mitch@imendio.com>
948
949         * gdk/gdkscreen.h
950         * gdk/x11/gdkscreen-x11.c
951         * gdk/gdk.symbols: added gdk_screen_get_active_window() and
952         gdk_screen_get_window_stack() (patch from maemo-gtk).
953         Fixes bug #320881.
954
955         * gdk/directfb/gdkscreen-directfb.c
956         * gdk/quartz/gdkscreen-quartz.c
957         * gdk/win32/gdkscreen-win32.c: added the functions as stubs.
958
959 2006-03-08  Michael Natterer  <mitch@imendio.com>
960
961         * tests/prop-editor.c (unichar_changed): zero-initialize the
962         GValue before calling g_value_init().
963
964 2006-03-08  Michael Natterer  <mitch@imendio.com>
965
966         * gtk/gtkentry.c (gtk_entry_adjust_scroll): make sure that the
967         text_area_width is always >= 0. Fixes bug #316712 (Dan Winship).
968
969 2006-03-07  Federico Mena Quintero  <federico@novell.com>
970
971         Cancel drags when the grabs get broken.  Fixes bug #333056:
972
973         * gtk/gtkdnd.c (gtk_drag_selection_received): The time argument is
974         a guint, not guint32.
975         (gtk_drag_source_event_cb): Return gboolean, not gint.
976         (gtk_drag_anim_timeout): Likewise.
977         (gtk_drag_motion_cb): Likewise.
978         (gtk_drag_key_cb): Likewise.
979         (gtk_drag_button_release_cb): Likewise.
980         (gtk_drag_abort_timeout): Likewise.
981         (gtk_drag_begin_internal): Connect to "grab-broken-event" on the
982         ipc_widget.
983         (gtk_drag_source_info_destroy): Disconnect from the
984         "grab-broken-event" callback.
985         (gtk_drag_end): Likewise.
986         (gtk_drag_grab_broken_event_cb): New callback.  We cancel the drag
987         if the grab was broken and not regrabbed by the DnD code.
988
989 2006-03-07  Federico Mena Quintero  <federico@novell.com>
990
991         * gtk/gtkfilechooserdefault.c (shortcuts_button_press_event_cb):
992         Hack to let the treeview's button-press-event handler run before
993         ours.  This lets the selection be updated before we pop up a
994         context menu.
995
996 Tue Mar  7 17:16:34 2006  Tim Janik  <timj@gtk.org>
997
998         * configure.in: depend on glib-2.10.1.
999
1000         * gtk/gtkobject.c: fixed up messing with non-GtkObject floating flags.
1001         this requires glib-2.10.1.
1002
1003 2006-03-07  Michael Natterer  <mitch@imendio.com>
1004
1005         Add infrastructure for copy/paste and DND of rich text for
1006         GtkTextBuffer. Fixes bug #324177.
1007
1008         * gtk/gtktextbufferrichtext.[ch]: new files implementing a
1009         per-buffer registry of rich text formats.
1010
1011         * gtk/gtk.h: #include gtktextbufferrichtext.h
1012
1013         * gtk/gtktextbufferserialize.[ch]: new files implementing an
1014         internal serialization format that can handle all of a text
1015         buffer's tags and pixbufs. It's not useful for anything except
1016         tranfer between instances of GtkTextBuffer (Anders Carlsson).
1017
1018         * gtk/Makefile.am: build the new files.
1019
1020         * gtk/gtkclipboard.[ch]: added convenience APIs for rich text,
1021         just as they exist for plain text and pixbufs.
1022
1023         * gtk/gtkselection.[ch]: added rich text convenience APIs here
1024         too.  Return the target list from gtk_target_list_ref(). Register
1025         GtkTargetList as boxed type. Added
1026         gtk_target_table_new_from_list() and gtk_target_table_free(),
1027         which make converting between GtkTargetList and arrays of
1028         GtkTargetEntry considerably easier.
1029
1030         * gtk/gtktextutil.[ch]: added _gtk_text_util_create_rich_drag_icon()
1031         which creates a fancy rich text icon (Matthias Clasen).
1032
1033         * gtk/gtktextbuffer.[ch]: use all the new stuff above and
1034         implement copy and paste of rich text. Added APIs for getting the
1035         target lists used for copy and paste. Added public enum
1036         GtkTextBufferTargetInfo which contains the "info" IDs associated
1037         with the entries of the target lists.
1038
1039         * gtk/gtktextview.c: use the new rich text APIs and
1040         GtkTextBuffer's new target list API to enable DND of rich text
1041         chunks.
1042
1043         * gtk/gtk.symbols: export all the new symbols added.
1044
1045         * tests/testtext.c: added rich text testing stuff.
1046
1047 2006-03-06  Matthias Clasen  <mclasen@redhat.com>
1048
1049         * gtk/gtktextview.c (text_window_invalidate_cursors): Take
1050         cursor width into account when calculating the area to 
1051         be invalidated.  (#333377, #323401 Steve Frécinaux)
1052
1053         * gtk/gtkmain.c (post_parse_hook): Set error when returning
1054         FALSE.  (#333268, Paolo Maggi, Christian Persch)
1055         
1056         * gtk/gtkpixmap.c (gtk_pixmap_set): Check that the pixmap
1057         has the right depth.  (#333363, Ed Catmur)
1058
1059 2006-03-05  Matthias Clasen  <mclasen@redhat.com>
1060
1061         * gtk/gtkiconview.c (adjust_wrap_width): Apply some
1062         arbitrary lower limit for the guessed wrap width. (#332466,
1063         Donald Straney)
1064
1065 2006-03-05  Matthias Clasen  <mclasen@redhat.com>
1066
1067         Fix handling of image-only buttons.  (#332985, Kalle 
1068         Vahlmann, #333555)
1069         
1070         * gtk/gtkbutton.c (gtk_button_construct_child): Don't
1071         return early if there an image to show.
1072         (show_image): Always return TRUE if there is no text.
1073
1074 2006-03-04  Matthias Clasen  <mclasen@redhat.com>
1075
1076         * gdk/x11/gdkinput-x11 (gdk_input_translate_coordinates):
1077         Adjust the handling of min values for the x and y axes of 
1078         extended input devices  (#324562, #142536, Denis Auroux and 
1079         Robert Ã–gren)
1080
1081         * gtk/gtkexpander.c (gtk_expander_paint_focus): Position
1082         the focus rectangle correctly in RTL mode.  (#333291,
1083         Benjamin Berg)
1084
1085 2006-03-03  Tor Lillqvist  <tml@novell.com>
1086
1087         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_commit_char)
1088         (gtk_im_context_simple_reset): Avoid emitting superfluous
1089         preedit_changed signals. Thanks to Matthias. (#319407)
1090
1091 2006-03-03  Michael Natterer  <mitch@imendio.com>
1092
1093         Applied modified patch from maemo-gtk which makes separators more
1094         themeable. Fixes bug #332022.
1095
1096         * gtk/gtkwidget.c: added style properties "wide-separators",
1097         "separator-width" and "separator-height".
1098
1099         * gtk/gtkhseparator.c
1100         * gtk/gtkvseparator.c
1101         * gtk/gtkmenuitem.c
1102         * gtk/gtktoolbar.c: honor the new settings and paint separators
1103         using gtk_paint_box() if wide-separators is true.
1104
1105 2006-03-02  Dom Lachowicz <cinamod@hotmail.com>
1106
1107         * modules/engines/ms-windows/msw_style.c: Fix combobox theming
1108         regression noted in bug 321301
1109         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Ditto
1110         
1111 2006-03-02  Matthias Clasen  <mclasen@redhat.com>
1112
1113         * gtk/gtkiconview.c (gtk_icon_view_layout) 
1114         (gtk_icon_view_row_inserted, gtk_icon_view_scroll_to_path): 
1115         Make scroll_to_path work for newly inserted items, by delaying
1116         the scroll until layout is done.  (#332923, Cory Dodt)
1117
1118         * gtk/gtkcolorbutton.c (render): Use GTK_WIDGET_IS_SENSITIVE,
1119         not GTK_WIDGET_SENSITIVE.  (#333133, Christian Persch)
1120
1121 2006-03-02  Ross Burton  <ross@openedhand.com>
1122
1123         * gtk/gtktooltips.c:
1124         Disable tooltips if gtk-touchscreen-mode is activated (#315112).
1125
1126 2006-03-01  Kristian Rietveld  <kris@imendio.com>
1127
1128         * gtk/gtktreeselection.c (row_is_selectable): rename to
1129         _gtk_tree_selection_row_is_selectable and export internally,
1130         (gtk_tree_selection_real_select_node): changed so it is always
1131         possible to unselect insensitive nodes, changed the logic a bit to
1132         be more clear.
1133
1134         * gtk/gtktreeprivate.h: add _gtk_tree_selection_row_is_selectable.
1135
1136         * gtk/gtktreeview.c (gtk_tree_view_row_changed): Unselect a row if
1137         it became insensitive.
1138
1139 2006-02-27  Federico Mena Quintero  <federico@novell.com>
1140
1141         * gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Check that
1142         the fontsel has a screen assigned before doing anything.  This
1143         will at least warn the caller of what is wrong, since we only
1144         populate the family_list until we get a screen.  Also, put the
1145         reference docs here.  Fixes bug #332756.
1146         (gtk_font_selection_dialog_get_font_name): Document this here.
1147         (gtk_font_selection_get_font_name): Document this here; mention
1148         that the font names get normalized, so the result of this function
1149         may not be the same as what you set with
1150         gtk_font_selection_set_font_name().
1151
1152 2006-02-27  Matthias Clasen  <mclasen@redhat.com>
1153
1154         * gtk/gtk.symbols:
1155         * gtk/gtktrayicon-x11.c: Fix symbol lists for make check.
1156
1157 2006-02-27  Michael Natterer  <mitch@imendio.com>
1158
1159         * gdk/x11/gdksettings.c: map "gtk-touchscreen-mode" to the
1160         "Gtk/TouchscreenMode" XSettings property, remove trailing
1161         whitespace.
1162
1163         * gdk/x11/checksettings.c: #include <string.h> and sprinkled some
1164         newlines.
1165
1166 Mon Feb 27 14:52:50 2006  Tim Janik  <timj@imendio.com>
1167
1168         * gdkevents-x11.c:
1169         * gdksettings.c: moved and renamed the gdk_settings_names and 
1170         gdk_settings_map.
1171
1172         * gdk/x11/checksettings.c: test program for the gdk_settings_map array.
1173
1174         * gdk/x11/Makefile.am: run checksettings as part of make check.
1175
1176 2006-02-27  Matthias Clasen  <mclasen@redhat.com>
1177
1178         * gtk/gtkdnd.c (gtk_drag_get_cursor): Comment out some unused
1179         code, and fix the reference point of composited drag cursors.
1180         (#320132, Christian Neumair)
1181
1182 Sun Feb 26 10:24:10 PST 2006  Michael Emmel  <mike.emmel@gmail.com>
1183         
1184         *gdk/directfb/README
1185         Updated README to remove old build instructions
1186
1187 Sat Feb 25 10:35:23 PST 2006  Michael Emmel  <mike.emmel@gmail.com>
1188         
1189         *gdk/directfb/gdkdisplay-directfb.c
1190         *gdk/directfb/gdkwindow-directfb.c
1191         Added stubs for shape window functions to fix compile problems
1192
1193 2006-02-24  Federico Mena Quintero  <federico@novell.com>
1194
1195         * gtk/gtkfilechooserdefault.c (shortcuts_list_create): Make the
1196         column header visible, and make it be "_Places".  Changed the
1197         accessible object name to Places as well.  Fixes bug #331306.
1198         (file_pane_create): Do not create the path bar and "create folder"
1199         button here...
1200         (browse_widgets_create): ... but create them here instead.  This
1201         moves the path bar to be above both the hpaned, giving it the full
1202         width of the dialog.  Fixes bug #327733.
1203
1204 Thu Feb 23 13:28:21 2006  Tim Janik  <timj@imendio.com>
1205
1206         * gdk/x11/gdkim-x11.c (_gdk_x11_initialize_locale): remove unconditional
1207         warnings about missing X locale support. Gdk properly handles this
1208         situation anyway.
1209
1210 Fri Feb 17 14:20:29 2006  Tim Janik  <timj@imendio.com>
1211
1212         * gtk/gtktreemodel.h: 
1213         * gtk/gtktextbtree.h: added G_GNUC_WARN_UNUSED_RESULT warnings for
1214         iterator functions, to avoid invalid iterators go unnoticed,
1215         suggested by Markku Vire <markku.vire@movial.fi>.
1216
1217 2006-02-23  Matthias Clasen  <mclasen@redhat.com>
1218
1219         * tests/Makefile.am: 
1220         * tests/testnotebookdnd.c: Add notebook DND tests.
1221
1222         * gtk/gtknotebook.h: Add a reorder_tab keynav signal and an
1223         insert_page vfunc to GtkNotebook.
1224
1225         * gtk/gtk.symbols:
1226         * gtk/gtknotebook.c: Support notebook DND. New API includes
1227         gtk_notebook_set_window_creation_hook, 
1228         gtk_notebook_[gs]et_group_id,
1229         gtk_notebook_[gs]et_tab_reorderable, 
1230         gtk_notebook_[gs]et_tab_detachable (#73240, Carlos Garnacho)
1231
1232 2006-02-23  Matthias Clasen  <mclasen@redhat.com>
1233
1234         * gtk/gtktextiter.c: Fix macro declaration
1235
1236         * gtk/gtkaboutdialog.c: Remove an accidentally included function.
1237
1238 2006-02-22  Matthias Clasen  <mclasen@redhat.com>
1239
1240         * gtk/gtktextbtree.c: 
1241         * gtk/gtktextiter.c: Minor optimizations.  (#332059, Arnaud Charlet)
1242
1243         * gtk/gtkradiobutton.c (gtk_radio_button_clicked): Emit notify::active
1244         here, when changing the value of this property.  (#331651)
1245
1246         * gtk/gtknotebook.c: Apply a patch by Paolo Borelli to
1247         make the tab menu keynavigatable.  (#331440)
1248
1249 2006-02-22  Matthias Clasen  <mclasen@redhat.com>
1250
1251         * gtk/gtkaboutdialog.c: Change Close buttons to GTK_RESPONSE_CANCEL
1252         so Escape works. (#331940, Daniel Drake)
1253
1254 2006-02-22  Michael Natterer  <mitch@imendio.com>
1255
1256         * gtk/gtksettings.c: added boolean property gtk-touchscreen-mode,
1257         which essentially means "there are no motion notify events", so
1258         widgets can't use the pointer hovering them for anything.
1259
1260         * gtk/gtkmenu.c: if gtk-touchscreen-mode is TRUE, scroll menus
1261         when clicking the scroll arrows, since hovering goes undetected.
1262         Fixes bug #323028.
1263
1264         Added boolean style property "double-arrows" which always makes
1265         both scroll arrows visible when the menu is too long.
1266         For pushed-in popup menus, both arrows are always shown
1267         (regardless of double-arrows), in order to fix user confusion
1268         about the blank area. Fixes bug #129463.
1269
1270 2006-02-21  Kristian Rietveld  <kris@imendio.com>
1271
1272         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_rows_reordered):
1273         Make sure we always update the virtual root, also when ->priv->root
1274         is still NULL.  (Markku Vire)
1275
1276 2006-02-21  Anders Carlsson  <andersca@imendio.com>
1277
1278         * gdk/quartz/gdkselection-quartz.c:
1279         (make_list):
1280         (gdk_text_property_to_utf8_list_for_display):
1281         Add these from the win32 backend.
1282
1283 2006-02-20  Matthias Clasen  <mclasen@redhat.com>
1284
1285         * gtk/gtknotebook.c: Properly update internal state
1286         when child visibility changes.  (#331785, Sebastien Bacher)
1287
1288         * gdk/gdkgc.c (_gdk_gc_update_context): Obtain the
1289         background color from the gc when it is needed.  (#331820)
1290
1291 2006-02-19  Matthias Clasen  <mclasen@redhat.com>
1292
1293         * gdk/gdkgc.c (_gdk_gc_update_context): Add a gc_changed
1294         argument, and avoid setting the clip region if the gc
1295         has not changed. 
1296
1297         * gdk/gdkgc.c: Update all callers.
1298
1299         * gdk/gdkpango.c (get_cairo_context): Avoid updating the
1300         context if nothing changed.
1301
1302 2006-02-20  Anders Carlsson  <andersca@imendio.com>
1303
1304         * gdk/quartz/gdkdisplay-quartz.c:
1305         (gdk_display_supports_shapes):
1306         (gdk_display_supports_input_shapes):
1307         * gdk/quartz/gdkwindow-quartz.c:
1308         (gdk_display_warp_pointer):
1309         (gdk_window_input_shape_combine_mask):
1310         (gdk_window_input_shape_combine_region):
1311         (gdk_window_set_child_input_shapes):
1312         (gdk_window_set_accept_focus):
1313         (gdk_window_merge_child_input_shapes):
1314         Add stubs for input shape functions.
1315
1316 2006-02-20  Anders Carlsson  <andersca@imendio.com>
1317
1318         * gdk/quartz/gdkevents-quartz.c:
1319         (get_keyboard_modifiers_from_nsevent):
1320         Fix typo so ctrl gets passed on to the gdk event.
1321         
1322         * gdk/quartz/gdkproperty-quartz.c:
1323         (gdk_atom_name):
1324         g_strdup the atom name.
1325
1326 2006-02-20  Tor Lillqvist  <tml@novell.com>
1327
1328         * gdk/win32/gdkdisplay-win32.c (gdk_display_supports_shapes):
1329         New function, return TRUE.
1330         (gdk_display_supports_input_shapes): New function, return FALSE.
1331
1332         * gdk/win32/gdkwindow-win32.c (do_shape_combine_region): New
1333         function. Factor out code from gdk_window_shape_combine_mask().
1334         (gdk_window_shape_combine_region): Actually do something. Convert
1335         region to a HRGN and call do_shape_combine_region().
1336         (gdk_window_input_shape_combine_mask)
1337         (gdk_window_input_shape_combine_region)
1338         (gdk_window_set_child_input_shapes)
1339         (gdk_window_merge_child_input_shapes): New functions, dummy
1340         implementations.
1341
1342 2006-02-20  Michael Natterer  <mitch@imendio.com>
1343
1344         * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): adding boolean
1345         have_shapes and have_input_shapes members fixes the build.
1346
1347 2006-02-20  Tor Lillqvist  <tml@novell.com>
1348
1349         * gdk/win32/gdkfont-win32.c: Replace all calls to g_strcasecmp()
1350         with g_ascii_strcasecmp().
1351
1352 2006-02-19  Matthias Clasen  <mclasen@redhat.com>
1353
1354         Support input shapes:  (#331070)
1355         
1356         * gdk/gdk.symbols: 
1357         * gdk/gdkdisplay.h: 
1358         * gdk/gdkwindow.h: 
1359         * gdk/x11/gdkdisplay-x11.c (gdk_display_supports_shapes) 
1360         (gdk_display_supports_input_shapes): Functions to determine
1361         if a display supports shaped windows or input shapes.
1362
1363         * gdk/x11/gdkwindow-x11.c (gdk_window_input_shape_combine_region): 
1364         (gdk_window_input_shape_combine_mask): 
1365         (gdk_window_set_child_input_shapes): 
1366         (gdk_window_merge_child_input_shapes): Input shape versions
1367         of the window shape API.
1368
1369         * gtk/gtk.symbols: 
1370         * gtk/gtkwidget.h: 
1371         * gtk/gtkwidget.c (gtk_widget_input_shape_combine_mask): 
1372         New function to set an input shape on a widget.
1373
1374 2006-02-19  Matthias Clasen  <mclasen@redhat.com>
1375
1376         * gtk/gtklinkbutton.c (gtk_link_button_class_init): Fix
1377         a cast.
1378
1379 2006-02-17  Matthias Clasen  <mclasen@redhat.com>
1380
1381         DND keynav support:
1382         
1383         * gtk/gtkdnd.c (gtk_drag_update_idle): Protect against 
1384         info->last_event being NULL.
1385         (gtk_drag_key_cb): Handle arrow keys to move the drag icon
1386         and space or enter to drop.
1387
1388 2006-02-17  Matthias Clasen  <mclasen@redhat.com>
1389
1390         * gdk/gdkregion-generic.c (gdk_region_union_with_rect):
1391         Be robust and reject rectangles with negative width or
1392         height.  (#331467, Benjamin Berg)
1393
1394
1395 2006-02-17  Kristian Rietveld  <kris@imendio.com>
1396
1397         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_rows_reordered):
1398         Only update the virtual root if the child path is an ancestor
1399         of the virtual root.  (Patch from Markku Vire).
1400
1401 2006-02-16  Federico Mena Quintero  <federico@novell.com>
1402
1403         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_map): Call
1404         ::initial_focus() on the child before calling ::map() on our
1405         parent class.  This will prevent the shortcuts treeview from
1406         highlighting its first row as a result of getting assigned focus
1407         by gtk_dialog_map().
1408
1409 2006-02-14  Matthias Clasen  <mclasen@redhat.com>
1410
1411         * gtk/gtkwidget.c (gtk_widget_send_expose): Remove redundant
1412         check.  Pointed out by Bodo-Merle Sandor.
1413
1414         * gtk/gtkcolorbutton.c (gtk_color_button_[un]realize):
1415         Remove unnecessary checks.  
1416
1417 2006-02-12  Matthias Clasen  <mclasen@redhat.com>
1418
1419         * gtk/gtkicontheme.c (gtk_icon_theme_list_icons): Give working
1420         examples in the docs.  (#330944, John Spray)
1421
1422 2006-02-10  Matthias Clasen  <mclasen@redhat.com>
1423         
1424         * gtk/gtkiconview.c (gtk_icon_view_get_item_at_coords): Fix
1425         row_spacing/column_spacing confusion.  (#330732, Donald Straney)
1426
1427 2006-02-10  Matthias Clasen  <mclasen@redhat.com>
1428
1429         * gtk/gtkstyle.c: Add some docs. (#330073, Mart Raudsepp)
1430
1431         * gtk/gtkentrycompletion.c (gtk_entry_completion_match_selected): 
1432         Guard against NULL.  (#330177, Raphael Slinckx)
1433
1434 2006-02-10  Murray Cumming  <murrayc@murrayc.com>
1435
1436         * docs/reference/gtk/tmpl/gtkcomboboxentry.sgml: Mention that 
1437         the changed signal is emitted when typing - not just when 
1438         selecting from the list. Suggest use of GtkEntry::action to 
1439         etect end of typing.
1440          gtk/gtkcombobox.c: (gtk_combo_box_class_init): changed signal 
1441         ocumentation: Mention that the GtkComboBoxEntry emits it when 
1442         he users types, not just when he selects from the list.
1443
1444 2006-02-10  Murray Cumming  <murrayc@murrayc.com
1445
1446         * gtk/gtkassistant.h: Correct the declaration of the prepare 
1447         default signal handler to match its registration and use.
1448
1449 2006-02-09  Ross Burton  <ross@burtonini.com>
1450
1451         * gtk/gtkfontbutton.c:
1452         Work out the font size in floating point, and display the font
1453         size with %g instead of %d (#317590)
1454
1455 2006-02-09  Tor Lillqvist  <tml@novell.com>
1456
1457         * gdk/win32/gdkevents-win32.c (gdk_event_translate)
1458         <WM_MOUSELEAVE>: If we don't know where we went, and have
1459         generated a leave event, set current_window to the root
1460         window. This assures we will generate proper enter and leave
1461         events for popup windows. (#325521)
1462
1463 2006-02-08  John Ehresman  <jpe@wingware.com>
1464
1465         * gdk/win32/gdkevents-win32.c (gdk_event_translate)
1466         <WM_MOUSEACTIVATE>
1467         * gdk/win32/gdkwindow-win32.c (show_window_internal)
1468         (gdk_window_raise): Call SetWindowPos() instead of
1469         SetForegroundWindow() or BringWindowToTop() if the window
1470         shouldn't accept focus. (#327375)
1471         
1472 2006-02-08  John Ehresman  <jpe@wingware.com>
1473
1474         * gdk/win32/gdkwindow-win32.c: Let gdk_window_set_decorations()
1475         take precedence over anything derived from hints. Restructure
1476         related code and logic, add some new helper functions. (#327217)
1477
1478 2006-02-08  Matthias Clasen  <mclasen@redhat.com>
1479
1480         * gtk/gtkfilechooserbutton.c: Don't put relevant callss
1481         in g_assert().  (#329876, Kristian Rietveld)
1482
1483 2006-02-08  Tor Lillqvist  <tml@novell.com>
1484
1485         * gdk/win32/gdkevents-win32.c (gdk_pointer_grab)
1486         (gdk_display_pointer_ungrab, gdk_keyboard_grab)
1487         (gdk_display_keyboard_ungrab): Consistenly use assign_object()
1488         when assigning GdkWindow pointers so that the ref counting doesn't
1489         get off whack.
1490
1491         (handle_stuff_while_moving_or_resizing): Don't use deprecated API.
1492
1493         (gdk_event_translate) <WM_MOUSEMOVE>: When the pointer is grabbed
1494         with owner_events FALSE, generate enter and leave events only for
1495         the grab window. (#321054)
1496
1497 2006-02-08  Kristian Rietveld  <kris@imendio.com>
1498
1499         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_ref_path),
1500         (gtk_tree_model_filter_unref_path): free temporary paths after
1501         usage (patch from maemo-gtk),
1502         (gtk_tree_model_filter_clear_cache): fix little typo in the docs
1503         (patch from maemo-gtk).
1504
1505         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_deleted): remove
1506         stale FIXME.
1507
1508 2006-02-08  Matthias Clasen  <mclasen@redhat.com>
1509
1510         * gtk/gtkfilesystem.c (gtk_file_info_copy): Copy the display_key
1511         as well.  (#330389, Markku Vire)
1512
1513 2006-02-08  Tor Lillqvist  <tml@novell.com>
1514
1515         * gtk-zip.sh.in: Drop the timestamp from the zipfile names.
1516
1517 2006-02-07  Sven Neumann  <sven@gimp.org>
1518
1519         * gdk/directfb/AUTHORS: updated mine and Dok's email address.
1520
1521 2006-02-06  Kristian Rietveld  <kris@gtk.org>
1522
1523         * gtk/gtktreeview.c (gtk_tree_view_get_search_entry): fix compiler
1524         warning.
1525
1526 2006-02-05  Dom Lachowicz <cinamod@hotmail.com>
1527
1528         * gdk/gdkcairo.c (gdk_cairo_set_source_pixbuf): Bug #330022
1529         Wrong pixel values are computed when color = 0xFF and alpha = 0xFF
1530         
1531 2006-02-04  Michael Emmel  <mike.emmel@gmail.com>
1532         Added new directfb backend located in gdk/directfb
1533         plus patches to compile new backend
1534         compile with --with-gdktarget=directfb
1535
1536 2006-02-03  Federico Mena Quintero  <federico@ximian.com>
1537
1538         Work around https://bugs.freedesktop.org/show_bug.cgi?id=4320,
1539         which used to be our own
1540         http://bugzilla.gnome.org/show_bug.cgi?id=314616.  If one uses a
1541         pixmap for a pattern in Cairo, and sets the pattern to
1542         CAIRO_EXTEND_REPEAT; and if the destination surface is also a
1543         pixmap, Cairo does a slow copy instead of using XCopyArea().  So,
1544         we use the same code that we used in GTK+ 2.6 (pre-cairo), by
1545         filling the double-buffer pixmap with a tiled GC and
1546         XFillRectangle().
1547
1548         * gdk/gdkwindow.c (BackingRectMethod): New structure with a
1549         cairo_t and a GdkGC field.  Depending on which of these fields
1550         gets filled in, we'll use Cairo or GDK to clear the double-buffer
1551         pixmap when painting a window.
1552         (setup_backing_rect_method): Fill a BackingRectMethod as
1553         appropriate, depending on the window's configuration and our
1554         knowledge of whether Cairo is fast or slow when doing repeating
1555         patterns.
1556         (gdk_window_clear_backing_rect): Call
1557         setup_backing_rect_method().  Depending on what it returns, use
1558         Cairo to clear the double-buffer pixmap, or plain GDK.
1559
1560 2006-02-03  Matthias Clasen  <mclasen@redhat.com>
1561
1562         * gtk/gtklabel.c (get_layout_location): Fix handling
1563         of padding in RTL.  (#329099, Hooman Mesgary) 
1564
1565 2006-02-02  Matthias Clasen  <mclasen@redhat.com>
1566
1567         * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display):
1568         Make drops on the root window work again.  (#145243, Andrew S. Dixon)
1569
1570 2006-02-01  Matthias Clasen  <mclasen@redhat.com>
1571
1572         * gtk/gtkwidget.c (gtk_widget_class_init): Wrap dnd signal
1573         docs to 80 columns.
1574
1575 2006-01-31  Matthias Clasen  <mclasen@redhat.com>
1576
1577         * autogen.sh: Touch README and INSTALL here to pacify 
1578         automake.  (#329124, Kjartan Maraas, Tim Janik)
1579
1580 2006-01-31  Matthias Clasen  <mclasen@redhat.com>
1581
1582         * gtk/gtk.symbols:
1583         * gtk/gtkassistant.h: 
1584         * gtk/gtkassistant.c: Actually implement visibility handling,
1585         and add gtk_assistant_update_buttons_state.
1586
1587         * tests/testassistant.c: Test visibility handling.
1588
1589 2006-01-31  Kristian Rietveld  <kris@imendio.com>
1590
1591         * gtk/gtkstyle.c (gtk_default_draw_flat_box): Add support for row
1592         hinting for the selected state.
1593
1594 2006-01-30  Matthias Clasen  <mclasen@redhat.com>
1595
1596         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
1597         Make sure the tree view is realized, since we grab the
1598         focus to it.  (#329144, Wouter Bolsterlee)
1599
1600         * gtk/gtkspinbutton.h: 
1601         * gtk/gtkspinbutton.c: Add a wrapped signal.  (#322933,
1602         Carlos Garnacho Parro)
1603
1604         * gtk/gtkassistant.c: More generous spacing. (#328082,
1605         Christian Persch, patch by Carlos Garnacho)
1606         
1607         * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_set_property): 
1608         Use the setter for active.  (#329208, Guillaume Cottenceau)
1609
1610         * docs/tools/widgets.c (get_all_widgets): Add GtkLinkButton
1611
1612         * gtk/gtkassistant.c (gtk_assistant_init): Move the
1613         last button to the left where it does not affect
1614         the positioning of forward/back.
1615
1616 2006-01-29  Matthias Clasen  <mclasen@redhat.com>
1617
1618         More GtkAssistant work, by Carlos Garnacho.
1619         
1620         * tests/testassistant.c: Additions.
1621
1622         * gtk/gtkassistant.c: Handle page visibility, other 
1623         small fixes.
1624
1625         * docs/tools/widgets.c: Add GtkAssistant.
1626
1627 2006-01-28  Behdad Esfahbod  <behdad@gnome.org>
1628
1629         * configure.in: If major.minor of required and available glib versions
1630         are the same, add -DG_DISABLE_DEPRECATED to GLIB_CFLAGS. (bug #328617)
1631
1632         * */Makefile.am: Remove hardcoded -DG_DISABLE_DEPRECATED.
1633
1634 2006-01-28  Dom Lachowicz <cinamod@hotmail.com>
1635
1636         * modules/engines/ms-windows/msw-style.c: Re-sync with gtk-wimp
1637         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Ditto
1638         
1639 2006-01-28  Matthias Clasen  <mclasen@redhat.com>
1640
1641         * gtk/gtk.symbols: 
1642         * gtk/gtklinkbutton.h: 
1643         * gtk/gtklinkbutton.c: Allow to set a global hook function
1644         thats called whenever a link button is clicked.
1645
1646         More work on GtkAssistant by Carlos Garnacho:
1647         
1648         * demos/gtk-demo/Makefile.am: 
1649         * demos/gtk-demo/assistant.c: Add a  GtkAssistant demo.
1650
1651         * gtk/gtkassistant.c: Handle focus, several small fixes to the
1652         flow computations.
1653
1654 2006-01-27  Federico Mena Quintero  <federico@ximian.com>
1655
1656         Fixes bug #328820:
1657
1658         * gtk/gtkfilechooserdefault.c
1659         (gtk_file_chooser_default_class_init): Make GDK_KP_Divide pop up
1660         the location dialog populated to "/".
1661         (tree_view_keybinding_cb): Likewise.
1662         (trap_activate_cb): Likewise.
1663
1664 2006-01-25  Behdad Esfahbod  <behdad@gnome.org>
1665
1666         * gtk/gtkcalendar.c (gtk_calendar_size_request): Use translated format
1667         strings for L10n in size calculation too.
1668
1669         * gtk/gtkcalendar.c (calendar_paint_week_numbers): Expand buffer to
1670         accomodate localized digits.
1671
1672 2006-01-26  Matthias Clasen  <mclasen@redhat.com>
1673
1674         * tests/prop-editor.c: Introspect child properties. too.
1675
1676 2006-01-25  Behdad Esfahbod  <behdad@gnome.org>
1677
1678         * gtk/gtkcalendar.c (calendar_paint_week_numbers, calendar_paint_day):
1679         Use contexed translated strings calendar:week:digits|%d and
1680         calendar:day:digits|%d to let translators choose localized digits for
1681         week and day numbers. (bug #317171, Hamed Malek)
1682
1683 2006-01-25  Behdad Esfahbod  <behdad@gnome.org>
1684
1685         * gtk/gtklabel.c (get_layout_location): Use logical extents of the
1686         layout instead of ink extents.  According to Pango docs, that's what
1687         should be used for placement.  Moreover, simply use
1688         pango_layout_get_pixel_size instead of getting the extents and
1689         dividing ourselves.
1690
1691 2006-01-25  Matthias Clasen  <mclasen@redhat.com>
1692
1693         * gtk/gtkentrycompletion.c: 
1694         * gtk/gtkentry.c: Be more careful when blocking signals. 
1695
1696         * gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): Only
1697         set the cursor size if it is != 0.
1698
1699         * gtk/gtksettings.c (gtk_settings_class_init): Change the default value
1700         of gtk-cursor-theme-size to 0, meaning "use default".
1701
1702 2006-01-24  Kristian Rietveld  <kris@gtk.org>
1703
1704         #322591, Jonathan Blandford.
1705
1706         * gtk/gtktreeview.[ch] (gtk_tree_view_get_search_entry),
1707         (gtk_tree_view_set_search_entry),
1708         (gtk_tree_view_get_search_position_func),
1709         (gtk_tree_view_set_search_position_func): New functions,
1710         and small adaptions to the tree view code to allow for setting
1711         the entry and search position function.
1712
1713         * gtk/gtktreeprivate.h: Removed GtkTreeViewSearchDialogPositionFunc
1714         typedef, which is now in gtktreeview.h as
1715         GtkTreeViewSearchPositionFunc.  Add/update fields.
1716
1717         * gtk/gtk.symbols: Add new functions.
1718
1719         * tests/testtreesort.c: Add a little test for _set_search_entry().
1720
1721 2006-01-23  Matthias Clasen  <mclasen@redhat.com>
1722
1723         Add GtkLinkButton, a port of GnomeHRef.  (#314808, Emmanuele Bassi)
1724         
1725         * gtk/gtklinkbutton.h: 
1726         * gtk/gtklinkbutton.c: New files.
1727
1728         * gtk/gtk.h:
1729         * gtk/gtk.symbols: 
1730         * gtk/Makefile.am: Glue.
1731
1732         * gtk/gtkaboutdialog.c: Use GtkLinkButton.
1733         
1734         * gtk/gtkwidget.c: Add link-color and visited-link-color style
1735         properties.  (#113649, Leena Gunda)
1736
1737         * gtk/gtkaboutdialog.c: Use the new style properties here instead
1738         of the about dialogs own link-color property. 
1739
1740 2006-01-23  Kristian Rietveld  <kris@gtk.org>
1741
1742         * gtk/gtktreemodel.c (gtk_tree_model_base_init): don't copy
1743         tree paths when emitting signals. (#325041, Matthias Clasen).
1744
1745 2006-01-23  Behdad Esfahbod  <behdad@gnome.org>
1746
1747         * gtk/gtklabel.c (get_layout_location): Fix misalignment of RTL
1748         text in ellipsized GtkLabel: use layout width if set, otherwise
1749         fallback to ink extents width. (#322042)
1750
1751 2006-01-23  Matthias Clasen  <mclasen@redhat.com>
1752
1753         * gtk/gtkassistant.c (compute_last_button_state): Only show the
1754         last button if we can jump to the end. 
1755         (gtk_assistant_init): Make the spacing and button order more
1756         HIG compliant.
1757
1758         Fix drawing issues in progress bars.  (#328081, Christian Persch)
1759         
1760         * gtk/gtkprogressbar.c (gtk_progress_bar_size_request): Always
1761         request enough space. 
1762         (gtk_progress_bar_paint_activity) 
1763         (gtk_progress_bar_paint_continuous) 
1764         (gtk_progress_bar_paint_discrete): Clip when drawing the bar.
1765
1766 2006-01-23  Michael Natterer  <mitch@imendio.com>
1767
1768         * gtk/gtkcolorbutton.c: move destruction of the private GdkGC
1769         from finalize() to unrealize(). Fixes BadMatch on display change
1770         (bug #85715).
1771
1772 2006-01-22  Kristian Rietveld  <kris@gtk.org>
1773
1774         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Revert previous
1775         commit after more searching in the bugzilla archives (see #309221).
1776
1777 2006-01-22  Kristian Rietveld  <kris@gtk.org>
1778
1779         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Remove second call
1780         to gtk_tree_view_column_cell_set_cell_data, since we also set the
1781         cell data before iterating over the columns for exposure. (Fixes
1782         #322471, Duncan Coutts).
1783
1784 2006-01-21  Matthias Clasen  <mclasen@redhat.com>
1785
1786         * tests/testassistant.c: Add some tests for GtkAssistant
1787
1788         * tests/Makefile.am: Glue
1789
1790 2006-01-20  Matthias Clasen  <mclasen@redhat.com>
1791
1792         * gtk/gtkassistant.c: Fix the docs to reflect the actual signal
1793         signatures.
1794
1795         * gtk/gtktextview.c (gtk_text_view_set_virtual_cursor_pos): Don't
1796         crash if layout is NULL.  (#327934, Christian Kirbach)
1797
1798 2006-01-20  Dan Winship  <danw@novell.com>
1799
1800         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_class_init,
1801         tree_view_keybinding_cb, trap_activate_cb): On "unix", pop up the
1802         "Open Location" window on "~" as well as "/". #153213
1803         (location_entry_create): Fix this so autocompletion still works
1804         correctly in that case.
1805
1806 2006-01-19  Matthias Clasen  <mclasen@redhat.com>
1807
1808         * configure.in: Explicitly link against Xrender.  
1809         (#327538, Christophe Belle)
1810         
1811         * gdk/x11/gdkprivate-x11.h (XID_FONT_BIT): 
1812         * gdk/x11/gdkfont-x11.c: 
1813         * gdk/x11/gdkxid.c: Use an unused high bit in the
1814         XID to mark fonts in the global xid hash table.
1815
1816         * gdk/x11/gdkcursor-x11.c (update_cursor): Skip fonts
1817         when iterating over the xid hash table, since calling
1818         GDK_IS_WINDOW () on an GdkFont can cause a segfault.
1819         (#327751, Ryan Lovett)
1820
1821 2006-01-19  Matthias Clasen  <mclasen@redhat.com>
1822         
1823         * gtk/gtkassistant.[hc]: Use a priv pointer for
1824         cheap access to the priv struct.  (#327725, Christian
1825         Persch)
1826
1827         * gtk/gtkassistant.h: Fix line endings.
1828
1829 2006-01-18  Matthias Clasen  <mclasen@redhat.com>
1830
1831         * gtk/gtkassistant.[hc]: Add GtkAssistant, a widget to
1832         construct multi-step wizards.  (#115348, Martyn Russell, 
1833         Matthias Clasen, Carlos Garnacho Parro)
1834
1835         * gtk/gtk.symbols:
1836         * gtk/Makefile.am: 
1837         * gtk/gtk.h: Necessary glue.
1838
1839 2006-01-18  Anders Carlsson  <andersca@imendio.com>
1840
1841         * gdk/quartz/gdkevents-quartz.c:
1842         (get_mm_from_pixels):
1843         (gdk_screen_get_width_mm):
1844         (gdk_screen_get_height_mm):
1845         Implement these functions.
1846         (#327228, Thomas Broyer).
1847
1848 2006-01-18  Anders Carlsson  <andersca@imendio.com>
1849
1850         * gdk/quartz/gdkdrawable-quartz.c:
1851         (gdk_quartz_draw_polygon):
1852         (gdk_quartz_draw_lines):
1853         Implement these functions.
1854         (#327226, Thomas Broyer)
1855         
1856 2006-01-18  Anders Carlsson  <andersca@imendio.com>
1857
1858         * gdk/quartz/gdkkeys-quartz.c:
1859         (maybe_update_keymap):
1860         Support non-MacRoman keyboard layouts.
1861         (#322585, Wolfgang Thaller)
1862         
1863 2006-01-18  Anders Carlsson  <andersca@imendio.com>
1864
1865         * gdk/quartz/gdkmain-quartz.c:
1866         (_gdk_windowing_init):
1867         Make the process a foreground application.
1868         (#322481, Wolfgang Thaller)
1869         
1870 2006-01-18  Matthias Clasen  <mclasen@redhat.com>
1871
1872         * gtk/gtkrbtree.c: 
1873         * gtk/gtktreemodel.c: Fix several g_new() calls which
1874         were using extra indirections or pointless casts.  
1875         (#327423, Morten Welinder)
1876
1877 Tue Jan 17 19:27:59 2006  Tim Janik  <timj@imendio.com>
1878
1879         * gtk/gtkprogress.c: fix adopted from maemo-gtk.
1880         gtk_progress_create_pixmap(): clear out the newly created offscreen 
1881         pixmap, so themes making use of transparency don't draw onto garbage.
1882
1883 2006-01-17  Michael Natterer  <mitch@imendio.com>
1884
1885         * gtk/gtkbutton.c: remove the "child-spacing" style property again
1886         and add "inner-border" instead. That's far more flexible and
1887         "child-spacing" was a bad name anyway.
1888
1889 2006-01-17  Michael Natterer  <mitch@imendio.com>
1890
1891         * configure.in (ALL_LINGUAS): remove "ang" again until all po
1892         files are there.
1893
1894 2006-01-16  Abel Cheung  <maddog@linuxhall.org>
1895
1896         * configure.in: Added "ang" "zh_HK" to ALL_LINGUAS.
1897
1898 2006-01-16  Matthias Clasen  <mclasen@redhat.com>
1899
1900         * README.in: Mention new pixbuf engine features.
1901
1902         * gtk/gtk.symbols: 
1903         * gtk/gtkradioaction.[hc]: Add a current-value property and a
1904         setter for it.  (#322735, Jorn Baayen)
1905         
1906 2006-01-16  Michael Natterer  <mitch@imendio.com>
1907
1908         * gtk/gtkbutton.c: applied patch from maemo-gtk which adds a
1909         child-spacing style property. Fixes bug #327202.
1910
1911 2006-01-16  Anders Carlsson  <andersca@imendio.com>
1912
1913         * gdk/quartz/gdkdisplay-quartz.c:
1914         * gdk/quartz/gdkevents-quartz.c:
1915         (gdk_keyboard_grab):
1916         (gdk_display_keyboard_ungrab):
1917         (gdk_keyboard_grab_info_libgtk_only):
1918         (find_window_for_event):
1919         Implement keyboard grabs.
1920         
1921         (_gdk_quartz_send_map_events):
1922         * gdk/quartz/gdkmain-quartz.c:
1923         * gdk/quartz/gdkprivate-quartz.h:
1924         New function that synthesizes map events.
1925         
1926         * gdk/quartz/gdkwindow-quartz.c:
1927         (_gdk_windowing_window_init):
1928         The root window is always visible.
1929         
1930         (all_parents_shown):
1931         (show_window_internal):
1932         Send map events.
1933         
1934         (gdk_window_hide):
1935         Ungrab keyboard and pointer
1936
1937 2006-01-15  Kristian Rietveld  <kris@gtk.org>
1938
1939         Fixes #324099, Tommi Komulainen.
1940
1941         * gtk/gtktreestore.[ch] (gtk_tree_store_insert_with_values),
1942         (gtk_tree_store_insert_with_valuesv): new functions, analog to
1943         those found in GtkListStore.
1944
1945         * gtk/gtktreestore.c (gtk_tree_store_real_set_value),
1946         (gtk_tree_store_set_valist), (gtk_tree_store_set_valist_internal),
1947         (gtk_tree_store_sort_iter_changed): refactored.
1948
1949         * gtk/gtk.symbols: updated.
1950
1951         * tests/treestoretest.c: added a test for this new functionality.
1952
1953 2006-01-14  Matthias Clasen  <mclasen@redhat.com>
1954
1955         * gtk/gtkentry.c (gtk_entry_drag_data_received): Remove 
1956         an unused variable.
1957
1958         * gtk/gtkiconfactory.c (get_default_icons): Register RTL 
1959         versions of the indent and unindent icons.  (#326857,
1960         Itai Bar-Haim)
1961
1962         * gtk/Makefile.am (STOCK_ICONS): And add them here.
1963
1964         Fix a crash with combo boxes in RESIZE_IMMEDIATE
1965         containers.  (#326806, Sebastian Bacher)
1966         
1967         * gtk/gtkcombobox.c (gtk_combo_box_size_allocate) 
1968         (gtk_combo_box_size_request): Don't call 
1969         gtk_combo_box_check_appearance() from here, as that 
1970         can lead to recursion. 
1971         (gtk_combo_box_init): Instead, call it here.
1972
1973 2006-01-14  Kristian Rietveld  <kris@gtk.org>
1974
1975         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_iter_children): fix
1976         a typo which caused this whole thing to not function ...
1977
1978 2006-01-14  Kristian Rietveld  <kris@gtk.org>
1979
1980         * gtk/gtktreeview.c (gtk_tree_view_size_allocate),
1981         (validate_visible_area): fixup adjustments and top_row if the
1982         current dy + page_size exceeds the new tree view height. (Fixes
1983         #316689, reported by Chris Lord).
1984
1985 2006-01-13  Matthias Clasen  <mclasen@redhat.com>
1986
1987         * */abicheck.sh: Make this work on more platforms.
1988
1989 2006-01-13  Kristian Rietveld  <kris@imendio.com>
1990
1991         * tests/testtreefocus.c (set_indicator_size), (main): add a little
1992         test for the newly introduced indicator-size property.
1993
1994 2006-01-13  Kristian Rietveld  <kris@imendio.com>
1995
1996         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_init):
1997         initialize the inconsistent field in the private structure,
1998         (gtk_cell_renderer_toggle_class_init),
1999         (gtk_cell_renderer_toggle_{set,get}_property),
2000         (gtk_cell_renderer_toggle_get_size): introduce a indicator-size
2001         property.
2002
2003 2006-01-13  Michael Natterer  <mitch@imendio.com>
2004
2005         * gtk/gtktreeview.c (gtk_tree_view_real_expand_row)
2006         (gtk_tree_view_real_collapse_row): don't animate the expander
2007         arrows if gtk-enable-animations is FALSE (bug #142582).
2008
2009 2006-01-12  Matthias Clasen  <mclasen@redhat.com>
2010
2011         * gtk/gtknotebook.c: Replace hardcoded values for tab-overlap and
2012         tab-curvature with style properties.  (#325282, Alexander Nedotsukov)
2013
2014         * gtk/gtktextview.c (gtk_text_view_commit_text) 
2015         (gtk_text_view_delete_from_cursor, gtk_text_view_backspace): 
2016         Reset the virtual cursor position.  (#326003, Evert Verhellen)
2017
2018         * gtk/gtkwidget.c (gtk_widget_set_app_paintable): Add some docs
2019         about RGBA windows. (#326486, Benjamin Otte)
2020
2021 2006-01-12  Michael Natterer  <mitch@imendio.com>
2022
2023         * gdk/gdkimage.c (scratch_image_info_for_depth): connect to the
2024         display's "closed" signal and free the cached scratch images upon
2025         display closing (bug #85715).
2026
2027 2006-01-12  Michael Natterer  <mitch@imendio.com>
2028
2029         * gtk/gtkexpander.c (gtk_expander_set_expanded): skip the
2030         animation if the gtk-enable-animations setting is FALSE
2031         (bug #142582).
2032
2033 2006-01-11  Matthias Clasen  <mclasen@redhat.com>
2034
2035         * gtk/gtklabel.c: Fix a C99ism (#326658, Kazuki Iwamoto)
2036
2037 2006-01-11  Matthias Clasen  <mclasen@redhat.com>
2038
2039         * gtk/gtklabel.c: Add some notify batching, always
2040         emit notify after setting the new value.
2041
2042         * gtk/gtkmessagedialog.c: Add properties.  (#311254,
2043         Johan Dahlin)
2044         (gtk_message_dialog_new): Remove some redundant code, pointed
2045         out by Gustavo Carneiro.
2046
2047         * gdk/x11/gdkwindow-x11.c (create_moveresize_window): Clean
2048         up properly if the grab fails.
2049         (finish_drag): Don't leak a reference to moveresize_window
2050         here.
2051
2052 2006-01-11  Matthias Clasen  <mclasen@redhat.com>
2053
2054         * gdk/x11/gdkevents-x11.c: Fix string offsets.
2055
2056         Allow falling back to another icon theme before 
2057         hicolor.   (#325546, Rodney Dawes)
2058         
2059         * gtk/gtksettings.c: Add a gtk-fallback-icon-theme setting.
2060
2061         * gdk/x11/gdkevents-x11.c: Map it to the XSetting Net/FallbackIconTheme.
2062         
2063         * gtk/gtkicontheme.c: Consult the fallback icon theme before
2064         looking in hicolor. 
2065
2066 2006-01-10  Matthias Clasen  <mclasen@redhat.com>
2067
2068         * tests/testgtk.c: Add an expander example.
2069
2070         * gtk/gtkcalendar.c (gtk_calendar_focus_out): Queue a draw
2071         when losing the focus.  (#326064, Andrew Conkling)
2072
2073         * gtk/gtkimmulticontext.c: 
2074         * gtk/gtkhsv.c: 
2075         * gtk/gtkhandlebox.c: Convert to use instance private data.
2076
2077         * gtk/gtk.h: Remove duplicate include.  (#326429, 
2078         Benoît Carpentier)
2079
2080         * gtk/gtkpaned.c: Convert to use instance private data.
2081
2082 2006-01-10  Michael Natterer  <mitch@imendio.com>
2083
2084         * gdk/gdkpango.c (on_renderer_display_closed): disconnect from the
2085         right object ("closed" is emitted by the display, not the screen).
2086         (bug #85715)
2087
2088 2006-01-10  Anders Carlsson  <andersca@imendio.com>
2089
2090         * gdk/quartz/gdkproperty-quartz.c:
2091         (ensure_atom_tables):
2092         (intern_atom_internal):
2093         (gdk_atom_intern):
2094         (gdk_atom_intern_static_string):
2095         (gdk_atom_name):
2096         Implement local-only atoms.
2097
2098 2006-01-09  Matthias Clasen  <mclasen@redhat.com>
2099
2100         * gdk/gdkgc.c (gc_get_foreground): Correct a warning.
2101         (#326341, Benoît Carpentier)
2102
2103         * gtk/gtk.symbols:
2104         * gtk/gtkwindow.h:
2105         * gtk/gtkwindow.c (gtk_window_get_group): Make this function
2106         public API.  (#307099, Todd Berman)
2107
2108         * gtk/gtkmenu.c: 
2109         * gtk/gtkmain.c: 
2110         * gtk/gtkentrycompletion.c: 
2111         * gtk/gtkcombo.c: 
2112         * gtk/gtkcombobox.c: Update all callers.
2113
2114         * gtk/gtkentry.c (paste_received):  Make GtkEntryCompletion
2115         complete on pastes at the end.  (#165714, Christian Neumair)
2116
2117         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): 
2118         Prevent the first row being focused on map.  (#137351,
2119         Niklas Knutsson)
2120
2121 2006-01-09  Johan Dahlin  <jdahlin@async.com.br>
2122
2123         * gtk/gtk.symbols:
2124         * gtk/gtkeditable.h:
2125         * gtk/gtksizegroup.c: (gtk_size_group_get_widgets):
2126         * gtk/gtksizegroup.h:
2127         (struct _GtkSizeGroup): 
2128
2129         Add gtk_size_group_get_widgets, fixes #326324.
2130         Also mark all fields of GtkSizeGroup as private
2131
2132 2006-01-09  Matthias Clasen  <mclasen@redhat.com>
2133
2134         * gtk/gtktextlayout.c (gtk_text_layout_finalize): Don't
2135         leak preedit_string and preedit_attrs.  (#322332, Paolo
2136         Borelli)
2137
2138         * gtk/gtk.symbols:
2139         * gtk/gtkaction.h: 
2140         * gtk/gtkaction.c (gtk_widget_get_action): New function to
2141         get the action for a proxy.  (#326288)
2142
2143         * gtk/gtkaction.c: Go back to the old key for attaching the
2144         action to the proxy.  (#326288, Diego González)
2145
2146 2006-01-08  Matthias Clasen  <mclasen@redhat.com>
2147
2148         * gtk/gtkactiongroup.c (dgettext_swapped): Don't translate
2149         empty strings.  (#326200, Christian Stimming)
2150
2151 2006-01-08  Matthias Clasen  <mclasen@redhat.com>
2152
2153         * gtk/gtkentry.[hc]: 
2154         * gtk/gtklabel.[hc]: Shrink the private structs of these a bit.
2155
2156         * gtk/gtklabel.c (get_layout_location): Fix label alignment 
2157         when width-chars is set.  (#326098, Benjamin Otte)
2158
2159         * gdk/gdkregion-generic.c (miRegionCopy): Fix this for the 
2160         single-rectangle case.  (#326127, Benjamin Berg)
2161         (gdk_region_copy): Use miRegionCopy() here.
2162
2163 2006-01-07  Matthias Clasen  <mclasen@redhat.com>
2164
2165         Fix actiongroup-action interaction that relied on 
2166         actions connecting to notify on themselves:
2167         
2168         * gtk/gtkaction.[hc]: Factor out the code updating the
2169         visibility/sensitivity of proxies into _gtk_action_sync_visible()
2170         and _gtk_action_sync_sensible().
2171
2172         * gtk/gtkactiongroup.c: Call the new functions when the
2173         group visibility/sensitivity changes. 
2174
2175 2006-01-06  Matthias Clasen  <mclasen@redhat.com>
2176
2177         * gtk/gtkactiongroup.c (gtk_action_group_set_sensitive) 
2178         (gtk_action_group_set_visible): Add missing property change
2179         notification.
2180
2181 2006-01-06  Matthias Clasen  <mclasen@redhat.com>
2182
2183         * gtk/gtkfilechooserbutton.c (model_add_special): Just use the
2184         directory name for the home dir.  (#325817, Federico Mena Quintero)
2185         
2186         * gtk/gtktexttag.c (gtk_text_attributes_new): Initialize editable 
2187         to TRUE. 
2188         (gtk_text_tag_class_init): The default value for the direction 
2189         property is GTK_TEXT_DIR_NONE. Add notes about the initial values 
2190         of the font and language properties.
2191
2192         * gtk/gtktoolbutton.c (gtk_tool_button_class_init): Make clicked
2193         an action signal.  (#325782, Martyn Russell)
2194
2195         * gtk/gtkviewport.c (viewport_set_adjustment): Disconnect from
2196         the old adjustments signals.  (#325869, Jorn Baayen)
2197
2198 2006-01-06  Hans Breuer  <hans@breuer.org>
2199
2200         * tests/makefile.msc : added a bunch of tests
2201         * tests/testcellrenderertext.c : use g_snprintf()
2202         * tests/testfilechooserbutton.c : don't include unistd.h twice.
2203         Removed the unconditional one and added direct.h for G_OS_WIN32
2204         
2205 2006-01-05  Hans Breuer  <hans@breuer.org>
2206
2207         * gdk/makefile.msc : also recurse into win32 for ::clean
2208         * gtk/makefile.msc.in : create gtkbuiltincache.h (most code
2209         to simulate links) and file renames
2210
2211 2006-01-05  Johan Dahlin  <jdahlin@async.com.br>
2212
2213         * gtk/gtkprogressbar.c: Set minimum for activity-step property to 0
2214         instead of -G_MAXUINT.
2215         
2216 2006-01-05  Matthias Clasen  <mclasen@redhat.com>
2217
2218         * gtk/gtkwindow.c: Only connect to the event if we have
2219         a frame, since the handler is only relevant in that case.
2220
2221         * gtk/gtkaction.c (connect_proxy, disconnect_proxy): 
2222         Use a weak reference rather than the destroy signal to track 
2223         proxies going away.
2224
2225         * gtk/gtkbindings.c (binding_signal_new): Revert the last change.
2226
2227         * gtk/gtkaction.c (gtk_action_sync_property): 
2228         (gtk_action_sync_stock_id): Removed.
2229
2230 2006-01-05  Rodrigo Moya <rodrigo@novell.com>
2231
2232         * gtk/gtkbindings.c (binding_signal_new): allocate correct amount for
2233         signal and arguments.
2234
2235 2006-01-05  Matthias Clasen  <mclasen@redhat.com>
2236
2237         * gtk/gtklabel.c (gtk_label_grab_focus): Don't return a value from
2238         a void function.
2239
2240 2006-01-04  Matthias Clasen  <mclasen@redhat.com>
2241
2242         * gtk/gtkbindings.h (struct _GtkBindingSignal): Revert questionable
2243         changes.
2244         
2245         * gtk/gtkbindings.c: Use the slice allocator and allocate signal
2246         and arguments in one block.
2247
2248         * gtk/gtkuimanager.c (gtk_ui_manager_get_toplevels): Don't return
2249         a list of NULLs.  (#325723, Steve Chaplin)
2250
2251 2006-01-04  Rodrigo Moya <rodrigo@novell.com>
2252
2253         * gtk/gtkbindings.c (binding_signal_new): guard against multiplying
2254         by -1 (when n_args is 0).
2255
2256 2006-01-04  Michael Natterer  <mitch@imendio.com>
2257
2258         * gtk/gtkmenutoolbutton.c
2259         (gtk_menu_tool_button_set_menu)
2260         (gtk_menu_tool_button_destroy): use gtk_menu_attach_to_widget()
2261         and gtk_menu_detach() instead of reffing/unreffing the menu
2262         manually. Also fixes brokenness on screen change (bug #85715).
2263
2264 2006-01-04  Matthias Clasen  <mclasen@redhat.com>
2265
2266         * gtk/gtkaccelmap.c: 
2267         * gtk/gtkactiongroup.c: 
2268         * gtk/gtkdialog.c: 
2269         * gtk/gtkfilesystemunix.c: 
2270         * gtk/gtkgc.c: 
2271         * gtk/gtkkeyhash.c: 
2272         * gtk/gtkplug.c: 
2273         * gtk/gtktextiter.c: 
2274         * gtk/gtktextlayout.c: 
2275         * gtk/gtkuimanager.c: 
2276         * gtk/gtkwidget.c: 
2277         * gtk/gtkwindow.c: 
2278         * gtk/gtkxembed.c: Use the slice allocator for many small 
2279         allocations.
2280
2281         * gtk/gtkcolorsel.c: 
2282         * gtk/gtktreeview.c: Use IPN.
2283
2284         * gtk/gtkwidget.c: Remove an unused field from the AccelPath 
2285         struct.
2286
2287 2006-01-04  Tor Lillqvist  <tml@novell.com>
2288
2289         * gtk-zip.sh.in: Include also the gtk20-properties message catalogs.
2290
2291 2006-01-03  Matthias Clasen  <mclasen@redhat.com>
2292         
2293         * gtk/gtkdnd.c: Make it compile
2294
2295         * gtk/gtkdnd.c (gtk_drag_begin_internal): Call gtk_drag_update
2296         for non-motion events.  (#325443, Peter Harvey)
2297
2298         * gtk/gtkaction.c: Avoid connecting to notify on our own
2299         properties. 
2300
2301 2006-01-02  Matthias Clasen  <mclasen@redhat.com>
2302
2303         * gtk/gtkentry.c (gtk_entry_delete_from_cursor): When deleting
2304         words, delete preceding whitespace as well.  (#325358,  Akkana Peck)
2305
2306 2006-01-02  Anders Carlsson  <andersca@imendio.com>
2307
2308         * gdk/quartz/GdkQuartzWindow.c:
2309         (-[GdkQuartzWindow canBecomeMainWindow]):
2310         (-[GdkQuartzWindow canBecomeKeyWindow]):
2311         Have these return TRUE
2312         
2313         * gdk/quartz/gdkevents-quartz.c:
2314         (pointer_grab_internal):
2315         Remove FIXME
2316         
2317         (find_child_window_by_point_helper):
2318         Fix bug in offset calculation
2319         
2320         (find_window_for_event):
2321         Use grab window toplevel when a grab is in effect
2322         
2323         (gdk_event_translate):
2324         Don't call _gdk_event_button_generate on mouse up
2325         
2326         * gdk/quartz/gdkgc-quartz.c:
2327         (_gdk_quartz_gc_new):
2328         Fix indentation
2329         
2330         * gdk/quartz/gdkwindow-quartz.c:
2331         (gdk_window_new):
2332         Make TEMP windows borderless
2333         
2334         (gdk_window_hide):
2335         Hide window
2336         
2337         (gdk_window_get_origin):
2338         Implement
2339         
2340 2006-01-02  Tor Lillqvist  <tml@novell.com>
2341
2342         * gdk/win32/gdkwindow-win32.c
2343         (gdk_window_impl_win32_get_visible_region): Make identical to the
2344         X11 implementation. (#322264, John Ehresman)
2345
2346         * gdk/win32/gdkgeometry-win32.c (gdk_window_scroll): Get the
2347         invalidated region from ScrollWindowEx() instead of an incorrect
2348         attempt to calculate it ourselves. Fix by John Ehresman. (#323666)
2349
2350         * gdkevents-win32.c: Make _gdk_win32_hrgn_to_region() non-static.
2351
2352         * gdkprivate-win32.h: Declare it.
2353
2354 2005-12-31  Matthias Clasen  <mclasen@redhat.com>
2355
2356         * gtk/gtkaction.c: 
2357         * gtk/gtkentry.c: Connect to notify instead of multiple
2358         detailed signals.
2359
2360 2005-12-30  Matthias Clasen  <mclasen@redhat.com>
2361
2362         * gdk/gdk.symbols: 
2363         * gdk/gdkcairo.h: 
2364         * gdk/gdkcairo.c: Add gdk_cairo_set_source_pixmap.  (#318805,
2365         Alexander Larsson)
2366
2367         * gdk/gdkdisplaymanager.c (gdk_display_manager_set_property): Call
2368         gdk_display_manager_set_default_display() to change the default
2369         display.  (#153623, Stefan Kost)
2370
2371         * gtk/gtkmessagedialog.c (gtk_message_dialog_init):
2372          (setup_type): Alert dialogs should not have titles and should 
2373         not be displayed in the taskbar.  (#310443, Carlos Garnacho Parro,
2374         Dennis Cranston)
2375
2376 2005-12-29  Matthias Clasen  <mclasen@redhat.com>
2377
2378         * gtk/gtkliststore.c: 
2379         * gtk/gtktreestore.c: Always call the get_path and get_iter
2380         implementations directly, rather than the current mixture whith
2381         some calls going through the GtkTreeModel interface.
2382
2383         * gtk/gtktreemodelsort.c: 
2384         * gtk/gtkliststore.c: 
2385         * gtk/gtktreestore.c: Remove excessive g_return_if_fail() checks
2386         in static functions.
2387         
2388         * gtk/gtktreedatalist.c: Use the slice allocater for 
2389         GtkTreeDataSortHeader.
2390
2391         * gtk/gtktreedatalist.h: 
2392         * gtk/gtktreedatalist.c (_gtk_tree_data_list_set_header): New function.
2393
2394         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_sort_func): 
2395         * gtk/gtkliststore.c (gtk_list_store_set_sort_func): 
2396         * gtk/gtktreestore.c (gtk_tree_store_set_sort_func): Use it here.
2397
2398 2005-12-27  Matthias Clasen  <mclasen@redhat.com>
2399
2400         * gtk/gtkbindings.h (GtkBindingSignal): 
2401         * gtk/gtkbindings.c (binding_signal_new): Make the
2402         args a flexible array inside the struct, and allocate them
2403         together.
2404
2405 Wed Dec 28 00:45:46 2005  Tim Janik  <timj@gtk.org>
2406
2407         * gtk/gtkctree.c (row_delete): delete GtkCTreeRow as GtkCTreeRow, not
2408         clist rows which crashes in gslice later on.
2409
2410 2005-12-27  Federico Mena Quintero  <federico@ximian.com>
2411
2412         * gtk/gtkfilefilter.c (gtk_file_filter_filter): In the case for
2413         FILTER_RULE_PIXBUF_FORMATS, check that filter_info->mime_type is
2414         not NULL.  Fixes bug #317687.
2415
2416 2005-12-27  Matthias Clasen  <mclasen@redhat.com>
2417
2418         * gdk/x11/gdkevents-x11.c (check_transform): Fix a typo.
2419         (gdk_screen_get_setting): Avoid relocations for the settings
2420         map.
2421
2422         * gdk/x11/gdkproperty-x11.c: Avoid relocations for the list
2423         of standard atoms.
2424
2425         * gtk/gtkbindings.c (gtk_binding_set_new): Avoid copying
2426         the set_name by interning it.
2427
2428 2005-12-26  Matthias Clasen  <mclasen@redhat.com>
2429
2430         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Precache atoms
2431         before calling gdk_window_new().
2432
2433         * gtk/gtktextbtree.c: Use the slice allocator for some other small
2434         auxiliary structures as well.
2435
2436         * gtk/gtkimcontext.c (gtk_im_context_filter_keypress): Clarify
2437         docs.  (#324996)
2438
2439         * gtk/gtktextbtree.c (gtk_text_btree_get_tag_info) 
2440         (gtk_text_btree_remove_tag_info): Use the slice allocator for 
2441         tag info.
2442
2443         * README.in: Mention the stripping of (_F) suffixes.
2444
2445         * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Strip a suffix of 
2446         the form "(_<single character>)", since this is the preferred way
2447         for some languages to indicate accelerators.  (#323956, Yang Hong)
2448
2449         * gtk/gtklabel.c (gtk_label_class_init): Add a gtk-label-select-on-focus
2450         setting.
2451         (gtk_label_grab_focus): And use it here to select the contents of
2452         the label when appropriate.
2453         (gtk_label_class_init): Use the same keybindings for select all/
2454         unselect all as GtkEntry and GtkTextView.
2455
2456         * gtk/gtkdialog.c (gtk_dialog_map): When looking for the initial
2457         focus, avoid leaving a selection in a label.
2458
2459 2005-12-25  Matthias Clasen  <mclasen@redhat.com>
2460
2461         * gtk/gtkwindow.c: Documentation fixes.  (#324815, 
2462         Ross Burton)
2463
2464         * configure.in: Require GLib 2.9.2
2465
2466 2005-12-24  Matthias Clasen  <mclasen@redhat.com>
2467
2468         * gdk/gdkregion-generic.c: 
2469         * gdk/gdkpolyreg-generic.c: 
2470         * gdk/gdkregion.h: 
2471         * gdk/gdkrectangle.c: Inline docs, use g_assert(), avoid 
2472         extra allocation for rectangular regions.
2473
2474 Thu Dec 22 18:53:14 2005  Tim Janik  <timj@gtk.org>
2475
2476         * gtk/gtkobject.[hc]: renamed GUnowned to GInitiallyUnowned.
2477
2478 Thu Dec 22 17:55:11 2005  Tim Janik  <timj@gtk.org>
2479
2480         * gtk/gtkobject.h: parent type fixups in structure declarations.
2481
2482 Thu Dec 22 16:01:27 2005  Tim Janik  <timj@imendio.com>
2483
2484         * gtk/gtkobject.c: derive GtkObject from GUnowned,
2485         so it initially has a floating reference count.
2486         gtk_object_class_init(): installa floating flag handler with
2487         libgobject, so for GtkObjects the flag is stored as GTK_FLOATING
2488         in the ->flags member.
2489
2490         * tests/floatingtest.c: test floating flag uses.
2491
2492 2005-12-21  Matthias Clasen  <mclasen@redhat.com>
2493
2494         * gdk/gdkregion-generic.c: Use the slice allocator
2495         for regions. Still todo: avoid extra allocations for
2496         the single-rectangle case.
2497
2498         * gtk/gtksettings.c (gtk_settings_class_init): Update
2499         class_n_properties after installing color-hash, since
2500         other classes install settings, too.
2501
2502         * gtk/gtkctree.c: 
2503         * gtk/gtkclist.c: Fix some mistakes in the conversion
2504         from mem chunks to slice allocator.
2505
2506         * gtk/gtkiconview.c (adjust_wrap_width): Adjust the 
2507         wrap-width also if an explicit item width is set.  
2508         (#322475, Alex Graveley)
2509         
2510 2005-12-20  Matthias Clasen  <mclasen@redhat.com>
2511
2512         * gtk/gtkiconview.c (gtk_icon_view_button_press): Reset 
2513         pressed_button to -1 after handling a double click, so that
2514         motion events occurring between here and the release event
2515         don't trigger DND.  (#324588, Dave Andreoli)
2516
2517 2005-12-19  Matthias Clasen  <mclasen@redhat.com>
2518
2519         * gtk/gtkcellrenderer.c: 
2520         * gtk/gtkselection.c: 
2521         * gtk/gtkcalendar.c: 
2522         * gtk/gtkitemfactory.c: 
2523         * gdk/gtkcombo.c: 
2524         * gdk/gdkpixbuf-render.c: Documentation updates
2525
2526         * gtk/gtktreemodel.c: 
2527         * gtk/gtkplug.c: 
2528         * gtk/gtkwindow.c: Documentation fixes.
2529
2530 2005-12-19  Michael Natterer  <mitch@imendio.com>
2531
2532         * gtk/gtkentry.c: implement boolean property "truncate-multiline"
2533         which, when enabled, truncates multi-line pastes or drops to their
2534         first line. Fixes bug #322252.
2535
2536         * gtk/gtkfilechooserentry.c (gtk_file_chooser_entry_init): enable
2537         truncate-multiline here.
2538
2539 2005-12-17  Matthias Clasen  <mclasen@redhat.com>
2540
2541         * gtk/gtksettings.c (get_color_hash): Don't crash if
2542         there is no color scheme.  (#324429, Diego Gonzalez)
2543
2544 2005-12-16  Matthias Clasen  <mclasen@redhat.com>
2545
2546         * gtk/gtkfilesystem.c (gtk_file_system_module_load): 
2547         * gtk/gtkimmodule.c (gtk_im_module_load): 
2548         * gtk/gtkthemes.c (gtk_theme_engine_load): 
2549         * gtk/gtkmodules.c (find_module): Use G_MODULE_BIND_LAZY when
2550         opening modules.
2551
2552         * gtk/gtksettings.[hc]: Rework the way the color scheme setting
2553         is inherited. Now the overriding is done on a per-color basis,
2554         rather than for the setting as a whole. This has the effect
2555         that themes can declare defaults for all the symbolic colors they
2556         use by specifying a value for the gtk-color-scheme setting in 
2557         their rc file, while still allowing the XSetting to override
2558         "standard" symbolic colors. The hash table is now available
2559         through the color-hash property.
2560         
2561         * gtk/gtkrc.c: Use the new color-hash property.
2562         
2563 2005-12-14  Matthias Clasen  <mclasen@redhat.com>
2564
2565         * gtk/gtkcontainer.c (_gtk_container_focus_sort): Skip unrealized
2566         children when doing focus sorting.  (#323995, Dan Winship)
2567
2568 2005-12-14  Rodney Dawes  <dobey@novell.com>
2569
2570         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon):
2571         Default to "drive-harddisk" and then fall back to gnome-dev-harddisk
2572         (get_icon_for_mime_type): Look up the mime type icons according to the
2573         Icon Naming Specification and then fall back to the gnome-mime- prefix
2574         for the mime type icons
2575
2576         Fixes #323655
2577         
2578 2005-12-14  Matthias Clasen  <mclasen@redhat.com>
2579
2580         * gtk/gtkdnd.c (gtk_drag_set_icon_name): Warn if the icon
2581         cannot be loaded.  (#323504, Kjartan Maraas)
2582
2583         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add docs 
2584         for the row-activated signal.  (#324044, Davyd Madeley)
2585
2586 2005-12-14  Michael Natterer  <mitch@imendio.com>
2587
2588         * tests/test-images/valid_jpeg_progressive_test: new test image.
2589
2590 Tue Dec 13 09:47:20 2005  Tim Janik  <timj@gtk.org>
2591
2592         * README.in: added a link to the floating reference docs in the
2593         2.10 release NEWS section.
2594
2595 2005-12-12  Matthias Clasen  <mclasen@redhat.com>
2596
2597         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_index): 
2598         Speed this function up, using the fact that visibility is 
2599         constant across segments. (#321548, Paolo Borelli)
2600
2601         * gtk/gtktextbtree.c (_gtk_text_line_char_to_byte_offsets): 
2602         * gtk/gtktextiter.c (gtk_text_iter_backward_chars): Speed up
2603         stepping backwards.  (#320638, Larry Ewing, Paolo Borelli)
2604
2605         * gtk/gtkicontheme.c (ensure_valid_themes): Only broadcast
2606         _GTK_LOAD_ICONTHEMES if we detect a real theme change, not
2607         upon initial theme load.  (#323876, Peter Lund)
2608
2609         * gtk/gtkstatusicon.c (gtk_status_icon_class_init): Register
2610         the size-changed signal correctly.  (#323848, Murray Cumming)
2611
2612         * gtk/gtkmarshalers.list: Add necessary marshaller.
2613
2614         * gtk/gtktextview.c (gtk_text_view_get_border_window_size): Don't
2615         fall thru to the wrong window types.  (#323843)
2616
2617         Make the gtk-color-scheme setting work.
2618         
2619         * gtk/gtksettings.h: 
2620         * gtk/gtksettings.c (_gtk_settings_get_color_hash): Add a getter
2621         that takes care of initializing the color hash if it is not 
2622         already there.  
2623
2624         * gtk/gtkrc.c (gtk_rc_color_scheme_changed, gtk_rc_context_get): 
2625         And use it here.        
2626
2627 2005-12-10  Matthias Clasen  <mclasen@redhat.com>
2628
2629         * gdk/gdk.c (gdk_parse_args): Warn if parsing fails,
2630         not if it succeeds. 
2631
2632 2005-12-09  Matthias Clasen  <mclasen@redhat.com>
2633
2634         * gtk/gtkselection.c (gtk_selection_data_get_uris): Don't
2635         leak list[0].  (#323629, Markku Vire)
2636
2637         * gtk/gtktextbuffer.c (paste_from_buffer): Unref the buffer
2638         when freeing the RequestData.  (#323577)
2639
2640 2005-12-07  Matthias Clasen  <mclasen@redhat.com>
2641
2642         * demos/gtk-demo/iconview_edit.c (set_cell_color): Don't
2643         leak text.
2644
2645         * gtk/gtktoolbutton.c (clone_image_menu_size): Fix a 
2646         variable name clash.  (#323475, Ross Burton)
2647
2648 2005-12-07  Ross Burton  <ross@burtonini.com>
2649
2650         * docs/reference/gtk/tmpl/gtkenums.sgml:
2651         * gtk/gtktoolbutton.c:
2652         If the toolbar mode is ICONS and there is no icon set then show
2653         the label, and vice versa (#322019)
2654
2655 2005-12-07  Matthias Clasen  <mclasen@redhat.com>
2656
2657         * gtk/gtktoolbutton.c (clone_image_menu_size): Fix a 
2658         variable name clash.  (#323475, Ross Burton)
2659
2660         * gtk/gtktreeview.c (gtk_tree_view_key_press): Use the correct
2661         window when synthesizing the key event.  (#323077,
2662         Sadrul Habib Chowdhury)
2663         
2664         (gtk_tree_view_search_key_press_event): Also listen for
2665         GDK_ISO_Left_Tab.  (#323077, Sadrul Habib Chowdhury)
2666
2667         * gtk/gtktextview.c (gtk_text_view_preedit_changed_handler): 
2668         Only scroll if we have focus.  (#316310, Paolo Borelli)
2669
2670         * gtk/gtkfilesystemunix.c (cb_fill_in_mime_type): Fix a C99ism,
2671         spotted by Crispin Flowerday.
2672
2673 2005-12-06  Behdad Esfahbod  <behdad@gnome.org>
2674
2675         * gtk/gtksettings.c (settings_update_font_options): Turn metrics
2676         hinting on (part of #307196)
2677
2678 2005-12-06  Matthias Clasen  <mclasen@redhat.com>
2679
2680         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_reset): Don't
2681         commit from reset, it upstets GtkTextView.
2682
2683         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Be more
2684         careful when turning blinking on and off.
2685         (gtk_text_view_focus_out_event): Make the cursor really invisible
2686         when the focus goes away.  (#323087, Sadrul Habib Chowdhury)
2687         (cursor_blinks): Check the gtk-cursor-blink setting first.
2688
2689         * gtk/gtktreeview.c (gtk_tree_view_key_press): Fix refcounting
2690         issues with new_event and its window.
2691
2692         * gtk/gtkmenu.c (gtk_menu_attach_to_widget): Accept NULL
2693         as a detach func.  (#323386, Jorn Baayen)
2694
2695         * gtk/gtkcalendar.c: Avoid conflict with win32 headers in
2696         the libdate routines.  (#323045, Kazuki Iwamoto)
2697
2698         * gdk/gdk.c (gdk_parse_args): 
2699         * gtk/gtkmain.c (gtk_parse_args): Don't ignore errors
2700         from g_option_context_parse(). 
2701
2702 Tue Dec  6 11:37:59 2005  Tim Janik  <timj@gtk.org>
2703
2704         * gdk/gdkevents.c (gdk_event_new): fix missing hash table 
2705         initialization.
2706
2707 Tue Dec  6 10:32:17 2005  Tim Janik  <timj@gtk.org>
2708
2709         * gtk/gtkstatusbar.c: ported memchunk uses to g_slice, so the code
2710         compiles again.
2711
2712 2005-12-05  Federico Mena Quintero  <federico@ximian.com>
2713
2714         * gtk/gtkfilechooserdefault.c (trap_activate_cb): "event->state &
2715         modifiers", not "event->state && modifiers".  Patch by Sadrul
2716         Habib Chowdhury <imadil@gmail.com>.  Fixes bug #323073.
2717
2718 2005-12-05  Matthias Clasen  <mclasen@redhat.com>
2719
2720         * gtk/gtkwidget.c: 
2721         * gtk/gtkuimanager.c: 
2722         * gtk/gtktreedatalist.c: 
2723         * gtk/gtktext.c: 
2724         * gtk/gtkmain.c: 
2725         * gtk/gtkitemfactory.c: 
2726         * gtk/gtkseparator.[hc]:
2727         * gtk/gtkclist.[hc]: 
2728         * gtk/gtkctree.c:
2729         * gtk/gtkgc.c: Use g_slice instead of mem chunks.
2730
2731 2005-12-05  Michael Natterer  <mitch@imendio.com>
2732
2733         * gdk/x11/gdkevents-x11.c: map the new GtkSettings properties
2734         "timeout-initial", "timeout-repeat", "color-scheme" and
2735         "enable-animations" to X settings.
2736
2737 2005-12-05  Matthias Clasen  <mclasen@redhat.com>
2738
2739         * gdk/gdkevents.c: 
2740         * gdk/gdkcolor.c: Use g_slice instead of mem chunks.
2741
2742         * gtk/gtktreeview.c (gtk_tree_view_key_press): Free new_event
2743         after sending it to the search entry.  (#323209, Crispin Flowerday)
2744
2745         * README.in: Add a note about GTK_FLOATING.
2746
2747         * gtk/gtkobject.h (GTK_OBJECT_FLOATING): Use g_object_is_floating.
2748
2749 2005-12-02  Matthias Clasen  <mclasen@redhat.com>
2750
2751         * gtk/gtktoolbutton.c (clone_image_menu_size): Don't leak
2752         a pixbuf.  (#323024, Paolo Borelli)
2753
2754 2005-12-02  Matthias Clasen  <mclasen@redhat.com>
2755
2756         * gtk/gtkfilesystemunix.c (get_icon_for_mime_type): Don't crash
2757         if mime_type is NULL.  (#322998, Sadrul Habib Chowdhury)
2758
2759 2005-12-02  Michael Natterer  <mitch@imendio.com>
2760
2761         * gtk/gtkmenu.c: applied modified patch from maemo-gtk which
2762         adds a "horizontal-padding" style property. Fixes bug #323036.
2763
2764 2005-12-01  Michael Natterer  <mitch@imendio.com>
2765
2766         Merged modified patch from maemo-gtk that allows to disable
2767         toolbar animations. Addresses bug #142582.
2768
2769         * gtk/gtksettings.c: added boolean property "gtk-enable-animations".
2770         (patch from Christian Neumair)
2771
2772         * gtk/gtktoolbar.c: don't animate toolbar changes if the settings
2773         property is FALSE. Replaced the individual "notify::foo"
2774         connections to GtkSettings by a single "notify" callback and
2775         dispatch internally.
2776
2777 2005-12-01  Michael Natterer  <mitch@imendio.com>
2778
2779         * gtk/gtkmenu.c (gtk_menu_class_init): removed redundant
2780         assignment of widget_class->motion_notify_event
2781
2782 2005-11-29  Matthias Clasen  <mclasen@redhat.com>
2783
2784         * gtk/gtktoggleaction.c (gtk_toggle_action_class_init): Add 
2785         an active property.  (#322673, Jorn Baayen)
2786
2787         Properly handle model changes in GtkTreeSelection: (#322569,
2788         Milosz Derezynski)
2789         
2790         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach): 
2791         Get a reference to the model, and stop the iteration if the model
2792         of the treeview is changed on the way.
2793
2794         * gtk/gtktreeprivate.h: 
2795         * gtk/gtktreeselection.c (_gtk_tree_selection_emit_changed): New 
2796         private function to emit the GtkTreeSelection::changed signal.
2797
2798         * gtk/gtktreeview.c (gtk_tree_view_set_model): Call 
2799         _gtk_tree_selection_emit_changed() when the model changes.
2800
2801 2005-11-28  Federico Mena Quintero  <federico@ximian.com>
2802
2803         Fixes the critical warnings from bug #317999, thus fixing the bug
2804         completely:
2805
2806         * gtk/gtkfilechooserdefault.c
2807         (gtk_file_chooser_default_get_paths): In SELECT_FOLDER mode,
2808         use _gtk_file_chooser_get_current_folder_path() instead of fetching the
2809         impl->current_folder directly.  The latter may be null if we are
2810         in RELOAD_NONE state.
2811
2812 2005-11-28  Federico Mena Quintero  <federico@ximian.com>
2813
2814         Fix bug #321560, based on a patch by Bogdan Nicula (bogdanni@hotmail.com):
2815
2816         * gtk/gtkfilechooserdefault.c (up_folder_handler): Don't add the
2817         current_folder to the pending select paths here; the path bar will
2818         give it to us now.
2819         (path_bar_clicked): Add the child_path to the pending select paths
2820         here.
2821         (show_and_select_paths): Don't filter out folders.
2822         (show_and_select_paths): Don't take separate arguments for
2823         only_one_path and multiple paths.
2824
2825         * tests/autotestfilechooser.c (test_folder_switch_and_filters):
2826         New test about preserving the filters when we change folders.
2827
2828 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
2829
2830         * gtk/gtkscale.c (_gtk_scale_format_value): Insert an LRM, to prevent
2831         -20 to come out as 20- in RTL locales.  (#322571, Tze'ela Hebron)
2832
2833         * gtk/gtkaction.c (gtk_action_sync_button_stock_id) 
2834         (connect_proxy): Buttons use the label property for stock ids.  (#322565,
2835         Milosz Derezynski)
2836
2837         * gtk/gtkiconview.c (update_text_cell, update_pixbuf_cell): Correctly
2838         handle the cell list and indices into it.  (#321856)
2839
2840 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
2841
2842         * gtk/gtktooltips.c (gtk_tooltips_timeout): Set timer_tag to 0 when
2843         the timeout is done.  (#322291, Jean-Yves Lefort)
2844
2845 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
2846
2847         * gtk/gtkfilechooserdefault.c (shortcuts_key_press_event_cb): Make
2848         F2 work for renaming bookmarks.  (#320822, Jaap A. Haitsma, patch
2849         by Paolo Borelli)
2850
2851 2005-11-28  Tor Lillqvist  <tml@novell.com>
2852
2853         * gdk/win32/gdkwindow-win32.c (gdk_window_set_urgency_hint):
2854         Implement the conditional use of FlashWindowEx() properly for MSVC
2855         compilations. The code was confusingly assuming that if compiled
2856         with a "new" compiler, it will only be run on "new" Windows
2857         versions. We want it to run on "old" versions, too, even if
2858         compiled with a "new" compiler. There are two orthogonal issues:
2859         whether the compiler defines the necessary API in its headers, and
2860         whether it is present at run-time. (#318077)
2861
2862         * gtk/gtkcalendar.c (gtk_calendar_init): Use GetLocaleInfo() on
2863         Windows to get the localized weekday and month names. strftime()
2864         in the Microsoft C library returns strings in the default codepage
2865         for the locale of the process, not the system codepage. Thus
2866         g_locale_to_utf8() isn't useable on the return value from
2867         strftime(). (#322603)
2868
2869 2005-11-27  Matthias Clasen  <mclasen@redhat.com>
2870
2871         * gtk/gtkmessagedialog.c (gtk_message_dialog_new_with_markup): 
2872         Fix an example.  (#322493, Elie De Brauwer)
2873         
2874         Fix two memory handling problems in GtkTreeView: (#322350, 
2875         Søren Sandmann)
2876         
2877         * gtk/gtktreeview.c (gtk_tree_view_destroy) 
2878         (gtk_tree_view_set_model): Remove all references to nodes in
2879         the old model.
2880         (gtk_tree_view_real_collapse_row): Unmark expanded_collapsed_node
2881         before removing the children.
2882
2883         * gtk/gtkcolorbutton.c (gtk_color_button_init): Don't leak a 
2884         PangoLayout here.  (#322505, Paolo Borelli)
2885
2886 2005-11-27  Tor Lillqvist  <tml@novell.com>
2887
2888         Once again rework Win32 window decoration code. Doesn't break
2889         #104514. The dialogs in gtk-demo now have the same decorations and
2890         behaviour as on X11. Tried to fix #322516 but it seems very hard
2891         to make the trivial sample program there behave as expected. OTOH,
2892         simply moving the gtk_window_decorate() call in the #322516 sample
2893         program after the call to gtk_widget_show() helps...
2894             
2895         * gdk/win32/gdkwindow-win32.c (set_or_clear_style_bits): Revert to
2896         the correct semantics. Each call to gdk_window_set_decorations()
2897         which calls this function is supposed to affect all decorations.
2898
2899         (decorate_based_on_hints): New function, looks at both geometry
2900         hints and type hint and sets window decorations based on
2901         that. Consolidate code from gdk_window_set_geometry_hints() and
2902         gdk_window_set_type_hint() here.
2903
2904         (gdk_window_set_geometry_hints, gdk_window_set_type_hint): Call
2905         decorate_based_on_hints().
2906
2907 2005-11-25  Dom Lachowicz <cinamod@hotmail.com>
2908
2909         * modules/engines/ms-windows/*.[ch]: Merge with gtk-wimp's CVS.
2910         Includes improved menu icon spacing, [+]/[-] expander drawing,
2911         status-bar gippie drawing, and notebook tab drawing.
2912         
2913 2005-11-24  Michael Natterer  <mitch@imendio.com>
2914
2915         * gtk/gtktoolbar.h (struct _GtkToolbar): changed two private guint
2916         that used to hold signal handler IDs to two guint of padding.
2917
2918         * gtk/gtktoolbar.c (struct _GtkToolbarPrivate): added them as
2919         gulong here.
2920
2921         (gtk_toolbar_screen_changed): changed accordingly.
2922
2923 Wed Nov 23 18:55:47 2005  Tim Janik  <timj@imendio.com>
2924
2925         * gtk/gtkobject.[hc]: deprecated floating/sink API and implemented it
2926         in terms of the GObject floating/sink API.
2927
2928         * gtk/gtkaboutdialog.c:
2929         * gtk/gtkaction.c:
2930         * gtk/gtkcellview.c:
2931         * gtk/gtkclist.c:
2932         * gtk/gtkcolorsel.c:
2933         * gtk/gtkcombobox.c:
2934         * gtk/gtkfilechooserdefault.c:
2935         * gtk/gtkiconview.c:
2936         * gtk/gtkinvisible.c:
2937         * gtk/gtkitemfactory.c:
2938         * gtk/gtklayout.c:
2939         * gtk/gtkmenu.c:
2940         * gtk/gtkmenutoolbutton.c:
2941         * gtk/gtknotebook.c:
2942         * gtk/gtkprogress.c:
2943         * gtk/gtkrange.c:
2944         * gtk/gtkspinbutton.c:
2945         * gtk/gtkstatusicon.c:
2946         * gtk/gtktext.c:
2947         * gtk/gtktextview.c:
2948         * gtk/gtktoolbar.c:
2949         * gtk/gtktoolbutton.c:
2950         * gtk/gtktoolitem.c:
2951         * gtk/gtktreeitem.c:
2952         * gtk/gtktreeview.c:
2953         * gtk/gtktreeviewcolumn.c:
2954         * gtk/gtkuimanager.c:
2955         * gtk/gtkviewport.c:
2956         * gtk/gtkwidget.c:
2957         * gtk/gtkwindow.c:
2958         ported to use GObject's g_object_ref_sink().
2959
2960         * gtk/gtkcolorsel.c:
2961         * gtk/gtkfilechooserdefault.c:
2962         * gtk/gtkaboutdialog.c:
2963         fixed compiler warnings.
2964
2965 2005-11-23  Matthias Clasen  <mclasen@redhat.com>
2966
2967         * gtk/gtksettings.c (gtk_settings_class_init): Add some docs
2968         about gtk-color-scheme.
2969
2970 2005-11-23  Behdad Esfahbod  <behdad@gnome.org>
2971
2972         * configure.in (enable_explicit_deps): Fix typo when checking
2973         libtool config deplibs_check_method. Moreover, enable explicit
2974         deps if we get anything other than pass_all from libtool. (part of
2975         #318750)
2976
2977 2005-11-23  Matthias Clasen  <mclasen@redhat.com>
2978
2979         * gtk/updateiconcache.c (write_csource): Don't create a big
2980         string, since Visual C++ doesn't like strings longer than 64k. 
2981         (#322238, Kazuki IWAMOTO
2982
2983         * gtk/gtkentry.c: Include gtkimcontextsimple.h  (#322235,
2984         Kazuki IWAMOTO)
2985
2986 2005-11-23  Michael Natterer  <mitch@imendio.com>
2987
2988         * gtk/gtkrc.c (gtk_rc_reset_widgets): don't leak all toplevel
2989         windows on other screens (correctly remove all temporary
2990         references).
2991
2992 2005-11-23  Michael Natterer  <mitch@imendio.com>
2993
2994         Added symbolic themable colors. Patch is a merged version of
2995         proposals from Matthias and maemo-gtk. Fixes bug #114355.
2996
2997         * configure.in: require glib >= 2.9.1 for refcountable hashtables.
2998
2999         * gtk/gtksettings.c: added property "color-scheme" which is a
3000         string defining colors like "foreground:black\nbackground:grey".
3001         Automatically provide a name->GdkColor hash table mapping for the
3002         color scheme.
3003
3004         * gtk/gtkrc.[ch]: added list of color hashes that works like the
3005         list of icon factories. Append the color scheme hash from
3006         GtkSettings if it exists. Extended gtkrc syntax to allow defining
3007         and referencing of logical colors. Also allow to modulate colors
3008         in gtkrc by using arbitrary expressions of mix(), shade(),
3009         lighter() and darker(). Added internal function
3010         _gtk_rc_style_get_color_hashes().
3011
3012         * gtk/gtkstyle.[ch]: keep a private list of color hashes around.
3013         Get the list from _gtk_rc_style_get_color_hashes(). Export
3014         internal function _gtk_style_shade() (used by above color
3015         expressions). Added public API gtk_style_lookup_color() which
3016         looks up a logical color by name.
3017
3018         * gtk/gtk.symbols: add gtk_style_lookup_color
3019
3020         * tests/testgtkrc: use symbolic colors for making
3021         the scrollbars red.
3022
3023 2005-11-22  Michael Natterer  <mitch@imendio.com>
3024
3025         Made button-press timeouts which work like key repeat timeouts
3026         configurable. Addresses bug #142582:
3027
3028         * gtk/gtksettings.c: added properties "gtk-timeout-initial" and
3029         "gtk-timeout-repeat" which defalt to 200/20 (ms).
3030
3031         Use the values from GtkSettings instead of hardcoding them
3032         (the repeat value is either taken as-is for fast repeat or
3033         multiplied by 5 for slow repeat). Changed all places to use these
3034         two standard initial/repeat timings:
3035
3036         * gtk/gtkcalendar.c (unchanged 200/20)
3037         * gtk/gtknotebook.c (unchanged 200/100)
3038         * gtk/gtkpathbar.c (changed from 300/150 to 200/100)
3039         * gtk/gtkrange.c (changed from 250/100 to 200/100)
3040         * gtk/gtkspinbutton.c (unchanged 200/20)
3041
3042 2005-11-21  Anders Carlsson  <andersca@imendio.com>
3043
3044         * configure.in:
3045         * gtk/Makefile.am:
3046         * gdk/Makefile.am:
3047         * gdk/quartz/*:
3048         Add quartz backend.
3049         
3050         * docs/tools/Makefile.am:
3051         Only build docshooter when the X11 backend is used.
3052         
3053         * gtk/gtkplug-stub.c:
3054         Include gtkplug.h here.
3055         
3056         * gtk/gtksocket-stub.c:
3057         Include gtksocket.h here.
3058         
3059 2005-11-21  Matthias Clasen  <mclasen@redhat.com>
3060
3061         * gtk/gtkinputdialog.c: Convert GtkInputDialog to 
3062         g_type_class_add_private.
3063
3064         * gtk/gtksocket.c: Convert GtkSocket to g_type_class_add_private.
3065
3066         * gtk/gtkmenu.c: Convert GtkMenu to g_type_class_add_private.
3067
3068         * gtk/gtk.symbols:
3069         * gtk/gtkcombobox.[hc]: Add a tearoff-title property,
3070         with getter and setter.  (#316482, Olexiy Avramchenko)
3071
3072         * tests/testcombo.c (main): Test gtk_combo_box_set_title
3073
3074         * gtk/gtkpathbar.c: Merge remaining fixes from the 2.8 branch,
3075         pointed out by Michael Natterer.
3076
3077         Fix for bug #321542, Benedikt Meurer:
3078         
3079         * gtk/gtkcombobox.c (gtk_combo_box_set_active_internal):
3080         Emit notify::active.
3081         
3082         (gtk_combo_box_child_show, gtk_combo_box_child_hide): Use
3083         g_signal_emit, not g_signal_emit_by_name.
3084
3085 2005-11-18  Matthias Clasen  <mclasen@redhat.com>
3086
3087         Fix crashes in connection with pathbar scrolling (#321560,
3088         Bogdan Nicula)
3089         
3090         * gtk/gtkpathbar.c (gtk_path_bar_update_slider_buttons): 
3091         Stop scrolling when desensitising slider buttons.
3092         (gtk_path_bar_scroll_timeout, gtk_path_bar_slider_button_press): 
3093         And use it here.  
3094
3095         * gtk/gtkpathbar.h (struct _GtkPathBar): Add a separate
3096         scrolling_down flag.
3097
3098 2005-11-18  Matthias Clasen  <mclasen@redhat.com>
3099
3100         * gtk/gtkpathbar.c (button_clicked_cb): Fix a C99ism.
3101         (#321777, Jens Granseuer)
3102
3103         * gtk/gtkaction.c (disconnect_proxy): Disconnect the
3104         sync callback for the visibility property.  (#321761,
3105         Philip Langdale)
3106
3107         Turn off input methods in invisible entries, since
3108         they are confusing.  (#317002, James Su)
3109         
3110         * gtk/gtkentry.c (gtk_entry_set_visibility): Toggle input
3111         methods if visibility changes.
3112         (popup_targets_received): Don't show the input method
3113         menu if the entry is invisible.  
3114
3115 2005-11-17  Matthias Clasen  <mclasen@redhat.com>
3116
3117         * README.in: Add a note about range arrow sensitivity.
3118
3119         * perf/treeview.c: const correctness fixes
3120         found by Arjan van de Ven and gcc.
3121
3122 2005-11-16  Michael Natterer  <mitch@imendio.com>
3123
3124         * gtk/gtkimage.c (animation_timeout): call
3125         gtk_window_process_updates() so the animation keeps running even
3126         if the main loop is busy with sources that eat a lot of cpu with
3127         high priority. Fixes bug #321444.
3128
3129         (gtk_image_new_from_animation): document the fact that the
3130         animation will stop running if the main loop is busy with sources
3131         that have priorities higher than G_PRIORITY_DEFAULT.
3132
3133         * tests/testimage.c: added test case that shows an animation even
3134         though a cpu-eating idle function is running.
3135
3136 2005-11-16  Michael Natterer  <mitch@imendio.com>
3137
3138         * gdk/x11/gdkevents-x11.c (_gdk_events_uninit): new internal
3139         function which destroys the display's event source. Also removes
3140         the source from the global display_sources list and unrefs it.
3141
3142         * gdk/x11/gdkprivate-x11.h: declare the function.
3143
3144         * gdk/x11/gdkdisplay-x11.c (gdk_display_x11_dispose): call it
3145         instead of half-destroying the source here.
3146
3147 2005-11-15  Matthias Clasen  <mclasen@redhat.com>
3148
3149         * gtk/gtktreestore.c (gtk_tree_store_move): Fix a memory
3150         leak.  (#321032, Peter Zelezny)
3151
3152 2005-11-15  Michael Natterer  <mitch@imendio.com>
3153
3154         * gdk/x11/gdkdisplay-x11.c (gdk_display_x11_finalize): destroy
3155         display->xid_ht as late as possible (right before XCloseDisplay)
3156         because it still needs to be around when the display's screens are
3157         finalized. (#85715)
3158
3159 2005-11-14  Matthias Clasen  <mclasen@redhat.com>
3160
3161         * gtk/gtkselection.c (gtk_selection_data_set_uris): Don't
3162         leak result.  (#321441, Tommi Komulainen)
3163
3164 2005-11-14  Matthias Clasen  <mclasen@redhat.com>
3165
3166         * gtk/gtkicontheme.c (gtk_icon_theme_get_icon_sizes):
3167         Don't crash if there is no builtin icon.
3168
3169 2005-11-14  Michael Natterer  <mitch@imendio.com>
3170
3171         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_set_property):
3172         removed redundant calls to g_object_notify().
3173
3174 2005-11-13  Matthias Clasen  <mclasen@redhat.com>
3175
3176         * gdk/gdkcolor.c (gdk_color_parse): Documentation 
3177         improvements.  (#321338)
3178
3179         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Make
3180         limit an inclusive boundary.  (#321299)
3181
3182 2005-11-12  Michael Natterer  <mitch@imendio.com>
3183
3184         * gtk/Makefile.am: fixed icon rules so gtkbuiltincache.h is only
3185         rebuilt if needed.
3186
3187 2005-11-12  Dom Lachowicz <cinamod@hotmail.com>
3188
3189         * modules/engines/ms-windows/msw_style.c: Bug #313627. Make win32 
3190         theme's handling of toolbars, handleboxes, and menubars more in-line
3191         with Microsoft's IE style.
3192         * modules/engines/ms-windows/*.c: Indentation cleanups
3193         
3194 2005-11-12  Matthias Clasen  <mclasen@redhat.com>
3195
3196         Make builtin icons work in gtk_window_set_icon_name() 
3197         (#321046, Maxim Udushlivy)
3198
3199         * gtk/gtkicontheme.c (insert_theme): Always insert the default
3200         theme.
3201         (ensure_valid_themes): Call _gtk_icon_theme_ensure_builtin_cache()
3202         from here.
3203         (theme_lookup_icon, find_builtin_icon): ...and not from here.
3204         (gtk_icon_theme_lookup_icon): Remove an unncessary assert.
3205         (gtk_icon_theme_get_icon_sizes): Also check builtin icons.
3206
3207 2005-11-12  Tor Lillqvist  <tml@novell.com>
3208
3209         * gtk/gtkfilesystemwin32.c (filename_get_info): Don't hide
3210         dotfiles, no such convention on Win32. Just hide files with the
3211         hidden attribute. (#314627)
3212
3213 2005-11-11  Federico Mena Quintero  <federico@ximian.com>
3214
3215         * gtk/gtkfilechooserdefault.c (shortcuts_insert_path): Do not
3216         check whether the path is a folder.  It is useful to bookmark
3217         files as well (e.g. todo.txt), and this will also help
3218         performance.
3219         (shortcuts_add_bookmark_from_path): Likewise.
3220         (shortcuts_activate_iter): Change folders or select files, as
3221         appropriate.
3222
3223 2005-11-11  Federico Mena Quintero  <federico@ximian.com>
3224
3225         * tests/autotestfilechooser.c (main): Use
3226         g_log_set_default_handler() instead of explicitly setting a
3227         handler for each domain.
3228
3229         * gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): Only get
3230         the base path of the volume if it is mounted.
3231
3232 2005-11-11  Michael Natterer  <mitch@imendio.com>
3233
3234         Added per-stepper API for GtkRange's stepper sensitivity as
3235         discussed in bug #321056:
3236
3237         * gtk/gtkenums.h: added GtkSensitivityType which can be
3238         { AUTO, ON, OFF }.
3239
3240         * gtk/gtkrange.[ch]: added properties "lower-stepper-sensitivity"
3241         and "upper-stepper-sensitivity" and public getters/setters for
3242         them. Changed stepper drawing to honor the new properties.
3243
3244         * gtk/gtk.symbols: added the new symbols.
3245
3246 2005-11-10  Matthias Clasen  <mclasen@redhat.com>
3247
3248         * gtk/gtkcombobox.c: Add show-popup and hide-popup signals and
3249         emit them when the popup is shown or hidden.  (#162531, Tommi
3250         Komulainen)
3251
3252         * tests/testcombo.c: Add an example of popuplating a combobox
3253         on click.
3254
3255         * gtk/gtktreeview.c (gtk_tree_view_motion_resize_column): Another
3256         erroneous semicolon.
3257
3258         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get): Remove an erroneous
3259         semicolon. 
3260
3261         Don't corrupt odd keymaps (#316638, Kean Johnston)
3262         
3263         * gdk/x11/gdkkeys-x11.c (set_symbol): Auxiliary function to
3264         handle frobbing keymaps with odd numbers of syms/code.
3265         
3266         * gdk/x11/gdkkeys-x11.c (update_keymaps): Use set_symbol() to 
3267         frob the keymap.
3268
3269         Improve navigation to parent folders.  (#318444, Andrei Yurkevich)
3270         
3271         * gtk/gtkpathbar.[hc]: Add a child_path argument to
3272         the path_clicked signal.
3273         * gtk/gtkfilechooserdefault.c (path_bar_clicked): Select the
3274         child_path, if it is provided.
3275         * gtk/marshalers.list (path_bar_clicked): Add the necessary
3276         glue.
3277
3278         * gtk/gtkmenu.c: Fix some compiler warnings. (#321141,
3279         Kjartan Maraas)
3280         
3281         * gtk/gtk.symbols: 
3282         * gtk/gtktreeview.h: 
3283         * gtk/gtktreeview.c: Implement a getter for headers-clickable.
3284         (#163851, Richard Hult)
3285
3286 2005-11-10  Michael Natterer  <mitch@imendio.com>
3287
3288         Applied patch from maemo-gtk that addresses many issues wrt
3289         display migration and display closing (bug #85715).
3290
3291         * gdk/gdkdisplay.c (gdk_display_dispose): don't just set the
3292         default display to NULL when it's closed. Instead set the most
3293         recently opened display as new default (if one exists).
3294
3295         * gdk/gdkpango.c (on_renderer_display_closed): fixed signature
3296         of this callback.
3297
3298         * gdk/gdkscreen.c (gdk_screen_dispose): check if the GCs still
3299         exist before unrefing them.
3300
3301         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): if the screen
3302         is closed, allow destruction of the root window.
3303
3304         * gdk/x11/gdkdisplay-x11.c: moved some stuff from finalize() to
3305         dispose(), free stuff that was leaked before.
3306
3307         * gdk/x11/gdkevents-x11.c (_gdk_x11_events_uninit_screen): check if
3308         the xsettings_client still exists before destroying it.
3309
3310         * gdk/x11/gdkkeys-x11.c: added finalization and free the allocated
3311         X resources.
3312
3313         * gdk/x11/gdkpixmap-x11.c: moved stuff from finalize() to new
3314         dispose() implementation.
3315
3316         * gdk/x11/gdkscreen-x11.c: moved stuff from finalize() to
3317         dispose() and check if it still exists before unrefing it. Set
3318         their pointers to NULL/None *after* upchaining in dispose(),
3319         because X11 implementations of members of the parent class still
3320         need them for their own destruction.
3321
3322         * gdk/x11/gdkvisual-x11.c: removed finalize() implementation which
3323         was g_error()ing when finalizing a visual.
3324
3325         * gtk/gtkclipboard.c (gtk_clipboard_finalize): don't use
3326         get_clipboard_widget() because it would create the widget if it
3327         doesn't exist. Use g_object_get_data() directly instead.
3328
3329         * gtk/gtktextdisplay.c (on_renderer_display_closed): fixed signature
3330         of this callback.
3331
3332 2005-11-10  Simos Xenitellis  <simos@gnome.org>
3333
3334         * configure.in: Added Tatar (tt) to ALL_LINGUAS.
3335
3336 Wed Nov  9 16:29:42 2005  Tim Janik  <timj@imendio.com>
3337
3338         * gtk/gtkrange.c: patch from maemo-gtk that changes GtkRange
3339         to render its arrows insensitive when the adjustment is in
3340         its min or max position. this makes range arrow behaviour 
3341         consistent with spin button behaviour. (#321056)
3342
3343 2005-11-09  Tor Lillqvist  <tml@novell.com>
3344
3345         * gdk/gdkinternals.h
3346         * gdk/gdk.c (gdk_debug_keys[]): Add new GDK_DEBUG_DRAW flag to
3347         the GdkDebugFlag enum.
3348
3349         * gdk/win32/gdkdrawable-win32.c: Use DRAW to trigger GDK_NOTEs in
3350         this file instead of MISC. Now asking for MISC will give mainly
3351         window manipulation debugging output with the Win32 backend.
3352
3353 2005-11-09  Tor Lillqvist  <tml@novell.com>
3354
3355         * gdk/win32/gdkwindow-win32.c: Remove unnecessary includes.
3356
3357         (_gdk_win32_get_adjusted_client_rect): Remove this two-line
3358         function which was used only in one place.
3359
3360         (get_outer_rect): Use _gdk_win32_adjust_client_rect().
3361
3362         (gdk_window_set_geometry_hints): If we have identical minimum and
3363         maximum size hints, remove the resize and maximize
3364         decorations/functions. (#104514)
3365
3366         If we have a maximum size hint, remove the maximize
3367         decoration/function but ensure the resize decoration/function is
3368         available. Otherwise ensure both resize and maximize
3369         decorations/functions are there.
3370
3371         (set_or_clear_style_bits): Factored out common code from
3372         gdk_window_set_decorations() and gdk_window_set_functions(). 
3373
3374         Hack the window style setting once more: Only touch the window
3375         style bits corresponding to the GdkWMDecoration or GdkWMFunction
3376         parameter bitmasks. Hopefully this finally is the correct thing to
3377         do. We used to clear all other bits than those that were being
3378         set, or set all other bits than those that were being cleared.
3379
3380         Take into account that adding or removing decorations leaves the
3381         window's outer size unchanged, i.e., the client area's size and
3382         position change. This is apparently not what we want, so change
3383         also the window's (outer) position and size appropriately so that
3384         the client area's position and size stay constant.
3385
3386         gtk-demo's color selector dialog is now non-resizable like on X11
3387         (I tested with metacity in GNOME). Torn off menus are shrinkable
3388         vertically but have a maximum size, and are not maximizable or
3389         minimizable, like on X11.
3390
3391         (gdk_window_set_decorations, gdk_window_set_functions): Let
3392         set_or_clear_decorations() do most of the job.
3393
3394         * gdk/win32/gdkprivate-win32.h: Remove declaration of
3395         _gdk_win32_get_adjusted_client_rect().
3396
3397 2005-11-09  Tor Lillqvist  <tml@novell.com>
3398
3399         * gdk/win32/gdkwindow-win32.h (struct _GdkWindowImplWin32)
3400         * gdk/win32/gdkwindow-win32.c (gdk_window_impl_win32_init,
3401         gdk_window_get_type_hint, gdk_window_get_type_hint): Store the
3402         type hint. Implement gdk_window_get_type_hint() by just returning
3403         the hint stored.
3404
3405 2005-11-09  Tor Lillqvist  <tml@novell.com>
3406
3407         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
3408         Remove code that has been permanently ifdeffed out for two years.
3409
3410 2005-11-08  Matthias Clasen  <mclasen@redhat.com>
3411
3412         * gdk/gdkgc.c (gdk_gc_finalize): Unref tile and stipple when
3413         finalizing a gc.  (#320789, Nickolay V. Shmyrev)
3414
3415         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Ignore
3416         icons if they would make the request large enough to cause
3417         Xlib to loose the connection.  (#320909, Claudio Saavedra)
3418
3419 2005-11-08  Michael Natterer  <mitch@imendio.com>
3420
3421         * gdk/gdk.symbols
3422         * gdk/gdkwindow.h
3423         * gdk/x11/gdkwindow-x11.c: added gdk_window_get_type_hint() (patch
3424         extracted from maemo-gtk). Fixes bug #320872.
3425
3426 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
3427
3428         * gtk/gtkfilechooserdefault.c (shortcuts_reorder): Don't
3429         looks the bookmark label when reordering.  (#320720, Jeremy Cook)
3430
3431         * gtk/gtkpathbar.[hc]: Set focus-on-click to FALSE for all buttons.
3432         Don't grab focus when a slider button is pressed, instead, use
3433         a bit in the pathbar struct to determine whether to scroll up
3434         or down.  (#314486, Carlos Garnacho)
3435
3436         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): 
3437         Don't popup the completions if the focus has already been
3438         moved somewhere else.  (#319914, Christian Persch)
3439
3440         * gtk/gtktoolitem.c (_gtk_tool_item_toolbar_reconfigured): 
3441         Raise the drag_window after reconfiguring the 
3442         toolbar.  (#320803, Christian Persch)
3443
3444         * gtk/gtk.symbols: 
3445         * gtk/gtkfilechooserbutton.h: 
3446         * gtk/gtkfilechooserbutton.c: Add a focus-on-click property
3447         with setter and getter.  (#318945, Christian Persch)
3448         
3449 Mon Nov  7 16:15:16 2005  Tim Janik  <timj@imendio.com>
3450
3451         * configure.in: fixed missing $X_CFLAGS setup in case x11.pc is present.
3452
3453 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
3454
3455         * configure.in: Adjust to the stock icon changes.
3456         
3457 2005-11-07  Tor Lillqvist  <tml@novell.com>
3458
3459         * gdk/win32/gdkcursor-win32.c (pixbuf_to_hbitmaps_normal):
3460         Correct the calculation of maskstride. (#320152, Peter Zelezny)
3461         
3462 2005-11-06  Michael Natterer  <mitch@imendio.com>
3463
3464         * gtk/Makefile.am (icons): fixed rule to actually create the
3465         symlinks, erroring out if anything goes wrong.
3466
3467 2005-11-06  Tor Lillqvist  <tml@novell.com>
3468
3469         * gtk/updateiconcache.c (build_cache): Can't rename a file if the
3470         target exists on Win32. First rename the target temporarily, then
3471         if the renaming of the source to target fails, restore the
3472         original name for the target.
3473
3474         * gtk/Makefile.am: Use EXEEXT in the dependency on gtk-update-icon-cache.
3475
3476 2005-11-06  Tor Lillqvist  <tml@novell.com>
3477
3478         (pixbuf_to_hbitmaps_alpha_winxp): Use an 1-bit mask bitmap,
3479         like pixbuf_to_hbitmaps_normal().
3480         (_gdk_win32_pixbuf_to_hicon_supports_alpha): Check
3481         G_WIN32_IS_NT_BASED() first, so we can pretend being on Win9x by
3482         setting the G_WIN32_PRETEND_WIN9X environment variable.
3483         
3484 2005-11-06  Tor Lillqvist  <tml@novell.com>
3485
3486         Make icon masks work on Win98 (#320152, Peter Zelezny)
3487
3488         * gdk/win32/gdkcursor-win32.c (create_color_bitmap): Take also a
3489         parameter for the depth of the bitmap, so that this function can
3490         be used to create 1-bit bitmaps, too.
3491         (pixbuf_to_hbitmaps_normal): Create an 1-bit bitmap for the mask,
3492         and initialize it properly.
3493
3494 2005-11-04  Matthias Clasen  <mclasen@redhat.com>
3495
3496         Store builtin stock icons in an icon cache, instead of
3497         populating a hash table with pixbufs at startup, to save both
3498         memory and startup time.
3499
3500         * gtk/stock-icons/*: Reorganize the icons in a directory structure
3501         suitable for gtk-update-icon-cache, and rename them to match the
3502         stock ids.
3503
3504         * gtk/gtkiconcache.[hc]: Support non-mmapped icon caches, and
3505         add _gtk_icon_cache_has_icon_in_directory().
3506
3507         * gtk/updateiconcache.c: Support a --source <VARIABLE> argument
3508         to store the contents of the icon cache in a C header.
3509
3510         * gtk/gtkbuiltincache.h: Generated private header which contains 
3511         the icon cache for the builtin icons.
3512
3513         * gtk/gtkicontheme.c: Create a GtkIconCache for the builtin
3514         icons, and use that in addition to the hash table whenever
3515         builtin icons are searched.
3516
3517         * gtk/gtkiconfactory.c: Add GTK_ICON_SOURCE_STATIC_ICON_NAME and
3518         use it for static stock ids. 
3519         (get_default_icons): Don't add the builtin
3520         icons to the icon theme, just register the stock ids.
3521         (render_fallback_image): Take the fallback image out of the
3522         builtin icon cache.
3523         
3524         * gtk/Makefile.am: Remove stock-icons from SUBDIRS and add 
3525         the necessary machinery to rebuild gtkbuiltincache.h.
3526
3527 2005-11-04  Michael Natterer  <mitch@imendio.com>
3528
3529         * gtk/gtkrc.c (gtk_rc_reparse_all_for_settings): applied patch
3530         from maemo-gtk that changes the mtime check for rc files from
3531         '>' to '!=', otherwise theme changes go unnoticed when turning
3532         back the clock (Tommi Komulainen).
3533
3534 2005-11-04  Tor Lillqvist  <tml@novell.com>
3535
3536         * gtk/gtkstatusicon.c (gtk_status_icon_set_tooltip): Plug memory
3537         leak on Win32.
3538
3539 2005-11-03  Tor Lillqvist  <tml@novell.com>
3540
3541         * gdk/win32/gdkcursor-win32.c: As there is only one GdkDisplay in
3542         the Win32 backend, check that GdkDisplay* parameters are equal to
3543         _gdk_display instead of using the unnecessarily general
3544         GDK_IS_DISPLAY().
3545
3546         (pixbuf_to_hbitmaps_alpha_winxp): Rename the variables for the
3547         color bitmap to have "color" in their name, for similarity with
3548         pixbuf_to_hbitmaps_normal(). Create a color bitmap for the mask,
3549         too, instead of creating a b&w bitmap with CreateBitmap(). Set up
3550         the mask bitmap's contents, ones for those pixels in the color
3551         bitmap where the alpha is zero, zero for other pixels. We used to
3552         use an uninitialized mask bitmap! This meant that icons and
3553         cursors created presumably worked more or less by accident.
3554         Totally blank icons with zero alpha everywhere (as used by
3555         gtktrayicon.c) definitely did not work as expected.
3556
3557         * gtk/Makefile.am: Include gtkstatusicon.c on all platforms.
3558
3559         * gtk/gtkstatusicon.c: Implement for Win32. Use code from
3560         gtktrayicon-win32.c as applicable. (gtktrayicon-win32.c is not
3561         necessary and can be removed from CVS. It has never been mentioned
3562         in gtk/Makefile.am.) No tray icon widget, GtkImage or GtkTooltips
3563         are used on Win32. One label widget is used (but never shown) as
3564         gtk_widget_render_icon() needs a widget.
3565
3566         Ifdefs used as necessary in several places. It might be cleaner to
3567         split out the backend-specific parts to separate files, or at
3568         least collect them into separate blocks in the file.
3569
3570         (wndproc): New function. Window procedure to monitor mouse events
3571         in the system tray icon. Call gtk_status_icon_button_press() as
3572         needed.
3573         (create_tray_observer): New function. Creates a hidden window that
3574         only serves as a tray icon message observer.
3575
3576         * tests/teststatusicon.c (icon_activated): Position the dialog
3577         with GTK_WIN_POS_CENTER.
3578         (do_quit): New function, hide and unref the GtkStatusIcon, and
3579         call gtk_main_quit().
3580         (popup_menu): Add a Quit menu item that calls do_quit().
3581         
3582 2005-11-02  Tor Lillqvist  <tml@novell.com>
3583
3584         * gdk/win32/gdkcolor-win32.c
3585         * gdk/win32/gdkscreen-win32.c
3586         * gdk/win32/gdkwindow-win32.c: Whitespace consistency
3587         fixes. Remove superfluous test for GdkWindow* parameters being
3588         non-NULL. Testing GDK_IS_WINDOW() is enough. As there is only one
3589         GdkScreen and one GdkDisplay in the Win32 backend, use those
3590         variables instead of the getter functions. For GdkDisplay* and
3591         GdkScreen* parameters, check that they are equal to the
3592         corresponding singleton variables instead of the more general
3593         GDK_IS_DISPLAY() or GDK_IS_SCREEN().
3594
3595 2005-11-02  Matthias Clasen  <mclasen@redhat.com>
3596
3597         * gtk/gtktextview.c: Remove some g_return_if_fail() from
3598         static functions, replace some others by g_assert().
3599         
3600         * gtk/gtktextview.c (selection_motion_event_handler) 
3601         (gtk_text_view_start_selection_drag): Keep track of the original
3602         selection boundaries during a drag selection, in order to correctly
3603         decide when to extend or shrink the selection.  (#320167,
3604         reported by Arvind S N, patch by Paolo Borelli)
3605
3606         * gtk/gtktextbtree.c (_gtk_text_line_char_to_byte_offsets): 
3607         * gtk/gtktextiter.c (gtk_text_iter_backward_chars): Replace
3608         manual offset calculations by g_utf8_offset_to_pointer().
3609         (#320360, Paolo Borelli)
3610
3611 Tue Nov  1 16:18:24 2005  Tim Janik  <timj@imendio.com>
3612
3613         * gtk/gtkrbtree.[hc]: get rid of GAllocator usage, allocate and free 
3614         nodes via the g_slice_*() API.
3615         _gtk_rbtree_new(): fixed wrong node allocation via g_new().
3616
3617 2005-11-01  Tor Lillqvist  <tml@novell.com>
3618
3619         * gdk/win32/gdkprivate-win32.h
3620         * gdk/win32/gdkglobals-win32.c
3621         * gdk/win32/gdkmain-win32.c (_gdk_windowing_init): Add more
3622         pre-interned GdkAtoms and pre-registered clipboard formats. Sort
3623         their declarations, definitions and assignments into a more
3624         logical and consistent order.
3625
3626         * gdk/win32/gdkmain-win32.c (_gdk_win32_cf_to_string): Include the
3627         CF_ prefix for the predefined clipboard format names. Put quotes
3628         around registered format names to distinguish them.
3629         
3630         * gdk/win32/gdkproperty-win32.c (gdk_property_change): Return
3631         immediately with a warning if the property type is STRING, TEXT,
3632         COMPOUND_TEXT or SAVE_TARGETS, as these are X11-specific that we
3633         should never pretend to handle on Win32. Handle only UTF8_STRING
3634         here, other formats with delayed rendering. Use \uc1 instead of
3635         \uc0 when generating Rich Text Format for easier testability on
3636         XP, where WordPad misinterprets \uc0 encoded characters. Add more
3637         GDK_NOTE debugging output for Clipboard operations.
3638
3639         * gdk/win32/gdkselection-win32.c: Debugging printout improvements.
3640         (gdk_selection_convert): Don't pretent to handle STRING, just
3641         UTF8_STRING. Streamline error handling, don't unnecessarily have a
3642         GError which then isn't used for anything anyway if it gets set.
3643         (gdk_win32_selection_add_targets): Skip also STRING, TEXT,
3644         COMPOUND_TEXT and SAVE_TARGETS in addition to UTF8_STRING.
3645
3646         * config.h.win32.in: Sync with what configure produces.
3647
3648         * configure.in: Don't look for X_PACKAGES unless building for
3649         x11. (#313986, John Ehresman)
3650
3651 2005-10-28  Erdal Ronahi  <erdal.ronahi@gmail.com>
3652
3653         * configure.in: Added ku (Kurdish) to ALL_LINGUAS
3654                         Wondered why there was no ku there before??
3655
3656 2005-10-28  Matthias Clasen  <mclasen@redhat.com>
3657
3658         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): Add the popup
3659         window to the toplevels window group.  (#319912, Christian Persch)
3660
3661 2005-10-28  Kristian Rietveld  <kris@gtk.org>
3662
3663         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_deleted): fix
3664         stupid thinko.
3665
3666 2005-10-28  Matthias Clasen  <mclasen@redhat.com>
3667
3668         * gtk/gtkdnd.c (gtk_drag_get_cursor): Fix the anchor of the default
3669         drag cursors.  (#319200, Federico Mena Quintero)
3670
3671         * gtk/gtktreeview.c (gtk_tree_view_search_key_press_event): Handle
3672         Shift-G to go to the previous match, like firefox.  (#320061, Christian 
3673         Neumair)
3674
3675         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_build_level): Fix a
3676         C99ism.  (#320000, Kazuki Iwamoto)
3677
3678         * gtk/gtkaboutdialog.c (gtk_about_dialog_init): Add the little 
3679         stars.  (#319985, Bastien Nocera)
3680
3681         * gtk/gtktreeview.c (gtk_tree_view_search_entry_flush_timeout): Return
3682         FALSE, so we don't flush repeatedly.  (#319151, Alexander Larsson)
3683
3684 2005-10-26  Michael Natterer  <mitch@imendio.com>
3685
3686         Fix bug #319974:
3687
3688         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
3689         make sure that setting any of pixbuf/stock-id/icon-name resets the
3690         others because they are mutually exclusive, and that unsetting any
3691         of them only resets the pixbuf and nothing else. Also added
3692         some missing g_object_notify().
3693
3694         (gtk_cell_renderer_pixbuf_get_property): simplified calls to
3695         g_value_set_object().
3696
3697         (gtk_cell_renderer_pixbuf_create_stock_pixbuf)
3698         (gtk_cell_renderer_pixbuf_create_named_icon_pixbuf): added
3699         g_object_notify ("pixbuf").
3700
3701 2005-10-27  Matthias Clasen  <mclasen@redhat.com>
3702
3703         * gtk/gtktreeview.c (gtk_tree_view_button_press): Be more 
3704         careful about initializing cell_area.  (#319382, Tommi
3705         Komulainen)
3706
3707         * gtk/gtkcombobox.c (gtk_combo_box_key_press): Don't eat
3708         Ctrl-PageUp/PageDown.  (#318670, Christian Neumair)
3709
3710         * demos/gtk-demo/clipboard.c (paste_received): Only set the
3711         text if it is not NULL.  (#319930, Thomas Klausner)
3712
3713         * gtk/gtkselection.c (gtk_selection_data_get_pixbuf): Close the
3714         loader before trying to get the pixbuf.  (#319930, Thomas Klausner)
3715
3716 2005-10-26  Matthias Clasen  <mclasen@redhat.com>
3717
3718         * gtk/gtkfilesystem.c (gtk_file_system_module_load): 
3719         * gtk/gtkthemes.c (gtk_theme_engine_load): 
3720         * gtk/gtkimmodule.c (gtk_im_module_load): Use G_MODULE_BIND_LAZY
3721         when dlopening modules.  (#319557, Laszlo Peter)
3722
3723 2005-10-26  Matthias Clasen  <mclasen@redhat.com>
3724
3725         * gtk/gtktextbtree.c (gtk_text_btree_resolve_bidi): Only use text
3726         segments when determining text direction.  (#319065, Tommi Komulainen)
3727
3728         * gtk/gtktreeview.c (gtk_tree_view_destroy): Don't crash
3729         on duplicate destroy.  (#318953, Gustavo Carneiro)
3730
3731         * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_new_with_dialog): 
3732         Point out that destroy-with-parent is a bad idea for the dialog
3733         passed to this function.  (#318943, Christian Persch)
3734
3735         * */Makefile.am: use $(GLIB_MKENUMS) instead of 
3736         glib-mkenums.  (#318582, Damien Carbery)
3737
3738         * gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Clarify
3739         docs.  (#317682, Christian Neumair)
3740
3741         * gdk/x11/gdkdnd-x11.c: Remove an extra const which doesn't
3742         seem to affect the placement of the data in the readonly 
3743         section, and causes problems with some compilers.  (#317844)
3744
3745 2005-10-25  Matthias Clasen  <mclasen@redhat.com>
3746
3747         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
3748         Fix some issues with background drawing in RTL.  (#318781,
3749         Eric Cazeaux)
3750
3751         * tests/Makefile.am:
3752         * tests/testentrycompletion.c: Apply a patch by Christian
3753         Persch to add property editors.
3754
3755         * gtk/gtkstatusicon.c: Emit activate on single-click,
3756         not on double-click, change proposed by Milosz Derezynski.
3757
3758 2005-10-25  Kristian Rietveld  <kris@gtk.org>
3759
3760         Fixes #311955, reported by Markku Vire; and a lot more.
3761
3762         * gtk/gtktreemodelfilter.c: Made this thing work correctly.
3763         Levels can now have invisible nodes cached, functions have been
3764         rewritten/refactored to take this into account; also the logic in
3765         some functions has been corrected.
3766         
3767         Each referenced node now references all visible children or a single
3768         invisible child, in order to be able to monitor all changes in the
3769         child model required for correct operation.
3770
3771         When a virtual root is set, all nodes on the virtual root level are
3772         referenced.
3773
3774         At last, a bunch of random bug fixes and comment updates.
3775
3776 2005-10-25  Matthias Clasen  <mclasen@redhat.com>
3777
3778         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Add some
3779         more docs.  (#319722, Paolo Borelli)
3780
3781         * gdk/x11/gdkxftdefaults.c (init_xft_settings): Make the 
3782         initialization of screen_x11->xft_rgba more explicit.  (#319627,
3783         Bogdan Nicula)
3784
3785         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Fix whitespace
3786         in a blurb.  (#319499, Francisco Javier F. Serrador)
3787
3788 2005-10-24  Matthias Clasen  <mclasen@redhat.com>
3789
3790         Add settings to hide the input method and Unicode control character
3791         submenus in the context menus of GtkEntry and GtkTextView.  
3792         
3793         * gdk/x11/gdkevents-x11.c: Map GTK+ settings to X settings.
3794         
3795         * gtk/gtksettings.c (gtk_settings_class_init): Declare GTK+ settings here.
3796
3797         * gtk/gtktextview.c (popup_targets_received): 
3798         * gtk/gtkentry.c (popup_targets_received): Use the settings here.
3799
3800 2005-10-24  Kristian Rietveld  <kris@gtk.org>
3801
3802         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): emitting
3803         row-has-child-toggled when the level is not in the cache does not
3804         make sense.  (This bug probably crept in during the early stages
3805         of GtkTreeModelSort when there wasn't a correct row-has-child-toggled
3806         implementation yet),
3807         (gtk_tree_model_sort_real_unref_node): only get the child iter
3808         when we will actually also use it.
3809
3810 2005-10-22  Michael Natterer  <mitch@imendio.com>
3811
3812         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): check for the
3813         widget being realized, in addition to being visible, to avoid
3814         running into precondition check in gtk_tree_view_get_cell_area().
3815         (approved by Kris).
3816
3817 2005-10-22  Dom Lachowicz <cinamod@hotmail.com>
3818
3819         * modules/engines/ms-windows/msw_style.c (setup_msw_rc_style): 
3820         Experimentally, scrollbar steppers can shrink to 8 pixels on 
3821         Win32. Reflect that in the theme.
3822         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Experimentally,
3823         there is a 1-pixel border between a scrollbar and its child
3824         in ScrolledWindows on Win32. Reflect that in the theme.
3825         
3826 2005-10-20  Matthias Clasen  <mclasen@redhat.com>
3827
3828         * gtk/gtklabel.c (gtk_label_create_window): Use GDK_WINDOW_CHILD
3829         for the selection window.  (#318806, Alex Larsson)
3830
3831 2005-10-18  Federico Mena Quintero  <federico@ximian.com>
3832
3833         Fixes bug #317999:
3834
3835         * tests/autotestfilechooser.c
3836         (test_button_folder_states_for_action): Test that we have either
3837         $cwd or the explicitly-set folder.
3838         (test_reload_sequence): Likewise.
3839
3840         * gtk/gtkfilechooserdefault.c
3841         (gtk_file_chooser_default_get_current_folder): If our reload_state
3842         is RELOAD_EMPTY, return a GtkFilePath corresponding to $cwd.
3843
3844 2005-10-14  Tor Lillqvist  <tml@novell.com>
3845
3846         * gdk/win32/gdkdisplay-win32.c: Remove the clipboard viewer code.
3847         It didn't really do anything useful, and was just confusing and
3848         incomplete. Comments claimed we don't do delayed rendering, but in
3849         fact we do, for images. (The delayed rendering code has other
3850         problems, though, see #168173.) The clipboard viewer code was
3851         probably even buggy (the WM_CHANGECBCHAIN handled didn't propagate
3852         the message when necessary). It was just test code, it said so in
3853         a comment. Add something similar back later if necessary.
3854
3855         (_win32_on_clipboard_change,
3856         _gdk_win32_register_clipboard_notification): Remove.
3857
3858         (gdk_display_supports_selection_notification,
3859         gdk_display_request_selection_notification): Always just return
3860         FALSE. We didn't generate any GDK_OWNER_CHANGE events anywhere.
3861
3862 2005-10-13  Tor Lillqvist  <tml@novell.com>
3863
3864         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't treat
3865         Alt-Enter specially. It does not have any special meaning and
3866         should be passed on to the application. (#318378, Tim Evans)
3867
3868 2005-10-13  Tor Lillqvist  <tml@novell.com>
3869
3870         Set visual depth to 24 for 32 bits-per-pixel devices on
3871         Win32. This allows gdk_drawable_real_draw_pixbuf() to use the
3872         optimized composite_0888() function rather than the slower image
3873         dithering functions to draw pixbufs (#313993, John Ehresman)
3874
3875         * gdk/win32/gdkimage-win32.c (_gdk_win32_new_image): Use
3876         _gdk_windowing_get_bits_for_depth() to initialize
3877         GdkImage::bits_per_pixel.
3878         (_gdk_windowing_get_bits_for_depth): Return 32 bits for depth 24.
3879
3880         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use
3881         _gdk_windowing_get_bits_for_depth() to initialize
3882         BITMAPINFOHEADER::biBitCount.
3883
3884         * gdk/win32/gdkvisual-win32.c (_gdk_visual_init): Set
3885         GdkVisual::depth to 24 even if GetDeviceCaps(BITSPIXEL) returns
3886         32.
3887
3888 2005-10-12  Stefan Kost  <ensonic@users.sf.net>
3889
3890         * demos/gtk-demo/appwindow.c: (about_cb):
3891           use PACKAGE_VERSION,bump year (#318654)
3892
3893 2005-10-11  Matthias Clasen  <mclasen@redhat.com>
3894
3895         * gtk/gtktextbtree.c (_gtk_text_btree_delete): Try to match an off 
3896         toggle here with the matching on toggle if it immediately follows. 
3897         This is a common case, and handling it here prevents quadratic blowup 
3898         in cleanup_line() below.  (#317125)
3899
3900         * gtk/gtktextsegment.h: 
3901         * gtk/gtktextsegment.c (_gtk_char_segment_new_from_two_strings): Pass
3902         the character counts into this function instead of computing them
3903         again.
3904
3905 2005-10-10  Tommi Komulainen  <tommi.komulainen@iki.fi>
3906
3907         * gtk/gtkfilechooser.h (GtkFileChooserError): Add ALREADY_EXISTS error
3908         code.
3909         * gtk/gtkfilechooserdefault.c
3910         (gtk_file_chooser_default_add_shortcut_folder): Return an error code
3911         when the shortcut already exists in the sidebar.  (#147521)
3912
3913 2005-10-09  Matthias Clasen  <mclasen@redhat.com>
3914
3915         * tests/testcombo.c: Demonstrate how to use custom widgets in
3916         a GtkComboBox.  
3917
3918 2005-10-07  Federico Mena Quintero  <federico@ximian.com>
3919
3920         Fixes bug #317999:
3921
3922         * tests/autotestfilechooser.c (test_reload_sequence): Ensure that
3923         the the result of gtk_file_chooser_get_folder() is NULL or
3924         non-NULL at the right times.  Log the tests.
3925         (test_button_folder_states): New test for the initial states of
3926         the current folder in GtkFileChooserButton.
3927         (main): Test that the number of warnings/errors/critical errors is
3928         zero.
3929
3930         * gtk/gtkfilechooser.c (gtk_file_chooser_get_current_folder):
3931         Clarify the documentation on when this can return NULL.
3932         (gtk_file_chooser_get_current_folder_uri): Likewise.
3933
3934         * gtk/gtkfilechooserbutton.c (struct
3935         _GtkFileChooserButtonPrivate): Added a folder_has_been_set flag;
3936         we use it to keep track of whether a folder has been set.
3937         (gtk_file_chooser_button_map):  Implement.  If no folder has been
3938         loaded before, we at least try to load $cwd here.
3939         (gtk_file_chooser_button_constructor): If the construct-time
3940         dialog already has a folder set, turn on our folder_has_been_set
3941         flag.
3942         (dialog_current_folder_changed_cb): Turn on our
3943         folder_has_been_set flag.
3944
3945 2005-10-07  Michael Natterer  <mitch@gimp.org>
3946
3947         * gtk/gtkfilechooserdefault.c: remove some explicit #defines of
3948         PROFILE_FILE_CHOOSER because they break compilation after the
3949         removal of <unistd.h>.
3950
3951 2005-10-07   Matthias Clasen  <mclasen@redhat.com>
3952
3953         * gtk/gtkfilechooserdefault.c: Properly fix the unistd.h include
3954         by moving it out of the profiling ifdef.
3955
3956         * gtk/gtkfilechooserdefault.c: Remove a redundant (and
3957         unconditional) include of unistd.h  (#318211, Kazuki Iwamoto)
3958
3959         * gtk/gtktexttag.c (gtk_text_attributes_ref): Use
3960         g_return_val_if_fail(), not g_return_if_fail().  (#318412,
3961         Kazuki Iwamoto)
3962
3963 2005-10-06  Matthias Clasen  <mclasen@redhat.com> 
3964                 
3965         * gtk/gtk.symbols:
3966         * gtk/gtktextbuffer.h:
3967         * gtk/gtktextbuffer.c: Add a readonly has-selection property
3968         with a getter.  (#318161, Paolo Borelli)
3969
3970 2005-10-05  Matthias Clasen  <mclasen@redhat.com>
3971
3972         * README.in: Start collecting release notes for 2.10.
3973
3974         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Readd the memory
3975         leak fix, since the assertion failures were traced to 
3976         an xchat bug.  (#314696)
3977         
3978         * gtk/gtkstyle.c (gtk_style_detach):
3979         (gtk_style_attach):  Documentation improvements.
3980         (gtk_style_detach): Assert that the attach_count is > 0.
3981
3982 2005-10-04  Federico Mena Quintero  <federico@ximian.com>
3983
3984         * gtk/gtkfilechooserdefault.c (switch_to_shortcut): Take a
3985         shortcut position, not a ShortcutsIndex, to make the function more
3986         generic.
3987         (home_folder_handler): Pass the resolved index to
3988         switch_to_shortcut(), rather than just SHORTCUTS_HOME.
3989         (desktop_folder_handler): Likewise for SHORTCUTS_DESKTOP.
3990         (gtk_file_chooser_default_class_init): Add a "quick-bookmark"
3991         binding signal, and bind it to Alt-1, Alt-2. ..., Alt-0.  These
3992         make the respective key switch to the first, second, ..., tenth
3993         bookmark.
3994         (quick_bookmark_handler): Implement.
3995
3996 2005-10-04  Federico Mena Quintero  <federico@ximian.com>
3997
3998         * gtk/gtkpathbar.c (get_dir_name): Don't special-case Home and
3999         Desktop; just use their real names on the file system for the
4000         user-visible names.
4001
4002         * gtk/gtkfilechooserdefault.c
4003         (gtk_file_chooser_default_class_init): Add a "desktop-folder"
4004         binding signal, and bind it to M-d by default.
4005         (desktop_folder_handler): Implement the default handler.
4006         (home_folder_handler): Use a helper function.
4007         (switch_to_shortcut): New helper function.
4008         (shortcuts_append_home): Don't special-case the name of "Home";
4009         just use the folder name.
4010
4011 2005-10-04  Tor Lillqvist  <tml@novell.com>
4012
4013         * gtk/gtkcalendar.c (gtk_calendar_init): Make it compile without
4014         HAVE__NL_TIME_FIRST_WEEKDAY. (#317910, Mathias Hasselmann)
4015
4016 2005-10-04  Matthias Clasen  <mclasen@redhat.com>
4017
4018         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Revert the change
4019         from yesterday, since it leads to assertion failures.  (#317879,
4020         Sebastian Bacher)
4021
4022 2005-10-03  Matthias Clasen  <mclasen@redhat.com>
4023
4024         * gtk/gtkcalendar.c (gtk_calendar_init): Call 
4025         calendar_compute_days() after setting priv->week_start.
4026
4027 2005-10-03  Matthias Clasen  <mclasen@redhat.com>
4028
4029         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Unref the style when
4030         removing it from the hash table.  (#314696, Benjamin Berg)
4031
4032 2005-10-01  Tor Lillqvist  <tml@novell.com>
4033
4034         * gdk/win32/gdkdrawable-win32.c (blit_from_pixmap): In case
4035         BitBlt() fails with ERROR_INVALID_HANDLE, the most probable cause
4036         is that the the desktop isn't visible because the session has been
4037         switched, the screen is locked, or a terminal server session
4038         disconnected, so no error message necessary. (#137796)
4039
4040         It is of course remotely possible that BitBlt() failing with
4041         ERROR_INVALID_HANDLE might also be caused by some other
4042         problem. We could strive for perfection and track whether the
4043         desktop is visible by using WTSRegisterSessionNotification() and
4044         handling WM_WTSESSION_CHANGE. I think that's overdoing it just for
4045         this issue, though. If we would track desktop visibility, we
4046         should then avoid even trying to update the display at all while
4047         the desktop isn't visible.
4048
4049 2005-09-30  Matthias Clasen  <mclasen@redhat.com>
4050
4051         * gtk/gtkcalendar.c (gtk_calendar_init): Another attempt
4052         to correct the calculations for the first week day. We may
4053         just have to remove this code if too many locales turn out 
4054         to have broken data. 
4055
4056         * gtk/gtkimage.c (gtk_image_expose): Don't leak pixbuf in
4057         some cases.  (#317611, Tommi Komulainen)
4058
4059         * gtk/gtksocket-x11.c (_gtk_socket_windowing_size_request):
4060         Prevent overflow when storing size hints in an unsigned
4061         short variable. Tracked down by Ray Strode and Søren Sandmann.
4062
4063 2005-09-29  Matthias Clasen  <mclasen@redhat.com>
4064
4065         * gtk/gtkbutton.c (gtk_button_set_image): Check arguments.  (#317491,
4066         Paolo Borelli)
4067
4068         * gtk/gtkpaned.c (gtk_paned_grab_notify): Stop drags when being
4069         grab shadowed.  (#317332)
4070
4071 2005-09-29  Tor Lillqvist  <tml@novell.com>
4072
4073         * gtk-zip.sh.in: DLLs are always in bin nowadays, no need to test.
4074
4075 2005-09-28  Federico Mena Quintero  <federico@ximian.com>
4076
4077         * tests/autotestfilechooser.c (test_reload_sequence): Oops, return
4078         if the unmap test fails.
4079         (test_reload_sequence): Use gtk_widget_show_now() instead of
4080         gtk_widget_show() for the dialog.
4081         Thanks to Tim Janik for noticing these.
4082
4083 2005-09-28  Federico Mena Quintero  <federico@ximian.com>
4084
4085         * tests/testcellrenderertext.c: New file with a set of tests for
4086         GtkCellRendererText.  The idea is to run a text renderer through
4087         most of its interesting property values to see that it works
4088         correctly.
4089
4090         * tests/Makefile.am: Added testcellrenderertext.
4091
4092         * gtk/gtkfilechooserdefault.c (load_set_model): Mark the
4093         entry/exit of this function for profiling.
4094         (gtk_file_chooser_default_style_set): Mark the start/end of the
4095         calls to the parent class and the the signal emission for profiling.
4096
4097 2005-09-29  Tor Lillqvist  <tml@novell.com>
4098
4099         * gtk/gtkmain.c (_gtk_get_localedir): The locale directory is
4100         passed to bindtextdomain() which isn't UTF-8-aware, so convert to
4101         system codepage using g_win32_locale_filename_from_utf8().
4102         (#317457, Kazuki Iwamoto)
4103
4104 2005-09-28  Matthias Clasen  <mclasen@redhat.com>
4105
4106         * gtk/gtkselection.c (_gtk_selection_request): Free mult_atoms 
4107         here. (#317039, Paolo Borelli)
4108
4109         * gtk/gtktexttag.h: 
4110         * gtk/gtktexttag.c (gtk_text_attributes_ref): Return the attributes
4111         to make this function work as boxed copy function.  (#317455,
4112         Gustavo Carneiro)
4113
4114         * gtk/gtkclipboard.c (request_image_received_func): Don't unref
4115         NULL.  (#316828, Tor Lillqvist)
4116
4117 2005-09-28  Tor Lillqvist  <tml@novell.com>
4118
4119         * modules/input/imime.c: Include <config.h>. (#317444, Kazuki
4120         Iwamoto)
4121
4122 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
4123
4124         Don't reload the current folder unnecessarily on ::map().
4125
4126         * gtk/gtkfilechooserprivate.h (ReloadState): New enum to represent
4127         the reloading state.
4128         (struct _GtkFileChooserDefault): Added a "reload_state" field.
4129
4130         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init):
4131         Initialize impl->reload_state.
4132         (gtk_file_chooser_default_map): Check the impl->reload_state; load
4133         a default folder if no folder has been set, or reload the current
4134         one only if we had been unmapped first.
4135         (gtk_file_chooser_default_update_current_folder): Set the
4136         reload_state to RELOAD_HAS_FOLDER.
4137         (gtk_file_chooser_default_unmap): Implement, and set the
4138         reload_state to RELOAD_WAS_UNMAPPED.
4139         (shortcuts_model_create): Don't call shortcuts_add_bookmarks()
4140         here; they'll get (re)loaded on ::map() anyway.
4141
4142         * gtk/gtkfilechooserwidget.c
4143         (gtk_file_chooser_widget_constructor): Don't set a default folder here.
4144
4145         * tests/autotestfilechooser.c (test_action_widgets): Don't take in
4146         a dialog; build it ourselves.
4147         (test_reload): New test to ensure that we don't load the default
4148         folder more than once, and that we reload it when
4149         unmapping/remapping.
4150         (get_impl_from_dialog): New utility function.
4151         (test_widgets_for_current_action): Use get_impl_from_dialog().
4152
4153 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
4154
4155         * gtk/gtkfilechooserdefault.c
4156         (gtk_file_chooser_default_constructor): Mark the entry/exit of
4157         this function for profiling.
4158         (check_icon_theme): Likewise.
4159         (change_icon_theme): Likewise.
4160         (settings_notify_cb): Likewise.
4161         (gtk_file_chooser_default_screen_changed): Likewise.
4162         (update_chooser_entry): If the selection is empty, clear the file
4163         name entry only if we are in CREATE_FOLDER mode.  In SAVE mode,
4164         nothing will be selected when the user starts typeahead in the
4165         treeview, and we don't want to clear the file name entry in that
4166         case --- the user could be typing-ahead to look for a folder name.
4167         Fixes bug #308332, patch by Jürg Billeter.
4168
4169 2005-09-27  Matthias Clasen  <mclasen@redhat.com>
4170
4171         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
4172         Pop below the entry if there's more free space below the entry
4173         than above.  (#316948, Tommi Komulainen)
4174
4175 2005-09-26  Federico Mena Quintero  <federico@ximian.com>
4176
4177         Do not create the save mode-specific widgets in the open modes, so
4178         that we don't carry their baggage around.
4179
4180         * gtk/gtkfilechooserdefault.c
4181         (gtk_file_chooser_default_constructor): Don't create the
4182         save_widgets here.
4183         (save_widgets_create): Set the impl->save_widgets directly here,
4184         instead of passing the widgets back to the caller.  Also, pack
4185         them into the impl's box.
4186         (update_appearance): Create or destroy the save widgets as
4187         appropriate.  Set the action of the save_file_name_entry here.
4188         (shortcuts_add_current_folder): Set the active item in the
4189         save_folder_combo only if it exists.
4190         (gtk_file_chooser_default_set_property): Don't set the action of
4191         the save_file_name_entry here.
4192         (gtk_file_chooser_default_update_current_folder): Set the base
4193         folder of the save_file_name_entry only if the entry exists.
4194         (shortcuts_drag_data_received_cb): Cast the selection_data->data
4195         to (const char *) since that's what shortcuts_drop_uris() expects.
4196         (file_list_drag_data_received_cb): Likewise, for
4197         g_uri_list_extract_uris().
4198
4199 2005-09-26  Tor Lillqvist  <tml@novell.com>
4200
4201         * gdk/win32/gdkwindow-win32.c (gdk_window_shape_combine_mask): Set
4202         the shaped flag here, too. (#316871)
4203         (gdk_window_shape_combine_region): Currently unimplemented, so
4204         don't do anything to the shaped flag here.
4205
4206 2005-09-26  Matthias Clasen  <mclasen@redhat.com>
4207
4208         Fix #316871, reported by Dan Winship:
4209         
4210         * gdk/gdkwindow.h (struct _GdkWindowObject): Add a shaped flag.
4211
4212         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_mask) 
4213         (gdk_window_shape_combine_region): Set it here.
4214
4215         * gdk/gdkwindow.c (gdk_window_invalidate_maybe_recurse): Don't
4216         remove the child area for shaped windows.
4217
4218 2005-09-23  Matthias Clasen  <mclasen@redhat.com>
4219
4220         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_finalize):
4221         Don't leak expander pixbufs.  (#316946, Tommi Komulainen)
4222
4223 2005-09-22  Michael Natterer  <mitch@imendio.com>
4224
4225         Renamed GtkCellRendererKeys to GtkCellRendererAccel to be
4226         consistent with GTK+ terminology:
4227
4228         * gtk/gtkcellrendererkeys.[ch]
4229         * tests/testkeys.c: removed...
4230
4231         * gtk/gtkcellrendereraccel.[ch]
4232         * tests/testaccel.c: ...and added.
4233
4234         * gtk/Makefile.am
4235         * gtk/gtk.h
4236         * gtk/gtk.symbols
4237         * tests/Makefile.am: changed accordingly.
4238
4239 2005-09-22  Matthias Clasen  <mclasen@redhat.com>
4240
4241         * gtk/gtkwidget.c (gtk_widget_class_init): Fix the documentation
4242         for the grab-broken-event signal, noticed by Damon Chaplin.
4243
4244 2005-09-21  Tor Lillqvist  <tml@novell.com>
4245
4246         * gdk/win32/gdkselection-win32.c (gdk_selection_convert,
4247         gdk_text_property_to_text_list_for_display,
4248         gdk_text_property_to_utf8_list_for_display,
4249         gdk_win32_selection_add_targets,
4250         _gdk_win32_selection_convert_to_dib): Free return value from
4251         gdk_atom_name().
4252         (gdk_text_property_to_text_list_for_display): Drop GError variable
4253         that isn't actually used after being set.
4254
4255 2005-09-20  Johan Dahlin  <jdahlin@async.com.br>
4256
4257         * gtk/gtkentry.c (gtk_entry_set_completion): Mention NULL in 
4258         documentation.
4259
4260 2005-09-20  Tor Lillqvist  <tml@novell.com>
4261
4262         * gdk/win32/gdkselection-win32.c
4263         (gdk_selection_owner_get_for_display): Do return the correct owner
4264         for CLIPBOARD (i.e., the owner of the Windows Clipboard, if it is
4265         a window GDK knows about). The reason to return NULL seems to have
4266         gone when in the fix for bug #163702 the artificial
4267         GDK_SELECTION_CLEAR event generation was removed from
4268         gdk_selection_send_notify_for_display(). Fixes bug #316552.
4269
4270 2005-09-20  Matthias Clasen  <mclasen@redhat.com>
4271
4272         Avoid unnecessary XkbGetState() calls and XkbStateNotify
4273         events.  (#151555, Søren Sandmann)
4274
4275         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Use 
4276         XkbSelectEventDetails() to select XkbStateNotify events
4277         for only the state we care about.
4278
4279         * gdk/x11/gdkprivate-x11.h:
4280         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_state_changed): Pass
4281         the event into the function and update the keymap state from
4282         the state information contained in the event. Adjust all callers.
4283         
4284 2005-09-19  Matthias Clasen  <mclasen@redhat.com>
4285
4286         * gtk/gtkiconview.c: Use g_list_nth_data() instead of g_list_nth()->data
4287         in multiple places to avoid segfaults if the index is out of range.  
4288         (#316422, Guillaume Cottenceau)
4289         (gtk_icon_view_set_drag_dest_item): 
4290         (gtk_icon_view_scroll_to_path): Fix a typo in the docs.  (#316419,
4291         #316424, Guillaume Cottenceau)
4292
4293 2005-09-18  Hans Breuer  <hans@breuer.org>
4294
4295         * gtk/gtktrayicon-win32.c : now handling events by hard-coded 
4296         g_signal_emit_by_name() - will break when gtkstatusicon.c changes.
4297
4298 2005-09-18  Hans Breuer  <hans@breuer.org>
4299
4300         * gdk/gdk.symbols gdk/win32/gdkwin32.h gdk/win32/gdkcursorwin32.c : export
4301         _gdk_win32_pixbuf_to_hicon() as gdk_win32_pixbuf_to_hicon_libgtk_only()
4302         * gtk/gtktrayicon-win32.c : a lot of debug spew but it has started to show
4303         the icon and is blinking with teststatusicon. More to come ...
4304
4305 2005-09-18  Hans Breuer  <hans@breuer.org>
4306
4307         * gtk/makefile.msc.in : fix typo for GTK_VER; define HAVE_CONFIG_H
4308         cause gtkprogressbar.c has #include <config.h> conditionally; less
4309         noise from generated gtk.def
4310         * gtk/stock-icons/makefile.msc gdk/makefile.msc tests/makefile.msc : updated
4311         
4312         * gtk/gtktrayicon-win32.c : dummy implmentation to make gtk compile.
4313         For me it works as well as the *NIX implemenation, that is not at all.
4314
4315         * gdk/win32/gdkproperty-win32.c : implement gdk_atom_intern_static_string()
4316
4317         * gdk/win32/gdkwindow-win32.c(gdk_window_set_urgency_hint) : only use
4318         only use (WINVER >= 0x0500) when available from the SDK. Otherwise fall
4319         back to true dynamic linking of FlashWindowEx. Makes gtk+ work on NT4.0
4320         again - if compiled properly.
4321
4322         * tests/teststatusicon.c : don't use GNOME icons for testing, but icons
4323         already coming with Gtk+. Makes it compile on win32.
4324
4325 2005-09-18  Guilherme de S. Pastore  <gpastore@cvs.gnome.org>
4326
4327         * README.cvs-commits: fixed some tiny typos
4328
4329 2005-09-16  Tor Lillqvist  <tml@novell.com>
4330
4331         * modules/engines/ms-windows/msw_style.c (draw_extension,
4332         draw_box_gap): Check whether the widget actually is a GtkNotebook
4333         before treating it as such. Drop some unneeded local variables,
4334         use parameter with same information instead. (#316412)
4335
4336 2005-09-15  Federico Mena Quintero  <federico@ximian.com>
4337
4338         * tests/autotestfilechooser.c: Start a set of automated tests for
4339         the file chooser.  The only test in there right now doesn't pass
4340         yet.  It specifies the intended behavior of the first optimization
4341         of a series which I'll do on the file chooser (see
4342         http://primates.ximian.com/~federico/news-2005-09.html#14 for the
4343         details of this optimization).
4344
4345         * tests/Makefile.am: Added autotestfilechooser.c.
4346
4347         * gtk/gtkfilechooserprivate.h (struct
4348         _GtkFileChooserDialogPrivate): Move all the file chooser's private
4349         structures to here, so that they can be accessed by
4350         tests/autotestfilechooser.c:  _GtkFileChooserDialogPrivate,
4351         _GtkFileChooserWidgetPrivate, LoadState, _GtkFileChooserDefault.
4352
4353         * gtk/gtkfilechooserdialog.c: See above.
4354
4355         * gtk/gtkfilechooserwidget.c: See above.
4356
4357         * gtk/gtkfilechooserdefault.c: See above.
4358
4359 Thu Sep 15 15:27:55 2005  Tim Janik  <timj@imendio.com>
4360
4361         * gtk/gtkwindow.c: 
4362         gtk_window_map_event(): new function to work around lost unmap requests.
4363         fixes bug #316180.
4364
4365 2005-09-14  Federico Mena Quintero  <federico@ximian.com>
4366
4367         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): Add
4368         an easy-to-find profiling marker when starting to create a file
4369         chooser.
4370         (browse_files_model_finished_loading_cb): Likewise, for when the
4371         chooser is finished loading.
4372
4373 2005-09-14  Tristan Van Berkom <tvb@cvs.gnome.org>
4374
4375         * gtk/gtkcolorbutton.c: Check "color" argument in 
4376         gtk_color_button_set_color ()
4377
4378 2005-09-14  Matthias Clasen  <mclasen@redhat.com>
4379
4380         * gtk/gtklabel.c (gtk_label_get_type): 
4381         * gtk/gtkbutton.c (gtk_button_get_type): 
4382         * gtk/gtkwindow.c (gtk_window_group_get_type): No point in 
4383         using a mem chunk for window groups, buttons, labels.
4384
4385         * gtk/updateiconcache.c (foreach_remove_func): Fix
4386         a use-after-free bug.  (#316256, Alexander Nedotsukov)
4387
4388 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
4389
4390         * gtk/*.c: Various cleanups.  (#315360, Kjartan Maraas)
4391
4392         * gdk/*.c: Various cleanups.  (#315359, Kjartan Maraas)
4393         
4394 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
4395
4396         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
4397         Let GDK_Return pass through in some more cases.
4398
4399         * gtk/gtkentry.c (gtk_entry_key_press): Reset the im context before
4400         activating the entry. 
4401
4402         * gtk/gtkiconview.c (gtk_icon_view_class_init):
4403         (gtk_icon_view_get_dest_item_at_pos):  Fix typos in the 
4404         docs.  (#316008, #316027, #316121, Guillaume Cottenceau)
4405
4406         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Add some docs.
4407         (#316001, Guillaume Cottenceau)
4408
4409         * gtk/gtkdnd.c (gtk_drag_set_icon_name): Fix a copy-and-paste
4410         mistake in the docs.  (#315993, Guillaume Cottenceau)
4411
4412         * tests/testentrycompletion.c (create_simple_completion_model): Add
4413         some strings containing multibyte characters.
4414
4415         * gtk/gtkentrycompletion.c (gtk_entry_completion_real_insert_prefix): 
4416         Fix prefix insertion for multibyte characters.  (#316095,
4417         Tommi Komulainen)
4418
4419         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): 
4420         * gtk/gtkiconview.c (gtk_icon_view_create_drag_icon): Silently
4421         return NULL if the widget is not realized.  (#316023,
4422         Guillaume Cottenceau)
4423
4424 2005-09-11  Matthias Clasen  <mclasen@redhat.com>
4425
4426         * gdk/gdk.symbols: 
4427         * gdk/gdkproperty.h: 
4428         * gdk/x11/gdkproperty-x11.c (gdk_atom_intern_static_string): 
4429         New function to avoid pointless strdups when creating atoms
4430         from static strings.  
4431
4432         * gdk/x11/*.c:
4433         * gtk/*.c:  Use gdk_atom_intern_static_string() where 
4434         appropriate.
4435
4436 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
4437
4438         * gtk/gtkcellrendererkeys.h: 
4439         * gtk/gtkcellrendererkeys.c: Add a cell renderer for displaying
4440         and editing accelerators, a port of EggCellRendererKeys .
4441
4442         * gtk/gtk.symbols:
4443         * gtk/gtk.h:
4444         * gtk/Makefile.am: Add the keys cell renderer.
4445
4446         * tests/Makefile.am: 
4447         * tests/testkeys.c: Test GtkCellRendererKeys
4448
4449 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
4450
4451         Make it possible to determine if a key event is for a
4452         modifier key:
4453         
4454         * gdk/x11/gdkprivate-x11.h: 
4455         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_key_is_modifier): 
4456         New function to determine if a keycode is mapped to a modifier.
4457         (get_xkb): Get the modmap.
4458
4459         * gdk/x11/gdkevents-x11.c (translate_key_event): Set the 
4460         is_modifier bit by calling _gdk_keymap_key_is_modifier().
4461
4462         * gdk/gdkevents.h (struct _GdkEventKey): Add an is_modifier
4463         bit.
4464
4465 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
4466
4467         * gdk/gdkpixbuf-drawable.c (convert_real_slow): Remove an 
4468         unused variable, noticed by Kjartan Maraas.
4469
4470 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
4471
4472         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event): 
4473         Make drag reordering work properly for columns other than the
4474         first.  (#315054, Dan Winship)
4475         
4476         * gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Handle 
4477         invalid fontnames better. (#136926, Michael R. Walton)
4478         
4479         Stop cursor blinking in non-editable regions of a text view.
4480         (#311508, Torbjörn Andersson)
4481         
4482         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): 
4483         (cursor_blinks): Take editability into account when deciding
4484         whether the cursor blinks.
4485         (gtk_text_view_button_release_event): 
4486         (gtk_text_view_move_cursor_internal): Update cursor blinking here.
4487
4488         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_start_editing): 
4489         Use connect_after to connect to the focus_out event. This
4490         ensures that the entry has already stopped blinking by the time
4491         we emit the edited signal.  (#315229, Thomas Leonard)
4492
4493         * tests/testgtk.c: Use GDK_MOD1_MASK, not GDK_ALT_MASK.
4494
4495         * gtk/gtkwindow.c (gtk_window_parse_geometry): Don't set
4496         unsigned ints to -1.  (#315481, Kjartan Maraas)
4497
4498         * gtk/gtkcalendar.c (gtk_calendar_init): first_weekday is relative
4499         to week_1stday, not to Sunday. Gotta love the ISO 14652 guys...
4500         (#314473, Stanislav Brabec)
4501
4502 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
4503
4504         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Document
4505         memory handling.  (#314975, Torsten Schoenfeld)
4506
4507         * gtk/gtkiconview.c (gtk_icon_view_class_init): 
4508         * gtk/gtkfilesel.c (gtk_file_selection_class_init): 
4509         * gtk/gtkcombobox.c (gtk_combo_box_class_init): 
4510         * gtk/gtklabel.c (gtk_label_class_init): 
4511         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): 
4512         Stylistic improvements and clarifications for some blurbs. 
4513         (#315520, Clytie Siddall)
4514
4515 2005-09-09  Tor Lillqvist  <tml@novell.com>
4516
4517         * gdk/win32/gdkdisplay-win32.c (gdk_display_get_name): Cache the
4518         display name. There is only one GdkDisplay on Win32, and
4519         constructing the display name isn't entirely trivial, so cacheing
4520         is probably worth it. For instance GIMP calls this function a lot.
4521         (gdk_display_open): Call gdk_display_get_name() to prime the
4522         cached name.
4523         (gdk_display_get_n_screens, gdk_display_get_screen,
4524         gdk_display_get_default_screen): Verify parameter correctness like
4525         the X11 backend does.
4526
4527         * gdk/win32/gdkscreen-win32.c (gdk_screen_make_display_name):
4528         Return a freshly allocated string, as the API specifies. Fixes a
4529         heap corruption problem that caused random errors and crashes in
4530         GIMP, for instance.
4531
4532 2005-09-07  Matthias Clasen  <mclasen@redhat.com>
4533
4534         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
4535         Make C-u commit and restart hex input if we are already in a
4536         hex sequence.
4537
4538 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
4539
4540         * gdk/x11/gdkkeys-x11.c (update_modmap): Make the modmap reflexive.
4541         (_gdk_keymap_add_virtual_modifiers): Don't add both Alt and Meta
4542         if they are mapped to the same modifier.
4543
4544         * gtk/Makefile.am: Rename gtkstatusicon-x11.c and gtktrayicon.c
4545         to gtkstatusicon.c and gtktrayicon-x11.c
4546
4547         * gtk/gtkaccelgroup.c: Include Super, Hyper and Meta in the
4548         default accel mod mask.
4549
4550         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): 
4551         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
4552         Don't use GDK_ALT_MASK.
4553
4554         * gdk/gdktypes.h: No need to introduce GDK_ALT_MASK
4555
4556 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
4557
4558         Add support for extra virtual modifiers:  (#85780, Owen Taylor)
4559         
4560         * tests/testgtk.c (create_key_lookup): Add tests for extra virtual
4561         modifiers.
4562
4563         * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Try to match both against
4564         Mod2 - Mod5 and against Super, Hyper, Meta.
4565
4566         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
4567         * gtk/gtkaccelgroup.c (gtk_accelerator_parse) 
4568         (gtk_accelerator_name): Support Super, Hyper Meta and Mod2 - Mod5.
4569
4570         * gdk/x11/gdkkeys-x11.c (struct _GdkKeymapX11): Add a 
4571         modmap to maintain the information which X modifiers map to
4572         virtual modifiers.
4573         (get_xkb): Set up the modmap from the XKB tables.
4574         (update_keymaps): Set up the modmap from the information returned
4575         by XGetModifierMapping in the non-XKB case.
4576
4577         * gdk/x11/gdkprivate-x11.h: 
4578         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_add_virtual_modifiers): New 
4579         function to set the virtual modifiers in the state.
4580
4581         * gdk/x11/gdkevents-x11.c (translate_key_event): Call 
4582         _gdk_keymap_add_virtual_modifiers here.
4583
4584         * gdk/gdktypes.h (GdkModifierType): Add bits for virtual Super, 
4585         Hyper and Meta modifiers. Also add GDK_ALT_MASK as an alias
4586         for GDK_MOD1_MASK.
4587
4588 2005-09-05  Matthias Clasen  <mclasen@redhat.com>
4589
4590         * gtk/gtkaction.c (connect_proxy): Set the label of a button
4591         if it has no child.  (#315253, John Finlay)
4592
4593 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
4594
4595         * gtkimcontextsimple.h: Add a modifiers_dropped bit
4596
4597 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
4598
4599         * gtk/gtkentry.c (gtk_entry_destroy): Disconnect idle handlers
4600         on destroy to avoid problems when they are called on a destroyed
4601         widget.  (#315135, John Cupitt)
4602         
4603         * gtk/gtkentry.c (gtk_entry_class_init):
4604         * gtk/gtktextview.c (gtk_text_view_class_init): Add bindings
4605         for Ctrl-Shift-A to unselect all.  (#309301, Kathy Fernandes)
4606
4607         * gtk/gtkimcontextsimple.c: Rework the Unicode hex input
4608         code. Now we only steal a single key combination, Ctrl-Shift-U,
4609         instead of sixteen. 
4610         A hex Unicode sequence must be started with Ctrl-Shift-U, followed
4611         by a sequence of hex digits entered with Ctrl-Shift still held.
4612         Releasing one of the modifiers or pressing space while the modifiers
4613         are still held commits the character. It is possible to erase
4614         digits using backspace.
4615         As an extension to the above, we also allow to start the sequence
4616         with Ctrl-Shift-U, then release the modifiers before typing any
4617         digits, and enter the digits without modifiers.
4618         (#82011, Owen Taylor)
4619         
4620 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
4621
4622         * gtk/gtkmain.c (gtk_get_event_widget): If the window is destroyed,
4623         we still need to deliver the destroy event.  (#314980, Chris Lahey)
4624
4625         * gtk/gtktextview.c (gtk_text_view_key_press_event): Reset 
4626         im context before committing \n or \t.
4627
4628 2005-09-02  Alexander Larsson  <alexl@redhat.com>
4629
4630         * gtk/gtkfilechooserdefault.c: (shortcuts_add_volumes),
4631         (shortcuts_activate_volume):
4632         Handle base_path being null in the rest of the cases (#310270)
4633
4634 2005-09-02  Tor Lillqvist  <tml@novell.com>
4635
4636         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Keep track of
4637         cursor position also in root window coordinates. Prune out
4638         superfluous WM_MOUSEMOVE events even earlier, based on root window
4639         coordinates. Windows sends WM_MOUSEMOVE messages after a new
4640         window has ben mapped below the cursor even if the mouse doesn't
4641         move. We used to generate GDK_MOTION_NOTIFY in these cases. This
4642         confused at least gtk_menu_motion_notify(). (#314995)
4643
4644         * gtk/gtkintl.h: No need to include config.h here. It caused
4645         warnings about GTK_LOCALEDIR being redefined on Win32 when
4646         compiling files where gtkintl.h is included after gtkprivate.h
4647         (which #undefines and re-#defines GTK_LOCALEDIR on Win32).
4648
4649         * gtk/gtkplug.c: Include config.h.
4650
4651 2005-09-01  Matthias Clasen  <mclasen@redhat.com>
4652
4653         * gtk/gtkfilesystemunix.c: Pass statbufs down to 
4654         xdg_mime_get_mime_type_for_file() where possible, to avoid
4655         useless re-stating.  
4656         
4657         * gtk/gtkaction.c (gtk_action_get_accel_closure): Fix doc
4658         typo.  (#314921, Guillaume Cottenceau)
4659
4660         * gdk/*.c: Intern some more strings.
4661         * gtk/gtkintl.h: 
4662         * gtk/*.c: Define an I_() macro and use it instead of the 
4663         bulky g_intern_static_string().
4664
4665 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
4666
4667         * gtk/gtkbindings.c (binding_signal_new): Intern the signal name
4668         instead of copying it.
4669
4670         * gtk/gtktypeutils.c (gtk_identifier_get_type): Some more string interning.
4671
4672         * gtk/*.c: Also intern static strings passed to 
4673         g_object_set_data().
4674
4675         * gdk/Makefile.am: 
4676         * gtk/Makefile.am: Intern type names in code generated by 
4677         glib-mkenums, too.
4678
4679         * gtk/*.c: 
4680         * gdk/x11/*.c: 
4681         * gdk/*.c: Intern type names before registering the type to avoid 
4682         unnecessary copies.
4683
4684         * configure.in: Require GLib 2.9.0
4685
4686 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
4687
4688         * gtk/gtktoolbar.c: Undeprecate gtk_toolbar_set_icon_size(),
4689         and add icon-size and icon-size-set properties.  (#314172)      
4690
4691         * gtk/gtkwindow.c (gtk_window_set_transient_for): Inherit window
4692         groups across transient parents.  (#312918, Christian Persch)
4693
4694         * gtk/gtktreemodel.c: Some documentation fixes.  (#314882,
4695         Guillaume Cottenceau)
4696
4697         * gtk/gtktextiter.c (gtk_text_iter_backward_visible_cursor_positions): 
4698         Fix a typo in the docs.  (#314878, Guillaume Cottenceau)
4699
4700 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
4701
4702         * gtk/gtkentry.c (gtk_entry_class_init): Add key bindings to
4703         make C-/ select all and C-\ unselect all.  (#309301,
4704         Kathy Fernandez)
4705
4706         * gtk/gtkimcontextsimple.c: Change the compose sequence for
4707         soft hyphen to be multi_key-minus-minus-space, and add
4708         compose sequences multi_key-minus-minus-period and 
4709         multi_key-minus-minus-minus for en dash and em dash.
4710         (#172653, Christian Lohmaier)
4711
4712         * gtk/gtkentry.c (gtk_entry_draw_frame): Fix some unused
4713         code.  (#313946, Christian Persch)
4714
4715         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Another
4716         fix for the default value of the "ui" property.
4717
4718 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
4719
4720         * gtk/gtk.symbols: 
4721         * gtk/gtkselection.h:
4722         * gtk/gtkselection.c: Add functions which look for text, image
4723         or uri targets in an array of atoms.   (#314089, Mark Wielaard)
4724
4725         * gtk/gtk.symbols: 
4726         * gtk/gtkselection.h:
4727         * gtk/gtkselection.c (gtk_selection_data_targets_include_uri): 
4728         Add a function to check wether targets include uri.  
4729         (#314092, Mark Wielaard)
4730         
4731         * gtk/gtk.symbols: 
4732         * gtk/gtkwindow.h: 
4733         * gtk/gtkwindow.c: Add a deletable property with getter
4734         and setter, to control the close button in the window 
4735         frame.  (#59718, Havoc Pennington)
4736
4737 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
4738
4739         * gtk/gtkrc.key.emacs: Add C-n/C-p/C-f/C-b as alternatives
4740         to the arrow keys for menu navigation.  (#162825, Carl Worth)
4741
4742         * gtk/gtkentry.c, gtk/gtktextview.c: More typo fixes
4743
4744         * gtk/gtksocket-x11.c, gtk/gtkstatusicon-x11.c: Fix typos.
4745
4746         * gtk/gtkstatusicon-x11.c (gtk_status_icon_new_from_stock): 
4747         * gtk/gtkimage.c (gtk_image_new_from_stock): Don't
4748         refer to nonexisting stock ids.
4749
4750         * gtk/gtktextview.c (popup_targets_received): 
4751         * gtk/gtkentry.c (popup_targets_received): Construct
4752         the "Select All" menuitem from stock.
4753
4754         * gtk/stock-icons/stock_select_all_{16,24}.png:
4755         * gtk/stock-icons/Makefile.am: 
4756         * gtk/gtkiconfactory.c:
4757         * gtk/gtkstock.h: 
4758         * gtk/gtkstock.c: Add a "Select All" stock item.  (#78545,
4759         Calum Benson)
4760
4761         * gtk/gtktrayicon.c: Add a pointer to the spec.
4762
4763         * gtk/gtkstatusicon-x11.c: Add docs.
4764
4765         * gtk/gtkstatusicon.h: Fix a typo.
4766
4767         Add a cross-platform "tray icon" API, by
4768         porting EggStatusIcon/EggTrayIcon (#105101)
4769         
4770         * gtk/gtkstatusicon.h: A GtkStatusIcon is an object which
4771         displays an icon in a notification area.
4772
4773         * gtk/gtkstatusicon-x11.c: GtkStatusIcon implementation for
4774         X11, using GtkTrayIcon.
4775
4776         * gtk/gtktrayicon.h: 
4777         * gtk/gtktrayicon.c: An implementation of the freedesktop.org
4778         system tray specification, not public API.
4779
4780         * gtk/gtk.symbols: Add new exported functions.
4781
4782         * gtk/gtk.h: Include gtkstatusicon.h.
4783
4784         * gtk/Makefile.am: Add new files.
4785
4786         * tests/Makefile.am:
4787         * tests/teststatusicon.c: Test for GtkStatusIcon.
4788
4789 2005-08-29  Christopher Aillon  <caillon@redhat.com>
4790
4791         * gtk/gtkstock.c: Add builtin GtkStockItems for GTK_STOCK_CONNECT
4792         and GTK_STOCK_DISCONNECT
4793         
4794 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
4795
4796         * gtk/gtksocket-x11.c (_gtk_socket_windowing_embed_notify): 
4797         Use XFixesChangeSaveSet if available.  (#314682)
4798
4799         * gtk/gtkmenu.c (gtk_menu_grab_notify):  Only cancel if the menu
4800         was active.  (#314298, Christian Persch, analysis by Mark McLoughlin)
4801
4802 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
4803
4804         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): Remove an
4805         accidentally leftover duplicate pixbuf creation.  (#314700,
4806         Kjartan Maraas)
4807
4808         * gtk/gtksettings.c (settings_update_cursor_theme): Don't 
4809         leak the cursor theme name.  (#314693, Kjartan Maraas)
4810
4811         * gdk/x11/gdkasync.c (_gdk_x11_get_window_child_info): Free 
4812         state.children in all cases.  (#313862, Kjartan Maraas)
4813
4814 2005-08-28  Matthias Clasen  <mclasen@redhat.com>
4815
4816         * po/POTFILES.in, po-properties/POTFILES.in:
4817         Add gdk/gdkscreen.c
4818
4819 2005-08-27  Matthias Clasen  <mclasen@redhat.com>
4820
4821         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Fix the default
4822         value of the ui property. (#314532, Yong Wang)
4823
4824         * gdk/x11/gdkproperty-x11.c (gdk_property_get): Don't warn
4825         when G_MAXLONG is passed as length.  
4826
4827 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
4828
4829         * gtk/updateiconcache.c: Add a separate --ignore-theme-index option
4830         to avoid overloading --force.  (JP Rosevaar)
4831
4832 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
4833
4834         * configure.in: Bump version to 2.9.0
4835
4836         * gdk/gdk.symbols: 
4837         * gdk/gdkscreen.h: 
4838         * gdk/gdkscreen.c: Make the GdkScreen font options api
4839         public, and add properties GdkScreen::font-options and
4840         GdkScreen::resolution.  (#314004)
4841
4842         * gdk/gdkpango.c:
4843         * gtk/gtksettings.c:
4844         * gtk/gtkwidget.c: Adjust all callers.
4845         
4846         * gdk/gdkintl.h: Simplify and use glib/gi18n-lib.h.
4847         * gdk/gdkpango.c: Include gdkintl.h, not gtkintl.h.
4848         * gdk/gdkscreen.c: Include gdkintl.h.
4849
4850         * gtk/gtkicontheme.c (theme_lookup_icon): Avoid an uninitialized
4851         variable warning, pointed out by Colin Walters. (#314585)
4852
4853 2005-08-26  Tor Lillqvist  <tml@novell.com>
4854
4855         * gtk/gtkfilesystemwin32.c: Remove some ifdeffed out debugging
4856         printouts.
4857         (gtk_file_system_win32_parse): Don't mishandle UNC paths. (#314519)
4858
4859 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
4860
4861         * gtk/gtkcalendar.c (gtk_calendar_init): Fix the calculation
4862         of week_start.  (#314473, JP Rosevaar)
4863
4864 2005-08-25  Thomas Fitzsimmons  <fitzsim@redhat.com>
4865
4866         * gtk/gtkfilesystemmodel.c (idle_finished_loading_cb): Acquire GDK
4867         lock.  (#314533, Thomas Fitzsimmons)
4868
4869 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
4870
4871         * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Handle
4872         NULL gracefully.  (#314523, Ed Catmur)
4873
4874 2005-08-25  Owen Taylor  <otaylor@redhat.com>
4875
4876         * gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): 
4877         Handle theme == NULL.
4878
4879 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
4880
4881         * gtk/gtkmenutoolbutton.c (menu_position_func): Take widget
4882         y offset into account when positioning the popup.  (#314470,
4883         Christian Persch)
4884
4885 2005-08-25  Owen Taylor  <otaylor@redhat.com>
4886
4887         * gdk/gdkscreen.c (gdk_screen_get_type): Use gdk_screen_init
4888         as instance_init, not base_init! (#314452, Fix from Frederic
4889         Crozat, reported by Joe Marcus Clarke). Trivial cleanup: use -1.
4890         rather than 1 for a negative flag value.
4891
4892 2005-08-24  Owen Taylor  <otaylor@redhat.com>
4893
4894         * gdk/gdkpango.c (draw_error_underline): Add a note about
4895         cut-and-paste between here and Pango.
4896
4897 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
4898
4899         * === Released 2.8.2 ===
4900
4901         * gtk/gtkclipboard.c (request_image_received_func): Use the correct
4902         callback for image/gif, and also try image/bmp.  (#314086,  Mark 
4903         Wielaard)
4904
4905         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon): 
4906         Use gnome-dev-harddisk for volumes, not gnome-fs-blockdev.  (#314382,
4907         Sebastien Bacher)
4908         
4909         * NEWS: Updates
4910
4911         * gtk/gtksettings.c (gtk_settings_get_for_screen): Make sure font
4912         and cursor settings get propagated down to the screen initially.
4913         Pointed out by Frederic Crozat.
4914
4915         * gtk/gtkicontheme.c (ensure_valid_themes): Don't try to send a client
4916         message if the screen is NULL. Noticed by Kjartan Maraas.
4917
4918 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
4919
4920         * Bump version
4921
4922         * === Released 2.8.1 ===
4923
4924         * NEWS: Updates
4925         
4926 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
4927
4928         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_visible): Protect
4929         against lazy filterers which return values other than TRUE or
4930         FALSE from their visible func.  (#314335)
4931
4932 2005-08-23  Owen Taylor  <otaylor@redhat.com>
4933
4934         Fix for #314004, reported by Michael Reinsch:
4935
4936         * gdk/gdk.symbols:
4937         * gdk/gdkscreen.[ch]: Add gdk_screen_get/set_font_options_libgtk_only()
4938         Add gdk_screen_get/set_resolution_libgtk_only()
4939
4940         * gdk/gdkpango.c (gdk_pango_context_get_for_screen): Set
4941         the options for the screen on the newly created context.
4942
4943         * gtk/gtksettings.c (settings_update_font_options/dpi) gtkwidget.c: 
4944         Move font options and dpi code from gtkwidget.c to gtksettings.c, set
4945         the font options on the screen.
4946
4947         * gtk/gtkwidget.c (gtk_widget_update_pango_context): Just get
4948         the font options from the screen and set them on the context.
4949
4950 2005-08-23  Kristian Rietveld  <kris@gtk.org>
4951
4952         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): don't
4953         bother inserting new rows in a level with a zero refcount and
4954         immediately free the level. (Fixes #312350, reported by Markku Vire).
4955
4956 2005-08-23  Matthias Clasen  <mclasen@redhat.com>
4957
4958         * gtk/updateiconcache.c: Complain when there is no index.theme file
4959         in the specified directory, unless --force is used. Also add an
4960         --index-only option to create caches without image data.
4961
4962         * gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Fix a
4963         C99ism.  (#314262, Robert Jeff Mitchell)
4964         
4965 2005-08-22  Manish Singh  <yosh@gimp.org>
4966
4967         * gtk/gtkicontheme.h: add declaration for _gtk_icon_theme_check_reload.
4968
4969         * gtk/gtkwindow.c: remove declaration of gtk_window_read_rcfiles.
4970
4971 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
4972
4973         * gtk/gtkwindow.c (gtk_window_client_event): 
4974         * gtk/gtkicontheme.c (ensure_valid_themes) 
4975         (_gtk_icon_theme_check_reload): Implement a clientmessage based
4976         scheme for makeing sure that all GTK+ applications notice if an
4977         icon theme has been updated. This should prevent multiple versions
4978         of an icon theme cache to be mapped in memory at the same time,
4979         which can cause excessive memory consumption.  (#313156, Chris 
4980         Lahey)
4981
4982 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
4983
4984         * gtk/gtkicontheme.c (gtk_icon_theme_load_icon): Add a note
4985         regarding icon theme changes.
4986
4987         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): When returning
4988         pixbufs which are backed by the mmapped memory of an icon cache,
4989         increase the refcount of the icon cache, so that the memory is not
4990         munmapped away underneath the pixbuf upon icon theme changes.  
4991         (#314170, Kjartan Maraas)
4992
4993         * docs/tools/Makefile.am (LDADDS): Add GTK_DEP_LIBS, in order 
4994         to link against Xext.  (#314062)
4995
4996         * gtk/gtkhsv.c (paint_triangle): One more fix to prevent buffer
4997         overruns.  (#314081, Hans Breuer)
4998
4999 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
5000
5001         * gtk/gtkentry.c (gtk_entry_get_layout): Clarify that the
5002         returned layout must not be modified.
5003
5004 Sat Aug 20 16:12:14 2005  Jonathan Blandford  <jrb@redhat.com>
5005
5006         * gtk/gtktreeview.c (gtk_tree_view_set_model): clear
5007         scroll_to_path if the model changes.
5008
5009         * gtk/gtkiconview.c: (gtk_icon_view_destroy),
5010         (gtk_icon_view_size_allocate), (gtk_icon_view_set_cursor),
5011         (gtk_icon_view_scroll_to_path): Handle scrolling to a path before
5012         we're realized, #312798
5013         (gtk_icon_view_set_model): clear scroll_to_path if the model
5014         changes.
5015
5016 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
5017
5018         * gtk/gtkrange.c (gtk_range_adjustment_changed) 
5019         (gtk_range_adjustment_value_changed):  Don't queue a draw
5020         if the layout has not changed.  (#313991, Benjamin Berg)
5021
5022 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
5023
5024         * gtk/gtktreeitem.c: Remove duplicate lines.  (#313344,
5025         Benoit Carpentier)
5026
5027         * modules/engines/ms-windows/msw_style.c (setup_system_styles): 
5028         Fix a typo. 
5029
5030         * gtk/gtkfilechooserbutton.c (change_icon_theme) 
5031         (model_add_special, model_add_special, model_add_volumes):
5032         Handle pixbuf being NULL without warnings. Also, don't
5033         leak pixbuf references when the icon theme is changed.
5034
5035         * gtk/gtkmain.c (gtk_get_event_widget): Don't access
5036         the user data on destroyed windows, since at best
5037         it can be a stale pointer.  (#313953, Robin Green)      
5038
5039 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
5040
5041         * gtk/gtkhsv.c (paint_triangle): Avoid a buffer overrun.  
5042         (#313900, Sebastien Bacher)
5043
5044         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Return
5045         FALSE if the tree is empty.  (#313891, Guillaume Cottenceau)
5046
5047         * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display) 
5048         (xdnd_read_actions, get_client_window_at_coords_recurse): 
5049         Free data returned from XGetWindowProperty. 
5050
5051         * gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window) 
5052         Free data returned from XGetWindowProperty.  (313867, Kjartan
5053         Maraas)
5054         
5055         * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse): Free
5056         children in all cases.  (#313862, Kjartan Maraas)
5057
5058         * gtk/gtkicontheme.c (theme_lookup_icon): Store GtkIconData structs 
5059         in the per-directory hash, even if they come from the icon cache. 
5060         We tried to avoid that before, but as a result leaked icon data
5061         structs.  (#313852, Kjartan Maraas)
5062
5063 2005-08-18  Matthias Clasen  <mclasen@redhat.com>
5064
5065         * gtk/gtkmenutoolbutton.c (gtk_menu_tool_button_destroy): Disconnect
5066         signal handlers on destroy, not on finalize.  (#313759, Brett Atoms)
5067
5068 2005-08-15  Owen Taylor  <otaylor@redhat.com>
5069
5070         * configure.in: Add -lXext to GDK_EXTRA_LIBS in absence of pkg-config
5071         files for x11/xext. (Jonas Bonn)
5072
5073 2005-08-15  Tor Lillqvist  <tml@novell.com>
5074
5075         * gtk/gtkicontheme.c (theme_lookup_icon): Put debugging printout
5076         inside GTK_NOTE.
5077
5078 2005-08-15  Owen Taylor  <otaylor@redhat.com>
5079
5080         * configure.in: Fix have_base_pc / have_base_x_pc typo.
5081
5082         * gdk/x11/gdkdrawable-x11.c gtk/gtksettings.c: Remove panoxft.h includes.
5083         (#313417, James Andrewartha)
5084
5085         * configure.in: Add fontconfig to X_PACKAGES, since we use it for
5086         FcNameConstant(). (More of #313417)
5087
5088 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
5089
5090         * gtk/gtkfilechooserdefault.c: When using gtk_dialog_run() for
5091         modal dialogs, make sure to inherit the window group from 
5092         the parent, since we don't inherit window groups across
5093         transient parents currently.  (#312918, Christian Persch)
5094
5095         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): 
5096         * gtk/gtkdialog.c (gtk_dialog_run): Slight update to the docs. 
5097
5098         * gtk/gtkiconview.c (gtk_icon_view_select_path) 
5099         (gtk_icon_view_scroll_to_path): Handle paths of depth 0
5100         gracefully.  (#312796, Jonathan Blandford)
5101
5102         * tests/testtoolbar.c: Add some more tests for menu placement.
5103
5104         * gtk/gtkmenutoolbutton.c (menu_position_func): 
5105         * gtk/gtktoolbar.c (menu_position_func): Improve positioning
5106         of toolbutton menus and of the overflow menu.  (#312937, 
5107         #153870, Christian Persch, Paolo Borelli)
5108
5109 2005-08-15  Tor Lillqvist  <tml@novell.com>
5110
5111         * gtk/updateiconcache.c: Use g_path_get_dirname() instead of
5112         the nonportable <libgen.h> and dirname().
5113
5114 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
5115
5116         * gtk/gtksizegroup.c: Use object data to mark widgets and
5117         groups as visited, so that we avoid constant extra list
5118         traversals. Also allocate quarks in class_init.  (#311618,
5119         Michael Natterer)
5120
5121         * gtk/gtkicontheme.c (gtk_icon_theme_lookup_icon): Correct the 
5122         download location for the hicolor icon theme. (#313475, Olexiy 
5123         Avramchenko)
5124
5125         * gtk/gtkicontheme.c: Remove debug spew. 
5126
5127 2005-08-15  Owen Taylor  <otaylor@redhat.com>
5128
5129         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_back_pixmap): 
5130         * gdk/win32/gdkwindow-win32.c (gdk_window_set_back_pixmap): 
5131         * gdk/x11/gdkwindow-x11.c (gdk_window_set_back_pixmap):
5132         Handle pixmap == NULL when checking for a colormap.
5133         (Allin Cottrell).
5134
5135 2005-08-14  Matthias Clasen  <mclasen@redhat.com>
5136
5137         * gtk/updateiconcache.c: Store only one copy of the pixel data
5138         for symlinked icons. To achieve this, maintain a hashtable 
5139         mapping pathnames to pixel data, and share the pixel data for
5140         all symlinks resolving to the same pathname. When writing out
5141         the image data, write out the pixel data only the first time
5142         it is met, and store the offset pointing to the first copy
5143         for use in all later cases.
5144         This reduces the size of the Bluecurve icon cache from 40
5145         to 13MB. (#312972)
5146