Newer Older
1 2
General Information
Elliot Lee's avatar
Elliot Lee committed

Matthias Clasen's avatar
Matthias Clasen committed
This is GTK+ version 2.5.3. GTK+ is a multi-platform toolkit for
5 6 7
creating graphical user interfaces. Offering a complete set of widgets,
GTK+ is suitable for projects ranging from small one-off projects to
complete application suites.
Owen Taylor's avatar
Owen Taylor committed
8 9 10

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
11 12
developers, including those developing proprietary software, without any
license fees or royalties.

Elliot Lee's avatar
Elliot Lee committed
The official ftp site is:
Elliot Lee's avatar
Elliot Lee committed

The official web site is:

Owen Taylor's avatar
Owen Taylor committed
20 21
Information about mailing lists can be found at
22 23 24 25 26 27


See the file 'INSTALL'

Owen Taylor's avatar
Owen Taylor committed
28 29
Release notes

Owen Taylor's avatar
Owen Taylor committed
31 32 33 34 35
* The new GtkFileChooser widget emphasizes simplicity and thus does 
  not provide a navigation entry by default when opening files. 
  Experienced command line users will likely want to make heavy use of
  the location dialog brought up by the Control-L key shortcut.

Owen Taylor's avatar
Owen Taylor committed
36 37 38 39
* As compared to GTK+-1.2, the default configuration of GTK+-2 has been 
  stream-lined to reduce confusion on the part of new users or users 
  coming from other environments.  Users used to older versions of 
  GTK+ may want to make some adjustments to the default configuration.
40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64

   - Emacs keybindings such as Control-A and Control-E to move to the
     ends of lines are not enabled by default in the editing widgets. To
     turn on Emacs keybindings, add the line:

      gtk-key-theme-name = "Emacs"
     To your ~/.gtkrc-2.0

   - Editing of menu accelerators by pressing an accelerator over the
     menu item is disabled by default. To enable, it, add:

      gtk-can-change-accels = 1

     to your ~/.gtkrc-2.0

   - To improve useability for keyboard operation, GTK+ now selects the
     contents of an entry when tabbing into it or when it is focused on
     initial window map. To disable this behavior, add:

      gtk-entry-select-on-focus = 0
     to your ~/.gtkrc-2.0

* The GTK+ libraries use an '_' prefix to indicate private symbols that
Owen Taylor's avatar
Owen Taylor committed
65 66 67 68 69
  must not be used by applications. On some platforms, symbols beginning 
  with prefixes such as _gtk, _gdk, and _pango will be exported
  from the library, on others not. In no case can applications
  use these private symbols.

Owen Taylor's avatar
Owen Taylor committed
* GTK+-2.4 now requires version 2 of Xft; old fashioned core X
Owen Taylor's avatar
Owen Taylor committed
  fonts are no longer supported.
72 73 74 75

* There is a bug in the Xft library in XFree86-4.1 and possibly previous
  versions that causes random crashes when using the Pango Xft
  backend. If you want to use Xft fonts, you should upgrade to
Owen Taylor's avatar
Owen Taylor committed
  at least XFree86-4.2.
77 78 79 80 81 82

* The gdk_pixbuf_xlib library included in the contrib/ directory of GTK+
  is provided on a as-is basis and has not been tested at all. No
  guarantees about the degree of workingness or about future
  compatibility are provided.

Owen Taylor's avatar
Owen Taylor committed
83 84 85 86 87
* While efforts have been made to make gdk-pixbuf robust against
  invalid images, using gdk-pixbuf to load untrusted data 
  is not recommended, due to the likelyhood that there are
  additional problems where an invalid image could cause
  gdk-pixbuf to crash or worse.
88 89 90

* The assumption of GLib and GTK+ by default is that filenames on the
  filesystem are encoded in UTF-8 rather than the encoding of the locale;
Owen Taylor's avatar
Owen Taylor committed
  the GTK+ developers consider that having filenames whose interpretation
92 93 94
  depends on the current locale is fundamentally a bad idea.

  If you have filenames encoded in the encoding of your locale, then
Owen Taylor's avatar
Owen Taylor committed
  you may want to set the G_FILENAME_ENCODING environment variable:
Owen Taylor's avatar
Owen Taylor committed
97 98

Owen Taylor's avatar
Owen Taylor committed
100 101 102 103
  (Earlier versions of GLib-2.x required a different environment variable
  setting; G_BROKEN_FILENAMES=1 to achieve the same effect; this 
  is still supported, but G_FILENAME_ENCODING is preferred.)
  Best integration of GTK+-2.4 with the environment is achieved by 
104 105
  using a UTF-8 locale.

106 107 108
How to report bugs

109 110 111
Bugs should be reported to the GNOME bug tracking system.
(, product gtk+.) You will need to create an
account for yourself.
Owen Taylor's avatar
Owen Taylor committed
112 113 114
In the bug report please include:
115 116 117 118 119 120 121 122 123 124
* Information about your system. For instance:

   - What operating system and version
   - What version of X
   - For Linux, what version of the C library

  And anything else you think is relevant.

* How to reproduce the bug. 

125 126 127 128 129
  If you can reproduce it with the testgtk program that is built in the
  gtk/ subdirectory, that will be most convenient.  Otherwise, please
  include a short test program that exhibits the behavior.  As a last
  resort, you can also provide a pointer to a larger piece of software
  that can be downloaded.

131 132
* If the bug was a crash, the exact text that was printed out when the
  crash occured.

134 135 136 137
* Further information such as stack traces may be useful, but is not
  necessary. If you do send a stack trace, and the error is an X error,
  it will be more useful if the stacktrace is produced running the test
  program with the --sync command line option.
138 139 140 141


142 143 144
Patches should also be submitted to If the patch
fixes an existing bug, add the patch as an attachment to that bug
Owen Taylor's avatar
Owen Taylor committed

146 147
Otherwise, enter a new bug report that describes the patch, and attach
the patch to that bug report.

149 150 151
Bug reports containing patches should include the PATCH keyword in their
keyword fields. If the patch adds to or changes the GTK programming
interface, the API keyword should also be included.
Owen Taylor's avatar
Owen Taylor committed
Patches should be in unified diff form. (The -u option to GNU diff.)