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