gtk+ Changelog

What's new in gtk+ 2.24.20

Jul 5, 2013
  • Backport changes from GTK+ 3 to look for rc files in system config dirs in addition to /etc/gtk-2.0 and ~/.gtkrc.
  • Backport changes from GTK+ 3 to look for the immodules cache file in libdir. gtk-query-immodules-2.0 gained an --update-cache option to write the output to the correct location. Note that this may require slight adjustment of distro packaging.
  • Bug fixes:
  • 560337 GtkFileChooser hour time missing for current date files
  • 649390 CRLF text is copied to clipboard as CRCRLF on Windows
  • 698183 quartz: Text input is too slow and some keys are broken...
  • 702455 Add support for Avahi printers to gtk 2.24.x
  • Translation updates:
  • Polish

New in gtk+ 2.24.19 (Jun 17, 2013)

  • Bug fixes:
  • 432386 GtkFileChooserDefault leaks memory if a shortcut...
  • 575767 Crashes when XInput device disappears
  • 694273 Patch to support NSTextInputClient in text widgets
  • 698614 GObject: prevent installing properties after init
  • 700578 Missing vertical grid lines when some columns hidden
  • Translation updates:
  • German

New in gtk+ 2.24.17 (Mar 5, 2013)

  • Bug fixes:
  • GtkFileChooserButton fixes:
  • Don't emit file-set signal when the change is not the result of a user action
  • Don't ever use gtk_file_chooser_get_files
  • Ensure internal consistency when clearing a model
  • 690247 multiple context in a immodule can't be selected
  • 692955 GtkIconCache fails to load non-builtin icons
  • 694742 Fix possible memory leak when GlobalAlloc() fails

New in gtk+ 2.24.16 (Feb 20, 2013)

  • Bug fixes:
  • 694077 Make GtkItemFactory produce GtkSeparatorMenuItems
  • 645065 GtkFileChooserButton doesn't handle closing its dialog correctly Reliably stop spinning when a GtkSpinButton is hidden

New in gtk+ 2.24.15 (Feb 11, 2013)

  • Bug fixes:
  • 626499 GtkClipboard unnotified on change of OS X pasteboard owner
  • 656565 Signalify (already existing) GtkMenuShell.insert()
  • 664640 CUPS authentication does not work
  • 669808 fullscreen/unscreen was broken for Quartz on OS X earli...
  • 674556 File chooser dialog does not save its sizes
  • 679883 When printing Custom paper sizes GTK Print Dialog does ...
  • 683511 spinbutton: fix xthickness bug when resizing the text a...
  • 689810 Include guard optimization
  • 689982 Make GChecksum more fully introspectable
  • 690788 Critical in gtknotebook dnd with rgba colormap
  • 692099 autogen.sh doesn't recognize automake 1.13
  • 692554 entry: never use GTK_STATE_ACTIVE to paint the background
  • 692810 Fails to build with the gold linker due to missing refe...
  • Fix scrolling in insensitive modal dialogs
  • Translation updates
  • Norwegian bokmÃ¥l

New in gtk+ 2.24.14 (Dec 6, 2012)

  • File chooser:
  • Use the bookmarks file from the same XDG location as GTK+ 3 if present
  • Add a setting to specify the startup mode
  • Bug fixes:
  • 577806 gtk_file_chooser_add_shortcut_folder adds duplicates...
  • 626499 GtkClipboard unnotified on change of OS X pasteboard...
  • 644906 gtkimcontextime.c: NULL pointer reference
  • 652204 Making GIMP crash with the Text Tool
  • 663990 Tablet pressure is broken on MacOSX
  • 668239 texts disappear when notebook switch page at zh_CN l...
  • 672193 windows (including menus) shown multiple times don't...
  • 681845 Cancel image export crashes or freezes gimp
  • 682919 Crash in GTK+-3.x (3.0.x-3.5.12+) on Windows with CJK...
  • 684419 crash when closing Document History window
  • 685959 [Win32] Memory leak on every redraw of a widget
  • 688710 [PATCH] Splash screens shouldn't stay on top of all a...
  • 689235 Broken function declarations corrupt the stack on win...
  • Quartz: Use window background pattern
  • Quartz: Use the correct minimal line width
  • Translation updates:
  • German

New in gtk+ 2.24.7 (Oct 19, 2011)

  • The file chooser now sorts recent files by age, and doesn't ellipsize filter names. Various OS X improvements were made.
  • Several bugs were fixed.

