2007-01-01 Matthias Clasen * gtk/gtktextview.c (gtk_text_view_scroll_hpages): Don't segfault on horizontal scrolling. 2007-01-01 Matthias Clasen * gtk/gtknotebook.h: * gtk/gtknotebook.c: Only handle key bindings for tab reordering if the tabs are shown and reorderable. (#390468, Yevgen Muntyan) * gtk/gtkmarshalers.list: Add required marshaler 2007-01-01 Matthias Clasen * gtk/gtkcontainer.c (gtk_container_class_list_child_properties): Mention in the docs that the return value is NULL-terminated. (#383373, Christian Neumair) 2007-01-01 Matthias Clasen * gtk/gtkicontheme.c (load_themes): Waste less time with non-directories. (#391725, Chris Wilson) 2007-01-01 Matthias Clasen * gtk/gtkcellrendererprogress.c: Implement activity mode for GtkCellRendererProgress. (#377851, Brad Taylor) 2007-01-01 Matthias Clasen Fix some IPP compliance issues. (#391523, Albrecht Dress) * modules/printbackends/cups/gtkcupsutils.c (gtk_cups_request_encode_option): Use IPP_TAG_JOB, not IPP_TAG_OPERATION. * modules/printbackends/cups/gtkprintbackendcups.c (gtk_print_backend_cups_print_stream): Don't add the requesting-user-name attribute a second time. 2007-01-01 Matthias Clasen * gtk/gtkimcontextsimple.c: Fix en/em dash confusion. (#378462) 2006-12-31 Emmanuele Bassi * gtk/gtkrecentchoosermenu.c (set_recent_manager): Use the right object when disconnecting from the GtkRecentManager::changed signal; save us a few indirections using a variable. 2006-12-31 Emmanuele Bassi * gtk/gtkrecentchoosermenu.c: Move the signal and idle disconnections into the dispose function, as well as the object unrefs; reset every handler id and the pointers. (suggested by Paolo Borelli, #390873) 2006-12-31 Matthias Clasen * gtk/gtkprintoperation-win32.c: Include windows.h (#391229, Kazuki Iwamoto) 2006-12-30 Matthias Clasen * gtk/gtktextview.c (gtk_text_view_destroy): Remove the scroll timeout. (#390872, Yevgen Muntyan) 2006-12-30 Matthias Clasen * gtk/gtkprintoperation-unix.c: * gtk/gtkprintbackend.c: * gtk/gtkfilechooserdefault.c: * gtk/gtksettings.c: Move a few settings to gtksettings.c to make sure they show up in the docs. (#365364, Christian Persch) 2006-12-30 Matthias Clasen * gtk/gtkassistant.c: Redraw assistant on reallocate to avoid rendering glitches. (#343956, Christian Persch, Carlos Garnacho) 2006-12-30 Matthias Clasen * gtk/gtkrange.c: Typo fix. (#352121, Clytie Siddall) 2006-12-30 Matthias Clasen * gtk/gtkaction.c: Improve the docs of the "label" property. (#341730, Kristof Vansant) 2006-12-30 Matthias Clasen * gtk/gtkwindow.c (gtk_window_compute_configure_request_size): Correctly handle min size. (#320465, Philipp Langdale) 2006-12-30 Matthias Clasen * gtk/prop-editor.c: Implement editing of flags. 2006-12-30 Matthias Clasen * gtk/gtkentry.c: * gtk/gtklabel.c: * gtk/gtkpaned.c: * gtk/gtkstatusbar.c: * gtk/gtktextview.c: Don't install cursors on insensitive widgets. (#358864, Jan Schampera) 2006-12-29 Matthias Clasen * gtk/gtkrecentmanager.h: * gtk/gtkprintoperation.c: Fix doc typos. (#370909, Shiino Yuki) * gtk/gtkstyle.c (gtk_style_attach): Clarify docs. (#353423, Christian Persch) * gtk/gtkentry.c (blink_cb): * gtk/gtktextview.c (blink_cb): Don't die in an assertion if focus went missing. Just warn, clean up and continue. (#374378) 2006-12-29 Carlos Garnacho * gtk/gtknotebook.c (gtk_notebook_scroll): return if the widget that originally received the event is a notebook page. (#315440, reported by Mateusz Stefek) 2006-12-29 Matthias Clasen * gdk/gdkcolor.c (gdk_color_hash): Fix a typo. (#390613, Paolo Borelli) 2006-12-29 Matthias Clasen * tests/prop-editor.c: Display children of containers and cell renderers of cell layouts. * gtk/gtk.symbols: * gtk/gtkcelllayout.[hc] (gtk_cell_layout_get_cells): New function to get the cell renderers of a cell layout. * gtk/gtktreeviewcolumn.c: * gtk/gtkcellview.c: * gtk/gtkiconview.c: Implement get_cells. 2006-12-28 Matthias Clasen * gtk/gtkiconview.c: Use word wrapping by default, and center multiline labels. (#318763, Ross Burton) * gtk/gtkcellrenderertext.c (get_layout): Remove a special case for single-line layouts. 2006-12-28 Matthias Clasen * gtk/gtkarrow.c: Fix a typo in the docs. (#390423, David Lodge) * gtk/gtkuimanager.c (update_node): Only use the results of find_menu/toolbar_position() if they succeed. May fix bug #388041. 2006-12-28 Matthias Clasen * gdk/gdk.c: Fix some formatting errors in docs. 2006-12-28 Tor Lillqvist * gtk/gtkstatusicon.c (gtk_status_icon_finalize) (gtk_status_icon_update_image): Don't leak HICONs on Win32. (#364868, Hiroyuki Yamamoto) 2006-12-28 Carlos Garnacho Make GtkNotebook able to drop detached tabs anywhere. Bug #360225. * gtk/gtkwidget.c (gtk_widget_class_init): add "drag-failed" signal. * gtk/gtkmarshalers.list: add new marshaler definition. * gtk/gtkenums.h: add GtkDragResult enum. * gtk/gtkdnd.c (gtk_drag_drop_finished): emit "drag-failed" if DND operation wasn't successful. (_gtk_drag_source_handle_event) (gtk_drag_drop) (gtk_drag_selection_get) (gtk_drag_cancel) (gtk_drag_key_cb) (gtk_drag_grab_broken_event_cb) (gtk_drag_grab_notify_cb) (gtk_drag_button_release_cb) (gtk_drag_abort_timeout): tell gtk_drag_drop_finished() the operation result. * gtk/gtknotebook.c (gtk_notebook_drag_failed): new function. (gtk_notebook_drag_data_get): do not call window creation hook here. (gtk_notebook_init): do not set "application/x-rootwindow-drop" target, instead connect to "drag-failed". (gtk_notebook_draw_focus): fix potential crasher if cur_page is NULL. 2006-12-28 Mikael Hallendal * gdk/quartz/gdkevents-quartz.c: Factored out the event loop integration into gdkeventloop-quartz.c. * gdk/quartz/Makefile.am: Added gdkeventloop-quartz.c * gdk/quartz/gdkeventloop-quartz.c: New file containing the event loop integration. 2006-12-27 Matthias Clasen * modules/printbackends/lpr/gtkprintbackendlpr.c (gtk_print_backend_lpr_print_stream): Close the io channel on unref. (#390159, Joe Markus Clarke) 2006-12-27 Matthias Clasen * gdk/gdk.h: Remove redundant declarations (#390097, Christian Persch) 2006-12-27 Kristian Rietveld Support inverting arrows via XSetting. (#377979, Yevgen Muntyan). * gtk/gtksettings.c (gtk_settings_class_init): add new setting gtk-alternative-sort-arrows. * gdk/win32/gdkproperty-win32.c (gdk_screen_get_setting): add new setting. * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: set new gtk-alternative-sort-arrows setting to true. * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button): invert direction if gtk-alternative-sort-arrows is TRUE. 2006-12-27 Tor Lillqvist * gtk/gtk.symbols: Add gtk_status_icon_get_screen and gtk_status_icon_set_screen. * gtk/gtkstatusicon.c: Implement gtk_status_icon_position_menu() on Windows. Keep track of where the last button click on the taskbar icon took place, and return that. Obviously not correct if no button has ever been clicked on the icon, or if the geometry of the taskbar has changed since. But for most use cases where a menu is going to be displayed as a direct result of a button click on the status icon, works fine. (#377349) Implement getting the orientation property on Windows. (gtk_status_icon_embedded_changed) (gtk_status_icon_orientation_changed): Ifdefify these functions that are used only on X11. 2006-12-27 Tor Lillqvist * gtk/gtkfilesystemwin32.c (execute_callbacks): Fix typo. (#390035, Kazuki Iwamoto) 2006-12-27 Matthias Clasen * gtk/gtkcellview.c (gtk_cell_view_set_model): Accept NULL. * gtk/gtkcombobox.c (gtk_combo_box_set_model): (gtk_combo_box_unset_model): Handle repeated unsetting of models without warnings. (#367529, Robert Ancell) 2006-12-27 Matthias Clasen * modules/printbackends/cups/gtkcupsutils.c: * modules/printbackends/cups/gtkprintbackendcups.c: Use getters for http fields where available. (#364866, Björn Lindqvist) 2006-12-27 Matthias Clasen * gtk/gtkwidget.c (gtk_widget_show): Add a g_return_if_fail. (#362614, Xan Lopez) 2006-12-27 Matthias Clasen * gtk/gtkuimanager.c (update_node): If a required action is missing, don't recurse over the children. (#349119, Chris Moller) 2006-12-27 Matthias Clasen Fix a few problems with nested menus in comboboxes (#386694, Yevgen Muntyan) * gtk/gtkcombobox.c (gtk_combo_box_menu_fill_level): Always connect the activate callback. (gtk_combo_box_menu_item_activate): Do nothing if called on an item with a submenu. (gtk_combo_box_menu_row_deleted): Remove a submenu when it is empty. 2006-12-26 Mariano Suárez-Alvarez * gtk/gtkfilechooserbuuton.[hc]: Add a file-set signal to the filechooser button. Bug 353196. 2006-12-26 Kristian Rietveld * gtk/gtktreeview.c (gtk_tree_view_search_init): fix typo causing the search dialog timeout never to be refreshed. (#389581, Andrzej Szombierski). 2006-12-26 Kristian Rietveld Lots of scrolling fixes. Made scrolling work properly in not fully validated tree views; fixed a bunch of corner cases. * gtk/gtktreeview.c (validate_visible_area): if a row's dy is past upper - page_size, we know it is located at the end so the test for dy + height has been dropped. In the same case if area_below < 0, we know this is the last node in the tree view so area_above is page_size - height of this row. (validate_visible_area): got rid of subtracting new_height - old_height from area_{below,above}, it didn't make any sense at all and the full height of the row should be subtracted instead. (validate_visible_area): when scrolling to a given path, set the top row directly together with the dy offset, then sync that top_row to the dy. (gtk_tree_view_set_top_row): new function to directly set a top_row. (gtk_tree_view_dy_to_top_row): refactored to use gtk_tree_view_set_top_row(). (gtk_tree_view_top_row_to_dy): make sure dy >= 0 when done. (gtk_tree_view_adjustment_changed): only update our dy and top_row if the adjustment's dy actually changed. 2006-12-26 Christian Persch * gtk/gtknotebook.c: (gtk_notebook_real_insert_page): Return the correct value from gtk_notebook_insert_page if the page-added handler reorders the tabs. Bug #345094. 2006-12-26 Carlos Garnacho Fix small regressions in GtkNotebook tab detaching. Bug #378852. * gtk/gtknotebook.c (gtk_notebook_do_arrow): grab focus to allow tabs scrolling when hovering with a detached tab. (gtk_notebook_stop_reorder): Do not deparent the wrong tab if the focus tab has changed during a tab DND operation. (gtk_notebook_drag_end): ensure that the dropped tab gets focused. (gtk_notebook_paint): do not take cur_page as a reference to paint the box if it's detached. (gtk_notebook_calculate_tabs_allocation): focus_tab may be different to the detached tab if we hover the arrows during a tabs detaching operation, do not allocate it unconditionally in 0,0. 2006-12-26 Carlos Garnacho Expose improvements for GtkNotebook. Bug #383435 * gtk/gtknotebook.c (gtk_notebook_expose): propagate the event to tab labels. (gtk_notebook_draw_focus): do not repaint the whole focused tab again. (gtk_notebook_draw_tab): do not send handmade expose events to tab labels. 2006-12-26 Matthias Clasen * gtk/gtkfilesystemunix.c (execute_callbacks): Return FALSE. (#389623, Carlos Garnacho Parro) * gtk/gtkrange.c (stop_scrolling): Avoid spurious redraws. 2006-12-25 Christian Persch * gtk/gtkplug.c: (gtk_plug_construct_for_display), (gtk_plug_unrealize): Notify the "embedded" property also on normal construction and when destroying the socket window. Bug #388738. 2006-12-25 Christian Persch * gtk/gtkaboutdialog.c: (gtk_about_dialog_class_init), (gtk_about_dialog_init), (display_credits_dialog), (display_license_dialog): * gtk/gtkfilechooserdialog.c: (gtk_file_chooser_dialog_class_init), (gtk_file_chooser_dialog_init), (gtk_file_chooser_dialog_constructor), (gtk_file_chooser_dialog_unmap): * gtk/gtkrecentchooserdefault.c: (_gtk_recent_chooser_default_init): * gtk/gtkrecentchooserdialog.c: (gtk_recent_chooser_dialog_class_init), (gtk_recent_chooser_dialog_init), (gtk_recent_chooser_dialog_constructor), (gtk_recent_chooser_dialog_unmap): Set the HIG spacings directly instead of using style-set handlers. Fix the filechooser's spacing between content and action area to 12px. Bug #372447. 2006-12-25 Christian Persch * gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Don't assume statusbar->label is the statusbar's frame's child when shrinking the size allocation when the grip is shown. Bug #372452. 2006-12-25 Christian Persch * gtk/gtkpagesetupunixdialog.c: (printer_status_cb), (add_custom_paper): Fix mem leaks. Bug #389194. 2006-12-24 Matthias Clasen * gtk/gtktextutil.c: Remove debug output. * gtk/gtktextview.c: Improve the DND scrolling behaviour. (#92387, Carlos Garnacho Parro) * gtk/gtkaccellabel.c: Improve translators comments. (#389298, Christian Persch) 2006-12-24 Bastien Nocera * gtk/gtkrecentmanager.c: Fix typo (s/expansive/expensive) (#389183) 2006-12-24 Christian Persch * docs/reference/gtk/gtk-sections.txt: * gtk/gtk.symbols: * gtk/gtkpagesetupunixdialog.c: (fill_paper_sizes_from_printer): * gtk/gtkprinter-private.h: * gtk/gtkprinter.c: (gtk_printer_list_papers): * gtk/gtkprinter.h: Make gtk_printer_list_papers public. Bug #345587. 2006-12-24 Carlos Garcia Campos * gtk/gtkpagesetupunixdialog.c: Don't ignore reverse portrait option when is selected in page setup dialog. Fixes bug #365047. 2006-12-24 Behdad Esfahbod * gtk/gtkentry.c (_gtk_entry_effective_inner_border): Use gtk_border_free when freeing border. 2006-12-24 Matthias Clasen * gtk/gtkentry.c (gtk_entry_button_press): When shift-clicking, keep the larger part of the selection selected. (#353709, Benjamin Otte) * gtk/gtkbutton.c (gtk_button_get_props): Use gtk_border_free when freeing borders. * gtk/gtkbutton.c (gtk_button_grab_notify): Be more careful when faking a button release. (#323146, Travis Abbott) * gtk/gtkhandlebox.c (draw_textured_frame): Draw the handle with the right orientation, depending on the position of the handlebox. (#159764, Benjamin Berg) 2006-12-24 Behdad Esfahbod * gtk/gtkstyle.c (gtk_border_copy), (gtk_border_free): Use gslice for GtkBorder (#383557). 2006-12-24 Behdad Esfahbod Bug 340141 – Update to Pango 1.16 API * gdk/gdkpango.c (layout_iter_get_line_clip_region), (gdk_pango_layout_line_get_clip_region): * gtk/gtkcalendar.c (gtk_calendar_size_request): * gtk/gtkentry.c (gtk_entry_get_pixel_ranges), (get_layout_position), (gtk_entry_find_position), (gtk_entry_adjust_scroll): * gtk/gtkiconview.c (get_pango_text_offsets): * gtk/gtklabel.c (get_cursor_direction): * gtk/gtkstyle.c (get_insensitive_layout): * gtk/gtktextdisplay.c (render_para): * gtk/gtktextlayout.c (allocate_child_widgets), (find_display_line_below), (find_display_line_above), (gtk_text_layout_move_iter_to_previous_line), (gtk_text_layout_move_iter_to_next_line), (gtk_text_layout_move_iter_to_line_end), (gtk_text_layout_iter_starts_line), (gtk_text_layout_move_iter_to_x): * gtk/gtktextutil.c (limit_layout_lines): Use the _readonly version of pango_layout_iter_get_line(), pango_layout_iter_get_run(), pango_layout_get_line(), and pango_layout_get_lines(). * gtk/gtkmain.c (gtk_get_default_language): Use pango_get_default_language(). 2006-12-24 Matthias Clasen * gtk/gtkentry.c (gtk_entry_set_text): Emit changed and notify:text only once. The same fix was applied for replacing the selection via DND or copy-and-paste. (#64998, Damon Chaplin, Sven Herzberg) 2006-12-23 Matthias Clasen * gtk/gtkimmulticontext.c: Be careful to not override GTK+ translations with the translations of the input method. (#317080, Tor Lillqvist) * modules/input/imcedilla.c: Use standard macros for translation domain and locale dir. * gtk/gtkimcontextsimple.c: Allow composing l with stroke. (#349638, Daniel Lublin) * gtk/gen-paper-names.c: Fix a thinko in the suffix calculation. (#382369, Christian Persch) * gtk/paper_names_offsets.c: Regenerated. 2006-12-22 Matthias Clasen * modules/engines/pixbuf/pixbuf.h: * modules/engines/pixbuf/pixbuf-rc-style.h: * modules/engines/pixbuf/pixbuf-style.h: Move G_GNUC_INTERNAL before function declarations. (#352276, Damien Carbery) 2006-12-22 Matthias Clasen * demos/gtk-demo/*.c: Fix some leaks. (#348108, Chris Wilson) 2006-12-22 Matthias Clasen * *.c: Replace a lot of idle and timeout calls by the new gdk_threads api. * gdk/gdk.symbols: * gdk/gdk.h: * gdk/gdk.c: Add functions to allow threadsafe handling of idles and timeouts wrt. to the GDK lock. (#321886, Chris Wilson) 2006-12-22 Matthias Clasen * gdk/gdkpango.c: Use pango_cairo_show_error_underline. (#340141, Behdad Esfahbod) * configure.in: Check for getc_unlocked. * gtk/xdgmime/xdgmimemagic.c: Use getc if getc_unlocked is unavailable. (#381499) * tests/teststatusicon.c: Fix a typo 2006-12-22 Matthias Clasen Make it possible to track the embeddedness of statusicon (#387215, Martyn Russell, patch by Christian Persch) * gtk/gtkstatusicon.c: Add orientation and embedded properties. * gtk/gtkplug.c: * gtk/gtkplug-x11.c: Add an embedded property. * tests/teststatusicon.c: Test the new properties. * gtk/gtkwidget.c (gtk_widget_get_draw_rectangle): Don't leak draw_border. (#387170, Kjartan Maraas) 2006-12-21 Matthias Clasen * gtk/gtkfilechooserembed.c (_gtk_file_chooser_embed_set_delegate()): Typo fix. (#388123, Murray Cumming) * gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): Generate double-click events. (#380421, Tommi Komulainen) * gdk/x1/gdkinput-xfree.c (_gdk_input_configure_event): (_gdk_input_enter_event): Correct return_if_fail checks. (#379803, Tommi Komulainen) * gdk/gdkdisplay.c: Improve the docs of some functions operating on the default display. (##353438, Mariano Suárez-Alvarez) 2006-12-21 Matthew Barnes * docs/reference/gdk/gdk-sections.txt: * gdk/gdkcolor.[ch] (gdk_color_to_string): Add a function for converting a GdkColor to a string (#373856). * configure.in: Bump pango requirement to 1.15.2. 2006-12-20 Matthias Clasen * gdk/keynames.txt: Mark arrow keys as translatable. (#369506, Bastian Nocera) * gdk/keyname-table.h: Regenerated * gtk/gtktextbuffer.c: Add signal documentation. (#317064, Søren Wedel Nielsen) * gtk/gtktextview.c (gtk_text_view_start_selection_drag): Silently return if a drag is already in progress, rather than asserting. (#335622, Li Yuan, testcase by Erwann Chenede) * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_new_with_dialog): Allow any GtkDialog that implements GtkFileChooser as dialog. (#335473, Tommi Komulainen) 2006-12-20 Mikael Hallendal * gtk/gtkstatusicon.c: (gtk_status_icon_init): Fixed a last minute change in the quartz backend. 2006-12-20 Mikael Hallendal * gtk/Makefile.am: Added gtkstatusicon-quartz.c * gtk/gtkstatusicon-quartz.c: Implements the quartz backend for the status icon. * gtk/gtkstatusicon.c: Hooked in the new quartz backend. Bug #387874. 2006-12-19 Matthias Clasen * gtk/gtkprintunixdialog.c: Add a tooltip explaining the format of page ranges, and improve the page sequence icon for the case of n_copies == 1. 2006-12-19 Mikael Hallendal * gdk/quartz/gdkcursor-quartz.c: Splitted out the GdkPixbuf to NSImage routine so that it can be used from libgtk as well (needed for upcoming GtkStatusIcon support in the Quartz port). * gdk/quartz/gdkevents-quartz.c: Don't assume that all NSWindows are created from GDK, this is not true for the status icon. * gdk/quartz/gdkprivate-quartz.h: * gdk/quartz/gdkquartz.h: Added gdk_quartz_pixbuf_to_ns_image_libgtk_only so that it is available to the status icon code. 2006-12-16 Tristan Van Berkom * gtk/gtkmessagedialog.c: Added return_if_fail (image) to gtk_message_dialog_set_image () * gtk/gtkscrolledwindow.c: Fixed a bug in set_property() (setting "window-placement-set" could result in a crash because of boolean/enum mixup) 2006-12-15 Federico Mena Quintero Merged from gtk-2-10: * gtk/gtkmenu.c (gtk_menu_set_title): Don't try to optimize for the case where the new title is the same as the old title, to preserve the behavior from GTK+ 2.8 (NULL and "" titles are not equivalent). Handle the case where title == priv->title. This was found by the LSB compatibility tests: https://bugzilla.novell.com/show_bug.cgi?id=223882 2006-12-15 Dom Lachowicz * gtk/gtkcombobox.c: Make GtkComboBox in "appears-as-list" mode more closely resemble its Win32 counterpart. Bug #340204. 2006-12-14 Carlos Garnacho * gtk/gtkcalendar.c: draw arrows pointing to the right correctly placed inside their GdkWindow. Bug #385672. 2006-12-14 Christian Persch * gtk/gtkiconview.c: Fix docs typo. Bug #385642. 2006-12-13 Dom Lachowicz * src/modules/engines/ms-windows/msw_style.c: Bug 351679 - Notebooks drawn with extra line below tab in MS-Windows theme. Patch by Cody Russell 2006-12-13 Matthias Clasen * gtk/Makefile.am: Add --unlink-tempfile to the evince call for print preview. (#370041, Ghee Teo) 2006-12-11 Matthias Clasen * gtk/gtkprogressbar.c (gtk_progress_bar_paint_text): Be more careful when overdrawing antialiased text. (#352435, Alex Jones, patch by Benjamin Otte) * gtk/gtksettings.c: Change the way in which color scheme information is merged to correctly handle vanishing colors. (#374420, Benjamin Berg, patch by Callum McKenzie) Also allow to separate entries in color schemes by ';' instead of newline. 2006-12-10 Matthias Clasen * modules/printbackends/cups/gtkcupsutils.c (gtk_cups_request_encode_option): Properly pass multi-value options to cups. (#355350, Jürg Billeter) 2006-12-10 Kristian Rietveld * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_focus_out_event): cancel editing (ie. don't accept changes) when the entry loses focus. (Fixes #164494, reported by Chris Rouch). 2006-12-10 Matthias Clasen * configure.in: Correct a misapplied patch. 2006-12-10 Tor Lillqvist * gtk-zip.sh.in: Put gdk-pixbuf-query-loaders.exe and gtk-query-immodules-2.0.exe in the runtime zipfile instead of developer zipfile. Users might add pixbuf loaders or immodules even if they are not interested in developing gtk+-using software. 2006-12-10 Matthias Clasen * configure.in: Check for crt_extern.h and _NSGetEnviron. * gdk/x11/gdkspawn-x11.c: Fix compilation on Darwin where environ is not available. (#384168, Min Sik Kim) 2006-12-07 Paolo Maggi Fixes bug #383407 * gtk/gtkentry.c (gtk_entry_set_text): check for completion->priv->changed_id > 0 before calling g_signal_handler_[un]block. (gtk_entry_completion_key_press): does not block/unblock the "changed" signal before calling gtk_entry_set_text. 2006-12-07 Carlos Garnacho * gtk/gtkcellrendererprogress (compute_dimensions): do not use xthickness/ythickness, they aren't used any longer for drawing. 2006-12-07 Matthias Clasen * gtk/gtkrc.c (_gtk_rc_init): Fix clipping of accelerator underlines by giving labels a small draw-border. 2006-12-06 Kristian Rietveld * gtk/gtkcellrendererprogress.c (gtk_cell_renderer_progress_render): draw progress bar through theme engine instead of using our own custom cairo drawing code (#377244, patch from Carlos Garnacho). 2006-12-06 Matthias Clasen * gtk/gtkprintunixdialog.c (update_dialog_from_capabilities): Update the sensitivity of the collate checkbutton more frequently, proposed by Tim Waugh. 2006-12-04 Matthias Clasen * gtk/gtkmessagedialog.c (setup_type): Set a11y name and role since we no longer set window titles. 2006-12-04 Christian Persch * gtk/gtkpagesetup.c: (gtk_page_setup_get_paper_size), (gtk_page_setup_set_paper_size): Don't leak the old page size when setting a new one. Bug #382314. 2006-12-03 Michael Natterer * gtk/gtktextview.c: remove FIXME #include that is no longer needed. 2006-12-03 Kristian Rietveld Make sure [xy]_offset are always being initialized, fix pixbuf renderer padding. (#108235, Sven Neumann). * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_get_size), (gtk_cell_renderer_pixbuf_render): add padding in _render instead of _get_size. * gtk/gtkcellrendererprogress.c (gtk_cell_renderer_progress_get_size): always initialize [xy]_offset. * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_size): ditto. * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_size): ditto. 2006-12-03 Kristian Rietveld * gtk/gtktreeview.c (validate_visible_area): when not using an explicit alignment, use the full area of the row (not just dy) to determine how to implicitly align it. (Fixes #363191, reported by Federico Mena Quintero). 2006-12-02 Matthias Clasen * gtk/gtkicontheme.c (insert_theme): Properly clean up if an icon theme index file has no directories. (#381236) 2006-12-02 Dom Lachowicz * src/modules/engines/ms-windows/msw_style.c: Bug 351678 - Notebooks not with PositionType.Top drawn incorrectly. Patch by Cody Russell 2006-11-28 Behdad Esfahbod Remove the broken Thai input method and add a functional Thai and Lao input method by Theppitak Karoonboonyanan. (#81031) * modules/input/imthai.c: * modules/input/gtkimcontextthai.c: * modules/input/gtkimcontextthai.h: * modules/input/thai-charprop.c: * modules/input/thai-charprop.h: Added. * modules/input/imthai-broken.c: Removed. * modules/input/Makefile.am: Updated. 2006-11-27 Christian Persch * gtk/gtkstatusicon.c: Notify when the screen changes. Bug #379793. Mon Nov 27 12:27:06 2006 Tim Janik * gtk/gtktextview.c: applied patch by Colin Leroy for Control+GDK_KP_Left to move one word to the left, #356255. 2006-11-26 Benjamin Berg * gtk/gtkstyle.c: (gtk_default_draw_flat_box): Protect against NULL widget. (#379503) 2006-11-25 Matthias Clasen * modules/printbackends/cups/gtkprintbackendcups.c: Make print dialog work when 'BrowseShortNames Off' is specified in cups configuration. Patch by Tim Waugh. 2006-11-24 Michael Natterer * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): if we can't go up/down, consult gtk_widget_keynav_failed() and leave the widget if it returns FALSE (bug #322640). 2006-11-23 Behdad Esfahbod * gtk/gtkmain.c: Fix minor typo in docs. (#378632, Hannes Mueller) 2006-11-22 Emmanuele Bassi * gtk/gtkrecentmanager.c: (get_uri_shortname_for_display): g_filename_from_uri() might fail; catch the failure and fall back to the non-local URI case. (#363437) 2006-11-19 Mark McLoughlin Fixes bug #376502 - multi-screen support for GtkStatusIcon * gtk/gtkstatusicon.[ch]: (gtk_status_icon_set_screen), (gtk_status_icon_get_screen): add multi-screen API. Allows an app to display an icon on a non-default screen (gtk_status_icon_class_init), (gtk_status_icon_set_property), (gtk_status_icon_get_property): add a "screen" property * tests/teststatusicon.c: update to test on multiple screens 2006-11-17 Matthias Clasen Fix problems with drag cancellation. (#376535, Michael Natterer) * gtk/gtkdnd.c (gtk_drag_source_info_destroy): Disconnect signal handlers before emitting drag-end. (gtk_drag_end): Disconnect signal handlers before removing the grab. 2006-11-16 Mariano Suárez-Alvarez * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): add gtk-doc blurb on GtkCellRendererText::edited (#376094) 2006-11-16 Michael Natterer * gtk/gtkradiobutton.c (gtk_radio_button_focus): don't use gtk_widget_keynav_failed(). Instead, look at gtk-keynav-cursor-only and gtk-keynav-wrap-around and wrap around, beep or continue outside the group manually (bug #322640). 2006-11-16 Michael Natterer Add new infrastructure for notifications of failed keyboard navigation and navigation with restricted set of keys. The patch handles configurable beeping, navigating the GUI with cursor keys only (as in phone environments), and configurable wrap-around. Fixes bugs #322640, #70986, #318827, #334726, #334742 and #309291. * gtk/gtksettings.c: added properties gtk-keynav-cursor-only, gtk-keynav-wrap-around and gtk-error-bell. * gtk/gtkwidget.[ch]: added new signal "keynav-failed" and public API to emit it. Added New function gtk_widget_error_bell() which looks at the gtk-error-bell setting and calls gdk_window_beep() accordingly. * gtk/gtk.symbols: add the new widget symbols. * gtk/gtkcellrendereraccel.c * gtk/gtkimcontextsimple.c * gtk/gtkmenu.c * gtk/gtknotebook.c: use gtk_widget_error_bell() or look at the gtk-error-bell setting instead of calling gdk_display_beep() unconditionally. * gtk/gtkcombobox.c * gtk/gtkentry.c * gtk/gtkiconview.c * gtk/gtklabel.c * gtk/gtkmenushell.c * gtk/gtkspinbutton.c * gtk/gtktextview.c * gtk/gtktreeview.c: call gtk_widget_error_bell() on failed keynav. * gtk/gtkentry.c * gtk/gtklabel.c * gtk/gtkrange.c * gtk/gtktextview.c: consult gtk_widget_keynav_failed() on failed cursor navigation and leave the widget if it returns FALSE. * gtk/gtkmenushell.c * gtk/gtknotebook.c: only wrap around if gtk-keynav-wrap-around is TRUE. * gtk/gtkradiobutton.c: ask gtk_widget_keynav_failed() to decide whether to to wrap-around, and don't select active items on cursor navigation if gtk-keynav-cursor-only is TRUE. Should look at gtk-keynav-wrap-around too, will look into that. 2006-11-16 Emmanuele Bassi * gtk/gtkrecentmanager.c: (gtk_recent_info_get_uri_display): Return the URI of the GtkRecentInfo object (upgraded to UTF-8 if needed) in case of non-local file. (#351945) 2006-11-16 Emmanuele Bassi * gtk/gtkrecentchoosermenu.c: (gtk_recent_chooser_menu_add_tip): Apply the tip only if we have a displayable name for the item. (#365031, patch by padraig.obriain(at)sun.com) 2006-11-16 Emmanuele Bassi * gtk/gtkrecentmanager.c: Provide a fast path returning NULL when the limit is set to 0. * gtk/gtkrecentchooserdefault.c: * gtk/gtkrecentchoosermenu.c: Add the same fast path inside the RecentChooser implementation; add a check in the list clamping code. (#373466 and duplicates) 2006-11-15 Matthias Clasen * modules/printbackends/cups/gtkprintbackendcups.c (cups_printer_get_options): Don't pass NULL to strncpy. (#359537, patch by Carlos Garcia Campos) 2006-11-15 Michael Natterer * gtk/gtkrange.[ch]: added properties "fill-level", "show-fill-level" and "restrict-to-fill-level" and getters/setters for them. The "fill level" is an additional marker on the range's trough than can be e.g. used to indicate the amount of pre-buffering in a range showing the play position of streamed media. See the embedded API docs for details. Made GtkRangeLayout a GTypeInstance private struct and removed finalize() implementation. Fixes bug #349808 * gtk/gtk.symbols: added the new symbols. 2006-11-14 Behdad Esfahbod * configure.in: Make libtool magic robust. (#352795) 2006-11-13 Paolo Borelli * gtk/gtkrc.c (gtk_rc_parse_icon_source): plug small memory leak (#370395) 2006-11-09 Kristian Rietveld * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): disable don't move cursor case for SELECTION_NONE. (#371756, John Ellis). 2006-11-09 Carlos Garnacho * gtk/gtkpathbar.c (on_slider_unmap): Fix parenthesis confusion. 2006-11-08 Carlos Garnacho * gtk/gtkpathbar.c (on_slider_unmap): added, do not leave the scroll timeout running if the slider buttons are hidden. (#372527) 2006-11-08 Christian Persch * gtk/gtkfilechooserdefault.c (browse_widgets_create): Don't make the "Location" label bold. Bug #372449. 2006-11-07 Carlos Garnacho * gtk/gtknotebook.c (gtk_notebook_calculate_tabs_allocation): make non-focused tabs xthickness/ythickness thinner. (#353962) 2006-11-07 Paolo Borelli * gtk/gtktextbtree.c (_gtk_text_btree_delete): avoid memory corruption (#357050). 2006-11-06 Alexander Larsson * gtk/gtkdnd.c: (gtk_drag_begin_internal), (gtk_drag_source_info_destroy), (gtk_drag_end), (gtk_drag_grab_notify_cb): Cancel drag when the grab is shadowed. (#122688) 2006-11-01 Kristian Rietveld * gtk/gtkcombobox.c (gtk_combo_box_class_init), (gtk_combo_box_size_request): add arrow-size property to control the minimum size of the arrow, have the arrow scale up with the font by default. (#357950). 2006-10-30 Kristian Rietveld * gtk/gtktreeview.c (gtk_tree_view_move_cursor_page_up_down): don't forget to queue a draw for the new cursor node. (Fixes #366548, reported by Sven Herzberg). 2006-10-30 Michael Natterer * gtk/gtkrange.c (gtk_range_key_press): consume the Escape key only if we actually cancel a drag. Fixes bug #58389. 2006-10-30 Kristian Rietveld * gtk/gtktreeview.c (gtk_tree_view_class_init): change left/right keybindings to collapse/expand rows instead of moving the focus cursor. (#105895, Brian Bober and others). 2006-10-29 Kristian Rietveld * gtk/gtktreeview.c (gtk_tree_view_real_expand_row): guard against child removal in row-expanded callback. (#366782, John Ellis). 2006-10-29 Tor Lillqvist * gdk/win32/gdkwindow-win32.c (RegisterGdkClass): Improve handling of the small icon of the window class. (#152620, Kazuki Iwamoto) 2006-10-29 Tor Lillqvist * gdk/win32/gdkcursor-win32.c (gdk_win32_icon_to_pixbuf_libgtk_only): Implement for B&W cursors, for instance the built-in GDK ones. 2006-10-27 Kristian Rietveld * gtk/gtktreeview.c (validate_visible_area): rework the area_above == 0 case to not overwrite the variables in the lower scope (which are used later on ...), get the path correctly and bail out when there isn't a node above us. (#359231). 2006-10-26 Christian Persch * gtk/gtkaboutdialog.c: Put initial focus on Close button (#337261). 2006-10-25 Johan Dahlin * gtk/gtk.symbols: Add missing symbols to so make check can pass 2006-10-23 Dom Lachowicz * src/modules/engines/ms-windows/msw_style.c (draw_expander): Remember to free GDI Pen resources, introduced by bug 340201.(#364514) 2006-10-18 Kristian Rietveld * tests/testcombo.c (main): connect to notify::popup-shown instead of popup-show (the latter does not exist). 2006-10-15 Paolo Borelli * gtk/gtkicontheme.c (pixbuf_supports_svg): plug memory leak. Fixes bug #362439. 2006-10-12 Michael Natterer * gtk/gtkcombobox.c (gtk_combo_box_class_init): fix commit below (committed the wrong patch). 2006-10-12 Michael Natterer * gtk/gtkcombobox.c: added "move-active" and "popup" signals and bindings to trigger them. Removed gtk_combo_box_key_press(), it's obsolete now. Fixes bug #358293. 2006-10-11 Michael Emmel * gdkpixmap-directfb.c: add missing RGB24 case (#361176) 2006-10-11 Tor Lillqvist * configure.in: Enable having some gdk-pixbuf loaders built-in even if loading the others dynamically. Define Automake conditional INCLUDE_FOO for each loader as TRUE if that loader is built-in. See also gdk-pixbuf/ChangeLog. Wed Oct 11 14:31:30 2006 Tim Janik * docs/reference/gtk/gtk-sections.txt: * gtk/gtkbindings.c: document gtk_binding_entry_skip(). 2006-10-11 Tor Lillqvist * gtk/gtk.symbols: Remove gtk_combo_string_key, which is a static variable. 2006-10-11 Tor Lillqvist Merge from 2.10 branch: * gtk/gtkmain.c (do_pre_parse_initialization): On Win32, if environment variable LC_ALL or LANG is set, set the Win32 thread locale to the corresponding locale. Then call the C library setlocale() to set the C library locale accordingly. The inconsistency mentioned below is gone. (#339756) Do some special casing for Serbia and Montenegro. Handle the Latin and Cyrillic scripts for Azeri, Uzbek and Serbian. (enum_locale_proc): Helper function for the above functionality. * gtk/gtkcalendar.c (gtk_calendar_init): No longer need to check if the environment variables are set here, as they have already been taken into account and the Win32 thread locale has been set. Tue Oct 10 16:38:23 2006 Tim Janik * gtk/tmpl/gtkbindings.sgml: * gtk/gtkbindings.c: applied patch from Michael Natterer to move to inline docs. applied wording fixes suggested by Martyn Russell. 2006-10-09 Matthias Clasen * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): Update the docs to state which out parameters may be NULL. (#360870, Attilio Fiandrotti) 2006-10-08 Matthias Clasen * gtk/gtkprintunixdialog.c (update_dialog_from_capabilities): Fix a typo. (#359542, Ghee Teo) 2006-10-08 Matthias Clasen * gtk/gtknotebook.c (gtk_notebook_reorder_tab): Only reorder tabs if the focus is in the tab. (#350342, Carlos Garnacho Parro) 2006-10-08 Michael Emmel * gdk/directfb/gdkproperty-directfb.c strdup atom name (#357611) 2006-10-08 Kristian Rietveld * gtk/gtktreeview.[ch] (gtk_tree_view_set_property), (gtk_tree_view_set_show_expanders), (gtk_tree_view_get_show_expanders): add getter/setter for show-expanders property, queue a redraw when this property is toggled (#351167, Martin Ejdestig), (gtk_tree_view_set_level_indentation), (gtk_tree_view_get_level_indentation): also add getter/setter and docs for level-indentation property. 2006-10-08 Matthias Clasen * gtk/gtkradiobutton.c (gtk_radio_button_focus): Don't leak a list. (#360350, Benjamin Berg) * Apply a cleanup patch by Kjartan Maraas (#341812) 2006-10-07 Tor Lillqvist * gtk/gtkcalendar.c (gtk_calendar_init): Use the Win32 thread locale's first day of week setting on Win32. (#339752, Bogdan Nicula) Don't do this if one of the environment variables that affect gettext is set, though. In that case use the week start day from the corresponding message catalog. Unfortunately the same logic isn't possible in the weekday and month name lookup; there even if you have set one of the aforementioned environment variables, you still get the weekday and month names from the Win32 thread locale. Yes, this is inconsistent. Use only wide-character API in the Win32 code in this file, too. 2006-10-06 Matthias Clasen * gtk/gtkfilechooser.c (gtk_file_chooser_set_select_multiple): Fix the docs. (#360112) * gtk/gtkcellview.c: Don't set the background of the window in a no-window widget. (#359581, Xan Lopez) 2006-10-05 Behdad Esfahbod * gtk/Makefile.am, gtk/aliasfilescheck.sh: Propagate srcdir into the test correctly. (#359845) 2006-10-05 Michael Natterer * gtk/gtkrc.[ch]: added new scanner token "unbind" which gets rid of a key binding (in fact, it only lets it appear unbound). * gtk/gtkbindings.[ch] (struct GtkBindingEntry): added "guint marks_unbound : 1" (gtk_binding_entry_skip): new API which marks the entry as unbound. Changed code so it returns FALSE when "marks_unbound == TRUE" is encountered while activating bindings, effectively letting the binding appear unbound (regardless of still existing bindings in lower binding priority levels). Fixes bug #358329. (gtk_binding_entry_add) (gtk_binding_entry_clear) (gtk_binding_entry_add_signall) (gtk_binding_parse_binding): deprected these functions. (_gtk_binding_parse_binding) (_gtk_binding_entry_add_signall): new internal API. * gtk/gtk.symbols: changed accordingly. 2006-10-03 Matthias Clasen Fix interaction of GtkEntryCompletion with input methods. (#354495, Diego Escalante Urrelo) * gtk/gtkentry.c (gtk_entry_completion_key_press): Only reset the im context if we actually handle the key event. * gtk/gtkentrycompletion.c: Also propagate key release events to the entry. 2006-10-03 Matthias Clasen * gtk/gtkprintsettings.c (gtk_print_settings_get_duplex): Fix a typo. (#359052, Ghee Teo) * gtk/*.c, gdk/*.c: Apply a patch by Behdad Esfahbod to reduce relocations. (#359053) 2006-10-03 Matthias Clasen * modules/printbackends/cups/gtkcupsutils.c: * modules/printbackends/cups/gtkprintbackendcups.c: Complete the fix for bug 357280. 2006-10-02 Behdad Esfahbod * gdk-pixbuf/Makefile.am: * gdk/Makefile.am: * gtk/Makefile.am: Include pltcheck.sh in EXTRA_DIST. 2006-10-02 Behdad Esfahbod * gdk/x11/gdkevents-x11.c: Move all includes before including gdkalias.h. 2006-10-02 Behdad Esfahbod * gtk/Makefile.am: Fix typo in file name. (#358931) 2006-10-02 Matthias Clasen * modules/printbackends/cups/gtkprintbackendcups.c (available_choices): Only use the group name field if cups is new enough. (#357280) * gtk/gtksizegroup.c: Make sure that the quarks are initialized before using them. (#353736) * gtk/Makefile.am (stamp-icons): Use rm instead of ln -f to replace existing links. (#354849, James Evans) 2006-10-01 Matthias Clasen * gtk/gtkexpander.c (gtk_expander_realize) (gtk_expander_size_allocate): Make the event_window large enough to cover the full height of the label_widget. (#358351, Scott Horowitz) 2006-10-01 Tor Lillqvist * gtk/gtkfilesystemwin32.c: Same change as to gtkfilesystemunix.c. 2006-09-30 Matthias Clasen * gtk/gtkfilechooserbutton.c (update_combo_box): Protect against base_path being NULL. (#358405, many reporters) 2006-09-29 Matthias Clasen * gtk/gtkfilesystemunix.c: Apply a patch by Padraig O'Briain to avoid a deadlock. 2006-09-27 Kristian Rietveld * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_free_level), (gtk_tree_model_filter_ref_node), (gtk_tree_model_filter_real_unref_node): bring zero ref count loops in sync with each other and the sort model. 2006-09-27 Kristian Rietveld * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_init), (gtk_tree_model_filter_finalize), (gtk_tree_model_filter_row_deleted), (gtk_tree_model_filter_new): unref the virtual root path once that node (or one if its ancestors) is deleted, set virtual_root_deleted so we only unref it once. 2006-09-27 Kristian Rietveld * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_changed), (gtk_tree_model_sort_sort_level): ref count nodes the proper way, (gtk_tree_model_sort_ref_node), (gtk_tree_model_sort_real_unref_node), (gtk_tree_model_sort_free_level): bring zero ref count loops in sync, (gtk_tree_model_sort_free_level): free child levels before decreasing the zero ref count of the current level, (gtk_tree_model_sort_clear_cache): only clear cache if zero_ref_count is > 0. 2006-09-25 Matthias Clasen * demos/gtk-demo/*.c: * gtk/gtkeventbox.c: * gtk/gtkprintoperation.c: Fix typos. String change. 2006-09-25 Kristian Rietveld * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): if the tree view has already been realized; scroll to background area instead of cell area. (Fixes #330683, Johan Dahlin, Tommi Komulainen). 2006-09-25 Kristian Rietveld * gtk/gtktreeview.c (gtk_tree_view_set_grid_lines): only attempt to create the GCs if the widget is realized. (Fixes #357578). 2006-09-25 Matthias Clasen * gtk/gtkuimanager.c (_gtk_menu_is_empty): Don't leak the list of children (#357454, Paolo Borelli) 2006-09-25 Michael Natterer * gdk/x11/gdkdisplay-x11.c (gdk_display_x11_finalize): free display->input_windows with g_free(), not g_object_unref() (#357566, Tommi Komulainen). 2006-09-24 Kristian Rietveld * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init), (gtk_cell_renderer_text_[sg]et_property): actually add align-set property to the API (left-over patch from #157439). 2006-09-24 Kristian Rietveld * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button): draw the indicator if the column has a sort column id (and the model is sortable) or if the user explicitly requested the indicator to be shown. (Fixes #352738, Chris Vine). 2006-09-23 Tor Lillqvist * gtk/Makefile.am: Use EXEEXT. 2006-09-22 Michael Natterer * gtk/gtkstyle.c (gtk_style_real_copy): also copy icon factories and color hashes. Fixes bug #357132. 2006-09-22 Matthias Clasen Make remote bookmarks work better (#354887) * gtk/gtkfilechooserdefault.c (shortcuts_reload_icons): (shortcuts_insert_path): * gtk/gtkfilechooserbutton.c (change_icon_theme): (model_add_bookmarks): (model_update_current_folder): (update_label_and_image): If the bookmark points to a remote file, don't call get_info(), since that may a) take a long time and b) pop up an auth dialog. Instead, just use a folder icon and create a display name from the uri. * gtk/gtkfilechooserdefault.c (_gtk_file_chooser_label_for_uri): New function to create a suitable display name for a remote uri. This should really be done in GtkFileSystem. 2006-09-21 Michael Natterer Implement lots of value setters for GdkGC, based on a heavily modified patch from Thomas Broyer (bug #328853): * gdk/quartz/gdkcolor-quartz.c: removed functions which set colors on the CGContext. Instead, added gdk_quartz_get_rgba_from_pixel() which simply returns RGBA values from a GdkColor's pixel value. See gdk_quartz_update_context_from_gc() below. * gdk/quartz/gdkprivate-quartz.h (struct GdkGCQuartz): added lots of members for the newly suppored GC values. Added enum GdkQuartzContextValuesMask which is used for setting up the CGContext for filling and/or stroking. * gdk/quartz/gdkgc-quartz.c (gdk_quartz_gc_get_values) (gdk_quartz_gc_set_values) (_gdk_windowing_gc_copy): support a lot more GC values. (gdk_quartz_update_context_from_gc): added GdkQuartzContextValuesMask parameter and set filling/stroking parameters accordingly. This function also gained full control over the FG and BG colors (they can't be set separately any more). The stipple mask part of the patch doesn't work but seems to take the right approach and doesn't make things worse, so I applied it. Did *not* apply the clipping part of the patch since I don't understand it (I don't understand the version in CVS either, but it at least works :-) * gdk/quartz/gdkdrawable-quartz.c: pass the right masks to gdk_quartz_update_context_from_gc() and removed separate color setting calls. Some minor fixes. * gdk/quartz/gdkwindow-quartz.c (gdk_window_impl_quartz_begin_paint_region): set the CGContext's fill color manually. We don't have/need a GC here. 2006-09-21 Michael Natterer * gdk/quartz/gdkwindow-quartz.c (gdk_window_impl_quartz_begin_paint_region): fix cast: it's drawable_impl->wrapper that is the GdkWindow, not the drawable_impl itself. 2006-09-20 Behnam Esfahbod * gdk/x11/gdkkeys-x11.c: (get_direction): just check the first shift-level of keyboard layout for RTL and LTR keysyms() (compliment to #116626) Wed Sep 20 16:59:38 2006 Tim Janik * gtk/gtkviewport.c: always update the bin_window position and size in size_allocate, even if we don't have a visible child. this fixes expose artefacts as described in #313508. * gtk/gtkscrolledwindow.c: make hiding of automatic scrollbars when we have no visible child explicit. 2006-09-19 Ryan Lortie * docs/reference/gdk/gdk-sections.txt: * gdk/gdk.symbols: * gdk/gdkpango.h: * gdk/gdkpango.c: Bug 355343. Add a GdkPangoAttrEmbossColor. (gdk_pango_layout_get_clip_region): Remove an unused variable. (gdk_pango_attr_embossed_new): Fix documentation. Tue Sep 19 17:00:04 2006 Tim Janik * gtk/gtkarrow.c: added GtkArrow::arrow-scaling style property to control the arrow/border ratio within the allocation. * tests/testgtk.c: added a GtkArrow to handle box test. * tests/testgtkrc: test ::arrow-scaling property. 2006-09-19 Matthias Clasen * gtk/gtkfilechooserdefault.c (update_current_folder_get_info_cb): Display an error when we come to the root. 2006-09-16 Matthias Clasen * gtk/gtkfilechooserbutton.c: Use bookmark labels in the combobox. * gtk/gtkfilechooserbutton.c: Don't add remote volumes and bookmarks to the model in local-only mode, to avoid authentication dialogs pop up for invisible bookmarks, and to fix issues with separators not being hidden when they should. (#354887, Dennis Cranston) 2006-09-16 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_finalize): Unref the treeview use in list mode. (#355732, Richard Hult) * gtk/gtktreeview.c (gtk_tree_view_set_grid_lines): Send change notification for the right property. (#355308, Torsten Schoenfeld) 2006-09-15 Michael Natterer * gtk/gtktreeview.c (gtk_tree_view_key_press): refactored column header navigation/resizing/reordering to be more readable and lose one level of nesting. 2006-09-15 Kristian Rietveld * gtk/gtktreeview.c (gtk_tree_view_key_press): actually directly return after handling column button focus; we disable wrap around with this (which actually happened via a really weird code path). (Michael Natterer) 2006-09-15 Kristian Rietveld * gtk/gtktreeview.c (gtk_tree_view_key_press): make column resizing code RTL aware, also break from the loops after we have seen the focussed column button (Michael Natterer). Thu Sep 14 12:28:51 2006 Tim Janik * tests/testrichtext.c (main): intialize random number generator state upon program start, to enable truely random testing. 2006-09-13 Michael Emmel * gdk/directfb/gdkcolor-directfb.c small clean ups include order * gdk/directfb/gdkwindow-directfb.c fixed beep compile error * gdk/directfb/Makefile.am removed GDK_PIXBUF_DISABLE_DEPRECATED GDK_DISABLE_DEPRECATED to allow compile per Behdad * gdk/quartz/Makefile.am same change as directfb Makefile * gtk/Makefile.am fixed typo that cause socket stubs not to compile 2006-09-13 Matthias Clasen * gtk/gtkcolorsel.c: Use a GtkWindow instead of a GtkInvisible for the grab widget, to make the color picker work with window groups. 2006-09-12 Hong Jen Yee signed off by: Dom Lachowicz * modules/engines/ms-windows/msw_style.c: Bug 340201. This contains a large number of improvements to the Microsoft Windows theme engine which are fully described in the bug report. Mon Sep 11 14:22:39 2006 Tim Janik * tests/testgtk.c: fixed compiler warnings. 2006-09-10 Matthias Clasen * gtk/gtkfilechooserbutton.c (model_add_special): Request the display name too, otherwise "Desktop" does not appear in the file chooser button. 2006-09-10 Tor Lillqvist * gdk/win32/gdkprivate-win32.h * gdk/win32/gdkmain-win32.c * gdk/win32/gdkwindow-win32.c: Define WINVER and _WIN32_WINNT as 0x0500 in gdkprivate-win32.h instead of doing it in two source files. (#355212, Mike Edenfield) * gdk/win32/gdkwindow-win32.c: We can also remove the ersatz GetAncestor() for the _MSC_VER && WINVER < 0x0500 case, I hope. 2006-09-10 Matthias Clasen * Commit a patch by Behdad to fix typos, omissions and other errors in the symbol aliasing, and add checks for local PLT entries. (#354687, Behdad Esfahbod) * gtk/gtktreeview.c (gtk_tree_view_search_scroll_event): Renew the flush timeout. (#354043, Nelson Benitez) * gtk/gtkfilechoosersettings.c (set_unexpected_element_end_error): Improve wording. String change! (#355126, David Lodge) * gtk/updateiconcache.c: Improve wording. String change! (#355128, David Lodge) * gtk/paper_names_offsets.c: Fix a typo. String change! (#355134, David Lodge) 2006-09-09 Matthias Clasen * gdk/x11/gdkfonts-x11.c: Fix small theoretical memory leaks. (#353916, Chris Wilson) * gtk/gtksettings.c (_gtk_settings_reset_rc_values): Don't leak the to_reset list. (#353914, Chris Wilson) * gtk/gtkwidget.c: Add docs for the parent-set signal. (#353772, Mariano Suárez-Alvarez) 2006-09-08 Matthias Clasen * gtk/gtktextbuffer.c (remove_all_selection_clipboards): Don't clear clipboards here, since we are called from finalize and can't emit signals. * configure.in: Set version to 2.11.0 2006-09-06 Richard Hult * gdk/quartz/gdkkeys-quartz.c: (maybe_update_keymap): Special-case shift-tab and map it to GDK_ISO_Left_Tab, fixes bug #350806. 2006-09-04 Kristian Rietveld * gtk/gtkfilechooserdefault.c (update_current_folder_get_info_cb): if setting the given folder failed, try setting the parent folder until we succeed; display an error box at the end. 2006-09-04 Kristian Rietveld * gtk/gtkpathbar.c (gtk_path_bar_dispose): don't cancel the operations spawned by buttons here, (set_button_image_get_info_cb): bail out if button is NULL, but do free button_data, (button_data_free): only free the data if non NULL (since this function can be called multiple times for the same data), cancel handle if pending but don't free button_data in this case (will happen in the callback). 2006-09-04 Michael Natterer * gtk/gtkrc.c (rc_parse_token_or_compound) (gtk_rc_parse_assignment): serialize floating point values using locale-independent functions. (#346751, Frederic Crozat) 2006-09-04 Tor Lillqvist * gdk/win32/gdkevents-win32.c * gdk/win32/gdkwindow-win32.c: Use wide-char API for message and window handling (PeekMessage, PostMessage, SendMessage, DispatchMessage, DefWindowProc, RegisterClassEx, CreateWindowEx). (#321597) 2006-09-03 Kristian Rietveld * gtk/gtkfilechooserdefault.c (save_entry_get_info_cb), (file_exists_get_info_cb), (gtk_file_chooser_default_should_respond): change file_exists_and_is_not_folder checks to get the file info for the path directly instead of querying the current file folder of the save entry. * gtk/gtkfilechooserprivate.h (struct _GtkFileChooserDefault): add new field. * tests/autotestfilechooser.c (wait_for_idle_idle), (wait_for_idle), (test_reload_sequence), (test_button_folder_states_for_action): wait for idle after setting a folder to ensure the async operations to load the folder are finished, (test_confirm_overwrite), (test_confirm_overwrite_for_path): factor out test_confirm_overwrite code so we can add tests for more paths more easily. 2006-09-03 Richard Hult * gdk/quartz/GdkQuartzView.c (drawRect): Don't do anything if exposure isn't in the event mask, plug a leak, and check that the window isn't destroyed. (isOpaque): Check that the window isn't destroyed, fixes bug #353028. 2006-09-03 Matthias Clasen * gtk/gtkwidget.c (gtk_widget_class_init): Fix a typo. (#354035, Mariano Suárez-Alvarez) * gtk/gtkmain.c (post_parse_hook): * gdk/gdk.c (gdk_init): Handle display_name being NULL. (#354004, Chris Wilson) 2006-09-03 Tor Lillqvist * gdk/win32/gdkwindow-win32.c (gdk_window_beep): No GDK_WINDOW_DISPLAY in the Win32 backend. * gtk/gtkfilesystemwin32.c: Copy what Kris did to gtkfilesystemunix.c 2006-09-02 Kristian Rietveld First part of file chooser fixes. * gtk/gtkfilechooserbutton.c (model_add_special): also set the handle in the model for the desktopdir case. * gtk/gtkfilechooserdefault.c (shortcuts_add_current_folder): free volume in case we retrieved it but don't pass it on to insert_path, (shortcuts_model_create): change the column type for the handles to pointer instead of GObject so our handle ref counting is not disturbed, (show_and_select_paths_finished_loading): don't forget to unref the dialog. * gtk/gtkfilesystemunix.c (gtk_file_system_unix_class_init), (gtk_file_system_unix_init), (gtk_file_system_unix_dispose): remove pending execute_callbacks_idle during dispose, also execute all callbacks waiting to be run in the next idle, (queue_*callback), (execute_callbacks_idle): refactor to maintain a list of callbacks to call per file system instead of globally, guard the file system during callback invocation, (gtk_file_system_unix_get_folder): only add load folder idle if none has been added yet. 2006-09-01 Matthias Clasen * gtk/gtkentry.c: Don't unnecessarily reset the im context when deleting the selection. (#353803, Alex Larsson) 2006-09-01 Abel Cheung * configure.in: Added 'ang' 'dz' to ALL_LINGUAS. 2006-08-31 Matthias Clasen Stop cursor blinking after a configurable timeout. (#353670, #352442, Arjan van de Ven, Manu Cornet) * gtk/gtksettings.c (gtk_settings_class_init): Add a gtk-cursor-blink-timeout setting, which specifies the number of seconds that the cursor should blink after a user interaction. The default value is G_MAXINT to preserve the current behaviour. * gtk/gtkentry.c (blink_cb): Stop blinking after blink-timeout seconds. * gtk/gtkentry.c (gtk_entry_completion_key_press) (gtk_entry_button_press, gtk_entry_focus_in): Reset the blink timer. * gtk/gtktextview.c (blink_cb): Stop blinking after blink-timeout seconds. * gtk/gtktextview.c (gtk_text_view_key_press_event) (gtk_text_view_button_press_event, gtk_text_view_focus_in_event): Reset the blink timer. 2006-08-31 Matthias Clasen * gtk/gtkprintoperation-unix.c (get_print_dialog): Don't specify explicit format capabilities. (#346505, Christian Persch) * modules/printbackends/cups/gtkprintbackendcups.c (cups_request_printer_list_cb): Send printer-list-done on error. 2006-08-31 Michael Natterer * gdk/x11/gdkwindow-x11.c (gdk_window_beep): Fix build. 2006-08-30 Richard Hult * gdk/quartz/gdkwindow-quartz.c (gdk_window_beep): Fix build. 2006-08-30 Matthias Clasen * gdk/x11/gdkwindow-x11.c (gdk_window_beep): Only use XKB for beeping if we are using XKB. 2006-08-29 Matthias Clasen * gdk/gdkwindow.h: * gdk/gdk.symbols: * gdk/directfb/gdkwindow-directfb.c (gdk_window_beep): * gdk/win32/gdkwindow-win32.c (gdk_window_beep): * gdk/quartz/gdkwindow-quartz.c (gdk_window_beep): * gdk/x11/gdkwindow-x11.c (gdk_window_beep): Add a function to beep on a window. For X11, implement this with XkbBell. (#353455, Mariano Suárez-Alvarez) 2006-08-29 Tor Lillqvist Remove support for Windows 9x/ME. GTK+ hasn't worked on Win9x since 2.6 or 2.8. It's pointless to keep the Win9x code in here as it isn't being maintained anyway. If somebody is interested, it can always be found in older GTK+ versions, and in CVS. * configure.in * acconfig.h * gdk/Makefile.am * gdk/win32/Makefile.am * gdk/win32/libie55uid.la * gdk/win32/gdkevents-win32.c: Remove the --with-ie55 configure switch and associated stuff. Active IMM and the header was used for IM support on NT4 and Win9x. Win2k and later have IM support built-in. * gdk/win32/gdkcursor-win32.c * gdk/win32/gdkdnd-win32.c * gdk/win32/gdkdrawable-win32.c * gdk/win32/gdkevents-win32.c * gdk/win32/gdkgc-win32.c * gdk/win32/gdkglobals-win32.c * gdk/win32/gdkkeys-win32.c * gdk/win32/gdkmain-win32.c * gdk/win32/gdkproperty-win32.c * gdk/win32/gdkselection-win32.c * gdk/win32/gdkwindow-win32.c: Remove the G_WIN32_IS_NT_BASED() and G_WIN32_HAVE_WIDECHAR_API() tests and their false (Win9x) branches, and any variables or static functions used only by the Win9x branches. * gdk/win32/gdkprivate-win32.h: Remove backup definitions for constants that aren't missing from current mingw and MSVC6 headers. * gdk/win32/gdkmain-win32.c * gdk/win32/gdkprivate-win32.h: Remove the _gdk_win32_gdi_failed() function. On NT-based Windows GetLastError() returns error codes also for failed GDI calls, so we can use _gdk_win32_api_failed() always. 2006-08-29 Emmanuele Bassi * gtk/gtkrecentchoosermenu.c (gtk_recent_chooser_menu_set_current_uri): Break when an item is found and activated. (#353449, based on a patch by Jan Arne Petersen) Fri Jul 14 16:13:37 2006 Tim Janik * gtk/gtkprogressbar.c: introduced ::xspacing and ::yspacing style properties which make all hardcoded padding and spacing values configurable. properly swap ::text-xalign treatment for RTL widgets. * gtk/gtkprogress.c: fixed style property blurbs. made alignment proeprty more consistent with GtkMisc alignment blurbs. mention RTL treatment for text-xalign. Tue Aug 29 11:57:40 2006 Tim Janik * tests/testgtk.c: allow (most) windows to be resizable. added ellipsization settings to progress bars. 2006-08-28 Matthias Clasen * modules/printbackend/cups/gtkprintbackendcups.c: Use a resonable timeout of 3 seconds when polling for printer list updates, instead of 300000 seconds... 2006-08-28 Michael Natterer * gtk/gtktextbufferserialize.c (serialize_text): don't write out for tags that have already been closed by the logic which turns overlapping spans into XML-able trees. Fixes broken XML when there are overlapping tags in the buffer. Also free two leaked GLists and did some cleanup. * tests/Makefile.am * tests/testrichtext.c: new test which creates randomly tagged GtkTextBuffers and serializes/deserializes them. 2006-08-26 Matthias Clasen * gtk/gtkstatusicon.c (gtk_status_icon_reset_image_data): Don't leak pixbufs. (#352264, Ross Burton) * gtk/gtklinkbutton.c (set_link_underline): Don't leak PangoAttributes. (#352391, Paolo Borelli) 2006-08-25 Matthias Clasen * demos/gtk-demo/Makefile.am: * demos/gtk-demo/textscroll.c: Add an example of automatic scrolling, thanks to Yevgen Muntyan. (#351206) * gtk/gtkmodules.c (find_module): Use local binding when loading modules. (#351868) 2006-08-24 Michael Natterer * gdk/quartz/gdkdisplay-quartz.c (gdk_display_get_name): return the hostname instead of NULL. 2006-08-23 Matthias Clasen * gtk/gtkprinteroptionwidget.[hc]: Fix confusion about names and values in comboboxes, and clean up some coding style issues. 2006-08-23 Tor Lillqvist * gtk/gtkfilesystemwin32.c (gtk_file_system_win32_make_path): Revert unintended translatable string addition. Use same string in GError as in gtkfilesystemunix.c. * gtk/gtkfilesystemwin32.c (_gtk_file_system_win32_path_compare): Fix logic at the end of strings. * gtk/gtkfilesystemwin32.c: Maintain a hash table of live handles and check that we have no outstanding handles at finalization time. (Copying what Matthias did for gtkfilesystemunix.c) 2006-08-23 Matthias Clasen * gtk/gtkfilesystemunix.c: Maintain a hash table of live handles and check that we have no outstanding handles at finalization time. (Copying what Federico did for gtkfilesystemgnomevfs.c) 2007-08-22 Matthias Clasen * Branch for 2.10