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