New in gtk+ 2.23.90 (Jan 7, 2011)

  • New deprecations:
  • gdk_set_pointer_hooks(), gdk_display_set_pointer_hooks()
  • gtk_range_get/set_update_policy()
  • gtk_window_get/set_frame_dimensions() and gtk_window_get/set_has_frame()
  • The cups print backend can now send print jobs directly in PDF if cups supports it
  • Bugs fixed:
  • 144324 Leaking dnd contexts with XDnD
  • 165987 unsets DESKTOP_STARTUP_ID
  • 560177 Applications should send print jobs to CUPS in PDF format...
  • 562182 gtk_init() docs inaccurate
  • 622125 Note that gtk_show_uri needs gvfs to spawn URLs
  • 637691 Eating events breaks proxied DND
  • 637958 print dialog doesn't fit on netbook screen size
  • 637973 thunderbird crashes when copying text with gtk 2.23.3

New in gtk+ 2.23.3 (Dec 22, 2010)

  • New deprecations:
  • GtkRuler (and subclasses)
  • gtk_widget_reset_shapes
  • gdk_set_sm_client_id
  • Foreign window APIs
  • gdk_spawn_*
  • gdkx_visual_get
  • gdk_net_wm_supports
  • gdk_set_locale, gtk_set_locale
  • Some GDK text conversion routines
  • gdk_drag_context_new
  • gdk_drag_find_window and gdk_drag_get_protocol
  • gdk_xid_table functions
  • Bug fixes:
  • 629955 Deprecate / remove gtk_main and gtk_init_add / remove* API
  • 634558 Selecting "Search" should focus text box for keyboard entry
  • 634697 gdk: Add XSetting for "gtk-cursor-blink-timeout"
  • 634882 Usage of deprecated GLib API (g_source_get_current_time)
  • 635307 iconcache: Ensure we don't lose data on power loss
  • 635588 Clicking URL to be opened freezes the application for seconds
  • 636832 anoncvs.gnome.org does not exist
  • 637069 Custom print settings set in custom-widget-apply are lost
  • 637156 Optimize gtk_widget_shape_combine_region (widget, NULL, ...)
  • Translation updates:
  • Czech
  • Norwegian bokmål

New in gtk+ 2.23.2 (Nov 10, 2010)

  • Fix a branch messup
  • Readd the gtk_private_flags_get_type symbol
  • Fix crashes on 64-bit
  • Allow building with libtool 2.4

New in gtk+ 2.23.1 (Nov 7, 2010)

  • New deprecations:
  • gtk_widget_hide_all
  • New APIs added to aid migration to GTK+ 3:
  • gtk_combo_box_new_with_model_and_entry
  • Bugs fixed:
  • 624025 gdk_draw_rectangle bogged down by ColorSync
  • 632381 gtk_combo_box_text_new_with_entry() adds two...
  • 632539 Do not install gtkprivate.h
  • 633050 need gtk_combo_box_new_with_model_and_entry
  • 634060 Support for GIcon pixbufs

New in gtk+ 2.21.8 (Sep 14, 2010)

  • Deprecations:
  • Various style properties have been deprecated:
  • GtkEntry::state-hint
  • GtkTreeView::row-ending-details
  • GtkRange::trough-side-details
  • GtkRange::stepper-position-details
  • GtkRange::activate-slider
  • The GtkIconView::orientation property has been deprecated and renamed to item-orientation
  • Separator-related API in GtkDialog
  • API related to blinking status icons
  • The keysym names have been renamed from GDK_... to GDK_KEY_...
  • The GtkItem class
  • The gdk_display variable and the GDK_DISPLAY macro
  • GTK+ now uses standard icon names for stock icons, where applicable
  • Win32:
  • Fixes to the MS Windows theme engine
  • Directfb:
  • Many fixes
  • Bugs fixed:
  • 414712 gtk_container_set_focus_child leaks widget
  • 601731 Drag and Drop from Workspace to Activities Overview
  • 628049 Native windows don't work very well
  • 628110 gtranslator inserts unwanted line breaks
  • 628291 Drawing artifacts when used with a cairo 1.9.*
  • 628308 docs referencing non existing icons
  • 628656 _gdk_windowing_get_startup_notify_id memory leak
  • 628932 key typing causes core dump in VNC environment
  • 629093 [patch] prefix GDK key names
  • 629277 Hanging because do_syntheszie_crossing_event...
  • Updated translations:
  • Arabic
  • Basque
  • British English
  • Estonian
  • French
  • Galician
  • German
  • Hebrew
  • Hungarian
  • Indonesian
  • Italian
  • Japanese
  • Kazakh
  • Korean
  • Norwegian bokmål
  • Polish
  • Portuguese
  • Slovian
  • Spanish
  • Swedish
  • Tradition Chinese

