]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-10
Update background upon style-set and state-changed. (#348634, Thomas
[~andy/gtk] / ChangeLog.pre-2-10
1 2006-08-16  Matthias Clasen  <mclasen@redhat.com>
2
3         * gtk/gtkiconview.c: Update background upon style-set and
4         state-changed.  (#348634, Thomas Rydzynski)
5
6         * gtk/gtkentry.c (paste_received): Popup completion if paste
7         is at the end (patch was already in 2.8.x).  (#165714, 
8         Christian Persch)
9
10         * gtk/gtknotebook.c (gtk_notebook_set_current_page): Explain
11         some quirks of this function.  (#351112)
12
13 2006-08-16  Kristian Rietveld  <kris@gtk.org>
14
15         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
16         take the cell spacing into account when calculating the available
17         extra space. (#350938, patch from Peter Johanson).
18
19 2006-08-16  Kristian Rietveld  <kris@gtk.org>
20
21         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_fetch_child):
22         update the refs from children to parents for all nodes, since
23         they may all have been moved by the insert operation. (#346800,
24         patch from Jonathan Matthew).
25
26 2006-08-15  Matthias Clasen <mclasen@redhat.com>
27
28         * gtk/gtkrecentfilter.c (gtk_recent_filter_filter):
29         * gtk/gtkrecentmanager.c (gtk_recent_manager_lookup_item):
30         Add Since tags.  (#351581, Brian Cameron)
31
32 2006-08-15  Michael Emmel  <mike.emmel@gmail.com>
33
34         * configure.in  
35         Added cairo flag patch to fix directfb build from bug #351519
36
37 2006-08-15  Richard Hult  <richard@imendio.com>
38
39         * gdk/quartz/gdkevents-quartz.c: (get_event_mask_from_ns_event): 
40         Add GDK button mask for NS dragging events.
41         (create_scroll_event): Remove obsolete comment.
42         (_gdk_quartz_get_current_event_mask), (gdk_event_translate): Keep
43         track of the latest event mask here...
44
45         * gdk/quartz/gdkwindow-quartz.c: 
46         (_gdk_windowing_window_get_pointer): And use it here. Patch from
47         Kristian Rietveld.
48         (gdk_window_quartz_update_idle): Rename to make things clearer.
49
50 2006-08-15  Matthias Clasen  <mclasen@redhat.com>
51
52         * gtk/gtkprintoperationpreview.c: 
53         * gtk/gtkprintoperation.c (gtk_print_operation_class_init): Add
54         more docs.
55
56         * gtk/gtkaboutdialog.c (gtk_about_dialog_init): Set CAN_DEFAULT
57         on all buttons.  (#168737, fix proposed by Benjamin Berg)
58
59         * gtk/gtkentryprivate.h: 
60         * gtk/gtkentry.c (_gtk_entry_effective_inner_border): Export 
61         privately. Adjust all callers.
62
63         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Use it
64         here to get the actual inner border.  (#349429, Benjamin Berg)
65
66         * gtk/gtkfilechooserentry.c (struct _GtkFileChooserEntry): Don't
67         store GSource pointers, but ids.
68         (gtk_file_chooser_entry_dispose): Remove idles.
69         (idle_add, idle_add): Factor this out.
70         (gtk_file_chooser_entry_maybe_update_directory): 
71         (add_completion_idle): And use it here. (#350039, Chris Wilson)
72
73         * gtk/gtkicontheme.c (do_theme_change): Run the reset_styles
74         idle at a priority higher than size negotiation.  (#350517,
75         Søren Sandmann)
76         
77         * gtk/gtkfilesystem.c (gtk_file_info_render_icon) 
78         (gtk_file_system_volume_render_icon): Do better fallbacks
79         if the icon theme does not have icons.  (#345666,
80         Kazuki Iwamoto)
81
82         * gtk/gtkruler.c (gtk_ruler_unrealize): Don't leak
83         no_gr_exp_gc.  (#350050, Chris Wilson)
84
85         * gdk/x11/gdkdrawable-x11.c (get_shm_pixmap_for_image): Don't
86         leak ShmPixmapInfo.  (#349858, Chris Wilson)
87
88         * gtk/Makefile.am (GTK_PRINT_PREVIEW_COMMAND): Call evince
89         with the --preview option.  (#350139, Carlos Garcia Campos)
90
91         * modules/printbackends/cups/gtkprintbackendcups.c (create_pickone_option): 
92         Simplify, make it build against cups 1.1.  (#350329)    
93
94         * gtk/gtkliststore.c (gtk_list_store_insert_with_values): 
95         Fix a typo in the docs.  (#349501, Carlos GUSLiBu)
96
97         * gtk/gtkcolorsel.c (palette_paint): Remove a leftover
98         debug statement. (#350072, Iago Rubio)
99
100         * gtk/gtktextbufferserialize.c (check_id_or_name): Fix
101         warning text.  (#349277)
102
103         * gtk/gtknotebook.c (gtk_notebook_enter_notify): Remove.
104         (gtk_notebook_motion_notify): Instead, update the arrow
105         state here.  (#349570, Benjamin Otte)
106
107         * gdk/x11/gdkwindow-x11.c (gdk_window_get_geometry_hints):
108         Use XAllocSizeHints to allocate the XSizeHints struct.
109         (#249285, David Baron)
110
111         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd):
112         * gdk/x11/gdkwindow-x11.c (gdk_window_set_decorations):
113         (gdk_window_set_functions): Zero out some stack-allocated
114         X structures, to avoid valgrind warnings about uninitialized
115         memory.  (#349382, David Baron)
116
117 2006-08-14  Emmanuele Bassi  <ebassi@gnome.org>
118
119         * gtk/gtkrecentchooser.c:
120         (gtk_recent_chooser_add_filter),
121         (gtk_recent_chooser_remove_filter),
122         (gtk_recent_chooser_set_filter): Add a check on the
123         filter argument, instead of blindly passing it to
124         underlying implementation.
125
126         * gtk/gtkrecentchoosermenu.c:
127         (gtk_recent_chooser_menu_add_filter),
128         (gtk_recent_chooser_menu_remove_filter),
129         (gtk_recent_chooser_menu_list_filters): Implement
130         these GtkRecentChooser methods, by setting and
131         returning the only GtkRecentFilter object supported
132         by a GtkRecentChooserMenu. (#347856, reported by Rod
133         Butcher)
134
135 2006-08-14  Matthias Clasen  <mclasen@redhat.com>
136
137         * gtk/gtkcombobox.c (gtk_combo_box_remove): Null the
138         cell_view pointer if the internal cell view is removed. 
139         (#348828, Rolando Espinoza La Fuente)
140
141         * gtk/gtkentry.c (gtk_entry_drag_data_received): Don't leak
142         in the non-editable case.  (#350258, Colin Leroy)
143
144 2006-08-10  Michael Emmel  <mike.emmel@gmail.com>
145
146         * gdk/directfb/gdkdrawable-directfb.c
147         Remove gdk_directfb_update_region and calls 
148         * gdk/directfb/gdkwindow-directfb.c
149         Code cleanup 
150         * gdk/directfb/gdkgeometry-directfb.c
151         Fix scroll call to use region
152
153 2006-08-10  Emmanuele Bassi  <ebassi@gnome.org>
154
155         * gtk/gtkrecentchoosermenu.c:
156         (gtk_recent_chooser_menu_finalize): Remove the idle
157         source in ::finalize...
158         
159         (idle_populate_func),
160         (idle_populate_clean_up): ...and reset the idle source
161         id at the end of the idle loop while we hold the GDK mutex
162         lock. (#350605, reported by Wouter Bolsterlee, patch by
163         Chris Wilson)
164
165 2006-08-10  Michael Natterer  <mitch@imendio.com>
166
167         * gdk/quartz/gdkwindow-quartz.c
168         (gdk_window_maximize)
169         (gdk_window_unmaximize)
170         (gdk_window_iconify)
171         (gdk_window_deiconify): don't try to set the state of unmapped
172         windows, call gdk_synthesize_window_state() instead. Also added
173         autorelease pools back, seems they are needed after all.
174
175         * gdk/quartz/gdkwindow-quartz.c (show_window_internal): maximize
176         and iconify windows here if the state says so.
177
178 2006-08-09  Michael Natterer  <mitch@imendio.com>
179
180         * gdk/quartz/gdkwindow-quartz.c (gdk_window_set_geometry_hints):
181         implement MIN_SIZE, MAX_SIZE and RESIZE_INC.
182
183 2006-08-08  Richard Hult  <richard@imendio.com>
184
185         * gtk/gtkdnd-quartz.c: Implement get/set_track_motion.
186         
187 2006-08-08  Richard Hult  <richard@imendio.com>
188
189         * gdk/quartz/gdkevents-quartz.c: (poll_func): Whitespace cleanup.        
190         (synthesize_crossing_events): Add comments and prevent a crash.
191
192 2006-08-08  Michael Natterer  <mitch@imendio.com>
193
194         * gdk/quartz/gdkwindow-quartz.c
195         (gdk_window_maximize)
196         (gdk_window_unmaximize): implement.
197
198         (gdk_window_iconify)
199         (gdk_window_deiconify): remove unneeded autorelease pools.
200
201 2006-08-08  Richard Hult  <richard@imendio.com>
202
203         * gdk/quartz/GdkQuartzView.c: Just expose the minimal region 
204         instead of the whole rect.
205
206         * gdk/quartz/gdkwindow-quartz.c:
207         (gdk_window_quartz_process_all_updates), (gdk_window_update_idle),
208         (gdk_window_impl_quartz_invalidate_maybe_recurse),
209         (gdk_window_impl_quartz_process_updates),
210         (_gdk_windowing_window_destroy): Rework the expose handling so that
211         it works like the X11 backend, using an idle with the right
212         priority instead of relying on quartz to do it.
213         (gdk_window_set_type_hint): Use tornoff instead of submenu as the
214         documentation (and Mitch) suggests.
215
216 2006-08-08  Michael Natterer  <mitch@imendio.com>
217
218         * gdk/quartz/gdkdrawable-quartz.c: some whitespace and indentation
219         cleanup.
220
221         (gdk_quartz_draw_rectangle)
222         (gdk_quartz_draw_arc)
223         (gdk_quartz_draw_polygon)
224         (gdk_quartz_draw_points): for pixel-prefect drawing, stroked
225         coordinates need to go through pixel centers, while filled ones
226         need to go along pixel boundaries. Moved +0.5 adjusting to the
227         if(!filled) branches and added/removed some adjustments where they
228         were wrong.
229
230 2006-08-07  Richard Hult  <richard@imendio.com>
231
232         * gdk/quartz/gdkdrawable-quartz.c (gdk_quartz_draw_points): Don't
233         get and release the context for each point, just once, speeds up
234         drawing many points a lot.
235
236 2006-08-07  Michael Natterer  <mitch@imendio.com>
237
238         * gtk/gtkdnd-quartz.c (gtk_drag_dest_unset): need to disconnect
239         from signals connected in gtk_drag_dest_set() here.
240
241         * gtk/gtkdnd-quartz.c (gtk_drag_dest_set): call gtk_drag_dest_unset()
242         instead of disconnecting the old signal connections here.
243
244 2006-08-07  Emmanuele Bassi  <ebassi@gnome.org>
245
246         * gtk/gtkrecentchooserdefault.c:
247         (_gtk_recent_chooser_default_init): Show non existing
248         resources by default.
249         (recent_meta_data_func): Do not mark non existing
250         resources as insensitive.
251
252         * gtk/gtkrecentchoosermenu.c:
253         (gtk_recent_chooser_menu_init): Show non existing
254         resources by default.
255         (gtk_recent_chooser_menu_create_item): Do not mark
256         non existing resources as insensitive.
257
258 2006-08-06  Matthias Clasen  <mclasen@redhat.com>
259
260         * gdk/x11/gdkkeys-x11.c (gdk_keymap_x11_finalize): Free
261         all XKB data. (#349997, Chris Wilson)
262
263         * gtk/gtkstyle.c (option_menu_get_props): Only get the
264         indicator-size and indicator-spacing style properties
265         for GtkOptionMenu.  (#349859, Benjamin Otte)
266
267         * gtk/gtktreeview.c (gtk_tree_view_set_grid_lines) 
268         (gtk_tree_view_set_enable_tree_lines): Be more careful
269         when creating gcs, also emit change notification.
270         (gtk_tree_view_unrealize): Free the gcs here.  (#349834,
271         Chris Wilson)
272
273         * gtk/gtkcalendar.c (calendar_start_spinning, calendar_timer): 
274         Use G_PRIORITY_DEFAULT_IDLE for the month/year-change timer,
275         so that the caller will have a chance to redraw/resize itself
276         between every change.  (#348824, Federico Mena Quintero, patch
277         by Michael Meeks)
278         
279         * gtk/gtkfontbutton.c (gtk_font_button_update_font_info): 
280         Add a missing initialization.  (#348787, Leonardo Boshell)
281         
282         * configure.in: Use $PKG_CONFIG consistently.  (#348740,
283         Jeremy Lainé)
284         
285         * gtk/gtknotebook.c (gtk_notebook_drag_motion): Don't allow
286         dragging a notebook tab to one of its children.  (#348626,
287         Benjamin Otte)
288         (gtk_notebook_drag_motion): Don't accept drops on 
289         arrows.  (#348706, Benjamin Otte)
290
291         * tests/testnotebookdnd.c: Test more corner cases.
292
293 2006-08-05  Matthias Clasen  <mclasen@redhat.com>
294
295         * docs/tutorial/gtk-tut.sgml: Remove outdated lists of
296         authors and maintainers.  (#348538, Owen Taylor)
297
298         * gtk/gtkentry.c:
299         * gtk/gtkentryprivate.h: Export gtk_entry_reset_im_context
300         privately.
301         
302         * gtk/gtkentrycompletion.c (gtk_entry_completion_action_button_press): 
303         * gtk/gtkentry.c (gtk_entry_completion_key_press): Reset the
304         entry's im context here.  (#348478, Nguyen Thai Ngoc Duy, Christian
305         Persch) 
306
307         * gtk/gtktextview.c (gtk_text_view_style_set): Create new
308         PangoContexts and set them on the layout, to catch changes in
309         font options.  (#348278, Behdad Esfahbod)
310
311         * gtk/gtkstyle.c (gtk_default_draw_flat_box): Add a 
312         missing initialization.  (#349863, Benjamin Berg)
313
314         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_layout_reorder): 
315         Protect against tree_view being NULL.  (#348652, Patrick K. O'Brian,
316         Chris Wilson)
317
318 2006-08-03  Emmanuele Bassi  <ebassi@gnome.org>
319
320         * gtk/gtkrecentchoosermenu.c:
321         (set_recent_managet), (gtk_recent_chooser_menu_populate),
322         (idle_populate_func), (idle_populate_clean_up),
323         (manager_changed_cb): Lazily populate the menu when creating
324         it and after the manager emits the "changed" signal; this
325         fixes the initial bad placing of the GtkRecentChooserMenu
326         widget when its set as the menu of a GtkMenuToolButton.
327
328         (gtk_recent_chooser_menu_map),
329         (gtk_recent_chooser_menu_class_init): Remove the ::map method
330         override, since it's not needed anymore.
331
332 2006-08-03  Michael Natterer  <mitch@imendio.com>
333
334         * gtk/gtkrc.c (gtk_rc_parse_assignment): reset scanner config to
335         default values while checking if an expression(foobar) follows,
336         because if no expression follows the scanner's "next token" must
337         be usable for the caller of this function (fixes bug #349552).
338
339 2006-08-03  Michael Natterer  <mitch@imendio.com>
340
341         * gtk/gtkstyle.c: removed the "widget &&" part from
342         "widget && GTK_IS_FOO (widget)" checks.
343
344 2006-07-13  Michael Emmel  <mike.emmel@gmail.com>
345
346         * gdk/directfb/gdkwindow-directfb.c
347         Remove unused call to GetPosition 
348
349 2006-07-31  Richard Hult  <richard@imendio.com>
350
351         * gdk/quartz/gdkdrawable-quartz.c: (gdk_quartz_draw_drawable):
352         * gdk/quartz/gdkwindow-quartz.c:
353         (gdk_window_impl_quartz_begin_paint_region): Patch from Erik van
354         Pienbroek to implement drawing bg_pixmaps (#348145).
355
356 2006-07-29  Richard Hult  <richard@imendio.com>
357
358         * gdk/quartz/gdkcolor-quartz.c (gdk_colormap_alloc_colors): Always
359         set success to TRUE.
360         (gdk_color_change): Implement.
361
362         * gdk/quartz/GdkQuartzWindow.c
363         ([GdkQuartzWindow -canBecomeKeyWindow]): Add comment.
364
365         * gdk/quartz/gdkevents-quartz.c (gdk_screen_get_setting): Make the
366         default font a bit smaller until we have made this get the system
367         setting.
368
369         * gdk/quartz/gdkwindow-quartz.c (gdk_window_set_type_hint): Enable
370         shadows for the right window types.
371
372         * gdk/quartz/gdkprivate-quartz.h:
373         * gdk/quartz/gdkgc-quartz.c:
374         * gdk/quartz/gdkdrawable-quartz.c:
375         * gdk/quartz/gdkcolor-quartz.c: Expose the CGContext functions,
376         update callers.
377
378         * gdk/quartz/gdkmain-quartz.c: (_gdk_windowing_init): No need to
379         get the current process ID, use the right constant instead.
380
381 2006-07-28  Emmanuele Bassi  <ebassi@gnome.org>
382
383         * gtk/gtkrecentmanager.c (gtk_recent_manager_init): Add the
384         timeout for polling the file; change the default polling
385         delta to 2000 msec.
386
387 2006-07-27  Michael Natterer  <mitch@imendio.com>
388
389         * gdk/x11/gdkwindow-x11.c (gdk_window_get_type_hint): cast the
390         return value of XGetWindowProperty() correctly so we don't return
391         garbage type hints. Pointed out by Tommi Komulainen, patch taken
392         from https://maemo.org/bugzilla/show_bug.cgi?id=724
393
394 2006-07-27  Matthias Clasen  <mclasen@redhat.com>
395
396         * gtk/gtksettings.c (gtk_settings_finalize): Move the
397         _gtk_rc_context_destroy call to the right spot.  (#348096,
398         Chris Wilson)
399
400 2006-07-24  Richard Hult  <richard@imendio.com>
401
402         * gdk/quartz/gdkevents-quartz.c (gdk_screen_get_setting): Implement
403         getting the double click threshold.
404
405 2006-07-24  Richard Hult  <richard@imendio.com>
406
407         * gdk/quartz/gdkwindow-quartz.c (gdk_window_set_type_hint): Set the
408         window level depending on the type hint.
409
410         * gdk/quartz/gdkevents-quartz.c (gdk_keyboard_grab,
411         pointer_ungrab_internal): Only break the grab if the new window is
412         a different one.
413         (gdk_event_translate): Catch the case where the entire app loses 
414         focus and break any grabs. Only do implicit grabs when the event
415         mask has both press and release.
416
417         * gdk/quartz/gdkkeys-quartz.c (translate_keysym):
418         * gdk/quartz/gdkselection-quartz.c:
419
420         * gdk/quartz/GdkQuartzWindow.c
421         ([GdkQuartzWindow -windowDidResignKey:]): Use this to update the
422         focus window instead of resignMain, fixes the case where other apps
423         uses focus follows mouse (like the terminal can).
424
425 2006-07-23  Matthias Clasen  <mclasen@redhat.com>
426
427         * configure.in: Bump version
428         
429         * === Released 2.10.1 ===
430
431         *  NEWS: Updates
432
433         * gtk/gtkstyle.c (gtk_default_draw_box_gap): Draw
434         gaps on the left/right properly.  (#348134, Benjamin Otte)
435
436         * gtk/gtkprintsettings.c (gtk_print_settings_get_page_ranges):
437         Fix a memory leak.  (#348424, Carlos Garcia Campos)
438
439 2006-07-21  Matthias Clasen  <mclasen@redhat.com>
440
441         * gtk/gtkrc.h:
442         * gtk/gtkrc.c (_gtk_rc_context_destroy): New function to
443         destroy an rc context.
444
445         * gtk/gtksettings.c (gtk_settings_finalize): Destroy the rc context.
446         (gtk_settings_get_for_screen): Unref the settings when the screen
447         goes away. (#348096, Chris Wilson)
448
449 2006-07-21  Richard Hult  <richard@imendio.com>
450
451         * gdk/quartz/gdkgc-quartz.c: (gdk_quartz_gc_get_values),
452         (gdk_quartz_gc_set_values), (_gdk_windowing_gc_copy),
453         (gdk_gc_get_screen): Implement.
454
455         * gdk/quartz/gdkwindow-quartz.c: (gdk_window_set_back_pixmap):
456         Implement.
457
458 2006-07-21  Matthias Clasen  <mclasen@redhat.com>
459
460         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_get_preedit_string): 
461         0-terminate outbuf in all cases.  (#348227, Nguyen Thái Ngoc Duy)
462
463 2006-07-21  Michael Natterer  <mitch@imendio.com>
464
465         Enable symbolic colors and color expressions in style
466         properties. Fixes bug #346751.
467
468         * gtk/gtkrc.c (rc_parse_token_or_compound): add GtkRcStyle
469         parameter and replace symbolic colors by color constants.
470
471         (gtk_rc_parse_assignment): likewise. Also support parsing of
472         expressions of the form identifier(compound).
473
474         (gtk_rc_parse_style): pass the GtkRcStyle to
475         gtk_rc_parse_assignment().
476
477         (gtk_rc_parse_statement): pass NULL since we don't have a
478         GtkRcStyle here.
479
480 2006-07-21  Michael Natterer  <mitch@imendio.com>
481
482         * gtk/gtkentrycompletion.c (gtk_entry_completion_finalize):
483         remove accidential 2nd parameter to g_object_unref().
484
485 2006-07-21  Matthias Clasen  <mclasen@redhat.com>
486
487         * gtk/gtkentrycompletion.c (gtk_entry_completion_finalize):
488         Don't leak the action_view.  (#348120, Chris Wilson)
489
490         * gtk/gtknotebook.c (gtk_notebook_paint): Improve drawing
491         of tabs while reordering.  (#348115, Benjamin Otte)
492
493         * gtk/gtkiconview.c (gtk_icon_view_destroy): Don't
494         leak the adjustments.  (#348094, Chris Wilson)
495
496         * gtk/gtknotebook.c (gtk_notebook_stop_reorder): Unset
497         the during_reorder flag.  (#348049, Sven Herzberg, patch
498         by Benjamin Otte)
499
500 2006-07-20  Matthias Clasen  <mclasen@redhat.com>
501
502         * gtk/gtkmenu.c (gtk_menu_destroy): Just remove the scroll
503         timeout here, don't access settings.  (#348095, Chris Wilson)
504
505         * gtk/gtktextlayout.c (gtk_text_layout_set_contexts): Fix
506         messed up refcounting.  (#348090, Chris Wilson)
507
508         * gtk/gtkicontheme.h: 
509         * gtk/gtkicontheme.c (_gtk_icon_theme_ensure_builtin_cache): 
510         Export this privately.
511
512         * gtk/gtkiconfactory.c (render_fallback_image): And call it
513         here to initialize the builtin cache before using it.  (#348063,
514         Diego Pettenò)
515
516 2006-07-19  Federico Mena Quintero  <federico@novell.com>
517
518         * tests/autotestfilechooser.c (test_black_box): Argh, initialize
519         "passed"!
520         (set_filename_timeout_cb): Renamed from timeout_cb().
521         (test_confirm_overwrite): New function, test confirmation before
522         overwriting a file in SAVE mode.
523
524 2006-07-20  Michael Natterer  <mitch@imendio.com>
525
526         * gtk/gtkrecentchoosermenu.c (gtk_recent_chooser_menu_finalize):
527         fix typo to make it compile again.
528
529 2006-07-20  Emmanuele Bassi  <ebassi@gnome.org>
530
531         * gtk/gtkrecentchoosermenu.c:
532         (gtk_recent_chooser_menu_finalize): Correctly chain up the
533         finalization vfunc. (#348089, Chris Wilson)
534
535 2006-07-20  Richard Hult  <richard@imendio.com>
536
537         * gdk/quartz/gdkevents-quartz.c: (generate_grab_broken_event):
538         Append the event to the queue instead of using gdk_event_put.
539         (_gdk_quartz_get_mouse_window, find_current_keyboard_window):
540         Handle grabs.
541         (get_event_mask_from_ns_event, create_focus_event)
542         (convert_window_coordinates_to_root, find_window_for_event)
543         (gdk_event_translate): Improve readability (style changes).
544         (gdk_flush, gdk_display_sync, gdk_display_flush)
545         (gdk_event_send_client_message_for_display),
546         (gdk_screen_broadcast_client_message): Remove FIXMEs.   
547         (gdk_screen_get_setting): Reindent.
548         Also move find_child_window_by_point to gdkwindow-quartz.c.
549         
550         * gdk/quartz/gdkwindow-quartz.c:
551         (find_child_window_by_point_helper),
552         (_gdk_quartz_find_child_window_by_point): Move here from 
553         gdkevents-quartz.c
554         (_gdk_windowing_window_get_pointer): Handle destroyed windows and
555         imlement the return value.
556         (_gdk_windowing_window_at_pointer): Implement.
557
558 2006-07-19  Richard Hult  <richard@imendio.com>
559
560         * gtk/gtkdnd-quartz.c (register_types): Reindent.
561         
562         * gtk/gtkclipboard-quartz.c (gtk_clipboard_set_contents): Add
563         autorelease pool.
564
565 2006-07-19  Richard Hult  <richard@imendio.com>
566
567         * gdk/quartz/GdkQuartzWindow.c
568         ([GdkQuartzWindow -windowDidResignMain:]):
569         * gdk/quartz/gdkevents-quartz.c (_gdk_quartz_update_focus_window):
570         Listen to windowDidResignMain notifications and properly update the
571         focus window when windows are unfocused.
572
573 2006-07-19  Kristian Rietveld  <kris@imendio.com>
574
575         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_init),
576         (gtk_cell_renderer_text_[gs]et_property), (get_layout): add
577         align_set field to keep track whether the align property was
578         set by the user, if not we will use the alignment by looking
579         at the direction of the widget. (#157439)
580
581 2006-07-19  Matthias Clasen  <mclasen@redhat.com>
582
583         * modules/printbackends/file/gtkprintbackendfile.c 
584         (file_printer_get_settings_from_options): Check if option
585         is NULL before using it.  (#348014, Christian Persch)
586
587         * gdk/x11/gdkx.h (gdk_font_lookup_for_display): When looking
588         up a font XID, add the XID_FONT_BIT.  (#348001)
589
590 2006-07-19  Richard Hult  <richard@imendio.com>
591
592         * gdk/quartz/GdkQuartzView.c ([GdkQuartzView -drawRect:]):
593         * gdk/quartz/gdkpixmap-quartz.c (gdk_pixmap_new): Remove unused
594         variables to fix compiler warnings.
595
596 2006-07-19  Richard Hult  <richard@imendio.com>
597
598         * gdk/quartz/gdkwindow-quartz.c (gdk_window_impl_quartz_init)
599         (gdk_window_set_type_hint, gdk_window_get_type_hint):
600         * gdk/quartz/GdkQuartzWindow.c
601         ([GdkQuartzWindow -canBecomeMainWindow])
602         ([GdkQuartzWindow -canBecomeKeyWindow]): Implement type hints and
603         use them to determine which windows should be allowed to become
604         main and key windows.
605
606 2006-07-19  Richard Hult  <richard@imendio.com>
607
608         * gdk/quartz/gdkwindow-quartz.c:
609         (_gdk_windowing_window_get_pointer): Get the position correctly
610         for the root window. Fixes bug #347976, patch by Dave Vasilevsky.
611
612 2006-07-18  Matthias Clasen  <mclasen@redhat.com>
613
614         * NEWS: Updates
615
616         * gtk/gtkdnd.c: Make the ipc widgets GtkWindows instead
617         of GtkInvisibles, and put them in the same window group
618         as the drag source, to avoid interactions between DND
619         and window groups.  (#347277, Michael Wu, analysis by
620         Owen Taylor)
621
622 2006-07-18  John (J5) Palmieri  <johnp@redhat.com>
623
624         * modules/printbackends/cups/gtkprintbackendcups.c:
625         Make bits from my last commit are conditionally compiled
626         only if cups 1.2 is available. 
627
628 2006-07-18  John (J5) Palmieri  <johnp@redhat.com>
629
630         * gtk/gtkprinteroption.h:
631         * gtk/gtkprinteroptionwidget.c:
632         * modules/printbackends/cups/gtkprintbackendcups.c:
633         add GTK_PRINTER_OPTION_TYPE_PICKONE_PASSWORD,
634         GTK_PRINTER_OPTION_TYPE_PICKONE_PASSCODE,
635         GTK_PRINTER_OPTION_TYPE_PICKONE_REAL,
636         GTK_PRINTER_OPTION_TYPE_PICKONE_INT,
637         and GTK_PRINTER_OPTION_TYPE_PICKONE_STRING options to support a subset
638         of the new CUPS 1.2 custom options spec
639
640 2006-07-18  Federico Mena Quintero  <federico@novell.com>
641
642         Fix https://bugzilla.novell.com/show_bug.cgi?id=184875 - make the
643         location entry in Save mode preserve the stuff from
644         set_filename(); it was overwriting it with $cwd.
645
646         This is the same fix for
647         http://bugzilla.gnome.org/show_bug.cgi?id=347066
648
649         * tests/autotestfilechooser.c: (test_black_box): Added black-box
650         test for set_filename() and set_current_name().
651
652         * gtk/gtkfilechooser.c (gtk_file_chooser_get_type): Cast to
653         GClassInitFunc in the call to g_type_register_static_simple(), to
654         avoid a compiler warning.
655
656         * gtk/gtkfilechooserprivate.h (struct _GtkFileChooserDefault):
657         Added a browse_files_last_selected_name field.  We'll copy the
658         logic from gtkfilesel.c to see when to clear the location entry.
659         (struct _GtkFileChooserDefault): Removed the
660         processing_pending_selections field.
661
662         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_finalize):
663         Free impl->browse_files_last_selected_name.
664         (pending_select_paths_process): Don't use
665         impl->processing_pending_selections.
666         (update_chooser_entry): Keep track of the name that was last
667         selected in the file list.  We use this to know when to clear the
668         location entry.  The logic is similar to that of
669         gtkfilesel.c:gtk_file_selection_file_changed().  This also lets us
670         get rid of the processing_pending_selections flag.
671         (update_chooser_entry): Clear the entry if we didn't have a
672         selection before.
673         (location_switch_to_filename_entry): Do not set $cwd as the
674         contents of the location entry here...
675         (location_popup_handler): ... but do it here instead, only as the
676         result of the user asking to turn on the location entry.
677         (gtk_file_chooser_default_get_paths): If the location entry is
678         empty, do the fallback of seeing if it is sensible to say that
679         $cwd is the selected path.
680         (gtk_file_chooser_default_update_current_folder): Don't set the
681         text of the location entry; this is no longer needed with the
682         fixes above.
683         (shortcuts_activate_iter): Clear the location entry when
684         activating a shortcut if we are not in SAVE mode.  This keeps the
685         contents of the location entry consistent even when switching
686         folders via the shortcuts.
687
688 2006-07-18  Michael Natterer  <mitch@imendio.com>
689
690         * gtk/gtkrange.c: remember the sensitivity of the steppers in
691         GtkRangeLayout, update it in gtk_range_calc_layout() and check for
692         changes in layout_changed(), so adjustment changes that leave the
693         slider position unchanged are still able to update the steppers'
694         sensitivity. Fixes bug #347902.
695
696 2006-07-18  Kristian Rietveld  <kris@imendio.com>
697
698         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_start_editing):
699         oooops.
700
701 2006-07-18  Kristian Rietveld  <kris@imendio.com>
702
703         Fix for #335012, reported by Matteo Nastasi.
704
705         * gtk/gtktreeview.c (gtk_tree_view_real_start_editing): if the
706         requested space of the editable is smaller than the cell area,
707         put it up above the middle of the cell area.
708
709         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_start_editing):
710         configure the inner border to cover the cell area if the 
711         entry requisition is smaller than the cell_area.
712
713 2006-07-18  Kristian Rietveld  <kris@imendio.com>
714
715         Another fix for #164884.
716
717         * gtk/gtktreeprivate.h: add in_grab field.
718
719         * gtk/gtktreeview.c (gtk_tree_view_button_press): only save press
720         to possibly begin a drag when there's no grab pending,
721         (gtk_tree_view_grab_notify): toggle in_grab field.
722
723 2006-07-18  Kristian Rietveld  <kris@imendio.com>
724
725         * gtk/gtktreeview.c (gtk_tree_view_realize): use MAX
726         priv->width, alloc.width when allocating the bin_window,
727         (gtk_tree_view_bin_expose): don't overrun bin_window when drawing
728         the flat box.
729
730 2006-07-17  Richard Hult  <richard@imendio.com>
731
732         * gtk/gtkdnd-quartz.c: (gtk_drag_begin_internal): Set an empty
733         NSImage if there is none, covers the cases where applications try
734         to set a pixmap which is not supported by the quartz backend.
735
736 2006-07-17  Richard Hult  <richard@imendio.com>
737
738         * gdk/quartz/gdkevents-quartz.c: (create_key_event):
739         * gdk/quartz/gdkkeys-quartz.c: (_gdk_quartz_key_event_type),
740         (_gdk_quartz_key_is_modifier):
741         * gdk/quartz/gdkprivate-quartz.h: Fill in string, length and
742         is_modifier for key events. Map some more keys into gdk keyvals.
743
744 2006-07-17  Matthias Clasen  <mclasen@redhat.com>
745
746         * gtk/gtknotebook.c (gtk_notebook_stop_reorder): Don't undo
747         reordering if we haven't been reordering.  (#346836, Ed Catmur)
748
749 2006-07-17  Richard Hult  <richard@imendio.com>
750
751         * gdk/quartz/gdkkeys-quartz.c: Add escape to the list of special
752         keys, to get the escape key working.
753
754 2006-07-17  Richard Hult  <richard@imendio.com>
755
756         * gdk/quartz/gdkdisplay-quartz.c (gdk_display_open): Initialize
757         GdkInput.
758         
759 2006-07-17  Kristian Rietveld  <kris@imendio.com>
760
761         * gtk/gtktreeview.c (gtk_tree_view_build_tree): check if the iter
762         still has children after running the test-expand-row func,
763         (gtk_tree_view_real_expand_row): ditto. (#302127, Billy Biggs).
764
765 2006-07-17  Michael Natterer  <mitch@imendio.com>
766
767         * gtk/gtkcalendar.c (calendar_timer): use 5 * gtk-timeout-repeat,
768         just as many other widgets. Makes the calendar arrow buttons
769         usable for quick month/year skipping (#142582).
770
771 2006-07-17  Richard Hult  <richard@imendio.com>
772
773         * gdk/quartz/gdkwindow-quartz.c:
774         (_gdk_windowing_window_destroy_foreign): Fix comment.
775         (gdk_window_set_title): Surround by release pool macros.
776         (gdk_window_get_type_hint): Fix return value.
777         (gdk_window_get_frame_extents): Implement.
778         (gdk_window_iconify): Use the release pool macros.
779         (gdk_window_deiconify): Likewise. 
780         (_gdk_windowing_get_pointer): Implement.
781         (gdk_window_get_deskrelative_origin, gdk_window_get_root_origin): 
782         Implement.
783
784         * gdk/quartz/gdkevents-quartz.c (create_crossing_event) 
785         (create_scroll_event, convert_window_coordinates_to_root): 
786         Set coordinates and root coordinates for crossing and scroll 
787         events.
788
789         * gdk/quartz/gdkcursor-quartz.c (gdk_cursor_new_for_display): 
790         Map some more cursors.
791
792 2006-07-17  Matthias Clasen  <mclasen@redhat.com>
793
794         * gdk/gdkwindow.c (gdk_window_get_pointer): Add some more
795         detail to the docs.  (#311399, Nikos Kouremenos)
796
797         * gtk/gtkentrycompletion.c (gtk_entry_completion_set_match_func): 
798         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_set_text_column): 
799         Fix typos in the docs.
800
801 2006-07-16  Matthias Clasen  <mclasen@redhat.com>
802
803         * gtk/gtkassistant.c: Some small documentation
804         fixups.  (#347711, Guillaume Cottenceau)
805
806         * gtk/gtkfilechooserdefault.c (browse_widgets_create): Mark
807         the text of the location label as translatable.  
808
809         * gtk/gtkprintjob.c (gtk_print_job_send): Fix a typo in 
810         the docs.  (#347211, Kouhei Sutou)   
811
812         * configure.in: Make the test for the sync extension
813         more robust.  (#347315, Tommi Komulainen)
814
815 2006-07-13  Michael Emmel  <mike.emmel@gmail.com>
816
817         * gdk/directfb/gdkdrawable-directfb.c
818         Remove +1 in fill and draw rect this may be wrong.
819         Commented out update calls left for reference the should not be needed.
820         Comment out subsurface for cairo remove when proved its not needed
821         * gdk/directfb/gdkkeys-directfb.c
822         Allow multiple calls and return if initalized
823         * gdk/directfb/gdkmain-directfb.c
824         Make sure string is malloced since its freed by apps
825         * gdk/directfb/gdkprivate-directfb.c
826         Added back pointer to window for paintable impl
827         * gdk/directfb/gdkvisual-directfb.c
828         Fix for Bug 346733 make sure visual list is populated
829         * gdk/directfb/gdkwindow-directfb.c
830         Finally removed uneeded pixmap buffering now implements GdkPainter
831
832 2006-07-11  Emmanuele Bassi  <ebassi@gnome.org>
833
834         * gtk/gtkrecentchooser.c (gtk_recent_chooser_set_show_numbers),
835         (gtk_recent_chooser_get_show_numbers): Check if the chooser
836         implementation supports the "show-number" property and use a
837         meaningful warning in case it doesn't; tell developers not to
838         use these functions.
839
840 2006-07-10  Matthias Clasen  <mclasen@redhat.com>
841
842         * gtk/gtkaction.c:
843         * gtk/gtkiconview.c:
844         * gtk/gtkprintbackend.c:
845         * gtk/gtkprintoperation-unix.c:
846         * gtk/gtkscrolledwindow.c:
847         * gtk/gtktoolbar.c: Fix some typos with inline property
848         docs.  (#347065, John Finlay)
849
850         * gtk/gtkfilechooserbutton.c: Fix some memory handling
851         issues.  (#347043, Chris Wilson)
852
853 2006-07-10  Emmanuele Bassi  <ebassi@gnome.org>
854
855         * gtk/gtkrecentchooserdefault.c (scan_for_uri_cb): Do not
856         leak the URI returned by the model; select the row when
857         calling gtk_recent_chooser_set_current_uri(). (patch by
858         Torsten Schoenfeld)
859
860 2006-07-10  Matthias Clasen  <mclasen@redhat.com>
861
862         * gtk/gtkpapersize.c (gtk_paper_size_is_equal): Fix a 
863         typo in the docs.  (#347041, Kouhei Sutou)
864
865         * gtk/gtkprintcontext.c (gtk_print_context_get_height): Fix
866         a typo in the docs.  (#347032, Kouhei Sutou)
867
868         * gtk/gtkassistant.c (gtk_assistant_focus): Don't assume
869         that priv->current_page is non-NULL.  (#347048, Guillaume 
870         Cottenceau)
871
872         * gtk/gtk.symbols: Add some missing deprecation guards.
873
874         * gdk/directfb/gdkwindow-directfb.c: Don't confuse gtk-doc.
875
876 2006-07-10  Richard Hult  <richard@imendio.com>
877
878         * gdk/quartz/gdkpixmap-quartz.c: (gdk_bitmap_create_from_data): 
879         Account for alignment when reading xbm data. (#346721, patch
880         by Dave Vasilevsky)
881
882 2006-07-09  Richard Hult  <richard@imendio.com>
883
884         * gdk/quartz/gdkgeometry-quartz.c:
885         * gdk/quartz/gdkmain-quartz.c:
886         * gdk/quartz/gdkpixmap-quartz.c:
887         * gdk/quartz/gdkwindow-quartz.c:
888         * gtk/gtkclipboard-quartz.c: Implement some more stubs for pygtk, 
889         bug #346713.
890
891 2006-07-09  Richard Hult  <richard@imendio.com>
892
893         * gdk/quartz/gdkwindow-quartz.c (gdk_window_new): Release the pool
894         in all cases.
895         (move_resize_window_internal): Surround by alloc/release pool.
896         Patch from Brian Tarricone, fixes bug #347018.
897
898 2006-07-08  Matthias Clasen  <mclasen@redhat.com>
899
900         * gtk/gtkfilechooserbutton.c (update_label_and_image): Don't
901         leak an empty list.  (#346970, Chris Wilson)
902
903 2006-07-08  Behdad Esfahbod  <behdad@gnome.org>
904
905         * gdk/gdkpango.c (layout_iter_get_line_clip_region),
906         (gdk_pango_layout_line_get_clip_region),
907         (gdk_pango_layout_get_clip_region): Fix quadratic implementation of
908         gdk_pango_layout_get_clip_region into a linear one. (#337910, patch
909         by Priit Laes)
910
911 2006-07-07  Richard Hult  <richard@imendio.com>
912
913         * gdk/quartz/gdkevents-quartz.c: Generate a grab broken event when
914         appropriate. Fixes bug #346603, patch from Dave Vasilevsky.
915         
916         * gdk/quartz/gdkevents-quartz.c:
917         * gdk/quartz/gdkkeys-quartz.c:
918         * gdk/quartz/gdkprivate-quartz.c: Another patch from Dave Vasilevsky,
919         fixes bug #346605. Makes modifier key events being sent properly.
920
921 2006-07-07  Michael Natterer  <mitch@imendio.com>
922
923         * gtk/gtkrc.c
924         * gtk/gtksettings.c: fix canonicalization of property names which
925         was broken after recent constant string cleanup.
926
927 2006-07-07  Matthias Clasen  <mclasen@redhat.com>
928
929         * gtk/gtkicontheme.c: Small memory savings.
930
931 2006-07-06  Matthias Clasen  <mclasen@redhat.com>
932
933         * gtk/gtkfilechooserbutton.c: Get the display name
934         for the home directory.  (#346498, Dennis Cranston,
935         patch by Andreas Köhler)
936
937 2006-07-06  Behdad Esfahbod  <behdad@gnome.org>
938
939         * configure.in: Drop required Pango version down to 1.12.0. (#346597)
940
941 2006-07-06  John (J5) Palmieri  <johnp@redhat.com>
942
943         * modules/printbackends/cups/gtkprintbackendcups.c: 
944         (cups_request_printer_list_cb): Get the name of the first printer
945         in a class to use when requesting a PPD
946         (cups_request_ppd_cb, cups_request_ppd): Fix the parameters of
947         the "details-acquired" signal emittion
948         (cups_request_ppd): get the ppd name from the cups printer
949
950         * modules/printbackends/cups/gtkprintercups.c (gtk_printer_cups_get_ppd_name):
951         New method for getting the name of the ppd we should request
952
953 2006-07-06  Michael Natterer  <mitch@imendio.com>
954
955         * gtk/gtkrc.c: added a bunch of utility functions to copy
956         icon_factories and color_hashes between GtkRcStyles and make sure
957         that newly created, duplicated and merged styles have access to
958         all icon_factories and color_hashes they need. Fixes bug #346668.
959
960 2006-07-06  Matthias Clasen  <mclasen@redhat.com>
961
962         * gtk/*.c: Improve the -/_ consistency in signal and
963         property names, reducing the amount of near-duplicate strings.
964
965 2006-07-05  Matthias Clasen  <mclasen@redhat.com>
966
967         * gtk/gtktreeview.c (gtk_tree_view_set_enable_tree_lines): Don't
968         leak dash_list.  (#346639, Christian Persch)
969
970         * gtk/gtkwindow.c (gtk_window_unmap, gtk_window_set_keep_above) 
971         (gtk_window_set_keep_below): Fix some assignments involving
972         booleans.  (#346467, Christian Persch)
973
974 2006-07-03  Matthias Clasen <mclasen@redhat.com>
975
976         * gtk/gtkgamma.c: Use serialized pixbufs instead of xpms.
977         
978 2006-07-03  Runa Bhattacharjee <runabh@gmail.com>
979
980         * configure.in: Added Bengali India (bn_IN) to ALL_LINGUAS.
981
982 2006-06-26  Michael Emmel  <mike.emmel@gmail.com>
983         
984         * gdk/directfb/gdkdirectfb.h: changed ifdef to compile with api introduced
985         in directfb 0.9.25 
986         * gdk/directfb/gdkwindow-directfb.c: changed ifdef to 0.9.25 
987
988 2006-07-03  Matthias Clasen  <mclasen@redhat.com>
989
990         * configure.in: Bump version
991
992 2006-07-02  Matthias Clasen  <mclasen@redhat.com>
993         
994         * === Released 2.10.0 ===
995
996         * gtk/gtkmenubar.c (window_key_press_handler): Treat
997         "" like NULL when parsing the menu-bar-accel setting.   
998         * gtk/gtkmenu.c (gtk_menu_key_press): Here too.  
999         (#346420, Yevgen Muntyan)
1000
1001         * configure.in: Require cairo 1.2 and GLib 2.12,
1002         set version to 2.10
1003
1004 2006-06-30  Matthias Clasen  <mclasen@redhat.com>
1005         
1006         * gtk/gtknotebook.c (gtk_notebook_tab_space): Remove
1007         redundant assignments to page, which may cause NULL
1008         dereferences.  (#346334, Dave Vasilevsky)
1009
1010         * demos/gtk-demo/editable_cells.c: Portability fix.
1011         (#346375, Thomas Klausner)
1012
1013         * NEWS, README.in, INSTALL.in: Updates
1014
1015         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize):
1016         Don't leak default_sort_data.  (#346341, Christian Weiske)
1017
1018         * gtk/Makefile.am: Make sure all win32-specific printing
1019         sources are distributed.  (#346312, Erik van Pienbroek)
1020         
1021         * gtk/gtkprinter.c (gtk_enumerate_printers): Always call the
1022         destroy notify.  (#346027, Christian Persch)
1023
1024         * gtk/gtkprintsettings.c (gtk_print_settings_get_page_ranges):
1025         Documentation updates.
1026
1027         * gtk/gtkprintunixdialog.c (gtk_print_unix_dialog_set_settings):
1028         Don't leak the ranges.  (#346237, Carolyn MacLeod)
1029
1030         * gtk/gtkprintjob.[hc]: Add a PREVIEW capability to hide
1031         the preview button.  (#346113, Christian Persch)
1032
1033         * gtk/gtkprintunixdialog.c (update_dialog_from_capabilities):
1034         Hide the preview button depending on the capability.
1035
1036         * gtk/gtkprintoperation-unix.c: Set the PREVIEW capability.
1037
1038 2006-06-29  Bill Skaggs  <weskaggs@primate.ucdavis.edu>
1039
1040         * gtk/gtkprogress.h: revert last change by Matthias -- it broke the
1041         build of gtkprogressbar.
1042
1043 2006-06-29  Matthias Clasen  <mclasen@redhat.com>
1044
1045         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Update the 
1046         size of the drawable for the root window when the screen size 
1047         changes.  (#346102, Sven Herzberg)
1048
1049 2006-06-29  Matthias Clasen  <mclasen@redhat.com>
1050
1051         * NEWS: Updates
1052
1053         * gtk/gtkprintoperation.c: Clarify docs for the allow-async
1054         property.  (#346108, Christian Persch)
1055
1056 2006-06-28  Matthias Clasen  <mclasen@redhat.com>
1057
1058         * gtk/gtkprinter.c: 
1059         * gtk/gtkprintunixdialog.c: 
1060         * gtk/gtkprintoperationpreview.c: 
1061         * gtk/gtkprintcontext.c (gtk_print_context_set_cairo_context): 
1062         * gtk/gtklabel.c (gtk_label_set_line_wrap_mode): 
1063         * gtk/gtkentry.c (gtk_entry_new):       
1064         * gtk/gtkprintoperation.c (gtk_print_operation_set_custom_tab_label): 
1065         * gtk/gtkclipboard.c (gtk_clipboard_wait_for_rich_text): Documentation
1066         additions and fixes.
1067
1068         * gtk/gtkaspectframe.h:
1069         * gtk/gtkaboutdialog.c:
1070         * gtk/gtkcalendar.c:
1071         * gtk/gtkinputdialog.c: 
1072         * gtk/gtk.symbols: Remove unnecessary includes.
1073         
1074         * gtk/gtkprogress.[hc]: 
1075         * gtk/gtkitemfactory.[hc]: Don't unnecessarily use GTK_COMPILATION,
1076         remove unnecessary includes.
1077
1078         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Only select the
1079         XKB event details we actually care about.  (#346079, Ryan Lortie)
1080
1081 2006-06-27  Kristian Rietveld  <kris@gtk.org>
1082
1083         * gtk/gtktreeview.c (gtk_tree_view_set_model): cancel the
1084         expand collapse timeout when unsetting the model (Fixes #327164,
1085         reported by Daichi Kawahata).
1086
1087 2006-06-26  Michael Emmel  <mike.emmel@gmail.com>
1088         
1089         * gdk/directfb/gdkdirectfb.h: added ifdef to compile with directfb 0.9.24 
1090         * gdk/directfb/gdkwindow-directfb.c: ifdef depend on directfb cvs 
1091
1092 2006-06-26  Kristian Rietveld  <kris@gtk.org>
1093
1094         Make the insert and set functions somewhat more convenient.
1095         (#343841, David Necas).
1096
1097         * gtk/gtkliststore.c (gtk_list_store_insert_with_values): allow
1098         a NULL iter,
1099         (gtk_list_store_insert_with_valuesv): likewise.
1100
1101         * gtk/gtktreestore.c (gtk_tree_store_insert_with_values): ditto,
1102         (gtk_tree_store_insert_with_valuesv): likewise.
1103
1104 2006-06-26  Michael Natterer  <mitch@imendio.com>
1105
1106         * gtk/gtktextview.c (gtk_text_view_size_allocate): revert "keep
1107         cursor visible when size changes" since it breaks things (#344874).
1108
1109 2006-06-26  Matthias Clasen  <mclasen@redhat.com>
1110
1111         * gtk/gtkcombobox.c (gtk_cell_view_menu_item_new): Avoid
1112         a refcounting leak in the python bindings.  (#344876, Phil Dumont)
1113
1114 2006-06-25  Matthias Clasen  <mclasen@redhat.com>
1115
1116         * gtk/gtkprinter.c (gtk_enumerate_printers): Make
1117         this work when the enumeration is stopped early.  (#344074,
1118         Felipe Heidrich)
1119
1120 2006-06-24  Matthias Clasen  <mclasen@redhat.com>
1121
1122         * gtk/gtkcombobox.c: Update the height as well
1123         when changing fonts.  (#321393, Billy Biggs)
1124 `
1125 2006-06-23  Christian Rose  <menthos@menthos.com>
1126
1127         * configure.in: Added "ur" to ALL_LINGUAS.
1128
1129 2006-06-22  Matthias Clasen  <mclasen@redhat.com>
1130
1131         Fix #345663, reported by Kazuki Iwamoto
1132         
1133         * gtk/gtkaction.c: Include gtkiconfactory.h
1134
1135         * gtk/gtkactiongroup.c: Include gtkicontheme.h
1136
1137 2006-06-22  Michael Natterer  <mitch@imendio.com>
1138
1139         * gtk/gtktextview.c (gtk_text_view_size_allocate): keep the cursor
1140         visible when the size changes. Fixes bug #344874.
1141
1142 2006-06-22  Matthias Clasen  <mclasen@redhat.com>
1143
1144         * gtk/gtkpintjob.h: Add a note about updating the registration.
1145         * gtk/gtkprintjob.c (gtk_print_capabilites_get_type): Add missing
1146         capabilitites. 
1147
1148         * modules/printbackends/cups/gtkprintbackendcups.c: Remove
1149         an unused variable and make it compile with Cups 1.1.  (#345644,
1150         Joseph Sacco)
1151
1152 2006-06-21  Matthias Clasen  <mclasen@redhat.com>
1153
1154         * configure.in: Bump version
1155         
1156         * === Released 2.9.4 ===
1157
1158         * modules/printbackends/file/gtkprintbackendfile.c: 
1159         Apply a patch by Christian Persch to support PostScript and PDF
1160         output.
1161
1162         * gtk/gtkprinteroptionwidget.c (radio_changed_cb): Don't free
1163         the value.
1164
1165 2006-06-21  Matthias Clasen  <mclasen@redhat.com>
1166
1167         Apply a patch by John Palmieri to use buffered io using
1168         GIOChannels, clean up error handling and support Cups 1.2
1169         api in the printing code.
1170
1171         * acconfig.h:
1172         * configure.in: Detect Cups 1.2
1173
1174         * gtk/gtkdebug.h:
1175         * gtk/gtkmain.c: Add a printing debug key.
1176
1177         * gtk/gtkprintbackend.[hc]: Remove the GError parameter from
1178         gtk_print_backend_print_stream, and take a  GIOChannel instead
1179         of an fd.
1180
1181         * gtk/gtkprinter-private.h:
1182         * gtk/gtkprinter.c: Replace the fd parameter of 
1183         _gtk_printer_create_cairo_surface by a GIOChannel.
1184
1185         * gtk/gtkprintjob.[hc]: Remove the GError parameter from
1186         gtk_print_job_send and make it return void.
1187
1188         * gtk/gtkprintoperation-unix.c:
1189         * gtk/gtkprintjob.c: Adjust callers, add some debugging support.
1190
1191         * modules/printbackends/Makefile.am: Fix DIST_SUBDIRS.
1192
1193         * modules/printbackends/cups/Makefile.am:
1194         * modules/printbackends/lpr/Makefile.am: Add debug CFLAGS.
1195         
1196         * modules/printbackends/cups/gtkcupsutils.[hc]: 
1197         * modules/printbackends/cups/gtkprintbackendcups.c:
1198         * modules/printbackends/file/gtkprintbackendfile.c:
1199         * modules/printbackends/lpr/gtkprintbackendfile.c: Adapt to
1200         the GIOChannel and GError changes, add debug output
1201         
1202 2006-06-21  Matthias Clasen  <mclasen@redhat.com>
1203
1204         * gtk/gtkprinter.c (gtk_enumerate_printers): Remove an 
1205         unused variable.
1206
1207         * NEWS: Updates
1208
1209         * gtk/gtktreeview.c (gtk_tree_view_class_init): Fix the registration
1210         of the grid-lines property  (#345456, Murray Cumming) 
1211         
1212 2006-06-21  Kristian Rietveld  <kris@imendio.com>
1213
1214         Allocate space for the grid lines when they are enabled.
1215
1216         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): make sure the cell
1217         area does not overlap with the grid lines, also draw the line for
1218         "the next cell" in the last loop iteration, make sure the cursor falls
1219         in between the grid lines,
1220         (validate_row): request extra space for the grid lines.
1221
1222 2006-06-21  Matthias Clasen  <mclasen@redhat.com>
1223
1224         * gtk/gtkprintbackend.h: 
1225         * gtk/gtkprintbackend.c (gtk_print_backend_print_stream): Add an
1226         GError parameter.
1227
1228         * modules/printbackends/file/gtkprintbackendfile.c 
1229         (gtk_print_backend_file_print_stream): 
1230         * modules/printbackends/lpr/gtkprintbackendlpr.c 
1231         (gtk_print_backend_lpr_print_stream): 
1232         * modules/printbackends/cups/gtkprintbackendcups.c 
1233         (gtk_print_backend_cups_print_stream): 
1234         * gtk/gtkprintjob.c (gtk_print_job_send): Update all callers and
1235         implementations.
1236
1237         * modules/printbackends/cups/gtkprintbackendcups.c: Remove the
1238         GError parameter from cups_request_execute(), and various other
1239         cleanups.
1240
1241 2006-06-20  Matthias Clasen  <mclasen@redhat.com>
1242
1243         * gtk/gtkprintjob.c (gtk_print_job_class_init): Make 
1244         track-print-status a property.
1245
1246 2006-06-20  Murray Cumming  <murrayc@murrayc.com>
1247
1248         * gtk/gtkprintoperation.c: (gtk_print_operation_class_init): 
1249         Correctly register the done signal - it sends an enum, not an int.
1250
1251 2006-06-20  Christian Persch  <chpe@cvs.gnome.org>
1252         
1253         * configure.in
1254         * gtk/Makefile.am
1255         * modules/printbackends/Makefile.am
1256         A modules/printbackends/file/.cvsignore
1257         A modules/printbackends/file/Makefile.am
1258         A modules/printbackends/file/gtkprintbackendfile.c
1259         A modules/printbackends/file/gtkprintbackendfile.h
1260         R modules/printbackends/pdf/*:
1261         Rename "pdf" backend to "file" backend. Step 2 from bug #339592.
1262
1263 2006-06-20  Christian Persch  <chpe@cvs.gnome.org>
1264
1265         * gtk/gtkprinteroptionwidget.c: (filesave_changed_cb),
1266         (alternative_set), (construct_widgets): Convert input to filename
1267         encoding and construct an URI from that.
1268         * gtk/gtkprintsettings.h: Add OUTPUT_FILE_FORMAT and OUTPUT_URI keys.
1269         * modules/printbackends/pdf/gtkprintbackendpdf.c: Use those defines.
1270         Step 1 from bug #339592.
1271
1272 2006-06-20  Matthias Clasen  <mclasen@redhat.com>
1273
1274         * gtk/gtkprintjob.c (gtk_print_job_set_source_file): Add to docs.
1275
1276         Fix handling of stock items without icons in action-based
1277         ui.  (#342458, Callum McKenzie)
1278         
1279         * gtk/gtkactiongroup.c (gtk_action_group_add_actions_full): Set
1280         the stock id even if there is no icon for it.
1281
1282         * gtk/gtkaction.c (connect_proxy): 
1283         * gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): Only
1284         construct a stock icon if the stock item has an icon.
1285
1286 2006-06-20  Matthias Clasen  <mclasen@redhat.com>
1287
1288         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_info): Better 
1289         fix.
1290
1291         * gtk/gtk.symbols: 
1292         * gtk/gtkprintsettings.h: 
1293         * gtk/gtkprintsettings.c: Remove unused print-to-file setting.
1294
1295 2006-06-20  Carlos Garnacho  <carlosg@gnome.org>
1296
1297         * gtk/gtknotebook.c (gtk_notebook_stop_reorder): unset the pressed
1298         button here.
1299         (gtk_notebook_grab_notify): stop reorder when the widget becomes
1300         shadowed. Fixes bug #335873
1301
1302 2006-06-18  Christian Persch  <chpe@cvs.gnome.org>
1303
1304         * gtk/gtkdialog.c: (gtk_dialog_class_init): Set default action area
1305         spacing to HIG-compliant 6px. Bug #345106, follow-up from bug #163850.
1306
1307 2006-06-20  Matthias Clasen  <mclasen@redhat.com>
1308
1309         * gtk/gtkiconview.c (gtk_icon_view_enable_model_drag_dest): 
1310         Small doc fix.  (#345176, Claudio Saavedra)
1311
1312         * gdk/x11/gdkwindow-x11.c (gdk_window_set_functions): Update
1313         the docs. (#345194, Yevgen Muntyan)
1314
1315 2006-06-19  Matthias Clasen  <mclasen@redhat.com>
1316
1317         * gtk/gtktreeview.c (gtk_tree_view_set_grid_lines): Don't leak
1318         dash_list.
1319         (gtk_tree_view_set_column_drag_info): Don't crash if the 
1320         column_drop_func says always no.  (#344850, Christian Weiske)
1321         
1322         Make transparent tray icons work.  (#320034, based on a 
1323         patch by Dan Winship)
1324         
1325         * gtk/gtktrayicon-x11.c (gtk_tray_icon_init): Make trayicons
1326         app-paintable and non-double buffered. 
1327
1328         * gtk/gtkrc.c (_gtk_rc_init): Give tray icons a parent-relative
1329         background in the default style.
1330
1331 2006-06-19  Matthias Clasen  <mclasen@redhat.com>
1332
1333         * gtk/updateiconcache.c: Marks strings for translation.  (#314278,
1334         Claudio Saavedra)
1335
1336         * gtk/gtkentrycompletion.c (gtk_entry_completion_compute_prefix): Don't
1337         call g_str_has_prefix on a NULL strung.  (#344897, Tommi Komulainen)
1338
1339         * gtk/gtkfilechooserdefault.c: 
1340         Avoid a near-duplicate string and add some
1341         translator comments.  (#345320, #345321, Hendrik Richter)
1342
1343 2006-06-19  Federico Mena Quintero  <federico@novell.com>
1344
1345         * gtk/gtkfilechooser.c (gtk_file_chooser_get_current_folder)
1346         (gtk_file_chooser_get_current_folder_uri): Clarify the use of
1347         these functions, to avoid the case where a chooser is in
1348         SELECT_FOLDER mode and people mistakenly use _get_current_folder()
1349         to get the selection:  they should use _get_filename() instead.
1350
1351 2006-06-19  Alexander Larsson  <alexl@redhat.com>
1352
1353         * gtk/gtk.symbols:
1354         * gtk/gtklabel.[ch]:
1355         Add gtk_label_set_line_wrap_mode, gtk_label_get_line_wrap_mode, and
1356         a wrap-mode property that lets you set the PangoWrapMode.
1357
1358 2006-06-19  Matthias Clasen  <mclasen@redhat.com>
1359
1360         * gtk/gtk.symbols: Add new functions
1361
1362         * gtk/gtkprinter.h: 
1363         * gtk/gtkprinter.c (gtk_enumerate_printers): New function
1364         to list all printers (#344074, Felipe Heidrich)
1365
1366         * gtk/gtkprinter-private.h: 
1367         * gtk/gtkprinter.c (_gtk_printer_get_options) 
1368
1369         * gtk/gtkprintbackend.h: Add a capabilities argument to the 
1370         printer_get_options method and to the _gtk_printer_get_options
1371         function
1372         
1373         * modules/printbackends/lpr/gtkprintbackendlpr.c 
1374         (lpr_printer_get_options): 
1375         * modules/printbackends/pdf/gtkprintbackendpdf.c 
1376         (pdf_printer_get_options): 
1377         * modules/printbackends/cups/gtkprintbackendcups.c 
1378         (cups_printer_get_options): 
1379         * gtk/gtkprintunixdialog.c (selected_printer_changed): Adjust
1380         callers and implementations.
1381
1382         * gtk/gtkprintjob.h: Add a GENERATE_PS capability. 
1383         * gtk/gtkprintunixdialog.c (is_printer_active): And use it here.
1384
1385 2006-06-18  Matthias Clasen  <mclasen@redhat.com>
1386
1387         * tests/testnouiprint.c (main): Don't open a display connection.
1388
1389         * gtk/gtkprintbackend.c (gtk_print_backend_load_modules): Make
1390         this work without a display connection.  (339702, Alexander Larsson)
1391
1392         * gtk/gtkwindow.c (gtk_window_move): Small doc addition. 
1393         (#345275, Behdad Esfahbod)
1394
1395 2006-06-17  Matthias Clasen  <mclasen@redhat.com>
1396
1397         * modules/printbackends/pdf/gtkprintbackendpdf.c:
1398         * modules/printbackends/lpr/gtkprintbackendlpr.c: Fix a typo:
1399         s/Extention/Extension/. 
1400         
1401         * gtk/gtkprintunixdialog.c: Clean up the handling of 
1402         printer-specific options. There is just one extension point on the
1403         main tab now, and all options in the GtkPrintDialogExtension
1404         group are put there. 
1405
1406         * gtk/gtkprinteroption.h: 
1407         * gtk/gtkprinteroption.c: Add GTK_PRINTER_OPTION_TYPE_ALTERNATIVE
1408         which is semantically the same as PICKONE, but is intended to 
1409         show all options all the time.
1410         
1411         * gtk/gtkprinteroptionwidget.c: Implement ALTERNATIVE as radio
1412         group.
1413
1414 2006-06-16  Matthias Clasen  <mclasen@redhat.com>
1415
1416         * modules/printbackends/cups/gtkprintbackendcups.c:
1417         * modules/printbackends/lpr/gtkprintbackendlpr.c: Use a stock icon
1418         for printers.
1419
1420         * gtk/gtkprintunixdialog.c (add_option_to_table): Don't grow
1421         additional columns.
1422
1423         * gtk/gtkprintbackend.h: Add a GtkPrintSettings parameter to the
1424         printer_create_cairo_surface method.
1425         
1426         * modules/printbackends/pdf/gtkprintbackendpdf.c: 
1427         * modules/printbackends/cups/gtkprintbackendcups.c: 
1428         * modules/printbackends/lpr/gtkprintbackendlpr.c: 
1429         * gtk/gtkprinter.c (_gtk_printer_create_cairo_surface): 
1430         * gtk/gtkprinter-private.h: 
1431         * gtk/gtkprintjob.c (gtk_print_job_get_surface): Adapt all users.
1432
1433         * gtk/gtkentrycompletion.c (gtk_entry_completion_finalize): Don't
1434         leak match data.  (#345107,  Christian Weiske)
1435
1436         * gtk/gtkprintunixdialog.c (populate_dialog): Move the conflict
1437         label out of the button box.  (#339456, Christian Persch)
1438
1439         * gtk/gtksizegroup.c (compute_dimension): Ignore unmapped widgets
1440         when ignore_hidden is TRUE.  (#344707, Christian Persch)
1441
1442         * configure.in: Require cvs glib.
1443
1444         * gtk/gtkprintoperation-unix.c: 
1445         (_gtk_print_operation_platform_backend_create_preview_surface): 
1446         Don't use a temporary directory for preview files, since it
1447         is not clear who cleans it up. Instead, use g_mkstemp() directly
1448         to create a temp pdf file, and make the preview app responsible
1449         for cleaning it up.
1450
1451         * gtk/gtkprintbackend.c: Move the registration of the 
1452         gtk-print-preview-command setting from gtkprintbackend.c to 
1453         gtkprintoperation-unix.c, to make sure it is registered before
1454         the first use. Also, document the two settings.
1455
1456         * tests/print-editor.c: Add a "Preview" menu item.
1457
1458         * gtk/gtkprintoperation-unix.c (handle_print_response): When starting
1459         a preview from the print dialog, set the action to PREVIEW.
1460
1461         * gtk/gtkprintoperation.c: Cosmetic changes.
1462
1463 2006-06-16 Matthias Clasens  <mclasen@redhat.com>
1464
1465         * gtk/gtkprintoperation-unix.c: Mark the preview filename
1466         as translatable (#345093, Christian Persch)
1467
1468 Fri Jun 16 11:49:53 2006  Tim Janik  <timj@imendio.com>
1469
1470         * fixed #337882 by applying patches from Tommi Komulainen:
1471
1472         * gtk/gtkprogressbar.c:
1473         (gtk_progress_bar_paint_activity):
1474         (gtk_progress_bar_get_activity): Move activity bar offset and size
1475         calculations to separate function.
1476         (gtk_progress_bar_paint_text): Allow caller to specify offset for the
1477         prelight part in addition to width.
1478         (gtk_progress_bar_paint): Paint the text also in activity mode, #337882.
1479
1480         * gtk/gtkprogressbar.c: (gtk_progress_bar_paint_text): Paint the
1481         prelighted text on top of the normal rather than side by side, to
1482         simplify painting text in activity mode.
1483
1484 2006-06-16  Matthias Clasen  <mclasen@redhat.com>
1485
1486         * modules/printbackends/cups/gtkprintbackendcups.c: Include
1487         gtkprinter-private.h  (#345038, Christian Persch)
1488  
1489 2006-06-15  Matthias Clasen  <mclasen@redhat.com>
1490
1491         * modules/printbackends/pdf/gtkprintbackendpdf.c: Use the
1492         stock floppy icon.
1493
1494         * gtk/gtkprintoperation-unix.c: Set the GENERATE_PDF capability
1495         when creating a print dialog.  (noted by Yevgen Muntyan)
1496
1497 2006-06-15  Carlos Garnacho  <carlosg@gnome.org>
1498
1499         * gtk/gtknotebook.c (gtk_notebook_motion_notify): use
1500         gdk_window_get_pointer() to get pointer coordinates, but limit its
1501         calls to a maximum of 45 times per second for not being too
1502         CPU/network abusive. stop drag operation if (event->state &
1503         GDK_BUTTON1_MASK) is FALSE to prevent tabs from "adhering" to the
1504         pointer. Fixes bug #341571
1505         (gtk_notebook_calculate_tabs_allocation), (gtk_notebook_button_press):
1506         get rid of the "tab jumps to pointer" sensation when beginning a drag
1507         by using the pointer offset in the tab when the drag begins as an
1508         anchor.
1509         (gtk_notebook_redraw_tabs_union): remove, it wasn't worth the little
1510         performance gain and could draw artifacts under some circumstances.
1511         (gtk_notebook_drag_end): do not reparent the detached tab label until
1512         the animation has ended.
1513
1514 2006-06-15  Bastien Nocera  <hadess@hadess.net>
1515
1516         * configure.in: Update the Cairo requirements (#345008)
1517
1518 2006-06-15  Matthias Clasen  <mclasen@redhat.com>
1519
1520         * gtk/gtkprintoperationpreview.c 
1521         (gtk_print_operation_preview_base_init): Fix errors in the
1522         signal definitions.  (#344891, Marko Anastasov)
1523
1524 2006-06-14  Michael Emmel  <mike.emmel@gmail.com>
1525         
1526         * configure.in: updated mininum  dfb to 0.9.24
1527         * gdk/directfb/gdkdirectfb.h: added more directfb wrapper functions
1528         * gdk/directfb/gdkdrawable-directfb.c: wrapper functions and patch from 
1529          Claudio Ciccani <klan@users.sf.net> to use a subsurface for cairo
1530     * gdk/directfb/gdkvisual-directfb.c: changed initalization sequence
1531     * gdk/directfb/gdkwindow-directfb.c: corrected reparent for toplevels
1532     * gdk/directfb/gdkdisplay-directfb.c: changed initilization sequence
1533         to a more rational order
1534
1535 2006-06-14  Federico Mena Quintero  <federico@novell.com>
1536
1537         * perf/gtkwidgetprofiler.c (gtk_widget_profiler_profile_expose):
1538         New function; it lets us time the expose sequence of a widget.
1539         (create_widget): New helper function.
1540         (map_widget): New helper function.
1541         (profile_boot): Use create_widget() instead of doing it by hand.
1542         (profile_map_expose): Use map_widget() instead of doing it by hand.
1543
1544         * perf/main.c (main): Call gtk_widget_profiler_profile_expose() as well.
1545
1546 2006-06-14  Matthias Clasen  <mclasen@redhat.com>
1547
1548         * gtk/gtkpagesetupunixdialog.c: Use GKeyFile for the custom
1549         filename storage.  (#344867, Christian Persch)
1550
1551         * gtk/gtkselection.c: Call init_atoms before using atoms
1552         in several functions.  (#344743, John Finlay)
1553
1554         * gtk/gtktreeview.c (gtk_tree_view_set_search_position+_func):
1555         Allow NULL to reset to default.  (#344838, John Finlay)
1556
1557         * gtk/gtkprintjob.h: Collect booleans into a bitfield
1558         (#344765, Christian Persch)
1559
1560 2006-06-13  Matthias Clasen  <mclasen@redhat.com>
1561
1562         * configure.in: Bump version
1563
1564 2006-06-12  Matthias Clasen  <mclasen@redhat.com>
1565
1566         * === Released 2.9.3 ===
1567
1568         * NEWS: Updates
1569         
1570         * gtk/gtk.symbols: Add gtk_tree_view_grid_lines_get_type.
1571
1572         * configure.in: Set interface age to 0
1573
1574 2006-06-12  Kristian Rietveld  <kris@imendio.com>
1575
1576         Introduce grid and tree lines in GtkTreeView. (#106406,
1577         Martyn Russell).
1578
1579         * gtk/gtktreeprivate.h: add new fields to GtkTreePrivate.
1580
1581         * gtk/gtkenums.h: add GtkTreeViewGridLines.
1582
1583         * gtk/gtktreeview.[ch] (gtk_tree_view_set_grid_lines),
1584         (gtk_tree_view_get_grid_lines),
1585         (gtk_tree_view_set_enable_tree_lines),
1586         (gtk_tree_view_get_enable_tree_lines): new API,
1587         (gtk_tree_view_class_init): new properties,
1588         (gtk_tree_view_init), (gtk_tree_view_{get,set}_property),
1589         (gtk_tree_view_realize), (gtk_tree_view_draw_grid_lines),
1590         (gtk_tree_view_bin_expose): implement.
1591
1592         * gtk/gtk.symbols: update.
1593
1594 2006-06-12  Matthias Clasen  <mclasen@redhat.com>
1595
1596         * gtk/gtkprintunixdialog.c (is_printer_active): Use 
1597         gtk_printer_accepts_ps here.
1598
1599         * modules/printbackends/pdf/gtkprintbackendpdf.c (gtk_print_backend_pdf_init):
1600         Mark the virtual "Print to PDF" printer as not accepting PS.
1601
1602         * gtk/gtk.symbols:
1603         * gtk/gtkprinter.h: 
1604         * gtk/gtkprinter.c: Add two new properties accepts-pdf and
1605         accepts-ps (with getters) to allow learning supported formats.
1606
1607         * gtk/gtkprintjob.h: Add a GTK_PRINT_CAPABILITY_GENERATE_PDF
1608         capability.
1609         
1610         * gtk/gtkprintunixdialog.c: Use it here to hide "Print to PDF" 
1611         from the printer list.  (#339592, Christian Persch)
1612         
1613         * gtk/gtkfilechooserdefault.c: Add support for pasting
1614         filenames into the filechooser.  (#153212, Bastian Nocera)
1615
1616 2006-06-12  Kristian Rietveld  <kris@gtk.org>
1617
1618         * gtk/gtktreemodelfilter.[ch]
1619         (gtk_tree_model_filter_convert_child_iter_to_iter),
1620         (gtk_tree_model_filter_convert_child_path_to_path): report status
1621         in return value instead of spewing assertions.  (#335729, Yevgen
1622         Muntyan).
1623
1624 2006-06-12  Matthias Clasen  <mclasen@redhat.com>
1625
1626         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_finalize): 
1627         Clean up user data.  (#344624, Christian Weiske)
1628
1629         * NEWS: Updates
1630
1631         * gtk/gtkprintjob.c:
1632         * gtk/gtkprintbackend.c: 
1633         * gtk/gtkpagesetupunixdialog.c: 
1634         * gtk/gtkprintunixdialog.c: Cosmetic cleanups.
1635
1636 2006-06-11  Matthias Clasen  <mclasen@redhat.com>
1637
1638         * gtk/gtkassistant.c: Add an accessible implementation in
1639         order to make the buttons visible to a11y tools.  (pointed out
1640         by David Malcolm, #343945)
1641
1642         * gtk/gtkprintoperation-win32.c: Store scale as a percentage.
1643         (#344560, Christian Persch)
1644
1645         * gtk/gtkprogressbar.h: Add a dirty flag to GtkProgressBar.n/ 
1646         * gtk/gtkprogressbar.c: Defer updating of the offscreen
1647         pixmap until expose.  (#344543, Chris Wilson)
1648
1649 2006-06-11  Emmanuele Bassi  <ebassi@gnome.org>
1650
1651         * gtk/gtkrecentchooserdefault.c
1652         (get_is_recent_filtered):
1653         * gtk/gtkrecentchoosermenu.c
1654         (get_is_recent_filtered):
1655         Do not leak the groups string vector. (#344607,
1656         John Finlay)
1657
1658 2006-06-11  Tor Lillqvist  <tml@novell.com>
1659
1660         * gtk/gtkprintoperation-win32.c: Fix MSVC build problem. (#339739,
1661         Kazuki Iwamoto)
1662
1663         * gdk/win32/gdkproperty-win32.c (gdk_property_change): Convert \n
1664         to \r\n also when storing CF_UNICODETEXT (UTF-16) in the
1665         Clipboard. (#344496)
1666
1667 2006-06-10  Matthias Clasen <mclasen@redhat.com>
1668
1669         * gtk/gtkrecentchooserwidget.c 
1670         (gtk_recent_chooser_widget_new_for_manager):
1671         * gtk/gtkrecentchoosermenu.c
1672         (gtk_recent_chooser_menu_new_for_manager): 
1673         Allow NULL to mean the default manager.  (#344530, 
1674         John Finlay)
1675
1676         * gtk/gtkprintoperation-unix.c (page_setup_data_free):
1677         Check if rdata->page_setup is set before unreffing it. 
1678         (#344518, Christian Persch)
1679
1680         * gtk/gtkprintoperation.h: Remove an extra comma.  (#344528, 
1681         Elijah Newren)
1682
1683         * modules/printbackends/gtkprintbackendpdf.c 
1684         (gtk_print_backend_pdf_print_stream): Use the passed in 
1685         destroy notify.  (#344513, Christian Persch)
1686
1687         * configure.in: Require cairo 1.1.7
1688
1689         * gtk/gtkprintoperation.c:
1690         * modules/printbackends/pdf/gtkprintbackendpdf.c: Use
1691         cairo_pdf_surface_set_dpi by cairo_surface_set_fallback_resolution.
1692         (#344512, Elijah Newren)
1693
1694         * gdk-2.0-uninstalled.pc.in: Make compiling against uninstalled
1695         gdk work.  (#344386, Masatake Yamamoto)
1696
1697         * gtk/gtkprintoperation.c: Register create_custom_widget as 
1698         an object-returning signal.  (#344505, Marko Anastasov, patch
1699         by Christian Persch)
1700
1701         * gtk/gtkmarshalers.list: Add the right marshaller.
1702
1703         * gtk/gtk.symbols:
1704         * gtk/gtkprintjob.[hc]: Register GtkPrintCapabilities as a
1705         flags type.  (#344504, Marko Anastasov)
1706
1707 2006-06-09  Benjamin Berg  <benjamin@sipsolutions.net>
1708
1709         * gtk/gtkmenuitem.c: (get_offsets): Take GtkMenu::horizontal-padding
1710         into account when placing submenus (#344290)
1711
1712 2006-06-09  Michael Natterer  <mitch@imendio.com>
1713
1714         * gtk/gtkrange.c: added new style properties "trough-side-details"
1715         and "draw-trough-under-steppers" and fixed the "stepper-spacing"
1716         style property. Fixes bugs #342339 and #342249.
1717
1718         "draw-trough-under-steppers", when set to FALSE, starts trough
1719         drawing next to the steppers instead of drawing the trough "below"
1720         (around) the steppers. If "stepper-spacing" is set to any value
1721         larger than zero, "draw-trough-under-steppers" is set to FALSE
1722         automatically to avoid rendering an area that looks clickable but
1723         isn't.
1724
1725         (gtk_range_calc_layout): honor draw-trough-under-steppers.
1726         Don't reserve stepper-spacing on sides of the range that don't
1727         have steppers.
1728
1729         (gtk_range_expose): changed drawing accordingly. Implement
1730         "trough-side-details" which enables drawing of the upper and lower
1731         parts of the trough with different details. This is useful for
1732         theme engines which want to draw these parts differently.
1733
1734         (coord_to_value): correctly take all rendering options into
1735         account. stepper-spacing > 0 caused jumping and otherwise
1736         strangely behaving ranges before.
1737
1738         (other functions): changed accordingly.
1739
1740 2006-06-09  Tor Lillqvist  <tml@novell.com>
1741
1742         * gdk/win32/gdkdrawable-win32.c (_gdk_win32_drawable_release_dc):
1743         Call ReleaseDC() on DCs acquired with GetDC() (for windows), and
1744         DeleteDC() on DCs acquired with CreateCompatibleDC() (for
1745         bitmaps). According to MSDN, this is the correct thing to do, even
1746         if always using DeleteDC() seems to have worked fine in
1747         practice. (#337491, Chris Wilson)
1748
1749 2006-06-08  Matthias Clasen  <mclasen@redhat.com>
1750
1751         * tests/testprint.c: Update for api changes.
1752
1753         * gtk/gtkprintoperation.c: Fix some copy-and-paste errors,
1754         and rename the pdf-target property to export-filename.
1755
1756         * gtk/gtkfilechooserdefault.c: Turn off profiling code.
1757
1758         * tests/print-editor.c: Update for api changes.
1759
1760         * gtk/gtk.h: Include gtkprintoperationpreview.h
1761
1762         * gtk/gtkprintoperationpreview.c (gtk_print_operation_preview_is_selected): 
1763         Use g_return_val_if_fail (#344288, Kazuki Iwamoto)
1764
1765         * gtk/gtkprintbackend.h: Don't include gtkprinter-private.h here.
1766
1767         * gtk/gtkprintunixdialog.c: 
1768         * gtk/gtkprintoperation-unix.c: 
1769         * gtk/gtkprintjob.c: 
1770         * gtk/gtkprintbackend.c: Instead include it here.
1771
1772         * gtk/gtk.symbols: 
1773         * gtk/gtkprintoperation.h: 
1774         * gtk/gtkprintoperation.c: Rename pdf_target to export_filename.
1775
1776 2006-06-08  Matthias Clasen  <mclasen@redhat.com>
1777
1778         * gtk/gtkprintoperation.h (GtkPrintOperationResult): Get
1779         rid of GTK_PRINT_OPERATION_RESULT_PREVIEW.
1780         
1781         * gtk/gtkprintoperation-unix.c: 
1782         * gtk/gtkprintoperation.c: Update all users.
1783
1784 2006-06-08  Tor Lillqvist  <tml@novell.com>
1785
1786         * gdk/win32/gdkevents-win32.c (gdk_event_translate):
1787         [WM_WINDOWPOSCHANGED] Replace identical code as in
1788         handle_configure_event() with call to that function.
1789         [WM_SIZING] Fix implementation of aspect ratio hints. (#344244)
1790         The hints are for the geometry of the client area, not of the
1791         window including decorations. Improve resizing behaviour in the
1792         presence of aspect hints, to be more in line with typical X window
1793         managers.
1794
1795 2006-06-08  Matthias Clasen  <mclasen@redhat.com>
1796
1797         * gtk/gtktoolbutton.c (gtk_tool_button_style_set): Give
1798         GtkToolButton the same treatment.
1799
1800         * gtk/gtkbutton.c (gtk_button_style_set): Don't call
1801         construct_child here, since some apps make assumptions 
1802         about the lifecycle of the constructed label.  
1803
1804 2006-06-08  Alexander Larsson  <alexl@redhat.com>
1805
1806         * gtk/gtkprintoperation-unix.c (finish_print):
1807         Fix up unix fallout from previous change.
1808
1809 2006-06-08  Alexander Larsson  <alexl@redhat.com>
1810
1811         * gtk/gtkprintoperation-win32.c:
1812         Update windows to build with new APIs and first cut
1813         at preview work.
1814         
1815         * gtk/gtkprintoperation-private.h:
1816         * gtk/gtkprintoperation-unix.c:
1817         * gtk/gtkprintoperation.c
1818         Various updates needed when making the preview work on win32.
1819
1820         * tests/print-editor.c:
1821         Print, don't preview.
1822
1823 2006-06-07  Matthias Clasen  <mclasen@redhat.com>
1824
1825         * gtk/gtkentry.c (popup_targets_received): Make Delete
1826         menuitem insensitive if entry is not editable.  (#344232, 
1827         Milosz Derezynski)
1828
1829         * gtk/gtkprintoperation.c: Add some docs. 
1830
1831         * gtk/gtk.symbols: Add gtk_print_operation_set_allow_async.
1832
1833         * gtk/gtkprintoperation.h: Remove gtk_print_operation_run_async.
1834
1835         * tests/testnotebookdnd.c: Update callers.
1836
1837         * gtk/gtknotebook.h:
1838         * gtk/gtknotebook.c (gtk_notebook_set_window_creation_hook):
1839         Add a destroy notify for the callback data.  (#344209, 
1840         Murray Cumming)
1841
1842 2006-06-07  Jürg Billeter  <j@bitron.ch>
1843
1844         * gtk/Makefile.am: Fix building gtkbuiltincache.h without system GTK+.
1845
1846 2006-06-07  Alexander Larsson  <alexl@redhat.com>
1847
1848         * gtk/gtk.symbols:
1849         * gtk/gtkprintoperation-private.h:
1850         * gtk/gtkprintoperation-unix.c:
1851         * gtk/gtkprintoperation.[ch]:
1852         Clean up APIs:
1853         Make async a setting instead of separate calls.
1854         Combine settings like show_dialog, show_preview and pdf_target into
1855         an action enum that you pass to gtk_print_dialog_run().
1856         
1857         * tests/print-editor.c:
1858         * tests/testnouiprint.c:
1859         * tests/testprint.c:
1860         * demos/gtk-demo/printing.c:
1861         Update to new APIs
1862
1863 2006-06-07  Bastien Nocera  <hadess@hadess.net>
1864
1865         * configure.in: Update the ATK requirements (#344148)
1866
1867 2006-06-07  Matthias Clasen  <mclasen@redhat.com>
1868
1869         * modules/printbackends/cups/gtkprintercups.c 
1870         (gtk_printer_cups_finalize):  Fix a C99ism.
1871         (#344123, Jens Ganseuer)
1872
1873 2006-06-06  Behdad Esfahbod  <behdad@gnome.org>
1874
1875         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): Correct
1876         rounding of rect members.  Improved docs.  (#337603)
1877
1878 2006-06-06  Matthias Clasen  <mclasen@redhat.com>
1879
1880         * gtk/gtkicontheme.c: Small optimization
1881
1882 2006-06-05  Matthias Clasen  <mclasen@redhat.com>
1883
1884         * configure.in: Bump version
1885
1886         * === Released 2.9.2 ===
1887
1888         * configure.in: Set interface age to 0.
1889
1890         * NEWS: Updates
1891
1892         * gtk/gtkprintoperationpreview.c: Include gtkalias.h
1893
1894         * gtk/gtk.symbols: Add some forgotten new functions.
1895
1896 2006-06-04  Matthias Clasen  <mclasen@redhat.com>
1897
1898         * gtk/gtknotebook.c (gtk_notebook_calculate_shown_tabs):
1899         (gtk_notebook_calc_tabs): Fix borderline cases in tab
1900         visibility calculation.  (#168105, Carlos Garnacho Parro)
1901
1902         * gdk/x11/gdkfont-x11.c (_gdk_font_destroy): Remove the right
1903         XID from the xid table.  (#341327, Sampo Savolainen, Tim Janik)
1904
1905 2006-06-04  Behdad Esfahbod  <behdad@gnome.org>
1906
1907         * gtk/gtkprintoperationpreview.h: Add missing G_END_DECLS (#343838)
1908
1909 2006-06-03  Richard Hult  <richard@imendio.com>                                 
1910
1911         * gdk/quartz/Makefile.am:                                               
1912         * gdk/quartz/gdkspawn-quartz.c: Add spawn functions, copied from the
1913         win32 backend.
1914
1915 2006-06-02  Matthias Clasen  <mclasen@redhat.com>
1916         
1917         * gtk/gtkprintoperation-private.h:
1918         * gtk/gtkprintoperation.h:
1919         * gtk/gtkprintoperation.c: Add a show-preview property. 
1920
1921         * gtk/gtkprintoperation-unix.c: Implement it here.
1922
1923         * gtk/gtkprintoperation-unix.c: Cleanups
1924
1925 2006-06-02  Kristian Rietveld  <kris@imendio.com>
1926
1927         Rubber banding for GtkTreeView, #80127.  Uses same method as
1928         GtkIconView.
1929
1930         * gtk/gtktreeview.c (gtk_tree_view_class_init),
1931         (gtk_tree_view_init), (gtk_tree_view_get_property),
1932         (gtk_tree_view_set_property), (gtk_tree_view_set_rubber_banding),
1933         (gtk_tree_view_get_rubber_banding): add property,
1934         (gtk_tree_view_button_press): start rubber banding if enabled and
1935         press is on a non-selected node,
1936         (gtk_tree_view_button_release): stop rubber banding,
1937         (gtk_tree_view_motion_bin_window), (scrool_row_timeout): enable/update
1938         the rubber band,
1939         (gtk_tree_view_bin_expose): draw rubber band if active,
1940         (gtk_tree_view_stop_rubberband),
1941         (gtk_tree_view_update_rubber_band_selection_range),
1942         (gtk_tree_view_update_rubber_band_selection),
1943         (gtk_tree_view_update_rubber_band),
1944         (gtk_tree_view_paint_rubber_band): new functions.
1945
1946         * gtk/gtktreeview.h: add new set/get function for rubber banding
1947         property.
1948
1949         * gtk/gtktreeprivate.h: add a bunch of new private fields.
1950
1951 2006-06-02  Kristian Rietveld  <kris@imendio.com>
1952
1953         * gtk/gtktreeview.c (gtk_tree_view_leave_notify): revert fix of
1954         #164884 because it's not a problem in gtk+ but in applications and
1955         it breaks starting drags from the edge of a row.
1956
1957 2006-06-02  Kristian Rietveld  <kris@imendio.com>
1958
1959         Separate sensitive/selectable properties.
1960
1961         * gtk/gtktreeselection.c (tree_column_is_sensitive): remove,
1962         (_gtk_tree_selection_row_is_selectable): remove checks to see if at
1963         least one column is sensitive,
1964         (gtk_tree_selection_real_select_node): remove code which enables
1965         insensitive rows to always be unselected.
1966
1967         * gtk/gtktreeview.c (gtk_tree_view_row_changed): remove code
1968         that unselects a node if it just became insensitive.
1969
1970         * gtk/gtkcombobox.c (gtkcombo_box_list_select_func): new function,
1971         based on the at least one column sensitive check from
1972         _gtk_tree_selection_row_is_selectable(),
1973         (gtk_combo_box_list_setup): set selection function on tree selection.
1974
1975 2006-06-02  Kristian Rietveld  <kris@imendio.com>
1976
1977         * gtk/gtktreemodelfilter.c
1978         (gtk_tree_model_filter_convert_child_path_to_path): need to use
1979         gtk_tree_model_filter_get_iter_full() since the path returned
1980         by gtk_real_tree_model_filter_convert_child_path_to_path() includes
1981         invisible nodes.
1982
1983 2006-06-02  Matthias Clasen  <mclasen@redhat.com>
1984
1985         * gtk/gtkstatusicon.c (gtk_status_icon_get_geometry): Allow
1986         to return partial information.  (#343625, Christian Persch)
1987
1988         * gtk/gtkwindow.c (gtk_window_key_release_event): Chain up
1989         to key_release, not to key_press.  (#343677, Tommi Komulainen)
1990
1991 2006-06-02  Alexander Larsson  <alexl@redhat.com>
1992
1993         * gtk/Makefile.am:
1994         Add gtkprintoperationpreview.[ch]
1995         Set default preview command. Hardcoded for now.
1996         
1997         * gtk/gtkmarshalers.list:
1998         Add BOOLEAN:OBJECT,OBJECT,OBJECT
1999         
2000         * gtk/gtkprintbackend.c:
2001         Add preview command property.
2002         
2003         * gtk/gtkprintcontext.[ch]:
2004         Make less dependent on PrintOperation for output settings
2005         Externally set cairo_t and dpi. Resettable.
2006         Create fontmap without metrics hinting (so that print preview
2007         text layout doesn't depend on zoom level).
2008         
2009         * gtk/gtkprintoperation-private.h:
2010         * gtk/gtkprintoperation-unix.c: 
2011         * gtk/gtkprintoperation.[ch]:
2012         Initial work on print preview API and default implementation
2013         using an external preview app.
2014         
2015         * gtk/gtkprintoperation-win32.c:
2016         Some needed updates. Not done, needs more work.
2017         
2018         * gtk/gtkprintoperationpreview.[ch]:
2019         New interface used in print preview api.
2020         
2021         * gtk/gtkprintunixdialog.c:
2022         Add print preview dialog.
2023         
2024         * tests/print-editor.c:
2025         Test using an custom print preview widget.
2026
2027 2006-06-02  Emmanuele Bassi  <ebassi@gnome.org>
2028
2029         * gtk/gtkrecentmanager.c
2030         (gtk_recent_info_get_application_info): Fix a typo (spotted by
2031         Paolo Borelli and coverity).
2032
2033 2006-06-01  Matthias Clasen  <mclasen@redhat.com>
2034         
2035         * tests/testnotebookdnd.c: Small tweaks to test more things.
2036
2037         * gtk/gtktoolbutton.c (gtk_tool_button_class_init): Add
2038         an icon-spacing style property for the same purpose.
2039
2040         * gtk/gtkbutton.c (gtk_button_class_init):  Add an image-spacing
2041         style property that allows to adjust the spacing between image
2042         and label in button.  (#320431, James Moger)
2043
2044         * gtk/gtkprintoperation-private.h: 
2045         * gtk/gtkprintoperation.c: 
2046         * gtk/gtkprintoperation-unix.c: Move the 
2047         PrintPagesData.wait flag to GtkPrintOperationPrivate.is_sync.
2048         Also use a recursive mainloop instead of manually looping.
2049         
2050         * gtk/gtkprintoperation.c: Add some examples to the docs.
2051
2052         * gtk/gtkprintbackend.c (gtk_print_backend_class_init): 
2053         Intern signal names.
2054
2055         * gtk/gtkprintunixdialog.c: 
2056         * gtk/gtkprintoperation-unix.c: Use canonical signal names.
2057
2058 2006-05-31  Matthias Clasen  <mclasen@redhat.com>
2059
2060         * gtk/gtkpagesetupunixdialog.c: Add docs, cleanup some
2061         formatting.
2062
2063         * gtk/gtkprintoperation.c (print_pages_idle): Don't
2064         treat manual_scale like a percentage, its a factor.
2065
2066         * gtk/gtktreeview.c (gtk_tree_view_class_init): Document
2067         signals.  (#302556, Stefan Kost)
2068
2069 2006-05-31  Alexander Larsson  <alexl@redhat.com>
2070
2071         * gtk/gtk.symbols:
2072         * demos/gtk-demo/printing.c:
2073         * tests/print-editor.c:
2074         * tests/testnouiprint.c:
2075         * tests/testprint.c:
2076         * tests/testprintfileoperation.c:
2077         Further updates from the GtkPrintContext functions rename.
2078         
2079         * modules/printbackends/cups/gtkcupsutils.c:
2080         Always set requesting-user-name when doing cups requests.
2081
2082 2006-05-31  Alexander Larsson  <alexl@redhat.com>
2083
2084         * gtk/gtkpagesetupunixdialog.c:
2085         Remove request_details_tag with g_signal_handler_disconnect,
2086         not g_source_remove. (#343475)
2087
2088 2006-05-31  Matthias Clasen  <mclasen@redhat.com>
2089
2090         * gtk/gtkprintcontext.h: 
2091         * gtk/gtkprintcontext.c: 
2092         * gtk/gtkprintoperation.c: 
2093         * gtk/gtkprintoperation-unix.c: Change some function names to be 
2094         longer and better. 
2095         gtk_print_context_get_cairo -> gtk_print_context_get_cairo_context
2096         gtk_print_context_get_fontmap -> gtk_print_context_get_pango_fontmap
2097         gtk_print_context_create_context -> gtk_print_context_create_pango_context
2098         gtk_print_context_create_layout -> gtk_print_context_create_pango_layout
2099         Update all callers.
2100
2101         * gtk/gtkpagesetupunixdialog.c: Don't run the custom page
2102         size dialog.  (#340444, Christian Persch)
2103
2104         * demos/gtk-demo/main.c (main): Display comments in friendly
2105         DodgerBlue instead of scary red.  (#343444, Carol Spears)
2106
2107         * gtk/gtkfontbutton.c: 
2108         * gtk/gtkcolorbutton.c: Clarify the docs of the color-set and
2109         font-set signals.  (#343438, Olexiy Avramchenko)
2110
2111 2006-05-30  Matthias Clasen  <mclasen@redhat.com>
2112
2113         * gtk/gtkmain.c (gtk_grab_notify_foreach): Don't skip internal
2114         children when emitting grab-notify.  (#343425, Markku Vire)
2115
2116         * gdk/gdkpixmap.c: 
2117         * gdk/gdkwindow.c: Don't use G_DEFINE_TYPE, since the instance
2118         struct name does not match the type name.  (#343453, Ed Catmur)
2119
2120         * gtk/gtk.symbols: 
2121         * gtk/gtkbutton.h: 
2122         * gtk/gtkbutton.c: Add a GtkButton::image-position property
2123         with getter and setter, to allow constructing buttons with
2124         the image stacked on top of the label.  (#342930, Johan Dahlin)
2125
2126 2006-05-30  Johan Dahlin  <jdahlin@async.com.br>
2127
2128    * gtk/gtk.symbols:
2129    * gtk/gtkbutton.c: (gtk_button_class_init), (gtk_button_init),
2130    (gtk_button_set_property), (gtk_button_get_property),
2131    (gtk_button_construct_child), (gtk_button_set_image_spacing),
2132    (gtk_button_get_image_spacing):
2133    * gtk/gtkbutton.h:
2134    * gtk/gtktoolbutton.c: (gtk_tool_button_class_init),
2135    (gtk_tool_button_construct_contents),
2136    (gtk_tool_button_set_property), (gtk_tool_button_get_property),
2137    (_gtk_tool_button_get_button), (gtk_tool_button_set_icon_spacing),
2138    (gtk_tool_button_get_icon_spacing):
2139    * gtk/gtktoolbutton.h:
2140    Add GtkButton:image-spacing and GtkToolButton::icon-spacing.
2141    (#320431, James Moger)
2142
2143 2006-05-30  Kristian Rietveld  <kris@gtk.org>
2144
2145         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button): only
2146         check sort column id if connected to sortable model.
2147
2148 2006-05-30  Behdad Esfahbod  <behdad@gnome.org>
2149
2150         * gdk/gdkpango.c (draw_error_underline): Fix offset to center the
2151         underline in requested rectangle. (Ported from pango fix.)
2152
2153 2006-05-29  Michael Natterer  <mitch@imendio.com>
2154
2155         * gtk/gtkdialog.h: removed forgotten declaration of
2156         _gtk_dialog_get_response_for_widget(), the function has been made
2157         public a long time ago.
2158
2159 2006-05-29  Michael Natterer  <mitch@imendio.com>
2160
2161         * gtk/gtktextview.c (gtk_text_view_target_list_notify): applied
2162         patch from Chris Wilson which replaces a useless loop with
2163         built-in access to free'd memory by a simple integer comparison.
2164         Fixes bug #342894.
2165
2166 2006-05-29  Kristian Rietveld  <kris@gtk.org>
2167
2168         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): select
2169         the current focus row if nothing is selected and ctrl is not pressed.
2170         (Fixes #324480, Murray Cumming/Srirama Sharma).
2171
2172 2006-05-28  Kristian Rietveld  <kris@gtk.org>
2173
2174         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_cell_focus): refactor
2175         to work correctly in RTL mode.
2176
2177         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_left_right): make
2178         cursor movement to left/right work correctly in RTL mode.
2179
2180 2006-05-28  Behdad Esfahbod  <behdad@gnome.org>
2181
2182         * gdk/gdkrectangle.c (gdk_rectangle_union, gdk_rectangle_intersect):
2183         Note in docs that @dest can be the same as @src1 or @src2. (#343233,
2184         Christian Persch)
2185
2186 2006-05-28  Kristian Rietveld  <kris@gtk.org>
2187
2188         * gtk/gtkstyle.c (gtk_default_draw_flat_box): handle
2189         cell_even_ruled_sorted and cell_odd_ruled_sorted for the selected
2190         state.
2191
2192 2006-05-28  Kristian Rietveld  <kris@gtk.org>
2193
2194         * gtk/gtkenums.h: add GTK_ARROW_NONE.
2195
2196         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_column): always
2197         "show" the arrow if sort_column_id >= 0, only set arrow type if
2198         this column is the column we are currently sorting on. (#331338).
2199
2200 2006-05-27  Matthias Clasen  <mclasen@redhat.com>
2201
2202         * gtk/gtkrecentchoosermenu.c: Avoid trivial differences
2203         in translated strings.  (#343088, Clytie Siddall)
2204
2205 2006-05-28  Kristian Rietveld  <kris@gtk.org>
2206
2207         * gtk/gtktreeview.c (gtk_tree_view_build_tree): emit test_expand_row
2208         and test return value before expanding a branch. (Fixes #321523,
2209         reported by Daniel Lindenaar).
2210
2211 2006-05-28  Kristian Rietveld  <kris@gtk.org>
2212
2213         * gtk/gtktreeview.c (gtk_tree_view_insert_column): set the sizing
2214         type of the new column to FIXED,
2215         (gtk_tree_view_insert_column_with_attributes): likewise. (#341898,
2216         Dan Winship).
2217
2218 2006-05-27  Kristian Rietveld  <kris@gtk.org>
2219
2220         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_remove_node):
2221         only unref if elt->ref_count > 0,
2222         (gtk_tree_model_filter_row_deleted): likewise. (Fixes #340839,
2223         reported by Yevgen Muntyan).
2224
2225 2006-05-27  Kristian Rietveld  <kris@gtk.org>
2226
2227         Small refactoring. (#340428, Paolo Borelli).
2228
2229         * gtk/gtkliststore.c (gtk_list_store_set_valist_internal),
2230         (gtk_list_store_insert_with_valuesv): refactor code to determine
2231         iter compare func into gtk_list_store_get_compare_func().
2232
2233         * gtk/gtktreestore.c (gtk_tree_store_set_valist_internal),
2234         (gtk_tree_store_insert_with_valuesv): likewise.
2235
2236 2006-05-27  Kristian Rietveld  <kris@gtk.org>
2237
2238         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_arrow): really fix
2239         #333284.
2240
2241 2006-05-27  Kristian Rietveld  <kris@gtk.org>
2242
2243         Editable cell window placement and RTL fixes.
2244
2245         * gtk/gtktreeview.c (gtk_tree_view_button_press),
2246         (gtk_tree_view_bin_expose), (gtk_tree_view_get_cell_area),
2247         (gtk_tree_view_create_row_drag_icon): Only add indentation to x
2248         if !rtl,
2249         (gtk_tree_view_create_row_drag_icon): Iterate over columns in reverse
2250         direction if in rtl mode.
2251
2252         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
2253         horizontal_separator is not part of the real background area width,
2254         add 2 * focus_line_width to real_cell_area.x and not
2255         real_background_area.x, fix up event coordinates check in the
2256         PACK_END loop, also set depth to zero at the end of the PACK_END
2257         loop,
2258         (_gtk_tree_view_get_neighbor_sizes): also add column_spacing for each
2259         visible cell.
2260
2261 2006-05-26  Matthias Clasen  <mclasen@redhat.com>
2262
2263         * gtk/stock-icons/24/gtk-orientation-landscape.png:
2264         * gtk/stock-icons/24/gtk-orientation-portrait.png:
2265         * gtk/stock-icons/24/gtk-orientation-reverse-landscape.png:
2266         * gtk/stock-icons/24/gtk-orientation-reverse-portrait.png:
2267         Cleaned up icons by Diana Fong.
2268
2269 2006-05-26  Kristian Rietveld  <kris@gtk.org>
2270
2271         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_arrow): queue a redraw
2272         for the full width of the row, not just the width we got allocated.
2273         (Fixes #333284, reported by Benjamin Berg).
2274
2275 2006-05-26  Kristian Rietveld  <kris@gtk.org>
2276
2277         * gtk/gtktreeview.c (gtk_tree_view_top_row_to_dy): set dy to
2278         page_size + height in the event dy + page_size is about to become
2279         bigger than height.
2280
2281 2006-05-25  Matthias Clasen  <mclasen@redhat.com>
2282
2283         * gtk/gtk.symbols:
2284         * gtk/gtkstatusicon.h:
2285         * gtk/gtkstatusicon.c (gtk_status_icon_get_geometry):
2286         New function that can be used to e.g. position 
2287         notification bubbles wrt to the status icon.  
2288         (#341450, Christian Persch, Havoc Pennington)
2289
2290 2006-05-25  Matthias Clasen  <mclasen@redhat.com>
2291
2292         Make GTK+ work as an untrusted X client. (#136571,
2293         Ed Catmur)
2294
2295         * gdk/x11/gdkdisplay-x11.h:
2296         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): When 
2297         opening a display, determine if we are untrusted.
2298         
2299         * gdk/x11/gdkdisplay-x11.c (gdk_notify_startup_complete): 
2300         Just bail out when we are untrusted.
2301
2302         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Work around
2303         a bug in the Xorg XSECURITY implementation by coercing
2304         toplevel InputOnly windows to InputOutput.
2305
2306         * gdk/x11/gdkwindow-x11.c (_gdk_windowing_get_pointer): 
2307         (_gdk_windowing_window_get_pointer): 
2308         When untrusted, call XQueryPointer on an auxiliary
2309         window, not on the root window.
2310         
2311         * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_at_pointer): 
2312         If untrusted, loop through all GDK-aware toplevels on all
2313         screens in the hope we hit one containing the pointer; 
2314         then use that as the basis of the current XQueryPointer 
2315         child recursion.
2316
2317         * gdk/x11/gdkmain-x11.c (gdk_pointer_grab): 
2318         (gdk_keyboard_grab): Ignore failed grabs when untrusted.
2319
2320         * gdk/x11/gdkdnd-x11.c (gdk_window_cache_new): Only
2321         cache our own toplevels when untrusted.
2322
2323         * gdk/x11/gdkdnd-x11.c (motif_send_enter): Don't try
2324         to do Motif DND as untrusted client.
2325
2326         * gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window): 
2327         (gdk_x11_screen_get_window_manager_name): 
2328         (gdk_x11_screen_supports_net_wm_hint): 
2329         Bail out early if untrusted.
2330         
2331         * gtk/gtkcolorsel.c (grab_color_at_mouse): If getting 
2332         the color under the pointer by screenshooting the root 
2333         window fails, it tries to get the color from our own 
2334         window.
2335
2336         * gtk/gtkcolorsel.c (get_screen_color): Make the
2337         dropper_grab_widget a child of the dialog, not a 
2338         toplevel.
2339
2340         * gtk/gtkinvisible.c (gtk_invisible_realize): Respect
2341         a parent window that has been set before realizing.
2342
2343         * gtk/gtkwidget.c (gtk_widget_get_parent_window): 
2344         Always return a previously set parent window.
2345         
2346 2006-05-24  Matthias Clasen  <mclasen@redhat.com>
2347
2348         * gtk/gtkfontbutton.c (gtk_font_button_clicked): 
2349         * gtk/gtkcolorbutton.c (gtk_color_button_clicked): 
2350         Fix the handling of modality by copying what
2351         GtkFileChooserButton does.  (#342754, Yevgen Muntyan)
2352         
2353         * gtk/gtkprintunixdialog.c (create_main_page): Make
2354         the range entry insensitive if another range option
2355         is selected.  (#342783, Caolan McNamara)
2356         (update_dialog_from_capabilities): Make the collate
2357         check button insensitive unless multiple copies are
2358         printed  (#342781, Caolan McNamara)
2359
2360         * gtk/gtkwidget.c: Remove style properties when a widget
2361         class gets finalized, to make style properties work in
2362         dynamic types.  (#342513, Christian Persch)
2363
2364 2006-05-24  Henrique Romano  <henrique@async.com.br>
2365
2366         * gtk/gtkcellview.c: (gtk_cell_view_class_init),
2367         (gtk_cell_view_get_property), (gtk_cell_view_set_property):
2368         Add model property for GtkCellView, part of #172535.
2369
2370 2006-05-24  Matthias Clasen  <mclasen@redhat.com>
2371
2372         * gtk/gtkprintoperation.h: 
2373         * gtk/gtkprintoperation-private.h: 
2374         * gtk/gtk.symbols:
2375         * gtk/gtkprintoperation.c: Add a custom-tab-label property.
2376         
2377         * gtk/gtkprintoperation-unix.c (get_print_dialog): Use it
2378         here.  (#342752, Yevgen Muntyan)
2379
2380 2006-05-24  Alexander Larsson  <alexl@redhat.com>
2381
2382         * gtk/gtk.symbols:
2383         * gtk/gtkprintunixdialog.[ch]:
2384         Add gtk_print_unix_dialog_set_manual_capabilities that controls
2385         what widgets to enable in the dialog depending on the apps
2386         capabilities.
2387         
2388         * gtk/gtkprintbackend.[ch]:
2389         * gtk/gtkprinter-private.h:
2390         * gtk/gtkprinter.c:
2391         * gtk/gtkprintjob.h:
2392         Add printer_get_capabilities to backend.
2393         Move some fallback calls to the printbackend base class.
2394         
2395         * gtk/gtkprintoperation-unix.c:
2396         Set manual capabilities
2397         
2398         * modules/printbackends/cups/gtkprintbackendcups.c:
2399         Implement get_capabilities
2400         
2401         * modules/printbackends/lpr/gtkprintbackendlpr.c:
2402         * modules/printbackends/pdf/gtkprintbackendpdf.c:
2403         Move some methods to baseclass.
2404
2405 2006-05-23  Matthias Clasen  <mclasen@redhat.com>
2406
2407         * gtk/gtkprintoperation.c (print_pages): Do the begin-print
2408         emission in the idle, so that the print dialog goes away
2409         before begin-print.
2410
2411 2006-05-23  Matthias Clasen  <mclasen@redhat.com>
2412
2413         * gtk/gtk.symbols: 
2414         * gtk/gtkprintoperation.h: 
2415         * gtk/gtkprintoperation.c: Add a boolean show-progress  
2416         property, and show a progress dialog if it is set to TRUE.
2417
2418         * gtk/gtkprintoperation.c (pdf_end_run): 
2419         * gtk/gtkprintoperation-win32.c (win32_end_run): 
2420         * gtk/gtkprintoperation-unix.c (unix_end_run): 
2421         * gtk/gtkprintoperation-private.h: Add a cancelled
2422         parameter to end_run, and call it even if the print
2423         operation was cancelled.
2424
2425 2006-05-23  Alexander Larsson  <alexl@redhat.com>
2426
2427         * gtk/gtkprinteroptionwidget.c (filesave_changed_cb):
2428         Allow absolute filenames in filename entry.
2429         Patch from Yevgen Muntyan (#341679)
2430
2431 2006-05-23  Alexander Larsson  <alexl@redhat.com>
2432
2433         * gtk/gtk.symbols:
2434         * gtk/gtkprintunixdialog.[ch]:
2435         Add gtk_print_unix_dialog_add_custom_tab
2436         
2437         * gtk/gtkprintoperation-unix.c:
2438         Implement custom widgets for unix.
2439         Fix some warnings by including cairo-ps/pdf.h
2440         
2441         * gtk/gtkprintoperation-win32.c:
2442         Mark string for translation.
2443
2444 2006-05-22  Matthias Clasen  <mclasen@redhat.com>
2445
2446         * gtk/gtkprintoperation.c (gtk_print_operation_class_init): 
2447         Fix docs.
2448
2449 2006-05-22  Alexander Larsson  <alexl@redhat.com>
2450
2451         * gtk/gtkmain.c:
2452         Make sure grab-notify is emitted on toplevels as well as 
2453         child widgets.
2454
2455         * gtk/Makefile.am:
2456         * gtk/gtkwin32embedwidget.[ch]
2457         Add new widget used for win32 port to embed gtk+
2458         widgets in windows dialog.
2459
2460         * gtk/gtkmarshalers.list:
2461         Add POINTER:VOID
2462
2463         * gtk/gtkprintoperation-private.h:
2464         * gtk/gtkprintoperation.[ch]:
2465         Generic support for custom widgets in print dialog.
2466
2467         * gtk/gtkprintoperation-win32.c:
2468         Implement custom widget support for win32.
2469
2470         * tests/print-editor.c:
2471         Allow setting of font using custom widgets in the print dialog.
2472
2473 2006-05-22  Behdad Esfahbod  <behdad@gnome.org>
2474
2475         Rollback the following changes, to fix it the proper way in Pango:
2476
2477         * gdk/gdkinternals.h:
2478         * gdk/gdkscreen.c (gdk_screen_class_init), (gdk_screen_finalize),
2479         (update_fontmap_resolution), (gdk_screen_set_resolution):  Add new
2480         function _gdk_screen_get_font_map() and have one fontmap per screen,
2481         with the correct resolution set on it.
2482
2483         * gdk/gdkpango.c (gdk_pango_context_get_for_screen): Use
2484         _gdk_screen_get_font_map() instead of setting resolution on the
2485         PangoCairoContext.  (#342529)
2486
2487 2006-05-22  Emmanuele Bassi  <ebassi@gnome.org>
2488
2489         * gtk/gtkrecentmanager.h:
2490         * gtk/gtkrecentmanager.c
2491         (gtk_recent_info_get_application_info): Don't mask "time" with
2492         the "time" argument.
2493
2494 2006-05-22  Matthias Clasen  <mclasen@redhat.com>
2495
2496         * gdk/gdkcolor.h: gdk_color_parse returns boolean, not int.
2497         (#342569, Masatake Yamato)
2498
2499         * gtk/gtkprintunixdialog.c (dialog_set_scale): Don't return
2500         a value from a void function.
2501
2502         * gtk/gtkprinter.c (_gtk_printer_prepare_for_print) 
2503         (_gtk_printer_get_settings_from_options) 
2504         (_gtk_printer_request_details): Don't return values from void
2505         functions.
2506
2507         * gtk/gtkrecentchooserutils.c (delegate_unselect_uri): Don't
2508         return a value from a void function.
2509
2510         * gtk/gtkfilesystem.c (gtk_file_system_cancel_operation): Don't
2511         return a value from a void function.  Also, don't put 
2512         semicolons behind G_DEFINE_TYPE. (#342543)
2513
2514         * gtk/gtkwidget.c (gtk_widget_class_init): Add docs
2515         for new style properties.  (#342535, Mart Raudsepp)
2516
2517         * gdk/x11/gdkscreen-x11.c: Remove _gdk_x11_screen_request_cm_notification
2518
2519         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Directly call 
2520         gdk_display_request_selection_notification. 
2521
2522         * gdk/x11/gdkdisplay-x11.c: Several cleanups.
2523         
2524 2006-05-21  Behdad Esfahbod  <behdad@gnome.org>
2525
2526         * gdk/gdkinternals.h:
2527         * gdk/gdkscreen.c (gdk_screen_class_init), (gdk_screen_finalize),
2528         (update_fontmap_resolution), (gdk_screen_set_resolution):  Add new
2529         function _gdk_screen_get_font_map() and have one fontmap per screen,
2530         with the correct resolution set on it.
2531
2532         * gdk/gdkpango.c (gdk_pango_context_get_for_screen): Use
2533         _gdk_screen_get_font_map() instead of setting resolution on the
2534         PangoCairoContext.  (#342529)
2535
2536 2006-05-22  Tor Lillqvist  <tml@novell.com>
2537
2538         * gtk/gtkfilesystemwin32.c: Make it compile again. Doesn't work
2539         properly yet, though. There is lots of commonality between this
2540         file and gtkfilesystemunix.c that should really be factored out.
2541
2542 2006-05-19  Matthias Clasen  <mclasen@redhat.com>
2543
2544         * gtk/gtkpaned.c (gtk_paned_compute_position): Avoid warnings
2545         if a child is NULL.  (#342007, Patrick Monnerat)
2546         
2547         * gtk/gtk.symbols: 
2548         * gtk/gtkprintoperation.h: 
2549         * gtk/gtkprintoperation.c (gtk_print_operation_cancel): New function
2550         to cancel a running print operation.
2551
2552         * gtk/gtkprintoperation-private.h (struct _GtkPrintOperationPrivate): 
2553         Add a cancelled flag, use g types, use bitfields.
2554
2555         * gtk/gtkprintoperation.c (print_pages): Clean up after the idle
2556         in the synchronous case.
2557
2558         * gtk/gtknotebook.c (gtk_notebook_pages_allocate): Fix a 
2559         boundary case in scrolling where a tab was not shown.  (#168105,
2560         Hiroyuki Ikezoe, patch by Kouhei Sutou)
2561
2562 2006-05-19  Damon Chaplin  <damon@gnome.org>
2563
2564         * gtk/gtkfontsel.c (gtk_font_selection_init): use
2565         atk_relation_add_target() to add the targets, since it sets up weak
2566         references to avoid crashes. (#305530)
2567
2568 2006-05-18  Matthias Clasen  <mclasen@redhat.com>
2569
2570         * gtk/gtkprintoperation.h: 
2571         * gtk/gtkprintoperation.c: Add a GtkPrintOperation:: paginate signal 
2572         that gets emitted to paginate a document in chunks.
2573
2574         * gtk/gtkprintoperation-private.h: 
2575         * gtk/gtkmarshalers.list: Add necessary glue.
2576
2577         * gtk/gtkcalendar.c (gtk_calendar_drag_motion): Don't produce
2578         a stuck drag if shift is held.  (#341734, Sebastien Bacher) 
2579
2580         * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display): 
2581         Always set protocol.  (#342003, Tommi Komulainen)
2582
2583         * gtk/gtkimage.c (icon_theme_changed): Only unref the pixbuf
2584         if the image has the appropriate storage type.  (#342096, Tommi
2585         Komulainen)
2586
2587         * configure.in: Actually require GLib 2.11
2588         
2589         * gtk/gtkentry.c (gtk_entry_drag_data_received): Make drops
2590         end up at the right spot.  (#342072,  Yevgen Muntyan)
2591
2592 2006-05-18  Michael Natterer  <mitch@imendio.com>
2593
2594         * gtk/gtkrange.c: canonicalize the name of the "activate-slider"
2595         style property and use GTK_PARAM_READABLE instead of
2596         G_PARAM_READABLE. Moved one "activate_slider" variable to the
2597         local scope its used in.
2598
2599 2006-06-18  Michael Emmel  <mike.emmel@gmail.com>
2600
2601         * gdk/directfb/gdkscreen-directfb.c: 
2602         * added gdk_screen_is_composited to compile
2603         * Bug 342091
2604
2605 2006-05-17  Alexander Larsson  <alexl@redhat.com>
2606
2607         * gtk/gtkprintoperation-win32.c:
2608         Update to changed APIs.
2609
2610 2006-05-16  Matthias Clasen  <mclasen@redhat.com>
2611
2612         * configure.in: Bump version
2613
2614         * === Released 2.9.1 ====
2615
2616         * configure.in: Reset interface age
2617         
2618         * NEWS: Updates
2619
2620 Tue May 16 12:36:25 2006  Søren Sandmann  <sandmann@redhat.com>
2621
2622         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Move getting the
2623         property out of the loop, and rename the variable 'max_expand'.
2624
2625         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Fix the decription
2626         for the max-child-expand property. 
2627
2628 2006-05-16  Matthias Clasen  <mclasen@redhat.com>
2629
2630         * gtk/gtkprinter.c (gtk_printer_class_init): 
2631         * gtk/gtkprintjob.c (gtk_print_job_class_init): 
2632         * gtk/gtkprintoperation.c (gtk_print_operation_class_init): 
2633         Cosmetic cleanups.
2634
2635         * gtk/gtkpagesetupunixdialog.c (populate_dialog): Add labels
2636         for page orientations, also add the fourth one.  (#339589)
2637
2638         * gtk/stock-icons/24/gtk-orientation-reverse-portrait.png: New
2639         icon.
2640         
2641         * gtk/Makefile.am: Add it here.
2642         
2643         * gtk/gtkstock.[hc]: Add stock items for the page orientations.
2644
2645 2006-05-16  Michael Natterer  <mitch@imendio.com>
2646
2647         * gtk/gtktoolbar.c: added "max-child-expand" style property which
2648         limits the space taken by expanding tool items. Fixes bug #340722.
2649
2650 2006-05-16  Kristian Rietveld  <kris@imendio.com>
2651
2652         * gtk/gtkpathbar.c (gtk_path_bar_dispose): cancel all pending handles
2653         in the button list. (Fixes #341035, reported by William Jon McCann).
2654
2655 2006-05-16  Kristian Rietveld  <kris@imendio.com>
2656
2657         * gtk/gtkfilechooserdefault.c
2658         (show_and_select_paths_finished_loading): put the newly selected
2659         row(s) the in the middle of the view,
2660         (update_current_folder_get_info_cb),
2661         (gtk_file_chooser_default_update_current_folder): make sure reload
2662         state is set to RELOAD_HAS_FOLDER while loading the new folder,
2663         so _map() won't start loading the current working directory. (Fixes
2664         #341028, reported by Michael Natterer).
2665
2666 2006-05-15  Matthias Clasen  <mclasen@redhat.com>
2667
2668         * gtk/gtktreeview.c (gtk_tree_view_button_press): Fix
2669         an RTL problem with toggles in expander columns. 
2670         (#341896, Roozbeh Pournader) 
2671
2672 Mon May 15 15:12:05 2006  Søren Sandmann  <sandmann@redhat.com>
2673
2674         * gtk/gtklayout.c (gtk_layout_realize),
2675         * gtk/gtkiconview.c (gtk_icon_view_realize),
2676         * gtk/gtktreeview.c (gtk_tree_view_realize): Set the background of
2677         the clip windows to NULL, since they are generally invisible and
2678         don't have EXPOSURE set, which means they temp-unvlicker code
2679         doesn't apply to them.
2680
2681         * gdk/x11/gdkgeometry-x11.c (_gdk_window_move_resize_child): Unset
2682         the background of the parent window during resizing. Invalidate
2683         the uncoered area of the parent window. Bug 341332.
2684
2685 2006-05-15  Richard Hult  <richard@imendio.com>
2686
2687         * gdk/quartz/gdkevents-quartz.c (_gdk_events_init): Remove obsolete 
2688         comment.
2689         (poll_func): Remove assert and add a comment on how to fix properly.
2690         (gdk_events_pending): Implement.
2691
2692 2006-05-15  Matthias Clasen  <mclasen@redhat.com>
2693
2694         * gtk/gtkprintoperation.c: Reverse the order of
2695         ranges when printing in reverse.  (#341578)
2696
2697 2006-05-15  Alexander Larsson  <alexl@redhat.com>
2698         
2699         * gtk/gtkprintjob.[ch]:
2700         Added gtk_print_job_set/get_track_print_status
2701
2702         * gtk/gtkprintoperation-private.h:
2703         * gtk/gtkprintoperation.[ch]:
2704         Add gtk_print_operation_set_track_print_status.
2705         
2706         * gtk/gtkprintoperation-unix.c:
2707         Implement track_print_status on unix
2708         
2709         * gtk/gtkprintoperation-win32.c:
2710         Implement track_print_status on win32
2711         
2712         * gtk/gtk.symbols:
2713         Added symbols
2714         
2715         * modules/printbackends/cups/gtkprintbackendcups.c:
2716         Implement track_print_status for cups
2717         
2718         * tests/print-editor.c:
2719         Test track_print_status.
2720
2721 2006-05-15  Matthias Clasen  <mclasen@redhat.com>
2722
2723         * gtk/gtkprintoperation.c: Do page rendering in an idle when
2724         running asynchronous. 
2725
2726 2006-05-15  Alexander Larsson  <alexl@redhat.com>
2727
2728         * gtk/gtk.symbols: 
2729         * gtk/gtkprintbackend.[ch]: (_gtk_print_backend_create):
2730         Never unload print backends.
2731         Remove gtk_print_backend_unref_at_idle.
2732
2733         * modules/printbackends/cups/gtkprintbackendcups.c:
2734         (cups_dispatch_watch_finalize):
2735         Don't use the unref_at_idle hack since that caused
2736         deadlocks. Instead we never unload print backends, which
2737         is not really a big problem.
2738
2739 2006-05-14  Murray Cumming  <murrayc@murray.com>
2740
2741         * gtk/gtkframe.c: Restored the / at the start of the comment 
2742         block, to fix the build.
2743
2744 2006-05-13  Matthias Clasen  <mclasen@redhat.com>
2745
2746         * gtk/*.c:
2747         * gdk-pixbuf/*.c:
2748         * gdk/*.c: Remove erroneous ; after G_DEFINE_TYPE 
2749         macros.  (#341692, Yevgen Muntyan)
2750
2751         * gtk/gtktextbtree.c: 
2752         * gtk/gtktextview.c: Move some asserts to the right 
2753         place.  (#341661, #341665, Pascal Terjan)
2754
2755 2006-05-12  Matthias Clasen  <mclasen@redhat.com>
2756
2757         * gtk/gtknotebook.c: Fix some corner cases in the size
2758         allocation logic for tabs.  (#341577, Carlos Garnacho Parro)
2759
2760         * gtk/gtkprintunixdialog.c: Some fixes to capitalization of
2761         labels.  (#341558, Dennis Cranston)
2762
2763         * gtk/gtknotebook.c: Handle tab_label being NULL better.
2764         (#341455, William Jon McCann, patch by Carlos Garnacho Parro)
2765
2766         * gtk/gtkruler.c: Reinstate the ruler metrics strings, since
2767         they are used by glade, pointed out by Damon Chaplin.
2768
2769 2006-05-12  Alexander Larsson  <alexl@redhat.com>
2770
2771         * gtk/gtkwindow.c:
2772         Better handling of the window group on unsetting transient-for, since
2773         the transient parent might have changed group.
2774         
2775         * gtk/gtkmenu.c:
2776         Combine the handling of transient for the attach-widget and the
2777         window group handling by setting transient-to on popup/popdown only.
2778
2779         See bug #340401
2780         
2781         * gtk/gtkprintunixdialog.c:
2782         Remove part of old fix no longer needed.
2783
2784 2006-05-12  Alexander Larsson  <alexl@redhat.com>
2785
2786         * gtk/gtkprintoperation.c (gtk_print_operation_set_n_pages):
2787         Update g_object_notify to new property name.
2788
2789 2006-05-12  Alexander Larsson  <alexl@redhat.com>
2790
2791         * gtk/gtkrecentmanager.c:
2792         Fix build errors.
2793         
2794         * gtk/gtk.symbols:
2795         * demos/gtk-demo/printing.c:
2796         * gtk/gtkprintoperation-win32.c:
2797         * gtk/gtkprintoperation.[ch]:
2798         * gtk/gtkprintsettings.[ch]: 
2799         * modules/printbackends/cups/gtkprintbackendcups.c:
2800         * modules/printbackends/lpr/gtkprintbackendlpr.c:
2801         * modules/printbackends/pdf/gtkprintbackendpdf.c:
2802         * tests/print-editor.c:
2803         * tests/testnouiprint.c:
2804         * tests/testprint.c:
2805         * tests/testprintfileoperation.c:
2806         Rename functions from nr_of_pages to n_pages, and num_copies to
2807         n_copies to match other gtk+ names.
2808         
2809         * gtk/gtkmenu.c: (gtk_menu_popdown):
2810         Only re-set window group on popdown if we set it on popup (i.e.
2811         if there is a parent menu shell).
2812         Fixed part of bug #340401
2813
2814         * gtk/gtkwindow.c:
2815         Add (contruct) property "transient-for" to GtkWindow. This
2816         is needed for the fix to bug #340401.
2817         
2818         * gtk/gtkprintunixdialog.c:
2819         Use the transient-for property on construction and populate the dialog
2820         with widgets after that. This fixes bug #340401.
2821         More n_pages renames.
2822
2823 2006-05-11  Emmanuele Bassi  <ebassi@cvs.gnome.org>
2824
2825         * gtk/gtkrecentmanager.h: Remove the error parameter to the
2826         gtk_recent_manager_add() and gtk_recent_manager_add_full()
2827         functions; remove the unneeded error codes from the error
2828         enumeration.  (#336774).
2829
2830         * gtk/gtkrecentmanager.c: Make gtk_recent_manager_add() and
2831         gtk_recent_manager_add_full() complain loudly about wrong or
2832         missing meta-data, instead of using a GError.  (#336774)
2833
2834 2006-05-11  Matthias Clasen  <mclasen@redhat.com>
2835
2836         * demos/gtk-demo/Makefile.am (demos): Add it here.
2837
2838         * demos/gtk-demo/printing.c (do_printing): Add a GtkPrintOperation demo.
2839
2840 2006-05-11  Carlos Garcia Campos  <carlosgc@gnome.org>
2841
2842         * gtk/gtkfilechooserembed.c: use I_() instead of _() when creating
2843         response-requested signal. Fixes bug #341416
2844
2845 2006-05-11  Matthias Clasen  <mclasen@redhat.com>
2846
2847         * gdk/gdkkeysyms.h: Regenerated from Xorg 7.1 keysyms.h, using
2848         gdkkeysyms-update.pl.
2849
2850         * gdk/gdkkeysyms-update.pl: Script to sync gdkkeysyms.h
2851         with Xorg.  (#321896, Simos Xenitellis)
2852
2853         * gdk/Makefile.am (EXTRA_DIST): Add gdkkeysyms-update.pl
2854
2855         * gdk/gdkkeysyms.h: Consistently use lowercase in hex numbers.
2856
2857 2006-05-10  Carlos Garnacho  <carlosg@gnome.org>
2858
2859         * gtk/gtknotebook.c: check that tab_label is not NULL before checking
2860         that it's notebook's child. Closes #341247.
2861
2862 Wed May 10 15:57:53 2006  Tim Janik  <timj@imendio.com>
2863
2864         * applied unified patch for configurable scroll arrow sizes from
2865         bug #333632 and bug #325282.
2866
2867         * gtk/gtkwidget.c (gtk_widget_class_init): added ::scroll-arrow-hlength
2868         and ::scroll-arrow-vlength style properties. fixed upper limit for
2869         ::separator-width and ::separator-height to be MAXINT.
2870
2871         * gtk/gtkmenu.c: use GtkWidget::scroll-arrow-vlength to determine the
2872         scroll arrow size, instead of using a hard coded constant.
2873
2874         * gtk/gtknotebook.c: use GtkWidget::scroll-arrow-vlength and
2875         GtkWidget::scroll-arrow-hlength to determine scroll arrow sizes.
2876         added GtkNotebook::arrow-spacing style property to configure the
2877         spacing between scroll arrows.
2878
2879 2006-05-10  Matthias Clasen  <mclasen@redhat.com>
2880
2881         * gtk/gtkpagesetupunixdialog.c: Don't include langinfo.h
2882         unconditionally.  (#341217)
2883
2884 2006-05-10  John (J5) Palmieri  <johnp@redhat.com>
2885
2886         * modules/printbackends/cups/gtkprintbackendcups.c:
2887         make the _CUPS_MAP_ATTR_STR macro not dup the string so we don't
2888         leak 
2889
2890 2006-05-10  Francisco Javier F. Serrador  <serrador@cvs.gnome.org>
2891
2892         * gtk/paper_names.c: Correct #11 Envelope typo.
2893
2894 2006-05-09  Tor Lillqvist  <tml@novell.com>
2895
2896         * gdk/win32/gdkevents-win32.c (doesnt_want_scroll): Look at both
2897         GDK_SCROLL_MASK and GDK_BUTTON_PRESS_MASK. (#139628)
2898
2899 2006-05-09  Matthias Clasen  <mclasen@redhat.com>
2900
2901         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add a :cursor-position
2902         property.  (#334412, Yevgen Muntyan)
2903
2904         * gtk/gtk.symbols:
2905         * gtk/gtkmessagedialog.[hc]: Add an image property.  (#337306, Alex Graveley)
2906
2907 2006-05-09  Carlos Garnacho  <carlosg@gnome.org>
2908
2909         * gtk/gtknotebook.c: create an independent GdkWindow to behave nicely
2910         during reordering with tab_labels with their own window, also use
2911         gtk_drag_set_icon_widget() for the DnD icon to avoid drawing garbage
2912         from offscreen regions. Closes bug #335707.
2913         (gtk_notebook_tab_space), (gtk_notebook_calculate_shown_tabs),
2914         (gtk_notebook_calculate_tabs_allocation): new functions, 
2915         gtk_notebook_pages_allocate() functionality has been splitted into
2916         these.
2917
2918 2006-05-08  Matthias Clasen  <mclasen@redhat.com>
2919
2920         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_add_shortcut_folder): 
2921         * gtk/gtktextbufferserialize.c (parse_attr_element): Fix some typos in
2922         messages.  (#341091, Tino Meinen)
2923
2924         * gtk/gtkstatusicon.c: Some cleanups.
2925         
2926         * gtk/gtkstatusicon.c (gtk_status_icon_get_property): Silently return
2927         NULL if the storage type of the image does not match.  (#340516, Christian
2928         Persch)
2929
2930         * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Elide (_x) in the middle
2931         of the string, too.  (#323956, Abel Cheung)
2932
2933         * gtk/gtkuimanager.c (update_node): Fix tooltips. (#340527, Jon-Kare Hellan)
2934
2935         * configure.in: Require Pango 1.13.0
2936
2937         * gtk/gtknotebook.c: 
2938         * gtk/gtkwindow.c: 
2939         * gtk/gtkrange.c: Fix doc typos.
2940
2941 2006-05-08  Francisco Javier F. Serrador  <serrador@cvs.gnome.org>
2942
2943         * gtk/gtkprintunixdialog.c (gtk_print_unix_dialog_class_init):
2944         Corrected a duplicate word.
2945
2946         * gtk/gtkrecentmanager.c (gtk_recent_manager_add_full): Corrected
2947         a typo.
2948
2949 2006-05-07  Matthias Clasen  <mclasen@redhat.com>
2950
2951         * gtk/gtkrange.c (gtk_range_key_press):  Chain up, to
2952         make bindings work.  Noticed by Al Puzzuoli.
2953         
2954 2006-05-07  Matthias Clasen  <mclasen@redhat.com>
2955
2956         * gtk/gtkseparator.c: 
2957         * gtk/gtkscrollbar.c: 
2958         * gtk/gtkpaned.c: 
2959         * gtk/gtkoldeditable.c: 
2960         * gtk/gtkmisc.c: 
2961         * gtk/gtkitem.c: 
2962         * gtk/gtkimcontext.c: 
2963         * gtk/gtkrange.c:
2964         * gtk/gtkscale.c: Make types abstract again.
2965
2966 2006-05-06  Matthias Clasen   <mclasen@redhat.com>
2967         
2968         * gdk/gdkwindow.c (gdk_window_get_toplevels): Fix a wrong
2969         reference in the docs.  (#340870, Ed Catmur)
2970
2971 2006-05-05  Christian Persch  <chpe@cvs.gnome.org>
2972
2973         * modules/printbackends/cups/gtkprintbackendcups.c:
2974         * modules/printbackends/lpr/gtkprintbackendlpr.c:
2975         * modules/printbackends/pdf/gtkprintbackendpdf.c: Always register
2976           the type with the type module, even if it had been registered
2977           before. Fixes bug #340676.
2978
2979 2006-05-05  Matthias Clasen  <mclasen@redhat.com>
2980
2981         * gtk/gtkprintunixdialog.c: Use theme colors for 
2982         the page layout indicator, and do RTL flipping for
2983         the collate indicator.
2984
2985 2006-05-05  Matthias Clasen  <mclasen@redhat.com>
2986
2987         * configure.in: Require GLib 1.11.0
2988
2989         * configure.in: Bump version
2990
2991         * === Released 2.9.0 ===
2992
2993         * configure.in: Require cairo 1.1.6
2994
2995         * gtk/Makefile.am: Tweaks to make distcheck work.
2996
2997 2006-05-05  Alexander Larsson  <alexl@redhat.com>
2998
2999         * gtk/gtkprintoperation-unix.c:
3000         Implement per-page paper sizes.
3001         
3002         * gtk/gtkprintoperation.c:
3003         Implement per-page paper sizes for pdf output.
3004         Make gtk_print_operation_set_pdf_target() work again
3005         
3006         * tests/Makefile.am:
3007         * tests/testprint.c:
3008         * tests/testprintfileoperation.[ch]:
3009         Add more test code for printing support.
3010         This tests per-page paper sizes & orientation and
3011         deriving from GtkPrintOperation.
3012
3013 2006-05-04  Michael Emmel  <mike.emmel@gmail.com>
3014
3015         * gdk/directfb/gdkkeys-directfb.c: DIKI_ALTGR to compile with
3016         directfb 0.9.25.1
3017
3018 2006-05-04  Michael Natterer  <mitch@imendio.com>
3019
3020         * gtk/gtk.symbols: remove gtk_printer_set_backend so it compiles
3021         again.
3022
3023 2006-05-04  Alexander Larsson  <alexl@redhat.com>
3024
3025         * gtk/gtk.symbols:
3026         Added new symbols
3027         
3028         * gtk/gtkpagesetupunixdialog.c:
3029         * gtk/gtkprintunixdialog.c:
3030         Destroy backends when finalizing dialogs.
3031         Fix printer leak in selected_printer_changed.
3032         
3033         * gtk/gtkprintbackend.[ch]:
3034         Convert from interface to baseclass.
3035         Move printer hashtable here so that the baseclass can handle
3036         the slightly complicated ownership model.
3037         Add gtk_print_backend_destroy which runs the dispose method,
3038         causing the ref-cycles between the backend and its printers
3039         to be broken.
3040         Add gtk_print_backend_unref_at_idle().
3041         
3042         * gtk/gtkprinter.[ch]:
3043         GtkPrinter objects now ref their backend so that its always
3044         availible, since its needed for the printer object to work.
3045         This causes a reference-cycle that is broken using
3046         gtk_print_backend_destroy.
3047         Add gtk_printer_compare.
3048         
3049         * gtk/gtkprintoperation-private.h:
3050         * gtk/gtkprintoperation-unix.c:
3051         * gtk/gtkprintoperation.c:
3052         Implement !show_dialog for unix.
3053         Make sure the print data is fully spooled before returning
3054         from a sync run_dialog.
3055         
3056         
3057         * modules/printbackends/cups/gtkcupsutils.[ch]:
3058         Add gtk_cups_request_ipp_add_strings
3059         
3060         * modules/printbackends/cups/gtkprintbackendcups.c:
3061         * modules/printbackends/cups/gtkprintercups.c:
3062         * modules/printbackends/lpr/gtkprintbackendlpr.c:
3063         * modules/printbackends/pdf/gtkprintbackendpdf.c:
3064         Convert backends to derive instead of implementing interface.
3065         Move common code into baseclass.
3066         CUPS:
3067           Remove the printer polling in dispose, not finalize.
3068           In the cups watch, remove the backend at idle instead of
3069           immediately, since the unref can cause the module to be unloaded.
3070           Limit the number of printer attributes requested
3071           Get printer uri in initial printer listing so that we can use
3072           the printer object immediately.
3073         
3074         * tests/Makefile.am:
3075         * tests/testnouiprint.c:
3076         Add testcase for !show_dialog.
3077
3078 2006-05-04  Matthias Clasen  <mclasen@redhat.com>
3079
3080         * gtk/gtk.symbols:
3081         * gtk/gtkfilesystem.c:
3082         * gtk/gtkfilesystemunix.c:
3083         * gtk/gtkprintbackend.h:
3084         * gtk/gtkrecentchooserdefault.c:
3085         * gtk/gtkrecentchooserdefault.h:
3086         * gtk/paper_names_offsets.c: Make symbol list mstch reality.
3087         
3088         * gtk/Makefile.am: Fix a typo.
3089         
3090         * gdk/x11/Makefile.am (EXTRA_DIST): Add gdksettings.c
3091
3092 2006-05-03  Matthias Clasen  <mclasen@redhat.com>
3093
3094         * NEWS: Updates
3095
3096 2006-05-04  Murray Cumming <murrayc@murrayc.com>
3097
3098         * gtk/gtktreemodel.c: (gtk_tree_model_base_init): Changed the 
3099         language of the signals documentation slightly. Bug #340205.
3100
3101 2006-05-03  Federico Mena Quintero  <federico@novell.com>
3102
3103         Merged the federico-filename-entry branch, to fix bug #136541.
3104         Combined ChangeLogs:
3105
3106         2006-04-17  Federico Mena Quintero  <federico@novell.com>
3107
3108         * gtk/gtkfilechooserdefault.c (pending_select_paths_process):
3109         Oops, we *do* need to check that we are in OPEN mode before
3110         selecting the first row in the file list.  See
3111         https://bugzilla.novell.com/show_bug.cgi?id=166906
3112         (gtk_file_chooser_default_get_paths): If we are in the case for
3113         the file list, and the list has no selected rows, jump to the case
3114         for the filename entry.  This is so that
3115
3116                1. The user types a filename in the SAVE filename entry
3117                   ("foo.txt").
3118
3119                2. He then double-clicks on a folder ("bar") in the file
3120                   list.
3121
3122         will yield the expected "bar/foo.txt" selection.
3123
3124         2006-03-29  Federico Mena Quintero  <federico@novell.com>
3125
3126         * gtk/gtkpathbar.c (gtk_path_bar_init): Reduce the inter-button
3127         spacing to 0.
3128
3129         * gtk/gtkfilechooserdefault.c (browse_widgets_create): Make the
3130         location label bold.
3131
3132         2006-03-29  Federico Mena Quintero  <federico@novell.com>
3133
3134         * gtk/gtkfilechooserdefault.c (location_mode_set): Just change the
3135         location_mode field if we are in SAVE/CREATE_FOLDER modes.
3136         (gtk_file_chooser_default_get_paths): Get the path based on the
3137         currently focused widget, or the last-focused widget.  This is
3138         what we should have been doing in the beginning, but it worked out
3139         fine because we didn't have the possibility of a filename entry in
3140         OPEN mode.
3141         (gtk_file_chooser_default_should_respond): Handle the case where
3142         the last focused widget is the location_entry.
3143
3144         2006-03-28  Federico Mena Quintero  <federico@novell.com>
3145
3146         * gtk/gtkfilechoosersettings.[ch]: New files with a simple
3147         framework for saving/loading settings from the file chooser in
3148         $XDG_CONFIG_HOME/gtk-2.0/gtkfilechooser.
3149
3150         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_unmap):
3151         Save the current settings.
3152         (settings_save): New helper function.  We save the location_mode
3153         and show_hidden flags.
3154         (gtk_file_chooser_default_map): Load the settings.
3155         (settings_load): New helper function.
3156
3157         * gtk/gtkfilechooserentry.c
3158         (_gtk_file_chooser_entry_set_file_part): Oops, don't modify
3159         in_change.  Our handlers are what set the file_part, so they
3160         *must* be run when we modify the text.
3161
3162         2006-03-27  Federico Mena Quintero  <federico@novell.com>
3163
3164         * gtk/gtkfilechooserprivate.h (struct _GtkFileChooserDefault):
3165         Removed the save_file_name_entry.  We'll make this be the same as
3166         the location_entry widget.
3167         (struct _GtkFileChooserDefault): Leave only location_button,
3168         location_entry_box, location_label, location_entry.  We'll use a
3169         single toggle button for the location entry, which will appear
3170         below the path bar.
3171         (struct _GtkFileChooserDefault): Added a
3172         processing_pending_selections flag.
3173
3174         * gtk/gtkfilechooserdefault.c (save_widgets_create): Destroy the
3175         old location_entry if necessary, and hide the location toggle
3176         widgets.
3177         (update_chooser_entry): In multiple selection mode, just clear the
3178         location_entry.
3179         (check_save_entry): Allow running in OPEN or SELECT_FOLDER modes
3180         if we are in LOCATION_MODE_FILENAME_ENTRY.
3181         (gtk_file_chooser_default_should_respond): Switch to a folder if
3182         the location_entry contains a folder name in OPEN and SAVE mode,
3183         not just SAVE mode.  If the entry doesn't contain a folder name,
3184         but is otherwise well-formed, and we are in OPEN mode, return that
3185         we should respond with that filename.
3186         (gtk_file_chooser_default_initial_focus): Focus the location_entry
3187         if appropriate.
3188         (browse_widgets_create): Create the location_entry_box and the
3189         location_label here.
3190         (update_appearance): Call location_mode_set() when switching back
3191         to OPEN/SELECT_FOLDER mode.  Hide the location_button when
3192         switching to SAVE/CREATE_FOLDER mode.
3193         (pending_select_paths_process): Turn the
3194         processing_pending_selections flag on and off around changes to
3195         the current selection.  Don't special-case OPEN mode anymore,
3196         since the new flag will take care of things in
3197         update_chooser_entry().
3198         (update_chooser_entry): Don't do anything if
3199         processing_pending_selections is TRUE.  This keeps the entry from
3200         being polluted when changing folders.
3201         (location_popup_handler): In OPEN/SELECT_FOLDER modes, toggle
3202         between the path bar and the entry.  In SAVE/CREATE_FOLDER modes, simply focus the
3203         location_entry.
3204         (update_from_entry): Removed.
3205         (location_entry_create): Removed.
3206         (open_location_cb): Removed.
3207         (file_list_build_popup_menu): Don't add an "Open _Location" menu item.
3208         (location_entry_set_initial_text): Don't do anything if
3209         current_folder is NULL.
3210
3211         * gtk/gtkfilechooserentry.c
3212         (_gtk_file_chooser_entry_set_file_part): Turn in_change on and off
3213         around the call to gtk_entry_set_text().  This makes completion
3214         not happen when the caller has explicitly set a name.
3215
3216         2006-03-24  Federico Mena Quintero  <federico@novell.com>
3217
3218         * gtk/gtkfilechooserprivate.h (struct _GtkFileChooserDefault):
3219         Added fields location_mode_box, location_pathbar_radio,
3220         location_filename_radio, location_widget_box, location_label,
3221         location_entry.  The radio buttons will switch between the pathbar
3222         and the location entry; the other boxes are for layout purposes.
3223         (enum LocationMode): New enum.
3224         (struct _GtkFileChooserDefault): Added a location_mode field.
3225
3226         * gtk/gtkfilechooserdefault.c (browse_widgets_create): Create the
3227         location radio buttons to switch between the pathbar and the
3228         location entry.  Pack the browse_path_bar in the new
3229         location_widget_box instead of a generic hbox.
3230         (location_buttons_create): New function.
3231         (gtk_file_chooser_default_init): Initialize impl->location_mode.
3232         (location_switch_to_path_bar): New function.
3233         (location_switch_to_filename_entry): New function.
3234
3235         * gtk/gtkfilechooserbutton.c (model_add_special): The display_name
3236         should not be const.
3237
3238 2006-05-03  Matthias Clasen  <mclasen@redhat.com>
3239
3240         * gtk/gtkprintunixdialog.c: Replace the xpm collate icons
3241         by cairo drawing that respects themes.
3242
3243         * gdk/quartz/Makefile.am (libgdk_quartz_la_SOURCES): Add
3244         missing files.  (#340533, Ludovic Rousseau)
3245
3246         * gtk/gtkprintunixdialog.c (draw_page_cb): Don't leak the
3247         cairo context here.  (#340522, Christian Persch)
3248
3249         * gtk/gtkprintoperation-unix.c (unix_finish_send): Don't
3250         use gtk_dialog_run for the error dialog, and improve the
3251         dialog in other ways.  (#340510, Christian Persch)
3252
3253         * gtk/gtkpagesetupunixdialog.c: Beautify the custom
3254         paper size dialog.  (#339590, patch by Christian Persch)
3255         
3256         * gtk/gtkaccessible.c:
3257         * gtk/gtkclipboard.c:
3258         * gtk/gtkfilefilter.c:
3259         * gtk/gtkimmodule.c:
3260         * gtk/gtkmenubar.c: More G_DEFINE_TYPE conversion.
3261
3262         * gtk/gtkwidget.c: Make GtkWidget abstract again.
3263
3264 2006-05-02  Matthias Clasen  <mclasen@redhat.com>
3265
3266         * gtk/*.c: Use G_DEFINE_TYPE and g_type_register_static_simple()
3267         where applicable, for ~5000 lines of code reduction. This also
3268         reduces the size of the data section by ~9k. The overall library
3269         sizes shrinks a bit less, since the text section gets a bit
3270         larger.
3271
3272 2006-05-02  Kristian Rietveld  <kris@imendio.com>
3273
3274         * gtk/gtktreeview.c (gtk_tree_view_row_inserted): set tmpnode to
3275         the return value of the _gtk_rbtree_insert* functions, since that
3276         is the node we really want to check for visibilty.
3277
3278 2006-05-02  Matthias Clasen  <mclasen@redhat.com>
3279
3280         * gtk/gtkprinter.[hc]: Don't use virtual as a parameter name.
3281         (#340394, Christian Persch)
3282
3283 2006-05-02  Christian Persch  <chpe@cvs.gnome.org>
3284
3285         * gtk/gtkpagesetupunixdialog.c:
3286         * gtk/gtkprintcontext.c: 
3287         * gtk/gtkprinter.c:
3288         * gtk/gtkprinteroptionwidget.c:
3289         * gtk/gtkprintjob.c:
3290         * gtk/gtkprintoperation-unix.c:
3291         * gtk/gtkprintoperation.c:
3292         * gtk/gtkprintunixdialog.c: Use a priv variable when accessing priv
3293           multiple times in the same function. Bug #340288.
3294
3295 2006-05-02  Michael Natterer  <mitch@imendio.com>
3296
3297         * gtk/gtklabel.c (gtk_label_set_line_wrap): added note about the
3298         inablity to do height-for-width text layout and suggest to use
3299         gtk_widget_set_size_request() for getting a label that wraps at
3300         some specific position.
3301
3302 2006-05-02  Kristian Rietveld  <kris@imendio.com>
3303
3304         * ChangeLog.gtk-async-file-chooser: added ChangeLog entries from
3305         the kris-async-branch.
3306
3307         * Makefile.am: updated EXTRA_DIST
3308
3309 2006-05-02  Alexander Larsson  <alexl@redhat.com>
3310
3311         * ChangeLog.gtk-printing: 
3312         * Makefile.am (EXTRA_DIST):
3313         Add ChangeLog.gtk-printing
3314
3315 2006-05-01  Matthias Clasen  <mclasen@localhost.localdomain>
3316
3317         * NEWS: Updates
3318
3319 2006-05-02  Kristian Rietveld  <kris@imendio.com>
3320
3321
3322         * configure.in: Up ABI version to 2.10.0 (by Matthias' request).
3323
3324 2006-05-01  Kristian Rietveld  <kris@imendio.com>
3325
3326         Merge of the GTK+ asynchronous file chooser branch.  Please see
3327         the kris-asynch-branch for more detailed ChangeLog entries.
3328
3329         * configure.in: increase binary version to 2.9.0.
3330
3331         * gtk/gtk.symbols:
3332         * gtk/gtkfilechooser.c:
3333         * gtk/gtkfilechooserbutton.c:
3334         * gtk/gtkfilechooserdefault.c:
3335         * gtk/gtkfilechooserdialog.c:
3336         * gtk/gtkfilechooserembed.c:
3337         * gtk/gtkfilechooserembed.h:
3338         * gtk/gtkfilechooserentry.c:
3339         * gtk/gtkfilechooserentry.h:
3340         * gtk/gtkfilechooserprivate.h:
3341         * gtk/gtkfilesystem.c:
3342         * gtk/gtkfilesystem.h:
3343         * gtk/gtkfilesystemmodel.c:
3344         * gtk/gtkfilesystemmodel.h:
3345         * gtk/gtkfilesystemunix.c:
3346         * gtk/gtkpathbar.c:
3347         * gtk/gtkpathbar.h:
3348         Merge from kris-async-branch.
3349
3350 2006-05-01  Matthias Clasen  <mclasen@redhat.com>
3351
3352         * NEWS: Updates
3353
3354 2006-04-30  Matthias Clasen  <mclasen@redhat.com>
3355
3356         * gtk/gtktreemodel.c (gtk_tree_model_base_init): Document
3357         GtkTreeModel signals.
3358
3359 2006-04-19  Michael Emmel  <mike.emmel@gmail.com>
3360
3361         * gdk/directfb/gdkdrawable-directfb.c: removed all subtracting one on
3362         clipping
3363
3364 2006-04-30  Kristian Rietveld  <kris@imendio.com>
3365
3366         Fix for #340200, spotted by Torsten Schoenfeld.
3367
3368         * gtk/gtktreeview.c (gtk_tree_view_get_cell_area): fix up logic
3369         calculating the level indentation,
3370         (gtk_tree_view_start_editing): remove code calculating the
3371         level indentation, since _get_cell_area() takes care of this for us.
3372
3373 2006-04-30  Matthias Clasen  <mclasen@redhat.com>
3374
3375         Fix problems with setting symbolic colors from rc files.
3376         (#338345, Benjamin Berg)
3377         
3378         * gtk/gtkrc.c (gtk_rc_settings_changed, gtk_rc_font_name_changed) 
3379         (gtk_rc_color_hash_changed, gtk_rc_reparse_all_for_settings): Don't
3380         freeze notification for settings changes while parsing; instead
3381         manually avoid recursion, and update the color hashes.
3382
3383 2006-04-30  Matthias Clasen  <mclasen@redhat.com>
3384
3385         * gtk/gtksettings.c (gtk_settings_class_init): Change the default
3386         value of the gtk-color-scheme setting to "".
3387
3388         * gtk/gtkprinteroption.c: 
3389         * gtk/gtkprinteroptionwidget.c: 
3390         * gtk/gtkprintunixdialog.c: Improve the print dialog layout,
3391         mark some more strings for translation.  (#340139, Christian Persch)
3392
3393         * gtk/gtkstatusicon.c (gtk_status_icon_class_init): Fix the definition
3394         of the ::size-changed signal, and improve its documentation.
3395         (#340112, Christian Persch)
3396
3397 2006-04-29  Behdad Esfahbod  <behdad@gnome.org>
3398
3399         * gtk/gtkwidget.c (gtk_widget_create_pango_layout)
3400         (gtk_widget_get/create_pango_context): Change colormap to font map in
3401         docs. (#340093)
3402
3403 2006-04-29  Matthias Clasen  <mclasen@redhat.com>
3404
3405         * gtk/gtk.symbols: 
3406         * gtk/gtkstatusicon.h: 
3407         * gtk/gtkstatusicon.c (gtk_status_icon_position_menu): Add a menu
3408         position function for use with popups on status icons.  (#334573, 
3409         Christian Persch)
3410
3411         * gtk/gtkwidget.c (gtk_widget_is_composited): Fix a C99ism.  (#340055,
3412         Kazuki Iwamoto)
3413
3414 2006-04-28  Matthias Clasen  <mclasen@redhat.com>
3415
3416         * gtk/gtkcellrenderertext.c (get_size): Use _static variants when
3417         copying and merging short-lived Pango layouts. (#340033, Morten Welinder)
3418
3419 2006-04-28  Behdad Esfahbod  <behdad@gnome.org>
3420
3421         * gtk/gtkwidget.c (gtk_widget_create_pango_layout): Fix typo in
3422         docs. (#340063)
3423
3424 2006-04-28  Matthias Clasen  <mclasen@redhat.com>
3425
3426         * gtk/gtktreeview.c (gtk_tree_view_drag_begin): Don't force
3427         the standard DND icon if the user has a custom DND source.  
3428         (#339522, Joe Wreschnig)
3429
3430 2006-04-28  Michael Natterer  <mitch@imendio.com>
3431
3432         * gtk/gtktextbuffer.c (create_clipboard_contents_buffer): keep a
3433         reference to the source buffer while the clipboard contents buffer
3434         exists, because it is needed for serializing the contents buffer.
3435         Makes copying from the contents buffer possible even after the
3436         resp. text view is destroyed (for example when there is a
3437         clipboard manager running on app exit) (bug #339195).
3438
3439 2006-04-27  Behdad Esfahbod  <behdad@gnome.org>
3440
3441         * gdk/gdkpango.c (gdk_pango_renderer_draw_glyphs): Cast to double
3442         before dividing by PANGO_SCALE. (#334582)
3443
3444 2006-04-27  Matthias Clasen  <mclasen@redhat.com>
3445
3446         * gtk/gtkentry.c (popup_position_func): Improve positioning
3447         of the menu when popped up by keynav.  (#334987, Christian
3448         Persch)
3449
3450         * gtk/gtkdnd.c (gtk_drag_set_icon_window): Handle the case
3451         of being called after the drag is cancelled.  (#339224, 
3452         Benjamin Otte)
3453
3454         * gdk/x11/gdkscreen-x11.c (_gdk_x11_screen_process_owner_change):
3455         Use XFixes only if it is available.  (#339839, Marko Anastasov)
3456
3457 2006-04-26  Federico Mena Quintero  <federico@novell.com>
3458
3459         * gtk/gtkdialog.c (gtk_dialog_close): Don't make this conditional
3460         on having a GTK_RESPONSE_CANCEL button -> end the idiocy.  Fixes
3461         bug #101293.
3462
3463 2006-04-26  Kristian Rietveld  <kris@imendio.com>
3464
3465         * gtk/gtktreeview.c (node_is_visible): new function,
3466         (validate_visible_area): when a node is validated, only queue a
3467         redraw for that node, not for the entire widget (a redraw for the
3468         entire widget is only needed when the sizes change, and
3469         _queue_resize() will take care of that),
3470         (do_validate_rows): do not queue a redraw, redraws are only needed
3471         for changes in the visible area and validate_visible_area() takes
3472         care of that,
3473         (gtk_tree_view_row_inserted): for fixed height mode, only queue
3474         a resize and redraw if the node is visible, else no redraw is needed.
3475
3476 2006-04-26  Kristian Rietveld  <kris@imendio.com>
3477
3478         If this new "row-ending-details" property is turned on, more
3479         detailed "details" will be passed to the theme engine for drawing
3480         the background, drop indicator and focus rectangle.  Requirement is
3481         that the theme engine supports these details. (#333760).
3482
3483         * gtk/gtktreeview.c (gtk_tree_view_class_init): add row-ending-details
3484         style property,
3485         (gtk_tree_view_bin_expose): pass more detailed detail to
3486         gtk_paint_flat_box() if the property is turned on,
3487         (gtk_tree_view_bin_expose): likewise for the drop indicator,
3488         (gtk_tree_view_bin_expose): likewise for the focus rectangle.
3489
3490 2006-04-26  Kristian Rietveld  <kris@imendio.com>
3491
3492         New "show-expanders" and "level-indentation" properties, which can
3493         be used for customizing the tree view.  (For example to do
3494         grouping as demonstrated in the test application).
3495         Discussion in #80869.
3496
3497         * gtk/gtktreeprivate.h: add level_indentation field.
3498
3499         * gtk/gtktreeview.c (gtk_tree_view_class_init),
3500         (gtk_tree_view_init), (gtk_tree_view_set_property),
3501         (gtk_tree_view_get_property): add the properties to the object,
3502         (gtk_tree_view_button_press), (do_prelight),
3503         (gtk_tree_view_bin_expose), (validate_row),
3504         (gtk_tree_view_discover_dirty_iter), (gtk_tree_view_get_cell_area),
3505         (gtk_tree_view_create_row_drag_icon): take the new properties
3506         into account,
3507         (gtk_tree_view_start_editing): fix cell placement code.
3508
3509         * tests/testgrouping.c: new test application, showing how to
3510         implement grouping.
3511
3512         * tests/Makefile.am: updated.
3513
3514 2006-04-25  Matthias Clasen  <mclasen@redhat.com>
3515
3516         * gdk/gdk.symbols: Add gdk_screen_is_composited
3517
3518         * gtk/gtkprintjob.c (gtk_print_job_set_source_file): Add docs.
3519
3520         * gtk/gtkprintoperation.c: Add docs.
3521
3522 Tue Apr 25 10:25:28 2006  Søren Sandmann  <sandmann@redhat.com>
3523
3524         * tests/testgtk.c (create_alpha_window): Create 'composited' label.
3525
3526         * tests/testgtk.c (on_composited_changed): New function, change
3527         the label to say whether the screen is composited or not.
3528
3529         * gtk/gtkwindow.c (gtk_window_on_composited_changed): When
3530         composited status change, invalidate the window and propagate the signal;.
3531
3532         * gtk/gtkwindow.c (gtk_window_map): Set the appropriate type hint
3533         if reset_type_hint is TRUE.
3534
3535         * gtk/gtkwindow.c (gtk_window_set_type_hint): If hint is one of
3536         the old hints, store a shadow copy in the public window->type_hint
3537         bitfield, otherwise set this field to normal. Set the private
3538         field to the type hint.
3539
3540         * gtk/gtkwindow.c (gtk_window_init): Initialize priv->type_hint. 
3541
3542         * gtk/gtkwindow.c (struct _GtkWindowPrivate): New field
3543         "reset_type_hint" indicating whether the type hint needs to be
3544         reset. New field type_hint containing a GdkWindowTypeHint.
3545
3546         * gtk/gtkwidget.c (propagate_composited_changed): New function to
3547         propagate changes in composited status.
3548         (gtk_widget_class_init): Add composited_changed signal.
3549         
3550         * gtk/gtkwidget.h (struct _GtkWidgetClass): New signal composited-changed.
3551
3552         * gtk/gtkwidget.c (gtk_widget_is_composited): New function.
3553
3554         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): Set transient for.
3555
3556         * gtk/gtktooltips.c (gtk_tooltips_force_window): Set the type hint
3557
3558         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Compute whether
3559         the item belongs to a menubar. Set the type_hint appropriately
3560         depending on the outcome.
3561
3562         * gtk/gtkmenu.c (gtk_menu_position): Set the default type hint here.
3563
3564         * gtk/gtkmenu.c (gtk_menu_attach_to_widget): connect to hierarchy
3565         changed on the attach widget.
3566
3567         * gtk/gtkmenu.c (attach_widget_hierarchy_changed): New function to
3568         set the transient_for property for menus.
3569
3570         * gtk/gtkdnd.c (set_icon_stock_pixbuf): Set the appropriate type hint.
3571
3572         * gtk/gtkcombo.c (gtk_combo_popup_list): Make the popup window
3573         transient for the toplevel.
3574
3575         * gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Set
3576         transient-for, for the popup window.
3577
3578         * gdk/x11/gdkwindow-x11.c (gdk_window_get_type_hint): Support for
3579         new window types.
3580
3581         * gdk/x11/gdkwindow-x11.c (gdk_window_set_type_hint): Add support
3582         for new window types.
3583
3584         * gdk/x11/gdkscreen-x11.c (_gdk_x11_screen_process_owner_change):
3585         New function called whenever the compositing manager comes and goes.
3586
3587         * gdk/x11/gdkscreen-x11.c (gdk_screen_is_composited): New function.
3588
3589         * gdk/x11/gdkscreen-x11.c
3590         (_gdk_x11_screen_request_cm_notification, make_cm_atom,
3591         check_is_composited): New functions
3592
3593         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Call
3594         _gdk_x11_screen_process_owner_change when an
3595         XFixesSelectionNotifyEvent is received.
3596
3597         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Call
3598         _gdk_x11_screen_request_cm_notification() on all screens.
3599
3600         * gdk/quartz/gdkscreen-quartz.c (gdk_screen_is_composited): Dummy
3601         implementation. 
3602
3603         * gdk/gdkscreen.c (gdk_screen_class_init): New signal,
3604         'composited-changed'.
3605
3606         * gdk/gdkwindow.h: Add new EWMH window types.
3607
3608         * gdk/win32/gdkscreen-win32.c (gdk_screen_is_composited) 
3609
3610 2006-04-25  Matthias Clasen  <mclasen@redhat.com>
3611         
3612         * modules/printbackends/cups/gtkprintbackendcups.c: 
3613         Add some more translatable PPD option names.
3614
3615 2006-04-24  Matthias Clasen  <mclasen@redhat.com>
3616
3617         * po/POTFILES.in:
3618         * po-properties/POTFILES.in: Updates
3619
3620         * gtk/paper_names.c: Declare PaperInfo here.
3621
3622         * gtk/gen-paper-names.c: Add a prefix to gettext msgids.
3623
3624         * gtk/paper_names_offsets.c: Regenerated.
3625         
3626         * gtk/gtkpapersize.c (gtk_paper_size_get_display_name):
3627         Use g_strip_context() to strip the prefix.
3628
3629 2006-04-24  Matthias Clasen  <mclasen@redhat.com>
3630         
3631         * gtk/gtkfontbutton.c: Small doc fixes.
3632
3633         * gtk/gtkprintunixdialog.h: 
3634         * gtk/gtkpagesetupunixdialog.h: Fix includes (#338665)
3635
3636         * gtk/gtkprintsettings.h (GtkPageRange): Declare in a way grokked by gtk-doc.
3637
3638         * gdk/gdkregion-generic.c: Documentation fixes.
3639
3640         * gdk/directfb/gdkmain-directfb.c: Make the comment not look like
3641         a doc comment.
3642
3643         * gtk/gtkprintunixdialog.c: Add docs.
3644
3645         * gtk/gtkstatusicon.c (gtk_status_icon_get_visible): Typo fix.
3646
3647 2006-04-24  Alexander Larsson  <alexl@redhat.com>
3648
3649         * gtk/gtkprinter.c:
3650         Don't ref the backend since the backend owns the printer.
3651
3652 2006-04-24  Alexander Larsson  <alexl@redhat.com>
3653
3654         * gtk/gtkpagesetupunixdialog.c (update_combo_sensitivity_from_printers):
3655         Remove spew.
3656
3657 2006-04-24  Alexander Larsson  <alexl@redhat.com>
3658
3659         * gtk/gtkprintunixdialog.c (create_page_setup_page):
3660         Even/Odd Pages -> Even/Odd Sheets
3661
3662 2006-04-24  Matthias Clasen  <mclasen@redhat.com>
3663
3664         * gtk/gtk.symbols:
3665         * gtk/gtkprintoperation.c (gtk_print_operation_run_async): Refactor the
3666         gtk_print_operation_run() code and add an _async version.
3667
3668         * gtk/gtkprintoperation-private.h:
3669         * gtk/gtkprintoperation-unix.c
3670         (_gtk_print_operation_platform_backend_run_dialog_async)
3671         (gtk_print_run_page_setup_dialog_async): Variants of the run functions
3672         which don't call gtk_dialog_run(), but only show the dialog and return,
3673         and handle the response in a signal handler.
3674
3675         * gtk/gtkprintoperation-win32.c (gtk_print_run_page_setup_dialog_async) 
3676         (_gtk_print_operation_platform_backend_run_dialog_async): Implement these 
3677         by calling the sync versions.
3678
3679         * gtk/gtkprintoperation-unix.c: Cleanups.
3680
3681         * gtk/gtkpagesetupunixdialog.c (gtk_page_setup_unix_dialog_get_page_setup):
3682         Remove redundant code.
3683
3684         * gtk/Makefile.am: Install gtkprintjob.h as Unix-specific print API.
3685
3686         * gtk/gtkprintoperation-unix.c (gtk_print_run_page_setup_dialog): 
3687         Return a copy of the original page setup if the dialog was canceled.
3688
3689 2006-04-24  Alexander Larsson  <alexl@redhat.com>
3690
3691         * gtk/gtkprintjob.h:
3692         Declare GtkPrintJob.
3693         
3694         * gtk/gtkprintunixdialog.c: (gtk_print_unix_dialog_get_settings):
3695         Change g_return_if_fail to g_return_val_if_fail.
3696
3697 2006-04-24  Alexander Larsson  <alexl@redhat.com>
3698
3699         * configure.in:
3700         Check for cairo-pdf.h.
3701         Check for cairo-ps.h on non-win32.
3702
3703 2006-04-24  Matthias Clasen  <mclasen@redhat.com>
3704
3705         * gtk/gtkclipboard.h: 
3706         * gtk/gtkprinter.c: 
3707         * gtk/gtkprintsettings.h: 
3708         * gtk/gtkprintsettings.c: Match parameter names with the headers.
3709
3710         * gtk/gtkprintoperation-unix.c (gtk_print_run_page_setup_dialog): 
3711         Add docs.
3712
3713         * gtk/gtktextbufferrichtext.c (gtk_text_buffer_deserialize): 
3714         * gtk/gtkstatusicon.c (gtk_status_icon_get_storage_type): 
3715         * gtk/gtktreeview.c (gtk_tree_view_set_search_position_func): 
3716         * gtk/gtktreeview.c (gtk_tree_view_get_headers_clickable): 
3717         * gtk/gtkcellrendererspin.c (gtk_cell_renderer_spin_new): 
3718         * gtk/gtkmenu.c (gtk_menu_get_for_attach_widget): Fix the docs.
3719
3720         * gtk/gtkprinter.h: Don't declare GtkPrintJob here.
3721         * gtk/gtkprinter-private.h: Instead include gtkprintjob.h.
3722
3723 2006-04-23  Matthias Clasen  <mclasen@redhat.com>
3724
3725         * gtk/gtkprinter-private.h: 
3726         * gtk/gtkprintbackend.h: 
3727         * gtk/gtkprinter.[hc]: 
3728         * gtk/gtkprintjob.[hc]: Use g types, add documentation, and some
3729         stylistic fixups.
3730
3731         * gtk/gtkaboutdialog.c (activate_url): Avoid a compiler warning.
3732
3733         * gtk/gtkpapersize.[hc]: Use g types, add documentation.
3734
3735         * gtk/gtkprintunixdialog.c (gtk_print_unix_dialog_get_settings): 
3736         Use g_return_val_if_fail in non-void functions.
3737
3738         * gtk/Makefile.am: Add gtkprintutils.[hc]
3739
3740         * gtk/gtkprintutils.[hc]: New files, move the unit conversion
3741         functions here.
3742
3743         * gtk/gtkpagesetupunixdialog.c: 
3744         * gtk/gtkprintsettings.c: 
3745         * gtk/gtkpagesetup.c: 
3746         * gtk/gtkpapersize.c: Replace all static copies of to_mm/from_mm
3747         by the copies in gtkprintutils.c.
3748
3749         * gtk/gtkpagesetup.[hc]: Use g types, add documentation.
3750
3751         * gtk/gtkprintsettings.c: More documentation
3752
3753 2006-04-22  Tor Lillqvist  <tml@novell.com>
3754
3755         * gtk/Makefile.am (gtk_private_h_sources): Small workaround for
3756         weird bug in some versions of Automake at least on Windows.
3757
3758 2006-04-21  Alexander Larsson  <alexl@redhat.com>
3759
3760         Merge the gtk-printing branch.
3761         For more detailed ChangeLog entries, see the ChangeLog.gtk-printing.
3762         
3763         * .cvsignore:
3764         * Makefile.am:
3765         * configure.in:
3766         * docs/tools/widgets.c:
3767         * gtk+-unix-print-2.0.pc.in:
3768         * gtk/Makefile.am:
3769         * gtk/gen-paper-names.c:
3770         * gtk/gtk.h:
3771         * gtk/gtk.symbols:
3772         * gtk/gtkenums.h:
3773         * gtk/gtkiconfactory.c:
3774         * gtk/gtkmarshalers.list:
3775         * gtk/gtkpagesetup.[ch]:
3776         * gtk/gtkpagesetupunixdialog.[ch]:
3777         * gtk/gtkpapersize.[ch]:
3778         * gtk/gtkprint-win32.[ch]:
3779         * gtk/gtkprintbackend.[ch]:
3780         * gtk/gtkprintcontext.[ch]:
3781         * gtk/gtkprinter-private.h:
3782         * gtk/gtkprinter.[ch]:
3783         * gtk/gtkprinteroption.[ch]:
3784         * gtk/gtkprinteroptionset.[ch]:
3785         * gtk/gtkprinteroptionwidget.[ch]:
3786         * gtk/gtkprintjob.[ch]:
3787         * gtk/gtkprintoperation-private.h:
3788         * gtk/gtkprintoperation-unix.c:
3789         * gtk/gtkprintoperation-win32.c:
3790         * gtk/gtkprintoperation.[ch]:
3791         * gtk/gtkprintsettings.[ch]:
3792         * gtk/gtkprintunixdialog.[ch]:
3793         * gtk/paper_names.c:
3794         * gtk/paper_names_offsets.c:
3795         Platform independent printing API and implementations
3796         for unix and windows.
3797
3798         * gtk/gtkstock.h:
3799         * gtk/stock-icons/24/gtk-orientation-landscape.png:
3800         * gtk/stock-icons/24/gtk-orientation-portrait.png:
3801         * gtk/stock-icons/24/gtk-orientation-reverse-landscape.png:
3802         Add stock icons for page orientation.
3803         
3804         * modules/Makefile.am:
3805         * modules/printbackends/Makefile.am:
3806         * modules/printbackends/cups/Makefile.am:
3807         * modules/printbackends/cups/gtkcupsutils.[ch]:
3808         * modules/printbackends/cups/gtkprintbackendcups.[ch]:
3809         * modules/printbackends/cups/gtkprintercups.[ch]:
3810
3811         Cups printing backend for unix.
3812         
3813         * modules/printbackends/lpr/Makefile.am:
3814         * modules/printbackends/lpr/gtkprintbackendlpr.[ch]:
3815         lpr printing backend for unix.
3816         
3817         * modules/printbackends/pdf/Makefile.am:
3818         * modules/printbackends/pdf/gtkprintbackendpdf.[ch]:
3819         print-to-pdf printing backend for unix.
3820         
3821         * tests/.cvsignore:
3822         * tests/Makefile.am:
3823         * tests/print-editor.c:
3824         Test application for printing.
3825
3826         * gdk/gdk.symbols:
3827         * gdk/win32/gdkevents-win32.c:
3828         * gdk/win32/gdkwin32.h:
3829         Add gdk_win32_set_modal_dialog_libgtk_only so that we can pump the
3830         mainloop while displaying a win32 common dialog.
3831
3832         * gdk/directfb/Makefile.am:
3833         Whitespace cleanup.
3834         
3835 2006-04-20  Paolo Borelli  <pborelli@katamail.com>
3836
3837         * gtk/gtkcombobox.c: plug small leak (#339132)
3838         * tests/testcombo.c: ditto
3839
3840 2006-04-19  Michael Emmel  <mike.emmel@gmail.com>
3841
3842         * gdk/directfb/gdkdrawable-directfb.c: fixed off by one error in
3843         clip patch from (#330824)
3844
3845 2006-04-19  Murray Cumming  <murrayc@murrayc.com>
3846
3847         * gtk/gtkfilechooserbutton.c: _GtkFileChooserButtonPrivate:
3848         Added has_title flag so we can remember whether a title has 
3849         been set.
3850         (gtk_file_chooser_button_constructor): If no title has been
3851         set then set it to the default title. This means that the 
3852         default title will be used if the dialog was instantiated with 
3853         g_object_new(), without using the gtk_file_chooser_button_new() 
3854         convenience function. This helps language bindings.
3855         (gtk_file_chooser_button_set_property): Set has_title when 
3856         setting the title.
3857
3858 2006-04-19  Tor Lillqvist  <tml@novell.com>
3859
3860         * gdk/win32/gdkkeys-win32.c (handle_special): Map VK_NUMPAD[0-9]
3861         to GDK_KP_[0-9]. (#337562)
3862
3863 2006-04-18  Matthias Clasen  <mclasen@redhat.com>
3864
3865         * gtk/gtkrc.c: Allocate pixmap_path dynamically, rather than
3866         using a fixed array of size 128.
3867
3868         * gtk/gtkiconcache.c: Apply a patch by Paolo Borelli to factor
3869         out a strip_suffix() function and save some memory.  (#338307)
3870
3871 2006-04-18  Carlos Garnacho  <carlosg@gnome.org>
3872
3873         * gtk/gtknotebook.c (gtk_notebook_pages_allocate): removed wrong
3874         condition check that caused tab labels not to be drawn under certain
3875         circumstances. Bug #338734.
3876
3877 2006-04-17  Kjartan Maraas  <kmaraas@gnome.org>
3878
3879         * configure.in: Remove obsolete entry for no_NO
3880         * po-properties/no.po: And the translation
3881         * po/no.po: And the translation.
3882
3883 2006-04-17  Matthias Clasen  <mclasen@redhat.com>
3884
3885         * demos/gtk-demo/colorsel.c (expose_event_callback): Small formatting
3886         fix.
3887
3888 2006-04-17  Christian Persch  <chpe@cvs.gnome.org>
3889
3890         * gtk/gtkdnd.c: (gtk_drag_dest_set), (gtk_drag_dest_set_proxy): Fix
3891         UMR in gtk_drag_dest_motion. Bug #338725.
3892
3893 2006-04-17  Matthias Clasen  <mclasen@redhat.com>
3894
3895         * gtk/gtksettings.c (gtk_settings_class_init): 
3896         * gtk/gtkentry.c (gtk_entry_class_init): Fix typos
3897         in property blurbs.  (#338772, Clytie Siddall)
3898
3899 2006-04-16  Richard Hult  <richard@imendio.com>
3900
3901         * gdk/quartz/gdkdrawable-quartz.c: (gdk_quartz_draw_drawable): Add check 
3902         for source being a window.
3903
3904         * gdk/quartz/gdkwindow-quartz.c: (_gdk_windowing_window_get_pointer):
3905         Don't assert on window not being the root window.
3906
3907 2006-04-16  Richard Hult  <richard@imendio.com>
3908
3909         * gdk/quartz/gdkdrawable-quartz.c: Remove leading cairo/ in include.
3910
3911 2006-04-16  Matthias Clasen <mclasen@redhat.com>
3912
3913         * gdk/x11/gdkwindow-x11.c (set_initial_hints ): Avoid a
3914         possible array overrun.  (Coverity)
3915
3916         * gtk/gtkcalendar.c (gtk_calendar_key_press): Avoid a
3917         possible array overrun.  (Coverity)
3918
3919         * gtk/gtktextbuffer.c (_gtk_text_buffer_remove_all_tags):
3920         Avoid a NULL dereference.  (Coverity)
3921
3922 2006-04-15  Matthias Clasen <mclasen@redhat.com>
3923
3924         * gtk/gtkrecentmanager.c: Make filename_warning() static,
3925         and use caseless matching when looking for file:/.  
3926         (#336772, Morten Welinder)
3927
3928 2006-04-13  Anders Carlsson  <andersca@imendio.com>
3929
3930         * gdk/quartz/gdkevents-quartz.c:
3931         (synthesize_enter_event):
3932         (synthesize_leave_event):
3933         (synthesize_crossing_events):
3934         Take grabs into account.
3935
3936         (find_window_for_event):
3937         Only return grabbed window when owner_events is FALSE.
3938
3939 2006-04-13  Matthias Clasen  <mclasen@redhat.com>
3940
3941         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Reorganize slightly
3942         to avoid a possible NULL dereference.  (Coverity)
3943
3944 2006-04-12  Matthias Clasen  <mclasen@redhat.com>
3945
3946         * gtk/gtktreeview.c (gtk_tree_view_get_arrow_xrange): Don't
3947         allow passing NULL for x1 or x2, adjust callers.
3948
3949         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_get_neighbor_sizes): 
3950         Reorganize to avoid a possible NULL pointer dereference.  (Coverity)
3951
3952         * gtk/gtknotebook.c (gtk_notebook_page_allocate): Reorganize
3953         to avoid a possible NULL dereference.  (Coverity)
3954
3955         * gdk/x11/gdkimage-x11.c (gdk_image_new_bitmap): Handle
3956         closed displays correctly.  (Coverity)
3957
3958         * contrib/gdk-pixbuf-xlib/Makefile.am:
3959         * modules/engines/pixbuf/Makefile.am
3960         * gdk-pixbuf/Makefile.am: Build fixes for Cygwin.  (#338262)
3961
3962         * gdk/x11/gdkselection-x11.c (make_list): Make this work
3963         for list == NULL.  (Coverity)
3964
3965         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_entries_for_keycode): 
3966         Rearrange the code a bit.
3967
3968         * gtk/gtktextlayout.c (gtk_text_layout_validate_yrange): 
3969         Handle _gtk_text_line_get_data() returning NULL in all
3970         cases.  (Coverity)
3971
3972         * gtk/gtkuimanager.c: Make find_menu_position and
3973         find_toolbar_position void.  (#338100)
3974
3975 2006-04-12  Anders Carlsson  <andersca@imendio.com>
3976
3977         * gdk/quartz/gdkkeys-quartz.c:
3978         Handle page up and page down.
3979
3980 2006-04-12  Anders Carlsson  <andersca@imendio.com>
3981
3982         * gdk/quartz/gdkdrawable-quartz.c:
3983         (_gdk_quartz_drawable_release_context):
3984         Don't flush if we're inside a begin_paint/end_paint pair.
3985         
3986         * gdk/quartz/gdkwindow-quartz.c:
3987         (gdk_window_impl_quartz_end_paint):
3988         Free clip region here.
3989
3990 2006-04-12  Matthias Clasen  <mclasen@redhat.com>
3991
3992         * gtk/gtkuimanager.c (start_element_handler): Don't pass
3993         a negative value as string length to get_child_node().  (Coverity)
3994
3995         * gtk/gtkicontheme.c (insert_theme): Handle dirs == NULL
3996         gracefully.  (Coverity)
3997
3998         * gtk/gtknotebook.c (gtk_notebook_remove): Silently do nothing
3999         if the widget is not a child.  (Coverity)
4000
4001 2006-04-11  Matthias Clasen  <mclasen@redhat.com>
4002
4003         * gdk/x11/gdkkeys-x11.c (get_xkb): Return early in error
4004         cases.  (Coverity)
4005
4006         * gtk/gtktextview.c (selection_motion_event_handler): Remove
4007         some unused variables.
4008
4009         * gtk/gtktreeview.c ((gtk_tree_view_search_position_func): Apply
4010         a patch from David Trowbridge to improve the positioning of the
4011         search popup.  (#338047)
4012
4013 2006-04-11  Emmanuele Bassi  <ebassi@cvs.gnome.org>
4014
4015         * gtk/gtkrecentmanager.c (gtk_recent_manager_init)
4016         (gtk_recent_manager_new): Remove the unneeded setting of the
4017         storage file inside the constructor. (Murray Cumming)
4018         (build_recent_items_list): Reset the dirty bit when done rebuilding
4019         the list from the storage file.
4020
4021 2006-04-11  Matthias Clasen  <mclasen@redhat.com>
4022
4023         * gtk/gtkscale.c (gtk_scale_get_layout_offsets): Silence
4024         compiler warnings.
4025
4026         * gtk/gtkinputdialog.c (gtk_input_dialog_set_mapping_mode): Don't
4027         dereference info before checking it for NULL.  (Coverity)
4028
4029 2006-04-11  Anders Carlsson  <andersca@mac.imendio.com>
4030
4031         * gdk/quartz/GdkQuartzView.c:
4032         (-[GdkQuartzView drawRect:]):
4033         * gdk/quartz/gdkdrawable-quartz.c:
4034         (gdk_quartz_ref_cairo_surface):
4035         (_gdk_quartz_drawable_get_context):
4036         (_gdk_quartz_drawable_release_context):
4037         * gdk/quartz/gdkwindow-quartz.c:
4038         (gdk_window_impl_quartz_finalize):
4039         (gdk_window_impl_quartz_class_init):
4040         (gdk_window_impl_quartz_begin_paint_region):
4041         (gdk_window_impl_quartz_end_paint):
4042         (gdk_window_impl_quartz_invalidate_maybe_recurse):
4043         (gdk_window_impl_quartz_process_updates):
4044         (gdk_window_impl_quartz_paintable_init):
4045         (_gdk_window_impl_quartz_get_type):
4046         * gdk/quartz/gdkwindow-quartz.h:
4047         Have GdkWindowImplQuartz implement GdkPaintable.
4048
4049 2006-04-10  Michael Natterer  <mitch@imendio.com>
4050
4051         * gtk/gtktextbufferrichtext.c (gtk_text_buffer_deserialize):
4052         pasted rich text should not be affected by tags that are active at
4053         the insertion point. Therefore, remove and remember all active
4054         tags, and re-apply them left and right of the inserted text after
4055         pasting. Fixes bug #337653.
4056
4057 2006-04-11  Anders Carlsson  <andersca@imendio.com>
4058
4059         * gdk/gdkinternals.h:
4060         * gdk/gdkwindow.c:
4061         (_gdk_paintable_get_type):
4062         (gdk_window_begin_paint_region):
4063         (gdk_window_end_paint):
4064         (gdk_window_process_updates):
4065         (gdk_window_invalidate_maybe_recurse):
4066         Add new GdkPaintable interface which implementation objects can 
4067         implement in order to override gdk painting functions.
4068
4069 2006-04-10 Vladimer Sichinava  <vlsichinava@gmail.com>
4070
4071         * configure.in: Added "ka" (Georgian) to ALL_LINGUAS
4072
4073 2006-04-07  Hans Breuer  <hans@breuer.org>
4074
4075         * gtk/makefile.msc.in tests/makefile.msc : updated
4076
4077 2006-04-06  Tor Lillqvist  <tml@novell.com>
4078
4079         Correct the appearance of non-square icons and cursors: pad them
4080         to square so that Windows won't stretch them.
4081
4082         * gdk/win32/gdkcursor-win32.c (create_alpha_bitmap)
4083         (create_color_bitmap): Always create square bitmaps, take only
4084         side length as argument.
4085         (pixbuf_to_hbitmaps_alpha_winxp, pixbuf_to_hbitmaps_normal):
4086         Corresponding changes.
4087
4088 2006-04-05  Matthias Clasen  <mclasen@redhat.com>
4089
4090         * gtk/gtktextview.c (text_window_realize): Lower the window, to
4091         prevent late-constructed text windows from covering child 
4092         widgets.  (#336796, Yevgen Muntyan)
4093
4094         * gtk/gtkmain.c (gtk_grab_add, gtk_grab_remove, gtk_grab_notify) 
4095         (gtk_grab_notify_foreach): Rework the code which emits ::grab-notify
4096         signals to ensure that we emit enough signals. Also optimize the
4097         code to not do unnecessary tree walking.
4098
4099         * gtk/gtkwidget.c (gtk_widget_class_init): Document ::grab-notify.
4100
4101 2006-04-05  Paolo Borelli  <pborelli@katamail.com>
4102
4103         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle the case of \r
4104         and \n split across lines. Bug #337022.
4105         * tests/testtextbuffer.c: add unit test.
4106
4107 Tue Apr  4 12:25:36 2006  Søren Sandmann  <sandmann@redhat.com>
4108
4109         * gdk/x11/gdkimage-x11.c (gdk_image_class_init): Add "_private" to
4110         make it build.
4111
4112 2006-04-04  Matthias Clasen  <mclasen@redhat.com>
4113
4114         * gdk/gdkdisplay.c: 
4115         * gdk/gdkdisplaymanager.c:
4116         * gdk/gdkdraw.c:
4117         * gdk/gdkkeys.c:
4118         * gdk/gdkpixmap.c:
4119         * gdk/gdkscreen.c:
4120         * gdk/gdkwindow.c:
4121         * gdk/x11/gdkcolor-x11.c:
4122         * gdk/x11/gdkdisplay-x11.c:
4123         * gdk/x11/gdkdnd-x11.c:
4124         * gdk/x11/gdkdrawable-x11.c:
4125         * gdk/x11/gdkgc-x11.c:
4126         * gdk/x11/gdkimage-x11.c:
4127         * gdk/x11/gdkinput.c:
4128         * gdk/x11/gdkpixmap-x11.c:
4129         * gdk/x11/gdkscreen-x11.c:
4130         * gdk/x11/gdkwindow-x11.c: Use G_DEFINE_TYPE.
4131
4132         * gdk/x11/gdkcolor-x11.c: 
4133         * gdk/x11/gdkdnd-x11.c:
4134         * gdk/x11/gdkimage-x11.c: Use instance private data.
4135
4136 2006-04-03  Matthias Clasen  <mclasen@redhat.com>
4137
4138         * gdk/gdkrgb.c: Get rid of a duplicate copy of the visual names.
4139
4140         * gtk/gtkmain.c: Make gtk_args const.
4141
4142         * gtk/gtkicontheme.c (pixbuf_supports_svg): Save one static.
4143
4144         * gtk/gtkrecentchooser.c (gtk_recent_chooser_error_quark):
4145         * gtk/gtkrecentmanager.c (gtk_recent_manager_error_quark):
4146         * gtk/gtkfilechooser.c (gtk_file_chooser_error_quark):
4147         * gtk/gtkfilesystem.c (gtk_file_system_error_quark):
4148         * gtk/gtkicontheme.c (gtk_icon_theme_error_quark): No point
4149         in making the error path fast by caching quarks. 
4150
4151         * gtk/gtkfilesel.c (no_stat_dirs): Avoid relocation.
4152
4153         * gdk/gdk.c: Here too.
4154
4155         * gdk/gdkinternals.h: 
4156         * gdk/x11/gdkmain-x11.c: 
4157         * gdk/win32/gdkmain-win32.c: 
4158         * gdk/directfb/gdkdisplay-directfb.c: 
4159         * gdk/quartz/gdkmain-quartz.c: Make _gdk_windowing_args const.
4160
4161         * gdk/win32/gdkpixmap-win32.c: Include gdkscreen.h  (#337032,
4162          Kazuki IWAMOTO)
4163
4164         * gtk/gtkprogressbar.c (gtk_progress_bar_set_text): Mention
4165         that %NULL is allowed.  (#336937, Christian Neumair)
4166
4167         * gtk/gtkmain.c: Get rid of an unnecessary static variable.
4168
4169         * gtk/gtktextlayout.c: Fix a warning.
4170         
4171         * gtk/gtktextsegment.h: 
4172         * gtk/gtktextsegment.c: 
4173         * gtk/gtktextchild.c:
4174         * gtk/gtktextbtree.c:
4175         * gtk/gtktextmark.c: 
4176         * gtk/gtktexttypes.h: Make the segment class pointers const.
4177
4178         * gtk/gtktextbufferserialize.c: Make parser struct const.
4179         
4180         * gtk/gtkuimanager.c: Make parser struct const.
4181
4182         * gtk/gtklinkbutton.c: Make the default colors const.
4183
4184         * gtk/gtkuimanager.c: Avoid relocations. 
4185
4186         * gtk/gtkxembed.c (_gtk_xembed_message_name): Reduce size of static
4187         buffer.
4188
4189         * gtk/gtktext.c (gtk_text_key_press): Avoid relocations.
4190
4191         * gtk/gtkrc.c (gtk_rc_add_initial_default_files) 
4192         (gtk_rc_add_default_file): Allocate the gtk_rc_default_files array
4193         dynamically.
4194
4195 2006-04-02  Matthias Clasen  <mclasen@redhat.com>
4196
4197         * gtk/gtkrc.c: Avoid relocations for the array of symbol names. 
4198
4199         * gtk/gtkruler.c: Remove unused strings from the ruler_metrics 
4200         structs, to avoid relocations.  (#336917, Stephane Chauveau)
4201
4202 2006-04-02  Emmanuele Bassi  <ebassi@cvs.gnome.org>
4203
4204         * gtk/gtkrecentmanager.c (gtk_recent_manager_set_filename): Build
4205         the items list after setting the storage file.
4206
4207         * gtk/gtkrecentmanager.c (display_closed): Use the right string
4208         for unsetting the default manager object from the screen.       
4209
4210 2006-04-01  Behdad Esfahbod  <behdad@gnome.org>
4211
4212         * gtk/gtkfilesel.c (gtk_file_selection_get_filename): Oops. (#336784)
4213
4214 2006-04-01  Behdad Esfahbod  <behdad@gnome.org>
4215
4216         * gtk/gtkfilesel.c (gtk_file_selection_get_filename): Use a GString
4217         instead of static buffer to reduce .bss by 8kb. (#336784)
4218
4219 2006-04-01  Dom Lachowicz <cinamod@hotmail.com>
4220
4221         * modules/engines/ms-windows/msw_style.c (draw_hline): Emulate WinXP's
4222         drawing of menu separators
4223         
4224 2006-03-31  Behdad Esfahbod  <behdad@gnome.org>
4225
4226         * gtk/gtkrecentmanager.c: Convert filenames to UTF-8 before printing
4227         them out in warning messages. (#336770, Morten Welinder)
4228
4229 2006-03-31  Behdad Esfahbod  <behdad@gnome.org>
4230
4231         * gtk/gtkrecentmanager.c (gtk_recent_info_last_application): Update
4232         last_stamp inside the look. (#336771, Morten Welinder)
4233
4234 2006-03-31  Behdad Esfahbod  <behdad@gnome.org>
4235
4236         * gtk/gtkrecentchoosermenu.c (gtk_recent_chooser_menu_get_property):
4237         Add missing break. (#336769, Morten Welinder)
4238
4239 2006-03-31  Behdad Esfahbod  <behdad@gnome.org>
4240
4241         * gtk/gtkfilesystem.c (gtk_file_system_get_bookmark_label):
4242         * gtk/gtklinkbutton.c (gtk_link_button_new_with_label): Return NULL
4243         instead of FALSE in g_return_val_if_fail in a pointer-returning
4244         function. (#336764, Morten Welinder)
4245
4246 2006-04-01  Gora Mohanty  <gmohanty@cvs.gnome.org>
4247
4248         * configure.in: Added 'or' (Oriya) to ALL_LINGUAS.
4249
4250 2006-03-31  Matthias Clasen  <mclasen@redhat.com>
4251
4252         * gtk/gtkrecentmanager.c (gtk_recent_info_get_age): Don't
4253         assert that the age is positive.  (#336773, Morten Welinder)
4254
4255 2006-03-31  Matthias Clasen  <mclasen@redhat.com>
4256
4257         * gtk/gtkicontheme.c (load_icon_data): Don't leak the keyfile 
4258         parser in the error case. 
4259         
4260         * gtk/gtkicontheme.c (load_icon_data, free_unthemed_icon) 
4261         (icon_data_free, load_themes):
4262         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon_data): Use the slice
4263         allocator for GtkIconData and UnthemedIcon structs.
4264
4265 2006-03-30  Behdad Esfahbod  <behdad@gnome.org>
4266
4267         * gtk/gtkcalendar.c: Fix translation comments for localizable
4268         digit formats. (fixes bug #336650)
4269
4270 2006-03-30  Matthias Clasen  <mclasen@redhat.com>
4271
4272         * gtk/gtkrecentmanager.h (struct _GtkRecentData): Fix the doc
4273         comment format.
4274
4275         * gtk/gtkrecentmanager.c (gtk_recent_manager_has_item) 
4276         (gtk_recent_manager_purge_items, gtk_recent_manager_lookup_item) 
4277         (gtk_recent_manager_get_limit, gtk_recent_manager_add_full) 
4278         (gtk_recent_manager_get_items, gtk_recent_manager_remove_item): 
4279
4280         * gtk/gtkrecentfilter.c (gtk_recent_filter_add_age): 
4281         * gtk/gtkrecentchooser.c (gtk_recent_chooser_set_show_numbers) 
4282         (gtk_recent_chooser_set_sort_func): 
4283         * gtk/gtknotebook.h (gtk_notebook_set_tab_detachable): Sync
4284         parameter names between .c and .h files to help gtk-doc.
4285
4286         * gdk/gdkregion-generic.c (gdk_region_get_clipbox): Reword
4287         docs to help gtk-doc.
4288
4289         * docs/tools/widgets.c (get_all_widgets): Add 
4290         GtkRecentChooserDialog.
4291
4292         * gtk/gtkdnd.c (gtk_drag_get_icon): Make sure to get an
4293         icon window when constructing the fallback_icon. This
4294         fixes a crash when dragging icons between screens in
4295         nautilus.  (#325751, Hylke van der Schaaf)
4296
4297 2006-03-30  Michael Emmel  <mike.emmel@gmail.com>
4298
4299         * gdk/directfb/gdkpixmap-directfb.c implement
4300             (gdk_pixmap_foreign_new_for_screen)
4301
4302 2006-03-30  Emmanuele Bassi  <ebassi@cvs.gnome.org>
4303
4304         Add documentation for the GtkLinkButton (#336592)
4305
4306         * docs/reference/tmpl/gtklinkbutton.sgml: Add description
4307         of the GtkLinkButton.
4308
4309         * docs/reference/gtk/migrating-GtkLinkButton.sgml: Guidelines
4310         for migrating code from GnomeHRef to the GtkLinkButton.
4311
4312         * docs/reference/gtk/gtk-docs.sgml:
4313         * docs/reference/gtk/Makefile.am: Build glue for the porting
4314         guide.
4315
4316 2006-03-29  Matthias Clasen <mclasen@redhat.com>
4317
4318         * gdk/gdk.symbols:
4319         * gdk/gdkpixmap.h:
4320         * gdk/win32/gdkpixmap-win32.c:
4321         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new_for_screen):
4322         New function to allow wrapping a native pixmap without
4323         a server roundtrip.  (#334954, David Baron) 
4324
4325         * gtk/gtk.symbols:
4326         * gtk/gtkrecent*.c: Fix some symbol aliasing glitches.
4327
4328 2006-03-29  Emmanuele Bassi  <ebassi@cvs.gnome.org>
4329
4330         * gtk/gtkrecentchoosermenu.c: Make gtkalias.h the last included file.
4331
4332 2006-03-29  Emmanuele Bassi  <ebassi@cvs.gnome.org>
4333
4334         * gtk/gtk.symbols: Fix a typo that broke aliasing rules.
4335
4336 2006-03-29  Richard Hult  <richard@imendio.com>
4337
4338         * gdk/quartz/gdkproperty-quartz.c: Add missing CLIPBOARD atom.
4339
4340 2006-03-29  Emmanuele Bassi  <ebassi@cvs.gnome.org>
4341
4342         * docs/reference/gtk/migrating-GtkRecentChooser.sgml: Add a migration
4343         guide for porting to the new GtkRecent stuff from the old EggRecent
4344         code.
4345
4346         * docs/reference/gtk/tmpl/gtkrecentchooser.sgml:
4347         * docs/reference/gtk/tmpl/gtkrecentchooserdialog.sgml:
4348         * docs/reference/gtk/tmpl/gtkrecentchoosermenu.sgml:
4349         * docs/reference/gtk/tmpl/gtkrecentchooserwidget.sgml:
4350         * docs/reference/gtk/tmpl/gtkrecentfilter.sgml:
4351         * docs/reference/gtk/tmpl/gtkrecentmanager.sgml: Add template files
4352         for the reference guide.
4353
4354         * docs/reference/gtk/gtk-docs.sgml:
4355         * docs/reference/gtk/gtk-sections.txt:
4356         * docs/reference/gtk/Makefile.am: Build glue for add GtkRecent to
4357         the reference guide.
4358
4359 2006-03-29  Emmanuele Bassi  <ebassi@cvs.gnome.org>
4360
4361         * tests/Makefile.am:
4362         * tests/testrecentchooser.c: Add a test suite for GtkRecentChooser.
4363
4364 2006-03-29  Emmanuele Bassi  <ebassi@cvs.gnome.org>
4365
4366         Import GtkRecent* from libegg.
4367
4368         * gtk/gtkrecentmanager.[ch]: Add GtkRecentManager, an object
4369         for managing a list of recently used resources.
4370
4371         * gtk/gtkrecentchooser.[ch]:
4372         * gtk/gtkrecentchooserdefault.[ch]:
4373         * gtk/gtkrecentchooserdialog.[ch]:
4374         * gtk/gtkrecentchoosermenu.[ch]:
4375         * gtk/gtkrecentchooserprivate.h:
4376         * gtk/gtkrecentchooserutils.[ch]:
4377         * gtk/gtkrecentchooserwidget.[ch]: Add GtkRecentChooser, a
4378         GTypeInterface for widgets implementing viewers for recently
4379         used resources.
4380
4381         * gtk/gtkrecentfilter.[ch]: GtkRecentFilter, a filter object
4382         for GtkRecentChooser implementations.
4383
4384         * gtk/gtk.h:
4385         * gtk/gtk.symbols:
4386         * gtk/Makefile.am: Build glue for GtkRecent*.
4387
4388 2006-03-29  Matthias Clasen  <mclasen@redhat.com>
4389
4390         * gtk/gtknotebook.c (gtk_notebook_real_insert_page): Emit
4391         page-added before switch-page.  (#335691, Christian Persch)
4392
4393 2006-03-29  Matthias Clasen  <mclasen@redhat.com>
4394
4395         * gtk/gtkfilechooserdefault.c (queue_edited_idle): Handle
4396         double queuing, rather than asserting that it does not 
4397         happen.  (#330617)
4398
4399 2006-03-28  Matthias Clasen  <mclasen@redhat.com>       
4400
4401         * gtk/gtknotebook.c (gtk_notebook_set_tab_detachable): Fix
4402         docs syntax, also commit a patch from #335707 to improve
4403         notebook DND with window widgets.
4404
4405         * gtk/gtktextview.c (gtk_text_view_start_selection_drag): 
4406         (selection_motion_event_handler): Fix drag-selection after
4407         double-click.  (#323862, Benjamin Berg)
4408
4409         * gtk/gtktextview.c (get_iter_at_pointer): Factor this out
4410         into a function and use it in move_mark_to_pointer_and_scroll,
4411         drag_scan_timeout and selection_motion_event_handler.
4412         (Paolo Borelli)
4413
4414 2006-03-28  Matthias Clasen  <mclasen@redhat.com>
4415
4416         * gtk/gtktextview.c (gtk_text_view_do_popup) 
4417         (gtk_text_view_grab_notify): Move the call to 
4418         gtk_text_view_end_selection_drag() from gtk_text_view_do_popup
4419         to gtk_text_view_grab_notify, so that it works not only
4420         for the text views own popup, but also for other ways in which
4421         we might become grab-shadowed during a selection drag.
4422         (#74620, Li Yuan)
4423
4424 2006-03-28  Sven Herzberg  <herzi@gnome-de.org>
4425
4426         reviewed by: Tim Janik
4427         
4428         * gtk/gtkpixmap.c: (gtk_pixmap_set): only check for equal colormaps if
4429         the new pixmap is not NULL; fixes a warning when gtk_pixmap_set is
4430         called from gtk_pixmap_finalize (bug 336254)
4431
4432 2006-03-27  Anders Carlsson  <andersca@imendio.com>
4433
4434         * gdk/quartz/gdkevents-quartz.c:
4435         (select_thread_func):
4436         (got_fd_activity):
4437         (poll_func):
4438         (gdk_event_translate):
4439         Make the poll func work with real file descriptors.
4440         We do this by creating a thread which calls poll and then
4441         signals the main thread using a run loop source.
4442         
4443         * gtk/gtkclipboard-quartz.c:        
4444         (-[GtkClipboardOwner pasteboard:provideDataForType:]):
4445         Remove debugging output
4446
4447 2006-03-27  Matthias Clasen  <mclasen@redhat.com>
4448
4449         * gtk/gtkmnemonichash.c (_gtk_mnemonic_hash_activate): Check that 
4450         the widget is viewable.  (#336200, Bastian Nocera)
4451
4452 2006-03-27  Michael Natterer  <mitch@imendio.com>
4453
4454         * gtk/gtkmenu.c (gtk_menu_scroll_by): bail out if there is no need
4455         for scrolling (more obvious than adding additional conditions to
4456         the scroll offset calculation). Fixes bug #335912.
4457
4458 2006-03-27  Anders Carlsson  <andersca@imendio.com>
4459
4460         * gtk/Makefile.am:
4461         Add -xobjective-c to cflags.
4462         (#335956, Lllian Angel)
4463         
4464         * gtk/gtkdnd-quartz.c:
4465         (gtk_drag_dest_set_track_motion):
4466         (gtk_drag_dest_get_track_motion):
4467         Add stubs for new functions.
4468         (#335955, Lillian Angel)
4469         
4470 2006-03-27  Richard Hult  <richard@imendio.com>
4471
4472         * gdk/quartz: Add more stubs.
4473
4474 2006-03-27  Michael Natterer  <mitch@imendio.com>
4475
4476         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
4477         add missing ')'.
4478
4479 2006-03-26  Matthias Clasen  <mclasen@redhat.com>
4480
4481         * gtk/Makefile.am: Fix a srcdir != builddir build problem.
4482         (#335915, Yevgen Muntyan)
4483
4484         * gtk/gtktextbuffer.c (gtk_text_buffer_get_property):
4485         * gtk/gtksettings.c (gtk_settings_get_property):
4486         * gtk/gtkuimanager.c (gtk_ui_manager_get_property): Fix leaks.
4487
4488         * gtk/gtktexttag.c (gtk_text_tag_get_property):
4489         * gtk/gtkcellrenderertext.c (gtk_cell_render_text_get_property):
4490         Avoid an unnecessary strdup.  (#336013)
4491
4492 2006-03-24  Matthias Clasen  <mclasen@redhat.com>
4493
4494         * gtk/gtktextview.c (gtk_text_view_value_changed): Don't call
4495         gdk_window_invalidate_rect() on unrealized widgets.  (#335717,
4496         Nicolas Setton)
4497
4498 Fri Mar 24 14:53:20 2006  Tim Janik  <timj@imendio.com>
4499
4500         * gtk/gtktreemodel.h: 
4501         * gtk/gtktextbtree.h: back out G_GNUC_WARN_UNUSED_RESULT on iterator
4502         functions which turned out to cause too much trouble.
4503
4504 2006-03-23  Matthias Clasen  <mclasen@redhat.com>
4505
4506         * AUTHORS: small update
4507
4508 2006-03-23  Matthias Clasen  <mclasen@redhat.com>
4509
4510         Support subclasses in RC files.  (#142417, Todd Berman, patch
4511         based on a patch by Benjamin Berg)
4512         
4513         * gtk/gtkrc.h: 
4514         * gtk/gtkrc.c: Support <classname> elements in widget_class paths 
4515         in rc files which match any classes derived from named class.
4516
4517         (_gtk_rc_init): Use the new syntax in the default rc string.
4518
4519         * gtk/gtkbindings.c: Support the new syntax for bindings too.
4520         
4521         * tests/testrc.c: Tests for widget_class path matching
4522
4523 2006-03-23  Carlos Garnacho  <carlosg@gnome.org>
4524
4525         * gtk/gtkdnd.c (gtk_drag_dest_motion): make sure that gdk_drag_event()
4526         is called when track_motion is TRUE to receive drag_motion and
4527         drag_leave events properly.
4528
4529 2006-03-22  Matthias Clasen  <mclasen@redhat.com>
4530
4531         * gtk/gtknotebook.c (gtk_notebook_remove): Emit the ::page-removed
4532         signal after removing the page.  (#335238, Christian Persch)
4533
4534 2006-03-22  Carlos Garnacho  <carlosg@gnome.org>
4535
4536         * gtk/gtkexpander.c: Make it to expand when hovering during DnD
4537
4538 2006-03-22  Matthias Clasen  <mclasen@redhat.com>
4539
4540         Improved DND support for GtkNotebook  (#332991, Carlos Garnacho)
4541         
4542         * gtk/gtk.symbols: 
4543         * gtk/gtkdnd.h: 
4544         * gtk/gtkdnd.c: Add a track_motion flag on GtkDragDest
4545         with getter and setter, for cases where the drag destination
4546         is interested in drag motion events independent of targets.
4547
4548         * gtk/gtksettings.c (gtk_settings_class_init): Add a setting
4549         for the timeout used when expanding during DND.
4550
4551         * gtk/gtknotebook.c: Use the track_motion flag to switch
4552         notebook tabs when hovering over tabs during DND.
4553         
4554 2006-03-22  Matthias Clasen  <mclasen@redhat.com>
4555
4556         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Use fg_gc to
4557         draw the inter-row drop highlight. Also draw the line all the 
4558         way across, and flip it in RTL mode. (#334906, Ian McDonald)
4559
4560 2006-03-22  Johan Dahlin  <jdahlin@async.com.br>
4561
4562         * tests/testtreeview.c: Add a column that demonstrates how to use
4563         the new spinbutton cellrenderer.
4564
4565 2006-03-22  Matthias Clasen  <mclasen@redhat.com>
4566
4567         * tests/prop-editor.c: 
4568         * tests/testtreeview.c: Remove pointless includes of config.h,
4569         to make it easier compilable against system GTK+.
4570
4571 2006-03-22  Michael Natterer  <mitch@imendio.com>
4572
4573         * gtk/gtkentry.c: renamed last-char-timeout to
4574         password-hint-timeout and store all its data in a struct attached
4575         as QData.
4576
4577         * gtk/gtkcellrendererspin.c: fix typo in #include.
4578
4579 2006-03-22  Carlos Garnacho  <carlosg@gnome.org>
4580
4581         * gtk/gtknotebook.c: send a GtkWidget** instead of a GtkNotebookPage*
4582         when doing tabs DnD, this allows DnD interaction with other widgets,
4583         added some docs for this too.
4584         * tests/testnotebookdnd.c: add some code to test it.
4585
4586 2006-03-22  Matthias Clasen  <mclasen@redhat.com>
4587
4588         * gtk/gtk.symbols: 
4589         * gtk/gtkcellrendererspin.h:
4590         * gtk/gtkcellrendererspin.c: Add a cell renderer which 
4591         uses a spinbutton to edit the value of a cell. (#156023,
4592         Daniel Kasak, Lorenzo Gil Sanchez, Carlos Garnacho)
4593
4594         * gtk/gtk.h: 
4595         * gtk/Makefile.am: Glue it in.
4596
4597 2006-03-21  Matthias Clasen  <mclasen@redhat.com>
4598
4599         * tests/testtreeview.c (drag_begin_cb): Test setting up
4600         drag icons for tree dnd.
4601
4602 2006-03-22  Michael Natterer  <mitch@imendio.com>
4603
4604         * gtk/gtkentry.c: applied modified patch from maemo-gtk which
4605         allows the most recently entered character in a hidden entry to be
4606         shown for a configurable period of time. Fixes bug #334560.
4607
4608 2006-03-22  Michael Natterer  <mitch@imendio.com>
4609
4610         * gtk/gtktextbuffer.h (enum GtkTextBufferTargetInfo): count down
4611         from G_MAXUINT to avoid clashes with application-added DND
4612         targets.
4613
4614         * gtk/gtktextview.c (gtk_text_view_init): set an empty
4615         GtkTargetList on the drag_dest so it is not NULL when a derived
4616         class' init() function is called.
4617
4618         (gtk_text_view_target_list_notify): copy the text buffer's paste
4619         targets into the view's destinstion target list (preserving
4620         application-added DND targets), instead of replacing the view's
4621         target list. Fixes bug #334399.
4622
4623 2006-03-21  Anders Carlsson  <andersca@imendio.com>
4624
4625         * gtk/Makefile.am:
4626         Add new files.
4627         
4628         * gtk/gtkclipboard-quartz.c: Added.
4629         * gtk/gtkdnd-quartz.c: Added.
4630         * gtk/gtkquartz.c: Added.
4631         * gtk/gtkquartz.h: Added.
4632         Add dnd and clipboard implementations.
4633
4634 2006-03-21  Michael Natterer  <mitch@imendio.com>
4635
4636         * gdk/quartz/Makefile.am: removing trailing \ fixes the build.
4637
4638 2006-03-21  Anders Carlsson  <andersca@imendio.com>
4639
4640         * gdk/quartz/gdkgeometry-quartz.c:
4641         (gdk_window_scroll):
4642         Implement gdk_window_scroll.
4643
4644 2006-03-21  Anders Carlsson  <andersca@imendio.com>
4645
4646         * gdk/quartz/GdkQuartzWindow.c:
4647         (drag_operation_to_drag_action):
4648         (drag_action_to_drag_operation):
4649         (update_context_from_dragging_info):
4650         (-[GdkQuartzWindow draggingEntered:]):
4651         (-[GdkQuartzWindow draggingEnded:]):
4652         (-[GdkQuartzWindow draggingExited:]):
4653         (-[GdkQuartzWindow draggingUpdated:]):
4654         (-[GdkQuartzWindow performDragOperation:]):
4655         (-[GdkQuartzWindow wantsPeriodicDraggingUpdates]):
4656         (-[GdkQuartzWindow draggedImage:endedAt:operation:]):
4657         * gdk/quartz/gdkdnd-quartz.c:
4658         (gdk_drag_context_finalize):
4659         (gdk_drag_context_init):
4660         (gdk_drag_context_class_init):
4661         (gdk_drag_begin):
4662         (gdk_drag_status):
4663         Add the GDK part of the DND implementation.
4664
4665         * gdk/quartz/Makefile.am:
4666         Add some missing headers.
4667         
4668         * gdk/quartz/gdkdrawable-quartz.h:
4669         * gdk/quartz/gdkprivate-quartz.h:
4670         * gdk/quartz/gdkquartz.h:
4671         * gdk/quartz/gdkwindow-quartz.c:
4672         (gdk_quartz_window_get_nsview):
4673         New function, for use by the GTK part of the DND implementation
4674
4675 2006-03-21  Anders Carlsson  <andersca@imendio.com>
4676
4677         * gdk/quartz/gdkdrawable-quartz.c:
4678         (gdk_quartz_ref_cairo_surface):
4679         (gdk_quartz_draw_rectangle):
4680         (gdk_quartz_draw_arc):
4681         (gdk_quartz_draw_polygon):
4682         (gdk_quartz_draw_drawable):
4683         (gdk_quartz_draw_segments):
4684         (gdk_quartz_draw_lines):
4685         (gdk_quartz_draw_pixbuf):
4686         (gdk_quartz_draw_image):
4687         (_gdk_quartz_drawable_get_context):
4688         * gdk/quartz/gdkdrawable-quartz.h:
4689         Offset coordinates by 0.5 pixels to get consistant results for both
4690         image contexts and screen contexts.
4691
4692 2006-03-21  Anders Carlsson  <andersca@imendio.com>
4693
4694         * gdk/quartz/GdkQuartzWindow.c 
4695         ([GdkQuartzWindow -windowDidMove:]): Synthesize GDK_CONFIGURE events
4696         when the window position changes.
4697
4698 2006-03-20  Matthias Clasen  <mclasen@redhat.com>
4699
4700         * gtk/gtkdnd.c (gtk_drag_get_cursor): Remove an unused variable.
4701
4702         * gtk/gtknotebook.c (gtk_notebook_remove_tab_label): Don't leave
4703         page->tab_label dangling.
4704         (gtk_notebook_real_remove): Use GTK_IN_DESTRUCTION to determine
4705         if we are being called during destruction of the notebook, rather
4706         than maintaining that information as a passed-in parameter.
4707         (gtk_notebook_destroy): Leave the removal of the children
4708         to the container destroy method.  (#319032, Yevgen Muntyan)
4709
4710 2006-03-20  Matthias Clasen  <mclasen@redhat.com>
4711
4712         * gtk/gtkcombobox.c (gtk_combo_box_remove): Use the existing
4713         GTK_IN_DESTRUCTION flag, rather than roll our own.
4714
4715 2006-03-20  Matthias Clasen  <mclasen@redhat.com>
4716         
4717         * gtk/gtk.symbols: 
4718         * gtk/gtkscrolledwindow.h: 
4719         * gtk/gtkscrolledwindow.c: Add a window-placement-set property
4720         and a gtk-scrolled-window-placement setting.  (#157025, Christian
4721         Neumair)
4722
4723 2006-03-20  Matthias Clasen  <mclasen@redhat.com>
4724
4725         * gtk/gtkmain.c (gtk_get_option_group): Make sure gettext
4726         is initialized before using it.  (#335129, Christian Persch)
4727
4728 2006-03-19  Matthias Clasen  <mclasen@redhat.com>
4729
4730         * MAINTAINERS: Add this, at the request of the GNOME sysadmin team.
4731
4732         * AUTHORS: Updates, typo fix
4733
4734         * gtk/gtkiconview.c (gtk_icon_view_set_cursor): Document that
4735         @cell must be one of the renderers of the icon view, warn if 
4736         it is not, and ignore @start_editing if @cell is not set.
4737         (#335001, Emmanuel Rodriguez)
4738
4739 2006-03-16  Matthias Clasen  <mclasen@redhat.com>
4740
4741         * configure.in: Add a missing comma.  (#334774, Peter Breitenlohner)
4742
4743         * gtk/gtkactiongroup.c (gtk_action_group_add_actions_full) 
4744         (gtk_action_group_add_toggle_actions_full) 
4745         (gtk_action_group_add_radio_actions_full): Check for a stock 
4746         icon, not a stock item, when deciding whether to use stock-id 
4747         or icon-name.  (#334760, Jody Goldberg)
4748
4749         * gtk/gtkimage.c (gtk_image_clear): Update the size of the image, 
4750         by swapping the implementations of gtk_image_clear and
4751         gtk_image_reset.  (#334657)
4752
4753         * README.in: Add a note about GtkNotebook signals.
4754
4755 2006-03-15  Matthias Clasen  <mclasen@redhat.com>
4756
4757         * gtk/gtkcombobox.c (gtk_combo_box_list_button_released) 
4758         (gtk_combo_box_list_key_press): Popdown the list before changing
4759         the active iter, otherwise people will be surprised by the
4760         grabs that are still in place when their ::changed handler
4761         runs. 
4762
4763 2006-03-15  Dom Lachowicz <cinamod@hotmail.com>
4764
4765         * modules/engines/ms-windows/msw_style.c: Override style->realize/
4766         style->unrealize, so that GTK+ doesn't automatically attempt to apply
4767         shading to the GC colors, causing a mismatch with the Win32 native
4768         colors. Problem found by (and suggested solution by) "Cosmic Integer"
4769
4770         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Make expander-size
4771         a bit closer to Microsoft's values (bug 325699, Brad Taylor)
4772         
4773 2006-03-14  Matthias Clasen  <mclasen@redhat.com>
4774
4775         * tests/testcellrenderertext.c: Add test cases for alignment.
4776
4777         * gtk/gtkcellrenderertext.c: Add an alignment property,
4778         and fix some cases where ellipsize_set was being used to
4779         mean "we're ellipsizing" even when ellipsize was set to NONE.  
4780         (#318761, Ross Burton)
4781
4782         * gtk/gtkimcontextsimple.c: Make return and release work again
4783         to commit a hex sequence. Additionally, make escape reset the
4784         im context when in a hex sequence.  (#334423, Behdad Esfahbod)
4785
4786 2006-03-13  Matthias Clasen  <mclasen@redhat.com>
4787
4788         Make actions work with named icons.  (#323484, Jorn Baayen)
4789         
4790         * gtk/gtkactiongroup.c: If the stock-id field of a GtkActionEntry
4791         does not contain a registered stock id, interpret it as an
4792         icon name.
4793
4794         * gtk/gtkaction.c: Add an icon-name property to actions and
4795         use it for icons if a stock-id is not specified.
4796
4797 2006-03-12  Matthias Clasen  <mclasen@redhat.com>
4798
4799         * gtk/gtkwindow.c (gtk_window_compute_configure_request): Don't
4800         for the creation of geometry info here.  (#114533)
4801
4802 2006-03-11  Tor Lillqvist  <tml@novell.com>
4803
4804         * gdk/win32/gdkdrawable-win32.c (draw_polygon): Use Polygon() for
4805         outlined polygons, too. Same idea as in draw_rectangle(): Set pen
4806         to NULL_PEN if drawing a filled polygon, set brush to HOLLOW_BRUSH
4807         if drawing a polygon outline. (#332662)
4808         (gdk_win32_draw_polygon): Corresponding simplification: no need to
4809         add an extra final copy of the starting point.
4810
4811 2006-03-11  Dom Lachowicz <cinamod@hotmail.com>
4812
4813         * modules/engines/ms-windows: Speed up the Windows theme
4814         considerably (#163724, John Ehresman)
4815         Be more careful about setting Pango font descriptions (#333372)
4816         
4817 2006-03-11  Matthias Clasen  <mclasen@redhat.com>
4818
4819         * gtk/gtkrange.c (gtk_range_key_press): Allow to cancel 
4820         a drag with ESC.  (#58389, Søren Sandmann)
4821
4822 2006-03-10  Matthias Clasen  <mclasen@redhat.com>
4823
4824         * gtk/gtkrange.c: Add a style property ::activate_slider that
4825         allows themes to draw the slider active while dragged.  (#311992,
4826         Benjamin Berg)
4827
4828         * gtk/gtkcolorsel.c (gtk_color_selection_init): Fix two labels.
4829
4830         * gtk-engine-check-abi.sh: Add a script to check that theme
4831         engines don't export any extra functions. 
4832
4833 2006-03-10  Matthias Clasen  <mclasen@redhat.com>
4834
4835         * gtk/gtkcolorsel.c (gtk_color_selection_init): Avoid a mnemonic
4836         conflict.  (#163850, Dennis Cranston)
4837
4838         * gtk/gtkaboutdialog.c (gtk_show_about_dialog): Make the behaviour
4839         of the about dialog consistent with other dialogs in gtk. If the
4840         dialog is constructed with gtk_about_dialog_new(), the creator
4841         is reponsible for handling the response by hiding or closing the
4842         dialog. gtk_show_about_dialog() handles it by hiding the dialog.
4843         (#333360, Daniel Drake)
4844
4845         * README.in: Mention this change.
4846
4847 2006-03-10  Matthias Clasen  <mclasen@redhat.com>
4848
4849         Apply a patch from Dennis Cranston to make dialogs more
4850         consistent  (#163850)
4851         
4852         * gtk/gtkcolorsel.c (make_label_spinbutton): Left-align labels.
4853         
4854         * gtk/gtkfontsel.c (gtk_font_selection_init): 
4855         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): 
4856         * gtk/gtkcolorsel.c (gtk_color_selection_init): 
4857         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
4858         * gtk/gtkinputdialog.c (gtk_input_dialog_init): Update the layout
4859         of the dialog to follow HIG recommendations. Also update labels.
4860
4861         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): HIG-compatible 
4862         spacing.
4863         (gtk_message_dialog_font_size_change): Merged into 
4864          gtk_message_dialog_style_set.
4865
4866 2006-03-10  Matthias Clasen  <mclasen@redhat.com>
4867
4868         * gtk/gtkstyle.c: Remove g_return_if_fail() checks
4869         from static functions.
4870
4871 2006-03-10  Federico Mena Quintero  <federico@novell.com>
4872
4873         Make Shift-P and Shift-N activate typeahead in GtkTreeView
4874         (i.e. they are just normal capital letters).  Fixes bug #334098.
4875
4876         * gtk/gtktreeview.c (gtk_tree_view_add_move_binding): Add an
4877         "add_shifted_binding" argument which determines whether we'll add
4878         the same binding with GDK_SHIFT_MASK.
4879         (gtk_tree_view_class_init): Use add_shifted_binding=FALSE for GDK_p
4880         and GDK_n; use TRUE for all the rest.
4881
4882 2006-03-10  Michael Natterer  <mitch@imendio.com>
4883
4884         * gtk/gtkentry.[ch]: applied refactored patch from maemo-gtk that
4885         replaces the INNER_BORDER define by an "inner-border" style
4886         property of type GtkBorder. Additionally, add an "inner-border"
4887         object property plus API which allows to override any theme
4888         border, to allow pixel-perfect positioning of entries for inline
4889         editing. Fixes bug #333922.
4890
4891         * gtk/gtk.symbols: add the new public functions.
4892
4893 2006-03-09  Matthias Clasen  <mclasen@redhat.com>
4894
4895         * gtk/gtkcombobox.c (gtk_combo_box_class_init): Replace the
4896         popup-show and popup-hide signals with a readonly popup-shown
4897         property.  (#162531, Christian Persch)
4898
4899 2006-03-09  Ross Burton  <ross@openedhand.com>
4900
4901         * gtk/gtkwidget.c:
4902         * gtk/gtkrange.c:
4903         * gtk/gtktogglebutton.c:
4904         Turn off prelighting when gtk-touchscreen-mode is enabled (#135666)
4905
4906 Thu Mar  9 14:29:43 2006  Tim Janik  <timj@gtk.org>
4907
4908         * gtk/gtkobject.c (gtk_object_init): move the floating flag from
4909         the GInitiallyUnowned bit to GTK_FLOATING. fixes tests/floatingcheck.
4910         kudos to mitch for debugging this.
4911
4912 2006-03-09  Matthias Clasen <mclasen@redhat.com>
4913
4914         * Makefile.am: Add ChangeLog.pre-2.8 to EXTRA_DIST.
4915
4916 2006-03-09  Tor Lillqvist  <tml@novell.com>
4917
4918         * gtk/gtk.symbols: No gtk_tray_icon_get_type on Win32.
4919
4920 2006-03-08  Carlos Garnacho  <carlosg@gnome.org>
4921
4922         Rename ::tab-added and ::tab-removed signals to ::page-added and
4923         ::page-removed for not conflicting with other tab reordering
4924         implementations. Fixes bug #333743.
4925
4926         Also rename ::tab-reordered to ::page-reordered, and emit it in
4927         gtk_notebook_reorder_child () to make it behave consistently with the
4928         other two signals.
4929
4930         * gtk/gtknotebook.c (gtk_notebook_class_init): rename signals.
4931         (gtk_notebook_reorder_tab)
4932         (gtk_notebook_button_release)
4933         (gtk_notebook_remove)
4934         (gtk_notebook_real_insert_page): emit respectively renamed signals
4935         (gtk_notebook_reorder_child): also emit ::page-reordered here
4936
4937         * tests/testnotebookdnd.c: use renamed signals
4938
4939 2006-03-08  Michael Natterer  <mitch@imendio.com>
4940
4941         * gdk/gdkscreen.h
4942         * gdk/x11/gdkscreen-x11.c
4943         * gdk/gdk.symbols: added gdk_screen_get_active_window() and
4944         gdk_screen_get_window_stack() (patch from maemo-gtk).
4945         Fixes bug #320881.
4946
4947         * gdk/directfb/gdkscreen-directfb.c
4948         * gdk/quartz/gdkscreen-quartz.c
4949         * gdk/win32/gdkscreen-win32.c: added the functions as stubs.
4950
4951 2006-03-08  Michael Natterer  <mitch@imendio.com>
4952
4953         * tests/prop-editor.c (unichar_changed): zero-initialize the
4954         GValue before calling g_value_init().
4955
4956 2006-03-08  Michael Natterer  <mitch@imendio.com>
4957
4958         * gtk/gtkentry.c (gtk_entry_adjust_scroll): make sure that the
4959         text_area_width is always >= 0. Fixes bug #316712 (Dan Winship).
4960
4961 2006-03-07  Federico Mena Quintero  <federico@novell.com>
4962
4963         Cancel drags when the grabs get broken.  Fixes bug #333056:
4964
4965         * gtk/gtkdnd.c (gtk_drag_selection_received): The time argument is
4966         a guint, not guint32.
4967         (gtk_drag_source_event_cb): Return gboolean, not gint.
4968         (gtk_drag_anim_timeout): Likewise.
4969         (gtk_drag_motion_cb): Likewise.
4970         (gtk_drag_key_cb): Likewise.
4971         (gtk_drag_button_release_cb): Likewise.
4972         (gtk_drag_abort_timeout): Likewise.
4973         (gtk_drag_begin_internal): Connect to "grab-broken-event" on the
4974         ipc_widget.
4975         (gtk_drag_source_info_destroy): Disconnect from the
4976         "grab-broken-event" callback.
4977         (gtk_drag_end): Likewise.
4978         (gtk_drag_grab_broken_event_cb): New callback.  We cancel the drag
4979         if the grab was broken and not regrabbed by the DnD code.
4980
4981 2006-03-07  Federico Mena Quintero  <federico@novell.com>
4982
4983         * gtk/gtkfilechooserdefault.c (shortcuts_button_press_event_cb):
4984         Hack to let the treeview's button-press-event handler run before
4985         ours.  This lets the selection be updated before we pop up a
4986         context menu.
4987
4988 Tue Mar  7 17:16:34 2006  Tim Janik  <timj@gtk.org>
4989
4990         * configure.in: depend on glib-2.10.1.
4991
4992         * gtk/gtkobject.c: fixed up messing with non-GtkObject floating flags.
4993         this requires glib-2.10.1.
4994
4995 2006-03-07  Michael Natterer  <mitch@imendio.com>
4996
4997         Add infrastructure for copy/paste and DND of rich text for
4998         GtkTextBuffer. Fixes bug #324177.
4999
5000         * gtk/gtktextbufferrichtext.[ch]: new files implementing a
5001         per-buffer registry of rich text formats.
5002
5003         * gtk/gtk.h: #include gtktextbufferrichtext.h
5004
5005         * gtk/gtktextbufferserialize.[ch]: new files implementing an
5006         internal serialization format that can handle all of a text
5007         buffer's tags and pixbufs. It's not useful for anything except
5008         tranfer between instances of GtkTextBuffer (Anders Carlsson).
5009
5010         * gtk/Makefile.am: build the new files.
5011
5012         * gtk/gtkclipboard.[ch]: added convenience APIs for rich text,
5013         just as they exist for plain text and pixbufs.
5014
5015         * gtk/gtkselection.[ch]: added rich text convenience APIs here
5016         too.  Return the target list from gtk_target_list_ref(). Register
5017         GtkTargetList as boxed type. Added
5018         gtk_target_table_new_from_list() and gtk_target_table_free(),
5019         which make converting between GtkTargetList and arrays of
5020         GtkTargetEntry considerably easier.
5021
5022         * gtk/gtktextutil.[ch]: added _gtk_text_util_create_rich_drag_icon()
5023         which creates a fancy rich text icon (Matthias Clasen).
5024
5025         * gtk/gtktextbuffer.[ch]: use all the new stuff above and
5026         implement copy and paste of rich text. Added APIs for getting the
5027         target lists used for copy and paste. Added public enum
5028         GtkTextBufferTargetInfo which contains the "info" IDs associated
5029         with the entries of the target lists.
5030
5031         * gtk/gtktextview.c: use the new rich text APIs and
5032         GtkTextBuffer's new target list API to enable DND of rich text
5033         chunks.
5034
5035         * gtk/gtk.symbols: export all the new symbols added.
5036
5037         * tests/testtext.c: added rich text testing stuff.
5038
5039 2006-03-06  Matthias Clasen  <mclasen@redhat.com>
5040
5041         * gtk/gtktextview.c (text_window_invalidate_cursors): Take
5042         cursor width into account when calculating the area to 
5043         be invalidated.  (#333377, #323401 Steve Frécinaux)
5044
5045         * gtk/gtkmain.c (post_parse_hook): Set error when returning
5046         FALSE.  (#333268, Paolo Maggi, Christian Persch)
5047         
5048         * gtk/gtkpixmap.c (gtk_pixmap_set): Check that the pixmap
5049         has the right depth.  (#333363, Ed Catmur)
5050
5051 2006-03-05  Matthias Clasen  <mclasen@redhat.com>
5052
5053         * gtk/gtkiconview.c (adjust_wrap_width): Apply some
5054         arbitrary lower limit for the guessed wrap width. (#332466,
5055         Donald Straney)
5056
5057 2006-03-05  Matthias Clasen  <mclasen@redhat.com>
5058
5059         Fix handling of image-only buttons.  (#332985, Kalle 
5060         Vahlmann, #333555)
5061         
5062         * gtk/gtkbutton.c (gtk_button_construct_child): Don't
5063         return early if there an image to show.
5064         (show_image): Always return TRUE if there is no text.
5065
5066 2006-03-04  Matthias Clasen  <mclasen@redhat.com>
5067
5068         * gdk/x11/gdkinput-x11 (gdk_input_translate_coordinates):
5069         Adjust the handling of min values for the x and y axes of 
5070         extended input devices  (#324562, #142536, Denis Auroux and 
5071         Robert Ã–gren)
5072
5073         * gtk/gtkexpander.c (gtk_expander_paint_focus): Position
5074         the focus rectangle correctly in RTL mode.  (#333291,
5075         Benjamin Berg)
5076
5077 2006-03-03  Tor Lillqvist  <tml@novell.com>
5078
5079         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_commit_char)
5080         (gtk_im_context_simple_reset): Avoid emitting superfluous
5081         preedit_changed signals. Thanks to Matthias. (#319407)
5082
5083 2006-03-03  Michael Natterer  <mitch@imendio.com>
5084
5085         Applied modified patch from maemo-gtk which makes separators more
5086         themeable. Fixes bug #332022.
5087
5088         * gtk/gtkwidget.c: added style properties "wide-separators",
5089         "separator-width" and "separator-height".
5090
5091         * gtk/gtkhseparator.c
5092         * gtk/gtkvseparator.c
5093         * gtk/gtkmenuitem.c
5094         * gtk/gtktoolbar.c: honor the new settings and paint separators
5095         using gtk_paint_box() if wide-separators is true.
5096
5097 2006-03-02  Dom Lachowicz <cinamod@hotmail.com>
5098
5099         * modules/engines/ms-windows/msw_style.c: Fix combobox theming
5100         regression noted in bug 321301
5101         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Ditto
5102         
5103 2006-03-02  Matthias Clasen  <mclasen@redhat.com>
5104
5105         * gtk/gtkiconview.c (gtk_icon_view_layout) 
5106         (gtk_icon_view_row_inserted, gtk_icon_view_scroll_to_path): 
5107         Make scroll_to_path work for newly inserted items, by delaying
5108         the scroll until layout is done.  (#332923, Cory Dodt)
5109
5110         * gtk/gtkcolorbutton.c (render): Use GTK_WIDGET_IS_SENSITIVE,
5111         not GTK_WIDGET_SENSITIVE.  (#333133, Christian Persch)
5112
5113 2006-03-02  Ross Burton  <ross@openedhand.com>
5114
5115         * gtk/gtktooltips.c:
5116         Disable tooltips if gtk-touchscreen-mode is activated (#315112).
5117
5118 2006-03-01  Kristian Rietveld  <kris@imendio.com>
5119
5120         * gtk/gtktreeselection.c (row_is_selectable): rename to
5121         _gtk_tree_selection_row_is_selectable and export internally,
5122         (gtk_tree_selection_real_select_node): changed so it is always
5123         possible to unselect insensitive nodes, changed the logic a bit to
5124         be more clear.
5125
5126         * gtk/gtktreeprivate.h: add _gtk_tree_selection_row_is_selectable.
5127
5128         * gtk/gtktreeview.c (gtk_tree_view_row_changed): Unselect a row if
5129         it became insensitive.
5130
5131 2006-02-27  Federico Mena Quintero  <federico@novell.com>
5132
5133         * gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Check that
5134         the fontsel has a screen assigned before doing anything.  This
5135         will at least warn the caller of what is wrong, since we only
5136         populate the family_list until we get a screen.  Also, put the
5137         reference docs here.  Fixes bug #332756.
5138         (gtk_font_selection_dialog_get_font_name): Document this here.
5139         (gtk_font_selection_get_font_name): Document this here; mention
5140         that the font names get normalized, so the result of this function
5141         may not be the same as what you set with
5142         gtk_font_selection_set_font_name().
5143
5144 2006-02-27  Matthias Clasen  <mclasen@redhat.com>
5145
5146         * gtk/gtk.symbols:
5147         * gtk/gtktrayicon-x11.c: Fix symbol lists for make check.
5148
5149 2006-02-27  Michael Natterer  <mitch@imendio.com>
5150
5151         * gdk/x11/gdksettings.c: map "gtk-touchscreen-mode" to the
5152         "Gtk/TouchscreenMode" XSettings property, remove trailing
5153         whitespace.
5154
5155         * gdk/x11/checksettings.c: #include <string.h> and sprinkled some
5156         newlines.
5157
5158 Mon Feb 27 14:52:50 2006  Tim Janik  <timj@imendio.com>
5159
5160         * gdkevents-x11.c:
5161         * gdksettings.c: moved and renamed the gdk_settings_names and 
5162         gdk_settings_map.
5163
5164         * gdk/x11/checksettings.c: test program for the gdk_settings_map array.
5165
5166         * gdk/x11/Makefile.am: run checksettings as part of make check.
5167
5168 2006-02-27  Matthias Clasen  <mclasen@redhat.com>
5169
5170         * gtk/gtkdnd.c (gtk_drag_get_cursor): Comment out some unused
5171         code, and fix the reference point of composited drag cursors.
5172         (#320132, Christian Neumair)
5173
5174 Sun Feb 26 10:24:10 PST 2006  Michael Emmel  <mike.emmel@gmail.com>
5175         
5176         *gdk/directfb/README
5177         Updated README to remove old build instructions
5178
5179 Sat Feb 25 10:35:23 PST 2006  Michael Emmel  <mike.emmel@gmail.com>
5180         
5181         *gdk/directfb/gdkdisplay-directfb.c
5182         *gdk/directfb/gdkwindow-directfb.c
5183         Added stubs for shape window functions to fix compile problems
5184
5185 2006-02-24  Federico Mena Quintero  <federico@novell.com>
5186
5187         * gtk/gtkfilechooserdefault.c (shortcuts_list_create): Make the
5188         column header visible, and make it be "_Places".  Changed the
5189         accessible object name to Places as well.  Fixes bug #331306.
5190         (file_pane_create): Do not create the path bar and "create folder"
5191         button here...
5192         (browse_widgets_create): ... but create them here instead.  This
5193         moves the path bar to be above both the hpaned, giving it the full
5194         width of the dialog.  Fixes bug #327733.
5195
5196 Thu Feb 23 13:28:21 2006  Tim Janik  <timj@imendio.com>
5197
5198         * gdk/x11/gdkim-x11.c (_gdk_x11_initialize_locale): remove unconditional
5199         warnings about missing X locale support. Gdk properly handles this
5200         situation anyway.
5201
5202 Fri Feb 17 14:20:29 2006  Tim Janik  <timj@imendio.com>
5203
5204         * gtk/gtktreemodel.h: 
5205         * gtk/gtktextbtree.h: added G_GNUC_WARN_UNUSED_RESULT warnings for
5206         iterator functions, to avoid invalid iterators go unnoticed,
5207         suggested by Markku Vire <markku.vire@movial.fi>.
5208
5209 2006-02-23  Matthias Clasen  <mclasen@redhat.com>
5210
5211         * tests/Makefile.am: 
5212         * tests/testnotebookdnd.c: Add notebook DND tests.
5213
5214         * gtk/gtknotebook.h: Add a reorder_tab keynav signal and an
5215         insert_page vfunc to GtkNotebook.
5216
5217         * gtk/gtk.symbols:
5218         * gtk/gtknotebook.c: Support notebook DND. New API includes
5219         gtk_notebook_set_window_creation_hook, 
5220         gtk_notebook_[gs]et_group_id,
5221         gtk_notebook_[gs]et_tab_reorderable, 
5222         gtk_notebook_[gs]et_tab_detachable (#73240, Carlos Garnacho)
5223
5224 2006-02-23  Matthias Clasen  <mclasen@redhat.com>
5225
5226         * gtk/gtktextiter.c: Fix macro declaration
5227
5228         * gtk/gtkaboutdialog.c: Remove an accidentally included function.
5229
5230 2006-02-22  Matthias Clasen  <mclasen@redhat.com>
5231
5232         * gtk/gtktextbtree.c: 
5233         * gtk/gtktextiter.c: Minor optimizations.  (#332059, Arnaud Charlet)
5234
5235         * gtk/gtkradiobutton.c (gtk_radio_button_clicked): Emit notify::active
5236         here, when changing the value of this property.  (#331651)
5237
5238         * gtk/gtknotebook.c: Apply a patch by Paolo Borelli to
5239         make the tab menu keynavigatable.  (#331440)
5240
5241 2006-02-22  Matthias Clasen  <mclasen@redhat.com>
5242
5243         * gtk/gtkaboutdialog.c: Change Close buttons to GTK_RESPONSE_CANCEL
5244         so Escape works. (#331940, Daniel Drake)
5245
5246 2006-02-22  Michael Natterer  <mitch@imendio.com>
5247
5248         * gtk/gtksettings.c: added boolean property gtk-touchscreen-mode,
5249         which essentially means "there are no motion notify events", so
5250         widgets can't use the pointer hovering them for anything.
5251
5252         * gtk/gtkmenu.c: if gtk-touchscreen-mode is TRUE, scroll menus
5253         when clicking the scroll arrows, since hovering goes undetected.
5254         Fixes bug #323028.
5255
5256         Added boolean style property "double-arrows" which always makes
5257         both scroll arrows visible when the menu is too long.
5258         For pushed-in popup menus, both arrows are always shown
5259         (regardless of double-arrows), in order to fix user confusion
5260         about the blank area. Fixes bug #129463.
5261
5262 2006-02-21  Kristian Rietveld  <kris@imendio.com>
5263
5264         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_rows_reordered):
5265         Make sure we always update the virtual root, also when ->priv->root
5266         is still NULL.  (Markku Vire)
5267
5268 2006-02-21  Anders Carlsson  <andersca@imendio.com>
5269
5270         * gdk/quartz/gdkselection-quartz.c:
5271         (make_list):
5272         (gdk_text_property_to_utf8_list_for_display):
5273         Add these from the win32 backend.
5274
5275 2006-02-20  Matthias Clasen  <mclasen@redhat.com>
5276
5277         * gtk/gtknotebook.c: Properly update internal state
5278         when child visibility changes.  (#331785, Sebastien Bacher)
5279
5280         * gdk/gdkgc.c (_gdk_gc_update_context): Obtain the
5281         background color from the gc when it is needed.  (#331820)
5282
5283 2006-02-19  Matthias Clasen  <mclasen@redhat.com>
5284
5285         * gdk/gdkgc.c (_gdk_gc_update_context): Add a gc_changed
5286         argument, and avoid setting the clip region if the gc
5287         has not changed. 
5288
5289         * gdk/gdkgc.c: Update all callers.
5290
5291         * gdk/gdkpango.c (get_cairo_context): Avoid updating the
5292         context if nothing changed.
5293
5294 2006-02-20  Anders Carlsson  <andersca@imendio.com>
5295
5296         * gdk/quartz/gdkdisplay-quartz.c:
5297         (gdk_display_supports_shapes):
5298         (gdk_display_supports_input_shapes):
5299         * gdk/quartz/gdkwindow-quartz.c:
5300         (gdk_display_warp_pointer):
5301         (gdk_window_input_shape_combine_mask):
5302         (gdk_window_input_shape_combine_region):
5303         (gdk_window_set_child_input_shapes):
5304         (gdk_window_set_accept_focus):
5305         (gdk_window_merge_child_input_shapes):
5306         Add stubs for input shape functions.
5307
5308 2006-02-20  Anders Carlsson  <andersca@imendio.com>
5309
5310         * gdk/quartz/gdkevents-quartz.c:
5311         (get_keyboard_modifiers_from_nsevent):
5312         Fix typo so ctrl gets passed on to the gdk event.
5313         
5314         * gdk/quartz/gdkproperty-quartz.c:
5315         (gdk_atom_name):
5316         g_strdup the atom name.
5317
5318 2006-02-20  Tor Lillqvist  <tml@novell.com>
5319
5320         * gdk/win32/gdkdisplay-win32.c (gdk_display_supports_shapes):
5321         New function, return TRUE.
5322         (gdk_display_supports_input_shapes): New function, return FALSE.
5323
5324         * gdk/win32/gdkwindow-win32.c (do_shape_combine_region): New
5325         function. Factor out code from gdk_window_shape_combine_mask().
5326         (gdk_window_shape_combine_region): Actually do something. Convert
5327         region to a HRGN and call do_shape_combine_region().
5328         (gdk_window_input_shape_combine_mask)
5329         (gdk_window_input_shape_combine_region)
5330         (gdk_window_set_child_input_shapes)
5331         (gdk_window_merge_child_input_shapes): New functions, dummy
5332         implementations.
5333
5334 2006-02-20  Michael Natterer  <mitch@imendio.com>
5335
5336         * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): adding boolean
5337         have_shapes and have_input_shapes members fixes the build.
5338
5339 2006-02-20  Tor Lillqvist  <tml@novell.com>
5340
5341         * gdk/win32/gdkfont-win32.c: Replace all calls to g_strcasecmp()
5342         with g_ascii_strcasecmp().
5343
5344 2006-02-19  Matthias Clasen  <mclasen@redhat.com>
5345
5346         Support input shapes:  (#331070)
5347         
5348         * gdk/gdk.symbols: 
5349         * gdk/gdkdisplay.h: 
5350         * gdk/gdkwindow.h: 
5351         * gdk/x11/gdkdisplay-x11.c (gdk_display_supports_shapes) 
5352         (gdk_display_supports_input_shapes): Functions to determine
5353         if a display supports shaped windows or input shapes.
5354
5355         * gdk/x11/gdkwindow-x11.c (gdk_window_input_shape_combine_region): 
5356         (gdk_window_input_shape_combine_mask): 
5357         (gdk_window_set_child_input_shapes): 
5358         (gdk_window_merge_child_input_shapes): Input shape versions
5359         of the window shape API.
5360
5361         * gtk/gtk.symbols: 
5362         * gtk/gtkwidget.h: 
5363         * gtk/gtkwidget.c (gtk_widget_input_shape_combine_mask): 
5364         New function to set an input shape on a widget.
5365
5366 2006-02-19  Matthias Clasen  <mclasen@redhat.com>
5367
5368         * gtk/gtklinkbutton.c (gtk_link_button_class_init): Fix
5369         a cast.
5370
5371 2006-02-17  Matthias Clasen  <mclasen@redhat.com>
5372
5373         DND keynav support:
5374         
5375         * gtk/gtkdnd.c (gtk_drag_update_idle): Protect against 
5376         info->last_event being NULL.
5377         (gtk_drag_key_cb): Handle arrow keys to move the drag icon
5378         and space or enter to drop.
5379
5380 2006-02-17  Matthias Clasen  <mclasen@redhat.com>
5381
5382         * gdk/gdkregion-generic.c (gdk_region_union_with_rect):
5383         Be robust and reject rectangles with negative width or
5384         height.  (#331467, Benjamin Berg)
5385
5386
5387 2006-02-17  Kristian Rietveld  <kris@imendio.com>
5388
5389         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_rows_reordered):
5390         Only update the virtual root if the child path is an ancestor
5391         of the virtual root.  (Patch from Markku Vire).
5392
5393 2006-02-16  Federico Mena Quintero  <federico@novell.com>
5394
5395         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_map): Call
5396         ::initial_focus() on the child before calling ::map() on our
5397         parent class.  This will prevent the shortcuts treeview from
5398         highlighting its first row as a result of getting assigned focus
5399         by gtk_dialog_map().
5400
5401 2006-02-14  Matthias Clasen  <mclasen@redhat.com>
5402
5403         * gtk/gtkwidget.c (gtk_widget_send_expose): Remove redundant
5404         check.  Pointed out by Bodo-Merle Sandor.
5405
5406         * gtk/gtkcolorbutton.c (gtk_color_button_[un]realize):
5407         Remove unnecessary checks.  
5408
5409 2006-02-12  Matthias Clasen  <mclasen@redhat.com>
5410
5411         * gtk/gtkicontheme.c (gtk_icon_theme_list_icons): Give working
5412         examples in the docs.  (#330944, John Spray)
5413
5414 2006-02-10  Matthias Clasen  <mclasen@redhat.com>
5415         
5416         * gtk/gtkiconview.c (gtk_icon_view_get_item_at_coords): Fix
5417         row_spacing/column_spacing confusion.  (#330732, Donald Straney)
5418
5419 2006-02-10  Matthias Clasen  <mclasen@redhat.com>
5420
5421         * gtk/gtkstyle.c: Add some docs. (#330073, Mart Raudsepp)
5422
5423         * gtk/gtkentrycompletion.c (gtk_entry_completion_match_selected): 
5424         Guard against NULL.  (#330177, Raphael Slinckx)
5425
5426 2006-02-10  Murray Cumming  <murrayc@murrayc.com>
5427
5428         * docs/reference/gtk/tmpl/gtkcomboboxentry.sgml: Mention that 
5429         the changed signal is emitted when typing - not just when 
5430         selecting from the list. Suggest use of GtkEntry::action to 
5431         etect end of typing.
5432          gtk/gtkcombobox.c: (gtk_combo_box_class_init): changed signal 
5433         ocumentation: Mention that the GtkComboBoxEntry emits it when 
5434         he users types, not just when he selects from the list.
5435
5436 2006-02-10  Murray Cumming  <murrayc@murrayc.com
5437
5438         * gtk/gtkassistant.h: Correct the declaration of the prepare 
5439         default signal handler to match its registration and use.
5440
5441 2006-02-09  Ross Burton  <ross@burtonini.com>
5442
5443         * gtk/gtkfontbutton.c:
5444         Work out the font size in floating point, and display the font
5445         size with %g instead of %d (#317590)
5446
5447 2006-02-09  Tor Lillqvist  <tml@novell.com>
5448
5449         * gdk/win32/gdkevents-win32.c (gdk_event_translate)
5450         <WM_MOUSELEAVE>: If we don't know where we went, and have
5451         generated a leave event, set current_window to the root
5452         window. This assures we will generate proper enter and leave
5453         events for popup windows. (#325521)
5454
5455 2006-02-08  John Ehresman  <jpe@wingware.com>
5456
5457         * gdk/win32/gdkevents-win32.c (gdk_event_translate)
5458         <WM_MOUSEACTIVATE>
5459         * gdk/win32/gdkwindow-win32.c (show_window_internal)
5460         (gdk_window_raise): Call SetWindowPos() instead of
5461         SetForegroundWindow() or BringWindowToTop() if the window
5462         shouldn't accept focus. (#327375)
5463         
5464 2006-02-08  John Ehresman  <jpe@wingware.com>
5465
5466         * gdk/win32/gdkwindow-win32.c: Let gdk_window_set_decorations()
5467         take precedence over anything derived from hints. Restructure
5468         related code and logic, add some new helper functions. (#327217)
5469
5470 2006-02-08  Matthias Clasen  <mclasen@redhat.com>
5471
5472         * gtk/gtkfilechooserbutton.c: Don't put relevant callss
5473         in g_assert().  (#329876, Kristian Rietveld)
5474
5475 2006-02-08  Tor Lillqvist  <tml@novell.com>
5476
5477         * gdk/win32/gdkevents-win32.c (gdk_pointer_grab)
5478         (gdk_display_pointer_ungrab, gdk_keyboard_grab)
5479         (gdk_display_keyboard_ungrab): Consistenly use assign_object()
5480         when assigning GdkWindow pointers so that the ref counting doesn't
5481         get off whack.
5482
5483         (handle_stuff_while_moving_or_resizing): Don't use deprecated API.
5484
5485         (gdk_event_translate) <WM_MOUSEMOVE>: When the pointer is grabbed
5486         with owner_events FALSE, generate enter and leave events only for
5487         the grab window. (#321054)
5488
5489 2006-02-08  Kristian Rietveld  <kris@imendio.com>
5490
5491         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_ref_path),
5492         (gtk_tree_model_filter_unref_path): free temporary paths after
5493         usage (patch from maemo-gtk),
5494         (gtk_tree_model_filter_clear_cache): fix little typo in the docs
5495         (patch from maemo-gtk).
5496
5497         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_deleted): remove
5498         stale FIXME.
5499
5500 2006-02-08  Matthias Clasen  <mclasen@redhat.com>
5501
5502         * gtk/gtkfilesystem.c (gtk_file_info_copy): Copy the display_key
5503         as well.  (#330389, Markku Vire)
5504
5505 2006-02-08  Tor Lillqvist  <tml@novell.com>
5506
5507         * gtk-zip.sh.in: Drop the timestamp from the zipfile names.
5508
5509 2006-02-07  Sven Neumann  <sven@gimp.org>
5510
5511         * gdk/directfb/AUTHORS: updated mine and Dok's email address.
5512
5513 2006-02-06  Kristian Rietveld  <kris@gtk.org>
5514
5515         * gtk/gtktreeview.c (gtk_tree_view_get_search_entry): fix compiler
5516         warning.
5517
5518 2006-02-05  Dom Lachowicz <cinamod@hotmail.com>
5519
5520         * gdk/gdkcairo.c (gdk_cairo_set_source_pixbuf): Bug #330022
5521         Wrong pixel values are computed when color = 0xFF and alpha = 0xFF
5522         
5523 2006-02-04  Michael Emmel  <mike.emmel@gmail.com>
5524         Added new directfb backend located in gdk/directfb
5525         plus patches to compile new backend
5526         compile with --with-gdktarget=directfb
5527
5528 2006-02-03  Federico Mena Quintero  <federico@ximian.com>
5529
5530         Work around https://bugs.freedesktop.org/show_bug.cgi?id=4320,
5531         which used to be our own
5532         http://bugzilla.gnome.org/show_bug.cgi?id=314616.  If one uses a
5533         pixmap for a pattern in Cairo, and sets the pattern to
5534         CAIRO_EXTEND_REPEAT; and if the destination surface is also a
5535         pixmap, Cairo does a slow copy instead of using XCopyArea().  So,
5536         we use the same code that we used in GTK+ 2.6 (pre-cairo), by
5537         filling the double-buffer pixmap with a tiled GC and
5538         XFillRectangle().
5539
5540         * gdk/gdkwindow.c (BackingRectMethod): New structure with a
5541         cairo_t and a GdkGC field.  Depending on which of these fields
5542         gets filled in, we'll use Cairo or GDK to clear the double-buffer
5543         pixmap when painting a window.
5544         (setup_backing_rect_method): Fill a BackingRectMethod as
5545         appropriate, depending on the window's configuration and our
5546         knowledge of whether Cairo is fast or slow when doing repeating
5547         patterns.
5548         (gdk_window_clear_backing_rect): Call
5549         setup_backing_rect_method().  Depending on what it returns, use
5550         Cairo to clear the double-buffer pixmap, or plain GDK.
5551
5552 2006-02-03  Matthias Clasen  <mclasen@redhat.com>
5553
5554         * gtk/gtklabel.c (get_layout_location): Fix handling
5555         of padding in RTL.  (#329099, Hooman Mesgary) 
5556
5557 2006-02-02  Matthias Clasen  <mclasen@redhat.com>
5558
5559         * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display):
5560         Make drops on the root window work again.  (#145243, Andrew S. Dixon)
5561
5562 2006-02-01  Matthias Clasen  <mclasen@redhat.com>
5563
5564         * gtk/gtkwidget.c (gtk_widget_class_init): Wrap dnd signal
5565         docs to 80 columns.
5566
5567 2006-01-31  Matthias Clasen  <mclasen@redhat.com>
5568
5569         * autogen.sh: Touch README and INSTALL here to pacify 
5570         automake.  (#329124, Kjartan Maraas, Tim Janik)
5571
5572 2006-01-31  Matthias Clasen  <mclasen@redhat.com>
5573
5574         * gtk/gtk.symbols:
5575         * gtk/gtkassistant.h: 
5576         * gtk/gtkassistant.c: Actually implement visibility handling,
5577         and add gtk_assistant_update_buttons_state.
5578
5579         * tests/testassistant.c: Test visibility handling.
5580
5581 2006-01-31  Kristian Rietveld  <kris@imendio.com>
5582
5583         * gtk/gtkstyle.c (gtk_default_draw_flat_box): Add support for row
5584         hinting for the selected state.
5585
5586 2006-01-30  Matthias Clasen  <mclasen@redhat.com>
5587
5588         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
5589         Make sure the tree view is realized, since we grab the
5590         focus to it.  (#329144, Wouter Bolsterlee)
5591
5592         * gtk/gtkspinbutton.h: 
5593         * gtk/gtkspinbutton.c: Add a wrapped signal.  (#322933,
5594         Carlos Garnacho Parro)
5595
5596         * gtk/gtkassistant.c: More generous spacing. (#328082,
5597         Christian Persch, patch by Carlos Garnacho)
5598         
5599         * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_set_property): 
5600         Use the setter for active.  (#329208, Guillaume Cottenceau)
5601
5602         * docs/tools/widgets.c (get_all_widgets): Add GtkLinkButton
5603
5604         * gtk/gtkassistant.c (gtk_assistant_init): Move the
5605         last button to the left where it does not affect
5606         the positioning of forward/back.
5607
5608 2006-01-29  Matthias Clasen  <mclasen@redhat.com>
5609
5610         More GtkAssistant work, by Carlos Garnacho.
5611         
5612         * tests/testassistant.c: Additions.
5613
5614         * gtk/gtkassistant.c: Handle page visibility, other 
5615         small fixes.
5616
5617         * docs/tools/widgets.c: Add GtkAssistant.
5618
5619 2006-01-28  Behdad Esfahbod  <behdad@gnome.org>
5620
5621         * configure.in: If major.minor of required and available glib versions
5622         are the same, add -DG_DISABLE_DEPRECATED to GLIB_CFLAGS. (bug #328617)
5623
5624         * */Makefile.am: Remove hardcoded -DG_DISABLE_DEPRECATED.
5625
5626 2006-01-28  Dom Lachowicz <cinamod@hotmail.com>
5627
5628         * modules/engines/ms-windows/msw-style.c: Re-sync with gtk-wimp
5629         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Ditto
5630         
5631 2006-01-28  Matthias Clasen  <mclasen@redhat.com>
5632
5633         * gtk/gtk.symbols: 
5634         * gtk/gtklinkbutton.h: 
5635         * gtk/gtklinkbutton.c: Allow to set a global hook function
5636         thats called whenever a link button is clicked.
5637
5638         More work on GtkAssistant by Carlos Garnacho:
5639         
5640         * demos/gtk-demo/Makefile.am: 
5641         * demos/gtk-demo/assistant.c: Add a  GtkAssistant demo.
5642
5643         * gtk/gtkassistant.c: Handle focus, several small fixes to the
5644         flow computations.
5645
5646 2006-01-27  Federico Mena Quintero  <federico@ximian.com>
5647
5648         Fixes bug #328820:
5649
5650         * gtk/gtkfilechooserdefault.c
5651         (gtk_file_chooser_default_class_init): Make GDK_KP_Divide pop up
5652         the location dialog populated to "/".
5653         (tree_view_keybinding_cb): Likewise.
5654         (trap_activate_cb): Likewise.
5655
5656 2006-01-25  Behdad Esfahbod  <behdad@gnome.org>
5657
5658         * gtk/gtkcalendar.c (gtk_calendar_size_request): Use translated format
5659         strings for L10n in size calculation too.
5660
5661         * gtk/gtkcalendar.c (calendar_paint_week_numbers): Expand buffer to
5662         accomodate localized digits.
5663
5664 2006-01-26  Matthias Clasen  <mclasen@redhat.com>
5665
5666         * tests/prop-editor.c: Introspect child properties. too.
5667
5668 2006-01-25  Behdad Esfahbod  <behdad@gnome.org>
5669
5670         * gtk/gtkcalendar.c (calendar_paint_week_numbers, calendar_paint_day):
5671         Use contexed translated strings calendar:week:digits|%d and
5672         calendar:day:digits|%d to let translators choose localized digits for
5673         week and day numbers. (bug #317171, Hamed Malek)
5674
5675 2006-01-25  Behdad Esfahbod  <behdad@gnome.org>
5676
5677         * gtk/gtklabel.c (get_layout_location): Use logical extents of the
5678         layout instead of ink extents.  According to Pango docs, that's what
5679         should be used for placement.  Moreover, simply use
5680         pango_layout_get_pixel_size instead of getting the extents and
5681         dividing ourselves.
5682
5683 2006-01-25  Matthias Clasen  <mclasen@redhat.com>
5684
5685         * gtk/gtkentrycompletion.c: 
5686         * gtk/gtkentry.c: Be more careful when blocking signals. 
5687
5688         * gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): Only
5689         set the cursor size if it is != 0.
5690
5691         * gtk/gtksettings.c (gtk_settings_class_init): Change the default value
5692         of gtk-cursor-theme-size to 0, meaning "use default".
5693
5694 2006-01-24  Kristian Rietveld  <kris@gtk.org>
5695
5696         #322591, Jonathan Blandford.
5697
5698         * gtk/gtktreeview.[ch] (gtk_tree_view_get_search_entry),
5699         (gtk_tree_view_set_search_entry),
5700         (gtk_tree_view_get_search_position_func),
5701         (gtk_tree_view_set_search_position_func): New functions,
5702         and small adaptions to the tree view code to allow for setting
5703         the entry and search position function.
5704
5705         * gtk/gtktreeprivate.h: Removed GtkTreeViewSearchDialogPositionFunc
5706         typedef, which is now in gtktreeview.h as
5707         GtkTreeViewSearchPositionFunc.  Add/update fields.
5708
5709         * gtk/gtk.symbols: Add new functions.
5710
5711         * tests/testtreesort.c: Add a little test for _set_search_entry().
5712
5713 2006-01-23  Matthias Clasen  <mclasen@redhat.com>
5714
5715         Add GtkLinkButton, a port of GnomeHRef.  (#314808, Emmanuele Bassi)
5716         
5717         * gtk/gtklinkbutton.h: 
5718         * gtk/gtklinkbutton.c: New files.
5719
5720         * gtk/gtk.h:
5721         * gtk/gtk.symbols: 
5722         * gtk/Makefile.am: Glue.
5723
5724         * gtk/gtkaboutdialog.c: Use GtkLinkButton.
5725         
5726         * gtk/gtkwidget.c: Add link-color and visited-link-color style
5727         properties.  (#113649, Leena Gunda)
5728
5729         * gtk/gtkaboutdialog.c: Use the new style properties here instead
5730         of the about dialogs own link-color property. 
5731
5732 2006-01-23  Kristian Rietveld  <kris@gtk.org>
5733
5734         * gtk/gtktreemodel.c (gtk_tree_model_base_init): don't copy
5735         tree paths when emitting signals. (#325041, Matthias Clasen).
5736
5737 2006-01-23  Behdad Esfahbod  <behdad@gnome.org>
5738
5739         * gtk/gtklabel.c (get_layout_location): Fix misalignment of RTL
5740         text in ellipsized GtkLabel: use layout width if set, otherwise
5741         fallback to ink extents width. (#322042)
5742
5743 2006-01-23  Matthias Clasen  <mclasen@redhat.com>
5744
5745         * gtk/gtkassistant.c (compute_last_button_state): Only show the
5746         last button if we can jump to the end. 
5747         (gtk_assistant_init): Make the spacing and button order more
5748         HIG compliant.
5749
5750         Fix drawing issues in progress bars.  (#328081, Christian Persch)
5751         
5752         * gtk/gtkprogressbar.c (gtk_progress_bar_size_request): Always
5753         request enough space. 
5754         (gtk_progress_bar_paint_activity) 
5755         (gtk_progress_bar_paint_continuous) 
5756         (gtk_progress_bar_paint_discrete): Clip when drawing the bar.
5757
5758 2006-01-23  Michael Natterer  <mitch@imendio.com>
5759
5760         * gtk/gtkcolorbutton.c: move destruction of the private GdkGC
5761         from finalize() to unrealize(). Fixes BadMatch on display change
5762         (bug #85715).
5763
5764 2006-01-22  Kristian Rietveld  <kris@gtk.org>
5765
5766         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Revert previous
5767         commit after more searching in the bugzilla archives (see #309221).
5768
5769 2006-01-22  Kristian Rietveld  <kris@gtk.org>
5770
5771         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Remove second call
5772         to gtk_tree_view_column_cell_set_cell_data, since we also set the
5773         cell data before iterating over the columns for exposure. (Fixes
5774         #322471, Duncan Coutts).
5775
5776 2006-01-21  Matthias Clasen  <mclasen@redhat.com>
5777
5778         * tests/testassistant.c: Add some tests for GtkAssistant
5779
5780         * tests/Makefile.am: Glue
5781
5782 2006-01-20  Matthias Clasen  <mclasen@redhat.com>
5783
5784         * gtk/gtkassistant.c: Fix the docs to reflect the actual signal
5785         signatures.
5786
5787         * gtk/gtktextview.c (gtk_text_view_set_virtual_cursor_pos): Don't
5788         crash if layout is NULL.  (#327934, Christian Kirbach)
5789
5790 2006-01-20  Dan Winship  <danw@novell.com>
5791
5792         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_class_init,
5793         tree_view_keybinding_cb, trap_activate_cb): On "unix", pop up the
5794         "Open Location" window on "~" as well as "/". #153213
5795         (location_entry_create): Fix this so autocompletion still works
5796         correctly in that case.
5797
5798 2006-01-19  Matthias Clasen  <mclasen@redhat.com>
5799
5800         * configure.in: Explicitly link against Xrender.  
5801         (#327538, Christophe Belle)
5802         
5803         * gdk/x11/gdkprivate-x11.h (XID_FONT_BIT): 
5804         * gdk/x11/gdkfont-x11.c: 
5805         * gdk/x11/gdkxid.c: Use an unused high bit in the
5806         XID to mark fonts in the global xid hash table.
5807
5808         * gdk/x11/gdkcursor-x11.c (update_cursor): Skip fonts
5809         when iterating over the xid hash table, since calling
5810         GDK_IS_WINDOW () on an GdkFont can cause a segfault.
5811         (#327751, Ryan Lovett)
5812
5813 2006-01-19  Matthias Clasen  <mclasen@redhat.com>
5814         
5815         * gtk/gtkassistant.[hc]: Use a priv pointer for
5816         cheap access to the priv struct.  (#327725, Christian
5817         Persch)
5818
5819         * gtk/gtkassistant.h: Fix line endings.
5820
5821 2006-01-18  Matthias Clasen  <mclasen@redhat.com>
5822
5823         * gtk/gtkassistant.[hc]: Add GtkAssistant, a widget to
5824         construct multi-step wizards.  (#115348, Martyn Russell, 
5825         Matthias Clasen, Carlos Garnacho Parro)
5826
5827         * gtk/gtk.symbols:
5828         * gtk/Makefile.am: 
5829         * gtk/gtk.h: Necessary glue.
5830
5831 2006-01-18  Anders Carlsson  <andersca@imendio.com>
5832
5833         * gdk/quartz/gdkevents-quartz.c:
5834         (get_mm_from_pixels):
5835         (gdk_screen_get_width_mm):
5836         (gdk_screen_get_height_mm):
5837         Implement these functions.
5838         (#327228, Thomas Broyer).
5839
5840 2006-01-18  Anders Carlsson  <andersca@imendio.com>
5841
5842         * gdk/quartz/gdkdrawable-quartz.c:
5843         (gdk_quartz_draw_polygon):
5844         (gdk_quartz_draw_lines):
5845         Implement these functions.
5846         (#327226, Thomas Broyer)
5847         
5848 2006-01-18  Anders Carlsson  <andersca@imendio.com>
5849
5850         * gdk/quartz/gdkkeys-quartz.c:
5851         (maybe_update_keymap):
5852         Support non-MacRoman keyboard layouts.
5853         (#322585, Wolfgang Thaller)
5854         
5855 2006-01-18  Anders Carlsson  <andersca@imendio.com>
5856
5857         * gdk/quartz/gdkmain-quartz.c:
5858         (_gdk_windowing_init):
5859         Make the process a foreground application.
5860         (#322481, Wolfgang Thaller)
5861         
5862 2006-01-18  Matthias Clasen  <mclasen@redhat.com>
5863
5864         * gtk/gtkrbtree.c: 
5865         * gtk/gtktreemodel.c: Fix several g_new() calls which
5866         were using extra indirections or pointless casts.  
5867         (#327423, Morten Welinder)
5868
5869 Tue Jan 17 19:27:59 2006  Tim Janik  <timj@imendio.com>
5870
5871         * gtk/gtkprogress.c: fix adopted from maemo-gtk.
5872         gtk_progress_create_pixmap(): clear out the newly created offscreen 
5873         pixmap, so themes making use of transparency don't draw onto garbage.
5874
5875 2006-01-17  Michael Natterer  <mitch@imendio.com>
5876
5877         * gtk/gtkbutton.c: remove the "child-spacing" style property again
5878         and add "inner-border" instead. That's far more flexible and
5879         "child-spacing" was a bad name anyway.
5880
5881 2006-01-17  Michael Natterer  <mitch@imendio.com>
5882
5883         * configure.in (ALL_LINGUAS): remove "ang" again until all po
5884         files are there.
5885
5886 2006-01-16  Abel Cheung  <maddog@linuxhall.org>
5887
5888         * configure.in: Added "ang" "zh_HK" to ALL_LINGUAS.
5889
5890 2006-01-16  Matthias Clasen  <mclasen@redhat.com>
5891
5892         * README.in: Mention new pixbuf engine features.
5893
5894         * gtk/gtk.symbols: 
5895         * gtk/gtkradioaction.[hc]: Add a current-value property and a
5896         setter for it.  (#322735, Jorn Baayen)
5897         
5898 2006-01-16  Michael Natterer  <mitch@imendio.com>
5899
5900         * gtk/gtkbutton.c: applied patch from maemo-gtk which adds a
5901         child-spacing style property. Fixes bug #327202.
5902
5903 2006-01-16  Anders Carlsson  <andersca@imendio.com>
5904
5905         * gdk/quartz/gdkdisplay-quartz.c:
5906         * gdk/quartz/gdkevents-quartz.c:
5907         (gdk_keyboard_grab):
5908         (gdk_display_keyboard_ungrab):
5909         (gdk_keyboard_grab_info_libgtk_only):
5910         (find_window_for_event):
5911         Implement keyboard grabs.
5912         
5913         (_gdk_quartz_send_map_events):
5914         * gdk/quartz/gdkmain-quartz.c:
5915         * gdk/quartz/gdkprivate-quartz.h:
5916         New function that synthesizes map events.
5917         
5918         * gdk/quartz/gdkwindow-quartz.c:
5919         (_gdk_windowing_window_init):
5920         The root window is always visible.
5921         
5922         (all_parents_shown):
5923         (show_window_internal):
5924         Send map events.
5925         
5926         (gdk_window_hide):
5927         Ungrab keyboard and pointer
5928
5929 2006-01-15  Kristian Rietveld  <kris@gtk.org>
5930
5931         Fixes #324099, Tommi Komulainen.
5932
5933         * gtk/gtktreestore.[ch] (gtk_tree_store_insert_with_values),
5934         (gtk_tree_store_insert_with_valuesv): new functions, analog to
5935         those found in GtkListStore.
5936
5937         * gtk/gtktreestore.c (gtk_tree_store_real_set_value),
5938         (gtk_tree_store_set_valist), (gtk_tree_store_set_valist_internal),
5939         (gtk_tree_store_sort_iter_changed): refactored.
5940
5941         * gtk/gtk.symbols: updated.
5942
5943         * tests/treestoretest.c: added a test for this new functionality.
5944
5945 2006-01-14  Matthias Clasen  <mclasen@redhat.com>
5946
5947         * gtk/gtkentry.c (gtk_entry_drag_data_received): Remove 
5948         an unused variable.
5949
5950         * gtk/gtkiconfactory.c (get_default_icons): Register RTL 
5951         versions of the indent and unindent icons.  (#326857,
5952         Itai Bar-Haim)
5953
5954         * gtk/Makefile.am (STOCK_ICONS): And add them here.
5955
5956         Fix a crash with combo boxes in RESIZE_IMMEDIATE
5957         containers.  (#326806, Sebastian Bacher)
5958         
5959         * gtk/gtkcombobox.c (gtk_combo_box_size_allocate) 
5960         (gtk_combo_box_size_request): Don't call 
5961         gtk_combo_box_check_appearance() from here, as that 
5962         can lead to recursion. 
5963         (gtk_combo_box_init): Instead, call it here.
5964
5965 2006-01-14  Kristian Rietveld  <kris@gtk.org>
5966
5967         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_iter_children): fix
5968         a typo which caused this whole thing to not function ...
5969
5970 2006-01-14  Kristian Rietveld  <kris@gtk.org>
5971
5972         * gtk/gtktreeview.c (gtk_tree_view_size_allocate),
5973         (validate_visible_area): fixup adjustments and top_row if the
5974         current dy + page_size exceeds the new tree view height. (Fixes
5975         #316689, reported by Chris Lord).
5976
5977 2006-01-13  Matthias Clasen  <mclasen@redhat.com>
5978
5979         * */abicheck.sh: Make this work on more platforms.
5980
5981 2006-01-13  Kristian Rietveld  <kris@imendio.com>
5982
5983         * tests/testtreefocus.c (set_indicator_size), (main): add a little
5984         test for the newly introduced indicator-size property.
5985
5986 2006-01-13  Kristian Rietveld  <kris@imendio.com>
5987
5988         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_init):
5989         initialize the inconsistent field in the private structure,
5990         (gtk_cell_renderer_toggle_class_init),
5991         (gtk_cell_renderer_toggle_{set,get}_property),
5992         (gtk_cell_renderer_toggle_get_size): introduce a indicator-size
5993         property.
5994
5995 2006-01-13  Michael Natterer  <mitch@imendio.com>
5996
5997         * gtk/gtktreeview.c (gtk_tree_view_real_expand_row)
5998         (gtk_tree_view_real_collapse_row): don't animate the expander
5999         arrows if gtk-enable-animations is FALSE (bug #142582).
6000
6001 2006-01-12  Matthias Clasen  <mclasen@redhat.com>
6002
6003         * gtk/gtknotebook.c: Replace hardcoded values for tab-overlap and
6004         tab-curvature with style properties.  (#325282, Alexander Nedotsukov)
6005
6006         * gtk/gtktextview.c (gtk_text_view_commit_text) 
6007         (gtk_text_view_delete_from_cursor, gtk_text_view_backspace): 
6008         Reset the virtual cursor position.  (#326003, Evert Verhellen)
6009
6010         * gtk/gtkwidget.c (gtk_widget_set_app_paintable): Add some docs
6011         about RGBA windows. (#326486, Benjamin Otte)
6012
6013 2006-01-12  Michael Natterer  <mitch@imendio.com>
6014
6015         * gdk/gdkimage.c (scratch_image_info_for_depth): connect to the
6016         display's "closed" signal and free the cached scratch images upon
6017         display closing (bug #85715).
6018
6019 2006-01-12  Michael Natterer  <mitch@imendio.com>
6020
6021         * gtk/gtkexpander.c (gtk_expander_set_expanded): skip the
6022         animation if the gtk-enable-animations setting is FALSE
6023         (bug #142582).
6024
6025 2006-01-11  Matthias Clasen  <mclasen@redhat.com>
6026
6027         * gtk/gtklabel.c: Fix a C99ism (#326658, Kazuki Iwamoto)
6028
6029 2006-01-11  Matthias Clasen  <mclasen@redhat.com>
6030
6031         * gtk/gtklabel.c: Add some notify batching, always
6032         emit notify after setting the new value.
6033
6034         * gtk/gtkmessagedialog.c: Add properties.  (#311254,
6035         Johan Dahlin)
6036         (gtk_message_dialog_new): Remove some redundant code, pointed
6037         out by Gustavo Carneiro.
6038
6039         * gdk/x11/gdkwindow-x11.c (create_moveresize_window): Clean
6040         up properly if the grab fails.
6041         (finish_drag): Don't leak a reference to moveresize_window
6042         here.
6043
6044 2006-01-11  Matthias Clasen  <mclasen@redhat.com>
6045
6046         * gdk/x11/gdkevents-x11.c: Fix string offsets.
6047
6048         Allow falling back to another icon theme before 
6049         hicolor.   (#325546, Rodney Dawes)
6050         
6051         * gtk/gtksettings.c: Add a gtk-fallback-icon-theme setting.
6052
6053         * gdk/x11/gdkevents-x11.c: Map it to the XSetting Net/FallbackIconTheme.
6054         
6055         * gtk/gtkicontheme.c: Consult the fallback icon theme before
6056         looking in hicolor. 
6057
6058 2006-01-10  Matthias Clasen  <mclasen@redhat.com>
6059
6060         * tests/testgtk.c: Add an expander example.
6061
6062         * gtk/gtkcalendar.c (gtk_calendar_focus_out): Queue a draw
6063         when losing the focus.  (#326064, Andrew Conkling)
6064
6065         * gtk/gtkimmulticontext.c: 
6066         * gtk/gtkhsv.c: 
6067         * gtk/gtkhandlebox.c: Convert to use instance private data.
6068
6069         * gtk/gtk.h: Remove duplicate include.  (#326429, 
6070         Benoît Carpentier)
6071
6072         * gtk/gtkpaned.c: Convert to use instance private data.
6073
6074 2006-01-10  Michael Natterer  <mitch@imendio.com>
6075
6076         * gdk/gdkpango.c (on_renderer_display_closed): disconnect from the
6077         right object ("closed" is emitted by the display, not the screen).
6078         (bug #85715)
6079
6080 2006-01-10  Anders Carlsson  <andersca@imendio.com>
6081
6082         * gdk/quartz/gdkproperty-quartz.c:
6083         (ensure_atom_tables):
6084         (intern_atom_internal):
6085         (gdk_atom_intern):
6086         (gdk_atom_intern_static_string):
6087         (gdk_atom_name):
6088         Implement local-only atoms.
6089
6090 2006-01-09  Matthias Clasen  <mclasen@redhat.com>
6091
6092         * gdk/gdkgc.c (gc_get_foreground): Correct a warning.
6093         (#326341, Benoît Carpentier)
6094
6095         * gtk/gtk.symbols:
6096         * gtk/gtkwindow.h:
6097         * gtk/gtkwindow.c (gtk_window_get_group): Make this function
6098         public API.  (#307099, Todd Berman)
6099
6100         * gtk/gtkmenu.c: 
6101         * gtk/gtkmain.c: 
6102         * gtk/gtkentrycompletion.c: 
6103         * gtk/gtkcombo.c: 
6104         * gtk/gtkcombobox.c: Update all callers.
6105
6106         * gtk/gtkentry.c (paste_received):  Make GtkEntryCompletion
6107         complete on pastes at the end.  (#165714, Christian Neumair)
6108
6109         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): 
6110         Prevent the first row being focused on map.  (#137351,
6111         Niklas Knutsson)
6112
6113 2006-01-09  Johan Dahlin  <jdahlin@async.com.br>
6114
6115         * gtk/gtk.symbols:
6116         * gtk/gtkeditable.h:
6117         * gtk/gtksizegroup.c: (gtk_size_group_get_widgets):
6118         * gtk/gtksizegroup.h:
6119         (struct _GtkSizeGroup): 
6120
6121         Add gtk_size_group_get_widgets, fixes #326324.
6122         Also mark all fields of GtkSizeGroup as private
6123
6124 2006-01-09  Matthias Clasen  <mclasen@redhat.com>
6125
6126         * gtk/gtktextlayout.c (gtk_text_layout_finalize): Don't
6127         leak preedit_string and preedit_attrs.  (#322332, Paolo
6128         Borelli)
6129
6130         * gtk/gtk.symbols:
6131         * gtk/gtkaction.h: 
6132         * gtk/gtkaction.c (gtk_widget_get_action): New function to
6133         get the action for a proxy.  (#326288)
6134
6135         * gtk/gtkaction.c: Go back to the old key for attaching the
6136         action to the proxy.  (#326288, Diego González)
6137
6138 2006-01-08  Matthias Clasen  <mclasen@redhat.com>
6139
6140         * gtk/gtkactiongroup.c (dgettext_swapped): Don't translate
6141         empty strings.  (#326200, Christian Stimming)
6142
6143 2006-01-08  Matthias Clasen  <mclasen@redhat.com>
6144
6145         * gtk/gtkentry.[hc]: 
6146         * gtk/gtklabel.[hc]: Shrink the private structs of these a bit.
6147
6148         * gtk/gtklabel.c (get_layout_location): Fix label alignment 
6149         when width-chars is set.  (#326098, Benjamin Otte)
6150
6151         * gdk/gdkregion-generic.c (miRegionCopy): Fix this for the 
6152         single-rectangle case.  (#326127, Benjamin Berg)
6153         (gdk_region_copy): Use miRegionCopy() here.
6154
6155 2006-01-07  Matthias Clasen  <mclasen@redhat.com>
6156
6157         Fix actiongroup-action interaction that relied on 
6158         actions connecting to notify on themselves:
6159         
6160         * gtk/gtkaction.[hc]: Factor out the code updating the
6161         visibility/sensitivity of proxies into _gtk_action_sync_visible()
6162         and _gtk_action_sync_sensible().
6163
6164         * gtk/gtkactiongroup.c: Call the new functions when the
6165         group visibility/sensitivity changes. 
6166
6167 2006-01-06  Matthias Clasen  <mclasen@redhat.com>
6168
6169         * gtk/gtkactiongroup.c (gtk_action_group_set_sensitive) 
6170         (gtk_action_group_set_visible): Add missing property change
6171         notification.
6172
6173 2006-01-06  Matthias Clasen  <mclasen@redhat.com>
6174
6175         * gtk/gtkfilechooserbutton.c (model_add_special): Just use the
6176         directory name for the home dir.  (#325817, Federico Mena Quintero)
6177         
6178         * gtk/gtktexttag.c (gtk_text_attributes_new): Initialize editable 
6179         to TRUE. 
6180         (gtk_text_tag_class_init): The default value for the direction 
6181         property is GTK_TEXT_DIR_NONE. Add notes about the initial values 
6182         of the font and language properties.
6183
6184         * gtk/gtktoolbutton.c (gtk_tool_button_class_init): Make clicked
6185         an action signal.  (#325782, Martyn Russell)
6186
6187         * gtk/gtkviewport.c (viewport_set_adjustment): Disconnect from
6188         the old adjustments signals.  (#325869, Jorn Baayen)
6189
6190 2006-01-06  Hans Breuer  <hans@breuer.org>
6191
6192         * tests/makefile.msc : added a bunch of tests
6193         * tests/testcellrenderertext.c : use g_snprintf()
6194         * tests/testfilechooserbutton.c : don't include unistd.h twice.
6195         Removed the unconditional one and added direct.h for G_OS_WIN32
6196         
6197 2006-01-05  Hans Breuer  <hans@breuer.org>
6198
6199         * gdk/makefile.msc : also recurse into win32 for ::clean
6200         * gtk/makefile.msc.in : create gtkbuiltincache.h (most code
6201         to simulate links) and file renames
6202
6203 2006-01-05  Johan Dahlin  <jdahlin@async.com.br>
6204
6205         * gtk/gtkprogressbar.c: Set minimum for activity-step property to 0
6206         instead of -G_MAXUINT.
6207         
6208 2006-01-05  Matthias Clasen  <mclasen@redhat.com>
6209
6210         * gtk/gtkwindow.c: Only connect to the event if we have
6211         a frame, since the handler is only relevant in that case.
6212
6213         * gtk/gtkaction.c (connect_proxy, disconnect_proxy): 
6214         Use a weak reference rather than the destroy signal to track 
6215         proxies going away.
6216
6217         * gtk/gtkbindings.c (binding_signal_new): Revert the last change.
6218
6219         * gtk/gtkaction.c (gtk_action_sync_property): 
6220         (gtk_action_sync_stock_id): Removed.
6221
6222 2006-01-05  Rodrigo Moya <rodrigo@novell.com>
6223
6224         * gtk/gtkbindings.c (binding_signal_new): allocate correct amount for
6225         signal and arguments.
6226
6227 2006-01-05  Matthias Clasen  <mclasen@redhat.com>
6228
6229         * gtk/gtklabel.c (gtk_label_grab_focus): Don't return a value from
6230         a void function.
6231
6232 2006-01-04  Matthias Clasen  <mclasen@redhat.com>
6233
6234         * gtk/gtkbindings.h (struct _GtkBindingSignal): Revert questionable
6235         changes.
6236         
6237         * gtk/gtkbindings.c: Use the slice allocator and allocate signal
6238         and arguments in one block.
6239
6240         * gtk/gtkuimanager.c (gtk_ui_manager_get_toplevels): Don't return
6241         a list of NULLs.  (#325723, Steve Chaplin)
6242
6243 2006-01-04  Rodrigo Moya <rodrigo@novell.com>
6244
6245         * gtk/gtkbindings.c (binding_signal_new): guard against multiplying
6246         by -1 (when n_args is 0).
6247
6248 2006-01-04  Michael Natterer  <mitch@imendio.com>
6249
6250         * gtk/gtkmenutoolbutton.c
6251         (gtk_menu_tool_button_set_menu)
6252         (gtk_menu_tool_button_destroy): use gtk_menu_attach_to_widget()
6253         and gtk_menu_detach() instead of reffing/unreffing the menu
6254         manually. Also fixes brokenness on screen change (bug #85715).
6255
6256 2006-01-04  Matthias Clasen  <mclasen@redhat.com>
6257
6258         * gtk/gtkaccelmap.c: 
6259         * gtk/gtkactiongroup.c: 
6260         * gtk/gtkdialog.c: 
6261         * gtk/gtkfilesystemunix.c: 
6262         * gtk/gtkgc.c: 
6263         * gtk/gtkkeyhash.c: 
6264         * gtk/gtkplug.c: 
6265         * gtk/gtktextiter.c: 
6266         * gtk/gtktextlayout.c: 
6267         * gtk/gtkuimanager.c: 
6268         * gtk/gtkwidget.c: 
6269         * gtk/gtkwindow.c: 
6270         * gtk/gtkxembed.c: Use the slice allocator for many small 
6271         allocations.
6272
6273         * gtk/gtkcolorsel.c: 
6274         * gtk/gtktreeview.c: Use IPN.
6275
6276         * gtk/gtkwidget.c: Remove an unused field from the AccelPath 
6277         struct.
6278
6279 2006-01-04  Tor Lillqvist  <tml@novell.com>
6280
6281         * gtk-zip.sh.in: Include also the gtk20-properties message catalogs.
6282
6283 2006-01-03  Matthias Clasen  <mclasen@redhat.com>
6284         
6285         * gtk/gtkdnd.c: Make it compile
6286
6287         * gtk/gtkdnd.c (gtk_drag_begin_internal): Call gtk_drag_update
6288         for non-motion events.  (#325443, Peter Harvey)
6289
6290         * gtk/gtkaction.c: Avoid connecting to notify on our own
6291         properties. 
6292
6293 2006-01-02  Matthias Clasen  <mclasen@redhat.com>
6294
6295         * gtk/gtkentry.c (gtk_entry_delete_from_cursor): When deleting
6296         words, delete preceding whitespace as well.  (#325358,  Akkana Peck)
6297
6298 2006-01-02  Anders Carlsson  <andersca@imendio.com>
6299
6300         * gdk/quartz/GdkQuartzWindow.c:
6301         (-[GdkQuartzWindow canBecomeMainWindow]):
6302         (-[GdkQuartzWindow canBecomeKeyWindow]):
6303         Have these return TRUE
6304         
6305         * gdk/quartz/gdkevents-quartz.c:
6306         (pointer_grab_internal):
6307         Remove FIXME
6308         
6309         (find_child_window_by_point_helper):
6310         Fix bug in offset calculation
6311         
6312         (find_window_for_event):
6313         Use grab window toplevel when a grab is in effect
6314         
6315         (gdk_event_translate):
6316         Don't call _gdk_event_button_generate on mouse up
6317         
6318         * gdk/quartz/gdkgc-quartz.c:
6319         (_gdk_quartz_gc_new):
6320         Fix indentation
6321         
6322         * gdk/quartz/gdkwindow-quartz.c:
6323         (gdk_window_new):
6324         Make TEMP windows borderless
6325         
6326         (gdk_window_hide):
6327         Hide window
6328         
6329         (gdk_window_get_origin):
6330         Implement
6331         
6332 2006-01-02  Tor Lillqvist  <tml@novell.com>
6333
6334         * gdk/win32/gdkwindow-win32.c
6335         (gdk_window_impl_win32_get_visible_region): Make identical to the
6336         X11 implementation. (#322264, John Ehresman)
6337
6338         * gdk/win32/gdkgeometry-win32.c (gdk_window_scroll): Get the
6339         invalidated region from ScrollWindowEx() instead of an incorrect
6340         attempt to calculate it ourselves. Fix by John Ehresman. (#323666)
6341
6342         * gdkevents-win32.c: Make _gdk_win32_hrgn_to_region() non-static.
6343
6344         * gdkprivate-win32.h: Declare it.
6345
6346 2005-12-31  Matthias Clasen  <mclasen@redhat.com>
6347
6348         * gtk/gtkaction.c: 
6349         * gtk/gtkentry.c: Connect to notify instead of multiple
6350         detailed signals.
6351
6352 2005-12-30  Matthias Clasen  <mclasen@redhat.com>
6353
6354         * gdk/gdk.symbols: 
6355         * gdk/gdkcairo.h: 
6356         * gdk/gdkcairo.c: Add gdk_cairo_set_source_pixmap.  (#318805,
6357         Alexander Larsson)
6358
6359         * gdk/gdkdisplaymanager.c (gdk_display_manager_set_property): Call
6360         gdk_display_manager_set_default_display() to change the default
6361         display.  (#153623, Stefan Kost)
6362
6363         * gtk/gtkmessagedialog.c (gtk_message_dialog_init):
6364          (setup_type): Alert dialogs should not have titles and should 
6365         not be displayed in the taskbar.  (#310443, Carlos Garnacho Parro,
6366         Dennis Cranston)
6367
6368 2005-12-29  Matthias Clasen  <mclasen@redhat.com>
6369
6370         * gtk/gtkliststore.c: 
6371         * gtk/gtktreestore.c: Always call the get_path and get_iter
6372         implementations directly, rather than the current mixture whith
6373         some calls going through the GtkTreeModel interface.
6374
6375         * gtk/gtktreemodelsort.c: 
6376         * gtk/gtkliststore.c: 
6377         * gtk/gtktreestore.c: Remove excessive g_return_if_fail() checks
6378         in static functions.
6379         
6380         * gtk/gtktreedatalist.c: Use the slice allocater for 
6381         GtkTreeDataSortHeader.
6382
6383         * gtk/gtktreedatalist.h: 
6384         * gtk/gtktreedatalist.c (_gtk_tree_data_list_set_header): New function.
6385
6386         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_sort_func): 
6387         * gtk/gtkliststore.c (gtk_list_store_set_sort_func): 
6388         * gtk/gtktreestore.c (gtk_tree_store_set_sort_func): Use it here.
6389
6390 2005-12-27  Matthias Clasen  <mclasen@redhat.com>
6391
6392         * gtk/gtkbindings.h (GtkBindingSignal): 
6393         * gtk/gtkbindings.c (binding_signal_new): Make the
6394         args a flexible array inside the struct, and allocate them
6395         together.
6396
6397 Wed Dec 28 00:45:46 2005  Tim Janik  <timj@gtk.org>
6398
6399         * gtk/gtkctree.c (row_delete): delete GtkCTreeRow as GtkCTreeRow, not
6400         clist rows which crashes in gslice later on.
6401
6402 2005-12-27  Federico Mena Quintero  <federico@ximian.com>
6403
6404         * gtk/gtkfilefilter.c (gtk_file_filter_filter): In the case for
6405         FILTER_RULE_PIXBUF_FORMATS, check that filter_info->mime_type is
6406         not NULL.  Fixes bug #317687.
6407
6408 2005-12-27  Matthias Clasen  <mclasen@redhat.com>
6409
6410         * gdk/x11/gdkevents-x11.c (check_transform): Fix a typo.
6411         (gdk_screen_get_setting): Avoid relocations for the settings
6412         map.
6413
6414         * gdk/x11/gdkproperty-x11.c: Avoid relocations for the list
6415         of standard atoms.
6416
6417         * gtk/gtkbindings.c (gtk_binding_set_new): Avoid copying
6418         the set_name by interning it.
6419
6420 2005-12-26  Matthias Clasen  <mclasen@redhat.com>
6421
6422         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Precache atoms
6423         before calling gdk_window_new().
6424
6425         * gtk/gtktextbtree.c: Use the slice allocator for some other small
6426         auxiliary structures as well.
6427
6428         * gtk/gtkimcontext.c (gtk_im_context_filter_keypress): Clarify
6429         docs.  (#324996)
6430
6431         * gtk/gtktextbtree.c (gtk_text_btree_get_tag_info) 
6432         (gtk_text_btree_remove_tag_info): Use the slice allocator for 
6433         tag info.
6434
6435         * README.in: Mention the stripping of (_F) suffixes.
6436
6437         * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Strip a suffix of 
6438         the form "(_<single character>)", since this is the preferred way
6439         for some languages to indicate accelerators.  (#323956, Yang Hong)
6440
6441         * gtk/gtklabel.c (gtk_label_class_init): Add a gtk-label-select-on-focus
6442         setting.
6443         (gtk_label_grab_focus): And use it here to select the contents of
6444         the label when appropriate.
6445         (gtk_label_class_init): Use the same keybindings for select all/
6446         unselect all as GtkEntry and GtkTextView.
6447
6448         * gtk/gtkdialog.c (gtk_dialog_map): When looking for the initial
6449         focus, avoid leaving a selection in a label.
6450
6451 2005-12-25  Matthias Clasen  <mclasen@redhat.com>
6452
6453         * gtk/gtkwindow.c: Documentation fixes.  (#324815, 
6454         Ross Burton)
6455
6456         * configure.in: Require GLib 2.9.2
6457
6458 2005-12-24  Matthias Clasen  <mclasen@redhat.com>
6459
6460         * gdk/gdkregion-generic.c: 
6461         * gdk/gdkpolyreg-generic.c: 
6462         * gdk/gdkregion.h: 
6463         * gdk/gdkrectangle.c: Inline docs, use g_assert(), avoid 
6464         extra allocation for rectangular regions.
6465
6466 Thu Dec 22 18:53:14 2005  Tim Janik  <timj@gtk.org>
6467
6468         * gtk/gtkobject.[hc]: renamed GUnowned to GInitiallyUnowned.
6469
6470 Thu Dec 22 17:55:11 2005  Tim Janik  <timj@gtk.org>
6471
6472         * gtk/gtkobject.h: parent type fixups in structure declarations.
6473
6474 Thu Dec 22 16:01:27 2005  Tim Janik  <timj@imendio.com>
6475
6476         * gtk/gtkobject.c: derive GtkObject from GUnowned,
6477         so it initially has a floating reference count.
6478         gtk_object_class_init(): installa floating flag handler with
6479         libgobject, so for GtkObjects the flag is stored as GTK_FLOATING
6480         in the ->flags member.
6481
6482         * tests/floatingtest.c: test floating flag uses.
6483
6484 2005-12-21  Matthias Clasen  <mclasen@redhat.com>
6485
6486         * gdk/gdkregion-generic.c: Use the slice allocator
6487         for regions. Still todo: avoid extra allocations for
6488         the single-rectangle case.
6489
6490         * gtk/gtksettings.c (gtk_settings_class_init): Update
6491         class_n_properties after installing color-hash, since
6492         other classes install settings, too.
6493
6494         * gtk/gtkctree.c: 
6495         * gtk/gtkclist.c: Fix some mistakes in the conversion
6496         from mem chunks to slice allocator.
6497
6498         * gtk/gtkiconview.c (adjust_wrap_width): Adjust the 
6499         wrap-width also if an explicit item width is set.  
6500         (#322475, Alex Graveley)
6501         
6502 2005-12-20  Matthias Clasen  <mclasen@redhat.com>
6503
6504         * gtk/gtkiconview.c (gtk_icon_view_button_press): Reset 
6505         pressed_button to -1 after handling a double click, so that
6506         motion events occurring between here and the release event
6507         don't trigger DND.  (#324588, Dave Andreoli)
6508
6509 2005-12-19  Matthias Clasen  <mclasen@redhat.com>
6510
6511         * gtk/gtkcellrenderer.c: 
6512         * gtk/gtkselection.c: 
6513         * gtk/gtkcalendar.c: 
6514         * gtk/gtkitemfactory.c: 
6515         * gdk/gtkcombo.c: 
6516         * gdk/gdkpixbuf-render.c: Documentation updates
6517
6518         * gtk/gtktreemodel.c: 
6519         * gtk/gtkplug.c: 
6520         * gtk/gtkwindow.c: Documentation fixes.
6521
6522 2005-12-19  Michael Natterer  <mitch@imendio.com>
6523
6524         * gtk/gtkentry.c: implement boolean property "truncate-multiline"
6525         which, when enabled, truncates multi-line pastes or drops to their
6526         first line. Fixes bug #322252.
6527
6528         * gtk/gtkfilechooserentry.c (gtk_file_chooser_entry_init): enable
6529         truncate-multiline here.
6530
6531 2005-12-17  Matthias Clasen  <mclasen@redhat.com>
6532
6533         * gtk/gtksettings.c (get_color_hash): Don't crash if
6534         there is no color scheme.  (#324429, Diego Gonzalez)
6535
6536 2005-12-16  Matthias Clasen  <mclasen@redhat.com>
6537
6538         * gtk/gtkfilesystem.c (gtk_file_system_module_load): 
6539         * gtk/gtkimmodule.c (gtk_im_module_load): 
6540         * gtk/gtkthemes.c (gtk_theme_engine_load): 
6541         * gtk/gtkmodules.c (find_module): Use G_MODULE_BIND_LAZY when
6542         opening modules.
6543
6544         * gtk/gtksettings.[hc]: Rework the way the color scheme setting
6545         is inherited. Now the overriding is done on a per-color basis,
6546         rather than for the setting as a whole. This has the effect
6547         that themes can declare defaults for all the symbolic colors they
6548         use by specifying a value for the gtk-color-scheme setting in 
6549         their rc file, while still allowing the XSetting to override
6550         "standard" symbolic colors. The hash table is now available
6551         through the color-hash property.
6552         
6553         * gtk/gtkrc.c: Use the new color-hash property.
6554         
6555 2005-12-14  Matthias Clasen  <mclasen@redhat.com>
6556
6557         * gtk/gtkcontainer.c (_gtk_container_focus_sort): Skip unrealized
6558         children when doing focus sorting.  (#323995, Dan Winship)
6559
6560 2005-12-14  Rodney Dawes  <dobey@novell.com>
6561
6562         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon):
6563         Default to "drive-harddisk" and then fall back to gnome-dev-harddisk
6564         (get_icon_for_mime_type): Look up the mime type icons according to the
6565         Icon Naming Specification and then fall back to the gnome-mime- prefix
6566         for the mime type icons
6567
6568         Fixes #323655
6569         
6570 2005-12-14  Matthias Clasen  <mclasen@redhat.com>
6571
6572         * gtk/gtkdnd.c (gtk_drag_set_icon_name): Warn if the icon
6573         cannot be loaded.  (#323504, Kjartan Maraas)
6574
6575         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add docs 
6576         for the row-activated signal.  (#324044, Davyd Madeley)
6577
6578 2005-12-14  Michael Natterer  <mitch@imendio.com>
6579
6580         * tests/test-images/valid_jpeg_progressive_test: new test image.
6581
6582 Tue Dec 13 09:47:20 2005  Tim Janik  <timj@gtk.org>
6583
6584         * README.in: added a link to the floating reference docs in the
6585         2.10 release NEWS section.
6586
6587 2005-12-12  Matthias Clasen  <mclasen@redhat.com>
6588
6589         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_index): 
6590         Speed this function up, using the fact that visibility is 
6591         constant across segments. (#321548, Paolo Borelli)
6592
6593         * gtk/gtktextbtree.c (_gtk_text_line_char_to_byte_offsets): 
6594         * gtk/gtktextiter.c (gtk_text_iter_backward_chars): Speed up
6595         stepping backwards.  (#320638, Larry Ewing, Paolo Borelli)
6596
6597         * gtk/gtkicontheme.c (ensure_valid_themes): Only broadcast
6598         _GTK_LOAD_ICONTHEMES if we detect a real theme change, not
6599         upon initial theme load.  (#323876, Peter Lund)
6600
6601         * gtk/gtkstatusicon.c (gtk_status_icon_class_init): Register
6602         the size-changed signal correctly.  (#323848, Murray Cumming)
6603
6604         * gtk/gtkmarshalers.list: Add necessary marshaller.
6605
6606         * gtk/gtktextview.c (gtk_text_view_get_border_window_size): Don't
6607         fall thru to the wrong window types.  (#323843)
6608
6609         Make the gtk-color-scheme setting work.
6610         
6611         * gtk/gtksettings.h: 
6612         * gtk/gtksettings.c (_gtk_settings_get_color_hash): Add a getter
6613         that takes care of initializing the color hash if it is not 
6614         already there.  
6615
6616         * gtk/gtkrc.c (gtk_rc_color_scheme_changed, gtk_rc_context_get): 
6617         And use it here.        
6618
6619 2005-12-10  Matthias Clasen  <mclasen@redhat.com>
6620
6621         * gdk/gdk.c (gdk_parse_args): Warn if parsing fails,
6622         not if it succeeds. 
6623
6624 2005-12-09  Matthias Clasen  <mclasen@redhat.com>
6625
6626         * gtk/gtkselection.c (gtk_selection_data_get_uris): Don't
6627         leak list[0].  (#323629, Markku Vire)
6628
6629         * gtk/gtktextbuffer.c (paste_from_buffer): Unref the buffer
6630         when freeing the RequestData.  (#323577)
6631
6632 2005-12-07  Matthias Clasen  <mclasen@redhat.com>
6633
6634         * demos/gtk-demo/iconview_edit.c (set_cell_color): Don't
6635         leak text.
6636
6637         * gtk/gtktoolbutton.c (clone_image_menu_size): Fix a 
6638         variable name clash.  (#323475, Ross Burton)
6639
6640 2005-12-07  Ross Burton  <ross@burtonini.com>
6641
6642         * docs/reference/gtk/tmpl/gtkenums.sgml:
6643         * gtk/gtktoolbutton.c:
6644         If the toolbar mode is ICONS and there is no icon set then show
6645         the label, and vice versa (#322019)
6646
6647 2005-12-07  Matthias Clasen  <mclasen@redhat.com>
6648
6649         * gtk/gtktoolbutton.c (clone_image_menu_size): Fix a 
6650         variable name clash.  (#323475, Ross Burton)
6651
6652         * gtk/gtktreeview.c (gtk_tree_view_key_press): Use the correct
6653         window when synthesizing the key event.  (#323077,
6654         Sadrul Habib Chowdhury)
6655         
6656         (gtk_tree_view_search_key_press_event): Also listen for
6657         GDK_ISO_Left_Tab.  (#323077, Sadrul Habib Chowdhury)
6658
6659         * gtk/gtktextview.c (gtk_text_view_preedit_changed_handler): 
6660         Only scroll if we have focus.  (#316310, Paolo Borelli)
6661
6662         * gtk/gtkfilesystemunix.c (cb_fill_in_mime_type): Fix a C99ism,
6663         spotted by Crispin Flowerday.
6664
6665 2005-12-06  Behdad Esfahbod  <behdad@gnome.org>
6666
6667         * gtk/gtksettings.c (settings_update_font_options): Turn metrics
6668         hinting on (part of #307196)
6669
6670 2005-12-06  Matthias Clasen  <mclasen@redhat.com>
6671
6672         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_reset): Don't
6673         commit from reset, it upstets GtkTextView.
6674
6675         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Be more
6676         careful when turning blinking on and off.
6677         (gtk_text_view_focus_out_event): Make the cursor really invisible
6678         when the focus goes away.  (#323087, Sadrul Habib Chowdhury)
6679         (cursor_blinks): Check the gtk-cursor-blink setting first.
6680
6681         * gtk/gtktreeview.c (gtk_tree_view_key_press): Fix refcounting
6682         issues with new_event and its window.
6683
6684         * gtk/gtkmenu.c (gtk_menu_attach_to_widget): Accept NULL
6685         as a detach func.  (#323386, Jorn Baayen)
6686
6687         * gtk/gtkcalendar.c: Avoid conflict with win32 headers in
6688         the libdate routines.  (#323045, Kazuki Iwamoto)
6689
6690         * gdk/gdk.c (gdk_parse_args): 
6691         * gtk/gtkmain.c (gtk_parse_args): Don't ignore errors
6692         from g_option_context_parse(). 
6693
6694 Tue Dec  6 11:37:59 2005  Tim Janik  <timj@gtk.org>
6695
6696         * gdk/gdkevents.c (gdk_event_new): fix missing hash table 
6697         initialization.
6698
6699 Tue Dec  6 10:32:17 2005  Tim Janik  <timj@gtk.org>
6700
6701         * gtk/gtkstatusbar.c: ported memchunk uses to g_slice, so the code
6702         compiles again.
6703
6704 2005-12-05  Federico Mena Quintero  <federico@ximian.com>
6705
6706         * gtk/gtkfilechooserdefault.c (trap_activate_cb): "event->state &
6707         modifiers", not "event->state && modifiers".  Patch by Sadrul
6708         Habib Chowdhury <imadil@gmail.com>.  Fixes bug #323073.
6709
6710 2005-12-05  Matthias Clasen  <mclasen@redhat.com>
6711
6712         * gtk/gtkwidget.c: 
6713         * gtk/gtkuimanager.c: 
6714         * gtk/gtktreedatalist.c: 
6715         * gtk/gtktext.c: 
6716         * gtk/gtkmain.c: 
6717         * gtk/gtkitemfactory.c: 
6718         * gtk/gtkseparator.[hc]:
6719         * gtk/gtkclist.[hc]: 
6720         * gtk/gtkctree.c:
6721         * gtk/gtkgc.c: Use g_slice instead of mem chunks.
6722
6723 2005-12-05  Michael Natterer  <mitch@imendio.com>
6724
6725         * gdk/x11/gdkevents-x11.c: map the new GtkSettings properties
6726         "timeout-initial", "timeout-repeat", "color-scheme" and
6727         "enable-animations" to X settings.
6728
6729 2005-12-05  Matthias Clasen  <mclasen@redhat.com>
6730
6731         * gdk/gdkevents.c: 
6732         * gdk/gdkcolor.c: Use g_slice instead of mem chunks.
6733
6734         * gtk/gtktreeview.c (gtk_tree_view_key_press): Free new_event
6735         after sending it to the search entry.  (#323209, Crispin Flowerday)
6736
6737         * README.in: Add a note about GTK_FLOATING.
6738
6739         * gtk/gtkobject.h (GTK_OBJECT_FLOATING): Use g_object_is_floating.
6740
6741 2005-12-02  Matthias Clasen  <mclasen@redhat.com>
6742
6743         * gtk/gtktoolbutton.c (clone_image_menu_size): Don't leak
6744         a pixbuf.  (#323024, Paolo Borelli)
6745
6746 2005-12-02  Matthias Clasen  <mclasen@redhat.com>
6747
6748         * gtk/gtkfilesystemunix.c (get_icon_for_mime_type): Don't crash
6749         if mime_type is NULL.  (#322998, Sadrul Habib Chowdhury)
6750
6751 2005-12-02  Michael Natterer  <mitch@imendio.com>
6752
6753         * gtk/gtkmenu.c: applied modified patch from maemo-gtk which
6754         adds a "horizontal-padding" style property. Fixes bug #323036.
6755
6756 2005-12-01  Michael Natterer  <mitch@imendio.com>
6757
6758         Merged modified patch from maemo-gtk that allows to disable
6759         toolbar animations. Addresses bug #142582.
6760
6761         * gtk/gtksettings.c: added boolean property "gtk-enable-animations".
6762         (patch from Christian Neumair)
6763
6764         * gtk/gtktoolbar.c: don't animate toolbar changes if the settings
6765         property is FALSE. Replaced the individual "notify::foo"
6766         connections to GtkSettings by a single "notify" callback and
6767         dispatch internally.
6768
6769 2005-12-01  Michael Natterer  <mitch@imendio.com>
6770
6771         * gtk/gtkmenu.c (gtk_menu_class_init): removed redundant
6772         assignment of widget_class->motion_notify_event
6773
6774 2005-11-29  Matthias Clasen  <mclasen@redhat.com>
6775
6776         * gtk/gtktoggleaction.c (gtk_toggle_action_class_init): Add 
6777         an active property.  (#322673, Jorn Baayen)
6778
6779         Properly handle model changes in GtkTreeSelection: (#322569,
6780         Milosz Derezynski)
6781         
6782         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach): 
6783         Get a reference to the model, and stop the iteration if the model
6784         of the treeview is changed on the way.
6785
6786         * gtk/gtktreeprivate.h: 
6787         * gtk/gtktreeselection.c (_gtk_tree_selection_emit_changed): New 
6788         private function to emit the GtkTreeSelection::changed signal.
6789
6790         * gtk/gtktreeview.c (gtk_tree_view_set_model): Call 
6791         _gtk_tree_selection_emit_changed() when the model changes.
6792
6793 2005-11-28  Federico Mena Quintero  <federico@ximian.com>
6794
6795         Fixes the critical warnings from bug #317999, thus fixing the bug
6796         completely:
6797
6798         * gtk/gtkfilechooserdefault.c
6799         (gtk_file_chooser_default_get_paths): In SELECT_FOLDER mode,
6800         use _gtk_file_chooser_get_current_folder_path() instead of fetching the
6801         impl->current_folder directly.  The latter may be null if we are
6802         in RELOAD_NONE state.
6803
6804 2005-11-28  Federico Mena Quintero  <federico@ximian.com>
6805
6806         Fix bug #321560, based on a patch by Bogdan Nicula (bogdanni@hotmail.com):
6807
6808         * gtk/gtkfilechooserdefault.c (up_folder_handler): Don't add the
6809         current_folder to the pending select paths here; the path bar will
6810         give it to us now.
6811         (path_bar_clicked): Add the child_path to the pending select paths
6812         here.
6813         (show_and_select_paths): Don't filter out folders.
6814         (show_and_select_paths): Don't take separate arguments for
6815         only_one_path and multiple paths.
6816
6817         * tests/autotestfilechooser.c (test_folder_switch_and_filters):
6818         New test about preserving the filters when we change folders.
6819
6820 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
6821
6822         * gtk/gtkscale.c (_gtk_scale_format_value): Insert an LRM, to prevent
6823         -20 to come out as 20- in RTL locales.  (#322571, Tze'ela Hebron)
6824
6825         * gtk/gtkaction.c (gtk_action_sync_button_stock_id) 
6826         (connect_proxy): Buttons use the label property for stock ids.  (#322565,
6827         Milosz Derezynski)
6828
6829         * gtk/gtkiconview.c (update_text_cell, update_pixbuf_cell): Correctly
6830         handle the cell list and indices into it.  (#321856)
6831
6832 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
6833
6834         * gtk/gtktooltips.c (gtk_tooltips_timeout): Set timer_tag to 0 when
6835         the timeout is done.  (#322291, Jean-Yves Lefort)
6836
6837 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
6838
6839         * gtk/gtkfilechooserdefault.c (shortcuts_key_press_event_cb): Make
6840         F2 work for renaming bookmarks.  (#320822, Jaap A. Haitsma, patch
6841         by Paolo Borelli)
6842
6843 2005-11-28  Tor Lillqvist  <tml@novell.com>
6844
6845         * gdk/win32/gdkwindow-win32.c (gdk_window_set_urgency_hint):
6846         Implement the conditional use of FlashWindowEx() properly for MSVC
6847         compilations. The code was confusingly assuming that if compiled
6848         with a "new" compiler, it will only be run on "new" Windows
6849         versions. We want it to run on "old" versions, too, even if
6850         compiled with a "new" compiler. There are two orthogonal issues:
6851         whether the compiler defines the necessary API in its headers, and
6852         whether it is present at run-time. (#318077)
6853
6854         * gtk/gtkcalendar.c (gtk_calendar_init): Use GetLocaleInfo() on
6855         Windows to get the localized weekday and month names. strftime()
6856         in the Microsoft C library returns strings in the default codepage
6857         for the locale of the process, not the system codepage. Thus
6858         g_locale_to_utf8() isn't useable on the return value from
6859         strftime(). (#322603)
6860
6861 2005-11-27  Matthias Clasen  <mclasen@redhat.com>
6862
6863         * gtk/gtkmessagedialog.c (gtk_message_dialog_new_with_markup): 
6864         Fix an example.  (#322493, Elie De Brauwer)
6865         
6866         Fix two memory handling problems in GtkTreeView: (#322350, 
6867         Søren Sandmann)
6868         
6869         * gtk/gtktreeview.c (gtk_tree_view_destroy) 
6870         (gtk_tree_view_set_model): Remove all references to nodes in
6871         the old model.
6872         (gtk_tree_view_real_collapse_row): Unmark expanded_collapsed_node
6873         before removing the children.
6874
6875         * gtk/gtkcolorbutton.c (gtk_color_button_init): Don't leak a 
6876         PangoLayout here.  (#322505, Paolo Borelli)
6877
6878 2005-11-27  Tor Lillqvist  <tml@novell.com>
6879
6880         Once again rework Win32 window decoration code. Doesn't break
6881         #104514. The dialogs in gtk-demo now have the same decorations and
6882         behaviour as on X11. Tried to fix #322516 but it seems very hard
6883         to make the trivial sample program there behave as expected. OTOH,
6884         simply moving the gtk_window_decorate() call in the #322516 sample
6885         program after the call to gtk_widget_show() helps...
6886             
6887         * gdk/win32/gdkwindow-win32.c (set_or_clear_style_bits): Revert to
6888         the correct semantics. Each call to gdk_window_set_decorations()
6889         which calls this function is supposed to affect all decorations.
6890
6891         (decorate_based_on_hints): New function, looks at both geometry
6892         hints and type hint and sets window decorations based on
6893         that. Consolidate code from gdk_window_set_geometry_hints() and
6894         gdk_window_set_type_hint() here.
6895
6896         (gdk_window_set_geometry_hints, gdk_window_set_type_hint): Call
6897         decorate_based_on_hints().
6898
6899 2005-11-25  Dom Lachowicz <cinamod@hotmail.com>
6900
6901         * modules/engines/ms-windows/*.[ch]: Merge with gtk-wimp's CVS.
6902         Includes improved menu icon spacing, [+]/[-] expander drawing,
6903         status-bar gippie drawing, and notebook tab drawing.
6904         
6905 2005-11-24  Michael Natterer  <mitch@imendio.com>
6906
6907         * gtk/gtktoolbar.h (struct _GtkToolbar): changed two private guint
6908         that used to hold signal handler IDs to two guint of padding.
6909
6910         * gtk/gtktoolbar.c (struct _GtkToolbarPrivate): added them as
6911         gulong here.
6912
6913         (gtk_toolbar_screen_changed): changed accordingly.
6914
6915 Wed Nov 23 18:55:47 2005  Tim Janik  <timj@imendio.com>
6916
6917         * gtk/gtkobject.[hc]: deprecated floating/sink API and implemented it
6918         in terms of the GObject floating/sink API.
6919
6920         * gtk/gtkaboutdialog.c:
6921         * gtk/gtkaction.c:
6922         * gtk/gtkcellview.c:
6923         * gtk/gtkclist.c:
6924         * gtk/gtkcolorsel.c:
6925         * gtk/gtkcombobox.c:
6926         * gtk/gtkfilechooserdefault.c:
6927         * gtk/gtkiconview.c:
6928         * gtk/gtkinvisible.c:
6929         * gtk/gtkitemfactory.c:
6930         * gtk/gtklayout.c:
6931         * gtk/gtkmenu.c:
6932         * gtk/gtkmenutoolbutton.c:
6933         * gtk/gtknotebook.c:
6934         * gtk/gtkprogress.c:
6935         * gtk/gtkrange.c:
6936         * gtk/gtkspinbutton.c:
6937         * gtk/gtkstatusicon.c:
6938         * gtk/gtktext.c:
6939         * gtk/gtktextview.c:
6940         * gtk/gtktoolbar.c:
6941         * gtk/gtktoolbutton.c:
6942         * gtk/gtktoolitem.c:
6943         * gtk/gtktreeitem.c:
6944         * gtk/gtktreeview.c:
6945         * gtk/gtktreeviewcolumn.c:
6946         * gtk/gtkuimanager.c:
6947         * gtk/gtkviewport.c:
6948         * gtk/gtkwidget.c:
6949         * gtk/gtkwindow.c:
6950         ported to use GObject's g_object_ref_sink().
6951
6952         * gtk/gtkcolorsel.c:
6953         * gtk/gtkfilechooserdefault.c:
6954         * gtk/gtkaboutdialog.c:
6955         fixed compiler warnings.
6956
6957 2005-11-23  Matthias Clasen  <mclasen@redhat.com>
6958
6959         * gtk/gtksettings.c (gtk_settings_class_init): Add some docs
6960         about gtk-color-scheme.
6961
6962 2005-11-23  Behdad Esfahbod  <behdad@gnome.org>
6963
6964         * configure.in (enable_explicit_deps): Fix typo when checking
6965         libtool config deplibs_check_method. Moreover, enable explicit
6966         deps if we get anything other than pass_all from libtool. (part of
6967         #318750)
6968
6969 2005-11-23  Matthias Clasen  <mclasen@redhat.com>
6970
6971         * gtk/updateiconcache.c (write_csource): Don't create a big
6972         string, since Visual C++ doesn't like strings longer than 64k. 
6973         (#322238, Kazuki IWAMOTO
6974
6975         * gtk/gtkentry.c: Include gtkimcontextsimple.h  (#322235,
6976         Kazuki IWAMOTO)
6977
6978 2005-11-23  Michael Natterer  <mitch@imendio.com>
6979
6980         * gtk/gtkrc.c (gtk_rc_reset_widgets): don't leak all toplevel
6981         windows on other screens (correctly remove all temporary
6982         references).
6983
6984 2005-11-23  Michael Natterer  <mitch@imendio.com>
6985
6986         Added symbolic themable colors. Patch is a merged version of
6987         proposals from Matthias and maemo-gtk. Fixes bug #114355.
6988
6989         * configure.in: require glib >= 2.9.1 for refcountable hashtables.
6990
6991         * gtk/gtksettings.c: added property "color-scheme" which is a
6992         string defining colors like "foreground:black\nbackground:grey".
6993         Automatically provide a name->GdkColor hash table mapping for the
6994         color scheme.
6995
6996         * gtk/gtkrc.[ch]: added list of color hashes that works like the
6997         list of icon factories. Append the color scheme hash from
6998         GtkSettings if it exists. Extended gtkrc syntax to allow defining
6999         and referencing of logical colors. Also allow to modulate colors
7000         in gtkrc by using arbitrary expressions of mix(), shade(),
7001         lighter() and darker(). Added internal function
7002         _gtk_rc_style_get_color_hashes().
7003
7004         * gtk/gtkstyle.[ch]: keep a private list of color hashes around.
7005         Get the list from _gtk_rc_style_get_color_hashes(). Export
7006         internal function _gtk_style_shade() (used by above color
7007         expressions). Added public API gtk_style_lookup_color() which
7008         looks up a logical color by name.
7009
7010         * gtk/gtk.symbols: add gtk_style_lookup_color
7011
7012         * tests/testgtkrc: use symbolic colors for making
7013         the scrollbars red.
7014
7015 2005-11-22  Michael Natterer  <mitch@imendio.com>
7016
7017         Made button-press timeouts which work like key repeat timeouts
7018         configurable. Addresses bug #142582:
7019
7020         * gtk/gtksettings.c: added properties "gtk-timeout-initial" and
7021         "gtk-timeout-repeat" which defalt to 200/20 (ms).
7022
7023         Use the values from GtkSettings instead of hardcoding them
7024         (the repeat value is either taken as-is for fast repeat or
7025         multiplied by 5 for slow repeat). Changed all places to use these
7026         two standard initial/repeat timings:
7027
7028         * gtk/gtkcalendar.c (unchanged 200/20)
7029         * gtk/gtknotebook.c (unchanged 200/100)
7030         * gtk/gtkpathbar.c (changed from 300/150 to 200/100)
7031         * gtk/gtkrange.c (changed from 250/100 to 200/100)
7032         * gtk/gtkspinbutton.c (unchanged 200/20)
7033
7034 2005-11-21  Anders Carlsson  <andersca@imendio.com>
7035
7036         * configure.in:
7037         * gtk/Makefile.am:
7038         * gdk/Makefile.am:
7039         * gdk/quartz/*:
7040         Add quartz backend.
7041         
7042         * docs/tools/Makefile.am:
7043         Only build docshooter when the X11 backend is used.
7044         
7045         * gtk/gtkplug-stub.c:
7046         Include gtkplug.h here.
7047         
7048         * gtk/gtksocket-stub.c:
7049         Include gtksocket.h here.
7050         
7051 2005-11-21  Matthias Clasen  <mclasen@redhat.com>
7052
7053         * gtk/gtkinputdialog.c: Convert GtkInputDialog to 
7054         g_type_class_add_private.
7055
7056         * gtk/gtksocket.c: Convert GtkSocket to g_type_class_add_private.
7057
7058         * gtk/gtkmenu.c: Convert GtkMenu to g_type_class_add_private.
7059
7060         * gtk/gtk.symbols:
7061         * gtk/gtkcombobox.[hc]: Add a tearoff-title property,
7062         with getter and setter.  (#316482, Olexiy Avramchenko)
7063
7064         * tests/testcombo.c (main): Test gtk_combo_box_set_title
7065
7066         * gtk/gtkpathbar.c: Merge remaining fixes from the 2.8 branch,
7067         pointed out by Michael Natterer.
7068
7069         Fix for bug #321542, Benedikt Meurer:
7070         
7071         * gtk/gtkcombobox.c (gtk_combo_box_set_active_internal):
7072         Emit notify::active.
7073         
7074         (gtk_combo_box_child_show, gtk_combo_box_child_hide): Use
7075         g_signal_emit, not g_signal_emit_by_name.
7076
7077 2005-11-18  Matthias Clasen  <mclasen@redhat.com>
7078
7079         Fix crashes in connection with pathbar scrolling (#321560,
7080         Bogdan Nicula)
7081         
7082         * gtk/gtkpathbar.c (gtk_path_bar_update_slider_buttons): 
7083         Stop scrolling when desensitising slider buttons.
7084         (gtk_path_bar_scroll_timeout, gtk_path_bar_slider_button_press): 
7085         And use it here.  
7086
7087         * gtk/gtkpathbar.h (struct _GtkPathBar): Add a separate
7088         scrolling_down flag.
7089
7090 2005-11-18  Matthias Clasen  <mclasen@redhat.com>
7091
7092         * gtk/gtkpathbar.c (button_clicked_cb): Fix a C99ism.
7093         (#321777, Jens Granseuer)
7094
7095         * gtk/gtkaction.c (disconnect_proxy): Disconnect the
7096         sync callback for the visibility property.  (#321761,
7097         Philip Langdale)
7098
7099         Turn off input methods in invisible entries, since
7100         they are confusing.  (#317002, James Su)
7101         
7102         * gtk/gtkentry.c (gtk_entry_set_visibility): Toggle input
7103         methods if visibility changes.
7104         (popup_targets_received): Don't show the input method
7105         menu if the entry is invisible.  
7106
7107 2005-11-17  Matthias Clasen  <mclasen@redhat.com>
7108
7109         * README.in: Add a note about range arrow sensitivity.
7110
7111         * perf/treeview.c: const correctness fixes
7112         found by Arjan van de Ven and gcc.
7113
7114 2005-11-16  Michael Natterer  <mitch@imendio.com>
7115
7116         * gtk/gtkimage.c (animation_timeout): call
7117         gtk_window_process_updates() so the animation keeps running even
7118         if the main loop is busy with sources that eat a lot of cpu with
7119         high priority. Fixes bug #321444.
7120
7121         (gtk_image_new_from_animation): document the fact that the
7122         animation will stop running if the main loop is busy with sources
7123         that have priorities higher than G_PRIORITY_DEFAULT.
7124
7125         * tests/testimage.c: added test case that shows an animation even
7126         though a cpu-eating idle function is running.
7127
7128 2005-11-16  Michael Natterer  <mitch@imendio.com>
7129
7130         * gdk/x11/gdkevents-x11.c (_gdk_events_uninit): new internal
7131         function which destroys the display's event source. Also removes
7132         the source from the global display_sources list and unrefs it.
7133
7134         * gdk/x11/gdkprivate-x11.h: declare the function.
7135
7136         * gdk/x11/gdkdisplay-x11.c (gdk_display_x11_dispose): call it
7137         instead of half-destroying the source here.
7138
7139 2005-11-15  Matthias Clasen  <mclasen@redhat.com>
7140
7141         * gtk/gtktreestore.c (gtk_tree_store_move): Fix a memory
7142         leak.  (#321032, Peter Zelezny)
7143
7144 2005-11-15  Michael Natterer  <mitch@imendio.com>
7145
7146         * gdk/x11/gdkdisplay-x11.c (gdk_display_x11_finalize): destroy
7147         display->xid_ht as late as possible (right before XCloseDisplay)
7148         because it still needs to be around when the display's screens are
7149         finalized. (#85715)
7150
7151 2005-11-14  Matthias Clasen  <mclasen@redhat.com>
7152
7153         * gtk/gtkselection.c (gtk_selection_data_set_uris): Don't
7154         leak result.  (#321441, Tommi Komulainen)
7155
7156 2005-11-14  Matthias Clasen  <mclasen@redhat.com>
7157
7158         * gtk/gtkicontheme.c (gtk_icon_theme_get_icon_sizes):
7159         Don't crash if there is no builtin icon.
7160
7161 2005-11-14  Michael Natterer  <mitch@imendio.com>
7162
7163         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_set_property):
7164         removed redundant calls to g_object_notify().
7165
7166 2005-11-13  Matthias Clasen  <mclasen@redhat.com>
7167
7168         * gdk/gdkcolor.c (gdk_color_parse): Documentation 
7169         improvements.  (#321338)
7170
7171         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Make
7172         limit an inclusive boundary.  (#321299)
7173
7174 2005-11-12  Michael Natterer  <mitch@imendio.com>
7175
7176         * gtk/Makefile.am: fixed icon rules so gtkbuiltincache.h is only
7177         rebuilt if needed.
7178
7179 2005-11-12  Dom Lachowicz <cinamod@hotmail.com>
7180
7181         * modules/engines/ms-windows/msw_style.c: Bug #313627. Make win32 
7182         theme's handling of toolbars, handleboxes, and menubars more in-line
7183         with Microsoft's IE style.
7184         * modules/engines/ms-windows/*.c: Indentation cleanups
7185         
7186 2005-11-12  Matthias Clasen  <mclasen@redhat.com>
7187
7188         Make builtin icons work in gtk_window_set_icon_name() 
7189         (#321046, Maxim Udushlivy)
7190
7191         * gtk/gtkicontheme.c (insert_theme): Always insert the default
7192         theme.
7193         (ensure_valid_themes): Call _gtk_icon_theme_ensure_builtin_cache()
7194         from here.
7195         (theme_lookup_icon, find_builtin_icon): ...and not from here.
7196         (gtk_icon_theme_lookup_icon): Remove an unncessary assert.
7197         (gtk_icon_theme_get_icon_sizes): Also check builtin icons.
7198
7199 2005-11-12  Tor Lillqvist  <tml@novell.com>
7200
7201         * gtk/gtkfilesystemwin32.c (filename_get_info): Don't hide
7202         dotfiles, no such convention on Win32. Just hide files with the
7203         hidden attribute. (#314627)
7204
7205 2005-11-11  Federico Mena Quintero  <federico@ximian.com>
7206
7207         * gtk/gtkfilechooserdefault.c (shortcuts_insert_path): Do not
7208         check whether the path is a folder.  It is useful to bookmark
7209         files as well (e.g. todo.txt), and this will also help
7210         performance.
7211         (shortcuts_add_bookmark_from_path): Likewise.
7212         (shortcuts_activate_iter): Change folders or select files, as
7213         appropriate.
7214
7215 2005-11-11  Federico Mena Quintero  <federico@ximian.com>
7216
7217         * tests/autotestfilechooser.c (main): Use
7218         g_log_set_default_handler() instead of explicitly setting a
7219         handler for each domain.
7220
7221         * gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): Only get
7222         the base path of the volume if it is mounted.
7223
7224 2005-11-11  Michael Natterer  <mitch@imendio.com>
7225
7226         Added per-stepper API for GtkRange's stepper sensitivity as
7227         discussed in bug #321056:
7228
7229         * gtk/gtkenums.h: added GtkSensitivityType which can be
7230         { AUTO, ON, OFF }.
7231
7232         * gtk/gtkrange.[ch]: added properties "lower-stepper-sensitivity"
7233         and "upper-stepper-sensitivity" and public getters/setters for
7234         them. Changed stepper drawing to honor the new properties.
7235
7236         * gtk/gtk.symbols: added the new symbols.
7237
7238 2005-11-10  Matthias Clasen  <mclasen@redhat.com>
7239
7240         * gtk/gtkcombobox.c: Add show-popup and hide-popup signals and
7241         emit them when the popup is shown or hidden.  (#162531, Tommi
7242         Komulainen)
7243
7244         * tests/testcombo.c: Add an example of popuplating a combobox
7245         on click.
7246
7247         * gtk/gtktreeview.c (gtk_tree_view_motion_resize_column): Another
7248         erroneous semicolon.
7249
7250         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get): Remove an erroneous
7251         semicolon. 
7252
7253         Don't corrupt odd keymaps (#316638, Kean Johnston)
7254         
7255         * gdk/x11/gdkkeys-x11.c (set_symbol): Auxiliary function to
7256         handle frobbing keymaps with odd numbers of syms/code.
7257         
7258         * gdk/x11/gdkkeys-x11.c (update_keymaps): Use set_symbol() to 
7259         frob the keymap.
7260
7261         Improve navigation to parent folders.  (#318444, Andrei Yurkevich)
7262         
7263         * gtk/gtkpathbar.[hc]: Add a child_path argument to
7264         the path_clicked signal.
7265         * gtk/gtkfilechooserdefault.c (path_bar_clicked): Select the
7266         child_path, if it is provided.
7267         * gtk/marshalers.list (path_bar_clicked): Add the necessary
7268         glue.
7269
7270         * gtk/gtkmenu.c: Fix some compiler warnings. (#321141,
7271         Kjartan Maraas)
7272         
7273         * gtk/gtk.symbols: 
7274         * gtk/gtktreeview.h: 
7275         * gtk/gtktreeview.c: Implement a getter for headers-clickable.
7276         (#163851, Richard Hult)
7277
7278 2005-11-10  Michael Natterer  <mitch@imendio.com>
7279
7280         Applied patch from maemo-gtk that addresses many issues wrt
7281         display migration and display closing (bug #85715).
7282
7283         * gdk/gdkdisplay.c (gdk_display_dispose): don't just set the
7284         default display to NULL when it's closed. Instead set the most
7285         recently opened display as new default (if one exists).
7286
7287         * gdk/gdkpango.c (on_renderer_display_closed): fixed signature
7288         of this callback.
7289
7290         * gdk/gdkscreen.c (gdk_screen_dispose): check if the GCs still
7291         exist before unrefing them.
7292
7293         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): if the screen
7294         is closed, allow destruction of the root window.
7295
7296         * gdk/x11/gdkdisplay-x11.c: moved some stuff from finalize() to
7297         dispose(), free stuff that was leaked before.
7298
7299         * gdk/x11/gdkevents-x11.c (_gdk_x11_events_uninit_screen): check if
7300         the xsettings_client still exists before destroying it.
7301
7302         * gdk/x11/gdkkeys-x11.c: added finalization and free the allocated
7303         X resources.
7304
7305         * gdk/x11/gdkpixmap-x11.c: moved stuff from finalize() to new
7306         dispose() implementation.
7307
7308         * gdk/x11/gdkscreen-x11.c: moved stuff from finalize() to
7309         dispose() and check if it still exists before unrefing it. Set
7310         their pointers to NULL/None *after* upchaining in dispose(),
7311         because X11 implementations of members of the parent class still
7312         need them for their own destruction.
7313
7314         * gdk/x11/gdkvisual-x11.c: removed finalize() implementation which
7315         was g_error()ing when finalizing a visual.
7316
7317         * gtk/gtkclipboard.c (gtk_clipboard_finalize): don't use
7318         get_clipboard_widget() because it would create the widget if it
7319         doesn't exist. Use g_object_get_data() directly instead.
7320
7321         * gtk/gtktextdisplay.c (on_renderer_display_closed): fixed signature
7322         of this callback.
7323
7324 2005-11-10  Simos Xenitellis  <simos@gnome.org>
7325
7326         * configure.in: Added Tatar (tt) to ALL_LINGUAS.
7327
7328 Wed Nov  9 16:29:42 2005  Tim Janik  <timj@imendio.com>
7329
7330         * gtk/gtkrange.c: patch from maemo-gtk that changes GtkRange
7331         to render its arrows insensitive when the adjustment is in
7332         its min or max position. this makes range arrow behaviour 
7333         consistent with spin button behaviour. (#321056)
7334
7335 2005-11-09  Tor Lillqvist  <tml@novell.com>
7336
7337         * gdk/gdkinternals.h
7338         * gdk/gdk.c (gdk_debug_keys[]): Add new GDK_DEBUG_DRAW flag to
7339         the GdkDebugFlag enum.
7340
7341         * gdk/win32/gdkdrawable-win32.c: Use DRAW to trigger GDK_NOTEs in
7342         this file instead of MISC. Now asking for MISC will give mainly
7343         window manipulation debugging output with the Win32 backend.
7344
7345 2005-11-09  Tor Lillqvist  <tml@novell.com>
7346
7347         * gdk/win32/gdkwindow-win32.c: Remove unnecessary includes.
7348
7349         (_gdk_win32_get_adjusted_client_rect): Remove this two-line
7350         function which was used only in one place.
7351
7352         (get_outer_rect): Use _gdk_win32_adjust_client_rect().
7353
7354         (gdk_window_set_geometry_hints): If we have identical minimum and
7355         maximum size hints, remove the resize and maximize
7356         decorations/functions. (#104514)
7357
7358         If we have a maximum size hint, remove the maximize
7359         decoration/function but ensure the resize decoration/function is
7360         available. Otherwise ensure both resize and maximize
7361         decorations/functions are there.
7362
7363         (set_or_clear_style_bits): Factored out common code from
7364         gdk_window_set_decorations() and gdk_window_set_functions(). 
7365
7366         Hack the window style setting once more: Only touch the window
7367         style bits corresponding to the GdkWMDecoration or GdkWMFunction
7368         parameter bitmasks. Hopefully this finally is the correct thing to
7369         do. We used to clear all other bits than those that were being
7370         set, or set all other bits than those that were being cleared.
7371
7372         Take into account that adding or removing decorations leaves the
7373         window's outer size unchanged, i.e., the client area's size and
7374         position change. This is apparently not what we want, so change
7375         also the window's (outer) position and size appropriately so that
7376         the client area's position and size stay constant.
7377
7378         gtk-demo's color selector dialog is now non-resizable like on X11
7379         (I tested with metacity in GNOME). Torn off menus are shrinkable
7380         vertically but have a maximum size, and are not maximizable or
7381         minimizable, like on X11.
7382
7383         (gdk_window_set_decorations, gdk_window_set_functions): Let
7384         set_or_clear_decorations() do most of the job.
7385
7386         * gdk/win32/gdkprivate-win32.h: Remove declaration of
7387         _gdk_win32_get_adjusted_client_rect().
7388
7389 2005-11-09  Tor Lillqvist  <tml@novell.com>
7390
7391         * gdk/win32/gdkwindow-win32.h (struct _GdkWindowImplWin32)
7392         * gdk/win32/gdkwindow-win32.c (gdk_window_impl_win32_init,
7393         gdk_window_get_type_hint, gdk_window_get_type_hint): Store the
7394         type hint. Implement gdk_window_get_type_hint() by just returning
7395         the hint stored.
7396
7397 2005-11-09  Tor Lillqvist  <tml@novell.com>
7398
7399         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
7400         Remove code that has been permanently ifdeffed out for two years.
7401
7402 2005-11-08  Matthias Clasen  <mclasen@redhat.com>
7403
7404         * gdk/gdkgc.c (gdk_gc_finalize): Unref tile and stipple when
7405         finalizing a gc.  (#320789, Nickolay V. Shmyrev)
7406
7407         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Ignore
7408         icons if they would make the request large enough to cause
7409         Xlib to loose the connection.  (#320909, Claudio Saavedra)
7410
7411 2005-11-08  Michael Natterer  <mitch@imendio.com>
7412
7413         * gdk/gdk.symbols
7414         * gdk/gdkwindow.h
7415         * gdk/x11/gdkwindow-x11.c: added gdk_window_get_type_hint() (patch
7416         extracted from maemo-gtk). Fixes bug #320872.
7417
7418 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
7419
7420         * gtk/gtkfilechooserdefault.c (shortcuts_reorder): Don't
7421         looks the bookmark label when reordering.  (#320720, Jeremy Cook)
7422
7423         * gtk/gtkpathbar.[hc]: Set focus-on-click to FALSE for all buttons.
7424         Don't grab focus when a slider button is pressed, instead, use
7425         a bit in the pathbar struct to determine whether to scroll up
7426         or down.  (#314486, Carlos Garnacho)
7427
7428         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): 
7429         Don't popup the completions if the focus has already been
7430         moved somewhere else.  (#319914, Christian Persch)
7431
7432         * gtk/gtktoolitem.c (_gtk_tool_item_toolbar_reconfigured): 
7433         Raise the drag_window after reconfiguring the 
7434         toolbar.  (#320803, Christian Persch)
7435
7436         * gtk/gtk.symbols: 
7437         * gtk/gtkfilechooserbutton.h: 
7438         * gtk/gtkfilechooserbutton.c: Add a focus-on-click property
7439         with setter and getter.  (#318945, Christian Persch)
7440         
7441 Mon Nov  7 16:15:16 2005  Tim Janik  <timj@imendio.com>
7442
7443         * configure.in: fixed missing $X_CFLAGS setup in case x11.pc is present.
7444
7445 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
7446
7447         * configure.in: Adjust to the stock icon changes.
7448         
7449 2005-11-07  Tor Lillqvist  <tml@novell.com>
7450
7451         * gdk/win32/gdkcursor-win32.c (pixbuf_to_hbitmaps_normal):
7452         Correct the calculation of maskstride. (#320152, Peter Zelezny)
7453         
7454 2005-11-06  Michael Natterer  <mitch@imendio.com>
7455
7456         * gtk/Makefile.am (icons): fixed rule to actually create the
7457         symlinks, erroring out if anything goes wrong.
7458
7459 2005-11-06  Tor Lillqvist  <tml@novell.com>
7460
7461         * gtk/updateiconcache.c (build_cache): Can't rename a file if the
7462         target exists on Win32. First rename the target temporarily, then
7463         if the renaming of the source to target fails, restore the
7464         original name for the target.
7465
7466         * gtk/Makefile.am: Use EXEEXT in the dependency on gtk-update-icon-cache.
7467
7468 2005-11-06  Tor Lillqvist  <tml@novell.com>
7469
7470         (pixbuf_to_hbitmaps_alpha_winxp): Use an 1-bit mask bitmap,
7471         like pixbuf_to_hbitmaps_normal().
7472         (_gdk_win32_pixbuf_to_hicon_supports_alpha): Check
7473         G_WIN32_IS_NT_BASED() first, so we can pretend being on Win9x by
7474         setting the G_WIN32_PRETEND_WIN9X environment variable.
7475         
7476 2005-11-06  Tor Lillqvist  <tml@novell.com>
7477
7478         Make icon masks work on Win98 (#320152, Peter Zelezny)
7479
7480         * gdk/win32/gdkcursor-win32.c (create_color_bitmap): Take also a
7481         parameter for the depth of the bitmap, so that this function can
7482         be used to create 1-bit bitmaps, too.
7483         (pixbuf_to_hbitmaps_normal): Create an 1-bit bitmap for the mask,
7484         and initialize it properly.
7485
7486 2005-11-04  Matthias Clasen  <mclasen@redhat.com>
7487
7488         Store builtin stock icons in an icon cache, instead of
7489         populating a hash table with pixbufs at startup, to save both
7490         memory and startup time.
7491
7492         * gtk/stock-icons/*: Reorganize the icons in a directory structure
7493         suitable for gtk-update-icon-cache, and rename them to match the
7494         stock ids.
7495
7496         * gtk/gtkiconcache.[hc]: Support non-mmapped icon caches, and
7497         add _gtk_icon_cache_has_icon_in_directory().
7498
7499         * gtk/updateiconcache.c: Support a --source <VARIABLE> argument
7500         to store the contents of the icon cache in a C header.
7501
7502         * gtk/gtkbuiltincache.h: Generated private header which contains 
7503         the icon cache for the builtin icons.
7504
7505         * gtk/gtkicontheme.c: Create a GtkIconCache for the builtin
7506         icons, and use that in addition to the hash table whenever
7507         builtin icons are searched.
7508
7509         * gtk/gtkiconfactory.c: Add GTK_ICON_SOURCE_STATIC_ICON_NAME and
7510         use it for static stock ids. 
7511         (get_default_icons): Don't add the builtin
7512         icons to the icon theme, just register the stock ids.
7513         (render_fallback_image): Take the fallback image out of the
7514         builtin icon cache.
7515         
7516         * gtk/Makefile.am: Remove stock-icons from SUBDIRS and add 
7517         the necessary machinery to rebuild gtkbuiltincache.h.
7518
7519 2005-11-04  Michael Natterer  <mitch@imendio.com>
7520
7521         * gtk/gtkrc.c (gtk_rc_reparse_all_for_settings): applied patch
7522         from maemo-gtk that changes the mtime check for rc files from
7523         '>' to '!=', otherwise theme changes go unnoticed when turning
7524         back the clock (Tommi Komulainen).
7525
7526 2005-11-04  Tor Lillqvist  <tml@novell.com>
7527
7528         * gtk/gtkstatusicon.c (gtk_status_icon_set_tooltip): Plug memory
7529         leak on Win32.
7530
7531 2005-11-03  Tor Lillqvist  <tml@novell.com>
7532
7533         * gdk/win32/gdkcursor-win32.c: As there is only one GdkDisplay in
7534         the Win32 backend, check that GdkDisplay* parameters are equal to
7535         _gdk_display instead of using the unnecessarily general
7536         GDK_IS_DISPLAY().
7537
7538         (pixbuf_to_hbitmaps_alpha_winxp): Rename the variables for the
7539         color bitmap to have "color" in their name, for similarity with
7540         pixbuf_to_hbitmaps_normal(). Create a color bitmap for the mask,
7541         too, instead of creating a b&w bitmap with CreateBitmap(). Set up
7542         the mask bitmap's contents, ones for those pixels in the color
7543         bitmap where the alpha is zero, zero for other pixels. We used to
7544         use an uninitialized mask bitmap! This meant that icons and
7545         cursors created presumably worked more or less by accident.
7546         Totally blank icons with zero alpha everywhere (as used by
7547         gtktrayicon.c) definitely did not work as expected.
7548
7549         * gtk/Makefile.am: Include gtkstatusicon.c on all platforms.
7550
7551         * gtk/gtkstatusicon.c: Implement for Win32. Use code from
7552         gtktrayicon-win32.c as applicable. (gtktrayicon-win32.c is not
7553         necessary and can be removed from CVS. It has never been mentioned
7554         in gtk/Makefile.am.) No tray icon widget, GtkImage or GtkTooltips
7555         are used on Win32. One label widget is used (but never shown) as
7556         gtk_widget_render_icon() needs a widget.
7557
7558         Ifdefs used as necessary in several places. It might be cleaner to
7559         split out the backend-specific parts to separate files, or at
7560         least collect them into separate blocks in the file.
7561
7562         (wndproc): New function. Window procedure to monitor mouse events
7563         in the system tray icon. Call gtk_status_icon_button_press() as
7564         needed.
7565         (create_tray_observer): New function. Creates a hidden window that
7566         only serves as a tray icon message observer.
7567
7568         * tests/teststatusicon.c (icon_activated): Position the dialog
7569         with GTK_WIN_POS_CENTER.
7570         (do_quit): New function, hide and unref the GtkStatusIcon, and
7571         call gtk_main_quit().
7572         (popup_menu): Add a Quit menu item that calls do_quit().
7573         
7574 2005-11-02  Tor Lillqvist  <tml@novell.com>
7575
7576         * gdk/win32/gdkcolor-win32.c
7577         * gdk/win32/gdkscreen-win32.c
7578         * gdk/win32/gdkwindow-win32.c: Whitespace consistency
7579         fixes. Remove superfluous test for GdkWindow* parameters being
7580         non-NULL. Testing GDK_IS_WINDOW() is enough. As there is only one
7581         GdkScreen and one GdkDisplay in the Win32 backend, use those
7582         variables instead of the getter functions. For GdkDisplay* and
7583         GdkScreen* parameters, check that they are equal to the
7584         corresponding singleton variables instead of the more general
7585         GDK_IS_DISPLAY() or GDK_IS_SCREEN().
7586
7587 2005-11-02  Matthias Clasen  <mclasen@redhat.com>
7588
7589         * gtk/gtktextview.c: Remove some g_return_if_fail() from
7590         static functions, replace some others by g_assert().
7591         
7592         * gtk/gtktextview.c (selection_motion_event_handler) 
7593         (gtk_text_view_start_selection_drag): Keep track of the original
7594         selection boundaries during a drag selection, in order to correctly
7595         decide when to extend or shrink the selection.  (#320167,
7596         reported by Arvind S N, patch by Paolo Borelli)
7597
7598         * gtk/gtktextbtree.c (_gtk_text_line_char_to_byte_offsets): 
7599         * gtk/gtktextiter.c (gtk_text_iter_backward_chars): Replace
7600         manual offset calculations by g_utf8_offset_to_pointer().
7601         (#320360, Paolo Borelli)
7602
7603 Tue Nov  1 16:18:24 2005  Tim Janik  <timj@imendio.com>
7604
7605         * gtk/gtkrbtree.[hc]: get rid of GAllocator usage, allocate and free 
7606         nodes via the g_slice_*() API.
7607         _gtk_rbtree_new(): fixed wrong node allocation via g_new().
7608
7609 2005-11-01  Tor Lillqvist  <tml@novell.com>
7610
7611         * gdk/win32/gdkprivate-win32.h
7612         * gdk/win32/gdkglobals-win32.c
7613         * gdk/win32/gdkmain-win32.c (_gdk_windowing_init): Add more
7614         pre-interned GdkAtoms and pre-registered clipboard formats. Sort
7615         their declarations, definitions and assignments into a more
7616         logical and consistent order.
7617
7618         * gdk/win32/gdkmain-win32.c (_gdk_win32_cf_to_string): Include the
7619         CF_ prefix for the predefined clipboard format names. Put quotes
7620         around registered format names to distinguish them.
7621         
7622         * gdk/win32/gdkproperty-win32.c (gdk_property_change): Return
7623         immediately with a warning if the property type is STRING, TEXT,
7624         COMPOUND_TEXT or SAVE_TARGETS, as these are X11-specific that we
7625         should never pretend to handle on Win32. Handle only UTF8_STRING
7626         here, other formats with delayed rendering. Use \uc1 instead of
7627         \uc0 when generating Rich Text Format for easier testability on
7628         XP, where WordPad misinterprets \uc0 encoded characters. Add more
7629         GDK_NOTE debugging output for Clipboard operations.
7630
7631         * gdk/win32/gdkselection-win32.c: Debugging printout improvements.
7632         (gdk_selection_convert): Don't pretent to handle STRING, just
7633         UTF8_STRING. Streamline error handling, don't unnecessarily have a
7634         GError which then isn't used for anything anyway if it gets set.
7635         (gdk_win32_selection_add_targets): Skip also STRING, TEXT,
7636         COMPOUND_TEXT and SAVE_TARGETS in addition to UTF8_STRING.
7637
7638         * config.h.win32.in: Sync with what configure produces.
7639
7640         * configure.in: Don't look for X_PACKAGES unless building for
7641         x11. (#313986, John Ehresman)
7642
7643 2005-10-28  Erdal Ronahi  <erdal.ronahi@gmail.com>
7644
7645         * configure.in: Added ku (Kurdish) to ALL_LINGUAS
7646                         Wondered why there was no ku there before??
7647
7648 2005-10-28  Matthias Clasen  <mclasen@redhat.com>
7649
7650         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): Add the popup
7651         window to the toplevels window group.  (#319912, Christian Persch)
7652
7653 2005-10-28  Kristian Rietveld  <kris@gtk.org>
7654
7655         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_deleted): fix
7656         stupid thinko.
7657
7658 2005-10-28  Matthias Clasen  <mclasen@redhat.com>
7659
7660         * gtk/gtkdnd.c (gtk_drag_get_cursor): Fix the anchor of the default
7661         drag cursors.  (#319200, Federico Mena Quintero)
7662
7663         * gtk/gtktreeview.c (gtk_tree_view_search_key_press_event): Handle
7664         Shift-G to go to the previous match, like firefox.  (#320061, Christian 
7665         Neumair)
7666
7667         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_build_level): Fix a
7668         C99ism.  (#320000, Kazuki Iwamoto)
7669
7670         * gtk/gtkaboutdialog.c (gtk_about_dialog_init): Add the little 
7671         stars.  (#319985, Bastien Nocera)
7672
7673         * gtk/gtktreeview.c (gtk_tree_view_search_entry_flush_timeout): Return
7674         FALSE, so we don't flush repeatedly.  (#319151, Alexander Larsson)
7675
7676 2005-10-26  Michael Natterer  <mitch@imendio.com>
7677
7678         Fix bug #319974:
7679
7680         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
7681         make sure that setting any of pixbuf/stock-id/icon-name resets the
7682         others because they are mutually exclusive, and that unsetting any
7683         of them only resets the pixbuf and nothing else. Also added
7684         some missing g_object_notify().
7685
7686         (gtk_cell_renderer_pixbuf_get_property): simplified calls to
7687         g_value_set_object().
7688
7689         (gtk_cell_renderer_pixbuf_create_stock_pixbuf)
7690         (gtk_cell_renderer_pixbuf_create_named_icon_pixbuf): added
7691         g_object_notify ("pixbuf").
7692
7693 2005-10-27  Matthias Clasen  <mclasen@redhat.com>
7694
7695         * gtk/gtktreeview.c (gtk_tree_view_button_press): Be more 
7696         careful about initializing cell_area.  (#319382, Tommi
7697         Komulainen)
7698
7699         * gtk/gtkcombobox.c (gtk_combo_box_key_press): Don't eat
7700         Ctrl-PageUp/PageDown.  (#318670, Christian Neumair)
7701
7702         * demos/gtk-demo/clipboard.c (paste_received): Only set the
7703         text if it is not NULL.  (#319930, Thomas Klausner)
7704
7705         * gtk/gtkselection.c (gtk_selection_data_get_pixbuf): Close the
7706         loader before trying to get the pixbuf.  (#319930, Thomas Klausner)
7707
7708 2005-10-26  Matthias Clasen  <mclasen@redhat.com>
7709
7710         * gtk/gtkfilesystem.c (gtk_file_system_module_load): 
7711         * gtk/gtkthemes.c (gtk_theme_engine_load): 
7712         * gtk/gtkimmodule.c (gtk_im_module_load): Use G_MODULE_BIND_LAZY
7713         when dlopening modules.  (#319557, Laszlo Peter)
7714
7715 2005-10-26  Matthias Clasen  <mclasen@redhat.com>
7716
7717         * gtk/gtktextbtree.c (gtk_text_btree_resolve_bidi): Only use text
7718         segments when determining text direction.  (#319065, Tommi Komulainen)
7719
7720         * gtk/gtktreeview.c (gtk_tree_view_destroy): Don't crash
7721         on duplicate destroy.  (#318953, Gustavo Carneiro)
7722
7723         * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_new_with_dialog): 
7724         Point out that destroy-with-parent is a bad idea for the dialog
7725         passed to this function.  (#318943, Christian Persch)
7726
7727         * */Makefile.am: use $(GLIB_MKENUMS) instead of 
7728         glib-mkenums.  (#318582, Damien Carbery)
7729
7730         * gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Clarify
7731         docs.  (#317682, Christian Neumair)
7732
7733         * gdk/x11/gdkdnd-x11.c: Remove an extra const which doesn't
7734         seem to affect the placement of the data in the readonly 
7735         section, and causes problems with some compilers.  (#317844)
7736
7737 2005-10-25  Matthias Clasen  <mclasen@redhat.com>
7738
7739         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
7740         Fix some issues with background drawing in RTL.  (#318781,
7741         Eric Cazeaux)
7742
7743         * tests/Makefile.am:
7744         * tests/testentrycompletion.c: Apply a patch by Christian
7745         Persch to add property editors.
7746
7747         * gtk/gtkstatusicon.c: Emit activate on single-click,
7748         not on double-click, change proposed by Milosz Derezynski.
7749
7750 2005-10-25  Kristian Rietveld  <kris@gtk.org>
7751
7752         Fixes #311955, reported by Markku Vire; and a lot more.
7753
7754         * gtk/gtktreemodelfilter.c: Made this thing work correctly.
7755         Levels can now have invisible nodes cached, functions have been
7756         rewritten/refactored to take this into account; also the logic in
7757         some functions has been corrected.
7758         
7759         Each referenced node now references all visible children or a single
7760         invisible child, in order to be able to monitor all changes in the
7761         child model required for correct operation.
7762
7763         When a virtual root is set, all nodes on the virtual root level are
7764         referenced.
7765
7766         At last, a bunch of random bug fixes and comment updates.
7767
7768 2005-10-25  Matthias Clasen  <mclasen@redhat.com>
7769
7770         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Add some
7771         more docs.  (#319722, Paolo Borelli)
7772
7773         * gdk/x11/gdkxftdefaults.c (init_xft_settings): Make the 
7774         initialization of screen_x11->xft_rgba more explicit.  (#319627,
7775         Bogdan Nicula)
7776
7777         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Fix whitespace
7778         in a blurb.  (#319499, Francisco Javier F. Serrador)
7779
7780 2005-10-24  Matthias Clasen  <mclasen@redhat.com>
7781
7782         Add settings to hide the input method and Unicode control character
7783         submenus in the context menus of GtkEntry and GtkTextView.  
7784         
7785         * gdk/x11/gdkevents-x11.c: Map GTK+ settings to X settings.
7786         
7787         * gtk/gtksettings.c (gtk_settings_class_init): Declare GTK+ settings here.
7788
7789         * gtk/gtktextview.c (popup_targets_received): 
7790         * gtk/gtkentry.c (popup_targets_received): Use the settings here.
7791
7792 2005-10-24  Kristian Rietveld  <kris@gtk.org>
7793
7794         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): emitting
7795         row-has-child-toggled when the level is not in the cache does not
7796         make sense.  (This bug probably crept in during the early stages
7797         of GtkTreeModelSort when there wasn't a correct row-has-child-toggled
7798         implementation yet),
7799         (gtk_tree_model_sort_real_unref_node): only get the child iter
7800         when we will actually also use it.
7801
7802 2005-10-22  Michael Natterer  <mitch@imendio.com>
7803
7804         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): check for the
7805         widget being realized, in addition to being visible, to avoid
7806         running into precondition check in gtk_tree_view_get_cell_area().
7807         (approved by Kris).
7808
7809 2005-10-22  Dom Lachowicz <cinamod@hotmail.com>
7810
7811         * modules/engines/ms-windows/msw_style.c (setup_msw_rc_style): 
7812         Experimentally, scrollbar steppers can shrink to 8 pixels on 
7813         Win32. Reflect that in the theme.
7814         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Experimentally,
7815         there is a 1-pixel border between a scrollbar and its child
7816         in ScrolledWindows on Win32. Reflect that in the theme.
7817         
7818 2005-10-20  Matthias Clasen  <mclasen@redhat.com>
7819
7820         * gtk/gtklabel.c (gtk_label_create_window): Use GDK_WINDOW_CHILD
7821         for the selection window.  (#318806, Alex Larsson)
7822
7823 2005-10-18  Federico Mena Quintero  <federico@ximian.com>
7824
7825         Fixes bug #317999:
7826
7827         * tests/autotestfilechooser.c
7828         (test_button_folder_states_for_action): Test that we have either
7829         $cwd or the explicitly-set folder.
7830         (test_reload_sequence): Likewise.
7831
7832         * gtk/gtkfilechooserdefault.c
7833         (gtk_file_chooser_default_get_current_folder): If our reload_state
7834         is RELOAD_EMPTY, return a GtkFilePath corresponding to $cwd.
7835
7836 2005-10-14  Tor Lillqvist  <tml@novell.com>
7837
7838         * gdk/win32/gdkdisplay-win32.c: Remove the clipboard viewer code.
7839         It didn't really do anything useful, and was just confusing and
7840         incomplete. Comments claimed we don't do delayed rendering, but in
7841         fact we do, for images. (The delayed rendering code has other
7842         problems, though, see #168173.) The clipboard viewer code was
7843         probably even buggy (the WM_CHANGECBCHAIN handled didn't propagate
7844         the message when necessary). It was just test code, it said so in
7845         a comment. Add something similar back later if necessary.
7846
7847         (_win32_on_clipboard_change,
7848         _gdk_win32_register_clipboard_notification): Remove.
7849
7850         (gdk_display_supports_selection_notification,
7851         gdk_display_request_selection_notification): Always just return
7852         FALSE. We didn't generate any GDK_OWNER_CHANGE events anywhere.
7853
7854 2005-10-13  Tor Lillqvist  <tml@novell.com>
7855
7856         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't treat
7857         Alt-Enter specially. It does not have any special meaning and
7858         should be passed on to the application. (#318378, Tim Evans)
7859
7860 2005-10-13  Tor Lillqvist  <tml@novell.com>
7861
7862         Set visual depth to 24 for 32 bits-per-pixel devices on
7863         Win32. This allows gdk_drawable_real_draw_pixbuf() to use the
7864         optimized composite_0888() function rather than the slower image
7865         dithering functions to draw pixbufs (#313993, John Ehresman)
7866
7867         * gdk/win32/gdkimage-win32.c (_gdk_win32_new_image): Use
7868         _gdk_windowing_get_bits_for_depth() to initialize
7869         GdkImage::bits_per_pixel.
7870         (_gdk_windowing_get_bits_for_depth): Return 32 bits for depth 24.
7871
7872         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use
7873         _gdk_windowing_get_bits_for_depth() to initialize
7874         BITMAPINFOHEADER::biBitCount.
7875
7876         * gdk/win32/gdkvisual-win32.c (_gdk_visual_init): Set
7877         GdkVisual::depth to 24 even if GetDeviceCaps(BITSPIXEL) returns
7878         32.
7879
7880 2005-10-12  Stefan Kost  <ensonic@users.sf.net>
7881
7882         * demos/gtk-demo/appwindow.c: (about_cb):
7883           use PACKAGE_VERSION,bump year (#318654)
7884
7885 2005-10-11  Matthias Clasen  <mclasen@redhat.com>
7886
7887         * gtk/gtktextbtree.c (_gtk_text_btree_delete): Try to match an off 
7888         toggle here with the matching on toggle if it immediately follows. 
7889         This is a common case, and handling it here prevents quadratic blowup 
7890         in cleanup_line() below.  (#317125)
7891
7892         * gtk/gtktextsegment.h: 
7893         * gtk/gtktextsegment.c (_gtk_char_segment_new_from_two_strings): Pass
7894         the character counts into this function instead of computing them
7895         again.
7896
7897 2005-10-10  Tommi Komulainen  <tommi.komulainen@iki.fi>
7898
7899         * gtk/gtkfilechooser.h (GtkFileChooserError): Add ALREADY_EXISTS error
7900         code.
7901         * gtk/gtkfilechooserdefault.c
7902         (gtk_file_chooser_default_add_shortcut_folder): Return an error code
7903         when the shortcut already exists in the sidebar.  (#147521)
7904
7905 2005-10-09  Matthias Clasen  <mclasen@redhat.com>
7906
7907         * tests/testcombo.c: Demonstrate how to use custom widgets in
7908         a GtkComboBox.  
7909
7910 2005-10-07  Federico Mena Quintero  <federico@ximian.com>
7911
7912         Fixes bug #317999:
7913
7914         * tests/autotestfilechooser.c (test_reload_sequence): Ensure that
7915         the the result of gtk_file_chooser_get_folder() is NULL or
7916         non-NULL at the right times.  Log the tests.
7917         (test_button_folder_states): New test for the initial states of
7918         the current folder in GtkFileChooserButton.
7919         (main): Test that the number of warnings/errors/critical errors is
7920         zero.
7921
7922         * gtk/gtkfilechooser.c (gtk_file_chooser_get_current_folder):
7923         Clarify the documentation on when this can return NULL.
7924         (gtk_file_chooser_get_current_folder_uri): Likewise.
7925
7926         * gtk/gtkfilechooserbutton.c (struct
7927         _GtkFileChooserButtonPrivate): Added a folder_has_been_set flag;
7928         we use it to keep track of whether a folder has been set.
7929         (gtk_file_chooser_button_map):  Implement.  If no folder has been
7930         loaded before, we at least try to load $cwd here.
7931         (gtk_file_chooser_button_constructor): If the construct-time
7932         dialog already has a folder set, turn on our folder_has_been_set
7933         flag.
7934         (dialog_current_folder_changed_cb): Turn on our
7935         folder_has_been_set flag.
7936
7937 2005-10-07  Michael Natterer  <mitch@gimp.org>
7938
7939         * gtk/gtkfilechooserdefault.c: remove some explicit #defines of
7940         PROFILE_FILE_CHOOSER because they break compilation after the
7941         removal of <unistd.h>.
7942
7943 2005-10-07   Matthias Clasen  <mclasen@redhat.com>
7944
7945         * gtk/gtkfilechooserdefault.c: Properly fix the unistd.h include
7946         by moving it out of the profiling ifdef.
7947
7948         * gtk/gtkfilechooserdefault.c: Remove a redundant (and
7949         unconditional) include of unistd.h  (#318211, Kazuki Iwamoto)
7950
7951         * gtk/gtktexttag.c (gtk_text_attributes_ref): Use
7952         g_return_val_if_fail(), not g_return_if_fail().  (#318412,
7953         Kazuki Iwamoto)
7954
7955 2005-10-06  Matthias Clasen  <mclasen@redhat.com> 
7956                 
7957         * gtk/gtk.symbols:
7958         * gtk/gtktextbuffer.h:
7959         * gtk/gtktextbuffer.c: Add a readonly has-selection property
7960         with a getter.  (#318161, Paolo Borelli)
7961
7962 2005-10-05  Matthias Clasen  <mclasen@redhat.com>
7963
7964         * README.in: Start collecting release notes for 2.10.
7965
7966         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Readd the memory
7967         leak fix, since the assertion failures were traced to 
7968         an xchat bug.  (#314696)
7969         
7970         * gtk/gtkstyle.c (gtk_style_detach):
7971         (gtk_style_attach):  Documentation improvements.
7972         (gtk_style_detach): Assert that the attach_count is > 0.
7973
7974 2005-10-04  Federico Mena Quintero  <federico@ximian.com>
7975
7976         * gtk/gtkfilechooserdefault.c (switch_to_shortcut): Take a
7977         shortcut position, not a ShortcutsIndex, to make the function more
7978         generic.
7979         (home_folder_handler): Pass the resolved index to
7980         switch_to_shortcut(), rather than just SHORTCUTS_HOME.
7981         (desktop_folder_handler): Likewise for SHORTCUTS_DESKTOP.
7982         (gtk_file_chooser_default_class_init): Add a "quick-bookmark"
7983         binding signal, and bind it to Alt-1, Alt-2. ..., Alt-0.  These
7984         make the respective key switch to the first, second, ..., tenth
7985         bookmark.
7986         (quick_bookmark_handler): Implement.
7987
7988 2005-10-04  Federico Mena Quintero  <federico@ximian.com>
7989
7990         * gtk/gtkpathbar.c (get_dir_name): Don't special-case Home and
7991         Desktop; just use their real names on the file system for the
7992         user-visible names.
7993
7994         * gtk/gtkfilechooserdefault.c
7995         (gtk_file_chooser_default_class_init): Add a "desktop-folder"
7996         binding signal, and bind it to M-d by default.
7997         (desktop_folder_handler): Implement the default handler.
7998         (home_folder_handler): Use a helper function.
7999         (switch_to_shortcut): New helper function.
8000         (shortcuts_append_home): Don't special-case the name of "Home";
8001         just use the folder name.
8002
8003 2005-10-04  Tor Lillqvist  <tml@novell.com>
8004
8005         * gtk/gtkcalendar.c (gtk_calendar_init): Make it compile without
8006         HAVE__NL_TIME_FIRST_WEEKDAY. (#317910, Mathias Hasselmann)
8007
8008 2005-10-04  Matthias Clasen  <mclasen@redhat.com>
8009
8010         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Revert the change
8011         from yesterday, since it leads to assertion failures.  (#317879,
8012         Sebastian Bacher)
8013
8014 2005-10-03  Matthias Clasen  <mclasen@redhat.com>
8015
8016         * gtk/gtkcalendar.c (gtk_calendar_init): Call 
8017         calendar_compute_days() after setting priv->week_start.
8018
8019 2005-10-03  Matthias Clasen  <mclasen@redhat.com>
8020
8021         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Unref the style when
8022         removing it from the hash table.  (#314696, Benjamin Berg)
8023
8024 2005-10-01  Tor Lillqvist  <tml@novell.com>
8025
8026         * gdk/win32/gdkdrawable-win32.c (blit_from_pixmap): In case
8027         BitBlt() fails with ERROR_INVALID_HANDLE, the most probable cause
8028         is that the the desktop isn't visible because the session has been
8029         switched, the screen is locked, or a terminal server session
8030         disconnected, so no error message necessary. (#137796)
8031
8032         It is of course remotely possible that BitBlt() failing with
8033         ERROR_INVALID_HANDLE might also be caused by some other
8034         problem. We could strive for perfection and track whether the
8035         desktop is visible by using WTSRegisterSessionNotification() and
8036         handling WM_WTSESSION_CHANGE. I think that's overdoing it just for
8037         this issue, though. If we would track desktop visibility, we
8038         should then avoid even trying to update the display at all while
8039         the desktop isn't visible.
8040
8041 2005-09-30  Matthias Clasen  <mclasen@redhat.com>
8042
8043         * gtk/gtkcalendar.c (gtk_calendar_init): Another attempt
8044         to correct the calculations for the first week day. We may
8045         just have to remove this code if too many locales turn out 
8046         to have broken data. 
8047
8048         * gtk/gtkimage.c (gtk_image_expose): Don't leak pixbuf in
8049         some cases.  (#317611, Tommi Komulainen)
8050
8051         * gtk/gtksocket-x11.c (_gtk_socket_windowing_size_request):
8052         Prevent overflow when storing size hints in an unsigned
8053         short variable. Tracked down by Ray Strode and Søren Sandmann.
8054
8055 2005-09-29  Matthias Clasen  <mclasen@redhat.com>
8056
8057         * gtk/gtkbutton.c (gtk_button_set_image): Check arguments.  (#317491,
8058         Paolo Borelli)
8059
8060         * gtk/gtkpaned.c (gtk_paned_grab_notify): Stop drags when being
8061         grab shadowed.  (#317332)
8062
8063 2005-09-29  Tor Lillqvist  <tml@novell.com>
8064
8065         * gtk-zip.sh.in: DLLs are always in bin nowadays, no need to test.
8066
8067 2005-09-28  Federico Mena Quintero  <federico@ximian.com>
8068
8069         * tests/autotestfilechooser.c (test_reload_sequence): Oops, return
8070         if the unmap test fails.
8071         (test_reload_sequence): Use gtk_widget_show_now() instead of
8072         gtk_widget_show() for the dialog.
8073         Thanks to Tim Janik for noticing these.
8074
8075 2005-09-28  Federico Mena Quintero  <federico@ximian.com>
8076
8077         * tests/testcellrenderertext.c: New file with a set of tests for
8078         GtkCellRendererText.  The idea is to run a text renderer through
8079         most of its interesting property values to see that it works
8080         correctly.
8081
8082         * tests/Makefile.am: Added testcellrenderertext.
8083
8084         * gtk/gtkfilechooserdefault.c (load_set_model): Mark the
8085         entry/exit of this function for profiling.
8086         (gtk_file_chooser_default_style_set): Mark the start/end of the
8087         calls to the parent class and the the signal emission for profiling.
8088
8089 2005-09-29  Tor Lillqvist  <tml@novell.com>
8090
8091         * gtk/gtkmain.c (_gtk_get_localedir): The locale directory is
8092         passed to bindtextdomain() which isn't UTF-8-aware, so convert to
8093         system codepage using g_win32_locale_filename_from_utf8().
8094         (#317457, Kazuki Iwamoto)
8095
8096 2005-09-28  Matthias Clasen  <mclasen@redhat.com>
8097
8098         * gtk/gtkselection.c (_gtk_selection_request): Free mult_atoms 
8099         here. (#317039, Paolo Borelli)
8100
8101         * gtk/gtktexttag.h: 
8102         * gtk/gtktexttag.c (gtk_text_attributes_ref): Return the attributes
8103         to make this function work as boxed copy function.  (#317455,
8104         Gustavo Carneiro)
8105
8106         * gtk/gtkclipboard.c (request_image_received_func): Don't unref
8107         NULL.  (#316828, Tor Lillqvist)
8108
8109 2005-09-28  Tor Lillqvist  <tml@novell.com>
8110
8111         * modules/input/imime.c: Include <config.h>. (#317444, Kazuki
8112         Iwamoto)
8113
8114 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
8115
8116         Don't reload the current folder unnecessarily on ::map().
8117
8118         * gtk/gtkfilechooserprivate.h (ReloadState): New enum to represent
8119         the reloading state.
8120         (struct _GtkFileChooserDefault): Added a "reload_state" field.
8121
8122         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init):
8123         Initialize impl->reload_state.
8124         (gtk_file_chooser_default_map): Check the impl->reload_state; load
8125         a default folder if no folder has been set, or reload the current
8126         one only if we had been unmapped first.
8127         (gtk_file_chooser_default_update_current_folder): Set the
8128         reload_state to RELOAD_HAS_FOLDER.
8129         (gtk_file_chooser_default_unmap): Implement, and set the
8130         reload_state to RELOAD_WAS_UNMAPPED.
8131         (shortcuts_model_create): Don't call shortcuts_add_bookmarks()
8132         here; they'll get (re)loaded on ::map() anyway.
8133
8134         * gtk/gtkfilechooserwidget.c
8135         (gtk_file_chooser_widget_constructor): Don't set a default folder here.
8136
8137         * tests/autotestfilechooser.c (test_action_widgets): Don't take in
8138         a dialog; build it ourselves.
8139         (test_reload): New test to ensure that we don't load the default
8140         folder more than once, and that we reload it when
8141         unmapping/remapping.
8142         (get_impl_from_dialog): New utility function.
8143         (test_widgets_for_current_action): Use get_impl_from_dialog().
8144
8145 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
8146
8147         * gtk/gtkfilechooserdefault.c
8148         (gtk_file_chooser_default_constructor): Mark the entry/exit of
8149         this function for profiling.
8150         (check_icon_theme): Likewise.
8151         (change_icon_theme): Likewise.
8152         (settings_notify_cb): Likewise.
8153         (gtk_file_chooser_default_screen_changed): Likewise.
8154         (update_chooser_entry): If the selection is empty, clear the file
8155         name entry only if we are in CREATE_FOLDER mode.  In SAVE mode,
8156         nothing will be selected when the user starts typeahead in the
8157         treeview, and we don't want to clear the file name entry in that
8158         case --- the user could be typing-ahead to look for a folder name.
8159         Fixes bug #308332, patch by Jürg Billeter.
8160
8161 2005-09-27  Matthias Clasen  <mclasen@redhat.com>
8162
8163         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
8164         Pop below the entry if there's more free space below the entry
8165         than above.  (#316948, Tommi Komulainen)
8166
8167 2005-09-26  Federico Mena Quintero  <federico@ximian.com>
8168
8169         Do not create the save mode-specific widgets in the open modes, so
8170         that we don't carry their baggage around.
8171
8172         * gtk/gtkfilechooserdefault.c
8173         (gtk_file_chooser_default_constructor): Don't create the
8174         save_widgets here.
8175         (save_widgets_create): Set the impl->save_widgets directly here,
8176         instead of passing the widgets back to the caller.  Also, pack
8177         them into the impl's box.
8178         (update_appearance): Create or destroy the save widgets as
8179         appropriate.  Set the action of the save_file_name_entry here.
8180         (shortcuts_add_current_folder): Set the active item in the
8181         save_folder_combo only if it exists.
8182         (gtk_file_chooser_default_set_property): Don't set the action of
8183         the save_file_name_entry here.
8184         (gtk_file_chooser_default_update_current_folder): Set the base
8185         folder of the save_file_name_entry only if the entry exists.
8186         (shortcuts_drag_data_received_cb): Cast the selection_data->data
8187         to (const char *) since that's what shortcuts_drop_uris() expects.
8188         (file_list_drag_data_received_cb): Likewise, for
8189         g_uri_list_extract_uris().
8190
8191 2005-09-26  Tor Lillqvist  <tml@novell.com>
8192
8193         * gdk/win32/gdkwindow-win32.c (gdk_window_shape_combine_mask): Set
8194         the shaped flag here, too. (#316871)
8195         (gdk_window_shape_combine_region): Currently unimplemented, so
8196         don't do anything to the shaped flag here.
8197
8198 2005-09-26  Matthias Clasen  <mclasen@redhat.com>
8199
8200         Fix #316871, reported by Dan Winship:
8201         
8202         * gdk/gdkwindow.h (struct _GdkWindowObject): Add a shaped flag.
8203
8204         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_mask) 
8205         (gdk_window_shape_combine_region): Set it here.
8206
8207         * gdk/gdkwindow.c (gdk_window_invalidate_maybe_recurse): Don't
8208         remove the child area for shaped windows.
8209
8210 2005-09-23  Matthias Clasen  <mclasen@redhat.com>
8211
8212         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_finalize):
8213         Don't leak expander pixbufs.  (#316946, Tommi Komulainen)
8214
8215 2005-09-22  Michael Natterer  <mitch@imendio.com>
8216
8217         Renamed GtkCellRendererKeys to GtkCellRendererAccel to be
8218         consistent with GTK+ terminology:
8219
8220         * gtk/gtkcellrendererkeys.[ch]
8221         * tests/testkeys.c: removed...
8222
8223         * gtk/gtkcellrendereraccel.[ch]
8224         * tests/testaccel.c: ...and added.
8225
8226         * gtk/Makefile.am
8227         * gtk/gtk.h
8228         * gtk/gtk.symbols
8229         * tests/Makefile.am: changed accordingly.
8230
8231 2005-09-22  Matthias Clasen  <mclasen@redhat.com>
8232
8233         * gtk/gtkwidget.c (gtk_widget_class_init): Fix the documentation
8234         for the grab-broken-event signal, noticed by Damon Chaplin.
8235
8236 2005-09-21  Tor Lillqvist  <tml@novell.com>
8237
8238         * gdk/win32/gdkselection-win32.c (gdk_selection_convert,
8239         gdk_text_property_to_text_list_for_display,
8240         gdk_text_property_to_utf8_list_for_display,
8241         gdk_win32_selection_add_targets,
8242         _gdk_win32_selection_convert_to_dib): Free return value from
8243         gdk_atom_name().
8244         (gdk_text_property_to_text_list_for_display): Drop GError variable
8245         that isn't actually used after being set.
8246
8247 2005-09-20  Johan Dahlin  <jdahlin@async.com.br>
8248
8249         * gtk/gtkentry.c (gtk_entry_set_completion): Mention NULL in 
8250         documentation.
8251
8252 2005-09-20  Tor Lillqvist  <tml@novell.com>
8253
8254         * gdk/win32/gdkselection-win32.c
8255         (gdk_selection_owner_get_for_display): Do return the correct owner
8256         for CLIPBOARD (i.e., the owner of the Windows Clipboard, if it is
8257         a window GDK knows about). The reason to return NULL seems to have
8258         gone when in the fix for bug #163702 the artificial
8259         GDK_SELECTION_CLEAR event generation was removed from
8260         gdk_selection_send_notify_for_display(). Fixes bug #316552.
8261
8262 2005-09-20  Matthias Clasen  <mclasen@redhat.com>
8263
8264         Avoid unnecessary XkbGetState() calls and XkbStateNotify
8265         events.  (#151555, Søren Sandmann)
8266
8267         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Use 
8268         XkbSelectEventDetails() to select XkbStateNotify events
8269         for only the state we care about.
8270
8271         * gdk/x11/gdkprivate-x11.h:
8272         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_state_changed): Pass
8273         the event into the function and update the keymap state from
8274         the state information contained in the event. Adjust all callers.
8275         
8276 2005-09-19  Matthias Clasen  <mclasen@redhat.com>
8277
8278         * gtk/gtkiconview.c: Use g_list_nth_data() instead of g_list_nth()->data
8279         in multiple places to avoid segfaults if the index is out of range.  
8280         (#316422, Guillaume Cottenceau)
8281         (gtk_icon_view_set_drag_dest_item): 
8282         (gtk_icon_view_scroll_to_path): Fix a typo in the docs.  (#316419,
8283         #316424, Guillaume Cottenceau)
8284
8285 2005-09-18  Hans Breuer  <hans@breuer.org>
8286
8287         * gtk/gtktrayicon-win32.c : now handling events by hard-coded 
8288         g_signal_emit_by_name() - will break when gtkstatusicon.c changes.
8289
8290 2005-09-18  Hans Breuer  <hans@breuer.org>
8291
8292         * gdk/gdk.symbols gdk/win32/gdkwin32.h gdk/win32/gdkcursorwin32.c : export
8293         _gdk_win32_pixbuf_to_hicon() as gdk_win32_pixbuf_to_hicon_libgtk_only()
8294         * gtk/gtktrayicon-win32.c : a lot of debug spew but it has started to show
8295         the icon and is blinking with teststatusicon. More to come ...
8296
8297 2005-09-18  Hans Breuer  <hans@breuer.org>
8298
8299         * gtk/makefile.msc.in : fix typo for GTK_VER; define HAVE_CONFIG_H
8300         cause gtkprogressbar.c has #include <config.h> conditionally; less
8301         noise from generated gtk.def
8302         * gtk/stock-icons/makefile.msc gdk/makefile.msc tests/makefile.msc : updated
8303         
8304         * gtk/gtktrayicon-win32.c : dummy implmentation to make gtk compile.
8305         For me it works as well as the *NIX implemenation, that is not at all.
8306
8307         * gdk/win32/gdkproperty-win32.c : implement gdk_atom_intern_static_string()
8308
8309         * gdk/win32/gdkwindow-win32.c(gdk_window_set_urgency_hint) : only use
8310         only use (WINVER >= 0x0500) when available from the SDK. Otherwise fall
8311         back to true dynamic linking of FlashWindowEx. Makes gtk+ work on NT4.0
8312         again - if compiled properly.
8313
8314         * tests/teststatusicon.c : don't use GNOME icons for testing, but icons
8315         already coming with Gtk+. Makes it compile on win32.
8316
8317 2005-09-18  Guilherme de S. Pastore  <gpastore@cvs.gnome.org>
8318
8319         * README.cvs-commits: fixed some tiny typos
8320
8321 2005-09-16  Tor Lillqvist  <tml@novell.com>
8322
8323         * modules/engines/ms-windows/msw_style.c (draw_extension,
8324         draw_box_gap): Check whether the widget actually is a GtkNotebook
8325         before treating it as such. Drop some unneeded local variables,
8326         use parameter with same information instead. (#316412)
8327
8328 2005-09-15  Federico Mena Quintero  <federico@ximian.com>
8329
8330         * tests/autotestfilechooser.c: Start a set of automated tests for
8331         the file chooser.  The only test in there right now doesn't pass
8332         yet.  It specifies the intended behavior of the first optimization
8333         of a series which I'll do on the file chooser (see
8334         http://primates.ximian.com/~federico/news-2005-09.html#14 for the
8335         details of this optimization).
8336
8337         * tests/Makefile.am: Added autotestfilechooser.c.
8338
8339         * gtk/gtkfilechooserprivate.h (struct
8340         _GtkFileChooserDialogPrivate): Move all the file chooser's private
8341         structures to here, so that they can be accessed by
8342         tests/autotestfilechooser.c:  _GtkFileChooserDialogPrivate,
8343         _GtkFileChooserWidgetPrivate, LoadState, _GtkFileChooserDefault.
8344
8345         * gtk/gtkfilechooserdialog.c: See above.
8346
8347         * gtk/gtkfilechooserwidget.c: See above.
8348
8349         * gtk/gtkfilechooserdefault.c: See above.
8350
8351 Thu Sep 15 15:27:55 2005  Tim Janik  <timj@imendio.com>
8352
8353         * gtk/gtkwindow.c: 
8354         gtk_window_map_event(): new function to work around lost unmap requests.
8355         fixes bug #316180.
8356
8357 2005-09-14  Federico Mena Quintero  <federico@ximian.com>
8358
8359         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): Add
8360         an easy-to-find profiling marker when starting to create a file
8361         chooser.
8362         (browse_files_model_finished_loading_cb): Likewise, for when the
8363         chooser is finished loading.
8364
8365 2005-09-14  Tristan Van Berkom <tvb@cvs.gnome.org>
8366
8367         * gtk/gtkcolorbutton.c: Check "color" argument in 
8368         gtk_color_button_set_color ()
8369
8370 2005-09-14  Matthias Clasen  <mclasen@redhat.com>
8371
8372         * gtk/gtklabel.c (gtk_label_get_type): 
8373         * gtk/gtkbutton.c (gtk_button_get_type): 
8374         * gtk/gtkwindow.c (gtk_window_group_get_type): No point in 
8375         using a mem chunk for window groups, buttons, labels.
8376
8377         * gtk/updateiconcache.c (foreach_remove_func): Fix
8378         a use-after-free bug.  (#316256, Alexander Nedotsukov)
8379
8380 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
8381
8382         * gtk/*.c: Various cleanups.  (#315360, Kjartan Maraas)
8383
8384         * gdk/*.c: Various cleanups.  (#315359, Kjartan Maraas)
8385         
8386 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
8387
8388         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
8389         Let GDK_Return pass through in some more cases.
8390
8391         * gtk/gtkentry.c (gtk_entry_key_press): Reset the im context before
8392         activating the entry. 
8393
8394         * gtk/gtkiconview.c (gtk_icon_view_class_init):
8395         (gtk_icon_view_get_dest_item_at_pos):  Fix typos in the 
8396         docs.  (#316008, #316027, #316121, Guillaume Cottenceau)
8397
8398         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Add some docs.
8399         (#316001, Guillaume Cottenceau)
8400
8401         * gtk/gtkdnd.c (gtk_drag_set_icon_name): Fix a copy-and-paste
8402         mistake in the docs.  (#315993, Guillaume Cottenceau)
8403
8404         * tests/testentrycompletion.c (create_simple_completion_model): Add
8405         some strings containing multibyte characters.
8406
8407         * gtk/gtkentrycompletion.c (gtk_entry_completion_real_insert_prefix): 
8408         Fix prefix insertion for multibyte characters.  (#316095,
8409         Tommi Komulainen)
8410
8411         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): 
8412         * gtk/gtkiconview.c (gtk_icon_view_create_drag_icon): Silently
8413         return NULL if the widget is not realized.  (#316023,
8414         Guillaume Cottenceau)
8415
8416 2005-09-11  Matthias Clasen  <mclasen@redhat.com>
8417
8418         * gdk/gdk.symbols: 
8419         * gdk/gdkproperty.h: 
8420         * gdk/x11/gdkproperty-x11.c (gdk_atom_intern_static_string): 
8421         New function to avoid pointless strdups when creating atoms
8422         from static strings.  
8423
8424         * gdk/x11/*.c:
8425         * gtk/*.c:  Use gdk_atom_intern_static_string() where 
8426         appropriate.
8427
8428 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
8429
8430         * gtk/gtkcellrendererkeys.h: 
8431         * gtk/gtkcellrendererkeys.c: Add a cell renderer for displaying
8432         and editing accelerators, a port of EggCellRendererKeys .
8433
8434         * gtk/gtk.symbols:
8435         * gtk/gtk.h:
8436         * gtk/Makefile.am: Add the keys cell renderer.
8437
8438         * tests/Makefile.am: 
8439         * tests/testkeys.c: Test GtkCellRendererKeys
8440
8441 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
8442
8443         Make it possible to determine if a key event is for a
8444         modifier key:
8445         
8446         * gdk/x11/gdkprivate-x11.h: 
8447         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_key_is_modifier): 
8448         New function to determine if a keycode is mapped to a modifier.
8449         (get_xkb): Get the modmap.
8450
8451         * gdk/x11/gdkevents-x11.c (translate_key_event): Set the 
8452         is_modifier bit by calling _gdk_keymap_key_is_modifier().
8453
8454         * gdk/gdkevents.h (struct _GdkEventKey): Add an is_modifier
8455         bit.
8456
8457 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
8458
8459         * gdk/gdkpixbuf-drawable.c (convert_real_slow): Remove an 
8460         unused variable, noticed by Kjartan Maraas.
8461
8462 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
8463
8464         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event): 
8465         Make drag reordering work properly for columns other than the
8466         first.  (#315054, Dan Winship)
8467         
8468         * gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Handle 
8469         invalid fontnames better. (#136926, Michael R. Walton)
8470         
8471         Stop cursor blinking in non-editable regions of a text view.
8472         (#311508, Torbjörn Andersson)
8473         
8474         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): 
8475         (cursor_blinks): Take editability into account when deciding
8476         whether the cursor blinks.
8477         (gtk_text_view_button_release_event): 
8478         (gtk_text_view_move_cursor_internal): Update cursor blinking here.
8479
8480         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_start_editing): 
8481         Use connect_after to connect to the focus_out event. This
8482         ensures that the entry has already stopped blinking by the time
8483         we emit the edited signal.  (#315229, Thomas Leonard)
8484
8485         * tests/testgtk.c: Use GDK_MOD1_MASK, not GDK_ALT_MASK.
8486
8487         * gtk/gtkwindow.c (gtk_window_parse_geometry): Don't set
8488         unsigned ints to -1.  (#315481, Kjartan Maraas)
8489
8490         * gtk/gtkcalendar.c (gtk_calendar_init): first_weekday is relative
8491         to week_1stday, not to Sunday. Gotta love the ISO 14652 guys...
8492         (#314473, Stanislav Brabec)
8493
8494 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
8495
8496         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Document
8497         memory handling.  (#314975, Torsten Schoenfeld)
8498
8499         * gtk/gtkiconview.c (gtk_icon_view_class_init): 
8500         * gtk/gtkfilesel.c (gtk_file_selection_class_init): 
8501         * gtk/gtkcombobox.c (gtk_combo_box_class_init): 
8502         * gtk/gtklabel.c (gtk_label_class_init): 
8503         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): 
8504         Stylistic improvements and clarifications for some blurbs. 
8505         (#315520, Clytie Siddall)
8506
8507 2005-09-09  Tor Lillqvist  <tml@novell.com>
8508
8509         * gdk/win32/gdkdisplay-win32.c (gdk_display_get_name): Cache the
8510         display name. There is only one GdkDisplay on Win32, and
8511         constructing the display name isn't entirely trivial, so cacheing
8512         is probably worth it. For instance GIMP calls this function a lot.
8513         (gdk_display_open): Call gdk_display_get_name() to prime the
8514         cached name.
8515         (gdk_display_get_n_screens, gdk_display_get_screen,
8516         gdk_display_get_default_screen): Verify parameter correctness like
8517         the X11 backend does.
8518
8519         * gdk/win32/gdkscreen-win32.c (gdk_screen_make_display_name):
8520         Return a freshly allocated string, as the API specifies. Fixes a
8521         heap corruption problem that caused random errors and crashes in
8522         GIMP, for instance.
8523
8524 2005-09-07  Matthias Clasen  <mclasen@redhat.com>
8525
8526         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
8527         Make C-u commit and restart hex input if we are already in a
8528         hex sequence.
8529
8530 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
8531
8532         * gdk/x11/gdkkeys-x11.c (update_modmap): Make the modmap reflexive.
8533         (_gdk_keymap_add_virtual_modifiers): Don't add both Alt and Meta
8534         if they are mapped to the same modifier.
8535
8536         * gtk/Makefile.am: Rename gtkstatusicon-x11.c and gtktrayicon.c
8537         to gtkstatusicon.c and gtktrayicon-x11.c
8538
8539         * gtk/gtkaccelgroup.c: Include Super, Hyper and Meta in the
8540         default accel mod mask.
8541
8542         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): 
8543         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
8544         Don't use GDK_ALT_MASK.
8545
8546         * gdk/gdktypes.h: No need to introduce GDK_ALT_MASK
8547
8548 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
8549
8550         Add support for extra virtual modifiers:  (#85780, Owen Taylor)
8551         
8552         * tests/testgtk.c (create_key_lookup): Add tests for extra virtual
8553         modifiers.
8554
8555         * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Try to match both against
8556         Mod2 - Mod5 and against Super, Hyper, Meta.
8557
8558         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
8559         * gtk/gtkaccelgroup.c (gtk_accelerator_parse) 
8560         (gtk_accelerator_name): Support Super, Hyper Meta and Mod2 - Mod5.
8561
8562         * gdk/x11/gdkkeys-x11.c (struct _GdkKeymapX11): Add a 
8563         modmap to maintain the information which X modifiers map to
8564         virtual modifiers.
8565         (get_xkb): Set up the modmap from the XKB tables.
8566         (update_keymaps): Set up the modmap from the information returned
8567         by XGetModifierMapping in the non-XKB case.
8568
8569         * gdk/x11/gdkprivate-x11.h: 
8570         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_add_virtual_modifiers): New 
8571         function to set the virtual modifiers in the state.
8572
8573         * gdk/x11/gdkevents-x11.c (translate_key_event): Call 
8574         _gdk_keymap_add_virtual_modifiers here.
8575
8576         * gdk/gdktypes.h (GdkModifierType): Add bits for virtual Super, 
8577         Hyper and Meta modifiers. Also add GDK_ALT_MASK as an alias
8578         for GDK_MOD1_MASK.
8579
8580 2005-09-05  Matthias Clasen  <mclasen@redhat.com>
8581
8582         * gtk/gtkaction.c (connect_proxy): Set the label of a button
8583         if it has no child.  (#315253, John Finlay)
8584
8585 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
8586
8587         * gtkimcontextsimple.h: Add a modifiers_dropped bit
8588
8589 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
8590
8591         * gtk/gtkentry.c (gtk_entry_destroy): Disconnect idle handlers
8592         on destroy to avoid problems when they are called on a destroyed
8593         widget.  (#315135, John Cupitt)
8594         
8595         * gtk/gtkentry.c (gtk_entry_class_init):
8596         * gtk/gtktextview.c (gtk_text_view_class_init): Add bindings
8597         for Ctrl-Shift-A to unselect all.  (#309301, Kathy Fernandes)
8598
8599         * gtk/gtkimcontextsimple.c: Rework the Unicode hex input
8600         code. Now we only steal a single key combination, Ctrl-Shift-U,
8601         instead of sixteen. 
8602         A hex Unicode sequence must be started with Ctrl-Shift-U, followed
8603         by a sequence of hex digits entered with Ctrl-Shift still held.
8604         Releasing one of the modifiers or pressing space while the modifiers
8605         are still held commits the character. It is possible to erase
8606         digits using backspace.
8607         As an extension to the above, we also allow to start the sequence
8608         with Ctrl-Shift-U, then release the modifiers before typing any
8609         digits, and enter the digits without modifiers.
8610         (#82011, Owen Taylor)
8611         
8612 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
8613
8614         * gtk/gtkmain.c (gtk_get_event_widget): If the window is destroyed,
8615         we still need to deliver the destroy event.  (#314980, Chris Lahey)
8616
8617         * gtk/gtktextview.c (gtk_text_view_key_press_event): Reset 
8618         im context before committing \n or \t.
8619
8620 2005-09-02  Alexander Larsson  <alexl@redhat.com>
8621
8622         * gtk/gtkfilechooserdefault.c: (shortcuts_add_volumes),
8623         (shortcuts_activate_volume):
8624         Handle base_path being null in the rest of the cases (#310270)
8625
8626 2005-09-02  Tor Lillqvist  <tml@novell.com>
8627
8628         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Keep track of
8629         cursor position also in root window coordinates. Prune out
8630         superfluous WM_MOUSEMOVE events even earlier, based on root window
8631         coordinates. Windows sends WM_MOUSEMOVE messages after a new
8632         window has ben mapped below the cursor even if the mouse doesn't
8633         move. We used to generate GDK_MOTION_NOTIFY in these cases. This
8634         confused at least gtk_menu_motion_notify(). (#314995)
8635
8636         * gtk/gtkintl.h: No need to include config.h here. It caused
8637         warnings about GTK_LOCALEDIR being redefined on Win32 when
8638         compiling files where gtkintl.h is included after gtkprivate.h
8639         (which #undefines and re-#defines GTK_LOCALEDIR on Win32).
8640
8641         * gtk/gtkplug.c: Include config.h.
8642
8643 2005-09-01  Matthias Clasen  <mclasen@redhat.com>
8644
8645         * gtk/gtkfilesystemunix.c: Pass statbufs down to 
8646         xdg_mime_get_mime_type_for_file() where possible, to avoid
8647         useless re-stating.  
8648         
8649         * gtk/gtkaction.c (gtk_action_get_accel_closure): Fix doc
8650         typo.  (#314921, Guillaume Cottenceau)
8651
8652         * gdk/*.c: Intern some more strings.
8653         * gtk/gtkintl.h: 
8654         * gtk/*.c: Define an I_() macro and use it instead of the 
8655         bulky g_intern_static_string().
8656
8657 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
8658
8659         * gtk/gtkbindings.c (binding_signal_new): Intern the signal name
8660         instead of copying it.
8661
8662         * gtk/gtktypeutils.c (gtk_identifier_get_type): Some more string interning.
8663
8664         * gtk/*.c: Also intern static strings passed to 
8665         g_object_set_data().
8666
8667         * gdk/Makefile.am: 
8668         * gtk/Makefile.am: Intern type names in code generated by 
8669         glib-mkenums, too.
8670
8671         * gtk/*.c: 
8672         * gdk/x11/*.c: 
8673         * gdk/*.c: Intern type names before registering the type to avoid 
8674         unnecessary copies.
8675
8676         * configure.in: Require GLib 2.9.0
8677
8678 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
8679
8680         * gtk/gtktoolbar.c: Undeprecate gtk_toolbar_set_icon_size(),
8681         and add icon-size and icon-size-set properties.  (#314172)      
8682
8683         * gtk/gtkwindow.c (gtk_window_set_transient_for): Inherit window
8684         groups across transient parents.  (#312918, Christian Persch)
8685
8686         * gtk/gtktreemodel.c: Some documentation fixes.  (#314882,
8687         Guillaume Cottenceau)
8688
8689         * gtk/gtktextiter.c (gtk_text_iter_backward_visible_cursor_positions): 
8690         Fix a typo in the docs.  (#314878, Guillaume Cottenceau)
8691
8692 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
8693
8694         * gtk/gtkentry.c (gtk_entry_class_init): Add key bindings to
8695         make C-/ select all and C-\ unselect all.  (#309301,
8696         Kathy Fernandez)
8697
8698         * gtk/gtkimcontextsimple.c: Change the compose sequence for
8699         soft hyphen to be multi_key-minus-minus-space, and add
8700         compose sequences multi_key-minus-minus-period and 
8701         multi_key-minus-minus-minus for en dash and em dash.
8702         (#172653, Christian Lohmaier)
8703
8704         * gtk/gtkentry.c (gtk_entry_draw_frame): Fix some unused
8705         code.  (#313946, Christian Persch)
8706
8707         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Another
8708         fix for the default value of the "ui" property.
8709
8710 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
8711
8712         * gtk/gtk.symbols: 
8713         * gtk/gtkselection.h:
8714         * gtk/gtkselection.c: Add functions which look for text, image
8715         or uri targets in an array of atoms.   (#314089, Mark Wielaard)
8716
8717         * gtk/gtk.symbols: 
8718         * gtk/gtkselection.h:
8719         * gtk/gtkselection.c (gtk_selection_data_targets_include_uri): 
8720         Add a function to check wether targets include uri.  
8721         (#314092, Mark Wielaard)
8722         
8723         * gtk/gtk.symbols: 
8724         * gtk/gtkwindow.h: 
8725         * gtk/gtkwindow.c: Add a deletable property with getter
8726         and setter, to control the close button in the window 
8727         frame.  (#59718, Havoc Pennington)
8728
8729 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
8730
8731         * gtk/gtkrc.key.emacs: Add C-n/C-p/C-f/C-b as alternatives
8732         to the arrow keys for menu navigation.  (#162825, Carl Worth)
8733
8734         * gtk/gtkentry.c, gtk/gtktextview.c: More typo fixes
8735
8736         * gtk/gtksocket-x11.c, gtk/gtkstatusicon-x11.c: Fix typos.
8737
8738         * gtk/gtkstatusicon-x11.c (gtk_status_icon_new_from_stock): 
8739         * gtk/gtkimage.c (gtk_image_new_from_stock): Don't
8740         refer to nonexisting stock ids.
8741
8742         * gtk/gtktextview.c (popup_targets_received): 
8743         * gtk/gtkentry.c (popup_targets_received): Construct
8744         the "Select All" menuitem from stock.
8745
8746         * gtk/stock-icons/stock_select_all_{16,24}.png:
8747         * gtk/stock-icons/Makefile.am: 
8748         * gtk/gtkiconfactory.c:
8749         * gtk/gtkstock.h: 
8750         * gtk/gtkstock.c: Add a "Select All" stock item.  (#78545,
8751         Calum Benson)
8752
8753         * gtk/gtktrayicon.c: Add a pointer to the spec.
8754
8755         * gtk/gtkstatusicon-x11.c: Add docs.
8756
8757         * gtk/gtkstatusicon.h: Fix a typo.
8758
8759         Add a cross-platform "tray icon" API, by
8760         porting EggStatusIcon/EggTrayIcon (#105101)
8761         
8762         * gtk/gtkstatusicon.h: A GtkStatusIcon is an object which
8763         displays an icon in a notification area.
8764
8765         * gtk/gtkstatusicon-x11.c: GtkStatusIcon implementation for
8766         X11, using GtkTrayIcon.
8767
8768         * gtk/gtktrayicon.h: 
8769         * gtk/gtktrayicon.c: An implementation of the freedesktop.org
8770         system tray specification, not public API.
8771
8772         * gtk/gtk.symbols: Add new exported functions.
8773
8774         * gtk/gtk.h: Include gtkstatusicon.h.
8775
8776         * gtk/Makefile.am: Add new files.
8777
8778         * tests/Makefile.am:
8779         * tests/teststatusicon.c: Test for GtkStatusIcon.
8780
8781 2005-08-29  Christopher Aillon  <caillon@redhat.com>
8782
8783         * gtk/gtkstock.c: Add builtin GtkStockItems for GTK_STOCK_CONNECT
8784         and GTK_STOCK_DISCONNECT
8785         
8786 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
8787
8788         * gtk/gtksocket-x11.c (_gtk_socket_windowing_embed_notify): 
8789         Use XFixesChangeSaveSet if available.  (#314682)
8790
8791         * gtk/gtkmenu.c (gtk_menu_grab_notify):  Only cancel if the menu
8792         was active.  (#314298, Christian Persch, analysis by Mark McLoughlin)
8793
8794 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
8795
8796         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): Remove an
8797         accidentally leftover duplicate pixbuf creation.  (#314700,
8798         Kjartan Maraas)
8799
8800         * gtk/gtksettings.c (settings_update_cursor_theme): Don't 
8801         leak the cursor theme name.  (#314693, Kjartan Maraas)
8802
8803         * gdk/x11/gdkasync.c (_gdk_x11_get_window_child_info): Free 
8804         state.children in all cases.  (#313862, Kjartan Maraas)
8805
8806 2005-08-28  Matthias Clasen  <mclasen@redhat.com>
8807
8808         * po/POTFILES.in, po-properties/POTFILES.in:
8809         Add gdk/gdkscreen.c
8810
8811 2005-08-27  Matthias Clasen  <mclasen@redhat.com>
8812
8813         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Fix the default
8814         value of the ui property. (#314532, Yong Wang)
8815
8816         * gdk/x11/gdkproperty-x11.c (gdk_property_get): Don't warn
8817         when G_MAXLONG is passed as length.  
8818
8819 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
8820
8821         * gtk/updateiconcache.c: Add a separate --ignore-theme-index option
8822         to avoid overloading --force.  (JP Rosevaar)
8823
8824 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
8825
8826         * configure.in: Bump version to 2.9.0
8827
8828         * gdk/gdk.symbols: 
8829         * gdk/gdkscreen.h: 
8830         * gdk/gdkscreen.c: Make the GdkScreen font options api
8831         public, and add properties GdkScreen::font-options and
8832         GdkScreen::resolution.  (#314004)
8833
8834         * gdk/gdkpango.c:
8835         * gtk/gtksettings.c:
8836         * gtk/gtkwidget.c: Adjust all callers.
8837         
8838         * gdk/gdkintl.h: Simplify and use glib/gi18n-lib.h.
8839         * gdk/gdkpango.c: Include gdkintl.h, not gtkintl.h.
8840         * gdk/gdkscreen.c: Include gdkintl.h.
8841
8842         * gtk/gtkicontheme.c (theme_lookup_icon): Avoid an uninitialized
8843         variable warning, pointed out by Colin Walters. (#314585)
8844
8845 2005-08-26  Tor Lillqvist  <tml@novell.com>
8846
8847         * gtk/gtkfilesystemwin32.c: Remove some ifdeffed out debugging
8848         printouts.
8849         (gtk_file_system_win32_parse): Don't mishandle UNC paths. (#314519)
8850
8851 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
8852
8853         * gtk/gtkcalendar.c (gtk_calendar_init): Fix the calculation
8854         of week_start.  (#314473, JP Rosevaar)
8855
8856 2005-08-25  Thomas Fitzsimmons  <fitzsim@redhat.com>
8857
8858         * gtk/gtkfilesystemmodel.c (idle_finished_loading_cb): Acquire GDK
8859         lock.  (#314533, Thomas Fitzsimmons)
8860
8861 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
8862
8863         * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Handle
8864         NULL gracefully.  (#314523, Ed Catmur)
8865
8866 2005-08-25  Owen Taylor  <otaylor@redhat.com>
8867
8868         * gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): 
8869         Handle theme == NULL.
8870
8871 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
8872
8873         * gtk/gtkmenutoolbutton.c (menu_position_func): Take widget
8874         y offset into account when positioning the popup.  (#314470,
8875         Christian Persch)
8876
8877 2005-08-25  Owen Taylor  <otaylor@redhat.com>
8878
8879         * gdk/gdkscreen.c (gdk_screen_get_type): Use gdk_screen_init
8880         as instance_init, not base_init! (#314452, Fix from Frederic
8881         Crozat, reported by Joe Marcus Clarke). Trivial cleanup: use -1.
8882         rather than 1 for a negative flag value.
8883
8884 2005-08-24  Owen Taylor  <otaylor@redhat.com>
8885
8886         * gdk/gdkpango.c (draw_error_underline): Add a note about
8887         cut-and-paste between here and Pango.
8888
8889 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
8890
8891         * === Released 2.8.2 ===
8892
8893         * gtk/gtkclipboard.c (request_image_received_func): Use the correct
8894         callback for image/gif, and also try image/bmp.  (#314086,  Mark 
8895         Wielaard)
8896
8897         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon): 
8898         Use gnome-dev-harddisk for volumes, not gnome-fs-blockdev.  (#314382,
8899         Sebastien Bacher)
8900         
8901         * NEWS: Updates
8902
8903         * gtk/gtksettings.c (gtk_settings_get_for_screen): Make sure font
8904         and cursor settings get propagated down to the screen initially.
8905         Pointed out by Frederic Crozat.
8906
8907         * gtk/gtkicontheme.c (ensure_valid_themes): Don't try to send a client
8908         message if the screen is NULL. Noticed by Kjartan Maraas.
8909
8910 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
8911
8912         * Bump version
8913
8914         * === Released 2.8.1 ===
8915
8916         * NEWS: Updates
8917         
8918 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
8919
8920         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_visible): Protect
8921         against lazy filterers which return values other than TRUE or
8922         FALSE from their visible func.  (#314335)
8923
8924 2005-08-23  Owen Taylor  <otaylor@redhat.com>
8925
8926         Fix for #314004, reported by Michael Reinsch:
8927
8928         * gdk/gdk.symbols:
8929         * gdk/gdkscreen.[ch]: Add gdk_screen_get/set_font_options_libgtk_only()
8930         Add gdk_screen_get/set_resolution_libgtk_only()
8931
8932         * gdk/gdkpango.c (gdk_pango_context_get_for_screen): Set
8933         the options for the screen on the newly created context.
8934
8935         * gtk/gtksettings.c (settings_update_font_options/dpi) gtkwidget.c: 
8936         Move font options and dpi code from gtkwidget.c to gtksettings.c, set
8937         the font options on the screen.
8938
8939         * gtk/gtkwidget.c (gtk_widget_update_pango_context): Just get
8940         the font options from the screen and set them on the context.
8941
8942 2005-08-23  Kristian Rietveld  <kris@gtk.org>
8943
8944         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): don't
8945         bother inserting new rows in a level with a zero refcount and
8946         immediately free the level. (Fixes #312350, reported by Markku Vire).
8947
8948 2005-08-23  Matthias Clasen  <mclasen@redhat.com>
8949
8950         * gtk/updateiconcache.c: Complain when there is no index.theme file
8951         in the specified directory, unless --force is used. Also add an
8952         --index-only option to create caches without image data.
8953
8954         * gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Fix a
8955         C99ism.  (#314262, Robert Jeff Mitchell)
8956         
8957 2005-08-22  Manish Singh  <yosh@gimp.org>
8958
8959         * gtk/gtkicontheme.h: add declaration for _gtk_icon_theme_check_reload.
8960
8961         * gtk/gtkwindow.c: remove declaration of gtk_window_read_rcfiles.
8962
8963 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
8964
8965         * gtk/gtkwindow.c (gtk_window_client_event): 
8966         * gtk/gtkicontheme.c (ensure_valid_themes) 
8967         (_gtk_icon_theme_check_reload): Implement a clientmessage based
8968         scheme for makeing sure that all GTK+ applications notice if an
8969         icon theme has been updated. This should prevent multiple versions
8970         of an icon theme cache to be mapped in memory at the same time,
8971         which can cause excessive memory consumption.  (#313156, Chris 
8972         Lahey)
8973
8974 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
8975
8976         * gtk/gtkicontheme.c (gtk_icon_theme_load_icon): Add a note
8977         regarding icon theme changes.
8978
8979         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): When returning
8980         pixbufs which are backed by the mmapped memory of an icon cache,
8981         increase the refcount of the icon cache, so that the memory is not
8982         munmapped away underneath the pixbuf upon icon theme changes.  
8983         (#314170, Kjartan Maraas)
8984
8985         * docs/tools/Makefile.am (LDADDS): Add GTK_DEP_LIBS, in order 
8986         to link against Xext.  (#314062)
8987
8988         * gtk/gtkhsv.c (paint_triangle): One more fix to prevent buffer
8989         overruns.  (#314081, Hans Breuer)
8990
8991 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
8992
8993         * gtk/gtkentry.c (gtk_entry_get_layout): Clarify that the
8994         returned layout must not be modified.
8995
8996 Sat Aug 20 16:12:14 2005  Jonathan Blandford  <jrb@redhat.com>
8997
8998         * gtk/gtktreeview.c (gtk_tree_view_set_model): clear
8999         scroll_to_path if the model changes.
9000
9001         * gtk/gtkiconview.c: (gtk_icon_view_destroy),
9002         (gtk_icon_view_size_allocate), (gtk_icon_view_set_cursor),
9003         (gtk_icon_view_scroll_to_path): Handle scrolling to a path before
9004         we're realized, #312798
9005         (gtk_icon_view_set_model): clear scroll_to_path if the model
9006         changes.
9007
9008 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
9009
9010         * gtk/gtkrange.c (gtk_range_adjustment_changed) 
9011         (gtk_range_adjustment_value_changed):  Don't queue a draw
9012         if the layout has not changed.  (#313991, Benjamin Berg)
9013
9014 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
9015
9016         * gtk/gtktreeitem.c: Remove duplicate lines.  (#313344,
9017         Benoit Carpentier)
9018
9019         * modules/engines/ms-windows/msw_style.c (setup_system_styles): 
9020         Fix a typo. 
9021
9022         * gtk/gtkfilechooserbutton.c (change_icon_theme) 
9023         (model_add_special, model_add_special, model_add_volumes):
9024         Handle pixbuf being NULL without warnings. Also, don't
9025         leak pixbuf references when the icon theme is changed.
9026
9027         * gtk/gtkmain.c (gtk_get_event_widget): Don't access
9028         the user data on destroyed windows, since at best
9029         it can be a stale pointer.  (#313953, Robin Green)      
9030
9031 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
9032
9033         * gtk/gtkhsv.c (paint_triangle): Avoid a buffer overrun.  
9034         (#313900, Sebastien Bacher)
9035
9036         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Return
9037         FALSE if the tree is empty.  (#313891, Guillaume Cottenceau)
9038
9039         * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display) 
9040         (xdnd_read_actions, get_client_window_at_coords_recurse): 
9041         Free data returned from XGetWindowProperty. 
9042
9043         * gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window) 
9044         Free data returned from XGetWindowProperty.  (313867, Kjartan
9045         Maraas)
9046         
9047         * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse): Free
9048         children in all cases.  (#313862, Kjartan Maraas)
9049
9050         * gtk/gtkicontheme.c (theme_lookup_icon): Store GtkIconData structs 
9051         in the per-directory hash, even if they come from the icon cache. 
9052         We tried to avoid that before, but as a result leaked icon data
9053         structs.  (#313852, Kjartan Maraas)
9054
9055 2005-08-18  Matthias Clasen  <mclasen@redhat.com>
9056
9057         * gtk/gtkmenutoolbutton.c (gtk_menu_tool_button_destroy): Disconnect
9058         signal handlers on destroy, not on finalize.  (#313759, Brett Atoms)
9059
9060 2005-08-15  Owen Taylor  <otaylor@redhat.com>
9061
9062         * configure.in: Add -lXext to GDK_EXTRA_LIBS in absence of pkg-config
9063         files for x11/xext. (Jonas Bonn)
9064
9065 2005-08-15  Tor Lillqvist  <tml@novell.com>
9066
9067         * gtk/gtkicontheme.c (theme_lookup_icon): Put debugging printout
9068         inside GTK_NOTE.
9069
9070 2005-08-15  Owen Taylor  <otaylor@redhat.com>
9071
9072         * configure.in: Fix have_base_pc / have_base_x_pc typo.
9073
9074         * gdk/x11/gdkdrawable-x11.c gtk/gtksettings.c: Remove panoxft.h includes.
9075         (#313417, James Andrewartha)
9076
9077         * configure.in: Add fontconfig to X_PACKAGES, since we use it for
9078         FcNameConstant(). (More of #313417)
9079
9080 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
9081
9082         * gtk/gtkfilechooserdefault.c: When using gtk_dialog_run() for
9083         modal dialogs, make sure to inherit the window group from 
9084         the parent, since we don't inherit window groups across
9085         transient parents currently.  (#312918, Christian Persch)
9086
9087         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): 
9088         * gtk/gtkdialog.c (gtk_dialog_run): Slight update to the docs. 
9089
9090         * gtk/gtkiconview.c (gtk_icon_view_select_path) 
9091         (gtk_icon_view_scroll_to_path): Handle paths of depth 0
9092         gracefully.  (#312796, Jonathan Blandford)
9093
9094         * tests/testtoolbar.c: Add some more tests for menu placement.
9095
9096         * gtk/gtkmenutoolbutton.c (menu_position_func): 
9097         * gtk/gtktoolbar.c (menu_position_func): Improve positioning
9098         of toolbutton menus and of the overflow menu.  (#312937, 
9099         #153870, Christian Persch, Paolo Borelli)
9100
9101 2005-08-15  Tor Lillqvist  <tml@novell.com>
9102
9103         * gtk/updateiconcache.c: Use g_path_get_dirname() instead of
9104         the nonportable <libgen.h> and dirname().
9105
9106 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
9107
9108         * gtk/gtksizegroup.c: Use object data to mark widgets and
9109         groups as visited, so that we avoid constant extra list
9110         traversals. Also allocate quarks in class_init.  (#311618,
9111         Michael Natterer)
9112
9113         * gtk/gtkicontheme.c (gtk_icon_theme_lookup_icon): Correct the 
9114         download location for the hicolor icon theme. (#313475, Olexiy 
9115         Avramchenko)
9116
9117         * gtk/gtkicontheme.c: Remove debug spew. 
9118
9119 2005-08-15  Owen Taylor  <otaylor@redhat.com>
9120
9121         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_back_pixmap): 
9122         * gdk/win32/gdkwindow-win32.c (gdk_window_set_back_pixmap): 
9123         * gdk/x11/gdkwindow-x11.c (gdk_window_set_back_pixmap):
9124         Handle pixmap == NULL when checking for a colormap.
9125         (Allin Cottrell).
9126
9127 2005-08-14  Matthias Clasen  <mclasen@redhat.com>
9128
9129         * gtk/updateiconcache.c: Store only one copy of the pixel data
9130         for symlinked icons. To achieve this, maintain a hashtable 
9131         mapping pathnames to pixel data, and share the pixel data for
9132         all symlinks resolving to the same pathname. When writing out
9133         the image data, write out the pixel data only the first time
9134         it is met, and store the offset pointing to the first copy
9135         for use in all later cases.
9136         This reduces the size of the Bluecurve icon cache from 40
9137         to 13MB. (#312972)
9138