GTK+ 2.20 Released

GTK+ 2.20 adds new functionality while maintaining source and binary compatibility with GTK+ 2.18. Highlights of new features and improvements in GTK+ 2.20 are:

Noteworthy changes:

  • GtkSpinner, GtkCellRendererSpinner – A new widget that renders a ‘spinner’ animation to indicate ongoing activity. The corresponding cell renderer renders the same animation inside a treeview
  • GtkOffscreenWindow – A new toplevel container widget to manage offscreen rendering of child widgets
  • GtkNotebook – You can now show ‘action widgets’ in the space that is not occupied by tabs. This functionality is also available in GtkBuilder via the ‘action-start’ and ‘action-end’ child types.
  • Filechooser – GtkFileSystemModel has been reimplemented, for major speedup and simplifications.
  • Keyboard handling – The compose sequences understood by the builtin input method have been synced with X.org, and the additional sequences have been rationalized
  • Mnemonic underlines – Can now optionally be hidden until the Alt key is pressed, this can be turned on with the gtk-auto-mnemonics setting
  • Keyboard accelerators – The Super, Meta and Hyper modifiers are working more reliably
  • GDK – There is a new function to get the ‘primary’ monitor in multi-monitor setups: gdk_screen_get_primary_monitory.
  • gdk-pixbuf – Embedded color profiles in png and tiff images can be stored and retrieved. Support for the QTIF image format has been added
  • Win32 – XP themes have been disabled since they don’t work
  • OS X – GTK+ uses standard Mac keyboard shortcuts (Cmd-X/Cmd-C instead of Ctrl-X/Ctrl-C, etc). The handling of multi-monitor setups has been greatly improved
  • Introspection support – Introspection data is now included in GTK+ itself. As a consequence, a dependency on gobject-introspection has been added

GLib 2.24.0 released

GLib 2.22 is a stable release adding an incremental improvement in functionality over GLib 2.20 while maintaining binary and source compatibility. Major changes include:

  • The requirements for g_thread_init() have been relaxed slightly, it can be called multiple times, and does not have to be the first call. GObject now links to GThread and threads are enabled automatically when g_type_init() is called. Thread-safety issuesvwith boxed types in GObject have been fixed. The -pthread flag has been added to all gmodule .pc files, because it is not generally permissible to load modules that are linked against libpthread if the program has not been compiled with threading support.
  • GType now has a G_DEFINE_INTERFACE convenience macro
  • GIO supports lazy loading of GIO modules, and there is a new gio-querymodule utility that goes along with this. Packagers will need to adapt to this.
  • GIO uses splice(2) to transfer data between file descriptors without extraneous copies.
  • The GVariant variant datatype has been added.