General Information
===================
-This is GTK+ version 1.3.4. GTK+, which stands for the Gimp ToolKit,
-is a library for creating graphical user interfaces for the X Window
-System. It is designed to be small, efficient, and flexible. GTK+ is
-written in C with a very object-oriented approach.
+This is GTK+ version 2.4.0. 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 projects to
+complete application suites.
+
+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.
The official ftp site is:
ftp://ftp.gtk.org/pub/gtk
The official web site is:
http://www.gtk.org/
-A mailing list is located at:
- gtk-list@redhat.com
-
-To subscribe: mail -s subscribe gtk-list-request@redhat.com < /dev/null
-(Send mail to gtk-list-request@redhat.com with the subject "subscribe")
+Information about mailing lists can be found at
+ http://www.gtk.org/mailinglists.html
Installation
============
See the file 'INSTALL'
-How to report bugs
-==================
+Release notes
+=============
+
+* 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.
+
+* 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.
+
+ - 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
-Bugs should be reported to the GNOME bug tracking
-system. (http://bugs.gnome.org). To report a problem
-about GTK+, send mail to submit@bugs.gnome.org.
+* The GTK+ libraries use an '_' prefix to indicate private symbols that
+ 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.
-The subject of the mail should describe your problem.
-In the body of the mail, you should first include
-a "pseudo-header" that gives the package and
-version number. This should be separated by a blank
-line from the actual headers.
+* GTK+-2.4 now requires version 2 of Xft; old fashioned core X
+ fonts are no longer supported.
- Package: gtk+
- Version: 1.3.4
+* 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
+ at least XFree86-4.2.
-[ Please substitute 1.3.4 with the version of GTK+ that
- you have installed ]
+* 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.
-Then describe the bug. Include:
+* 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.
+* 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;
+ the GTK+ developers consider that having filenames whose interpretation
+ depends on the current locale is fundamentally a bad idea.
+
+ If you have filenames encoded in the encoding of your locale, then
+ you may want to set the G_FILENAME_ENCODING environment variable:
+
+ G_FILENAME_ENCODING=@local
+ export G_FILENAME_ENCODING
+
+ (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
+ using a UTF-8 locale.
+
+How to report bugs
+==================
+
+Bugs should be reported to the GNOME bug tracking system.
+(http://bugzilla.gnome.org, product gtk+.) You will need to create an
+account for yourself.
+
+In the bug report please include:
+
* Information about your system. For instance:
- What operating system and version
* How to reproduce the bug.
- 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.
+ 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.
- (Bugs that can be reproduced within the GIMP are almost as good
- as bugs that can be reproduced in testgtk. If you are reporting a
- bug found with the GIMP, please include the version number of the GIMP
- you are using)
+* If the bug was a crash, the exact text that was printed out when the
+ crash occured.
-* If the bug was a crash, the exact text that was printed out
- when the crash occured.
-
-* 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.
-
-An example of a bug report:
-
-====
-To: submit@bugs.gnome.org
-From: yourname@your.address.org
-Subject: handlebox test in testgtk is misnamed.
-
-Package: gtk+
-Version: 1.3.4
-
-When I run gtk/testgtk, the button "handle box"
-is misnamed. There are multiple handle boxes in
-the demo, so it should be "handle boxes", to
-be like "buttons" or "check buttons".
-===
+* 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.
Patches
=======
-Patches can be uploaded to the incoming/ directory on
-ftp.gtk.org. Please follow the instructions there, and include
-your name and email address in the README file.
+Patches should also be submitted to bugzilla.gnome.org. If the patch
+fixes an existing bug, add the patch as an attachment to that bug
+report.
+
+Otherwise, enter a new bug report that describes the patch, and attach
+the patch to that bug report.
-If the patch fixes a bug, it is usually a good idea to include
-all the information described in "How to Report Bugs".
+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.
+
+Patches should be in unified diff form. (The -u option to GNU diff.)