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