New in gtk+ 2.90.7 (Sep 13, 2010)

  • Various deprecated APIs have been removed:
  • the GtkWidget::draw-border style property
  • the GtkEntry::state-hint style property
  • the GtkTreeView::row-ending-details style property
  • the GtkRange::trough-side-details style property
  • the GtkRange::stepper-position-details style property
  • the GtkRange::activate-slider style property
  • the GTK_CALENDAR_WEEK_START_MONDAY option
  • the GtkFrame::shadow and GtkHandleBox::shadow properties
  • the GtkTextView::page-horizontally signal
  • the GDK_WINDOW_DIALOG window type
  • the GTK_SELECTION_EXTENDED selection mode
  • the GtkProgressBarOrientation, GtkAnchorType and GtkVisibility enumerations
  • GtkDialog separators, including the GtkDialog::has-separator property, including setter/getter, the GTK_DIALOG_NO_SEPARATOR flag and the GtkMessageDialog::use-separator style property
  • gtk_status_icon_set/get_blinking
  • gdk_window_et_deskrelative_origin
  • The GtkItem class has been removed. Its functionality has been merged into is sole subclass, GtkMenuItem
  • The GtkIconView::orientation property has been renamed to 'item-orientation'
  • GtkProgressBar and GtkCellRendererProgress implement GtkOrientable now, and their 'orientation' property have been split into a 'orientation' property of type GtkOrientation and a boolean 'inverted' property
  • GDK no longer exports variables: gdk_threads_lock, gdk_threads_unlock, gdk_threads_mutex and gdk_display are no longer available
  • GTK no longer exports variables: gtk_major_version, gtk_minor_version, gtk_micro_version, gtk_binary_age, gtk_interface_age have been converted to functions. gtk_debug_flags has a getter and a setter. Misc. variables that had been exported by the semi-private text API have been removed.
  • All GDK keysym names have been changed from GDK_keysym to GDK_KEY_keysym; the previous names are still available in gdkkeysyms-compat.h.
  • GtkWrapBox is a new container, which distributes its children over multiple rows/columns
  • GTK+ now uses standard icon names when looking up stock icons
  • More widgets and cell renderers have been converted to support width-for-height: GtkCellRendererText, GtkAccelLabel, GtkCellView, GtkComboBox, GtkMenu, GtkMenuItem
  • Button boxes are now semi-homogeneous.
  • The directfb backend has been removed
  • Bugs fixed:
  • 77669 GtkWrapBox for gtk itself, not gimp?
  • 84188 "Dialogue" button widths should not be homogenous
  • 414712 gtk_container_set_focus_child leaks widget
  • 527499 FileFilter combo becames too wide
  • 528257 File selector and stock string problems
  • 605186 Use G_DEFINE_INTERFACE macro
  • 614006 File chooser crashes when creating a new folder...
  • 616401 Noneffective gdk_keymap_map_virtual_modifiers in early use
  • 626710 GailScaleButton calculates wrong value for minimum increment
  • 627028 Marked state of calendar day is not accessible
  • 627139 gtkfilechooserentry shows completion progress tooltip on first show
  • 627445 Removal of GtkWidget::draw-border breaks gtk_widget_queue_draw()
  • 627580 GtkFontSelection: don't notify the non-existent "font" property
  • 627643 gtkaboutdialog gettext problem
  • 627828 Drag and drop between treeviews in different window groups broken...
  • 627843 set_active_iter doc: remove restriction on path length
  • 627867 tests/testsocket is broken
  • 627912 misprint in the desc. of "hover-expand" and "hover-selection"...
  • 628160 introspection: Update to new scanner API
  • 628308 docs referencing non existing icons
  • 628656 _gdk_windowing_get_startup_notify_id memory leak
  • 628807 Add more "reserved for expansion" fields to GtkWidgetClass
  • 628808 Warn if a widget requests minimum size > natural size
  • 628884 Use a bitfield for Widget::private_flags, ::state, ::saved_state
  • 628935 add gtk_radio_button_join_group method for bindings
  • 629110 gtk_spinner_accessible_get_type always returns null
  • Translation updates:
  • Arabic
  • Armenian
  • Brazilian Portuguese
  • British English
  • Bulgarian
  • Danish
  • Estonian
  • French
  • Galician
  • Hebrew
  • Hungarian
  • Indonesian
  • Kazakh
  • Norwegian bokmål
  • Norwegian Nynorsk
  • Portuguese
  • Serbian
  • Slovenian
  • Spanish
  • Telugu
  • Traditional Chinese

