GTK+ 2.18.0 released

GTK+ 2.18.0 is now available for download at:

sha1 sums:
11a82fb2548788a0c35afb1d70a73e88d841157c  gtk+-2.18.0.tar.bz2
447279ae9992dbc35e58045071a3c02f289cd1f0  gtk+-2.18.0.tar.gz

md5 sums:
bb7ef5463a74a80454ced2c1d47a0192  gtk+-2.18.0.tar.bz2
b79f8fd96dd50187368e26831056ccba  gtk+-2.18.0.tar.gz

Release notes are available at:

What is GTK+

GTK+ is a multi-platform toolkit for creating graphical user
interfaces. Offering a complete set of widgets, GTK+ is
suitable for projects ranging from small one-off tools to
complete application suites.

GTK+ has been designed from the ground up to support a range
of languages, not only C/C++. Using GTK+ from languages such
as Perl and Python (especially in combination with the Glade
GUI builder) provides an effective method of rapid application

GTK+ is free software and part of the GNU Project. However,
the licensing terms for GTK+, the GNU LGPL, allow it to be
used by all developers, including those developing proprietary
software, without any license fees or royalties. GTK+ is the
only 100% free-of-cost open source industrial-strength GUI
toolkit available today.

Since its origins as the toolkit for the GNU Image
Manipulation Program (GIMP), GTK+ has been used in a wide
range of software. Notably, GTK+ is the foundation of the
GNOME desktop; GTK+ 2.18 will be incorporated into version
2.28 of the GNOME desktop.

What's new in GTK+ 2.18

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

Noteworthy new APIs


 - 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)

Changes in GtkBuilder

 - Scale marks can be specified in builder markup

 - GtkAssistant action widgets can be added in builder markup

Changes in GtkLabel

 - GtkLabel can show embedded URLs, much like SexyUrlLabel

Changes in 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

Changes in the 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

Changes in 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

Changes in 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

 - 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. See
   for information about possible problems when moving to
   client-side windows.

For more details and lists of fixed bugs, see the
announcements for the 2.17.x development releases:

Where to get more information about GTK+

Information about GTK+ including links to documentation can be
found at:

An installation guide for GTK+ 2.x is found at:

Common questions:


GTK+ is a large project and relies on voluntary contributions.
We are actively searching for new contributors in various areas
and invite everyone to help project development.
If you are willing to participate, please subscribe to the project
mailing lists to offer your help and read over our list of vacant
project tasks:

The GTK+ Team:

 Jonathan Blandford, Hans Breuer, Kristian Rietveld,
 Matthias Clasen, Tim Janik, Tor Lillqvist, Federico Mena Quintero,
 Søren Sandmann, Manish Singh, and Owen Taylor

Special thanks to Alexander Larsson for his tireless work
on the client-side windows port

Thanks to everybody else who has contributed to this release:
Andre Klapper, Bastien Nocera, Benjamin Gramlich, Benjamin Otte,
Björn Lindqvist, Brian Cameron, Caolan McNamara, Carlos Garcia Campos,
Carlos Garnacho, Christian Dywan, Christian Persch, Claudio Saavedra,
Cody Russell, Daniel Elstner, Dan Winship, David Zeuthen, Davyd Madeley,
Denis Chertykov, Emmanuele Bassi, Gabor Kelemen, Hans Breuer, Itay Perl,
James Andrewartha, Javier Jardón Jonathan Matthew, Kjartan Maraas,
Kristian Rietveld, Lin Ma, Li Yuan, Marek Kasik, Martin Nordholts,
Mart Raudsepp, Michael Meeks, Michael Natterer, Milan Bouchet-Valat,
Miroslav Rajcic, Morten Welinder, Paolo Borelli, Pascal Terjan,
Ryan Lortie, Shixin Zeng, Stanislav Brabec, Stefan Kost, Stef Walter,
Tobias Mueller, Tomasz Mon, Tristan van Berkom, Vincent Untz, Xan Lopez

September 23, 2009
Matthias Clasen

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]