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