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