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