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