]> Pileus Git - ~andy/gtk/blob - README
Add a missed bug number
[~andy/gtk] / README
1 General Information
2 ===================
3
4 This is GTK+ version 2.1.4. GTK+ is a multi-platform toolkit for
5 creating graphical user interfaces. Offering a complete set of widgets,
6 GTK+ is suitable for projects ranging from small one-off projects to
7 complete application suites.
8
9 GTK+ is free software and part of the GNU Project. However, the
10 licensing terms for GTK+, the GNU LGPL, allow it to be used by all
11 developers, including those developing proprietary software, without any
12 license fees or royalties.
13
14 The official ftp site is:
15   ftp://ftp.gtk.org/pub/gtk
16
17 The official web site is:
18   http://www.gtk.org/
19
20 Information about mailing lists can be found at
21   http://www.gtk.org/mailinglists.html
22
23 Installation
24 ============
25
26 See the file 'INSTALL'
27
28 GTK+-2.0.0 Specific Notes
29 =========================
30
31 * The default configuration of GTK+ has been stream-lined to reduce
32   confusion on the part of new users or users coming from other
33   environments.  Users used to older versions of GTK+ may want to make
34   some adjustments to the default configuration.
35
36    - Emacs keybindings such as Control-A and Control-E to move to the
37      ends of lines are not enabled by default in the editing widgets. To
38      turn on Emacs keybindings, add the line:
39
40       gtk-key-theme-name = "Emacs"
41    
42      To your ~/.gtkrc-2.0
43
44    - Editing of menu accelerators by pressing an accelerator over the
45      menu item is disabled by default. To enable, it, add:
46
47       gtk-can-change-accels = 1
48
49      to your ~/.gtkrc-2.0
50
51    - To improve useability for keyboard operation, GTK+ now selects the
52      contents of an entry when tabbing into it or when it is focused on
53      initial window map. To disable this behavior, add:
54
55       gtk-entry-select-on-focus = 0
56  
57      to your ~/.gtkrc-2.0
58
59 * The GTK+ libraries use an '_' prefix to indicate private symbols that
60   must not be used by applications. The intention was not to export
61   symbols beginning with prefixes such as _gtk, _gdk, and _pango from
62   the libraries at all, but due to a bug in libtool, they are actually
63   exported at the moment on some platforms (including Linux). 
64   Applications that use these private symbols _will_ break when
65   this bug is fixed.
66
67 * The Xft library that GTK+ uses to display anti-aliased fonts will
68   undergo a major version revision in the next few months. To deal with
69   this, by default, GTK+ and Pango are built so that applications will
70   not have explicit dependencies on version 1 on Xft. To make sure that
71   your application will be binary compatible with future versions of
72   GTK+:
73
74     - Do not configure Pango or GTK+ with the --enable-static or
75       --enable-explicit otions, since they will cause dependencies on
76       Xft version 1.
77
78     - Do not use Xft directly in your applicatons.
79
80 * There is a bug in the Xft library in XFree86-4.1 and possibly previous
81   versions that causes random crashes when using the Pango Xft
82   backend. If you want to use Xft fonts, you should upgrade to
83   XFree86-4.2.
84
85 * Xft support is not on by default. To turn it on set the environment
86   variable GDK_USE_XFT to '1'
87
88    GDK_USE_XFT=1
89    export GDK_USE_XFT
90
91 * The gdk_pixbuf_xlib library included in the contrib/ directory of GTK+
92   is provided on a as-is basis and has not been tested at all. No
93   guarantees about the degree of workingness or about future
94   compatibility are provided.
95
96 * There are known problems with some of the image loaders in the
97   gdk-pixbuf library included in GTK+ where corrupted images can cause
98   crashes and conceivably worse problems. Until these problems are fixed
99   (we hope to have this done for 2.0.1), gdk-pixbuf should not be used
100   to load untrusted data.
101
102 * The assumption of GLib and GTK+ by default is that filenames on the
103   filesystem are encoded in UTF-8 rather than the encoding of the locale;
104   The GTK+ developers consider that having filenames whose interpretation
105   depends on the current locale is fundamentally a bad idea.
106
107   If you have filenames encoded in the encoding of your locale, then
108   you may want to set the G_BROKEN_FILENAMES environment variable:
109   
110    G_BROKEN_FILENAMES=1
111    export G_BROKEN_FILENAMES
112
113   Best integration of GTK+-2.0 with the environment is achieved by 
114   using a UTF-8 locale.
115
116 How to report bugs
117 ==================
118
119 Bugs should be reported to the GNOME bug tracking system.
120 (http://bugzilla.gnome.org, product gtk+.) You will need to create an
121 account for yourself.
122   
123 In the bug report please include:
124   
125 * Information about your system. For instance:
126
127    - What operating system and version
128    - What version of X
129    - For Linux, what version of the C library
130
131   And anything else you think is relevant.
132
133 * How to reproduce the bug. 
134
135   If you can reproduce it with the testgtk program that is built in the
136   gtk/ subdirectory, that will be most convenient.  Otherwise, please
137   include a short test program that exhibits the behavior.  As a last
138   resort, you can also provide a pointer to a larger piece of software
139   that can be downloaded.
140
141 * If the bug was a crash, the exact text that was printed out when the
142   crash occured.
143
144 * Further information such as stack traces may be useful, but is not
145   necessary. If you do send a stack trace, and the error is an X error,
146   it will be more useful if the stacktrace is produced running the test
147   program with the --sync command line option.
148
149 Patches
150 =======
151
152 Patches should also be submitted to bugzilla.gnome.org. If the patch
153 fixes an existing bug, add the patch as an attachment to that bug
154 report.
155
156 Otherwise, enter a new bug report that describes the patch, and attach
157 the patch to that bug report.
158
159 Bug reports containing patches should include the PATCH keyword in their
160 keyword fields. If the patch adds to or changes the GTK programming
161 interface, the API keyword should also be included.
162   
163 Patches should be in unified diff form. (The -u option to GNU diff.)