New in gtk+ 2.21.6 (Aug 17, 2010)

  • Most drawing done by GTK+ itself has been ported from GDK drawing APIs to cairo
  • GtkExpander gained a ::label-fill property to make the label fill the entire horizontal space
  • Deprecations:
  • GtkNotebookPage
  • The GtkRecenManager::limit property
  • All GDK drawing functions, ie gdk_draw_*. Use cairo instead
  • All GdkGC functions. Use cairo instead
  • All of GdkImage. Use cairo instead
  • All of GdkRGB. Use cairo instead
  • gdk_{bit,pix}map_create_from_data
  • New accessors:
  • gdk_cursor_get_cursor_type
  • gdk_device_get_n_axes
  • gdk_display_is_closed
  • gtk_notebook_get_tab_[hv]border
  • New cairo-related APIs:
  • gdk_window_create_similar_surface
  • gdk_window_get_background_pattern
  • Accessiblity:
  • Make Gail work with custom treemodels
  • Implement GailAdjustment::get_minimum_increment
  • Bugs fixed:
  • 599574 Crash in _cairo_surface_set_error
  • 604391 ...assertion `ancestor != NULL' when switching between tab
  • 618327 GtkNotebookPage should be deprecated
  • 623603 meld built with pygtk-2.16.0 giving warnings
  • 623865 gtkdnd: pointer grab may never finish (ungrab before grab)
  • 624087 Missing accessor for GdkCursor.type
  • 624221 Gtk-2.21 Missing accessor for GdkDevice.num_axis
  • 624224 Missing accessor for GdkDisplay.closed
  • 624333 Deprecate GtkRecentManager:limit
  • 624687 switch-page bug when activated from menu
  • 624779 GtkCalendar padding/margin/spacing/border/whatever is too hard...
  • 625491 Generate GdkX11-2.0.typelib (backported from HEAD)
  • 625650 Add annotations to gtk_tree_model_iter_next() and gtk_tree_sel...
  • Translation updates:
  • Norwegian bokmål

New in gtk+ 2.21.5 (Jul 12, 2010)

  • Deprecations:
  • Deprecate GdkRegion apis that have no cairo equivalent
  • GtkWindow::allow-grow and ::allow-shrink properties
  • New accessors:
  • gdk_window_has_native
  • Introspection: misc annotation fixes

New in gtk+ 2.21.4 (Jun 30, 2010)

  • Revert a change in GtkCalendar that broke the pygtk build
  • Fix the building of input methods as modules
  • Include gdk-pixbuf-2.0 in the .pc file requires
  • Various OS X fixes

New in gtk+ 2.21.3 (Jun 27, 2010)

  • gdk-pixbuf has been moved into a separate module
  • gtk_init warns if it detects GTK2.x and GTK3 being used
  • in the same process
  • Misc new API:
  • gtk_accessible_set_widget
  • gtk_message_dialog_get_message_area
  • gtk_font_selection_dialog_get_font_selection
  • gtk_window_group_get_current_grab
  • gtk_table_get_size
  • gtk_button_get_event_window
  • gdk_device_manager_get_client_pointer
  • gdk_image_get_pixels
  • Bugs fixed:
  • 522756 gnome-appearance-properties crashed with SIGSEGV...
  • 615666 GTK_OBJECT_FLAGS() should be deprecated
  • 621136 GtkCalendar: Some functions always return TRUE
  • 621250 Missing accessors for GtkRange has_stepper_X
  • 621414 Can't select file on file browser popup after...
  • 621683 gtk_menu_attach_to_widget() should emit...
  • 621775 Space symbol missed in Resources chapter
  • 622011 Don't handle "connecting-to-device" state reason
  • 622371 Need gtk_accessible_set_widget
  • 622581 GtkButton has no accessor for event_window

New in gtk+ 2.21.1 (May 31, 2010)

  • GDK has been sealed, with the addition of suitable accessors
  • Bugs:
  • 613132 GtkBoxChild should probably be deprecated
  • 592580 GDK needs sealing
  • 607628 DnD operation doesn't work when using offscreen.
  • 565559 Incorrect leave-notify signals for treeview
  • 618162 Description of GdkColor
  • 614581 Gtk print dialog freezes on start up
  • 533946 GtkHScale does not update correctly
  • 618271 Add gtk_window_has_group()
  • 618000 Sync paper size fallbacks with CLDR 1.8.1
  • 551322 configure does not use -lm in jasper (JPEG2000) testing
  • 619114 undefined reference to `XkbBell'
  • 618093 typo in gtkprintoperation.c, "selecion" should be "selection"
  • Updated translations:
  • Italian

