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