2007-03-15 Federico Mena Quintero Merged from gtk-2-10: * gtk/gtkfilechooserdefault.c (find_good_size_from_style): PANGO_PIXELS() gives us device units, which are *points* in pangocairo's parlance, but we want actual pixels. So, get the screen's resolution to compute the actual number of pixels. Fixes bug #418585. 2007-03-15 Emmanuele Bassi * gtk/gtkrecentmanager.c (gtk_recent_manager_add_item): Remove unused GError; do not allocate GtkRecentData and use a variable on the stack. (#418673, Morten Welinder) 2007-03-15 Emmanuele Bassi * gtk/gtkaction.[ch]: Add GtkActionClass::get_submenu() vfunc: actions providing a menu item or a menu tool button with already a submenu should return the GtkMenu widget. * gtk/gtkuimanager.c (update_node): If an action provides its own submenu, use it instead of adding an empty one * gtk/gtkrecentaction.[ch]: Add GtkRecentAction, an action implementing the GtkRecentChooser interface for displaying the list of recently used files into menus and toolbars generated using GtkUIManager. (#338843) * gtk/Makefile.am: * gtk/gtk.h: * gtk/gtk.symbols: Add GtkRecentAction API to the build. * tests/testactions.c: Exercise the GtkRecentAction API. 2007-03-15 Chris Wilson * gtk/gtkicontheme.c (ensure_valid_themes), (rescan_themes), (gtk_icon_theme_rescan_if_needed): Protect ensure_valid_themes() from recursion, which can happen for example if the app tries to reload an icon from within a theme-changed handler. (#418531) 2007-03-15 Richard Hult * gdk/quartz/gdkmain-quartz.c: Add stubs for gdk_notify_startup_complete_with_id and gdk_window_set_startup_id here too. 2007-03-15 Emmanuele Bassi * gtk/gtkrecentmanager.c: Fix documentation errors. (Morten Welinder) 2007-03-15 Tor Lillqvist * gdk/gdk.symbols: Add gdk_notify_startup_complete_with_id and gdk_window_set_startup_id. * gdk/win32/gdkmain-win32.c: Add dummy implementations of the above. 2007-03-15 Emmanuele Bassi * gtk/gtkrecentchooserprivate.h: * gtk/gtkrecentchooserutils.c: Move filtering of the recent files list into the shared implementation; do the filtering before the sorting, so that we always clamp on the desired size. (#418219) * gtk/gtkrecentchoosermenu.c: Remove the filtering of the list, as it's already been done. * gtk/gtkrecentchooserdefault.c: Ditto; also remove the GtkTreeModelFilter: just reload the view if the sorting and filtering properties change. * gtk/testrecentchoosermenu.c: Exercise the limit property. 2007-03-14 Michael Natterer Make gtk_widget_set_extension_events() work on already realized widgets (bug #379550, Tommi Komulainen) * gdk/x11/gdkinput.c (gdk_input_set_extension_events): allow to be called multiple times without leaking and work correctly when already realized (don't rely on a configure event following). * gtk/gtkwidget.c (gtk_widget_set_extension_events_internal): new internal function which walks the GdkWindow tree and sets the extension events on all windows that belong to the widget. (gtk_widget_realize) (gtk_widget_set_extension_events): use the new function. 2007-03-14 Emmanuele Bassi Various clean ups in the GtkRecent code. (see #338843) * gtk/gtkrecentchooserdefault.c: * gtk/gtkrecentchoosermenu.c: * gtk/gtkrecentchooserprivate.h: * gtk/gtkrecentchooserutils.c: Move the recent chooser function for getting the sorted and clamped list of recent files from the manager outside the implementations. * gtk/gtkrecentchooserdefault.c (chooser_set_sort_type): Repopulate the list when the sorting order changes. (gtk_recent_chooser_default_dispose), (gtk_recent_chooser_default_finalize): Move object unref and source removal from finalize to dispose. * gtk/gtkrecentchooser.c (gtk_recent_chooser_type_init): Relax the prerequisite for the GtkRecentChooser interface implementations, from GtkObject to GObject. (gtk_recent_chooser_class_init): Use GTK_PARAM_* instead of G_PARAM_* 2007-03-13 Emmanuele Bassi Apply patch by Vytautas Liuolia for changing the startup notification id on a window in the X11 backend. (#347375) * gdk/gdk.h: * gdk/gdkx.h: * gdk/x11/gdkdisplay-x11.c: Add gdk_notify_startup_complete_with_id() and gdk_x11_display_get_startup_notification_id(). * gdk/gdkwindow.h: * gdk/x11/gdkwindow-x11.c: Add gdk_window_set_startup_id(). * gtk/gtkwindow.h: * gtk/gtkwindow.c: Add gtk_window_set_startup_id(), used to change the startup notification id. (gtk_window_class_init), (gtk_window_init), (gtk_window_set_property): Add write-only "startup-id" property to GtkWindow. (gtk_window_realize): Set the startup notification id on a GtkWindow if it's valid. (gtk_window_map): If we have another valid startup notification id then finish the notification process. 2007-03-13 Matthias Clasen * gtk/gtknotebook.c (gtk_notebook_real_insert_page): Fix tabbed browsing in epiphany. (#413664, Christian Persch) 2007-03-12 Matthias Clasen * gtk/gtksizegroup.c (gtk_size_group_add_widget): Clarify docs. (#345844, Torsten Schoenfeld) * gdk/x11/gdkevents-x11.c (gdk_display_add_client_message_filter): * gdk/gdkwindow.c (gdk_window_add_filter): Add cross-references. (#351252, Vincent Untz) * gtk/gtkprintoperation.c: Fix an oversight in an example. (#381083, Ian Puleston) * gtk/gtkcombobox.c: Clean up and clarify docs. (#412484) 2007-03-12 Matthias Clasen * gtk/gtkspinbutton.c (gtk_spin_button_style_set): Set the background of the panel window on style changes. (#402144, Benjamin Berg) 2007-03-12 Matthias Clasen * gtk/gtkbindings.c (gtk_binding_entry_add_signal): Remove an obsolete comment. (#402169, Xan Lopez) 2007-03-12 Matthias Clasen * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property): Don't copy PangoLanguage. (#340031, Morten Welinder) 2007-03-12 Matthias Clasen * gtk/gtkfilechooserbutton.c (change_icon_theme_get_info_cb): Handle the row reference path being NULL. (#410565, Joe Markus Clarke, patch by Chris Wilson) 2007-03-11 Matthias Clasen * tests/testiconview.c: Handle Menu key presses without crash. (#385637, Christian Persch) 2007-03-11 Matthias Clasen * gtk/gtktooltips.c (gtk_tooltips_get_info_from_tip_window): Don't crash if active_tips_data is NULL. (#382904, Li Yuan) 2007-03-11 Matthias Clasen * gtk/gtktextview.c (gtk_text_view_set_buffer): Set first_para_mark to NULL. (#396805, Colin Leroy, patch by Mariano Suárez-Alvarez) 2007-03-12 Kristian Rietveld * gtk/gtkfilechooserdefault.c (check_save_entry): immediately bail out if current_folder is NULL. (#350988, lots of reporters, modified patch by Jan Darmochwal). 2007-03-10 Kristian Rietveld * gtk/gtktreeview.c (gtk_tree_view_search_dialog_hide): only hide the search dialog and send focus events if the search dialog is currently visible. 2007-03-10 Richard Hult * gdk/quartz/gdkdrawable-quartz.c: (gdk_quartz_ref_cairo_surface): Reuse the surface during its lifetime. (gdk_quartz_drawable_get_context): Update for the new quartz cairo surface API (#410442). Don't lock focus unless called outside of an expose event. (gdk_quartz_drawable_release_context): Only flush the CG context and unlock focus if called outside of expose. (_gdk_quartz_drawable_finish): New function, used to free the cached cairo surface. * gdk/quartz/gdkwindow-quartz.c: (gdk_window_impl_quartz_begin_paint_region): A few small style changes. (_gdk_window_impl_quartz_get_type): No need to make the type info static. (gdk_window_quartz_process_all_updates): Move the autorelease pool allocation and freeing outside the loop. (_gdk_windowing_window_destroy): Finish the drawable. (move_resize_window_internal): Small cleanup and remove comment. * gdk/quartz/gdkpixmap-quartz.c: Finish the drawable. 2007-03-10 Richard Hult * gdk/quartz/gdkprivate-quartz.h: Add missing function signature to fix a build warning. 2007-03-10 Richard Hult * gdk/quartz/gdkdisplay-quartz.c: (gdk_display_get_name): Plug a leak. 2007-03-10 Richard Hult * gdk/quartz/GdkQuartzView.c: Remove unneccesary exposure mask check. 2007-03-10 Richard Hult * gdk/quartz/gdkevents-quartz.c: (gdk_screen_get_setting): Don't set the font name here, leave that to themes, fixes #387508. 2007-03-10 Kristian Rietveld * gtk/gtktreemodelsort.c (gtk_tree_model_sort_ref_node), (gtk_tree_model_sort_real_unref_node): when (un)reffing an element, also (un)ref its parent elements. (Fixes #364946, reported by many, testcase by Andreas Koehler). 2007-03-10 Matthias Clasen * gtk/gtkprintoperation-unix.c: Initialize the do_preview field of PrintResponseData. (#396703, Christian Persch) * tests/print-editor.c: Plug some leaks. 2007-03-09 Matthias Clasen * gtk/gtktextview.c (gtk_text_view_end_selection_drag): Get rid of the unused event argument. Update all callers. * gtk/gtktextview.c (gtk_text_view_focus_out): Call gtk_text_view_end_selection_drag. (#351671, Boyd Timothy) 2007-03-09 Matthias Clasen * modules/input/gtkimcontextxim.c (gtk_im_context_xim_filter_keypress): Don't commit modifier-adorned characters. (#331369, #335796, Lin Ma and others) 2007-03-09 Matthias Clasen * Everywhere: Remove unnecessary NULL checks before g_free(). (#369666, Morten Welinder, Djihed Afifi) * configure.in: Check for ftw.h 2007-03-09 Matthias Clasen * gtk/gtkfilesystemwin32.c (get_icon_path): Remove C99isms. (#416525, Kazuki Iwamoto) 2007-03-09 Tor Lillqvist * README.win32: Update. 2007-03-08 Matthias Clasen * gdk/x11/gdkasync.c (send_event_handler): Defer the callbacks to an idle to avoid deadlock with xcb-ified libX11. (#413032, Sebastian Dröge) 2007-03-08 Matthias Clasen * gtk/gtknotebook.c (gtk_notebook_real_insert_page): Set child visibility to FALSE here; it will be turned back on in switch_page. (#413664, Carlos Garnacho) 2007-03-08 Mathias Hasselmann * modules/engines/ms-windows/msw_style.c: Use proper border style when drawing shadow of scrolled windows on Windows XP (#168326) * modules/engines/ms-windows/xp_theme.c: Explicitly set size of element_part_map array to ensure it always is large enough. 2007-03-08 Mathias Hasselmann * gtk/gtkcombobox.c: Add shadow-type style property, set shadow-type property of GtkEntry accordingly, unify size-allocation of toggle button (#411123, patch from Mathias Hasselmann). * gtk/gtkentry.c: Add shadow-type property. Query style properties on style changes only (#411123, patch from Mathias Hasselmann). * modules/engines/ms-windows/msw_style.c: Drop combo_box_draw_box hack as GtkComboBox emits drawing requests now (#411123, patch from Mathias Hasselmann). 2007-03-08 Mathias Hasselmann * gtk/gtkscrolledindow.c: Improve look of GtkScrolledWindow on Windows by implementing a scrollbars-within-bevel style property. (#168326) 2007-03-08 Mathias Hasselmann * gtk/gtkfilesystemwin32.c: Use Windows shell icons. Icons are stored in the current theme with the name "gtk-win32-shell-icon;PATH;INDEX". PATH and INDEX reference shell icons as reported by SHGetFileInfoW. (#412221) 2007-03-07 Matthias Clasen * gtk/gtkexpander.c (gtk_expander_paint_focus): Draw the focus around the arrow if there is no label widget. (#124045, Cody Russell) 2007-03-07 Matthias Clasen * gtk/gtkcombo.c: (gtk_combo_init): * gtk/gtkcombobox.c: (gtk_combo_box_set_popup_widget), (gtk_combo_box_menu_setup): Set names on the popup widgets to make them themable. (#414975, Benjamin Berg) 2007-03-07 Michael Natterer * gtk/gtkcellrendereraccel.c: use multihead safe ungrab functions instead of gdk_keyboard_ungrab() and gdk_pointer_ungrab(), remove empty finalize() implementation, some cosmetic cleanup (bug #415645). 2007-03-06 Chris Wilson * gtk/gtkicontheme.c (update_current_theme), (gtk_icon_theme_init), (do_theme_change), (gtk_icon_theme_set_custom_theme), (load_themes): Be careful not to trigger a style reset before we have loaded the icon theme. (#414875). 2007-03-06 Tor Lillqvist * gdk/Makefile.am * gtk/Makefile.am: Further fixes for building on Win32 outside srcdir. (#413492, Mathias Hasselmann) 2007-03-04 Ihar Hrachyshka * configure.in: Added be@latin to ALL_LINGUAS. Problems seems to be fixed. 2007-03-04 Claudio Saavedra * configure.in: Removed be@latin from ALL_LINGUAS, as it's currently breaking the build. 2007-03-04 Ihar Hrachyshka * configure.in: Added be@latin to ALL_LINGUAS 2007-03-03 Guillaume Savaton * configure.in: Added Esperanto (eo) to ALL_LINGUAS 2007-03-01 Matthias Clasen * gtk/gtksettings.c: Always store gtk-color-scheme values from all sources in the ColorSchemeData struct and ignore the property_value for gtk-color-scheme. This fixes #412596, reported by Thomas Wood. 2007-02-28 Matthias Clasen * gtk/gtksettings.c: Make color scheme update properly when changing themes. (#402131, Benjamin Berg) 2007-02-28 Matthias Clasen * gtk/gtkrc.c: Don't leak references to the color-hash gotten from GtkSettings. (#409357, Benjamin Berg) 2007-02-28 Tristan Van Berkom * gtk/gtkradiobutton.c: Fixed a warning from g_object_set (radiobutton, "group", NULL, NULL). 2007-02-26 Matthias Clasen Apply a patch by Carlos Garnacho to fix several problems with filechooser size handling (#325477, #151169, 143213, #153785) * gtk/gtkfilechooserdefault.c: Increase NUM_LINES slightly. (browse_widgets_create): Don't force the paned position to 200. (find_good_size_from_style): Take the size of the extra widget into account. * gtk/gtkfilechooserdialog.c (file_chooser_widget_update_hints): Accept a minimal width parameter. Update all callers. 2007-02-26 Matthias Clasen * gtk/gtkprintunixdialog.c: Change the label to "Pages per side", which is more accurate, suggested by Tim Waugh. String change! 2007-02-26 Matthias Clasen * gtk/gtkprinteroptionwidget.c: Make the folder selection for print-to-file work. Reported by Ian Collier. 2007-02-26 Chris Wilson Bug 409101 – invalid read to gtkicontheme.c insert_theme(), might cause gnome-panel crash * gtk/gtkicontheme.c: (scan_directory): Reorder the replacement of the shared base_name key, so that we avoid dereferencing the string in the icon_theme->all_icon hash table after freeing it from the dir->icons hash table. 2007-02-26 Tor Lillqvist * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon_name): Add comment clarifying that "icon name" here is not related to the freedesktop.org icon naming stuff. 2007-02-23 Dom Lachowicz * modules/engines/ms-windows/msw_style.c: Bug 411118 - bad bevel for progress bar on windows classic. Match from Mathias Hasselmann. 2007-02-19 Tor Lillqvist * gdk/win32/gdkinput.c (gdk_device_finalize, gdk_device_class_init): Remove. (gdk_device_get_type): Drop class init function. The X11 version doesn't have one either. (gdk_devices_list): Call gdk_display_list_devices() on _gdk_display. (gdk_display_list_devices): Check that the argument is _gdk_display. * gdk/win32/gdkinput-win32.h (GdkAxisInfo, GdkDevicePrivate): Cleanup: remove unused fields. * gdk/win32/gdkinput-win32.c: Corresponding changes. Fix function names in a few debugging printouts. 2007-02-18 Matthias Clasen * gtk/gtktextlayout.c (gtk_text_layout_move_iter_visually): Ignore invisible text when going to end of the previous line. (#382565) 2007-02-18 Richard Hult * gdk/quartz/gdkwindow-quartz.c: (gdk_window_quartz_process_all_updates), (_gdk_windowing_window_destroy): Setup release pools to plug two leaks, patch from Erik van Pienbroek, fixes bug #396649. 2007-02-18 Richard Hult * gdk/quartz/gdkevents-quartz.c: Add stub for gdk_display_add_client_message_filter, patch from Taybin Rutkin. Fixes bug #405870. * gdk/quartz/gdkprivate-quartz.h: Add prototypes to fix build warnings. 2007-02-18 Richard Hult * gdk/quartz/GdkQuartzView.h: * gdk/quartz/GdkQuartzWindow.h: * gdk/quartz/gdkquartz.h: Import AppKit.h instead of Quartz.h. * gdk/quartz/gdkscreen-quartz.c: (get_mm_from_pixels): Don't use userSpaceScaleFactor for 10.3. Those changes bring us closer to working on panther, patch from Mathias Hasselmann. * gdk/quartz/gdkeventloop-quartz.c: Add includes to fix build warnings. 2007-02-16 Behdad Esfahbod * gdk/gdkpango.c (gdk_pango_layout_get_clip_region): Use PANGO_PIXELS instead of division. (#334617) 2007-02-16 Kristian Rietveld * gtk/gtktreeprivate.h: add cursor_offset field. * gtk/gtktreeview.c (gtk_tree_view_init), (gtk_tree_view_move_cursor_page_up_down): fix off by one error in page up/down handling by memorizing the offset into the cursor row. (Fixes #399809, reported by Bruce Bowler). 2007-02-16 Kristian Rietveld * gtk/gtktreeview.c (gtk_tree_view_search_dialog_hide): send a focus-in event to the tree view after hiding the search dialog. (#356515, Rich Burridge, Peter Parente). 2007-02-16 Kristian Rietveld * tests/testtooltips.c (query_tooltip_text_view_cb): also handle keyboard tooltips. (#408325, Matthias Clasen). 2007-02-16 Xan Lopez * gtk/gtkcombobox.c (gtk_combo_box_expose_event): Cleanup the logic in expose event handler. Reviewed by Matthias Clasen, #406112 2007-02-16 Matthias Clasen * gtk/gtkmain.c: Run pre_parse_hook only once. (#403139, Kjartan Maraas) 2007-02-15 Matthias Clasen * gdk/x11/gdmain-x11.c (_gdk_xgrab_check_button_event): Be more careful when checking for ButtonRelease events that end implicit grabs. (#386618, Christof Krüger) 2007-02-15 Matthias Clasen * gtk/gtktextbtree.c (_gtk_text_btree_delete): Free the lines even if there are no views. (#408018, Albert Huang) 2007-02-15 Cody Russell * gdk/win32/gdkevents-win32.c: Make sure we get enough main context iterations while we're resizing so that the window contents are resized more smoothly (#389765). * gdk/win32/gdkevents-win32.c: Fix flickering widgets when window contents are resized (#310522). 2007-02-15 Matthias Clasen * gtk/updateiconcache.c: Handle symlinked .icon files intelligently; also avoid storing duplicate strings. 2007-02-15 Michael Natterer * gtk/gtkmenushell.c: remove two antique function typedefs that are probably obsolete for ages. 2007-02-14 Stefan Kost reviewed by: Matthias Clasen * configure.in: determine installation prefixes of dependent libs to crossreference docs (#407146). 2007-02-14 Kristian Rietveld * gtk/gtktooltip.c (child_location_foreach): check return value of gtk_widget_translate_coordinates() so we cannot end up using uninitialized x, y values. (#407863, patch from Carlos Garnacho). 2007-02-14 Kristian Rietveld * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button): use TREE_VIEW_DRAG_WIDTH/2 when calculating the drag window position instead of a hardcoded value. (Taken from maemo-gtk). 2007-02-14 Michael Natterer * gtk/gtkmenu.c (gtk_menu_motion_notify): don't forget to set the state of the synthesized GDK_ENTER_NOTIFY event. Fix taken from maemo-gtk. 2007-02-13 Kristian Rietveld * gtk/gtktooltip.c (gtk_tooltip_hide_tooltip): stop any pending tooltip timeout. (Fixes #406110, Carlos Garnacho). 2007-02-10 Emmanuele Bassi * gtk/gtkrecentchoosermenu.c: Fix the english of the comment; remove some type checking; use better variable naming for the internal menu item markers. 2007-02-09 Emmanuele Bassi * gtk/gtkrecentchoosermenu.c: Add support for both prepending and appending custom menu items. (gtk_recent_chooser_menu_constructor): Add a placeholder menu item for the empty menu case, and for giving us a starting point for the recent items populating process. (gtk_recent_chooser_menu_insert_item), (gtk_recent_chooser_menu_dispose_items): Insert an item at the position following the placeholder (and find that position if needed). (idle_populate_func), (idle_populate_clean_up): Show the placeholder menu item, instead of creating one each time. (gtk_recent_chooser_menu_populate): Kill some indirections and hide the placeholder before populating the menu. (set_recent_manager): Remember to remove the idle population source if the manager changes. * tests/testrecentchoosermenu.c: Test the appending and prepending of the menu items to the recent chooser menu widget. 2007-02-08 Emmanuele Bassi * gtk/gtkrecentchoosermenu.c (idle_populate_func): Keep count of the displayed items to build the menu items mnemonic instead of the overall item count. (#377164) (idle_populate_clean_up): Append a menu item if all the items got filtered in the idle populate function. (#405696) * tests/Makefile.am: * tests/testrecentchoosermenu.c: Add a test for the GtkRecentChooserMenu widget. Thu Feb 8 13:07:08 2007 Tim Janik * applied patch from Xan Lopez which adds GTK_BUTTONBOX_CENTER to GtkButtonBox (bug #336159). * gtk/gtkenums.h: * gtk/gtkvbbox.c, gtk/gtkhbbox.c, gtk/gtkbbox.c: support GTK_BUTTONBOX_CENTER. * tests/testbbox.c: new button box test, which allows testing of the various button box properties. * tests/testgtk.c: added GTK_BUTTONBOX_CENTER. to button box test. 2007-02-07 Cody Russell * gdk/gdk.symbols: Add gdk_event_request_motions Wed Feb 7 19:03:28 2007 Tim Janik * gtk/gtkentry.c (gtk_entry_motion_notify): fixed motion request condition which was wrongly ported with my last commit. Tue Feb 6 15:53:59 2007 Tim Janik * gtk/gtktextview.c (gtk_text_view_motion_event): * gtk/gtkspinbutton.c (gtk_spin_button_motion_notify): * gtk/gtkaboutdialog.c (credits_motion_notify_event): * gtk/gtkhruler.c (gtk_hruler_motion_notify): * gtk/gtkvruler.c (gtk_vruler_motion_notify): * gtk/gtkentry.c (gtk_entry_motion_notify): * gtk/gtktooltip.c (_gtk_tooltip_handle_event): * gtk/gtkhsv.c (gtk_hsv_motion): call gdk_event_request_motions() for new motion events after receiving motion hints. * gdk/gdkevents.[hc]: added gdk_event_request_motions(). 2007-02-06 Kristian Rietveld * gtk/gtktooltip.c (find_topmost_widget_coords_from_event): remove unused get of has_tooltip. * tests/testtooltips.c (query_tooltip_tree_view_cb): use the portable g_snprintf instead of snprintf. 2007-02-06 Michael Natterer * gtk/gtktooltip.c (gtk_tooltip_finalize): chain up. (gtk_tooltip_show_tooltip): move variables and code to local scope. Fixes warnings about maybe uninitialized variables. 2007-02-06 Kristian Rietveld New tooltips API. * gtk/Makefile.am * gtk/gtk.h * gtk/gtk.symbols: build system foo. * gtk/gtkmain.c (gtk_main_do_event): call tooltip event handler hook for appropriate events. * gtk/gtkmarshalers.list: add BOOLEAN:INT,INT,BOOLEAN,OBJECT. * gtk/gtkrc.c: add style for gtk-tooltip. * gtk/gtksettings.c (gtk_settings_class_init): make the different tooltip timeouts configurable. * gtk/gtkwidget.[ch]: add new properties, signals, make sure tooltips are hidden on unmap, destroy, update window event mask on realize, hook into focus change and show help handlers. * gtk/gtkwindow.h: move GtkWindow typdef to gtkwidget.h ... * gtk/gtktooltip.[ch]: new files. * tests/Makefile.am * tests/testtooltips.c: add test application. 2007-02-05 Dom Lachowicz * modules/engines/ms-windows/msw_style.c: Fix bug 404506, caused by prematurely releasing a DC. By Hiroyuki Yamamoto * modules/engines/ms-windows/msw_style.c: Fix bug 403470 - leaking pixbufs when drawing rotated tabs. By Daniel Atallah 2007-02-05 Michael Natterer * gtk/gtksettings.c: add new boolean settings gtk-enable-accels and gtk-enable-mnemonics which enable/disable accelerators and mnemonics (bug #72375, based on a patch from Tommi Komulainen). * gtk/gtkwindow.c (gtk_window_activate_key) * gtk/gtkmenushell.c (gtk_menu_shell_key_press): don't invoke them if the resp. setting is FALSE. * gtk/gtkaccellabel.c (gtk_accel_label_refetch) * gtk/gtklabel.c (gtk_label_set_pattern_internal): don't display them if the setting is FALSE. * gtk/gtklabel.c: added signal connection to the screen's settings object and traverse all widgets on the screen when the setting changes. It's slightly ugly to also update GtkAccelLabels here, but less ugly than connecting and traversing all widgets twice. 2007-02-05 Michael Natterer * gtk/gtktextbuffer.h (enum GtkTextBufferTargetInfo): changed values from G_MAXUINT-0, -1, -2 to -1, -2, -3 so we stay within ansi C enum value limits. Fixes bug #46757. 2007-02-03 Soren Sandmann * gtk/gtksequence.[ch]: Remove these files since GSequence has been moved into GLib. * gtk/gtkliststore.c: Port to GSequence instead of GtkSequence. * configure.in: Require glib-2.13.0 2007-02-04 Tor Lillqvist * gdk/win32/gdkcursor-win32.c: Don't define BITMAPV5HEADER on mingw with w32api >= 3.8, which has it in wingdi.h. (#403896) 2007-02-02 Kristian Rietveld * gtk/gtktreeview.c (gtk_tree_view_row_changed): remove unused style_get of vertical-separator. (#403165, Chris Wilson). 2007-02-02 Christian Persch * gtk/gtkfilechoosersettings.c: (get_config_filename), (ensure_settings_read), (_gtk_file_chooser_settings_init), (_gtk_file_chooser_settings_set_show_hidden), (_gtk_file_chooser_settings_set_expand_folders), (_gtk_file_chooser_settings_save): Use a simple key file instead of a markup file. Bug #399592. 2007-02-02 Mariano Suárez-Alvarez * gtk/gtkcellrenderertext.c(gtk_cell_renderer_text_class_init): be a little more helpful with the docs on GtkCellRendererText:alignment. Bug #403409. 2007-02-01 Michael Natterer * gtk/gtkmenu.c (gtk_menu_paint): pass &event->area to gtk_paint_box() calls. 2007-02-01 Michael Natterer * gtk/gtkmenu.c (gtk_menu_button_press) (gtk_menu_button_release) (gtk_menu_button_scroll): remove redundant and confusing if (GTK_IS_MENU (widget)) checks because "widget" is always a GtkMenu here. Thu Feb 1 12:22:06 2007 Tim Janik * gtk/gtkcombobox.c (gtk_combo_box_list_destroy): remove extra reference that gtkcombobox keeps on priv->popup_widget if it's a tree view. 2007-01-31 Christian Persch * gtk/gtkaboutdialog.c: (update_credits_button_visibility), (gtk_about_dialog_set_authors), (gtk_about_dialog_set_documenters), (gtk_about_dialog_set_artists), (gtk_about_dialog_set_translator_credits): Hide the Credits button iff there are no credits to show. Bug #402806. 2007-01-31 Tor Lillqvist * gdk/win32/gdkinput-win32.c (print_cursor): New debugging function. (_gdk_input_wintab_init_check): Call it when debugging output is requested. (_gdk_input_wintab_init_check): Skip duplicated cursors for Wacom tablets. The Wacom driver reports duplicated cursors with physid==0. Fix verified by Robert Ögren. 2007-01-30 Felix Riemann * modules/printbackends/file/gtkprintbackendfile.c: (file_printer_get_options): Fix leaked string. Fixes bug #402565. 2007-01-30 Matthias Clasen * gdk/x11/gdkwindow-x11.c (gdk_x11_window_move_to_current_desktop): (gdk_x11_window_set_user_time): Be more careful about toplevel possibly being NULL. (#402453, Sebastian Bacher) Tue Jan 30 12:09:56 2007 Tim Janik * gtk/gtksettings.c: cleaned up ::color-hash registration to not abuse class_n_properties and leave an uninitialized value array behind. 2007-01-29 Michael Natterer * gtk/gtkmenuitem.c (gtk_menu_item_select) (gtk_menu_item_deselect): queue a draw on the parent_menu_item of this menu item's menu, to enable themeing menu items depending on whether something is selected in their submenu (patch taken from maemo-gtk). 2007-01-28 Matthias Clasen * gtk/gtktoolbar.c: Reinstate gtk_toolbar_content_new_compatibility() that was mistakenly "cleaned up" a while ago. Also revert a problematic change to the screen_changed handler. (#401598, Søren Sandmann) 2007-01-28 Matthias Clasen * gtk/gtkframe.c (gtk_frame_size_allocation): Fix a problem with large y thickness. (#136592, Xan Lopez) 2007-01-28 Matthias Clasen * gtk/gtkaction.c (gtk_action_new): Use canonical property names. 2007-01-27 Matthias Clasen * gtk/gtknotebook.c (gtk_notebook_draw_arrow): (gtk_notebook_draw_focus): Avoid some unnecessary gtk_widget_get_style() calls. 2007-01-27 Matthias Clasen * gtk/gtktoolbar.c: * gtk/gtktoolitem.c: * gtk/gtktoolbutton.c: Rearrange things so that setting multiple properties causes not more than a single reconstruction of the contents. * gtk/gtkaction.c (connect_proxy): Set all tool button properties in one go. 2007-01-27 Matthias Clasen * gtk/gtkstatusicon.c: * gtk/gtktrayicon-x11.c: Fix GtkStatusIcon to not take up space on the panel if it is invisible. (340110, Christian Persch) * tests/teststatusicon.c: * tests/Makefile.am: Updates 2007-01-27 Matthias Clasen * gtk/gtkfilesel.h: * gtk/gtkrc.h: * gtk/gtk.symbols: Add deprecation guards for gtk_rc_style_ref/unref and the old file selector. (#348256) 2007-01-26 Matthias Clasen * gtk/gtkiconview.c: Documentation fixes (#400530, Anders Brander) 2007-01-26 Matthias Clasen * gtk/updateiconcache.c: Check the mtime of all directories, not just the toplevel, if ftw() is available. (#331671, Behdad Esfahbod) * configure.in: Check for ftw.h. 2007-01-26 Michael Natterer * modules/input/gtkimcontextxim.c (gtk_im_context_xim_finalize): destroy the XIM only if it exists. While the code does look safe in general, there can be corner cases where the "reconnecting" boolean being FALSE does not correspond to the XIM being allocated (fixes #329450, fix taken from maemo-gtk). Fri Jan 26 13:07:07 2007 Tim Janik * gtk/gtkstyle.c (draw_insertion_cursor): clamp cursor coordinates to window bounds (fix from Maemo Gtk). 2007-01-26 Michael Natterer * gtk/gtkentrycompletion.c (gtk_entry_completion_insert_prefix): only block/unblock completion->priv->insert_text_id if it is actually connected. While this can't happen the way GtkEntry itself uses the completion, it's still public API and should not blindly call functions that will spit warnings (fix taken from maemo-gtk). 2007-01-25 Matthias Clasen * gdk/gdkwindow.c: Reduce locking overhead by not repeatedly getting the paintable iface. 2007-01-24 Michael Natterer * gtk/gtkwidget.c (gtk_widget_set_state): revert generic disabling of PRELIGHT state for the reasons given in bug #135666. Widget states are sometimes abused or otherwise used wrongly for historic reasons, causing this part of the patch to break e.g. menu items. 2007-01-24 Roozbeh Pournader * README: Remove mention of no-longer-existing PATCH keyword in bugzilla. (#396899) 2007-01-23 Carlos Garcia Campos * gtk/gtkpagesetup.c (gtk_page_setup_set_paper_size_and_default_margins): Fix memory leak. Fixes bug #399907. 2007-01-22 Chris Wilson Bug 399314 – Add G_GNUC_WARN_UNUSED_RESULT to gtk_style_attach * gtk/gtkstyle.h: Cause gcc to issue a warning if the style returned from gtk_style_attach is not used. Failure to update widget->style causes some very difficult to reproduce bugs, eg Bug 353498 – crash in Terminal: changing icon theme. 2007-01-19 Michael Emmel * gdk/directfb/gdkevents-directfb.c: added fixes for window crossing events frm Attilio Fiandrotti 2007-01-19 Matthias Clasen * gtk/gtkcalendar.c: Fix build breakage. 2007-01-19 Kristian Rietveld * gtk/gtktreeview.c (gtk_tree_view_motion_bin_window), (add_scroll_timeout), (gtk_tree_view_drag_motion): factor out add_scroll_timeout(). (taken from maemo-gtk). 2007-01-18 Matthias Clasen * gtk/gtkcalendar.c: Fix problems with the initial focus in GtkCalendar. (#397783, Vincent Untz) 2007-01-19 Robert Ögren Fix for bug #143460 - missed tablet clicks on Windows * gdk/win32/gdkinput-win32.c (_gdk_input_wintab_init_check): Request absolute reporting of tablet button state, and cut down the packet queue size a bit. (_gdk_input_other_event): Change button state handling accordingly. Also drop the no longer necessary code that detects missed clicks/releases for button 1. The switch to absolute button state should prevent missed events for all buttons. Additionally, swap button 2 and 3. (_gdk_input_grab_pointer): Don't reset button_state, that will only cause a new press event as soon as the next tablet packet arrives. 2007-01-19 Tor Lillqvist Build Wintab support always on Windows. Don't require the Wintab SDK. * configure.in: Drop the --with-wintab option. Drop the HAVE_WINTAB feature test macro and Automake variable. * acconfig.h * config.h.win32.in: Drop HAVE_WINTAB. * gdk/win32/gdkevents-win32.c * gdk/win32/gdkinput.c * gdk/win32/gdkinput-win32.h * gdk/win32/gdkinput-win32.c * gdk/win32/gdkmain-win32.c: Make HAVE_WINTAB ifdef blocks unconditional. * gdk/win32/gdkinput-win32.c (_gdk_input_wintab_init_check): Try to load wintab32.dll dynamically here. If it is found look up the handful Wintab functions we use. (rest of file): Use these function pointers instead of calling the functions from wntab32x.lib. The code in wntab32x.lib did the same thing anyway: tried to load wintab32.dll, and looked up the addresses of the actual functions from it. * gdk/Makefile.am * gdk/win32/Makefile.am: Drop the libwntab32x hacks. * gdk/win32/wintab.h * gdk/win32/pktdef.h: New files. Copied from the Wintab SDK. Copyright blurb says: "The text and information contained in this file may be freely used, copied, or distributed without compensation or licensing restrictions." * README.win32: Update a bit. Remove the text about the Wintab SDK. 2007-01-18 Tor Lillqvist * gdk-pixbuf/Makefile.am * gdk/Makefile.am * gdk/win32/Makefile.am * gtk/Makefile.am: Fixes for building outside srcdir on Win32. (#336819, #340013) Drop distributing the handmade .la libtool wrapper for the wntab32x library. It's too much trouble making it work when building outside srcdir. Just link to the library direcly using -Wl,win32/libwntab32x.a. 2007-01-18 Michael Natterer * gtk/gtkcheckbutton.c * gtk/gtkdnd.c * gtk/gtkentry.c * gtk/gtkmenu.c * gtk/gtktreeview.c * gtk/gtkviewport.c: pass more clip rectangles to gtk_paint_foo() functions. Based on a patch from maemo-gtk (bug #398023). 2007-01-17 Tor Lillqvist * gtk-zip.sh.in: Include also the COPYING file. 2007-01-17 Matthias Clasen * modules/printbackends/cups/gtkprintbackendcups.c: Don't use httpGetFd() when building against cups 1.1 2007-01-17 Tor Lillqvist Proper fix for #396175: * gtk/gtkimmulticontext.c: Revert change by Hans Breuer below: Do include gtkprivate.h. On Win32 we do want to use the redefinition of GTK_LOCALEDIR as a call to the function _gtk_get_localedir(). * gtk/gtkimmodule.c: Instead, correct the prefix also on simple_context_info.domain_dirname. Do the prefix corrections always on Win32, not just when GTK_LIBDIR is defined. i.e., until now they were done only in the autoconfiscated gcc builds. Hans needs to make sure GTK_LIBDIR and GTK_LOCALEDIR are defined also in MSVC builds now. (correct_localedir_prefix): New function, like correct_libdir_prefix(), but for GTK_LOCALEDIR, in case GTK_LOCALEDIR is not a descendant of GTK_LIBDIR. (gtk_im_module_initialize): Thus call correct_localedir_prefix() on the domain_dirname instead of correct_libdir_prefix(). (_gtk_im_module_list): Call correct_localedir_prefix() on simple_context_info.domain_dirname. 2007-01-16 Matthias Clasen * gtk/gtkrange.c (range_grab_remove): Queue a redraw when the grab changes. (#396470, Benjamin Berg) 2007-01-15 Emmanuele Bassi * gtk/gtkrecentchoosermenu.c: Ellipsize the menu items label if they grow too much. (#357303) 2007-01-14 Matthias Clasen * gtk/gtkicontheme.c (theme_lookup_icon): When finding a matching non-scalable dir, keep going and look for a closer match. (#395830, Luca Ferretti) 2007-01-14 Christian Persch * gtk/gtkclipboard.c: (gtk_clipboard_set_text), (gtk_clipboard_set_image): Use gtk_target_table_new_from_list and gtk_target_table_free instead of duplicating the code. Bug #396493. 2007-01-13 Matthias Clasen * gtk/gtkuimanager.c: Don't crash if menu or toolbar positions can't be found. (#396161, Hans Breuer) 2007-01-13 Matthias Clasen * gtk/gtkselection.c (_gtk_selection_request): Plug memory leaks. (#396160, Carlos Garcia Campos) 2007-01-13 Matthias Clasen * configure.in: Link libgtk against Xfixes. (#396074, Tommi Komulainen) 2007-01-13 Matthias Clasen * gtk/gtkradiobutton.c (gtk_radio_button_focus): Avoid a compiler warning. (#395045, Chris Wilson) 2007-01-13 Hans Breuer * gtk/gtkprintoperation-win32.c : take the custom tab label from gtk_print_operation_set_custom_tab_label() into account (bug #390746). * gtk/gtkimmulticontext.c : don't include "gtkprivate.h" to avoid differing definitions of GTK_LOCALEDIR (bug #396175). * gtk/gtktreeview.c : use g_snprintf instead of snprintf, which is not available everywhere * gtk/makefile.msc.in : updated 2007-01-12 Michael Natterer * gtk/gtkentry.c (gtk_entry_button_press): don't add entry->scroll_offset to entry->drag_start_y. Fixes the entry starting drags after ridiculously small mouse movements. 2007-01-11 Richard Hult * demos/gtk-demo/main.c: (load_file): Close the file after it's loaded (bug #395316). 2007-01-11 Kjartan Maraas * gtk/gtkfilesystemunix.c: (expand_tilde): Make a single tilde go to $HOME in the location entry. Patch from Yevgen Muntyan. Closes the gtk+ part of bug #334168. 2007-01-10 Behdad Esfahbod * gdk/gdkpango.c (gdk_draw_layout_with_colors): * gtk/gtklabel.c (gtk_label_size_request): Use pango_matrix_transform_rectangle(). (#340141) * configure.in: Bump pango requirement to 1.15.3. 2007-01-10 Kristian Rietveld * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_init): refactor to initialize indicator_size to TOGGLE_WIDTH instead of the hardcoded value of 12. 2007-01-09 Matthias Clasen * configure.in: Fix the directfb cairo test. (#394855, Josselin Mouette) 2007-01-09 Behdad Esfahbod * configure.in: Fix comment for --with-included-loaders. That option affects builds with module loading enabled too. 2006-01-08 Peter Teichman * gtk/gtkfilechooserdefault.c: * gtk/gtkfilechooserprivate.h: * gtk/gtkfilechoosersettings.c: * gtk/gtkfilechoosersettings.h: Save the expanded state of the folder browser with the file chooser settings. Resolves the expander portions of (#153828, Lemmit Kaplinski) 2007-01-08 Emmanuele Bassi * gtk/gtkrecentchoosermenu.c (gtk_recent_chooser_menu_create_item): Don't leak the icon pixbuf after setting it to the image menu item. Found by Paolo Borelli. 2007-01-08 Matthias Clasen * gtk/gtktreemodel.c (gtk_tree_path_to_string): Don't corrupt memory when faced with paths with ridiculously large indices. Found by the GTKVTS test suite. 2007-01-08 Matthias Clasen * gtk/gtkmodules.c (_gtk_modules_init): Set default_display_opened before loading modules. (#393102, Brian Cameron) 2007-01-07 Matthias Clasen * gtk/gtktextview.c (gtk_text_view_set_border_window_size): Call text_window_realize() with the correct parameters. (#393813, Yevgen Muntyan) 2007-01-07 Matthias Clasen * gtk/gtkstatusbar.c: Move docs inline, and expand them a bit. 2007-01-06 Matthias Clasen * gtk/gtklabel.c: Make line wrapping work with width-chars and max-width-chars, and simplify the storage of wrap-width. (#322580, Itai Bar-Haim) 2007-01-06 Tor Lillqvist * gdk/win32/cursor.bdf: New file. Downloaded from freedesktop.org's webcvs. Slighly edited cursors "crosshair", "diamond_cross", "draft_large", "gobbler" and "target" to fix #392504. It is possible that the same end result could have been achieved by tweaking bdfcursor.c instead. * gdk/win32/bdfcursor.c: Add optional debugging output. * gdk/win32/xcursors.h: Regenerated. 2007-01-05 Matthias Clasen * gtk/gtknotebook.c (gtk_notebook_set_menu_label_text): Left-align menu labels. (#393255, Michail Crayson) 2007-01-05 Kristian Rietveld * gtk/gtktreeview.c (gtk_tree_view_dy_to_top_row): handle tree == NULL. (Fixes #392685, reported by Yevgen Muntyan). 2007-01-05 Kristian Rietveld * gtk/gtktreeview.c (gtk_tree_view_row_changed): do allow to invalidate nodes if the tree view is not realized. (#363147, Carlos Garnacho, Miguel Cabrera). 2007-01-05 Matthias Clasen * gtk/gtkmenu.c (gtk_menu_paint): Take the scroll arrow into account when drawing the background. (#393166, Benjamin Berg) 2007-01-05 Behdad Esfahbod * gtk/gtklabel.c (get_layout_location): Fix broken width computation, again. 2007-01-05 Carlos Garnacho * gtk/gtknotebook.c (gtk_notebook_size_request): take into account both scroll arrows when calculating size request in GTK_POS_LEFT or GTK_POS_RIGHT notebooks. (#393124, reported by Christian Persch) 2007-01-05 Michael Natterer * gtk/gtkwindow.c (gtk_window_key_release_event): chain up to the right function (fix taken from maemo-gtk). 2007-01-05 Behdad Esfahbod * gdk/gdkprivate.h: * gdk/gdkpango.c (gdk_draw_layout_line_with_colors), (gdk_draw_layout_with_colors): * gdk/gdkwindow.c (gdk_window_draw_glyphs_transformed): Avoid overflow when converting coordinates to Pango units. (#332266, Jody Goldberg) 2007-01-04 Matthias Clasen * gtk/gtkcombobox.c (gtk_combo_box_popup): move set_cursor after realization of the popup window, so clamp node doesn't fail. (#346616, Tommi Komulainen, patch by Kristian Rietveld). 2007-01-04 Behdad Esfahbod * gtk/gtklabel.c (get_layout_location): Fix uninitialized width variable. 2007-01-04 Matthias Clasen * gtk/Makefile.am: * gdk-pixbuf/Makefile.am: * configure.in: * gdk/win32/rc/gdk.rc.in: Cross-compilation fixes. (#392646, Yevgen Muntyan) 2007-01-04 Matthias Clasen * demos/gtk-demo/textscroll.c: * gtk/gtkhandlebox.c: * gtk/gtkcolorsel.c: Fix some compiler warnings. 2007-01-03 Matthias Clasen * gtk/gtktextview.c: Rework the beep-on-uninserted-text by calling the input method regardless of editability, and beeping from the commit/preedit-changed handlers. (#390514, Yevgen Muntyan) 2007-01-03 Matthias Clasen Fix #332604, reported by Joe Wreschnig, patch by Jan Arne Petersen and Behdad Esfahbod. * gtk/gtklabel.c (gtk_label_size_allocate): Only set the width of the layout when necessary. (get_layout_location): Use pango_layout_get_pixel_extents() instead of pango_layout_get_width(). 2007-01-03 Matthias Clasen * modules/printbackends/cups/gtkprintbackendcups.c (available_choices): Don't leak conflicts. * gtk/gtkprintoperation.c (gtk_print_operation_finalize): Don't leak the status string. 2007-01-03 Matthias Clasen * gtk/gtkfilechooserdefault.c (update_chooser_entry): Exit early if we can't get file info - this happens if the iter points to the row where we are editing the name for a newly created folder. (#392191, Michael Partridge, patch by Kristian Rietveld) 2007-01-03 Matthias Clasen * gtk/*.c: * gdk/x11/*.c: Apply a patch by Chris Wilson to avoid spurious valgrind warnings from XSendEvent() calls. (#392532) * modules/printbackends/cups/gtkprintbackendcups.c: Close the http connection after getting the PPD. * gtk/gtkprinteroptionwidget.c (filesave_changed_cb): Fix memory leaks. 2007-01-03 Matthias Clasen * gtk/gtkassistant.c (remove_page): If the current page is removed, always pick a different one. (#392457, Colin Watson) 2007-01-03 Matthias Clasen * modules/printbackend/cups/*.c: Coding style cleanups. 2007-01-03 Matthias Clasen * configure.in: Export SED to make sourcing of libtool work. Tighten up the directfb pkgconfig check. 2007-01-03 Michael Natterer * gtk/gtkstyle.c (option_menu_get_props) * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Use gtk_border_free when freeing borders. 2007-01-03 Matthias Clasen * gtk/gtkentry.c (get_text_area_size): Work when the entry is not realized. (#392315, Yevgen Muntyan) * gtk/gtkentry.c (gtk_entry_queue_draw): Use GTK_WIDGET_DRAWABLE() here. (#392227, Chris Wilson) * gtk/gtkentry.c (cursor_blinks): Don't get settings unnecessarily. (#392227) 2007-01-02 Matthias Clasen * gtk/gtkwindow.c (gtk_window_move_resize): Only process updates on the window at hand, not on all windows, to avoid violating resize/redraw ordering constraints. (#362406, Owen Taylor) 2007-01-03 Kristian Rietveld * gtk/gtkcellrendererprogress.c (gtk_cell_renderer_progress_class_init): fix docs. 2007-01-02 Matthias Clasen * gtk/updateiconcache.c: Include locale.h 2007-01-02 Matthias Clasen * gtk/updateiconcache.c (main): Call setlocale(). * gtk/gtkfilesel.c: * gtk/gtkfilesystemunix.c: * gtk/gtkfilesystemwin32.c: * gtk/gtkfilechoosersettings.c: * gtk/updateiconcache.c: Consistently use folder instead of directory in translated messages. (#344584, Javier F. Serrador) 2007-01-02 Matthias Clasen Try to fix #315732, reported by Luke Hutchinson: * gdk/x11/xsettings-client.[hc]: * gdk/x11/gdkdevents-x11.c: Don't assume that ref'ing a GdkWindow will guarantee that it can be looked up in the xid hash later. Also, use the nesting server grab function during the xsettings client initialization. Finally, make xsettings client not eat DestroyNotifys so that GDK can do its regular cleanup. 2007-01-02 Michael Natterer * gtk/gtkrange.c (gtk_range_scroll) (gtk_range_move_slider): beep when a keybinding didn't change adjustment->value. 2007-01-02 Matthias Clasen * gtk/gtktextbuffer.c (gtk_text_view_key_press_event): Try harder not to beep on events which are not meant to insert stuff in the buffer. (#390514, Yevgen Muntyan) 2007-01-02 Matthias Clasen * gtk/gtktextbufferrichtext.c: Small documentation fixes. 2007-01-02 Matthias Clasen * gtk/gtkentry.c (get_text_area_size): Center in the frame. (#304482, Rob Staudinger, patch by Richard Stellingwerff) 2007-01-02 Michael Emmel * gdkwindow-directfb.c: fixed leak of dfb resource on destroy 2007-01-01 Matthias Clasen * gtk/gtkscrolledwindow.h: * gtk/gtkscrolledwindow.c: Only handle key bindings for scrolling if the scrollbars are visible. (#340135, Christian Persch) 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