What is GTK+?

GTK+ is a highly usable, feature rich toolkit for creating graphical user interfaces which boasts cross platform compatibility and an easy to use API. GTK+ it is written in C, but has bindings to many other popular programming languages such as C++, Python and C# among others. GTK+ is licensed under the GNU LGPL 2.1 allowing development of both free and proprietary software with GTK+ without any license fees or royalties.

Get an overview of GTK+. Understand who started it, the basic architecture and why we use the license we do.

GTK+ has been involved in many projects and some big platforms. To see what people think of GTK+ and how it has been used in commercial projects, read the success stories...

To find out how more about what GTK+ can do for you, visit our features page. If you want to contribute, you are more than welcome.

Upcoming Events

Gran Canaria Desktop Summit 2009

July 3-11, 2009

The inaugural Desktop Summit, uniting the flagship conferences of the GNOME and KDE communities, GUADEC and Akademy, will be held in Gran Canaria, Canary Islands, Spain the week of July 3-11, 2009. The conference will be hosted by Cabildo, the local government of Gran Canaria. The GNOME and KDE communities will use this co-located event to intensify momentum and increase collaboration between the projects. It gives a unique opportunity for key figures to collaborate and improve the free and open source desktop for all. Please visit the official website for further information.

Recent news

GTK+ 2.17.2 unstable release

June 22, 2009

This is a development release leading up to GTK+ 2.18.

Overview of Changes from GTK+ 2.17.1

  • 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)
  • GtkFileChooser:

    • Improve path bar by ellipsizing long names and preventing vertical size changes
    • Backup files are now hidden by default
    • GTK+ remembers the file chooser sorting state now
  • GtkButtonBox: Implements the GtkOrientable interface now.
  • Printing: GTK+ supports printing an application-defined ’selection’ now, in addition to usual page ranges.
  • Changes that are relevant for theme authors:

    • The new GtkInfoBar widget uses symbolic colors for theming its background color depending on the message type. By default, it uses the same background color as tooltips. This can be turned off with style property.
    • The GTK+ file chooser (as well as nautilus and other users of GIO icon information) can now show different icons for xdg user dirs. The icon names are folder-documents, folder-download, folder-music, folder-pictures, folder-publicshare, folder-templates, folder-videos, with an automatic fallback to the standard folder icon.

27 bugs fixed in this release!

See the original announcement for more info and downloads.

GLib 2.21.2 unstable release

June 22, 2009

This is the a development release leading up to GLib 2.22.

Overview of Changes from GLib 2.21.1

  • GIO:

    • g_socket_speaks_ipv4 is a new function to check if a socket can speak IPv4.
    • g_socket_listener_add_address gained a new effective_address out parameter.
    • GIO now returns special icons for XDG user directories, by the name folder-music, folder-documents, etc.
    • GIO gained support for starting/stopping of drives, which can be used in connection with external hard disk enclosures, disk arrays, iSCSI devices, etc. See g_file_start/stop_mountable.
  • GLib:

    • g_reload_user_special_dirs_cache is a new function to force GLib to reload the XDG user directory mapping from disk.

22 bugs fixed in this release!

See the original announcement for more info and downloads.

GTK+ 2.16.2 stable release

June 3, 2009

This is a bug fix release in the 2.16 series.

16 bugs fixed in this release!

See the original announcement for more info and downloads.

GTK+ 2.17.1 unstable release

June 3, 2009

This is a development release leading up to GTK+ 2.18.

Overview of Changes from GTK+ 2.17.0:

  • GtkLabel:
    • GtkLabel can show embedded URLs, much like SexyUrlLabel
  • Printing:
    • GTK+ includes a print backend that works with the PAPI printing service.
    • The file and lpr backends can print multiple pages per sheet.
  • Changes that are relevant for theme authors:
    • The URL support in GtkLabel uses the link-color / visited-link-color style properties

19 bugs fixed in this release!

See the original announcement for more info and downloads.

GLib 2.20.3 stable release

June 3, 2009

This is a bug fix release in the 2.20 series.

5 bugs fixed in this release!

See the original announcement for more info and downloads.

For older news, visit our archives.