New in gtk+ 2.18.9 (Mar 18, 2010)

  • Avoid a crash when doing DND on X servers without the shape extension
  • Avoid an assertion when finalizing entries

New in gtk+ 2.18.8 (Mar 16, 2010)

  • GtkInfoBar:
  • A new widget to show a transient ‘message area’ inside a content pane. The API is similar to GtkDialog and supports theming for different message types (warnings, errors, etc)
  • GtkBuilder:
  • Scale marks can be specified in builder markup
  • GtkAssistant action widgets can be added in builder markup
  • GtkLabel:
  • GtkLabel can show embedded URLs, much like SexyUrlLabe
  • GtkEntry:
  • GtkEntry has been refactored to follow the model-view pattern, with GtkEntryBuffer as model. One intended use case for this is to support ’secure memory’ for password entries
  • File chooser:
  • Backup files are hidden by default
  • GTK+ remembers the sorting state of the file list
  • File sizes are shown by default
  • The ‘Create Folder’ button can be disabled with the the ::create-folders property
  • Printing support:
  • GTK+ supports authentication against CUPS servers
  • A backend for the PAPI printing system has been added
  • The file and lpr backends can print multiple pages per sheet
  • The file backend can produce svg files
  • GTK+ supports printing an application-defined ’selection’ in addition to the usual page ranges
  • The print dialog can optinally include the page setup controls, avoiding the need for a separate page setup dialog in many situations
  • Theming support:
  • The bullet character used in invisible entries can be set by themes with the ::invisible-char style property
  • The file chooser can show different icons for xdg user dirs. The icon names are folder-documents, folder-download, folder-music, folder-pictures, folder-publicshare, folder-templates and folder-video
  • The GtkInfoBar uses symbolic colors for theming its background color depending on the message type. The color names are info_fg_color, info_bg_color, warning_fg_color”, warning_bg_color, etc.
  • GDK changes:
  • GDK has been rewritten to use ‘client-side windows’. This means that GDK maintains its own window hierarchy and only uses X windows where it is necessary or explicitly requested. Some of the benefits of this change are
  • Reduced flicker:
  • The ability to do transformed and animated rendering of widgets
  • Easier embedding of GTK+ widgets, e.g. into Clutter scene graphs
  • See gdk-demo for some simple examples of client-side windows in action.

New in gtk+ 2.19.7 (Mar 10, 2010)

  • Bug fixes:
  • 611707 Move documentation from templates to inline comments
  • 69872 GTK_WIDGET_SET_FLAGS should be deprecated
  • 612066 empathy hangs when clicked on information about contact...
  • 557420 Some compose sequences don't work anymore...
  • 569042 gailbooleancell does not seem to attend to changes...
  • 600992 File chooser reference counting issues
  • 610905 gtk_drag_source_set need instrospection hint
  • 611051 Search Entry Clear Icon not accessible
  • 611217 Incorrect translator comment
  • 611317 Document targets in drag and drop
  • 611319 gtk_window_set_transient_for undocumented NULL value for parent
  • 611658 Update documentation for gtkvscrollbar
  • 611662 Update documentation for gtkvseparator
  • 611686 focus_in/focus_out in gailtreeview.c should return FALSE...
  • 611831 Move documentation to inline comments: GtkVBox
  • 612119 Do not scroll when middle pasting *
  • Translation updates:
  • Afrikaans
  • Arabic
  • Basque
  • British
  • English
  • Bulgarian
  • Czech
  • Danish
  • French
  • Galician
  • German
  • Greek
  • Hungarian
  • Lithuanian
  • Low German
  • Norwegian
  • bokmÃ¥l
  • Polish
  • Portuguese
  • Russian
  • Slovenian
  • Swedish