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