GTK+ 3.0.0 released

GTK+ 3.0.0 is now available for download at:

sha256 sums:
ec0729bf28f09a16e0b0a6a588556c7cee091f40426505b3694a9488bf6cbf67  gtk
d294155389c9ba4765c0b26805967f2dae1d84565f5d4095d489f94619406df9  gtk

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 a
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+ 3 will be incorporated into version 3
of the GNOME desktop.

What's new in GTK+ 3

GTK+ 3 is a major new version of GTK+, containing far too many
changes to list them all here. The major highlights include:

* Cairo drawing throughout. GDK no longer wraps the antiquated
  X11 drawing API; we've made a clean break and exclusively rely
  on cairo for all our drawing needs now. This has also enabled us
  to remove several other X11-centric concepts such as GCs, colormaps
  and pixmaps.

* Modern input device handling. The input device handling in GDK has
  long been a sadly neglected area. This has changed; with 3.0, GTK+
  steps into the modern world of XI2 with full support for multiple
  pointers, keyboards and other gizmos.

* A new theming API which sports a familiar CSS syntax for theme
  configuration and other improvements such as animated state

* More flexible geometry management, with support for height-for-width,
  for both widgets and cell renderers.

* Multiple backend support for GDK. With GTK+ 2.x, you had to recompile
  your application to have it work with a different GDK backend.
  In GTK+ 3, multiple GDK backends can be built into a single library
  and selected at runtime.

* Easy application support. With the integration of D-Bus support in
  GIO, we could finally add a GtkApplication class that handles a lot
  of the platform integration aspects of writing an application, such
  as keeping track of open windows, ensuring uniqueness, exporting
  actions, etc.

* Of course, there's some new widgets as well, such as a switch and
  an application chooser.

Where to get more information about GTK+

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

An installation guide for GTK+ 3 is found at:

Common questions:

GTK+ 3 is a major new version of GTK+, changing the ABI and
the API compared to GTK+ 2.x. This means that GTK+ 2.x applications
will need some adjustments before they can be used with GTK+ 3.
The migration guide at

gives an overview of what is involved in porting to GTK+ 3.


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:


GTK+ is the work of hundreds of contributors, far too many to list
them all here. But I want to take the time to thank some people
who contributed in a major way:

* Carlos Garnacho (lanedo), for his work on XI2 support and the new
  theme system

* Benjamin Otte (Red Hat), for his work on GDK and cairo drawing

* Tristan Van Berkom (Openismus), for his work on geometry management

* Colin Walters (Red Hat), for his work on GtkApplication

* Ryan Lortie (Codethink), for his work on dconf, GSettings and

* Javier Jardón, for tireless code, build and documentation cleanup

February 10, 2011
Matthias Clasen

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