]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-4
it's amazing how well things work sometimes, even when they're completely
[~andy/gtk] / ChangeLog.pre-2-4
1 Thu Nov  1 15:45:04 2001  Jonathan Blandford  <jrb@redhat.com>
2
3         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered):
4         it's amazing how well things work sometimes, even when they're
5         completely wrong.
6
7         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
8         where you could try to collapse a node w/o it having children.
9
10         (gtk_tree_view_class_init): remove Shift L<->R as they already
11         existed for expand/collapse.
12
13 Thu Nov  1 12:21:31 2001  Jonathan Blandford  <jrb@redhat.com>
14
15         * gtk/gtktreeview.c (gtk_tree_view_focus_to_cursor): Fix crash
16         found by Matt Wilson.
17
18 Thu Nov  1 00:44:50 2001  Jonathan Blandford  <jrb@redhat.com>
19
20         * gtk/gtktreeview.c (gtk_tree_view_class_init): Support Shift,
21         Control, and Shift|Control L<->R, #63475
22
23 Wed Oct 31 18:53:51 2001  Jonathan Blandford  <jrb@redhat.com>
24
25         * gtk/gtktreemodel.c (gtk_tree_row_ref_deleted_callback): fix
26         infinite loop noticed by yosh.
27
28 2001-11-01  Michael Meeks  <michael@ximian.com>
29
30         * gtk/gtksocket.c (gtk_socket_unrealize): unset the
31         GTK_REALIZED flag so we don't re-enter when we are
32         destroyed from the plug side.
33
34 Wed Oct 31 18:23:47 2001  Owen Taylor  <otaylor@redhat.com>
35
36         * gtk/gtkoptionmenu.c (gtk_option_menu_detacher): 
37         Add a "menu" property and notify on it. (#62798,
38         Padraig O'Briain)
39
40         * gtk/gtkselection.[ch] gtk/{gtkentry.c, gtkfilesel.c,
41         gtkoldeditable.c, gtktextbuffer.c, gtktextview.c}: 
42         Fix set_text to take a gchar, not a guchar, and to have 
43         a len argument.
44
45 Wed Oct 31 15:31:13 2001  Manish Singh  <yosh@gimp.org>
46
47         * gtk/gtkstock.c: fix typo to make it compile
48
49 Wed Oct 31 17:27:20 2001  Jonathan Blandford  <jrb@redhat.com>
50
51         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): if
52         the widget is insensitive, draw the text insensitively, #63306
53
54 2001-10-31  Matthias Clasen  <matthiasc@poet.de>
55
56         * gtk/gtkstock.c: Add stock items for most stock icons. (#61757)
57
58 Wed Oct 31 16:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
59
60         * gtk/gtktreednd.c (gtk_tree_set_row_drag_data): rename
61         gtk_selection_data_set_tree_row, #60218
62         (gtk_tree_get_row_drag_data): rename
63         gtk_selection_data_get_tree_row, #60218
64
65         * gtk/gtktreemodel.c (gtk_tree_row_ref_deleted_callback): Actually
66         get this right, after the third try, #63122.
67
68 2001-10-31  jacob berkman  <jacob@ximian.com>
69
70         * gdk/gdkselection.h (GDK_TARGET_STRING): 
71         (GDK_SELECTION_TYPE_STRING): these should be 31, not 3.  Hooray
72         for Xatoms (and not using the XA_* macros)!
73
74 Wed Oct 31 15:38:14 2001  Owen Taylor  <otaylor@redhat.com>
75
76         * gtk/gtkwindow.[ch] (gtk_window_get_focus): Add a
77         gtk_window_get_focus() getter to determine the currently
78         focused widget within the window. (#63145, request
79         from Damian Ivereigh)
80
81 Wed Oct 31 14:45:08 2001  Jonathan Blandford  <jrb@redhat.com>
82
83         * gtk/gtkenums.h (enum): Add GTK_SELECTION_NONE enum, #61695
84
85         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): Handle new
86         GTK_SELECTION_NONE enum.
87         (_gtk_tree_selection_internal_select_node): ditto
88
89         * gtk/gtkcellrenderer.h (struct _GtkCellRendererClass): add
90         constness.
91
92         * gtk/gtkcellrenderertoggle.c: more yummy constness.
93
94         * gtk/gtkclist.c (gtk_clist_set_selection_mode): g_return_if_fail
95         if mode == GTK_SELECTION_NONE
96
97 Wed Oct 31 14:05:17 2001  Jonathan Blandford  <jrb@redhat.com>
98
99         * gtk/gtktreeview.c (gtk_tree_view_class_init): Added a
100         "cursor_changed" signal, #62850.
101
102 2001-10-31  Matt Wilson  <msw@redhat.com>
103
104         * gtk/gtktreedatalist.c (_gtk_tree_data_list_alloc): after
105         allocating the treedatalist, zero it to make sure the values are
106         cleared from any garbage that was in this chunk.
107
108 2001-10-31  Murray Cumming  <murrayc@usa.net>
109
110         * gtk/cellrenderertext.h: "edited" default signal handler
111         gchar* args are now const.
112         gtk/cellrenderertoggle.h: "toggled" default signal handler
113         gchar* arg is now const.
114         Also changed other signal handlers for "edited" and "toggled" to
115         have the same signature.
116
117 Tue Oct 30 19:17:57 2001  Jonathan Blandford  <jrb@redhat.com>
118
119         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_sort_level): massize
120         rewrite.  Static models now totally work.  I'm not 100% sure about
121         row_inserted and row_changed, but I'll get those later.
122
123 2001-10-30  Sven Neumann  <sven@gimp.org>
124
125         * configure.in: use GLIB_AC_DIVERT_BEFORE_HELP() so we get proper
126         output for configure --help.
127
128 2001-10-30  Havoc Pennington  <hp@pobox.com>
129
130         * gtk/gtktextview.c (changed_handler): Update the IM spot location
131         here, if text was invalidated in the visible area, because the
132         scroll offset doesn't normally change in that case, and the mark
133         isn't set, just implicitly moved over as text is added/removed
134         
135 Mon Oct 29 19:18:35 2001  Jonathan Blandford  <jrb@redhat.com>
136
137         * gtk/gtkseparatormenuitem.c: Code cleanup.
138         (gtk_separator_menu_item_class_init): Fix bugs in this code.
139
140 2001-10-29  jacob berkman  <jacob@ximian.com>
141
142         * gdk/Makefile.am (LDFLAGS): 
143         * gtk/Makefile.am (LDFLAGS): automake doesn't support conditionalized
144         LDFLAGS, so put win32 flags in here
145
146 Mon Oct 29 15:41:58 2001  Jonathan Blandford  <jrb@redhat.com>
147
148         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_sort_level): Darn.
149         I can't believe this took this long to fix.
150
151 Mon Oct 29 13:54:49 2001  Jonathan Blandford  <jrb@redhat.com>
152
153         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered): fix
154         reordered signal.
155
156 Mon Oct 29 12:27:51 2001  Owen Taylor  <otaylor@redhat.com>
157
158         * gtk/gtkfilesel.c (gtk_file_selection_rename_file): Grab
159         the focus to the fileop entry for create dir / rename
160         file. (#62838)
161
162 Mon Oct 29 12:21:49 2001  Owen Taylor  <otaylor@redhat.com>
163
164         * configure.in: Don't use AC_CHECK_FILE to check for a 
165         file since it always spits warnings about cross compilation,
166         use -f instead. It's not like we cross compile properly
167         anyways.
168
169         * configure.in (gtktargetlib): Move call to AC_PROG_CC
170         to suppress autoconf warning.
171
172         * acconfig.h: Add some missing #undefs from recent
173         Win32 additions.
174
175 Mon Oct 29 11:31:40 2001  Owen Taylor  <otaylor@redhat.com>
176
177         * m4macros/gtk-2.0.m4: Don't try to use pkg-config
178         when we didn't find it. (#62944, Eric Lemings)
179
180         * m4macros/gtk-2.0.m4: Fix problem with spaces around =
181         sign in assignment. (#63209, Arkadiusz Miskiewicz)
182
183 2001-10-29  Anders Carlsson  <andersca@gnu.org>
184
185         * gtk/gtktreeview.c (gtk_tree_view_size_request): Calculate
186         the buttons size request before using it. Fixes #61696.
187
188 2001-10-29  Tor Lillqvist  <tml@iki.fi>
189
190         * README.win32: Updates.
191
192         * gtk-zip.sh.in: New file, used to build distribution package for
193         Windows.
194
195         * gdk/gdkglobals.c: Mark gdk_threads_mutex for DLL export when
196         applicable with GDKVAR.
197
198         * gdk/win32/libwntab32x.la: New file, hand-written wrapper for the
199         Wintab library.
200
201         * gdk/win32/gdkwin32.h
202         * gdk/win32/gdkprivate-win32.h: Reorganise to match corresponding
203         X11 headers better, and to enable gdkwin32.h to be installed and
204         included from applications, but not the *-win32.h headers.
205
206         * gdk/win32/*.c: Corresponding small changes, simplifications of
207         #includes.
208         
209         * gdk/win32/gdkregion-win32.c: Remove.
210
211         * gdk/win32/gdkevents-win32.c (print_event): Add GDK_SETTING.
212
213         * gdk/win32/gdkfont-win32.c
214         * gdk/win32/gdkgeometry-win32.c: Remove unused variables.
215
216         * gdk/win32/gdkproperty-win32.c (gdk_atom_intern): Don't insert
217         GDK_NONE values into hash table.
218
219         * gtk/gtk.def: Update.
220
221         * gtk/gtkfilesel.c: Include <winsock.h> (if available) for
222         gethostname().
223
224         * gtk/gtkmain.c 
225         * gtk/gtkrc.c: (Win32) Save actual DLL name for later use in DLL
226         entry function. Avoid hardcoded paths GTK_LIBDIR, GTK_SYSCONFDIR,
227         GTK_DATA_PREFIX and GTK_LOCALEDIR, instead add functions that call
228         g_win32_get_package_installation_subdirectory() with the actual
229         DLL name saved above. Redefine above directory name macros to call
230         these functions. Remove some ifdefs.
231
232         * gtk/maketypes.awk: Output GTKTYPEBUILTINS_VAR (that marks
233         variable for export on Win32) also to the _vars file.
234
235         Changes for autoconfiscated build on Win32, and addition of Win32
236         backend to the related files:
237         
238         * configure.in: Like in GLib, set LT_CURRENT_MINUS_AGE for use
239         when forming DLL name in some files. Set MS_LIB_AVAILABLE is
240         lib.exe is available. Call AC_LIBTOOL_WIN32_DLL. Set
241         PLATFORM_WIN32, OS_WIN32 and USE_WIN32 automake conditionals. Add
242         win32 target, using pangowin32. Don't use the
243         -export-symbols-regex option on Win32, we use .def files to list
244         exported symbols. Check <winsock.h> (for gethostname() in
245         gtkfilesel.c). Enclose nested AC_CHECK_* macros in brackets to
246         prevent premature m4 expansion.
247
248         * acconfig.h: Add HAVE_WINTAB.
249
250         * gdk/Makefile.am: Add libgdk-win32-1.3.la target and associated
251         macros and rules. Use -no-undefined on Win32. Use gdk.def file. If
252         MS_LIB_AVAILABLE, build MS import library. Install the import
253         libraries. If HAVE_WINTAB, link with the Wintab library.
254
255         * gdk/win32/Makefile.am: Actually enable building the win32
256         objects here, not just list all files in EXTRA_DIST. Link in the
257         compiled resource file from rc/gdk-win32res.lo. If HAVE_WINTAB,
258         copy the Wintab library into the .libs directory. 
259
260         * gdk/win32/gdkwindow-win32.c (RegisterGdkClass): Don't assume the
261         name of the GDK DLL when fetching the icon. Use the HMODULE saved
262         in gdk_dll_hinstance by DllMain.
263
264         * gdk/win32/rc/Makefile.am: Build gdk-win32res.lo using the
265         build/win32/lt-compile-resource script.
266
267         * gdk/win32/rc/gdk.rc.in
268         * gtk/gtk-win32.rc.in: Use the DLL name that libtool would use.
269
270         * gtk/Makefile.am: Add libgtk-win32-1.3.la target and associated
271         macros and rules. Use -no-undefined on Win32. Use gtk-win32.def
272         file. Install import libraries.
273
274 2001-10-29  Anders Carlsson  <andersca@gnu.org>
275
276         * gtk/gtkiconfactory.c (get_default_icons): Fix build.
277
278 2001-10-28  Hans Breuer  <hans@breuer.org>
279
280         * gdk/gdk.c gdk/gdkevents.c
281           gdk/win32/gdkcolor-win32.c gdk/win32/gdkdnd-win32.c
282           gdk/win32/gdkdrawable-win32.c gdk/win32/gdkevents-win32.c
283           gdk/win32/gdkfont-win32.c gdk/win32/gdkgc-win32.c
284           gdk/win32/gdkim-win32.c gdk/win32/gdkmain-win32.c
285           gdk/win32/gdkprivate-win32.h gdk/win32/gdkproperty-win32.c
286           gdk/win32/gdkselection-win32.c gdk/win32/gdkwin32.h
287           gdk/win32/gdkwindow-win32.c gdk/win32/gdkwindow-win32.h :
288         static correct-ness, underscore prefixing of library internal 
289         functions
290         (applied the undisputed and the win32 part. Of the latter 
291          I'm probably the one who will change it back again, if Owen
292          decides that the Gdk*Impl types should not be private to Gdk)
293
294         * gdk/gdk.def : added the remaining exported functions
295
296 2001-10-28  Matthias Clasen  <matthiasc@poet.de>
297
298         * gtk/gtkcellrenderertoggle.c, gtk/gtkimcontextsimple.c,
299         gtk/gtkimmulticontext.c, gtk/gtkimagemenuitem.c,
300         gtk/gtkiconfactory.c, gtk/gtkwindow.c: Documentation updates.
301
302 2001-10-28  jacob berkman  <jacob@ximian.com>
303
304         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): do not call
305         gtk_settings_get_default() here as that requires an X connection
306         (which breaks doc building with no X connection) and is not
307         multihead safe
308         (gtk_color_selection_init): delay palette loading until realize
309         time
310         (gtk_color_selection_realize): load the palette, and initialize
311         the global palette if it hasn't been already
312
313         * gtk/gtkpreview.c (gtk_preview_class_init): don't initialize the
314         visual/cmap fields of klass->info since they are gone
315         (gtk_preview_get_visual): just return gdk_rgb_get_visual ()
316         (gtk_preview_get_cmap): just return gdk_rgb_get_colormap ()
317         (gtk_preview_realize): don't set VISUAL and COLORMAP attributes
318
319         * gtk/gtkpreview.h (struct _GtkPreviewInfo): remove visual and
320         cmap fields
321         (gtk_preview_get_visual):
322         (gtk_preview_get_cmap): mark as deprecated
323
324         * docs/Changes-2.0.txt: add a little note about the GtkPreviewInfo
325         changes
326
327 Sun Oct 28 09:15:39 2001  Owen Taylor  <otaylor@redhat.com>
328
329         * gtk/gtkimcontext.h (struct _GtkIMContext): Fixed
330         structure to have GObject not GtkObject as
331         parent_instance. (Jeff Franks.)
332
333 2001-10-27  Matthias Clasen  <matthiasc@poet.de>
334
335         * gdk/x11/gdkinput.c: Typo fix.
336
337 2001-10-26  Havoc Pennington  <hp@pobox.com>
338
339         * gtk/gtktextview.c (gtk_text_view_mark_set_handler): Call
340         update_im_spot_location here explicitly
341         (gtk_text_view_reset_im_context): don't update the spot location
342         here
343
344 2001-10-27  Anders Carlsson  <andersca@gnu.org>
345
346         * gtk/gtktreemodel.c (gtk_tree_model_get): Fix typo in docs.
347         This fixes #62942.
348
349         * gtk/gtkspinbutton.c (gtk_spin_button_new_with_range): 
350         Clarify that we're returning a spin button in the _new function.
351         This fixes #54097.
352         
353 Fri Oct 26 20:55:57 2001  Owen Taylor  <otaylor@redhat.com>
354
355         * gtk/gtkbutton.c: Revert changes to GTK_RUN_LAST. 
356         Unfortunately, people apparently erroneously connect
357         to ::clicked for GtkToggleButton and expect
358         they know what happened in the default signal handler
359         instead of appropriately connecting to notification
360         signal ::toggled. When the revolution comes, such
361         people will be first against the wall.
362
363         We'll just have to go back to the old less-reliable
364         set-it-back hacks for handling model-view check
365         buttons and radio buttons. :-(. 
366
367 2001-10-27  Hans Breuer  <hans@breuer.org>
368
369         * gtk/gtkbbox.c gtk/gtkctree.c gtk/gtkhbbox.c
370           gtk/gtkimmulticontext.c gtk/gtklabel.c gtk/gtkliststore.c
371           gtk/gtkmenu.c gtk/gtkpaned.c gtk/gtkrc.c gtk/gtkscale.c
372           gtk/gtkstyle.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
373           gtk/gtktexttag.c gtk/gtktexttagtable.c gtk/gtktextview.c
374           gtk/gtktreestore.c gtk/gtkvbbox.c : 
375         to simplify parsing for exported functions:
376         - made implementation signature static, when the local 
377           prototype already was
378         - put the functions return value on it's own line
379         - added as space between the function name and the 
380           opening bracket
381
382         * gtk/gtk.def : added the remaining exported functions
383
384 2001-10-27  Anders Carlsson  <andersca@gnu.org>
385
386         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_fixed_width): 
387         Add note about width having to be greater than 0. This fixes
388         #55574. 
389
390         * gtk/gtktextiter.c (gtk_text_iter_backward_sentence_start): 
391         Fix docs to say previous instead of next.
392         (gtk_text_iter_backward_word_start): Likewise.
393         This fixes bug #62980.
394
395         * gtk/gtkcontainer.c (gtk_container_set_border_width): Mention
396         that the valid width is in range 0-65535 pixels. Fixes bug 
397         #56754.
398
399         * gtk/gtksizegroup.c (gtk_size_group_set_mode): Remove
400         a dot in the documentation. Fixes bug #62632.
401
402         * gdk/x11/gdkmain-x11.c: Replace int and guint with
403         long and gulong in some places to make the code 64-bit
404         clean.
405         (_gdk_windowing_init_check): Replace gint with gulong.
406         This patch was made by George Lebl and fixes bug #62113.
407
408         * tests/testgtk.c (create_range_controls): Don't set a 
409         fixed height on the hscale widget. This fixes "bug" 
410         #55840.
411         (create_window_states): Set up destroy signals so that
412         all windows will be destroyed when one is. This fixes 
413         bug #58133.
414
415 2001-10-26  Anders Carlsson  <andersca@gnu.org>
416
417         * gtk/gtktreeview.c: 
418         (gtk_tree_view_class_init): Create new "indent_expander"
419         style property.
420
421         (gtk_tree_view_get_arrow_xrange): Add a tree argument
422         to the function since the xrange can change depending
423         on where in the tree we are. 
424         
425         (coords_are_over_arrow): Update function call to
426         gtk_tree_view_get_arrow_xrange.
427         (gtk_tree_view_draw_arrow): Likewise.
428         
429         (gtk_tree_view_real_expand_collapse_cursor_row):
430         Call real_{expand|collapse}_row, so that we'll have an
431         animation.
432
433 Fri Oct 26 20:13:36 2001  Kristian Rietveld  <kristian@planet.nl>
434
435         * tests/Makefile.am: fixed a small typo
436
437 Fri Oct 26 18:27:11 2001  Kristian Rietveld  <kristian@planet.nl>
438
439         * demos/gtk-demo/list_store.c (create_model): Anders
440         Carlsson suggested to use G_N_ELEMENTS here
441
442 2001-10-26  Sven Neumann  <sven@gimp.org>
443
444         * gtk/gtkbutton.[ch]
445         * gtk/gtkdnd.c: fixed inline comments
446         
447         * gtk/gtkgamma.c: gtk_entry_get_text() returns a const gchar.
448
449 2001-10-26  Hans Breuer  <hans@breuer.org>
450
451         * gdk-pixbuf/gdk_pixbuf.def : 
452         * gdk/gdk.def : 
453         * gtk/gtk.def : updated externals
454
455         * gdk/win32/gdkpixmap-win32.c : removed duplicate of
456         gdk_window_lookup implementation. It already was in
457         gdk/win32/gdkwindow-win32.c
458
459         * gdk/win32/gdkproperty-win32.c : made it compile again
460         after GdkAtom API change
461
462         * gtk/gtk/makefile.msc.in : updated
463
464 Wed Oct 24 11:36:33 2001  Owen Taylor  <otaylor@redhat.com>
465
466         * configure.in (GTK_MICRO_VERSION): Version 1.3.10,
467         require GLib 1.3.10.
468
469         * NEWS: updates.
470
471 Thu Oct 25 16:27:29 2001  Jonathan Blandford  <jrb@redhat.com>
472
473         * gtk/gtkrbtree.c (_gtk_rbnode_rotate_left): Add support for
474         invalid nodes.
475          (_gtk_rbnode_rotate_right): Ditto.
476          (_gtk_rbtree_node_mark_invalid): New function.
477          (_gtk_rbtree_node_mark_valid): New function.
478
479         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_class_init): We're a
480         GObject, not a GtkObject.
481         (gtk_tree_model_sort_row_has_child_toggled): Rewrote to be more
482         correct.
483         (gtk_tree_model_sort_row_deleted): ditto.
484         (gtk_tree_model_sort_{un,}ref_node): Fix.
485
486         * gtk/gtktreeview.c: Protean incremental reflow support (commented
487         out)
488
489         * gtk/gtktreeview.h (GtkTreeViewSearchEqualFunc): change char *key
490         to const char *key.
491
492         * gtk/gtktreemodel.c (gtk_tree_row_reference_unref_path_helper):
493         Important 1 line fix to fix a lot of refcounting woes.
494
495 2001-10-25  Matt Wilson  <msw@redhat.com>
496
497         * gtk/gtktextview.c (gtk_text_view_destroy): call
498         gtk_text_view_destroy_layout after gtk_text_view_set_buffer (which
499         now invalidates) so that we remove our idle functions.
500         (gtk_text_view_destroy_layout): remove the first_validate_idle as
501         well.
502
503         * gtk/gtktexttag.c (gtk_text_tag_class_init): the valid range for
504         the 'indent' property is G_MININT to G_MAXINT.  Don't use
505         -G_MAXINT for the minimum of the 'rise' property, use G_MININT
506         instead.
507
508 2001-10-24  Anders Carlsson  <andersca@gnu.org>
509
510         * gtk/gtktreeview.c: 
511         (gtk_tree_view_real_expand_row): add an animate argument
512         (gtk_tree_view_real_collapse_row): likewise
513         
514         (gtk_tree_view_button_press), (gtk_tree_view_button_release), 
515         (gtk_tree_view_collapse_all), (gtk_tree_view_expand_row),
516         (gtk_tree_view_collapse_row): update functions that call
517         real_{expand|collapse}_row to set the animate argument 
518         accordingly.
519         
520 2001-10-24  Alex Larsson  <alexl@redhat.com>
521
522         * gdk/linux-fb/gdkfont-fb.c:
523         Update to new Pango APIs
524
525         * gdk/linux-fb/gdkproperty-fb.c:
526         Update to new GdkAtom APIs
527
528         * gdk/linux-fb/gdkwindow-fb.c:
529         Remove warnings
530
531 Mon Oct 22 20:07:21 2001  Jonathan Blandford  <jrb@redhat.com>
532
533         * gtk/gtktreestore.c (gtk_tree_store_prepend): Fix docs, #62808
534
535 Wed Oct 24 22:54:07 2001  Kristian Rietveld  <kristian@planet.nl>
536
537         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): treat
538         s_path as a child path
539
540 Wed Oct 24 20:29:47 2001  Kristian Rietveld  <kristian@planet.nl>
541
542         * gtk/gtktreemodelsort.c: more changes in an attempt to get
543         it right. It's not yet ready for general consumption.
544
545         * tests/treestoretest.c: add a button and entry for the new
546         iter_change function
547         (iter_change): new function, to test
548         the row_changed signal implementation of the GtkTreeModelSort
549
550         * tests/testtreesort.c: cleanups, changes to test more features
551         of the GtkTreeModelSort at once
552
553 2001-10-24  Havoc Pennington  <hp@redhat.com>
554
555         * gtk/gtktextbuffer.c (clipboard_clipboard_buffer_received):
556         remove hack to strip off the bogus newline, since we killed the
557         bogus newline; fixes #61779
558
559 2001-10-24  Havoc Pennington  <hp@redhat.com>
560
561         * gtk/gtktextview.c (gtk_text_view_update_adjustments): don't
562         create layout if we didn't have one
563         (gtk_text_view_set_buffer): invalidate so we get the idle handlers
564         as appropriate, avoids blanking the screen 
565         (gtk_text_view_invalidate): new function to do invalidation,
566         containing old guts of invalidated_handler
567
568 Wed Oct 24 10:29:47 2001  Owen Taylor  <otaylor@redhat.com>
569
570         * gtk/gtkalignment.c (gtk_alignment_class_init): Improve
571         dreadful tooltips.
572
573 Tue Oct 23 17:31:42 2001  Owen Taylor  <otaylor@redhat.com>
574
575         * gdk/x11/gdkwindow-x11.c gdk/win32/gdkwindow-win32.c: Always 
576         set window->parent (except or the root window itself); if 
577         the window's parent is not a GdkWindow, or is a window of 
578         type GDK_WINDOW_FOREIGN, set window->parent to the root parent.
579
580         * gdk/gdkwindow.c (gdk_window_get_toplevels): Don't include
581         windows of type GDK_WINDOW_FOREIGN.
582
583 2001-10-24  Havoc Pennington  <hp@pobox.com>
584
585         * gtk/gtktextiter.c (gtk_text_iter_backward_chars): if we move to
586         the front of a segment, use the "slow" technique for moving
587         backward, so we don't mess up the any_segment field in the iter. 
588         Fixes #57707
589
590         * tests/testtextbuffer.c: add code to detect #57707, to avoid
591         regression
592
593 2001-10-23  Havoc Pennington  <hp@redhat.com>
594
595         * gtk/gtktextview.c (popup_targets_received): only sensitize Cut
596         if selection contains some editable text, #60975
597         (gtk_text_view_scroll_to_iter): remove warning about scrolling
598         prior to map; it should actually be OK to do so in many cases, 
599         it would be nice to warn about scrolling when many lines have
600         height 0, but I don't know what to do about that. Perhaps 
601         move part of flush_scroll into this function? comment added 
602         to consider this.
603
604 2001-10-23  Havoc Pennington  <hp@redhat.com>
605
606         * gtk/gtktextview.c (changed_handler): Correctly keep the same
607         text on the top of the screen, considering that the changed region
608         may have overlapped the first paragraph. Should fix msw's "text
609         widget scrolled to wrong place on map" bug, and probably some
610         other scrolling cases as well.
611         (gtk_text_view_set_scroll_adjustments): start adjustments at 0.0, 
612         instead of some random value
613
614         * gtk/gtktextview.c (gtk_text_view_class_init): actually override
615         grab_focus, so #59708 is really fixed
616
617 2001-10-24  Anders Carlsson  <andersca@gnu.org>
618
619         * gtk/gtkentry.c: (append_action_signal): Use an image menu item here
620         (popup_targets_received): Call append_action_signal with stock items
621         
622         * gtk/gtklabel.c: (append_action_signal): Use an image menu item here
623         (gtk_label_do_popup): Call append_action_signal with stock items
624         
625         * gtk/gtktextview.c: (append_action_signal): Use an image menu item here
626         (popup_targets_received): Call append_action_signal with stock items
627
628 2001-10-23  Havoc Pennington  <hp@redhat.com>
629
630         * gtk/gtktextview.c (changed_handler): queue a resize here; will
631         temporarily slow down the widget a lot, until we figure out how to
632         optimize to avoid full redraw everytime we queue a resize.
633
634 2001-10-23  Havoc Pennington  <hp@redhat.com>
635
636         * gtk/gtktextiter.c (test_log_attrs): handle case where offset ==
637         0 and char_len == 0, bug #61729
638
639 2001-10-23  Havoc Pennington  <hp@redhat.com>
640
641         * gtk/gtktextiter.c (gtk_text_iter_forward_cursor_positions): fix
642         return value, #61714 (Vitaly Tishkov)
643         (gtk_text_iter_backward_sentence_starts): ditto
644         (gtk_text_iter_backward_word_starts): ditto
645         (gtk_text_iter_forward_word_ends): ditto
646         (gtk_text_iter_forward_sentence_ends): ditto
647         (gtk_text_iter_backward_cursor_positions): ditto
648
649 2001-10-23  Havoc Pennington  <hp@redhat.com>
650
651         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_pixel): Apply
652         fix from Dov Grobgeld, #61858
653
654 2001-10-23  Havoc Pennington  <hp@redhat.com>
655
656         * gtk/gtktextview.c (gtk_text_view_update_im_spot_location): 
657         Update IM spot location at appropriate times, #50626
658         (Hidetoshi Tajima)
659
660 2001-10-23  Havoc Pennington  <hp@redhat.com>
661
662         * gtk/gtktextview.c (gtk_text_view_grab_focus): scroll to cursor
663         on grab focus, unless it's caused by button click, #59708
664
665 Tue Oct 23 11:53:00 2001  Owen Taylor  <otaylor@redhat.com>
666
667         * gtk/Makefile.am (INCLUDES): Remove G_DISABLE_CONST_RETURNS.
668
669         * gtk/gtkfontsel.[ch]: Make gtk_font_selection_get_font()
670         G_CONST_RETURN. (Murray Cumming)        
671
672         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_preview_text):
673         Make G_CONST_RETURN.
674
675         * gtk/gtkfilesel.c (open_user_dir): Fix bug with freeing
676         results of g_get_home_dir().
677
678         * gtk/gtkfilesel.c: Make filesel->fileop_file a duplicated 
679         copy. Storing the return from gtk_entry_get_text() is evil.
680
681         * gtk/gtkcombo.c gtk/gtkcellrenderertext.c gtk/gtkbindings.c 
682         gtk/gtkfilesel.c gtk/gtkfontsel.c gtk/gtkimmodule.c 
683         gtk/gtkobject.c gtk/gtkoldeditable.c gtk/gtktreedatalist.c
684         gtk/gtksignal.c: Add const.
685
686         * gdk/x11/gdkkeys-x11.c (get_direction): Add missing const.
687
688         * gtk/gtktreeview.c: Namespace object data keys to be safe, even 
689         if we are setting them on private widgets.
690
691         * gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search): 
692         Duplicate entry->text before setting it as object data.
693
694 2001-10-22  Havoc Pennington  <hp@redhat.com>
695
696         * gtk/gtktextbuffer.c (gtk_text_buffer_place_cursor): don't back
697         up a char from the end iterator, fixes #61859 ("can't put cursor
698         at the end of the buffer")
699
700         * gtk/gtktextiter.c (gtk_text_iter_forward_to_line_end): fix this
701         to work with delimiters other than newline.
702
703         * tests/testtextbuffer.c: add some tests for get_chars_in_line,
704         get_bytes_in_line
705
706         * gtk/gtktextiter.c (gtk_text_iter_get_chars_in_line): fix for the
707         last line, since the newline is no longer counted.
708         (gtk_text_iter_get_bytes_in_line): ditto
709
710 2001-10-22  Havoc Pennington  <hp@redhat.com>
711
712         * gtk/gtktextbtree.c (_gtk_text_btree_insert): add assertion that 
713         #58290 would trigger if it reappeared, I think
714
715 2001-10-22  Havoc Pennington  <hp@redhat.com>
716
717         * gtk/gtktextiter.c (_gtk_text_iter_forward_indexable_segment):
718         add temporary code to dump btree contents on assertion failure
719         described in #62656
720         
721         * gtk/gtktextbtree.c (ensure_end_iter_segment): add some
722         assertions that we're getting the right end iter segment
723
724         * gtk/gtktextiter.c (_gtk_text_iter_forward_indexable_segment):
725         verify that we aren't on the end iterator after moving 
726         forward one segment - fixes return value in an obscure case. 
727         Also, some trivial code cleanup/rearranging.
728         
729 2001-10-22  Havoc Pennington  <hp@redhat.com>
730
731         * gtk/gtktextlayout.h: add a #error unless you define
732         GTK_TEXT_USE_INTERNAL_UNSUPPORTED_API, so people don't use this accidentally
733
734         * gtk/gtktext*.c: #define GTK_TEXT_USE_INTERNAL_UNSUPPORTED_API as appropriate.
735         
736 2001-10-22  Havoc Pennington  <hp@redhat.com>
737
738         * gtk/gtktextview.c (gtk_text_view_get_border_window_size): fix 
739         #62365
740
741 2001-10-22  Havoc Pennington  <hp@redhat.com>
742
743         * gtk/gtktextview.c (gtk_text_view_get_window_type): fix 
744         #62436
745
746 2001-10-22  Havoc Pennington  <hp@redhat.com>
747
748         * gtk/gtktextview.c (gtk_text_view_set_border_window_size): Fix 
749         #62366
750
751 Mon Oct 22 11:47:47 2001  Owen Taylor  <otaylor@redhat.com>
752
753         * gtk/gtklabel.c: Add cursor-position, selection-bound 
754         properties. (#62148, reported by Padraig O'Briain)
755
756         * gtk/gtkentry.c (gtk_entry_class_init): Rename text_position
757         to cursor_position. (1.3.x addition, text_position is an awful
758         name.) Make cursor_position read-only to avoid sticky questions
759         of interaction with selection_bound. (#62636, reported by
760         Padraig O'Briain)
761
762 Mon Oct 22 16:25:12 2001  Owen Taylor  <otaylor@redhat.com>
763
764         Fixing popup menus to have "Paste" sensitized correctly. Original
765         patches from Damian Ivereigh, much mangled.
766
767         * gtk/gtkselection.c: Add functions gtk_selection_data_get_targets(),
768         gtk_selection_data_targets_include_text(). (#60854)
769
770         * gtk/gtkclipboard.c: Add a simple do-it-all non-async "check if
771         the clipboard has text" function gtk_clipboard_wait_is_text_available.
772         (#60854)
773
774         * gtk/gtkentry.c: Only enable the paste item if the clipboard
775         contains text. (#60973)
776
777         * gtk/gtktextview.c: Only enable the paste item if the clipboard
778         contains text. (#60975)
779
780 2001-10-22  Havoc Pennington  <hp@redhat.com>
781
782         * gtk/gtktextview.c (gtk_text_view_class_init): rip out
783         "height_lines" and "width_columns" properties, it doesn't make
784         sense to set the size request on a text view really. #62103
785
786 Mon Oct 22 15:17:05 2001  Jonathan Blandford  <jrb@redhat.com>
787
788         * gtk/gtktreestore.c (gtk_tree_store_iter_depth): Realized
789         g_node_depth is broken, and that it's not worth being consistent
790         with it.
791
792 2001-10-22  Havoc Pennington  <hp@redhat.com>
793
794         * gtk/gtktextiter.c (gtk_text_iter_set_line): Clarify behavior in
795         docs, #61777
796         (gtk_text_iter_forward_search) (gtk_text_iter_backward_search):
797         change the two boolean args to a flags field, so we can extend 
798         to add case insensitive, regexp searches later. #61852
799
800 Mon Oct 22 15:07:17 2001  Jonathan Blandford  <jrb@redhat.com>
801
802         * gtk/gtktreestore.c (gtk_tree_store_iter_depth): update docs to
803         reflect reality, #62810
804
805 Mon Oct 22 14:08:26 2001  Jonathan Blandford  <jrb@redhat.com>
806
807         * demos/gtk-demo/appwindow.c: Remove handle_box from App demo.
808
809         * gtk/gtktreeview.c (size_allocate): Move to a different drawing
810         system.  Instead of having a window the size of the tree, we have
811         a window the size of widget->allocation, and simply draw with the
812         offset.
813         (coords_are_over_arrow): ditto.  Move to window coordinates.
814         (do_prelight): ditto
815         (do_unprelight): ditto
816
817         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered):
818         Minor fix from Kristian Rietveld to fix unsorted case.
819
820 2001-10-22  jacob berkman  <jacob@ximian.com>
821
822         * gtk/gtkclist.c (cell_size_request): don't cast a PIXTEXT cell to
823         a PIXMAP cell (fixes crash when using PIXTEXT cells)
824
825 Sat Oct 20 18:58:25 2001  Owen Taylor  <otaylor@redhat.com>
826
827         * gtk/gtkentry.h: Deprecate gtk_entry_set_editable.
828         (#58768, Vitaly Tishkov)
829         
830         * gtk/gtkobject.h: Deprecate with abandon. 
831         (#61942, Vitaly Tishkov, Matthias Clasen)
832
833         * gtk/gtksignal.h: Deprecate everything.
834
835         * gtk/gtkmain.h (GTK_PRIORITY_INTERNAL): Deprecate
836         all GTK_PRIORITY_* defines other than GKT_PRIORITY_RESIZE>
837         (#61942, Matthias Clasen)
838
839         * gtk/gtkstyle.h: Deprecate gtk_draw_*. (#61140,
840         Havoc Pennington)
841
842         * gtk/gtkitemfactory.h: Deprecate compat functions
843         for GtkMenuFactory code. (#62071)
844
845         * gdk/gdkdrawable.h: Deprecate gdk_draw_string,
846         gdk_draw_text,gdk_draw_text_wc. (#62071)
847
848 Mon Oct 22 10:12:08 2001  Owen Taylor  <otaylor@redhat.com>
849
850         * gdk/gdk.c docs/Changes-2.0.txt (gdk_threads_init): Don't call
851         g_thread_init(), we don't want to link to -lgthread if we don't
852         have to.
853
854 Mon Oct 22 08:51:02 2001  Owen Taylor  <otaylor@redhat.com>
855
856         * gdk/gdk.[ch] (gdk_threads_init) docs/Changes-2.0.txt: 
857         Add a function, gdk_threads_init() that must be explicitely 
858         called to enable the GDK thread mutex.
859
860 2001-10-22  Jakub Steiner <jimmac@ximian.com>
861
862         * gtk/stock-icons/stock_stop.png: no body parts
863         
864 Sun Oct 21 23:27:00 2001  Owen Taylor  <otaylor@redhat.com>
865
866         * gtk/gtkwidget.c (gtk_widget_translate_coordinates): Fix
867         problem with g_return_if_fail return value.
868
869         * gdk/x11/gdkproperty-x11.c docs/Changes-2.0.txt: Move over the 
870         virtual atom code from the gdk-multihead branch, removing the per-display
871         part. Virtualizing atoms needs to be done now to prevent compat
872         breakage in direct Xlib accessing code in the future. (#62208)
873  
874         * gdk/x11/gdkx.h: gdk/gdk/x11/gdkproperty-x11.c: Export
875         gdk_x11_xatom_to_atom, gdk_x11_atom_to_xatom().
876  
877         * gdk/gdktypes.h docs/Changes-2.0.txt: Make GdkAtom
878         an opaque pointer type so the compiler catches attempts
879         to mingle it with X atoms.
880
881         * gdk/x11/{gdkdnd-x11.c,gdkevents-x11.c,gdkglobals-x11.c,
882           gdkkeys-x11.c, gdkmain-x11.c, gdkprivate-x11.c, 
883           gdkproperty-x11.c, gdkselection-x11.c, gdkwindow-x11.c}
884           gtk/{gtkclist.c,gtkctree.c,gtkdnd.c,gtkplug.c,gtksocket.c}
885           tests/testdnd.c,tests/testselection.c: 
886         Fix up for above atom changes.
887
888         * gdk/gdkselection.h (GDK_SELECTION_CLIPBOARD): Add, since we
889         now have the ability to add custom predefines.
890
891         * gtk/{gtkentry.c,gtklabel.c,gtkoldeditable.c,gtktextview.c}:
892         Use GDK_SELECTION_CLIPBOARD instead of GDK_NONE in calls
893         to gtk_clipboard_get().
894
895         * gdk/win32/gdkproperty-win32.c: Add CLIPBOARD, fix up
896         for GdkAtom => pointer change.
897
898         * gdk/linux-fb/gdkproperty-fb.c: Fix handling of predefined
899         atoms, fix for GdkAtom => pointer change.
900
901 Mon Oct 22 00:26:46 2001  Kristian Rietveld  <kristian@planet.nl>
902
903         * gtk/gtkspinbutton.c: remove ARROW_SIZE constant, use
904         new function spin_button_get_arrow_size() instead.
905
906         * gtk/gtkstyle.c (gtk_default_draw_arrow): actual size of
907         arrow was hardcoded, it's now variable.
908
909         Fixes bug #50200
910
911 Sat Oct 20 18:16:04 2001  Manish Singh  <yosh@gimp.org>
912
913         * gtk/gtktreeview.c (gtk_treeview_get_property): PROP_MODEL and
914         PROP_EXPANDER_COLUMN can be NULL, so don't do a object cast check
915         for those
916
917 Sat Oct 20 19:38:16 2001  Owen Taylor  <otaylor@redhat.com>
918
919         * demos/*.c demos/gdk-pixbuf/*.c: Eliminate gtk_signal_*
920         in favor of g_signal_*, gtk_object_* in favor of 
921         g_object_*.
922
923 Fri Oct 19 18:35:22 2001  Manish Singh  <yosh@gimp.org>
924
925         * gtk/{gtkentry.c,gtktextview.c}: since GtkIMContext derives directly
926         from GObject now, we have to use the g_object_* functions, not
927         gtk_object_*.
928
929 Fri Oct 19 22:46:54 2001  Kristian Rietveld  <kristian@planet.nl>
930
931         * gtk/gtktreemodelsort.[ch]: we probably have rows_reordered
932         nailed down now (this code is not yet ready for general consumption)
933
934 Fri Oct 19 13:44:51 2001  Manish Singh  <yosh@gimp.org>
935
936         * gtk/gtktreeview.c (gtk_treeview_scroll_to_cell): correct docs
937         for use_align
938
939 Fri Oct 19 15:34:06 2001  Owen Taylor  <otaylor@redhat.com>
940
941         * gtk/gtk.h gtk/Makefile.am: Export GtkIMContextSimple publically. (#61862)
942
943 Fri Oct 19 15:08:30 2001  Owen Taylor  <otaylor@redhat.com>
944
945         * gtk/{gtkimcontext.c,gtkimcontextsimple.c,gtkimmulticontext.c}
946         modules/input/{gtkimcontextxim.c,imcyrillic-translit.c,iminuktitut.c,
947         imipa.c,imthai-broken.c,imviqr.c}: Make GtkIMContext derive from
948         GObject, not GtkObject. (#62621)
949
950 Fri Oct 19 12:49:12 2001  Owen Taylor  <otaylor@redhat.com>
951
952         * tests/testsocket.c: Remove now useless include of unistd.h,
953         fix wrong argument gtk_socket_steal. (Hans Breuer, #58541)
954         
955 Fri Oct 19 12:24:32 2001  Owen Taylor  <otaylor@redhat.com>
956
957         * gdk/linux-fb/gdkfont-fb.c: Fix up for change to 
958         Pango font API. #61933. (Untested, even for compilation.)
959
960 Fri Oct 19 11:24:58 2001  Owen Taylor  <otaylor@redhat.com>
961
962         * gtk/gtkmain.[ch] (gtk_disable_setlocale): Actually
963         export gtk_disable_setlocale(). (Caught by Sven Neumann)
964
965 2001-10-18  Havoc Pennington  <hp@redhat.com>
966
967         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_lookup): fix compilation
968
969 2001-10-18  Havoc Pennington  <hp@redhat.com>
970
971         * gtk/gtkbutton.c (gtk_button_class_init): Change button signals
972         to GTK_RUN_LAST, #50239
973
974 2001-10-18  HideToshi Tajima  <hidetoshi.tajima@sun.com>
975
976         * gtk/gtkimmodule.c (match_locale):
977         Support "*" for all locales with least priority
978         when to select default im module, #58201
979
980 2001-10-18  Matthias Clasen  <matthiasc@poet.de>
981
982         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): 
983         Fix docs. (#61976)
984  
985         * gtk/gtkplug.c (gtk_plug_get_id) : Fix docs. (#62144)
986
987         * gtk/gtkliststore.c: Fix docs. (#61672, #61675)
988
989         * gdk/gdkwindow.h, gdk/gdkpixmap.h, gdk/x11/gdkx.h,
990         gdk/x11/gdkwindow-x11.c, gdk/x11/gdkpixmap-x11.c,
991         gdk/win32/gdkwin32.h, gdk/win32/gdkwindow-win32.c,
992         gdk/win32/gdkpixmap-win32.c, gdk/linux-fb/gdkfb.h,
993         gdk/linux-fb/gdkwindow-fb.c, gdk/linux-fb/gdkpixmap-fb.c:
994         Add gdk_window_lookup, gdk_window_foreign_new, gdk_pixmap_lookup
995         and gkd_pixmap_foreign_new to the gdk frontend api. (#62063)
996
997         * gtk/gtkselection.c: Remove gdk backend dependencies. (#62063)
998
999         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): 
1000         Don't restrict the width of the spinbutton entry field 
1001         to 10 digits. (#58681)
1002
1003 Thu Oct 18 14:58:14 2001  Jonathan Blandford  <jrb@redhat.com>
1004
1005         * tests/testtreeflow.c: new test program for the tree.
1006
1007 Thu Oct 18 14:22:10 2001  Jonathan Blandford  <jrb@redhat.com>
1008
1009         * gtk/gtktreestore.c (gtk_tree_store_remove): fix small bug
1010         reported by (Oleg Maiboroda), #62600
1011
1012 2001-10-18  Michael Meeks  <michael@ximian.com>
1013
1014         * gtk/gtkentry.c (gtk_entry_set_property),
1015         (gtk_entry_get_property): impl 'text'
1016         (gtk_entry_class_init): add the 'text' prop.
1017         (gtk_entry_insert_text): notify 'text' changed.
1018         (gtk_entry_delete_text): ditto.
1019
1020 2001-10-17  Matthias Clasen  <matthiasc@poet.de>
1021
1022         * gtk/gtkdnd.c, gtk/gtkclipboard.c, gdk/x11/gdkmain-x11.c:
1023         Documentation updates.
1024
1025 Wed Oct 17 15:17:20 2001  Owen Taylor  <otaylor@redhat.com>
1026
1027         * gtk/gtkentry.c (gtk_entry_real_insert_text): Fix mistake
1028         in truncating length of text to MAX_SIZE. (Found by 
1029         Padraig O'Briain, #62055)
1030
1031 Tue Oct 16 17:04:44 2001  Owen Taylor  <otaylor@redhat.com>
1032
1033         * gtk/gtkwidget.c: Rename ACTIVATE_MNEMONIC enum to
1034         MNEMONIC_ACTIVATE; signal was changed a long time
1035         ago.
1036
1037         * gdk/x11/gdkim-x11.c (_gdk_x11_initialize_locale): 
1038         Fix wrong return statement. (Reported by HideToshi
1039         Tajima and others.)
1040
1041         * gtk/gtklabel.h (struct _GtkLabelClass): Remove
1042         left over select_all vfunc.
1043
1044 Tue Oct 16 15:50:03 2001  Owen Taylor  <otaylor@redhat.com>
1045
1046         * gtk/gtkwidget.c (gtk_widget_translate_coordinates): Add
1047         a utility function to translate coordinates relative to
1048         one widget's allocation to coordinates relative to another
1049         widget's allocation.
1050
1051         * gtk/gtkradiobutton.c: Add a special ->focus() implementation
1052         that:
1053          - only accepts external focus if there is no active
1054            member of the group or the button is active.
1055          - makes arrow keys move the active button as well
1056            as the focus
1057          - make tab tab out directly.
1058         This makes a radio button group act as a single focus location.
1059         (#53577).
1060         
1061         * gtk/gtkcontainer.c (gtk_container_focus): Remove prefiltering -
1062         it was only a small optimization that didn't matter and made
1063         things more complicated.
1064
1065         * gtk/gtkcontainer.c (gtk_container_focus_tab): Get rid of custom
1066         sorter for FOCUS_TAB as we did for the other focus directions,
1067         sort by center of widgets, not upper-left corner. (Shouldn't
1068         matter in general.)
1069
1070         * gtk/gtkcontainer.c: Restructure code to remove duplicate code
1071         from the different types of focusing: encapsulate sorting the
1072         widgets for the focus direction into one routine
1073         (gtk_container_focus_sort()) and then share the work of moving the
1074         focus between the different focus directions.
1075
1076         * gtk/gtkcontainer.c: Fix bug where arrow navigation might not
1077         work correctly with focus chains containing non-immediate
1078         children. Sorting was being done using allocation coordinates for
1079         each widget in the focus chain, and if there were intermediate
1080         window-widgets, these allocations would not be in the same
1081         coordinate system.
1082
1083 Tue Oct 16 15:12:26 2001  Jonathan Blandford  <jrb@redhat.com>
1084
1085         * gtk/gtkoptionmenu.c (gtk_option_menu_mnemonic_activate): add a
1086         mnemonic_activate function to option menu.
1087
1088 2001-10-15  Murray Cumming <murrayc@usa.net>
1089
1090         * gtk/gtkinputdialog.c, gtk/gtktoolbar.c,  gtk/gtkwidget.c:
1091           Corrected the type names used in some calls to g_signal_new().
1092         
1093 Sat Oct 13 07:09:30 2001  Tim Janik  <timj@gtk.org>
1094
1095         * gtk/gtkbindings.c (gtk_binding_set_add_path): to compare pattern
1096         specs, use g_pattern_spec_equal() instead of direct field accesses.
1097         upon compressing two equal paths of the same type, the resulting
1098         priority has to be the maximum.
1099         * gtk/gtkenums.h (enum): take GTK_PATH_PRIO_MASK out of the
1100         GtkPathPriorityType enum and make it a macro.
1101
1102 2001-10-12  Matthias Clasen  <matthiasc@poet.de>
1103
1104         * gtk/gtkwidget.c: Fix some doc comments.
1105
1106 Fri Oct 12 11:39:20 2001  Joshua N Pritikin  <vishnu@pobox.com>
1107
1108         * gtk/gtktreeview.c (gtk_tree_view_get_path_at_pos): Fix to work
1109         on empty models.
1110
1111 2001-10-11  Matthias Clasen  <matthiasc@poet.de>
1112
1113         * gtk/gtkcolorsel.c, gtk/gtkwidget.c, gtk/gtktreeview.c:
1114         Remove stale gdk backend includes.
1115  
1116 2001-10-10  Michael Meeks  <michael@ximian.com>
1117
1118         * gtk/gtkcombo.c (gtk_combo_class_init): add enable_empty
1119         and value_in_list properties.
1120         (gtk_combo_set_value_in_list): notify change.
1121         (gtk_combo_set_property, gtk_combo_get_property): impl. prop.
1122
1123 2001-10-11  James Henstridge  <james@daa.com.au>
1124
1125         * configure.in: add AS=CC and ASFLAGS=CFLAGS substitutions so
1126         that gtk+ can be built with automake 1.5 while not breaking
1127         things for automake 1.4.
1128
1129 Wed Oct 10 12:48:38 2001  Owen Taylor  <otaylor@redhat.com>
1130
1131         * gtk/gtkmain.c (gtk_init_check): Call setlocale (LC_ALL, "").
1132         (#60606)
1133
1134         * gtk/gtkmain.c (gtk_disable_setlocale): Add function
1135         to disable calling setlocale (LC_ALL, "").
1136
1137         * gtk/gtkmain.c (gtk_set_locale): Indicate in the 
1138         docs that this function is not typically useful.
1139
1140         * gdk/x11/{gdkim-x11.c,gdkmain-x11.c,gdkprivate-x11.h}: 
1141         Automatically initialize GDK for the current locale
1142         on gdk_init(). Don't reset locale to C when
1143         XSupportsLocale() fails.
1144
1145         * gdk/linux-fb/gdkim-fb.c (gdk_set_locale): Remove
1146         useless checks for UTF-8 locale breakage that mattered
1147         only for X.
1148
1149         * examples/calendar/calendar.c
1150         tests/{testgtk.c,testtext.c,testcalendar.c}: Remove calls to 
1151         gtk_set_locale().
1152
1153         * gtk/gtkiconfactory.c gtk/gtkitemfactory.c:
1154         gdk_pixbuf_new_from_stream => gdk_pixbuf_new_from_inline.
1155
1156 Wed Oct 10 21:13:46 2001  Kristian Rietveld  <kristian@planet.nl>
1157
1158         * gtk/gtktreemodel.[ch]: added gtk_tree_model_get_iter_from_string().
1159
1160         Fixes bug #61904
1161
1162 Wed Oct 10 01:19:04 2001  Jonathan Blandford  <jrb@redhat.com>
1163
1164         * gtk/gtktreeselection.c (gtk_tree_selection_iter_is_selected):
1165         new function, #61923
1166         (gtk_tree_selection_path_is_selected): Ditto
1167
1168 Tue Oct  9 17:40:24 2001  Jonathan Blandford  <jrb@redhat.com>
1169
1170         * gtk/gtktreestore.c (gtk_tree_store_finalize): We're a gobject,
1171         not a GtkObject.  Thanks andersca.
1172
1173         * gtk/gtkliststore.c (gtk_list_store_finalize): ditto
1174
1175 Tue Oct  9 14:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
1176
1177         * gtk/gtktreeviewcolumn.c
1178         (gtk_tree_view_model_sort_column_changed): fix broken code.
1179
1180 2001-10-08  Matthias Clasen  <matthiasc@poet.de>
1181
1182         * gtk/gtkselection.c: s/succesfully/successfully/g
1183
1184 2001-10-08  Havoc Pennington  <hp@pobox.com>
1185
1186         * demos/gtk-demo/stock_browser.c: remove unused enum
1187
1188         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
1189         pass the current selection state of the node in to the user
1190         selection func
1191
1192 2001-10-06  Matthias Clasen  <matthiasc@poet.de>
1193
1194         * gdk/x11/gdkx.h (GDK_CURSOR_XCURSOR): Replace reference to 
1195         non-existent function gdk_x11_cursor_get_xid 
1196         by gdk_x11_cursor_get_xcursor.
1197
1198 Fri Oct  5 20:50:00 2001  Jonathan Blandford  <jrb@redhat.com>
1199
1200         * gtk/gtktreestore.c (gtk_tree_store_iter_has_child): improve
1201         warning.
1202
1203         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): ref and
1204         unref nodes, #okay61676
1205
1206         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_sort): we listen
1207         to the property; no need to clear the other columns.  Also, we go
1208         to 'unsorted' if the model supports it.
1209
1210 2001-10-05  Sven Neumann  <sven@gimp.org>
1211
1212         * demos/testpixbuf-save.c
1213         * demos/testpixbuf-scale.c: simple tests for the new PNG tEXt chunk 
1214         feature.
1215
1216 Fri Oct  5 19:06:07 2001  Kristian Rietveld  <kristian@planet.nl>
1217
1218         * gtk/gtktreeview.c (gtk_tree_view_leave_notify): should
1219         destroy the search dialog
1220
1221         * gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search):
1222         added check to prevent creation of a search dialog if there's
1223         already one around
1224
1225         * gtk/gtktreeview.c: Define GTK_TREE_VIEW_SEARCH_DIALOG_KEY, and use
1226         it instead of "search-dialog" (when getting/setting the search dialog
1227         widget).
1228
1229 2001-10-05  Jakub Steiner <jimmac@ximian.com>
1230
1231         * gtk/stock-icons/stock_broken_image.png: broken images icon
1232
1233 2001-10-04  Havoc Pennington  <hp@pobox.com>
1234
1235         Fix #56586
1236         
1237         * gtk/gtksettings.c (gtk_settings_class_init): move the F10
1238         accelerator setting here...
1239
1240         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): ...from over here,
1241         because we try to use it when a menu bar hasn't necessarily been 
1242         initialized.
1243
1244 2001-10-03  Havoc Pennington  <hp@redhat.com>
1245
1246         * tests/testtextbuffer.c (logical_motion_tests): fix test case, 
1247         it previously verified incorrect behavior
1248
1249         Fixes for #61565
1250         
1251         * gtk/gtktextiter.c (gtk_text_iter_set_line): don't return lines
1252         off the end
1253         (_gtk_text_btree_get_iter_at_line_char): don't return lines off
1254         the end
1255         (_gtk_text_btree_get_iter_at_line_byte): don't return lines off
1256         the end
1257         (gtk_text_iter_forward_lines): if on the last line, move to end of
1258         it
1259
1260         * gtk/gtktextbtree.c (_gtk_text_btree_last_could_contain_tag):
1261         don't return a line off the end
1262
1263 Wed Oct  3 23:47:25  Kristian Rietveld  <kristian@planet.nl>
1264
1265         * gtk/gtkeditable.[ch]: move insert_text and delete_text virtual
1266         functions to do_insert_text and do_delete_text, add signals
1267         insert_text, delete_text and changed
1268
1269         * gtk/gtkentry.[ch]: remove signals insert_text, delete_text
1270         and changed. Updates to match new situation.
1271
1272         * gtk/gtkspinbutton.c: updates to match new situation
1273
1274         * gtk/gtkoldeditable.h: remove signals changed, insert_text
1275         and delete_text
1276
1277         * gtk/gtkoldeditable.c: updates to match new situation
1278
1279         * gtk/gtktext.c: updates to match new situation
1280
1281         Fixes bug #59803
1282
1283 2001-10-03  Havoc Pennington  <hp@redhat.com>
1284
1285         * gtk/gtktextiter.c (test_log_attrs): allow testing the end 
1286         position
1287
1288         * gtk/gtktextbuffer.c (compute_log_attrs): update for pango
1289         changes
1290
1291         * tests/testtextbuffer.c (logical_motion_tests): updates
1292
1293 2001-10-03  jacob berkman  <jacob@ximian.com>
1294
1295         * gtk/gtkwidget.c (gtk_widget_style_get_property): 
1296         * gtk/gtkstyle.c (_gtk_style_peek_property_value): 
1297         * gtk/gtksettings.c (apply_queued_setting): 
1298         * gtk/gtkmain.c (gtk_init_check): 
1299         * gtk/gtkcontainer.c (gtk_container_child_get_property):
1300         s/retrive/retrieve/
1301
1302 Wed Oct  3 20:29:29 2001  Kristian Rietveld  <kristian@planet.nl>
1303
1304         * gtk/gtktreemodelsort.[ch]: preparation for surgery
1305         * tests/testtreesort.c: ditto
1306
1307 2001-10-02  Havoc Pennington  <hp@redhat.com>
1308
1309         Throughout: assorted docs
1310         
1311         * gdk/gdkwindow.h: deprecate gdk_window_set_hints(), it's broken,
1312         gdk_window_set_geometry_hints() should be used instead.
1313
1314         * gdk/gdkimage.h: deprecate gdk_image_ref, gdk_image_unref, and
1315         document them
1316
1317         * gdk/x11/gdkx.h: remove gdk_get_client_window() since it doesn't
1318         seem to exist in any .c files
1319
1320         * gdk/x11/gdkcolor-x11.c (gdk_colormap_query_color): docs, 
1321         g_return_if_fail (pixel < colormap->size).
1322
1323 Wed Oct  3 10:42:54 2001  Owen Taylor  <otaylor@redhat.com>
1324
1325         * gtk/gtkdnd.c (gtk_drag_dest_find_target): Allow
1326         NULL for @target_list to mean, use
1327         gtk_drag_dest_get_target_list (widget).
1328
1329         * gtk/gtkdnd.c (gtk_drag_finish): Fix problem where
1330         drop could hang when calling gtk_drag_finish with 
1331         success == FALSE and del == TRUE.
1332
1333         * gtk/gtkdnd.c (gtk_drag_dest_drop): Fix problem where
1334         drops without a matching target found would propagate
1335         to the parent widget rather than being rejected.
1336
1337         * gtk/gtktextview.c (gtk_text_view_drag_data_received): 
1338         Use text_view->dnd_mark instead of mark name to be
1339         consistent with the rest of the code.
1340
1341         * gtk/gtktextview.c (gtk_text_view_drag_motion): Make
1342         pendantically correct for a drop-only-in-some-places
1343         widget. (Check whether you can insert in drag_drop,
1344         not just in drag_motion ... matters in theory, and
1345         for Motif drag and drop in practice.)
1346
1347         * gtk/gtkentry.c (gtk_entry_drag_drop): Patch from 
1348         Damian Ivereigh to not allow drops on non-editable
1349         entries. (#61124)
1350
1351         * gtk/gtkentry.c (gtk_entry_motion_notify): Don't allow
1352         text to be moved from a non-editable entry.
1353         
1354 2001-10-03  James Henstridge  <james@daa.com.au>
1355
1356         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_fixed_width):
1357         s/width/fixed_width/ in order to get things to compile.
1358
1359 Wed Oct  3 00:37:09 2001  Jonathan Blandford  <jrb@redhat.com>
1360
1361         * gtk/gtkcelleditable.c: docs
1362
1363         * gtk/gtktreemodel.h: more docs.
1364
1365 2001-10-02  Havoc Pennington  <hp@redhat.com>
1366
1367         * gdk/x11/gdkwindow-x11.c: docs
1368
1369         * tests/testtextbuffer.c (logical_motion_tests): add sentence
1370         boundary tests
1371
1372 Tue Oct  2 20:18:32 2001  Kristian Rietveld  <kristian@planet.nl>
1373
1374         * demos/gtk-demo/Makefile.am: add editable_cells.c,
1375         list_store.c and tree_store.c
1376
1377         * demos/gtk-demo/appwindow.c: remove tearoff item from
1378         File menu, put menubar and toolbar in handle boxes.
1379
1380         * demos/gtk-demo/genincude.pl: various changes to support trees
1381
1382         * demos/gtk-demo/main.c: various changes to support trees
1383
1384         * demos/gtk-demo/stock_browser.c: changed name of demo
1385         to Stock Item and Icon Browser, so geninclude.pl doesn't see
1386         it as child
1387
1388         * demos/gtk-demo/editable_cells.c: new file/demo
1389         * demos/gtk-demo/list_store.c: new file/demo
1390         * demos/gtk-demo/tree_store.c: new file/demo
1391
1392 Mon Oct  1 16:05:44 2001  Owen Taylor  <otaylor@redhat.com>
1393
1394         * gtk/gtkrc.c gtk/gtksettings.c: 
1395         g_string_printfa => g_string_append_printf.
1396
1397 Mon Oct  1 16:08:23 2001  Jonathan Blandford  <jrb@redhat.com>
1398
1399         * gtk/gtkliststore.c (gtk_list_store_class_init): add a finalize
1400         and destroy handler.
1401
1402         * gtk/gtktreestore.c (gtk_list_store_class_init): ditto, #59963
1403
1404         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Add
1405         'start_editing' flag to select_cursor_row.  Bug spotted by Manish
1406         Singh <yosh@gimp.org>.
1407
1408 2001-10-01  Matthias Clasen  <matthiasc@poet.de>
1409
1410         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): replace
1411         g_scanner_add/remove_symbol by g_scanner_scope_add/remove_symbol.
1412
1413         * gtk/gtkrc.c (gtk_rc_parse_any): here as well.
1414
1415 Mon Oct  1 14:07:02 2001  Jonathan Blandford  <jrb@redhat.com>
1416
1417         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): change
1418         scroll_to_cell delayed code to happen in size_allocate.
1419
1420         * gtk/gtkstyle.c (gtk_default_draw_expander): change
1421         prelight/normal arrow drawing.
1422
1423         * gtk/gtktreedatalist.c: Change compare func to use g_utf8_collate
1424
1425         * gtk/gtktreestore.c: refactor.
1426
1427 Sun Sep 30 22:15:52 2001  Manish Singh  <yosh@gimp.org>
1428
1429         * gtk/gtkcheckbutton.c (gtk_check_button_size_allocate): Applied
1430         patch from Soeren Sandmann <sandmann@daimi.au.dk>. Vertically
1431         centers the child in relation to the to indicator height.
1432
1433 Sun Sep 30 15:11:59 2001  Jonathan Blandford  <jrb@redhat.com>
1434
1435         * gtk/gtktreestore.c (gtk_tree_store_remove): Make ITERS_PERSIST
1436         correct
1437
1438 Sun Sep 30  07:01:42 2001 CEST <mikeh@bahnhof.se>
1439
1440         * gtk/gtkcellrenderertext.c: I reverted back to old "weight"
1441         property code using g_param_spec_int and changed from
1442         g_value_get_enum to g_value_get_int instead. Probably a better way
1443         to fix the problem :-)
1444
1445 Sun Sep 30  05:31:32 2001 CEST Mikael Hermansson <tyan@linux.se>
1446
1447     * gtk/gtkcellrenderertext.c changed "weight" property type from 
1448       g_param_spec_int to g_param_spec_enum.
1449
1450 Sat Sep 29 12:25:26 2001  Manish Singh  <yosh@gimp.org>
1451
1452         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): typo
1453         fix: s/Wether/Whether/ in reorderable property description
1454
1455 Thu Sep 27 16:46:36 2001  Jonathan Blandford  <jrb@redhat.com>
1456
1457         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): only
1458         start editing when you select with a keyboard.
1459
1460         (gtk_tree_view_button_press_event): much more graceful now.
1461
1462         * gtk/gtkstyle.c: Draw togglebutton better.
1463
1464 2001-09-26  Havoc Pennington  <hp@redhat.com>
1465
1466         * demos/gtk-demo/dialog.c (interactive_dialog_clicked): add demo
1467         of passing non-stock label in to gtk_dialog_new_with_buttons
1468
1469         * gtk/gtktextview.c (cursor_blinks): disable cursor blink when
1470         debugging updates
1471
1472         * gtk/gtktextiter.h: comment about how GtkTextIter struct contents
1473         are private
1474
1475         * gtk/gtkbutton.c (gtk_button_new_from_stock): if stock ID doesn't
1476         exist, fall back to mnemonic label, not plain label, bug #61184
1477         
1478 Wed Sep 26 19:48:01 2001  Jonathan Blandford  <jrb@redhat.com>
1479
1480         * gtk/gtktreestore.c (gtk_tree_store_set_valist): Stop being
1481         stupid and emitting the signal every time.
1482
1483         * gtk/gtkliststore.c (gtk_list_store_set_valist): ditto
1484
1485 Wed Sep 26 16:35:59 2001  Owen Taylor  <otaylor@redhat.com>
1486
1487        Patch from Mark McLoughlin <mark@skynet.ie> (#61233)
1488
1489        * contrib/gdk-pixbuf-xlib/Makefile.am: install
1490        gdk-pixbuf-xlib-2.0.pc.
1491
1492 Wed Sep 26 16:15:25 2001  Owen Taylor  <otaylor@redhat.com>
1493
1494         * gtk/gtknotebook.c (gtk_notebook_set_tab_label): Fix
1495         problem where menmonic wasn't removed properly when
1496         setting a label when there already is a label.
1497         Also, handle setting the tab label back to the same
1498         value. (#61160, #61161)
1499
1500         * gtk/gtkentry.c (paste_received): Patch from 
1501         Damian Ivereigh to replace selection if there is 
1502         one. (#61121)
1503
1504 2001-09-25  Darin Adler  <darin@bentspoon.com>
1505
1506         * tests/.cvsignore: Ignore new test program.
1507
1508 2001-09-25  Havoc Pennington  <hp@redhat.com>
1509
1510         * gtk/gtktextview.c: fix for #50317
1511         
1512 2001-09-25  Havoc Pennington  <hp@redhat.com>
1513
1514         * gtk/gtktextview.c (gtk_text_view_key_press_event): use 
1515         gtk_text_iter_can_insert
1516         
1517         * gtk/gtktextbuffer.c: use gtk_text_iter_can_insert
1518
1519         * gtk/gtktextiter.c (find_line_log_attrs): fixes, #57611, #57613
1520          (gtk_text_iter_can_insert): new function to fix #60282, should
1521         also fix msw's "can paste into empty buffer" bug.
1522
1523         * gtk/gtktexttag.c (gtk_text_tag_event): change type check for 
1524         "event object,"  #59091
1525
1526         * gtk/gtktextbtree.c: indentation fixes
1527
1528         * gtk/gtktextiter.c (find_by_log_attrs): fixes
1529
1530 Tue Sep 25 12:41:17 2001  Owen Taylor  <otaylor@redhat.com>
1531
1532         * configure.in: Version 1.3.9, interface age 0, binary age 0.
1533
1534         * configure.in: Require GLib-1.39, Pango 0.20, Atk 0.5.
1535
1536         * NEWS: Updates.
1537
1538 Mon Sep 24 11:59:09 2001  Owen Taylor  <otaylor@redhat.com>
1539
1540         * gtk/gtkstyle.[ch] (_gtk_draw_insertion_cursor): Shared
1541         function for drawing cursors between gtkentry/gtklabel/gtktextview.
1542         Should this be public? It has a bit of an odd interface, but
1543         custom editing widgets probably should be using it.
1544         Function will draw with wider width for taller cursors, and
1545         draws a little indicator arrow to indicate directoin for split 
1546         cursors.
1547
1548         * gtk/gtktextview.c: Add a "cursor_color" property.
1549
1550         * gtk/gtktextdisplay.[ch]: Add a cursor_gc parameter to
1551         gtk_text_layout_draw().
1552
1553         * gtk/gtkentry.c gtk/gtklabel.c gtk/gtktextdisplay.c: Use
1554         _gtk_draw_insertion_cursor().
1555
1556 Tue Sep 25 11:22:23 2001  Owen Taylor  <otaylor@redhat.com>
1557
1558         * gtk/gtkcellrenderertext.c gtk/gtktexttag.c: Restore
1559         the behavior where you could turn family_set (etc) back on
1560         and get back the values you had before.
1561
1562         * demos/gtk-demo/stock_browser.c (id_to_macro): Use
1563         g_string_ascii_up() rather than looping through the
1564         string ourself.
1565
1566 Tue Sep 25 15:32:44 2001  Jonathan Blandford  <jrb@redhat.com>
1567
1568         * gtk/gtktreeviewcolumn.c
1569         (gtk_tree_view_column_set_cell_renderer): Removed
1570         (gtk_tree_view_column_set_alignment): xalign = CLAMP (xalign, 0.0, 1.0);  Fixes 61012.
1571
1572         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Fixed #61012
1573         Patch from Detlef Reichl
1574
1575 2001-09-25  Havoc Pennington  <hp@redhat.com>
1576
1577         * tests/testtextbuffer.c (line_separator_tests): Add tests for
1578         line separators, addresses bug #57428
1579
1580 Tue Sep 25 12:34:42 2001  Jonathan Blandford  <jrb@redhat.com>
1581
1582         * gtk/gtkentry.c: Make a GtkCellEditable
1583         (get_widget_window_size): Change to let it honor size_allocate
1584         when a CellEditable.
1585
1586         * gtk/gtktreeview.c: M-x clean-line-ends.  Lots of focus and
1587         editable changes.
1588         (gtk_tree_view_set_cursor): Now you can set the cursor
1589         horizontally, as well as start editing.
1590
1591         * gtk/gtkstyle.c (gtk_default_draw_check): changing toggle drawing
1592         code to look more like the other check buttons.
1593
1594         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_size):
1595         Change the way we calculate cell size.
1596
1597         * gtk/gtkmarshal.list (VOID:STRING,STRING): new marshaller.
1598
1599         * demos/gtk-demo/sizegroup.c: Add mnemonics.
1600
1601         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): Fix docs.
1602         Fix logic.
1603
1604         * gtk/gtkcellrenderertext.c: Change to be editable.
1605
1606         * gtk/gtkcellrenderertoggle.c: Change to be activatable.
1607
1608         * test/testtreesort.c: Fix misspelling
1609
1610         * test/testreecolumns.c: Add mnemonics.
1611
1612         * test/testreeedit.c: New test program.
1613
1614 2001-09-25  Havoc Pennington  <hp@pobox.com>
1615
1616         * gtk/gtkwindow.c: Put notes in gtk_window_set_has_frame(),
1617         etc. docs about how these are not going to do what you want for 
1618         the X/win32 ports. Futile attempt to avoid a FAQ...
1619
1620 2001-09-24  James Henstridge  <james@daa.com.au>
1621
1622         * gtk/gtkmarshal.list (VOID): add marshal function types.
1623
1624         * gtk/gtkctree.c (gtk_ctree_class_init): make arguments have type
1625         GTK_TYPE_CTREE_NODE|G_SIGNAL_TYPE_STATIC_SCOPE rather than
1626         GTK_TYPE_POINTER.
1627         (gtk_ctree_node_get_type): implement boxed type for GtkCTreeNodes
1628         with no-op copy/free functions.
1629
1630         * gtk/gtkctree.h (gtk_ctree_node_get_type): add prototype for
1631         GtkCTreeNode get_type function.
1632
1633 2001-09-24  Havoc Pennington  <hp@redhat.com>
1634
1635         * gtk/gtktextiter.c, gtk/gtktextbuffer.c, gtk/gtktextbtree.c,
1636         gtktextlayout.c:
1637         Get rid of the newline-that-could-not-be-deleted; buffers may 
1638         now be zero-length. Much easier to fix than expected, once 
1639         I figured out the right way to do it. However, there are 
1640         various subtle bugs introduced by this that will have to get 
1641         sorted out. Please use bugzilla.
1642
1643 Mon Sep 24 15:09:08 2001  Owen Taylor  <otaylor@redhat.com>
1644
1645         * gtk/gtkwindow.c (gtk_window_move_resize): Don't wait for a
1646         response back from the window manager if our size hasn't changed 
1647         since we won't get a response back from the window manager;
1648         there was code in there to do this, but it was in the wrong
1649         place so if the hints change and the size didn't we'd expect
1650         a response.
1651
1652         Also, optimize the position-only-changed case by running
1653         the resize queue immediately, and clean up some comments
1654         for the changes.
1655
1656 Mon Sep 24 12:48:25 2001  Owen Taylor  <otaylor@redhat.com>
1657
1658         * gtk/gtknotebook.h: Add a compat macro that got lost.
1659
1660         * gtk/gtktreestore.c: Doc fixes.
1661
1662         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix reference
1663         leak for windows that receive events after being destroyed.
1664         (#60863, Joshua N. Pritikin)
1665
1666         * gtk/gtktable.c (gtk_table_remove): Use gtk_widget_queue_resize
1667         rather than gtk_container_queue_resize().
1668
1669         * gtk/{gtkcontainer.c,gtkwidget.c,gtkwindow.c}: _gtk prefix
1670         gtk_container_queue_resize, gtk_container_queue_resize_widgets,
1671         gtk_container_child_composite_name. (#60217.)
1672
1673 2001-09-22  Hans Breuer  <hans@breuer.org>
1674
1675         * gtk/gtkmenu.h : fix compat macros for gtk_menu_<prepend|insert>
1676
1677 Sat Sep 22 16:50:34 2001  Kristian Rietveld  <kristian@planet.nl>
1678
1679         * gtk/gtktexttag.c (gtk_text_tag_set_property): (case PROP_WEIGHT):
1680         weight value should be an int
1681
1682 Sat Sep 22 15:17:41 2001  Kristian Rietveld  <kristian@planet.nl>
1683
1684         * gtk/gtkmenu.c (gtk_menu_select_item): move most code
1685         to gtk_menu_scroll_item_visible(). Only call
1686         gtk_menu_scroll_item_visible() if the menu widget has been
1687         realized. Fixes bug #55310.
1688
1689 2001-09-21  Havoc Pennington  <hp@redhat.com>
1690
1691         * gtk/gtktextview.c (gtk_text_view_key_press_event): don't pass
1692         key press to IM context if cursor isn't in an editable location;
1693         bug #58425, patch from Hidetoshi Tajima
1694
1695 2001-09-21  Havoc Pennington  <hp@redhat.com>
1696
1697         Bug #60862
1698         
1699         * gtk/gtktextbtree.c (gtk_text_btree_node_destroy): 
1700         (_gtk_text_btree_unref): fix up mark memory management
1701
1702         * gtk/gtktextmark.c (mark_segment_delete_func): ditto
1703
1704 2001-09-20  Havoc Pennington  <hp@redhat.com>
1705
1706         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): don't
1707         try to handle alignment here, because it's done by PangoLayout
1708         after we set the layout width. Fix from Dov.
1709
1710 2001-09-21  Hans Breuer  <hans@breuer.org>
1711
1712         * gdk/gdk.def :
1713         * gtk/gtk.def : updated externals
1714
1715         * gtk/gtkmain.h : define get_gtk_win32_directoty () 
1716         * gtk/gtkmain.c (find_module) : don't use module_name after freeing it.
1717         Also handle that Win32 pathes cann't be hard-coded      
1718
1719         * gtk/gtkrc.c : use get_gtk_win32_directoty () to cleanup the various
1720         module, themes etc directory calculations
1721
1722         * gdk/win32/gdkgeometry-win32.c : some more hacking to get coordinates
1723         >16 bit right. The size limit within Win9x appears _not_ to be 32767
1724         but slightly smaller ...
1725
1726         * gdk/win32/gdkwindow-win32.c : use impl->position_info to avoid 
1727         >16 bit clipping. Added dummy body for gdk_window_set_icon_list ()
1728
1729         * gdk/win32/gdkdrawable-win32.c : implement gdk_win32_drawable_get_handle ()
1730
1731         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
1732         handling. I'm not sure if it is better now, but at least not worse
1733
1734         * gdk/win32/makefile.msc : define INSIDE_GDK_WIN32, some cleanup
1735
1736         * gdk/win32/gdkwin32.h : reflect recent API restrictions
1737
1738 2001-09-21  Matt Wilson  <msw@redhat.com>
1739
1740         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy): set
1741         radio_menu_item->group to NULL after removing it from the list, as
1742         it is no longer in the group. (#60869)
1743
1744         * gtk/gtkradiobutton.c (gtk_radio_button_destroy): likewise
1745
1746 2001-09-20  Havoc Pennington  <hp@pobox.com>
1747
1748         * configure.in (PANGO_REQUIRED_VERSION)
1749         (ATK_REQUIRED_VERSION): add variables and checks for specific 
1750         versions of dependencies. Previously we didn't verify the 
1751         Pango or ATk versions.
1752
1753 2001-09-09  Havoc Pennington  <hp@pobox.com>
1754
1755         * gtk/gtktextiter.c: fool with indentation
1756         (gtk_text_iter_in_range): add g_return_if_fail
1757
1758 Thu Sep 20 17:45:54 2001  Joshua N Pritikin  <vishnu@pobox.com>
1759
1760         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): Fix
1761         ref count on new tag to be 1.  Update doc.  (#60836)
1762
1763 Thu Sep 20 16:20:47 2001  Owen Taylor  <otaylor@redhat.com>
1764
1765         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Remove unnecessary
1766         call to gdk_image_new_bitmap(). (#59094, reported by
1767         by Sven Neumann)
1768
1769 Thu Sep 20 15:31:35 2001  Owen Taylor  <otaylor@redhat.com>
1770
1771         * gtk/gtkcalendar.c (gtk_calendar_init): Use the current
1772         day, as well as the current month and year.
1773         (#59047, reported by Vitaly Tishkov)
1774
1775 Thu Sep 20 15:10:30 2001  Owen Taylor  <otaylor@redhat.com>
1776
1777         * gtk/gtkdialog.c (gtk_dialog_init): Automatically set
1778         set dialogs to GTK_WIN_POS_CENTER_ON_PARENT. (#60554)
1779         
1780 Thu Sep 20 18:00:56 2001  Kristian Rietveld  <kristian@planet.nl>
1781
1782         * tests/testgtk.c (struct OptionMenuItem): get rid of it,
1783
1784         (build_option_menu): add func argument, connect ::changed
1785         signal to option menu instead of connecting the ::activate
1786         signal to the menu items,
1787
1788         (toplevel): get rid of RADIOMENUTOGGLED macro,
1789
1790         (list_toggle_sel_mode), (clist_toggle_sel_mode),
1791         (ctree_toggle_line_style), (ctree_toggle_expander_style),
1792         (ctree_toggle_justify), (ctree_toggle_sel_mode),
1793         (progressbar_toggle_orientation), (progressbar_toggle_bar_style):
1794         use gtk_option_menu_get_history() instead of RADIOMENUTOGGLED,
1795
1796         (notebook_type_changed): merged standard_notebook(),
1797         notabs_notebook(), scrollable_notebook() and borderless_notebook()
1798         into notebook_type_changed()
1799
1800         (create_list), (create_ctree), (create_notebook),
1801         (create_progress_bar): changed OptionMenuItem arrays into
1802         gchar * arrays. Removed "Extended" item where used.
1803
1804         Fixes bug #59885
1805
1806 2001-09-20  Sven Neumann  <sven@gimp.org>
1807
1808         * configure.in
1809         * gdk/Makefile.am
1810         * gtk/Makefile.am
1811         * gtk/gtkselection.c
1812         * gtk/gtktreeview.c
1813         * gtk/gtkwindow.c: removed remaining traces of nanox GDK backend.
1814
1815 Thu Sep 20 11:19:42 2001  Owen Taylor  <otaylor@redhat.com>
1816
1817         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): Add
1818         a missing pango_layout_iter_free ().
1819
1820 Thu Sep 20 11:03:51 2001  Owen Taylor  <otaylor@redhat.com>
1821
1822         * gtk/gtkobject.c gtk/gtklist.c gtk/gtkplug.c gtk/gtksocket.c
1823         gtk/gtktreemodelsort.c gtk/gtktreeview.c: Small warning cleanups.
1824
1825         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_get_group): Change
1826         the function definition so we don't accidentally rely on
1827         the compat #define from gtk_radio_menu_item_group.
1828         (#60782, Jeff Franks)
1829
1830 Thu Sep 20 16:51:02 2001  Kristian Rietveld  <kristian@planet.nl>
1831
1832         * gtk/gtkwindow.c (gtk_window_get_frame_dimensions): returned
1833         incorrect values for top, right and bottom due to cut-and-paste
1834         bug. Pointed out by Vitaly Tishkov, fixes bug #59008
1835
1836 Wed Sep 19 17:59:27 2001  Owen Taylor  <otaylor@redhat.com>
1837
1838         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set
1839         _NET_WM_PID and WM_CLIENT_MACHINE properties on each
1840         window, not just on the client leader. (#58463)
1841
1842 Wed Sep 19 17:28:47 2001  Owen Taylor  <otaylor@redhat.com>
1843
1844         * gtk/gtkwidget.c (gtk_widget_new): Add missing cast.
1845
1846         * gtk/gtkmenuitem.[ch] gtk/gtkmenushell.c: Underscore prefix
1847         non-public _gtk_menu_item_set_placement.
1848
1849         * gtk/gtktooltips.h: Deprecate gtk_tooltips_set_delay().
1850
1851 Wed Sep 19 16:16:38 2001  Owen Taylor  <otaylor@redhat.com>
1852
1853         * gdk/win32/gdkcolor-win32.c gdk/x11/gdkcolor-x11.c 
1854           gdk/linux-fb/gdkcolor-fb.c:
1855         Fix propagated (flags && GDK_COLOR_WRITEABLE) typo.
1856         (#59723)
1857
1858 Wed Sep 19 16:12:16 2001  Owen Taylor  <otaylor@redhat.com>
1859
1860         * gdk/gdkpixbuf-render.c: Allow -1 for width/height
1861         to mean "width/height of pixbuf" (Patch from Matthias Clasen,
1862         #59723)
1863
1864 Wed Sep 19 16:01:27 2001  Owen Taylor  <otaylor@redhat.com>
1865
1866         Patch from Frank Belew #59037 for Solaris compilation.
1867
1868         * gtk/maketypes.awk: Change syntax slightly for a call
1869         to sub(), apparently making awk on Solaris happier.
1870
1871         * gtk/gtktreeview.c: Remove C++ comments.
1872
1873 Wed Sep 19 15:46:29 2001  Owen Taylor  <otaylor@redhat.com>
1874
1875         * gtk/gtkwindow.c: Add xgettext:no-c-format comment to
1876         to handle '99% of the time. (#60473, reported by Christian Rose)
1877
1878         * gtk/gtkwidget.h: Remove prototype for gtk_widget_get_usize()
1879         which no longer exists. (#60379, reported by Vitaly Tishkov)
1880
1881 Wed Sep 19 11:06:24 2001  Tim Janik  <timj@gtk.org>
1882
1883         * Released 1.3.8.
1884
1885         * gdk/Makefile.am: kill EXTRA_DIST clearing.
1886         
1887 Wed Sep 19 02:50:40 2001  Tim Janik  <timj@gtk.org>
1888
1889         * demos/Makefile.am ($(testpixbuf_OBJECTS)): don't use BUILT_SOURCES
1890         as its broken in automake 1.4, add explicit object rule to
1891         generate this.
1892         
1893         * gdk-pixbuf/Makefile.am: fix maintainer and normal cleanfiles.
1894         get rid of uneccessary stamps, group stuff more logically, and build
1895         sources due to object rules. fix srcdir!=builddir.
1896
1897 Tue Sep 18 20:47:16 2001  Owen Taylor  <otaylor@redhat.com>
1898
1899         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Fix 
1900         incorrect parameter to compute_double_length
1901         (#58680, patch from Matthias Clasen)
1902
1903         Fixes for compilation with Forte cc. (#59734, Derek Rafter)
1904
1905         * gtk/gtkwindow.h gtk/gtksizegroup.h: Remove extra ;.
1906
1907         * gdk/gdktypes.h (GdkModifierType): Write 1u << 31
1908         for GDK_RELEASE_MASK to avoid warnings with Forte.
1909
1910         * gtk/gtktexttag.c gtk/gtkcellrendertext.c: Add some missing
1911         break; statements.
1912
1913 2001-09-18  Alex Larsson  <alexl@redhat.com>
1914
1915         * gtk/gtkcheckbutton.c:
1916         * gtk/gtkradiobutton.c:
1917         Don't draw with GTK_STATE_ACTIVE.
1918
1919         * gtk/gtkclist.c:
1920         * gtk/gtkctree.c:
1921         Draw lines between rows with base_gc[GTK_STATE_NORMAL].
1922
1923         * gtk/gtktextdisplay.c:
1924         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
1925         unfocused with base_gc [GTK_STATE_ACTIVE].
1926         
1927         * gtk/gtkentry.c:
1928         Add select all menu-item.
1929         Default cursor color is red.
1930         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
1931         unfocused with base_gc [GTK_STATE_ACTIVE].
1932
1933         * gtk/gtklabel.[ch]:
1934         Add keynav + menu to selectable lables.
1935         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
1936         unfocused with base_gc [GTK_STATE_ACTIVE].
1937
1938         * gtk/gtkfilesel.c:
1939         Add drag and drop support.
1940
1941         * gtk/gtkstyle.c:
1942         (This was checked in earlier)
1943         New default values for text/base SELECTED and ACTIVE
1944         
1945 Tue Sep 18 23:51:49 2001  Tim Janik  <timj@gtk.org>
1946
1947         * configure.in: up version to 1.3.8, interface age 0,
1948         binary age 0, depend on glib 1.3.8.
1949
1950         * NEWS: 1.3.8 updates.
1951
1952 Tue Sep 18 18:46:54 2001  Jonathan Blandford  <jrb@redhat.com>
1953
1954         * gtk/gtktreeview.c (gtk_tree_view_start_editing): centralize all
1955         the editing code
1956
1957         * gtk/gtkcelleditable.c: Got rid of stop_editing, as there was no
1958         reason to call it beyond emiting the two signals.
1959
1960         * gtk/gtkentry.c (gtk_entry_class_init): add "has_frame" property
1961         to GtkEntry.
1962
1963 Wed Sep 12 11:21:14 2001  Owen Taylor  <otaylor@redhat.com>
1964
1965         * gtk/gtkcellrenderertext.[ch] gtk/gtktexttag.[ch]
1966           gtk/gtktextview.c tests/testgtk.c: Fix up for changes to 
1967         PangoFontDescription.
1968
1969         * gtk/gtkentry.c gtk/gtkclist.c gtk/gtkcellrenderertext.c
1970         gtk/gtkspinbutton.c: Fix up for change to PangoMetrics
1971         structure.
1972   
1973         * gtk/gtkfontsel.c: Fix up for new Pango font listing API.
1974
1975         * gtk/gtkstyle.[ch]: Add gtk_style_get_font/set_font to replace
1976         direct access to style->font. Deprecate gtk_style_ref/unref.
1977   
1978         * gtk/gtkclist.c gtk/gtkctree.c gtk/gtkstyle.c gtk/gtkwidget.c:
1979         Remove gtk_style_ref/unref with g_object_ref/unref.
1980   
1981         * gtk/gtkcalendar.c: Remove leftover macros accessing
1982         style->font.
1983   
1984         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): Remove unused
1985         variable.
1986   
1987         * gtk/gtktext.c gtk/gtklabel.c: Use gtk_style_get_font() instead of 
1988         style->font.
1989
1990 Tue Sep 18 13:51:35 2001  Jonathan Blandford  <jrb@redhat.com>
1991
1992         * gtk/gtkcellrenderer.h (enum): Get rid of broken "can_edit" and
1993         "can_activate" properties in favor of
1994         GTK_CELL_RENDERER_MODE_INERT, GTK_CELL_RENDERER_MODE_ACTIVATABLE,
1995         and GTK_CELL_RENDERER_MODE_EDITABLE
1996
1997 Tue Sep 18 12:12:43 2001  Jonathan Blandford  <jrb@redhat.com>
1998
1999         * gtk/gtktreeview.c (gtk_tree_view_put): Add put for use with
2000         editable widgets.  This function is private, and should only be
2001         used by GtkTreeView.
2002
2003 2001-09-18  Matt Wilson  <msw@redhat.com>
2004
2005         * docs/Makefile.am (EXTRA_DIST): don't use += before =
2006
2007         * docs/faq/Makefile.am (EXTRA_DIST): likewise
2008
2009         * docs/tutorial/Makefile.am (EXTRA_DIST): likewise
2010         
2011         * gdk/Makefile.am (MAINTAINERCLEANFILES): likewise
2012         (EXTRA_HEADERS): likewise
2013
2014         * gtk/Makefile.am (MAINTAINERCLEANFILES): likewise
2015         (EXTRA_HEADERS): likewise
2016         (EXTRA_DIST): likewise
2017         (CLEANFILES): likewise
2018
2019         * gtk/stock-icons/Makefile.am (CLEANFILES): likewise
2020
2021         * tests/Makefile.am (EXTRA_DIST): likewise
2022         
2023         * Makefile.am (install-data-local): changed to use
2024         install-data-hook, which runs after install-pkgconfigDATA, so that
2025         the pkgconfigdir will have been created and populated first.
2026
2027 Mon Sep 17 17:39:52 2001  Jonathan Blandford  <jrb@redhat.com>
2028
2029         * gtk/gtkcelleditable.[ch]: Add editable interface.  This should
2030         be the last big GtkTreeView API change.
2031
2032         * gtk/gtkcellrenderer.[ch]: Get rid of the "event" vfunc, and
2033         replace with "activate" and "start_editing".  Also, added a
2034         "can_activate" and "can_edit" property.
2035
2036         * gtk/gtktreeviewcolumn.c: modify to use above.
2037
2038 2001-09-16  Alexander Larsson  <alla@lysator.liu.se>
2039
2040         * gtk/gtkoptionmenu.c:  Handle scroll wheel events.
2041
2042 Fri Sep 14 22:31:25 2001  Matthias Clasen  <matthiasc@poet.de>
2043
2044         * demos/gtk-demo/main.c (setup_default_icon): Use a shaped
2045         icon instead of one with ugly white background.
2046
2047 Fri Sep 14 22:26:01 2001  Matthias Clasen  <matthiasc@poet.de>
2048
2049         * demos/gtk-demo/stock_browser.c (id_to_macro): make
2050         the uppercasing work. (#59550)
2051
2052 2001-09-14  Jakub Steiner <jimmac@ximian.com>
2053
2054         * gtk/stock-icons/dialog_error.png:
2055         * gtk/stock-icons/dialog_question.png: more road signs
2056
2057 2001-09-13  Jakub Steiner <jimmac@ximian.com>
2058
2059         * gtk/stock-icons/dialog_question.png:
2060         * gtk/stock-icons/dialog_warning.png: anders and jonathan seem to
2061           like a road sign.
2062
2063 Wed Sep 12 19:01:05 2001  Jonathan Blandford  <jrb@redhat.com>
2064
2065         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Rename interface
2066         signals to make them more clear.  Also, change ::range_changed to
2067         ::row_changed.
2068         * gtk/gtktreemodel.c: Adjust to interface change
2069         * gtk/gtktreemodel.h: ditto
2070         * gtk/gtktreemodelsort.c: ditto
2071         * gtk/gtktreestore.c: ditto
2072         * gtk/gtkliststore.c: ditto
2073         * gtk/gtktreeview.c: ditto
2074         * tests/testtreecolumns.c: ditto
2075         * gtk/gtkmarshal.list: Actually remove a marshaller!
2076
2077 2001-09-12  Padraig O'Briain <padraig.obriain@sun.com>
2078
2079         * gtk/gtktextview.c
2080         Add support for Ctrl+Up/Down arrow to move cursor to beginning
2081         of previous/next paragraph. If within a paragraph cursor moves to
2082         beginning of that paragraph.
2083
2084 2001-09-12  Jakub Steiner <jimmac@ximian.com>
2085
2086         * gtk/stock-icons/dialog_question.png: replacing the shaky
2087           question mark with a sans-serif one.
2088         * gtk/stock-icons/stock_top.png, stock_bottom.png,
2089      stock_first.png, stock_last.png: using the new style arrows
2090         * gtk/stock-icons/stock_font.png: simple one to replace the ugly
2091      colors.
2092         * gtk/stock-icons/stock_refresh.png: anti-aliased and changed
2093      color.
2094         * gtk/stock-icons/stock_zoom*: anti-aliased
2095         * gtk/stock-icons/dialog_error.png, dialog_warning.png: confused
2096      '-' with a '_', removed the wrong files
2097
2098 Sat Sep  8 16:19:02 2001  Owen Taylor  <otaylor@redhat.com>
2099  
2100         * gtk/gtkmain.c: Implement a search path for GTK+ modules.
2101  
2102         * configure.in gtk/gtkrc.c gtk/Makefile.am: Look for modules
2103         in gtk-2.0/<type>/major.minor.(micro-binary_age) rather
2104         than in gtk-2.0/major.minor.micro/<type>/. This
2105         works better for a search path for modules.
2106  
2107         * gtk+-2.0.pc.in gtk+-2.0-uninstalled.pc.in: Add
2108         gtk_binary_version variable holding major.minor.(micro-binary_age).
2109  
2110         * modules/input/Makefile.am (moduledir): Fix installation
2111         directory to match change in lookup location.
2112  
2113         * gtk/gtkmain.c (gtk_init_check): Remove OS/2 code for dll 
2114         suffixes. Needs to be handled in g_module_build_path().
2115
2116         * gtk/gtkrc.c gtk/queryimmodules.c: Use g_build_filename() where
2117         appropriate.
2118  
2119 Tue Sep 11 13:59:12 2001  Owen Taylor  <otaylor@redhat.com>
2120
2121         * gtk/gtkrc.c (insert_rc_property): Fixed reversed comparison
2122         causing RC properties not to work.
2123
2124 2001-09-11  Jakub Steiner <jimmac@ximian.com>
2125
2126         * gtk/stock-icons/dialog-error.png: less drastic
2127         * gtk/stock-icons/dialog-warning.png: no body parts. (I hope
2128           "STOP" is international enough.
2129         * gtk/stock-icons/stock_dnd*.png: get rid of the cursor
2130         * gtk/stock-icons/stock_menu_properties.png: 16x16 version
2131
2132 Mon Sep 10 21:26:24 2001  Joshua N Pritikin  <vishnu@pobox.com>
2133
2134         * gtk/gtktextview.c (gtk_text_view_set_buffer): Make
2135         (add|remove)_selection_clipboard symmetric. (bug #59836)
2136
2137         * gtk/gtktreeview.c (gtk_tree_view_unref_and_check_selection_tree): 
2138         Avoid SEGV for empty tree. (bug #60243)
2139
2140 Mon Sep 10 20:47:22 2001  Tim Janik  <timj@gtk.org>
2141
2142         * tests/testgtk.c (create_idle_test): slight fix for
2143         g_object_set() not usable for nesting anymore.
2144
2145         * gtk/gtkhandlebox.c (gtk_handle_box_class_init): 
2146         * gtk/gtkframe.c (gtk_frame_class_init): deprecate ::shadow
2147         properties, supply ::shadow_type properties instead as most
2148         other widgets do.
2149
2150 2001-09-10  Alex Larsson  <alexl@redhat.com>
2151
2152         * demos/gtk-demo/stock_browser.c:
2153         * gdk/gdkcolor.c:
2154         * gdk/gdkfont.c:
2155         * gdk/gdkcursor.c:
2156         * gdk/gdkevents.c:
2157         * gdk/gdkrectangle.c:
2158         * gtk/gtktypeutils.c:
2159         Update to use the new g_boxed_type_register_static API.
2160
2161 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
2162
2163         * gtk/gtktreestore.c:
2164         Fix looping in gtk_tree_store_init() waiting for zero random int.
2165
2166 Mon Sep 10 16:55:49 2001  Tim Janik  <timj@gtk.org>
2167
2168         * gtk/gtkalignment.c (gtk_alignment_init): fix xscale and yscale
2169         behaviour which havoc broke. they have to default to 1.0 for
2170         expand behaviour.
2171
2172         * gtk/gtkwindow.c (gtk_window_get_property): don't cast NULL objects.
2173
2174 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
2175
2176         * gtk/gtkstyle.c (_gtk_style_peek_property_value)
2177         Amend previous change to avoid runtime error in g_param_spec_ref()
2178
2179 Mon Sep 10 06:58:56 2001  Owen Taylor  <otaylor@redhat.com>
2180
2181         * gtk/gtkrc.c (insert_rc_property): Fix blank line
2182         in the wrong place.
2183
2184 Mon Sep 10 06:50:39 2001  Owen Taylor  <otaylor@redhat.com>
2185
2186         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Don't
2187         do a lookup immediately after creating style->property_cache,
2188         since bsearch crashes on zero length for Solaris.
2189         (Found by Padraig O'Briain.)
2190
2191 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
2192
2193         * gtk/gtkwidget.c (_gtk_widget_peek_colormap):
2194         Really return NULL if not set.
2195         (gtk_widget_init): Remove unused varaible.
2196         
2197 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
2198
2199         * configure.in:
2200         Remove gdk/nanox/Makefile from AC_OUTPUT(), since it is no longer
2201         in cvs.
2202
2203 2001-09-08  Havoc Pennington  <hp@pobox.com>
2204
2205         * gtk/gtkaccelgroup.c: add docs to functions that I can imagine 
2206         people might want to use
2207
2208 2001-09-08  Havoc Pennington  <hp@pobox.com>
2209
2210         * gtk/gtkalignment.c (gtk_alignment_class_init): default
2211         xscale/yscale to 0.0, not 0.5, 0.5 isn't useful
2212
2213         * tests/testtextbuffer.c: fix usage of gtk_text_iter_spew
2214
2215         * gtk/gtktextiter.c: fix docs
2216         (gtk_text_iter_spew): get rid of this
2217
2218         * gtk/gtklayout.c: docs
2219
2220         * gtk/gtkbutton.c (gtk_button_construct_child): add an alignment
2221         to center image and label together, instead of having image on
2222         left and label centered, patch/suggestion from Jacob
2223
2224         * gtk/gtkdialog.c: docs
2225
2226 Sat Sep  8 14:19:49 2001  Jonathan Blandford  <jrb@redhat.com>
2227
2228         * gtk/gtkliststore.c: Write documentation
2229         * gtk/gtktreestore.c: Write documentation
2230
2231 Sat Sep  8 13:53:09 2001  Owen Taylor  <otaylor@redhat.com>
2232
2233         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch]: Replace uses of GBSearchArray
2234         with GArray and bsearch(), to remove dependency on a still
2235         evolving interface that we want to keep private to glib/gobject. 
2236
2237 2001-09-08  Havoc Pennington  <hp@pobox.com>
2238
2239         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_add_attribute):
2240         docs fixes
2241
2242         * gtk/gtktable.c (gtk_table_get_col_spacing): docs fixes
2243
2244         * gtk/gtkspinbutton.c (gtk_spin_button_get_increments): docs fixes
2245
2246         * gtk/gtksocket.c (gtk_socket_steal): docs fixes
2247
2248         * gtk/gtkscrolledwindow.h: docs fixes
2249
2250         * gtk/gtkimage.c (gtk_image_new): docs fixes
2251
2252 Sat Sep  8 01:49:22 2001  Owen Taylor  <otaylor@redhat.com>
2253
2254         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check): Prevent a 
2255         false alarm  constness warning with a cast.
2256
2257         * gdk/x11/gdkx.h: Undefine GDK_ROOT_PARENT before redefining it
2258         for the inside-gdk case.
2259
2260 Sat Sep  8 01:44:18 2001  Jonathan Blandford  <jrb@redhat.com>
2261
2262         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_set_dirty):
2263         remove g_print.
2264
2265         * gtk/gtktreeview.c (gtk_tree_view_set_model): unref model when we
2266         change models, #59899
2267
2268 2001-09-07  Havoc Pennington  <hp@pobox.com>
2269
2270         * gtk/gtkmain.c: move some docs inline
2271
2272 2001-09-07  Havoc Pennington  <hp@pobox.com>
2273
2274         * gtk/gtk.h: tsk tsk, jrb broke the build
2275
2276 Fri Sep  7 20:45:29 2001  Jonathan Blandford  <jrb@redhat.com>
2277
2278         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_{start,end}):
2279         Removed 'fill' attribute.  It was silly b/c that was a property of
2280         the cell renderer, anyway.
2281         (gtk_tree_view_column_render): Actually render the packed
2282         renderers.
2283         * doc/tree-column-sizing.txt: initial devel documentation.
2284         * gtk/gtktreeview.c (gtk_tree_view_expand_all): Fix bug.
2285         * gtk/gtkcellrenderertextpixbuf.[ch]: removed.
2286
2287         * tests/testtreefocus.c: fix up to reflect above changes.
2288         * tests/testtreeview.c: ditto
2289         * demos/gtk-demo/stock_browser.c: ditto
2290
2291 2001-09-07  Alex Larsson  <alexl@redhat.com>
2292
2293         * gdk/linux-fb/gdkcolor-fb.c:
2294         Removed unused function.
2295         
2296         * gdk/linux-fb/gdkdrawable-fb2.c
2297         * gdk/linux-fb/gdkfont-fb.c:
2298         Use PangoLanguage functions.
2299
2300         * gdk/linux-fb/gdkinput.c:
2301         * gdk/linux-fb/gdkselection-fb.c:
2302         Fix const warnings.
2303         
2304         * gdk/linux-fb/gdkwindow-fb.c:
2305         Fix warning. Implement gdk_window_set_icon_list() and
2306         gdk_window_get_frame_extents(). (No icon support yet though.)
2307
2308         * gtk/gtkwindow.c (gtk_window_get_position):
2309         If window->frame is set get the extents of it instead.
2310         
2311 Fri Sep  7 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
2312
2313         * gtk/gtkwidget.c (gtk_widget_get_default_colormap): 
2314         Make the default default colormap the GdkRGB colormap,
2315         not the system colormap.
2316
2317         * gtk/gtkinvisible.c (gtk_invisible_init) 
2318           gtk/gtkwindow.c (gtk_window_init): Set the current
2319         colormap, as returned by _gtk_widget_peek_colormap()
2320         on the widget.
2321
2322         * gtk/gtkwidget.[ch]: Export _gtk_widget_peek_colormap
2323         to GTK+. Make it return %NULL instead of the default
2324         colormap if no colormap has explicitely been pushed.
2325
2326         * gtk/gtkwidget.c (gtk_widget_get_colormap): Check for
2327         colormaps on ancestral widgets before defaulting the
2328         the system default colormap.
2329
2330         * docs/Changes-2.0.txt: explain colormap changes.
2331
2332 2001-09-07  Havoc Pennington  <hp@redhat.com>
2333
2334         * gtk/gtktextiter.c: add some lame code to handle G_MININT, fixes 
2335         #57424
2336
2337 Fri Sep  7 18:17:47 2001  Owen Taylor  <otaylor@redhat.com>
2338
2339         * gdk/gdk.h gdk/x11/gdkmain-x11.c: Deprecate gdk_set/get_use_xshm, 
2340         make gdk_set_use_xshm a noop. Remove --no-xshm command line
2341         option. If we aren't autodetecting properly, we need
2342         to fix the problem, or at least make it an environment
2343         variable setting, to avoid problems with propagating
2344         to embedded children, plugins, etc.
2345
2346         * gdk/gdkcolor.h: Deprecate gdk_colormap_get_system_size().
2347
2348         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf.h
2349         (gdk_pixbuf_render_pixmap_and_mask_for_colormap):
2350         New function to render a pixmap and mask for a particular colormap.
2351
2352         * gtk/gtkwindow.c (get_pixmap_and_mask): Change to use
2353         gdk_pixbuf_render_pixmap_and_mask_for_colormap () instead
2354         of internal implementation of the same.
2355
2356 2001-09-07  Havoc Pennington  <hp@redhat.com>
2357
2358         * gtk/gtktextlayout.c (gtk_text_layout_get_lines): remove some
2359         debug code that seems to have caused a breakpoint in valid cases
2360         
2361         * gtk/gtktextbtree.c (_gtk_text_btree_add_view): set the prev
2362         pointer on the first view when adding the second view, fixes
2363         crash when closing gtk-demo text test with active selection
2364
2365         * gtk/gtktextbuffer.c
2366         (gtk_text_buffer_remove_selection_clipboard): don't leave dead
2367         clipboards in the list of clipboards - probably fixes #59836
2368
2369 Fri Sep  7 11:51:44 2001  Owen Taylor  <otaylor@redhat.com>
2370
2371       Make gdkx.h the only installed header from gdk/x11.
2372       All structures in gdk/x11 are opaque.
2373
2374         * gdk/x11/Makefile.am gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h:
2375         Don't install gdk{drawable,pixmap,window}-x11.h.
2376
2377         * gdk/x11/{gdkcolormap-x11.c, gdkfont-x11.c, gdkx.h, gdkvisual-x11.c: 
2378         Move GdkColormapPrivateX11, GdkFontPrivateX GdkImagePrivateX11, 
2379         GdkVisualClass into C files.
2380
2381         * gdk/gdkpixmap-x11.[ch]: Make gdk_pixmap_impl_get_type() static.
2382
2383         * gdk/x11/{gdkcolor-x11.c, gdkcursor-x11.c, gdkdrawable-x11.c,
2384         gdkfont-x11.c, gdkgc-x11.c, gdkx.h, gdkimage-x11,gdkvisual-x11.c}
2385         Add public functions to replace previously exported direct
2386         structure access.
2387         gdk_x11_colormap_get_{xdisplay,xcolormap} 
2388         gdk_x11_cursor_get_{xdisplay,xcursor},
2389         gdk_x11_drawable_get_{xdisplay,xcursor,gdk_x11_visual_get_xvisual, 
2390         gdk_x11_font_get_{xdisplay,xfont}, gdk_x11_image_get_{xdisplay,ximage},
2391         gdk_x11_gc_get_{xdisplay,ximage}
2392         
2393         * gdk/gdkprivate.h gdk/gdkinternals.h: Move GdkColorInfo,
2394         GdkEventFilter, GdkClientFilter, GdkFontPrivate to gdkinternals.
2395
2396       Fix a number of variables and functions that were exported
2397       "accidentally" from GDK.
2398
2399         * gdk/**.[ch]: gdk => _gdk for gdk_visual_init,
2400         gdk_events_init, gdk_input_init, gdk_dnd_init, gdk_image_exit, 
2401         gdk_input_exit, gdk_windowing_exit, gdk_event_func, gdk_event_data,
2402         gdk_event_notify, gdk_queued_events, gdk_queued_tail,
2403         gdk_event_new, gdk_events_queue, gdk_events_unqueue,
2404         gdk_event_queue_find_first, gdk_event_queue_remove_link,
2405         gdk_event_queue_append, gdk_event_button_generate,
2406         gdk_debug_flags, gdk_default_filters, gdk_parent_root.
2407
2408         * gdk/x11/{gdkevents-x11.c, gdkglobals-x11.c, gdkimage-x11.c, 
2409            gdkmain-x11.c, gdkprivate-x11.h, gdk/x11/gdkwindow-x11.c}:
2410         gdk => _gdk for gdk_event_mask_table, gkd_nevent_masks, 
2411         gdk_wm_window_protocols, gdk_leader_window, gdk_xgrab_window,
2412         gdk_use_xshm, gdk_input_ignore_core.
2413
2414         * gdk/x11/xsettings-common.h (xsettings_list_insert): Add
2415         #defines to namespace functions into the private _gdk_ 
2416         namespace.
2417
2418         * gdk/gdkwindow.[ch] gdk/x11/gdkx.h: Add gdk_get_default_root_window ()
2419         to replace gdk_parent_root exported variable. Adjust and
2420         deprecate GDK_ROOT_PARENT().
2421
2422         * demos/{testpixbuf-drawable.c,testpixbuf-save.c}: Fix
2423         GDK_ROOT_PARENT usage, remove includes of port-specific
2424         headers.
2425
2426         * gdk/{win32,x11,fb}/gdkinput*.[ch]: s/gdk/_gdk/ for 
2427         _gdk_input_gxid_host, _gdk_input_gxid_port, _gdk_input_ignore_core, 
2428         gdk_input_devices, _gdk_input_windows, gdk_init_input_core.
2429
2430         * gdk/x11/{gdkevents-x11.,c gdkglobals-x11.c, gdkmain-x11.c}
2431         docs/Changes-2.0.txt: Remove gdk_wm_protocols, 
2432         gdk_wm_delete_window functions, gdk_wm_take_focus, 
2433         use gdk_atom_intern() instead.
2434
2435         * gdk/linux-fb/{gdkselection-fb.c, gdkmain-fb.c, gdkprivatefb.h}
2436           gdk/win32/{gdkselection-win32.c, gdkmgdkwin32.h, gdkprivate-win32.h} 
2437           gdk/x11/{gdkselection-x11.c gdkx.h, gtkprivate-x11.h}
2438           gtk/gtkselection.c 
2439         Unexport gdk_selection_property, just use 
2440         gdk_atom_intern ("GDK_SELECTION").
2441
2442         * gdk/x11/{gdkprivate-x11.h,gdkdrawable-x11h,gdkgc-x11.c,gdkx.h}: 
2443         Unexport gdk_drawable_impl_x11_get_type, gdk_gc_x11_get_type, 
2444         GDK_GC_X11 cast macros, GdkGCX11 structures, GdkCursorPrivate, 
2445         GdkVisualprivate, gdk_x11_gc_flush.
2446
2447       Make a number of public exports of variables into functions
2448       to increase encapsulation.
2449
2450         * gdk/gdkinternals.h gdk/gdkinput.h gdk/gdkevents.h 
2451         gdk/linux-fb/gdkmouse-fb.c: gdk_core_pointer => _gdk_core_pointer, 
2452         move to gdkinternals.h. Add gdk_device_get_core_pointer ().     
2453
2454         * gdk/gdkprivate.h gdk/gdkpango.c gdk/gdkinternals.h
2455         docs/Changes-2.0.txt: Unexport gdk_parent_root, gdk_error_code, 
2456         gdk_error_warnings.
2457
2458         * gdk/x11/{gdkcolormap-x11.c, gdkmain-x11.c, gdkx.h}
2459           docs/Changes-2.0.txt: 
2460         s/gdk_screen/_gdk_screen/, add gdk_x11_get_default_screen()
2461         s/gdk_root_window/_gdk_root_window/, add gdk_x11_get_default_root_xwindow()
2462         Add gdk_x11_get_default_xdisplay().
2463
2464         * gdk/gdk.h gdk/gdk.c linux-fb/gdkfb.h linux-fb/gdkglobals-fb.c 
2465         win32/gdkwin32.h x11/gdkglobals-x11.c gdk/x11/gdkmain-x11.c 
2466         gdk/x11/gdkx.h: gdk/gdk.def: Add gdk_get/set_program_class, 
2467         Don't export gdk_progclass, move --class command line
2468         option and handling to common portion of GDK.
2469
2470       Miscellaneous fixes:
2471
2472         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Fix
2473         g_return_val_if_fail that should have been g_return_if_fail.
2474
2475         * gdk/gdkinternals.h gdk/gdkprivate.h: Move
2476         gdk_synthesize_window_state() to the semi-public gdkprivate.h.
2477
2478         * gtk/gtkdnd.c (_gtk_drag_source_handle_event): Remove uneeded
2479         X11 dependency.
2480
2481         * gdk/linux-fb/gdkmain-fb.c gdk/win32/gdkmain-win32.c gdk/TODO: 
2482         Remove unused gdk_key_repeat_disable/restore.
2483
2484         * linux-fb/gdkglobals-fb.c win32/gdkglobals-win32.c 
2485         x11/gdkglobals-x11.c x11/gdkprivate-x11.h gdk/gdk.def:
2486         Remove unused gdk_null_window_warnings variable.
2487
2488         * gdk/Makefile.am (DIST_SUBDIRS) nanox/*: cvs remove nanox;
2489         it can be retrieved from the repository; it is too far
2490         from functional to be worth having people check out;
2491         it would be easier to start from scratch, I suspect.
2492
2493         * gdk/x11/gdkpixmap-x11.c: Fix lvalue usage of GDK_PIXMAP_XID().
2494
2495         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
2496         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
2497         Fix some accidentally global variables and unused global variables.
2498
2499         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
2500         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
2501         Fix some accidentally global variables and unused global variables.
2502
2503       Add some space for future expansion to multihead.
2504
2505         * gdk/gdkdrawable.h: Add four reserved function pointers
2506         for future expansion of GdkDrawableClass.
2507
2508         * gtk/gtkwindow.h gtk/gtkinvisible.h: Add reserved pointer
2509         where we can put a GdkScreen * later.
2510
2511 2001-09-07  Havoc Pennington  <hp@redhat.com>
2512
2513         * gtk/gtktextview.c (gtk_text_view_flush_scroll): update
2514         adjustments after validating destination yrange; fixes #53918
2515         (This may cause other issues, but I hope it won't)
2516         
2517 2001-09-05  Havoc Pennington  <hp@redhat.com>
2518
2519         * gtk/gtktextbtree.c (_gtk_text_btree_delete): when merging end
2520         line into start line, update the character counts in parent nodes; 
2521         caused a bug when end and start line had different parent nodes.
2522
2523 2001-08-30  Havoc Pennington  <hp@redhat.com>
2524         
2525         * gtk/gtktexttag.c (_gtk_text_attributes_fill_from_tags): add
2526         assertion that tag is in a table
2527
2528 Fri Sep  7 12:48:56 2001  Matthias Clasen  <matthiasc@poet.de>
2529
2530         * gdk/x11/gdkkeys-x11.c (get_direction): Don't call
2531         g_strcasecmp on NULL strings. (#59058)
2532
2533 2001-09-06  Alex Larsson  <alexl@redhat.com>
2534
2535         * gtk/gtkbin.c:
2536         * gtk/gtkfontsel.c:
2537         * gtk/gtkspinbutton.c:
2538         * gtk/gtktipsquery.c:
2539         Use GtkType/GType instead of uint.
2540
2541 Tue Sep  4 18:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
2542
2543         * gtk/gtkliststore.c (gtk_list_store_init): fix initial val for
2544         sort column.
2545
2546         * gtk/gtktreestore.c (gtk_list_store_init): ditto
2547
2548         * gtk/gtktreesortable.c: add docs.
2549
2550 Tue Sep  4 09:37:19 2001  Owen Taylor  <otaylor@redhat.com>
2551
2552         * Version 1.3.7
2553
2554         * configure.in docs/Makefile.am docs/gtk-config.1.in: Remove 
2555         docs for gtk-config
2556
2557         * modules/input/Makefile.am (install-data-local): Don't
2558         run gtk-query-immodules if DESTDIR is set.
2559
2560         * NEWS: Various additions.
2561
2562 Tue Sep  4 03:12:25 2001  Tim Janik  <timj@gtk.org>
2563
2564         * NEWS: updates for 1.3.7 release.
2565
2566 Mon Sep  3 18:03:56 2001  Jonathan Blandford  <jrb@redhat.com>
2567
2568         * gtk/gtktreestore.c (gtk_tree_store_set_default_sort_func):
2569         handle default sort feature
2570
2571         * gtk/gtktreesortable.c (gtk_tree_sortable_set_default_sort_func):
2572         new function to handle default sort.
2573         (gtk_tree_sortable_has_default_sort_func): check if default sort
2574         is set.
2575
2576         * gtk/gtkliststore.c (gtk_list_store_set_default_sort_func): 
2577         handle default sort feature
2578
2579 Sun Sep  2 20:32:36 2001  Jonathan Blandford  <jrb@redhat.com>
2580
2581         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): patch from
2582         vishnu@pobox.com (Joshua N Pritikin) to fix math and an assertion,
2583         #59731
2584
2585 Sun Sep  2 17:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
2586
2587         * gtk/gtktreeview.c (gtk_tree_view_deleted): Patch from
2588         vishnu@pobox.com (Joshua N Pritikin) to emit signal at the correct
2589         time, #59727
2590
2591         * gtk/gtkbutton.c (gtk_button_update_state): Get depressed
2592         correctly.
2593
2594 Sun Sep  2 21:41:21 2001  Owen Taylor  <otaylor@redhat.com>
2595
2596         * gdk/x11/gdkkeys-x11.c (update_keymaps): Set current serial
2597         so that we don't eternally update the keymap after we
2598         get a change notification.
2599
2600         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Fix
2601         incorrect cast.
2602
2603 Sun Sep  2 23:27:16 2001  Kristian Rietveld  <kristian@planet.nl>
2604
2605         * gtk/gtktreemodelsort.[ch]: much changes in an attempt to make
2606         it working. It mostly works now, although there're still a few issues
2607         to be worked out.
2608
2609         * tests/testtreesort.c (main): changes to have a better test
2610         application for the GtkTreeModelSort.
2611
2612 Sun Sep  2 23:19:07 2001  Kristian Rietveld  <kristian@planet.nl>
2613
2614         * gtk/gtktreeview.c (gtk_tree_view_search_iter): code cleaup,
2615         fix for bug #59222.
2616
2617         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): add
2618         gpointer search_data argument to function definition and
2619         prototype, to match GtkTreeViewSearchEqualFunc typedef.
2620
2621 Sat Sep  1 21:57:27 2001  Kristian Rietveld  <kristian@planet.nl>
2622
2623         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): add warnings
2624         per jrb's request.
2625
2626 Fri Aug 31 20:01:23 2001  Jonathan Blandford  <jrb@redhat.com>
2627
2628         * gtk/gtktreeview.c (gtk_tree_view_search_iter): pass in user data.
2629
2630         * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy search_data.
2631
2632 Wed Aug 29 20:40:58 2001  Owen Taylor  <otaylor@redhat.com>
2633
2634         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_add/remove_selection_clipboard): 
2635         Instead of always mirroring the selection to a single PRIMARY
2636         selection, allow it to be mirrored to any number of clipboards.
2637
2638         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_paste_primary): Remove, 
2639         just use gtk_text_buffer_paste_clipboard with the appropriate clipboard.
2640
2641         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_cut/copy/paste_clipboard): Add a
2642         GtkClipboard argument, and for paste_clipboard, the
2643         @override_location argument from @paste_primary.
2644
2645         * gtk/gtktextview.c: Adapt to above change.
2646         
2647 2001-08-30  Havoc Pennington  <hp@redhat.com>
2648
2649         * gtk/gtktextview.c (invalidated_handler): put validate idle at
2650         resize - 2 just for flexibility
2651
2652 2001-08-30  Havoc Pennington  <hp@redhat.com>
2653
2654         * gtk/gtktextdisplay.c (render_layout_line): handle NULL shaped
2655         object from the empty-child-anchor case by drawing a little box.
2656         
2657         * gtk/gtktextlayout.c (add_child_attrs): Still set shape attribute
2658         if the child anchor has no anchored widgets - fixes #59328.
2659
2660         Also, remove bizarre deletion of preedit string that seems to have
2661         gotten in here somehow.
2662
2663 2001-08-30  Havoc Pennington  <hp@redhat.com>
2664
2665         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): apply fix
2666         to #58420 from Hidetoshi Tajima and Matthias Clasen
2667
2668 Wed Aug 29 17:28:04 2001  Jonathan Blandford  <jrb@redhat.com>
2669
2670         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
2671         change color when the GtkTreeView loses focus.
2672
2673         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render):
2674         ditto.
2675         
2676         * gtk/gtkstyle.c (gtk_default_draw_flat_box): ditto
2677
2678 2001-08-28  Havoc Pennington  <hp@pobox.com>
2679
2680         * gtk/gtkwindow.c (gtk_window_set_icon_list): fix g_object_notify
2681
2682 2001-08-28  Havoc Pennington  <hp@pobox.com>
2683
2684         * demos/gtk-demo/main.c (setup_default_icon): add default icon
2685
2686         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic):
2687         warning fix
2688         (gtk_radio_button_new_with_label): warning fix
2689
2690         * gtk/gtkdnd.c: used some random GtkImage private structs, 
2691         update to reflect GtkImage changes
2692
2693         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): don't check
2694         whether the hint is supported, just always set the icon. A task
2695         list might want to use it even if the WM doesn't, and the WM may
2696         change over time. Also, XDeleteProperty() if list == NULL.
2697
2698         * gtk/gtkwindow.c (gtk_window_set_icon_list)
2699         (gtk_window_get_icon_list)
2700         (gtk_window_set_icon)
2701         (gtk_window_get_icon)
2702         (gtk_window_set_default_icon_list)
2703         (gtk_window_get_default_icon_list):
2704         new functions
2705
2706         * gtk/gtk-boxed.defs (GtkIconSet): add GtkIconSet
2707
2708         * gtk/gtkimage.c: Implement property support, bug #59408
2709
2710         * gtk/gtkcontainer.c (gtk_container_add): make the warning message
2711         on reparent-without-removing-first a bit more helpful.
2712         Let's just destroy this FAQ.
2713
2714 Tue Aug 28 21:37:11 2001  Matthias Clasen  <matthiasc@poet.de>
2715
2716         * demos/gtk-demo/appwindow.c (do_appwindow): Use g_signal_connect_object
2717         instead of gtk_signal_connect, to avoid warnings at destruction time. (#58161)
2718
2719 Tue Aug 28 21:00:44 2001  Matthias Clasen  <matthiasc@poet.de>
2720
2721         * gtk/gtkprogressbar.c (gtk_progress_bar_set_text): Move the setting
2722         of use_text_format to the end of the function. (#56447)
2723
2724 Tue Aug 28 20:06:07 2001  Matthias Clasen  <matthiasc@poet.de>
2725
2726         * demos/testpixbuf.c (update_timeout): Use gdk_pixbuf_loader_get_pixbuf
2727         only in response to an area_prepared signal.
2728
2729 2001-08-28  Alex Larsson  <alexl@redhat.com>
2730
2731         * gtk/gtkwidget.c (gtk_widget_class_init):
2732         Make unrealize GTK_RUN_LAST.
2733
2734 Mon Aug 27 22:00:41 2001 Manish Singh <yosh@gimp.org>
2735
2736         * gtk/gtkradiobutton.c: fix silly cut'n'paste error,
2737         with_label and with_mnemonic should create radio buttons, not
2738         check buttons
2739
2740 Mon Aug 27 15:28:56 2001  Jonathan Blandford  <jrb@redhat.com>
2741
2742         * tests/testtreefocus.c (main): Fix to use GtkSelectionMode.
2743         * tests/treestoretest.c (make_window): ditto
2744         * demos/gtk-demo/main.c (create_tree): ditto
2745         * demos/gtk-demo/stock_browser.c (do_stock_browser): ditto.
2746
2747 Mon Aug 27 15:18:14 2001  Jonathan Blandford  <jrb@redhat.com>
2748
2749         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): Use the
2750         GTK selection types rather than GtkTreeSelectionMode.
2751
2752         * docs/Changes-2.0: Add comment about selection change.
2753
2754 Mon Aug 27 14:21:30 2001  Jonathan Blandford  <jrb@redhat.com>
2755
2756         * gtk/gtkenums.h (GtkSelectionMode): deprecate
2757         GTK_SELECTION_EXTENDED.
2758
2759         * gtk/gtkclist.c: Remove old GTK_SELECTION_MULTIPLE behavior.
2760         Make GTK_SELECTION_EXTENDED be GTK_SELECTION_MULTIPLE.
2761
2762         * gtk/gtkctree.c: ditto
2763
2764         * gtk/gtklist.c: ditto
2765
2766         * gtk/gtktree.c: ditto
2767
2768 Mon Aug 27 14:18:12 2001  Owen Taylor  <otaylor@redhat.com>
2769
2770         * gtk/gtkmenubar.h (gtk_menu_bar_prepend): Fix a cuple
2771         of typos in compat macros. (#59624, Skip Montaro)
2772
2773 Sun Aug 26 20:00:00 2001  Owen Taylor  <otaylor@redhat.com>
2774
2775         * configure.in acinclude.m4: Use autoconf 2.13/2.50 compat
2776         macro.
2777
2778          (patch from ERDI Gergo  <cactus@cactus.rulez.org>, #58920)
2779  
2780         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Change
2781         interface to be a standard setter from gtk_menu_item_right_justify.
2782         (gtk_menu_item_get_right_justified): a getter to go with the setter
2783
2784         * gtk/gtkmenuitem.h: Add a deprecated compat macro for
2785         gtk_menu_item_right_justify.
2786
2787         * demos/gtk-demo/menus.c tests/testgtk.c: Switch to 
2788         gtk_menu_item_set_right_justified.
2789  
2790 2001-08-27  Jens Finke <jens@gnome.org>
2791
2792         * gtk+.spec.in: Updated to match gpp requirements, reworked the
2793         files section to make it work with 1.3.x releases.
2794
2795 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
2796
2797         * gtk/gtkbutton.[ch]:
2798         Add properties for labels, mnemonics and stock items.
2799         Added C accessor functions for the properties.
2800         Removed deprecated button->child.
2801
2802         * gtk/gtkradiobutton.c:
2803         * gtk/gtktogglebutton.c:
2804         Update to use the functions in GtkButton.
2805
2806         * gtk/gtkcheckbutton.c:
2807         Update to use the functions in GtkButton.
2808         Changed size allocation of child. Now only gets as much
2809         space as it requests.
2810
2811         * gtk/gtkclist.c:
2812         Don't use GtkButton->child
2813
2814         * gtk/gtklabel.c:
2815         Fixed typo in docs
2816         
2817 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
2818
2819         * tests/testgtk.c:
2820         * tests/Makefile.am:
2821         Ressurect the properties test.
2822         I don't care if it is inferior, I just want to test my property code.
2823
2824 2001-08-25  Chema Celorio  <chema@celorio.com>
2825
2826         * gtk/gtktable.c (gtk_table_set_child_property): pass ->nrows to
2827         gtk_table_resize as the first argument for CHILD_PROP_RIGHT_ATTACH
2828         and CHILD_PROP_LEFT_ATTACH v.s. using ->ncols
2829
2830 2001-08-24  Havoc Pennington  <hp@pobox.com>
2831
2832         * gtk/gtkcompat.h: remove gtk_menu_* compat defines; 
2833         these are already in gtkmenu.h, and the copies
2834         here were broken.
2835
2836         Also, change GTK_DISABLE_COMPAT_H to GTK_DISABLE_DEPRECATED
2837
2838         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_image):
2839         special-case bitmaps to allow no colormap
2840         (bitmap1): implement no-colormap bitmap-getting
2841         (bitmap1a): implement no-colormap bitmap-getting to pixbuf with
2842         alpha
2843         (rgb8): indentation
2844         (rgb1a, rgb1): change the way we read the data out of the image, 
2845         old way didn't seem to work quite right.
2846
2847         I'm pretty sure a lot of the rgbconvert code is still broken.
2848         
2849         * gtk/gtkwindow.c (gtk_window_move_resize): move hints comparison
2850         above position constraint (I really intended to do this before,
2851         don't know what's up with that)
2852         (gtk_XParseGeometry): shut up gcc
2853
2854         * gdk/gdkpixbuf-drawable.c (rgb1a): fix bug where "x1" was used
2855         and "0" should have been. remove the attempted 4-bytes-at-once
2856         optimization, it was totally broken.
2857
2858 Sat Aug 25 19:02:39 2001  Owen Taylor  <otaylor@redhat.com>
2859
2860         * gtk/gtkbutton.[ch] gtk/gtktogglebutton.c: Add optional movement
2861         on push to buttons (based on patch from Soeren Sandmann, #54720)
2862
2863           - Add child_displacement_x/y style properties to control how far the
2864             child moves when the button is depressed.
2865
2866           - Add non-exported function _gtk_button_set_depressed to clean
2867             up the handling of the in/out shadow and separate it frmo
2868             widget->state.
2869
2870           - Lots of code cleanup and simplification of state handling
2871             for GtkButton/GtkToggleButton.
2872  
2873         * tests/testgtkrc: Set the x/y displacement to 1 to provide a test
2874         of button movement. testgtk + testgtkrc == test ugly GTK+, as always.   
2875
2876 Fri Aug 24 23:09:05 2001  Owen Taylor  <otaylor@redhat.com>
2877
2878         * gtk/gtkimage.[ch] docs/Changes-2.0.txt: Break compatibility 
2879         and make gtk_image_new() take no arguments. The compiler will
2880         catch it, and it is vastly more useful than having
2881         gtk_image_new() be a deprecated alias for gtk_image_new_from_image().  
2882
2883         * gtk/gtkmenu.c (gtk_menu_set_property): Apply patch
2884         to add tearoff-title property (#51319, Lee Mallabone)
2885
2886 Fri Aug 24 22:12:32 2001  Owen Taylor  <otaylor@redhat.com>
2887
2888         * gtk/gtkmenuitem.[ch]: Remove unused and useless function
2889         gtk_menu_item_configure(). (#58925)
2890
2891 Fri Aug 24 16:03:45 2001  Jonathan Blandford  <jrb@redhat.com>
2892
2893         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): Add
2894         "use_align" to give people the option to just make a cell visible.
2895
2896         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): fix bug where
2897         we were scrolling past the end of the tree.
2898
2899         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_start):
2900         rename gtk_tree_view_column_pack_start_cell_renderer to
2901         gtk_tree_view_column_pack_start.  Same for pack_end, and clear.
2902
2903 Fri Aug 24 12:02:08 2001  Owen Taylor  <otaylor@redhat.com>
2904
2905         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Remove
2906         a stray g_object_ref() left over from gtk_object_ref/sink.
2907         (Pointed out by Josh Pritikin.)
2908
2909 Thu Aug 23 19:33:54 2001  Owen Taylor  <otaylor@redhat.com>
2910
2911         * gtk/gtkcontainer.[ch]: Rename gtk_container_children()
2912         to gtk_container_get_children. Added deprecated compatibility
2913         macro. (Suggested by Vitaly Tishkov, #59051)
2914
2915         * gtk/gtktoolbar.c gtkdialog.c: Fix gtk_container_children()
2916         calls.
2917
2918 Thu Aug 23 19:10:01 2001  Owen Taylor  <otaylor@redhat.com>
2919
2920         * gtk/gtkmenubar.h (gtk_menu_bar_insert): Deprecate 
2921         gtk_menu_bar_append/prepend/insert, forgot to do this
2922         when we deprecated gtk_menu_append/prepend/insert.
2923
2924         * gtk/gtkmenu.h (gtk_menu_insert): Add casts to deprecated
2925         compat macros.
2926
2927         * gtk/gtkmenu.c: Fix problem with static gtk_menu_insert() being
2928         renamed by compat macro.
2929
2930         * gtk/gtkfontsel.h: Deprecated gtk_font_selection_get_font(),
2931         gtk_font_selection_dialog_get_font(). (Suggested by
2932         Vitaly Tishkov, #59383)
2933
2934 Thu Aug 23 18:23:31 2001  Owen Taylor  <otaylor@redhat.com>
2935
2936         * gtk/gtktexttag.c (gtk_text_tag_table_get_size): 
2937         Rename from gtk_text_tag_table_size(). (#59366)
2938
2939 Thu Aug 23 20:01:41 2001  Kristian Rietveld  <kristian@planet.nl>
2940
2941         * gtk/gtktreemodelsort.[ch], gtk/gtktreesortable.[ch],
2942         gtk/gtktreestore.[ch], gtk/gtktreeviewcolumn.[ch],
2943         gtk/gtkliststore.[ch]: use GtkSortType instead of GtkTreeSortOrder.
2944         (#59173).
2945
2946 Thu Aug 23 16:26:47 2001  Tim Janik  <timj@gtk.org>
2947
2948         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): 
2949         * gtk/gtktextmark.c (gtk_text_mark_finalize): chain parent class
2950         handlers, pointed out by Joshua N Pritikin <vishnu@pobox.com>.
2951
2952 Wed Aug 22 19:15:39 2001  Owen Taylor  <otaylor@redhat.com>
2953
2954         [ Patch from Sebastian Wilhelmi, 52790 ]
2955
2956         * gtk/gtkversion.h.in gtk/gtk.h: New file replacing gtkcompat.h
2957
2958         * gdk/gdkcompat.h gdk/gdk*.h gtk/gtkcompat.h.in gtk/gtk*.h: 
2959         Move compatibility macros from g[dt]kcompat.h to within 
2960         #ifndef G[DT]K_DISABLE_DEPRECATED in each file.
2961
2962         * gdk/gdk-pixbuf-csource.c: Fix up include of gtkcompat.h.
2963
2964         * demos/Makefile.am demos/gtk-demo/Makefile.am 
2965           docs/reference/gdk-pixbuf/Makefile.am modules/input/Makefile.am
2966           tests/Makefile.am: Remove references to -G[DT]K_DISABLE_DEPRECATED.
2967
2968         * demos/{pixbuf-demo.c,testpixbuf-drawable.c,testpixbuf-save.c,
2969                  testpixbuf.c}: Fix usages of deprecated functions.
2970
2971 Wed Aug 22 19:03:27 2001  Jonathan Blandford  <jrb@redhat.com>
2972
2973         * gtk/gtktreeview.c (gtk_tree_view_set_model): clean up selection
2974         when changing models.
2975
2976 Wed Aug 22 18:25:46 2001  Jonathan Blandford  <jrb@redhat.com>
2977
2978         * gtk/gtktreeview.c: Fix selection.  I think it's all dandy now.
2979         We check the current event for modifiers rather than try to trap
2980         all presses.
2981
2982 2001-08-22  Anders Carlsson  <andersca@gnu.org>
2983
2984         * gtk/gtkliststore.h (GTK_LIST_STORE_CLASS): Fix a small typo.
2985         It's LIST_STORE, not LISTSTORE.
2986
2987 Tue Aug 21 12:43:29 2001  Owen Taylor  <otaylor@redhat.com>
2988
2989         * gtk/gtk.h: Remove commented out gtkpacker reference.
2990
2991 2001-08-21  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2992
2993         * configure.in (all_loaders): Add tga loader, 
2994         patch by Nicola Girardi. (#56067)
2995
2996 Tue Aug 21 02:57:13 2001  Jonathan Blandford  <jrb@redhat.com>
2997
2998         * gtk/gtktreeview.c (gtk_tree_view_button_press): Fix up selection
2999         a little.  More needs to be done tomorrow.
3000
3001 Tue Aug 21 00:45:55 2001  Jonathan Blandford  <jrb@redhat.com>
3002
3003         * gtk/gtktreeview.c (gtk_tree_view_destroy): Grr... Get it right.
3004
3005 Mon Aug 20 23:48:18 2001  Jonathan Blandford  <jrb@redhat.com>
3006
3007         * gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Fix bug
3008         reported by Kristian Rietveld <kristian@planet.nl> to handle row
3009         == NULL.
3010         (gtk_tree_view_destroy): Fix bug reported by Kristian Rietveld
3011         <kristian@planet.nl> to change destroy order.
3012
3013 Mon Aug 20 11:39:44 2001  Jonathan Blandford  <jrb@redhat.com>
3014
3015         * gtk/gtktreeselection.c (gtk_tree_selection_class_init): Use
3016         correct marshaller.
3017
3018 Sun Aug 19 03:22:59 2001  Jonathan Blandford  <jrb@redhat.com>
3019
3020         * gtk/gtkliststore.c: Fix up warnings, #58928.
3021
3022         * gtk/gtktreeselection.h: Change signal prototype, #58647
3023
3024         * gtk/gtktreeview.c (_gdk_tree_view_find_node): Make more robust,
3025         #59221.
3026
3027         * gtk/gtkstyle.c: Actually prelight arrow, #50981
3028         
3029 2001-08-18  Hans Breuer  <hans@breuer.org>
3030
3031         * gdk/gdk.def : updated externals
3032
3033         * gdk/win32/gdkselection-win32.c : returning TRUE with gdk_selection_set
3034         is required to get (at least) visible in entry fields. Some selections
3035         are really handled now - even on win32 - but copying via middle
3036         mouse button into a different app needs to wait ... 
3037
3038         * gdk/win32/gdkdnd-win32.c : implemented inter-app drag&drop
3039         mostly by stealling code from gdkdnd-fb.c. Thanks to who ever wrote it!
3040
3041         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
3042         handling. I'm not sure if it is better now, but at least not worse
3043
3044         * gdk/win32/gdkgeometry-win32.c : replaced every call to MoveWindow
3045         with SetWindowPos () which allows more fine-tuning backing-store wise
3046
3047         * gdk/win32/gdkwindow-win32.c : allow unraised gdk_window_show ().
3048         Also changed move/resize to be more like the X version.
3049
3050         * gtk/gtk.def : updated externals
3051
3052 2001-08-19  Sven Neumann  <sven@gimp.org>
3053
3054         * gtk/gtktooltips.c
3055         * tests/testtreesort.c
3056         * tests/treestoretest.c: inserted some casts to get rid of compiler
3057         warnings.
3058
3059 Sun Aug 19 01:44:44 2001  Jonathan Blandford  <jrb@redhat.com>
3060
3061         * gtk/gtktreeviewcolumn.c
3062         (gtk_tree_view_column_pack_{start,end}_cell_renderer): sink cell.
3063
3064         * gtk/gtktreeview.c (gtk_tree_view_insert_column): sink column.
3065         (_gtk_tree_view_find_node): If *node is NULL,
3066         *tree should be NULL too.
3067
3068         * demos/gtk-demo/stock_browser.c (do_stock_browser): don't unref
3069         column/renderers.
3070         * tests/testtreecolumns.c: ditto
3071         * tests/testtreefocus.c: ditto
3072         * tests/testtreesort.c: ditto
3073         * tests/testtreeview.c: ditto
3074         * tests/treestoretest.c: ditto
3075
3076 Sat Aug 18 04:34:31 2001  Jonathan Blandford  <jrb@redhat.com>
3077
3078         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 2 new
3079         signals; is_expander/is_expanded.
3080
3081         * gtk/gtlcellrendererpixbuf.c: Allow other expanded and closed
3082         pixbufs.
3083
3084         * gtk/gtktreeview.c: set above properties.
3085
3086 Sat Aug 18 23:01:33 2001  Owen Taylor  <otaylor@redhat.com>
3087
3088         * gtk/gtkwidget.h: Really remove set_default_style().
3089
3090         * docs/Changes-2.0.txt: added a note about
3091         gtk_widget_push/pop/set_default_style.
3092
3093 2001-08-18  Havoc Pennington  <hp@pobox.com>
3094
3095         * gtk/gtkwindow.c (gtk_window_move_resize): constrain position on
3096         hints_changed in addition to the other cases.
3097         (gtk_window_move_resize): include last position from configure
3098         notify in debug spew
3099
3100 2001-08-18  James Henstridge  <james@daa.com.au>
3101
3102         * gtk/gtkaccelgroup.c (gtk_accel_group_object_destroy): use the
3103         second argument to the weak ref notify, cleaning up some uglyness.
3104         (gtk_accel_group_attach): remove and add the weak notifier when
3105         changing the accel groups slist.
3106         (gtk_accel_group_detach): same here.
3107
3108 2001-08-17  Darin Adler  <darin@bentspoon.com>
3109
3110         * gtk/gtktreeview.c: (gtk_tree_view_search_equal_func): Add
3111         missing parameters to utf8 functions to make it compile.
3112
3113 Fri Aug 17 19:30:14 2001  Jonathan Blandford  <jrb@redhat.com>
3114
3115         * gtk/gtktreeprivate.h:
3116         * gtk/gtktreeview.c: (gtk_tree_view_class_init),
3117         (gtk_tree_view_init), (gtk_tree_view_set_property),
3118         (gtk_tree_view_get_property), (gtk_tree_view_destroy),
3119         (gtk_tree_view_key_press), (gtk_tree_view_leave_notify),
3120         (gtk_tree_view_focus_out), (gtk_tree_view_set_model),
3121         (gtk_tree_view_set_destroy_count_func),
3122         (gtk_tree_view_set_enable_search),
3123         (gtk_tree_view_get_enable_search),
3124         (gtk_tree_view_get_search_column),
3125         (gtk_tree_view_set_search_column),
3126         (gtk_tree_view_get_search_equal_func),
3127         (gtk_tree_view_set_search_equal_func),
3128         (gtk_tree_view_search_dialog_destroy),
3129         (gtk_tree_view_search_position_func),
3130         (gtk_tree_view_interactive_search),
3131         (gtk_tree_view_search_delete_event),
3132         (gtk_tree_view_search_button_press_event),
3133         (gtk_tree_view_search_key_press_event),
3134         (gtk_tree_view_search_move), (gtk_tree_view_search_equal_func),
3135         (gtk_tree_view_search_iter), (gtk_tree_view_search_init):
3136         * gtk/gtktreeview.h:
3137         Add heavily modified patch from Kristian Rietveld to handle
3138         interactive searching.
3139
3140 Fri Aug 17 17:30:34 2001  Tim Janik  <timj@gtk.org>
3141
3142         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): const correct
3143         string parameter.
3144
3145         * gtk/gtkoptionmenu.c (gtk_option_menu_set_menu): connect to
3146         GtkMenuShell::selection_done, now that we have it, instead of 
3147         ::deactivate so we're not tearing the menu apart and notify
3148         the user prematurely.
3149
3150 Thu Aug 16 05:22:01 2001  Tim Janik  <timj@gtk.org>
3151
3152         * gtk/gtkwindow.c (gtk_window_move_resize): if we actually move our
3153         window, clear window->need_default_position to avoid infinite loops.
3154         some comment fixups and GTK_RESIZE_IMMEDIATE fixups.
3155
3156 Wed Aug 15 12:36:55 2001  Tim Janik  <timj@gtk.org>
3157
3158         * gtk/gtktreeview.c (gtk_tree_view_set_model): move all model setup
3159         code into this place. get rid of GTK_TREE_VIEW_MODEL_SETUP usage.
3160         (gtk_tree_view_set_property): don't cast possible NULL objects.
3161         (gtk_tree_view_destroy): reset the model to NULL.
3162
3163         * gtk/gtktreeselection.c (gtk_tree_selection_finalize): chain
3164         parent_class handler.
3165
3166 2001-08-17  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3167
3168         * gtk/demos/gtk-demo/*: Remove all uses of deprecated functions.
3169
3170 2001-08-17  Anders Carlsson  <andersca@gnu.org>
3171
3172         * gtk/gtkstyle.c (create_expander_affine): Divide with floating
3173         point numbers so that the result will be floating point.
3174
3175 2001-08-16  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3176
3177         * tests/testgtk.c (create_handle_box): 
3178         (create_toolbar): Replace gtk_window_set_policy calls by
3179         gtk_window_set_resizable.
3180
3181 2001-08-16  Jakub Steiner <jimmac@ximian.com>
3182
3183         * gtk/stock-icons/dialog_info.png: new style bulb
3184         * gtk/stock-icons/dialog_error.png: maybe a little drastic ;)
3185         * gtk/stock-icons/dialog_warning.png: need a hand?
3186         * gtk/stock-icons/stock_add.png, stock_remove.png: I hope 
3187           the aa border gets chopped off ok
3188         * gtk/stock-icons/stock_colorselector.png: using the new hand
3189         * gtk/stock-icons/stock_dnd_multiple.png: I'm not totally sure what 
3190           this one is for, but the old icon was butt ugly.
3191         * gtk/stock-icons/stock*_insert_image.png: not sure if it belongs here
3192         * gtk/stock-icons/stock*_insert_object.png: "
3193         * gtk/stock-icons/stock_index.png: using new hand icon
3194         * gtk/stock-icons/stock*_new.png: the document template being used 
3195           elsewhere too
3196         * gtk/stock-icons/stock*_print*.png: new print and print preview 
3197           icons (panel/menu)  
3198         * gtk/stock-icons/stock*_save*.png, stock*_revert.png: new save/revert 
3199           icons based on Tuomas' floppy image.
3200         * gtk/stock-icons/stock*_search*.png: search and s'n'r icons for panel/menu
3201         * gtk/stock-icons/stock*_stop.png: replacing the old 'x' button
3202         * gtk/stock-icons/stock*_trash.png: based on Tuomas' trash icon
3203         * gtk/stock-icons/stock*_undelete.png: "
3204         * gtk/stock-icons/stock_preferences.png: I have a version with a 
3205           document base if the sliders are no good.
3206         * gtk/stock-icons/stock_properties.png: properties 
3207         
3208
3209         * gtk/stock-icons/stock*_copy.png, stock*_cut.png, stock*_paste.png: Tuomas' 
3210           (tigert@ximian.com) clipboard icons
3211         * gtk/stock-icons/stock_{up,down,left,right}_arrow.png: tigert's new arrows
3212         * gtk/stock-icons/stock*_{undo,redo}.png: tigert's undo/redo icons.
3213         * gtk/stock-icons/stock_open.png: shaded open icon by Tuomas. we should make it a
3214           little bigger IMHO
3215
3216 2001-08-16  Sven Neumann  <sven@gimp.org>
3217
3218         * gtk/gtkbox.c (gtk_box_class_init): removed unused widget_class.
3219
3220 2001-08-15  Padraig O'Briain  <padraig.obriain@sun.com>
3221
3222         * gtk/gtkcellrenderertext.c:
3223         Avoid warning when specifying NULL for "attributes" property
3224
3225 2001-08-15  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3226
3227         * docs/debugging.txt: Add a warning about --enable-debug=no,
3228         some editorial changes.
3229
3230 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3231
3232         * gtk/docs/debugging.txt, gdk/gdk.c, gdk/gdkinternals.h, 
3233         gdk/x11/gdkmain-x11.c, gtk/gtkdebug.h, gtk/gtkmain.c: Update 
3234         debugging info, remove unused debug flags. (#58330)
3235
3236 Mon Aug 13 13:17:32 2001  Jonathan Blandford  <jrb@redhat.com>
3237
3238         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): 
3239         (gtk_tree_selection_select_all): Remove strict checking for rows.
3240
3241 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3242         
3243         * gtk/gtktooltips.c (gtk_tooltips_set_tip, gtk_tooltips_draw_tips): 
3244         Don't remove the tooltip window when the tip text changes. (#15891)
3245
3246 Sun Aug 12 12:02:09 2001  Owen Taylor  <otaylor@redhat.com>
3247
3248         * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): Remove extra
3249         $(srcdir).
3250
3251 Sun Aug 12 10:39:12 2001  Owen Taylor  <otaylor@redhat.com>
3252
3253         * Makefile.am (EXTRA_DIST): Fix problem with trying to
3254         dist files from intl/, which is no longer there.
3255
3256 2001-08-11  Hans Breuer  <hans@breuer.org>
3257
3258         * gtk/gtkalignment.c, gtk/gtkarrow.c, gtk/gtkaspectframe.c,
3259           gtk/gtkcellrenderer.c, gtk/gtkcellrenderertext.c, 
3260           gtk/gtkcombo.c, gtk/gtkcurve.c, gtk/gtkfontsel.c, 
3261           gtk/gtklayout.c, gtk/gtkmisc.c, gtk/gtkpacker.c, 
3262           gtk/gtkprogress.c, gtk/gtkruler.c,, gtk/gtksettings.c,
3263           gtk/gtkspinbutton.c, gtk/gtktexttag.c : coalescing property notifies
3264
3265         * gtk/gtkclist.c, gtk/gtktipsquery.c, gtk/gtktexttag.c,
3266           gtk/gtkwidget.c : added G_SIGNAL_TYPE_STATIC_SCOPE to all
3267         GDK_TYPE_EVENT signals
3268
3269         * gtk/gtkalignment.c : removed 'direct allocation bug',
3270         which Tim discovered while reading the patch
3271
3272 Sat Aug 11 14:32:14 2001  Owen Taylor  <otaylor@redhat.com>
3273
3274         * gtk/gtkwidget.h (gtk_widget_set_default_visual): Add some
3275         compat macros for push/pop/set_visual that were supposed
3276         to be added a long time ago, but got dropped. 
3277
3278 Fri Aug 10 16:55:53 2001  Tim Janik  <timj@gtk.org>
3279
3280         * gtk/gtkwindow.c (gtk_window_set_policy): coalesce multiple
3281         property notifies.
3282
3283 2001-08-07  Havoc Pennington  <hp@pobox.com>
3284
3285         * gtk/gtkfilesel.c (open_ref_dir): fix a typo.
3286
3287         * gtk/gtkplug.c (gtk_plug_init): remove setting of auto_shrink;
3288         some fixage is needed here, but nothing simple. Owen understands
3289         it. ;-)
3290
3291         * gtk/gtkwindow.h, gtk/gtkwindow.c: Rework code and API for window
3292         sizing and positioning.  Also, fix bug in compute_geometry_hints
3293         (width/height confusion for setting min size). 
3294         (gtk_window_move): new function
3295         (gtk_window_resize): new function
3296         (gtk_window_get_size): new function
3297         (gtk_window_get_position): new function
3298         (gtk_window_parse_geometry): new function
3299         
3300         * gtk/gtkwidget.c (gtk_widget_set_size_request): new function
3301         (gtk_widget_get_size_request): new function
3302         (gtk_widget_get_usize): delete, that was a short-lived function
3303         ;-)
3304         (gtk_widget_set_usize): deprecate
3305         (gtk_widget_set_uposition): deprecate, make it a trivial 
3306         gtk_window_move() wrapper
3307         (gtk_widget_class_init): remove x/y/width/height properties,
3308         add width_request height_request
3309         
3310         * demos/*: update to avoid deprecated functions
3311         
3312         * gtk/gtklayout.c: add x/y child properties
3313
3314         * gtk/gtkfixed.c: add x/y child properties, and get rid of 
3315         uses of "gint16"
3316
3317         * tests/testgtk.c (create_window_sizing): lots of tweaks to window
3318         sizing test
3319
3320         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ensure that
3321         configure events on toplevel windows are always in root window
3322         coordinates, following ICCCM spec that all synthetic events 
3323         are in root window coords already, while real events are 
3324         in parent window coords. Previously the code assumed that 
3325         coords of 0,0 were parent window coords, which was 
3326         really broken.
3327   
3328         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): fix
3329         warning
3330  
3331         * gdk/gdkwindow.h (GdkWindowHints): add GDK_HINT_USER_POS 
3332         and GDK_HINT_USER_SIZE so we can set USSize and USPosition 
3333         hints in gtk_window_parse_geometry()
3334  
3335         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): support
3336         new USER_POS USER_SIZE hints    
3337
3338 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3339
3340         * tests/prop-editor.c (properties_from_type): Use 
3341         g_object_class_list_properties to get the param specs 
3342         for a given type. (#58609)
3343
3344 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3345
3346         * gtk/gtkstyle.c (gtk_style_real_unrealize): Don't forget to
3347         free the text_aa parts. (#57549)
3348
3349 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3350
3351         * gdk/gdkgc.c (gdk_gc_set_rgb_bg_color): Set the background color,
3352         not the foreground color. (#57621)
3353
3354 2001-08-09  Alexander Larsson <alexl@redhat.com>
3355
3356         * gdk/win32/gdkfont-win32.c:
3357         Update to the new pango win32 api.
3358
3359 2001-08-08  HideToshi Tajima  <tajima@eng.sun.com>
3360
3361         * gtk/gtkclipboard.c (request_text_received_func): ask apps for
3362         COMPOUND_TEXT instead of TEXT
3363         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): correctly
3364         interpret the return value of g_string_to_compound_text()
3365         (#55152)
3366
3367 2001-08-08  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3368
3369         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Don't
3370         fail if iter is NULL. (#58347)
3371
3372 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3373
3374         * gtk/gtktextdisplay.c (render_para, gtk_text_layout_draw): Fix
3375         some off-by-one issues, fixing selection of line-ends. (#50323)
3376
3377 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3378
3379         * gtk/gtkhsv.c (gtk_hsv_map, gtk_hsv_unmap): Reinstate these
3380         functions in order to make mouse operation work again in the
3381         color wheel. (#58604)
3382
3383 2001-08-07  James Henstridge  <james@daa.com.au>
3384
3385         * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_object): refetch
3386         the accelerator when the accel object is changed.  Fixes bug
3387         #58628.
3388
3389 2001-08-06  HideToshi Tajima  <tajima@eng.sun.com>
3390
3391         * modules/input/gtkimcontextxim.c (mb_to_utf8), xim_text_to_utf8):
3392         Skip g_convert when to_codeset and from_codeset are both 'UTF-8'
3393         (gnome bugzilla #58202)
3394
3395 2001-08-06  Havoc Pennington  <hp@pobox.com>
3396  
3397         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): The whole 
3398         GDK_IS_WINDOW() branch of this was a bit screwed up, because 
3399         it was expecting a GdkWindow, not a GdkWindowImplX11.
3400  
3401         Also, we were getting the window rect in screen coords 
3402         and the screen rect in window coords then intersecting 
3403         them; instead, get window rect in window coords.
3404  
3405         Finally, there were codepaths that resulted in a stuck server grab
3406         (when the window was fully onscreen, or on gdk_image_new()
3407         failure); make the server ungrab thing a bit more
3408         robust/consistent.
3409
3410 2001-08-06  Sven Neumann  <sven@gimp.org>
3411
3412         * gdk/gdkpango.c (gdk_pango_context_destroy): 
3413         check if info->colormap != NULL before unref'ing it. It might have
3414         been set to NULL using gdk_pango_context_set_colormap().
3415
3416 Sun Aug  5 11:24:27 2001  Owen Taylor  <otaylor@redhat.com>
3417
3418         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_alpha): 
3419         Fix conversion from float to int so that we don't get
3420         skew in the int => float => int roundtrip. 
3421         (#58120, reported by Vitaly Tishkov). Also fix problem
3422         where if no alpha was set, the returned alpha
3423         from (say) set_current_alpha() was returned as 1, not 65535.
3424
3425 Sun Aug  5 09:48:08 2001  Owen Taylor  <otaylor@redhat.com>
3426
3427         * gtk/gtklist.c (gtk_list_clear_items): Fix
3428         problem with selecting a new focus child.
3429
3430         * gtk/gtklist.c (gtk_list_clear_items): Clear 
3431         list->undo/list_focus_child after unparenting
3432         child, since unparenting the child can result
3433         in list->last_focus_child being set. (#58024)
3434
3435         * Makefile.am (SUBDIRS): Add target specific pc
3436         files to DISTCLEANFILES.
3437
3438         * gtk/Makefile.am: add @GTK_DEBUG_FLAGS@
3439         (58327, Matthias Clasen)
3440
3441 Sat Aug  4 19:28:21 2001  Owen Taylor  <otaylor@redhat.com>
3442
3443         * tests/testgtk.c: Patch from Hans (with various modifications),
3444         to add the ability to use testgtk as a rough-and-ready
3445         benchmark. Try, 'testgtk --bench all:5' (if you want decent
3446         numbers, run without a window manager)
3447
3448 2001-08-04 Alexander Larsson <alexl@redhat.com>
3449
3450         * gdk/win32/gdkinput.c:
3451         Add #ifdef HAVE_WINTAB around wintab.h include.
3452
3453         * gtk/gtk.def:
3454         Removed marshals that have been moved to glib.
3455         Commented out plug and socket. They didn't compile for me 
3456         on win32.
3457
3458 2001-08-04  Hans Breuer  <hans@breuer.org>
3459
3460         * gtk/stocks-icons/makefile.msc : new file
3461         * gtk/makefile.msc.in : use it
3462
3463         * gtk/gtkstyle.c : not all platforms do provide M_PI and
3464         friends, but luckily there is G_PI
3465
3466         * gtk/gtk.def : updated
3467
3468         * gdk/win32/gdkwindow.c (gdk_window_new) : don't make all TEMP 
3469         windows WS_POPUP, but only those without a parent. This fixes the 
3470         mis-alignment between the selectable (temp, input only) window and 
3471         the window text of GtkLabel.
3472
3473         (gdk_window_show) : respect private->state when actually showing
3474         the window.
3475
3476         (gdk_window_set_transient_for) : Implementation from Wolfgang 
3477         Sourdeau <wolfgang@contre.com> ported to 2.0 and added some 
3478         error handling. Should fix #50586.
3479
3480         * gdk/win32/gdkevents-win32.c : beautify log output
3481
3482 2001-08-04  Michael Natterer  <mitch@gimp.org>
3483
3484         * gtk/gtkitemfactory.c (gtk_item_factory_create_item):
3485         Need to show the image after adding it to the GtkImageMenuItem.
3486         This used to work without in testgtk because of the
3487         gtk_widget_show_all() at the end of the function.
3488         (Closes #54978).
3489
3490 Tue Jul 31 22:59:33 2001  Tim Janik  <timj@gtk.org>
3491
3492         * gtk/gtknotebook.c (gtk_notebook_get_child_property): 
3493         (gtk_notebook_set_child_property): fix finding of child's page,
3494         since we have to validly deal with labels and menus here as well.
3495         (gtk_notebook_get_child_property): fix warning.
3496         (gtk_notebook_class_init): property tab_pack is of type
3497         GTK_TYPE_PACK_TYPE (enum) not boolean.
3498         (gtk_notebook_find_child): don't always warn, we might be looking
3499         for a label or menu child.
3500         (gtk_notebook_map): fix mapping of panel.
3501
3502         * gtk/gtkwidget.c (gtk_widget_set_child_visible): always constrain
3503         widget's mapped state, regardless of the value being set equals
3504         old settings, since things like REALIZED(parent) or MAPPED(parent)
3505         may have changed since the old value was set. make it an error to
3506         invoke this function on a toplevel widget.
3507
3508 2001-07-31  Darin Adler  <darin@bentspoon.com>
3509
3510         * gdk/gdkprivate.h:
3511         * gdk/x11/gdkx.h:
3512         Put all mentions of GdkFont inside #ifndef GDK_DISABLE_DEPRECATED.
3513
3514         * demos/gtk-demo/menus.c: (do_menus): Cast to G_OBJECT, not
3515         GTK_OBJECT.
3516
3517 Tue Jul 31 15:34:57 2001  Jonathan Blandford  <jrb@redhat.com>
3518
3519         * gtk/gtktreeview.c (gtk_tree_view_remove_column): Whoops.  Stupid
3520         scoping error pointed out by matthiasc@poet.de.
3521
3522 2001-07-31  Sven Neumann  <sven@gimp.org>
3523
3524         * demos/gtk-demo/appwindow.c
3525         * demos/gtk-demo/item_factory.c
3526         * tests/testgtk.c: gtk_accel_group_attach() takes a GObject.
3527
3528 Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
3529
3530         * gtk/gtksignal.h (gtk_signal_handler_pending): corrected the wrong
3531         argument order for g_signal_has_handler_pending.
3532
3533 Sun Jul 29 17:14:01 2001  Tim Janik  <timj@gtk.org>
3534
3535         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): use g_file_test()
3536         instead of long deprecated g_scanner_stat_mode().
3537
3538 2001-07-29  Hans Breuer  <hans@breuer.org>
3539
3540         * gdk/makefile.msc : build in the backend dir after
3541         auto-generating files
3542
3543         * gdk/win32/gdkfont-win32.c (gdk_font_load) : reimplement
3544         with code from win32-production-branch.
3545
3546         *  gdk/win32/gdkwindow-win32.c : set the private->destroyed flag
3547         before calling DestroyWindow, which indirectly calls 
3548         gdk_window_destroy_notify ()
3549
3550         (performance patch merged from win32-production-branch)
3551         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_segments): 
3552         Use PatBlt() instead of LineTo() when possible (solid single-pixel pen, 
3553         R2_COPYPEN rop). It is claimed to be much faster.
3554
3555 Fri Jul 27 11:31:15 2001  Jonathan Blandford  <jrb@redhat.com>
3556
3557         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
3558         add an "attributes" property to the text renderer for ATK.
3559
3560 2001-07-26  Alex Larsson  <alexl@redhat.com>
3561
3562         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
3563         Initialize image->bits_per_pixel from the drawable, not from
3564         the root window.
3565
3566         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_get_depth):
3567         Fix cast. argument is an IMPL already.
3568
3569 2001-07-15  James Henstridge  <james@daa.com.au>
3570
3571         * gtk/gtkwindow.c (gtk_window_add_accel_group): cast to GObject.
3572         (gtk_window_remove_accel_group): same here.
3573         (gtk_window_key_press_event): same here.
3574
3575         * gtk/gtkwidget.c (gtk_widget_add_accelerator): cast to GObject.
3576         (gtk_widget_remove_accelerator): same here.
3577         (gtk_widget_remove_accelerators): same here.
3578
3579         * gtk/gtkplug.c (gtk_plug_accel_entries_changed): same here.
3580
3581         * gtk/gtkmenushell.c (gtk_menu_shell_key_press): cast to GObject
3582         instead of GtkObject.
3583
3584         * gtk/gtkmenu.c (gtk_menu_key_press): update since GtkAccelGroup
3585         now takes GObjects.
3586
3587         * gtk/gtkitemfactory.c (gtk_item_factory_propagate_accelerator):
3588         pass a GObject to gtk_accel_group_entries_from_object.
3589         (gtk_item_factory_create_item): s/accel_widget/accel_object/
3590
3591         * gtk/gtk-boxed.defs: remove GtkAccelGroup boxed def.
3592
3593         * gtk/gtkaccellabel.c: convert to handle GObject accel objects.
3594
3595         * gtk/gtkaccellabel.h: fix header to reflect that arbitrary
3596         GObjects can have accelerators set now.  Add compatibility
3597         defines.
3598
3599         * gtk/gtkmarshal.list: add missing marshallers.
3600
3601         * gtk/gtkaccelgroup.[ch]: convert to a GObject, and allow setting
3602         accelerators on plain GObjects.  gtk_accel_group_object_destroy
3603         has been converted into a weak reference, and
3604         gtk_accel_group_delete_entries is now a destroy notify for that
3605         piece of data.
3606
3607 2001-07-23  Ron Steinke  <rsteinke@w-link.net>
3608
3609         * gdk/gdkdraw.c: Added a check on the colormap depth to
3610         gdk_drawable_set_colormap()
3611         * gdk/x11/gdkimage-x11.c: combination of Matthias Clasen's
3612         patch to fix colorsel and my patch to fix gdk_drawable_get_image()
3613         for pixmaps without visuals (more specifically, bitmaps)
3614         * gdk/x11/gdkpixmap-x11.c: Fixed gdk_pixmap_new() so it
3615         doesn't set a colormap with the wrong depth
3616
3617
3618 2001-07-22  Anders Carlsson  <andersca@gnome.org>
3619
3620         * gtk/gtktreeview.c (gtk_tree_view_class_init): Replace the
3621         expander_height and expander_width properties with a single
3622         property, expander_size.
3623         (gtk_tree_view_init): Set the tab_offset to expander_size
3624         plus some padding.
3625         (gtk_tree_view_unrealize): Remove the expand/collapse
3626         timeout if it exists.
3627         (coords_are_over_arrow): Fix a small bug.
3628         (gtk_tree_view_motion_draw_column_motion_arrow): Use
3629         expander_size.
3630         (gtk_tree_view_draw_focus): Use "treeview" instead of
3631         "add-mode" as detail when drawing the focus.
3632         (gtk_tree_view_bin_expose): Use "treeview-drop-indicator"
3633         instead of "add-mode" as detail when drawing the focus.
3634         (gtk_tree_view_deleted): If we have a node currently being
3635         expanded or collapsed, remove the timeout and set the node 
3636         to NULL.
3637         (gtk_tree_view_queue_draw_arrow): New function that just
3638         redraws the arrow of a node.
3639         (gtk_tree_view_draw_arrow): Use expander_size instead of
3640         expander_width/expander_height, also pass a different
3641         expander_style to gtk_paint_expander depending on the 
3642         state of the node being drawn.
3643         (expand_collapse_timeout): New function for expanding 
3644         or collapsing a node depending on the previous state.
3645         (gtk_tree_view_real_expand_row): Add timeout and set 
3646         correct state for node being expanded.
3647         (gtk_tree_view_real_collapse_row): Add timeout and set
3648         correct state for node being collapsed.
3649
3650         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
3651         information about the node currently being expanded or
3652         collapsed, and also a timeout id.
3653
3654         * gtk/gtkstyle.h (struct _GtkStyleClass): Replace is_open
3655         with expander_style for draw_expander.
3656
3657         * gtk/gtkstyle.c (gtk_draw_expander): Replace is_open with
3658         expander_style.
3659         (create_expander_affine): New function for creating an 
3660         expander affine.
3661         (apply_affine_on_point): New function for applying an 
3662         affine to a point.
3663         (gtk_default_draw_expander): Modified to take expander_style
3664         instead of is_open, and to draw the rectangle rotated differently
3665         depending on the expander style.
3666         (gtk_paint_expander): Replace is_open with expander_style.
3667
3668         * gtk/gtkrbtree.h: Add expander states to GtkRBNodeColor.
3669
3670         * gtk/gtkenums.h: Add expander style enum.
3671
3672 2001-07-21  Jonas Borgström  <jonas@codefactory.se>
3673
3674         * gtk/gtktreemodel.c (gtk_tree_model_foreach): Check the return
3675         value from gtk_tree_model_get_iter, the model might be empty.
3676
3677 2001-07-20  Hans Breuer  <hans@breuer.org>
3678
3679         * gdk/win32/gdkinput-win32.c : gdk_device_get_history moved to
3680         gdk/gdkinput.c like the other backends
3681
3682         * gdk/win32/gdkinput-win32.h :
3683         * gdk/win32/gdkinput.c :
3684         * gdk/win32/gdkvisual-win32.c :
3685         * gdk/win32/gdkwin32.h : mechanical adaption to GdkDevice and
3686         GdkVisual GObjectification. UNTESTED for pen-devices because
3687         I simply have none.
3688
3689         * gdk/gdk.def :
3690         * gtk/gtk.def : updated externals
3691
3692         * gtk/gtkiconfactory.c :
3693         * gtk/gtkoldeditable.c : GError *error needs to be initialized (= NULL) 
3694         before passing &error to functions to avoid strange crashes
3695         
3696         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child) : is static
3697
3698         * gtk/gtkwidget.c (gtk_widget_get_child_visible): use g_return_val_if_fail
3699
3700         * gtk/makefile.msc.in : updated
3701
3702 Thu Jul 19 15:35:32 2001  Owen Taylor  <otaylor@redhat.com>
3703
3704         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
3705         Add property support. (#51858)
3706
3707 Thu Jul 19 14:56:33 2001  Owen Taylor  <otaylor@redhat.com>
3708
3709         * gtk/gtkaccellabel.c (gtk_accel_label_class_init) 
3710         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
3711         Use Shift/Ctrl instead of Shft/Ctl. (#53807)
3712
3713 Thu Jul 19 11:41:00 2001  Owen Taylor  <otaylor@redhat.com>
3714
3715         * gtk/gtkcolorsel.c: Add propery support (roughly
3716         based on patch from Lee Mallabone, #51014)
3717
3718         * gtk/gtkcolorsel.h: Mark gtk_color_selection_set_update_policy as
3719         deprecated, since we already g_warning() on it.
3720
3721 Thu Jul 19 14:24:34 2001  Owen Taylor  <otaylor@redhat.com>
3722
3723         * gtk/gtkentry.c (gtk_entry_set_positions): Fix
3724         typo that sometimes caused selection not to work properly.
3725
3726         * gtk/gtkentry.c (gtk_entry_grab_focus): Select text in
3727         entry when tabbing in. (#57743)
3728         
3729         * gtk/gtkentry.c (gtk_entry_motion_notify): If the
3730         user drags up above or down below the entry, move
3731         to the end or the beginning of the entry. (Suggestion
3732         from Jay Cox, #50940)
3733
3734         * gtk/gtkentry.c (gtk_entry_move_cursor): If we have
3735         a current selection, then when moving by chars or
3736         words, move to the end of the selection rather than
3737         from entry->current_pos. (Suggestion from Jay Cox,
3738         #50942)
3739         
3740 Thu Jul 19 12:14:28 2001  Owen Taylor  <otaylor@redhat.com>
3741
3742         * gtk/gtkwindow.c (gtk_window_set_decorated): Actualy
3743         set window->decorated. (Patch from Hidetoshi Tajima,
3744         #55846)
3745
3746 Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>
3747
3748         * gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
3749         the widget/child realization/mapping invariants.
3750
3751         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions 
3752         gtk_widget_[get/set]_child_visible() to control
3753         whether visible children of a mapped window are
3754         mapped.
3755
3756         * docs/widget_system.txt: Updated for changes in
3757         container contract, and addition of GTK_CHILD_VISIBLE.
3758
3759         * gtk/gtkcontainer.c: Add generic map()/unmap()
3760         functions that work for almost all containers.
3761
3762         * gtk/gtknotebook.c gtk/gtkpacker.c: Use 
3763         gtk_widget_set_child_visible() where necessary.
3764
3765         * gtk/*.c: Remove excess map(), unmap(), and 
3766         realization/mapping invariant enforcing code
3767         from many containers.
3768
3769 Wed Jul 18 19:51:45 2001  Owen Taylor  <otaylor@redhat.com>
3770
3771         * gtk/gtktextview.c (gtk_text_view_set_attributes_from_style): 
3772         Get the foreground color from 'text', nor 'fg'. (#57568)
3773
3774 Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>
3775
3776         * gtk/*.c: Patch from Matthias Clasen to remove remove
3777         all instances of g_return_if_fail (foo != NULL); that are
3778         immediately before a g_return_if_fail (GTK_IS_FOO (foo));
3779         since the second check catches the NULL anyways.
3780
3781 Wed Jul 18 18:23:05 2001  Owen Taylor  <otaylor@redhat.com>
3782
3783         * gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
3784         gtktreeview.c: Fix idles and timeouts to be properly surrounded by 
3785         GDK_THREADS_ENTER()/LEAVE() pairs.
3786
3787         * gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
3788         to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
3789         pairs. (Problem found by M. Meeks)
3790
3791 2001-07-18  Darin Adler  <darin@bentspoon.com>
3792
3793         * gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
3794         that we don't get a g_warning message every time we register a new
3795         icon size.
3796
3797         * gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
3798         using pixel variable of the correct type.
3799         
3800 Fri Jul 13 15:33:32 2001  Owen Taylor  <otaylor@redhat.com>
3801
3802         * gdk/gdkwindow.[ch]: Add a function gdk_window_get_internal_paint_info(),
3803         so that using X functions on a GdkWindow is possible, if
3804         a little hairy.
3805
3806         * gdk/gdkgc.c (gdk_gc_offset): Add a function to offset the clip
3807         and ts_origin of a GC, so that external parties can offset/restore
3808         a GC, when using gdk_window_get_internal_paint_info().
3809
3810 2001-07-17  Darin Adler  <darin@bentspoon.com>
3811
3812         * .cvsignore: Ignore the sgml directory made by gtkdoc.
3813         * demos/pixbuf-demo.c: (main): Use gtk_window_set_resizable
3814         instead of the deprecated gtk_window_set_policy.
3815         * demos/testpixbuf-scale.c: Add missing <stdlib.h> include.
3816         * gdk/gdkkeys.c: (gdk_keymap_class_init): Remove empty finalize
3817         function to get rid of warning and some code too.
3818         * gdk/x11/gdkfont-x11.c: (gdk_font_charset_for_locale): Add
3819         missing const.
3820         * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init_check): Remove
3821         unused local.
3822         * gdk/x11/gdkpango-x11.c: (gdk_pango_context_get): Add missing
3823         const.
3824         * gdk/x11/gdkselection-x11.c: (gdk_text_property_to_utf8_list),
3825         (gdk_utf8_to_compound_text): Add missing const.
3826         * gtk/gtkimage.c: (gtk_image_expose): Remove unused local.
3827         * gtk/gtkmenubar.c: (gtk_menu_bar_hierarchy_changed): Add missing
3828         cast and get rid of an unnecessary one.
3829         * gtk/gtksettings.c: (gtk_settings_notify): Remove unused local.
3830         * gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Remove unused
3831         local.
3832         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_build_level):
3833         Remove unused local.
3834         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_new): Add
3835         missing const.
3836         * tests/testsocket.c: (add_child): Add cast so the printf format
3837         doesn't make us implicitly depend on what integer type
3838         gtk_socket_get_id returns.
3839         * tests/testtextbuffer.c: Add missing const.
3840         * tests/testtreefocus.c: (main): Remove unused local.
3841         * tests/treestoretest.c: (iter_remove): Remove unused local.
3842         (uppercase_value): Remove unused function.
3843         (make_window): Add statement to quiet the compiler's uninitialized
3844         variable warning.
3845
3846 Sat Jul 14 12:47:35 2001  Tim Janik  <timj@gtk.org>
3847
3848         * gtk/gtkrange.c:
3849         (second_timeout): 
3850         (initial_timeout): 
3851         (update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
3852         (gtk_range_calc_layout): compute the new layout based on an
3853         adjustment->value being passed in as argument.
3854         (gtk_range_button_press): for button2 slider warps, first recalc
3855         the layout, then adjust the value. also, use update_slider_position()
3856         for adjusting the value, so we keep pixel quantisation at which we
3857         usually operate (upon motion or button releases). the reason for this
3858         is that, we can't change the adjustment upon button2 presses to a non
3859         quantised value and upon button2 release re-quantise the value since
3860         that'd alter the value even if we didn't get any motion events (causing
3861         unexpected scroll area warps upon release and/or slider pixel-jitter).
3862         (gtk_range_motion_notify): update the slider position from queried
3863         coordinates, not event coordinates.
3864
3865 Fri Jul 13 09:47:52 2001  Tim Janik  <timj@gtk.org>
3866
3867         * gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
3868         the default gc values are: width=0, CapBut, JoinMiter.
3869
3870 2001-07-13  Anders Carlsson  <andersca@codefactory.se>
3871
3872         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
3873         into account the xpad and ypad when calculating the width and the
3874         height of the pixbuf cel.
3875
3876 Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>
3877
3878         * gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group): 
3879         Rename to gtk_radio_menu_item_get_group(), add deprecated
3880         alias. (#57044)
3881
3882         * gtk/gtkfilesel.c: Indentation fix.
3883
3884 Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>
3885
3886         * gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias 
3887         Hasselmann to fix warnings in compat macros. 
3888         (#56773)
3889
3890         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix 
3891         stupid wrong cast added in last patch.
3892
3893 Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>
3894
3895         * gtk/gtkwidget.c: Replace a couple of inappropriate calls to 
3896         GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
3897
3898 Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>
3899
3900         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
3901         missing cast.
3902
3903         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
3904         NULL/FALSE return value confusion.
3905
3906         * gtk/gtkrange.c (coord_to_value): Fix division-by-zero
3907         problem when scrollbar completely fills range. (Patch
3908         from  Matthias Clasen, #57047)
3909
3910 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
3911
3912         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
3913         clean up when handling events for move-resize emulation.
3914         (Problem traced down by Matthias Clasen, #57271)
3915
3916 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
3917
3918         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
3919           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
3920           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
3921           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
3922           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
3923           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
3924           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
3925         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
3926
3927 2001-07-09  Peter Williams  <peterw@ximian.com>
3928
3929         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
3930         for when srcdir != builddir
3931
3932 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
3933
3934         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
3935         gtk_tree_model_get_iter_root.
3936
3937         * gtk/gtkliststore.c: Add a bunch of g_return statements.
3938         (gtk_list_store_iter_n_children): Fix up.
3939
3940         * gtk/gtktreestore.c: Add a bunch of g_return statements.
3941
3942 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
3943
3944         * gtk/gtkwidget.c (gtk_widget_class_init):
3945         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
3946         restore some workingness.
3947
3948         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
3949         handle of window type for input-only windows.
3950
3951 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
3952
3953         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
3954         Patch from Gregory Merchan to add 
3955         gtk_button_box_set_secondary(), which separates
3956         the child into a separate group from the normal
3957         buttons. (#56331)
3958
3959         * gtk/gtkdialog.c: Make help buttons secondary by
3960         default.
3961
3962         * gtk/gtkbbox.c: Added a child property "secondary".
3963
3964         * gtk/testgtk.c: Turn on the help button for the 
3965         color selector to check that it properly appears
3966         as secondary.
3967
3968 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
3969  
3970         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
3971         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
3972         Add gdk_set_pointer_hooks() to allow pointer-querying to
3973         be hooked by an event record/playback system like GERD.
3974         (#56914)
3975         
3976 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
3977
3978         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
3979         in the right value of initial_emission to
3980         gtk_widget_set_style_internal (#57091)
3981
3982 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
3983
3984         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
3985         Make compile.
3986
3987         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
3988         with calling gtk_widget_set_style_internal() with
3989         the old style, not the new style. (#56989)
3990
3991 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
3992
3993         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
3994           gtk/gtkwidget.c:
3995         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
3996         not GTK_WIDGET_GET_ANCESTOR ... see 
3997         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
3998         Indicate the best practice in the docs for gtk_widget_get_toplevel().
3999
4000         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
4001         so GtkPlug can give the correct signals when transforming
4002         from a child to a toplevel.
4003         
4004         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
4005         reparentation correctly.
4006
4007         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
4008         Propagate the previous_toplevel argument down properly.
4009
4010         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
4011         of wrong atr list.
4012
4013         * gtk/gtkplug.[ch]: Add an "embedded" signal.
4014
4015         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
4016         signals.
4017
4018         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
4019         functions gtk_plug_get_id(), gtk_socket_get_id(),
4020         to avoid the user having to worry about realization,
4021         and gdkx.h.
4022
4023         * tests/testsocket.c: Extend to try out the new signals
4024         and gtk_plug/socket_get_id().
4025
4026         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
4027         setting of underline attributes.
4028
4029         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
4030         DestroyNotify events from SubstructureNotifyMask
4031
4032         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
4033         Switch GDK_WINDOW_TYPE (window) as needed.
4034
4035         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
4036         allow creation of toplevel windows as children of
4037         foreign windows.
4038
4039         * gtk/gtkplug.c: Remove hacks involving changing private
4040         fields of GdkWindow.
4041
4042         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
4043         exactly the same signals and notification
4044         be emitted for local embedding as for inter-process
4045         embedding.
4046
4047 2001-07-04  James Henstridge  <james@daa.com.au>
4048
4049         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
4050
4051 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
4052
4053         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
4054         XEMBED embedding add a _XEMBED_INFO property to the
4055         client with version number and a "mapped" flags.
4056         Use the mapped flag instead of the racy MapRequestEvent
4057
4058         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
4059         code to reliably set things (when the child is a passive
4060         embedder participating in the XEMBED protocol) intead
4061         of just being a hack for embedding non-participating
4062         programs. Fix various bugs and race conditions.
4063         
4064         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
4065         work by simply making the GtkSocket the gtk parent
4066         of the GtkPlug. Set a flag in this case and make
4067         the GtkPlug work like a normal container by overriding
4068         methods such as check_resize and "chaining past" GtkWindow
4069         to GtkBin.
4070
4071         * gtk/gtkentry.c (gtk_entry_real_activate)
4072           gtk/gtkmain.c (gtk_propagate_event): 
4073         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
4074         
4075         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
4076         gtk_widget_get_ancestor):
4077         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
4078         might not give the expected result and recommend
4079         an alternative.
4080
4081         * tests/testsocket.c tests/testsocket_child.c
4082         tests/testsocket_common.c tests/Makefile.am: Extended
4083         to test different type of adding plugs to sockets
4084         (local,active,passive), and to test mapping/unmapping
4085         the plug.
4086
4087         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
4088         mark the window as destroyed until after we
4089         called _gdk_windowing_window_destroy().
4090         (_gdk_windowing_window_destroy() may use GDK functions
4091         on the window.)
4092
4093         * gdk/x11/gdkinput.c: Remove the check for finalization - 
4094         devices can be finalized under some circumnstances.
4095  
4096         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
4097         small problem with GDK_TYPE_DEVICE.
4098  
4099 2001-07-02  Havoc Pennington  <hp@pobox.com>
4100
4101         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
4102         use constants not atoms.
4103
4104 2001-07-02  James Henstridge  <james@daa.com.au>
4105
4106         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
4107         PANGO_TYPE_TAB_ARRAY.
4108
4109         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
4110         for PANGO_TYPE_TAB_ARRAY.
4111
4112         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
4113         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
4114
4115         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
4116         the file.  Remove Pango types from defs -- they are now defined in
4117         libpango.
4118
4119 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
4120
4121         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
4122
4123         * gtk/gtkobject.c (gtk_object_destroy): invoke
4124         g_object_run_dispose().
4125
4126         * gtk/gtkwindow.c: 
4127         * gtk/gtkwidget.c: 
4128         * gtk/gtkobject.c:
4129         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
4130         method.
4131
4132 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
4133
4134         * gtk/gtktypeutils.c (gtk_type_class): Remove
4135         change check for GTK_TYPE_OBJECT derivation to
4136         G_TYPE_OBJECTS - it's Tim-approved to use this 
4137         for arbitary objects.
4138
4139         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
4140         prefix gtk_container_dequeue_resize_handler().
4141
4142         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
4143         to the hierarachy_changed signal, since you otherwise
4144         have to always keep that around.
4145
4146         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
4147         for extra argument to hierarchy_changed.
4148
4149 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
4150
4151         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
4152         for style to mean "revert to default style"
4153
4154         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
4155           gtk_widget_restore_default_style): Make this functions
4156         deprecated aliases for gtk_widget_set_style (widget, NULL).
4157
4158         * gtk/gtkwidget.[ch]: Remove:
4159            gtk_widget_set_default_style ()
4160            gtk_widget_push_style ()
4161            gtk_widget_pop_style ()
4162         These functions interact are overriden by RC files, and
4163         thus virtually useless, and complicated.
4164
4165 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
4166
4167         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
4168         most of the previous global variables in gtkrc.c. This is
4169         in preparation for multi-head, since each screen can
4170         have different GtkSettings and RC information.
4171
4172         * gtk/gtkrc.[ch]: 
4173
4174         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
4175         GtkSettings parameter to GtkRcStyle::parse.
4176
4177         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
4178         Add two new settings gtk-theme-name, gtk-key-theme-name,
4179         for RC files that are loaded by name after reading
4180         the default RC files.
4181         
4182         * gtk/gtkrc.c: Allow priorities for styles, as wll as
4183         bindings.
4184
4185         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
4186         and use it by default for RC files loaded via 
4187         gtk-theme-name, gtk-key-theme-name.
4188
4189         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
4190         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
4191         tests/testgtkrc: Require pathnames to be absolute.
4192
4193         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
4194         the source when parsing, since the operation of looking up a
4195         pixmap from an RC file depends on the parsing context.
4196
4197         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
4198         reset RC styles on all widgets when files are reparsed.
4199
4200         * tests/testgtk.c (create_rc_file) 
4201           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
4202         Simplify, now that gtk_rc_reparse_all() resets styles on
4203         all widgets itself.
4204
4205         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
4206         return value.
4207
4208         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
4209         GtkSettings argument.
4210
4211         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
4212         gtk_settings_get_global().
4213
4214         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
4215         to get the appropriate GtkSettings for a widget. (For now,
4216         just gets the default GtkSetttings.) 
4217
4218         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
4219           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
4220         changes.
4221
4222         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
4223         getting a style for a path without actually having a widget.
4224         (Allows using a style for a subpart of a widget, for
4225         example.)
4226
4227         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
4228         the RC files to be reloaded for just one GtkSettings
4229         (not sure how useful this really is.)
4230
4231         * gtk/gtkrc.h: Deprecate
4232         gtk_rc_add_widget_name/widget_class/class_style
4233
4234 2001-06-30  Alex Larsson  <alexl@redhat.com>
4235
4236         * gdk/linux-fb/gdkinput-none.c:
4237         * gdk/linux-fb/gdkinput.c:
4238         * gdk/linux-fb/gdkinputprivate.h:
4239         Convert GdkDevice to a GObject.
4240
4241         * linux-fb/gdkprivate-fb.h:
4242         * linux-fb/gdkvisual-fb.c:
4243         Convert GdkVisual to a GObject.
4244
4245 2001-06-29  Alex Larsson  <alexl@redhat.com>
4246
4247         * gdk/gdkvisual.h:
4248         * gdk/gdkcolor.c:
4249         * gdk/x11/gdkx.h:
4250         * gdk/x11/gdkvisual-x11.c:
4251         Convert GdkVisual to a GObject.
4252
4253         * gdk/gdkinput.h:
4254         * gdk/gdkevents.c:
4255         * gdk/x11/gdkinputprivate.h:
4256         * gdk/x11/gdkinput-gxi.c:
4257         * gdk/x11/gdkinput-none.c:
4258         * gdk/x11/gdkinput-x11.c:
4259         * gdk/x11/gdkinput-xfree.c:
4260         * gdk/x11/gdkinput.c:
4261         Convert GdkDevice to a GObject.
4262
4263 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
4264
4265         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
4266         to just plain new, fixing the number of columns, and column types
4267         at creation time.
4268
4269         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
4270
4271         * gtk/gtkcellrenderertext.c
4272         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
4273         height to a specific font.
4274
4275         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
4276
4277         * tests/*c: change to work with new store models.
4278
4279 2001-06-29  Havoc Pennington  <hp@redhat.com>
4280
4281        * Throughout: fixes to compile with G_DISABLE_COMPAT
4282         (s/g_signal_connectc/g_signal_connect/,
4283         s/g_signal_newc/g_signal_new/,
4284         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
4285
4286 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
4287
4288         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
4289         add path argument to selection callbacks.
4290
4291 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
4292
4293         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
4294         walk through a model in a depth first manner, with the option to
4295         break out.
4296
4297 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
4298
4299         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
4300         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
4301         column and follow it when draged, rather than a location in the
4302         view. "expander_column" property and drawing functions changed
4303         accordingly.  Fixes bug #55942.
4304
4305         (gtk_tree_view_{set,get}_expander_column): Now works with a
4306         GtkTreeViewColumn* instead of int.
4307
4308 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
4309
4310         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
4311
4312 2001-06-28  Havoc Pennington  <hp@pobox.com>
4313
4314         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
4315         image data to the screen, using a server grab to avoid race
4316         conditions.
4317
4318         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
4319         check for NULL return from gtk_image_new_from_stock(), it never
4320         returns NULL.
4321         (gtk_item_factory_create_item): fix bug where we parsed the stock
4322         ID as an inline pixbuf
4323
4324         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
4325
4326         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
4327         support (should be using binding set here)
4328
4329         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
4330         support (should be using binding set here)
4331
4332         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
4333         support
4334
4335         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
4336
4337         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
4338
4339         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
4340
4341         * gtk/gtkimcontextsimple.c
4342         (gtk_im_context_simple_filter_keypress): keypad
4343
4344         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
4345
4346         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
4347
4348         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
4349
4350         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
4351         should be binding-setted)
4352
4353         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
4354
4355         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
4356
4357         * gtk/gtkcalendar.c: numeric keypad fixes
4358
4359         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
4360         support
4361
4362         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
4363         screwup
4364
4365         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
4366         clip the render area to the drawable's clip region in advance,
4367         so we don't get data from the server that we don't need.
4368
4369         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
4370         check return value of gdk_pixbuf_get_from_drawable(), fall back 
4371         to bilevel alpha if we can't get the pixbuf to composite against.
4372
4373         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
4374
4375         * gdk/gdkimage.c (gdk_image_get_colormap): add
4376         gdk_image_set_colormap, gdk_image_get_colormap
4377
4378         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
4379         take a region of the image, instead of converting the entire
4380         image.
4381
4382         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
4383         keybinding signal. Add default bindings for it. Add default
4384         handler for show_help that shows the tooltip for the widget.
4385
4386         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
4387         "close" keybinding signal, remove key press handler.
4388
4389         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
4390         it's not our usual practice to leave a deprecated function around
4391         with a runtime warning, plus we don't want it to appear in docs,
4392         plus if we make them yellow no one will want to change them
4393         anyhow.
4394
4395 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
4396
4397         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
4398         GTK_WIDGET_REALIZE() for resize queueing.
4399
4400         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
4401         GTK_WIDGET_REALIZE() for post event delivery destruction upon
4402         GDK_DESTROY.
4403         
4404         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
4405         sompensate for former (pre-2.0) connect_after() facility.
4406         (gtk_widget_send_expose): 
4407         (gtk_widget_event): assert the widget is realized, since event delivery
4408         to non-realized widgets is essentially a bug. event handlers should
4409         be able to unconditionally rely on widget->window (unless they
4410         emit events on their own which can trigger widget destruction).
4411         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
4412         logic. event delivery happens as follows:
4413         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
4414         b) if !was_handled in (a) and the widget is still realized, emit event-
4415            specific signal (RUN_LAST handler). returns was_handled.
4416         c) emission of GtkWidget::event-after for notification if the widget is
4417            still realized (regardless of was_handled from previous stages, no
4418            class handler). no return value.
4419         d) was_handled gets passed on to caller, to determine further
4420            propagation. if the widget got unrealized meanwhile, was_handled
4421            is returned as TRUE.
4422
4423         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
4424         gdk_event_get_coords().
4425
4426 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
4427
4428         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
4429         age 0, binary age 0. depend on glib 1.3.7.
4430
4431         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
4432
4433         * gtk/gtkmenubar.c: same here.
4434         
4435         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
4436
4437         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
4438
4439         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
4440         
4441         * gtk/gtkmenubar.c (add_to_window): likewise.
4442         
4443         * gtk/gtktextbtree.c: and here...
4444         
4445         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
4446         
4447         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
4448         
4449         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
4450         
4451         * gtk/gtktreeviewcolumn.c:
4452         (_gtk_tree_view_column_set_tree_view): yet again.
4453
4454         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
4455         signal connections without g_signal_connect_data().
4456         
4457         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
4458         demo of the matter.
4459         
4460         * demos/testpixbuf.c (main): running out of equality phrases for the
4461         ChangeLog, but had to adapt connections here as well.
4462         
4463         * demos/testanimation.c (progressive_timeout): and for the fun of it,
4464         tackled this the same way.
4465         
4466         * tests/testtext.c (create_view): ok, it's becoming a pain at this
4467         point, but had enough enery for one more fix.
4468
4469         * tests/testtreecolumns.c (main): stand up man, do your work!
4470
4471         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
4472         fix, either that's been all of it or CVS gtk is broken yet again.
4473         
4474 2001-06-29  James Henstridge  <james@daa.com.au>
4475
4476         The following changes correspond to bug #56812
4477
4478         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
4479         code for GdkDevice.
4480
4481         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
4482         GdkCursor.
4483
4484 2001-06-19  Havoc Pennington  <hp@pobox.com>
4485
4486         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
4487         for mapping a window without fooling with stacking order, but
4488         updating the "withdrawn" flag
4489
4490         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
4491         filtering as soon as possible, moving move resize and wmspec_check
4492         handling after the event filter.  Make default filter apply to all
4493         events, not just those with no GdkWindow wrapped around the X
4494         window. Fix a FIXME about how the window could be a pixmap using 
4495         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
4496
4497         Also, be robust against events not on a known GdkWindow.
4498
4499         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
4500         gdk_x11_ungrab_server): export reference-counted server grabs, so
4501         other people can grab server over a GDK function that also does
4502         so.
4503
4504 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
4505
4506         * gtk/gtktreeviewcolumn.c
4507         (gtk_tree_view_column_pack_start_cell_renderer): New function to
4508         reflect that you can (hypothetically) pack cell renderers into a
4509         column.
4510         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
4511         (gtk_tree_view_column_cell_is_visible): Move more functionality to
4512         the column.
4513         (gtk_tree_view_column_cell_can_focus): Move more functionality to
4514         the column.
4515
4516         * gtk/gtktreeview.c: Move to use new column-packing code.
4517         (gtk_tree_view_real_expand_row): remove totally braindead code.
4518         (gtk_tree_view_real_collapse_row): ditto.
4519
4520 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
4521
4522         * gtk/gtktreeviewcolumn.c: Fix a typo.
4523         
4524 2001-06-26  Joel Becker  <jlbec@evilplan.org>
4525
4526         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
4527           at the end of the file
4528
4529 2001-06-26  Havoc Pennington  <hp@redhat.com>
4530
4531         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
4532
4533 2001-06-26  Havoc Pennington  <hp@redhat.com>
4534
4535         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
4536         property
4537
4538 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
4539
4540         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
4541         stupid missing statement
4542
4543         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
4544         private function for ATK.  It notifies you of how many _visible_
4545         children are deleted when a node is deleted.  Should be used by
4546         atk only.
4547
4548 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
4549
4550         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
4551         Use new pango_context_get_metrics() to fix problems
4552         with font lists in descriptions. (#56184, reported by
4553         Jonas Borgström)
4554
4555 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
4556
4557         * gtk/gtkiconfactory.c:
4558         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
4559         item factory so inlined pixbufs actually work.
4560
4561 2001-06-25  Havoc Pennington  <hp@redhat.com>
4562
4563         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
4564         s/RESIZEABLE/RESIZABLE/
4565
4566         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
4567
4568 2001-06-25  Alexander Larsson  <alexl@redhat.com>
4569
4570         * configure.in:
4571         Added --enable-fbmanager. This is some experimental code
4572         that lets several GtkFB apps coordinate their access to the
4573         framebuffer.
4574         
4575         * acconfig.h:
4576         Added ENABLE_FB_MANAGER.
4577
4578         * gdk/linux-fb/Makefile.am:
4579         Added gdkfbmanager and gdkfbswitch.
4580
4581         * gdk/linux-fb/gdkkeyboard-fb.c:
4582         * gdk/linux-fb/gdkmouse-fb.c:
4583         * gdk/linux-fb/gdkprivate-fb.h:
4584         Split device init and open so that
4585         they can be opened and closed while switched
4586         away.
4587
4588         * gdk/linux-fb/gdkmain-fb.c:
4589         Add the basic manager communication.
4590
4591         * gdk/linux-fb/gdkrender-fb.c:
4592         Don't update to the shadow fb if we're
4593         blocked by the fb manager.
4594
4595 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
4596
4597         * docs/Changes-2.0.txt: Add note about child property
4598         changes.
4599
4600 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
4601
4602         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
4603         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
4604
4605         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
4606         with un'reffing wrong list reported by Jeff Franks.
4607
4608         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
4609
4610         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
4611         for the default icon. Remove inline XPM.
4612
4613         * gtk/gtkstock.h gtk/gtkiconfactory.c:
4614         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
4615         is used for GTK_STOCK_DND, but it is a bit too small.)
4616
4617         * gtk/stock-icons/stock_dnd_multiple.png
4618         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
4619
4620         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
4621         TRUE when starting a drag. In other cases, we are
4622         just observing. (#52995)
4623
4624         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
4625         function to set the icon for a drag from a GdkPixbuf
4626         or stock ID.
4627
4628         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
4629         Likewise, for drag sources.
4630
4631         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
4632         (Now should be done using the stock system.)
4633
4634 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
4635
4636         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
4637         Removed - didn't work and not particularly useful anyways
4638         if it did. 
4639
4640 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
4641
4642         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
4643         introduced last night that was making things decidedly not work.
4644
4645         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
4646         so that we have getter/setter pairing everywhere it makes
4647         sense. (#55767)
4648
4649         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
4650         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
4651         deprecated compat macro. (#55516)
4652
4653         * gtk/gtklabel.[ch]: Add functions
4654         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
4655         gtk_label_set_label(), which mirror the property API for GtkLabel.
4656         Make gtk_label_get_attributes() only reflect the attributes
4657         set by gtk_label_set_attributes.
4658
4659         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
4660         from gtk_notebook_set_page().
4661
4662 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
4663
4664         * configure.in: Fix tests for XShm.h.
4665
4666         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
4667         gdk_image_new() by use of goto, properly use g_object_unref().
4668
4669 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
4670
4671         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
4672         calls, as GdkImage is an object. these should be g_obejct_unref()
4673         instead but that won't work because of the g_error() statement
4674         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
4675         to spot these places.
4676
4677 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
4678
4679         * modules/input/gtkimcontextxim.c: Fixup some problems with 
4680         text length handling in error cases.
4681
4682         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
4683         a bit to make test actually warn on attempt to allocation
4684         a negative size. (#56101, Matthias Clasen)
4685
4686 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
4687
4688         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
4689         noticed by Brian Cameron.
4690         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
4691         Cameron.
4692
4693 2001-06-22  Hans Breuer  <hans@breuer.org>
4694
4695         * gdk/gdk.def : updated externals
4696
4697         * gdk/win32/gdkdrawable-win32.c : corrected some casts
4698         in GDK_NOTEs
4699
4700         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
4701         to translate coordinates to the internal > 16 bit system
4702         Try to handle WM_WINDOWPOSCHANGED to get better performance for
4703         when moving/resizing
4704
4705         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
4706         and gdk_keymap_get_direction (). The latter is untested for
4707         the RTL case
4708
4709         * gtk/gtk.def : updated externals
4710
4711         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
4712         from pango_language_from_string (), not an already freed pointer
4713
4714         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
4715         binary (-kb) to be useable on windoze
4716  
4717 2001-06-21  Alexander Larsson  <alexl@redhat.com>
4718
4719         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
4720         Update to new PangoLanguage changes.
4721         
4722         * gtk/gtkwindow-decorate.c:
4723         * gtk/gtkwindow.[ch]:
4724         Added setting argument to gtk_window_set_has_frame ()
4725         
4726 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
4727
4728         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
4729         the case without XKB properly.
4730
4731         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
4732         unused gtk_rc_auto_parse variable.
4733
4734         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
4735         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
4736         longer needed with GdkPixbuf.
4737
4738         * gtk/gtkrc.c (_gtk_rc_init): Make private.
4739
4740 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
4741
4742         * gtk/gtkentry.h: Mark deprecated functions with
4743         GTK_DISABLE_DEPRECATED.
4744
4745 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
4746
4747         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
4748
4749         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
4750
4751         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
4752           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
4753           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
4754           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
4755           to recent changes in Pango.
4756
4757         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
4758           to test whether the basic engine honors them.
4759
4760 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
4761
4762         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
4763         gtk_container_child_get_property().
4764
4765 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
4766
4767         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
4768         (gtk_tree_view_move_cursor_page_up_down): implement.
4769
4770 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
4771
4772         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
4773         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
4774         don't use automatic fixed size buffer for printf-ing floats, doubles
4775         can expand to really _huge_ strings, use g_strdup_printf() instead.
4776
4777 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
4778
4779         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
4780         construct property in 1.2 and still needs to be.
4781
4782         * gtk/gtkwidget.c: "composite_child" is not a settable property.
4783
4784 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
4785
4786         * gtk/gtkliststore.c (gtk_list_store_clear): 
4787         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
4788         clear a model.
4789
4790 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
4791
4792         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
4793
4794         * gtk/Makefile.am:
4795         * gtk/gtk.h: disabled GtkPacker compilation.
4796
4797         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
4798
4799         * gtk/gtknotebook.c:
4800         * gtk/gtktable.c:
4801         * gtk/gtkbox.c: ported this over to child properties.
4802
4803         * gtk/gtksettings.c: fetch class properties via
4804         g_object_class_list_properties().
4805
4806         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
4807         child arg interface. use gobjectnotifyqueue.c for child property
4808         notification.
4809
4810         * gtk/gtkwidget.[hc]: provide necessary means for container child
4811         properties, i.e. ::child_notify signal,
4812         gtk_widget_freeze_child_notify(),
4813         gtk_widget_child_notify(),
4814         gtk_widget_thaw_child_notify().
4815
4816         * tests/testgtk.c: removed inferior property handling code, for
4817         property editing, a generic module should be used, and GLE
4818         coincidentally fullfills that purpose.
4819
4820         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
4821         needs to be adapted to g_object_class_list_properties() before this
4822         builds again.
4823
4824 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
4825
4826         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
4827         test if a node is expanded.
4828
4829 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
4830
4831         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
4832         where collapsing a selected row would result in the cursor/anchor
4833         getting screwed up.
4834
4835 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
4836
4837         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
4838         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
4839         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
4840         Now I can really reorder/sort all Store widgets.  treesorttest
4841         seems to just work now.
4842         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
4843         testtreesort worked through a big coincidence all this time.
4844         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
4845         code.
4846         * tests/testtreecolumns.c: Big 'ol warning at the top letting
4847         people know that this code should never ever ever be copied.
4848
4849 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
4850
4851         * gtk/gtkwindow.h: Fixed a small typo, it should be
4852         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
4853         on line 134.
4854
4855 2001-06-14  Havoc Pennington  <hp@redhat.com>
4856
4857         Docs fixups, and:
4858         
4859         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
4860         GTK_DISABLE_DEPRECATED
4861
4862 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
4863
4864         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
4865         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
4866         finish it off tonight, though it basically works now when it's a
4867         list.  Also, I have a sinking feeling neither GtkTreeStore or
4868         GtkListStore actually resort when adding a new item.  I'll look
4869         into it.
4870
4871 2001-06-14  Havoc Pennington  <hp@redhat.com>
4872
4873         * demos/gtk-demo/main.c (load_file): fix bug identified by
4874         warnings I just added to gtktextbuffer
4875
4876 2001-06-14  Havoc Pennington  <hp@redhat.com>
4877
4878         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
4879
4880         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
4881
4882         * gtk/gtktextbtree.c: don't leak node data all over the place.
4883
4884         * demos/gtk-demo/main.c (main): create fontify tags for the right
4885         buffer
4886
4887         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
4888         to mention tags in the same table can't have the same name,
4889         suggested by Skip Montanaro
4890
4891 2001-06-11  Havoc Pennington  <hp@redhat.com>
4892
4893         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
4894         for trying to add two tags with same name to the tag table
4895
4896         * demos/gtk-demo/main.c (main): fix colors ;-)
4897
4898 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
4899
4900         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
4901         that allows grouping together multiple windows so that grabs
4902         within that set of windows only affect those windows.
4903
4904         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
4905         signal for notification when a widget becomes shadowed
4906         by a grab or is no longer shadowed by a grab.
4907
4908         * gtk/gtkwidget.c (gtk_widget_propagate_state)
4909           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
4910         insenstive widgets to maintain a grab.
4911
4912 2001-06-14  Alexander Larsson  <alexl@redhat.com>
4913
4914         * docs/README.linux-fb:
4915         Add some example config files that can be used with the URW fonts.
4916         
4917         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
4918         Set up the color ramps for DirectColor mode.
4919
4920 2001-06-11  Havoc Pennington  <hp@redhat.com>
4921
4922         * Release 1.3.6
4923          
4924 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
4925
4926         * gdk/linux-fb/gdkwindow-fb.c:
4927         Unify shaped window code and make it repaint the area that used
4928         to be part of the shape, but isn't anymore.
4929
4930 2001-06-11  Havoc Pennington  <hp@redhat.com>
4931
4932         * NEWS: Updates
4933
4934         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
4935
4936         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
4937         
4938 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
4939
4940         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
4941         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
4942         passes zero instead, so do we.
4943         
4944 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
4945
4946         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
4947         Deep copy dash_list too.
4948         (_gdk_fb_gc_new): Set default cap_style before
4949         setting values.
4950
4951 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
4952
4953         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
4954         gdk_keymap_get_direction): New functions.
4955
4956 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
4957
4958         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
4959         gtk_tree_model_get_flags by adding a second flag for atk.
4960
4961         * gtk/gtktreemodel.c: make cursor behavior interact better with
4962         mouse presses.
4963
4964 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
4965
4966         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
4967         expand_row/collapse_row to be 2 signals each -- test_expand_row
4968         and row_expanded as well as test_collapse_row and row_collapsed.
4969
4970 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
4971
4972         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
4973         signal name to be changed instead of selection_changed.
4974
4975 2001-06-08  Havoc Pennington  <hp@redhat.com>
4976
4977         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
4978         "scroll_offset" property for notification when the layout offsets
4979         may have changed
4980         (gtk_entry_adjust_scroll): add notify for scroll_offset
4981         (gtk_entry_layout_index_to_text_index): function to compensate for
4982         preedit string when doing coordinate stuff on the entry's layout
4983         (gtk_entry_text_index_to_layout_index): inverse function
4984         (gtk_entry_get_layout_offsets): hook to get current position of
4985         the layout      
4986         (gtk_entry_get_layout): hook to get the layout itself.
4987
4988         * gtk/gtklabel.c (gtk_label_get_layout): new function
4989
4990 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
4991
4992         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
4993         keybinding.
4994         (gtk_tree_view_focus): Fix merge conflict.
4995
4996 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
4997
4998         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
4999         clean up cursor handling.
5000
5001 2001-06-08  Havoc Pennington  <hp@redhat.com>
5002
5003         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
5004         function
5005
5006         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
5007         this function
5008
5009 2001-06-08  Alex Larsson  <alexl@redhat.com>
5010
5011         * gtk/gtkcompat.h.in:
5012         Added compat macros for all old GTK_TYPE_GDK_xxx types.
5013         Fixes bug #52892
5014
5015 2001-06-08  Havoc Pennington  <hp@redhat.com>
5016         
5017         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
5018         parent still
5019
5020 2001-06-08  Havoc Pennington  <hp@redhat.com>
5021
5022         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
5023         don't call g_list funcs on GSList
5024
5025         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
5026         gtk_container_focus(), since some widgets have focusable locations
5027         which are not other widgets. These widgets should not have to be 
5028         containers just to manage the focus. For example, GtkHSV is
5029         currently a container for no good reason. Also, this cleans
5030         up the "if (is_container && is_sensitive && is_drawable)
5031         container_focus ()" mess in widget implementations.
5032
5033         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
5034         function, and have it just call gtk_widget_child_focus().
5035
5036         * gtk/gtkhsv.c: derive from widget not container
5037         
5038         Throughout: fix to reflect GtkContainer::focus change
5039         
5040 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
5041
5042         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
5043         range.  Fix bug #55921
5044
5045         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
5046         (#55920).
5047
5048 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
5049
5050         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
5051         and gdk_keymap_get_current_direction().
5052
5053         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
5054           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
5055         the current locked group, use it to set the keymap
5056         direction.
5057
5058         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
5059         to determine whether we draw a split cursor or use
5060         a jumping cursor based on the current direction.
5061
5062         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
5063         Obey the split cursor setting. 
5064
5065 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
5066
5067         * gtk/gtkimmulticontext.c (activate_cb): Only activate
5068         when toggling on, not when toggling off... (#55906)
5069
5070 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
5071
5072         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
5073         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
5074         in docs. (#55812, Vitaly Tishkov)
5075
5076 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
5077
5078         * demos/gtk-demo/main.c (create_tree): Changed signal name from
5079         selection_changed to changed in signal connection to GtkTreeSelection,
5080         also used g_signal_connectc since GtkTreeSelection is now a GObject.
5081
5082 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
5083
5084         * gtk/gtktreeselection.c: Now it's a GObject instead of a
5085         GtkObject.  The GtkTreeSelection::selection_changed signal is now
5086         the GtkTreeSelection::changed signal.
5087
5088         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
5089         object.
5090
5091         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
5092         object.
5093
5094 2001-06-07  Havoc Pennington  <hp@redhat.com>
5095
5096         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
5097
5098 2001-06-07  Havoc Pennington  <hp@redhat.com>
5099         
5100         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
5101         (not tested yet because with absolute path to srcdir I can't build
5102         atk, but it was broken anyway so this may help) 
5103
5104 2001-06-07  Havoc Pennington  <hp@redhat.com>
5105
5106         * configure.in: output m4macros/Makefile
5107         
5108 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
5109
5110         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
5111         buttons.  Fixes #55460 reported by matthiasc@poet.de.
5112
5113 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
5114
5115         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
5116         expansion/collapsing so it only happens in one place.
5117         (gtk_tree_view_real_expand_row): ditto.
5118
5119 2001-06-07  Havoc Pennington  <hp@redhat.com>
5120
5121         * tests/Makefile.am: add missing -I flag
5122
5123         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
5124
5125         * configure.in: use pkg-config to see if GModule is
5126         supported; fix to properly turn on included loaders 
5127         when GModule isn't supported; don't use AC_CHECK_LIB 
5128         when libs are not installed yet
5129
5130         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
5131
5132         * Makefile.am (SUBDIRS): add m4macros subdir
5133
5134         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
5135         dependencies also.
5136
5137 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
5138
5139         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
5140         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
5141
5142 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
5143
5144         * gtk/gtktreeview.c
5145         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
5146         bindings to expand and collapse rows.
5147         (gtk_tree_view_real_select_cursor_parent): New key binding.
5148         (gtk_tree_view_real_toggle_cursor_row): New key binding.
5149
5150         * gtk/gtkmarshal.list: new
5151         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
5152
5153 2001-06-06  Havoc Pennington  <hp@redhat.com>
5154
5155         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
5156
5157         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
5158         Down to move visually rather than logically, since it confuses 
5159         people. Add -/+ and Ctrl--/+ bindings for logical movement.
5160
5161 2001-06-06  Alex Larsson  <alexl@redhat.com>
5162
5163         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
5164         Fix up error messages.
5165
5166 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
5167
5168         * gtk/gtktooltips.h: Include gtkwidget.h 
5169         (#55798, Karl Nelson)
5170
5171         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
5172         a valid latin-1 character. (Marc Lehmann, #35467)
5173
5174         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
5175         (Marc Lehmann, #35467)
5176         
5177 2001-06-05  Alex Larsson  <alexl@redhat.com>
5178
5179         * demos/gtk-demo/appwindow.c (do_appwindow):
5180         Don't swap the order of the args to gtk_widget_destroyed.
5181
5182         * tests/testgtk.c (destroy_properties):
5183         Don't crash when the properties window is destroyed.
5184
5185         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
5186         Use with_mnemonics to handle the case of stock items with
5187         underscores in them.
5188
5189 2001-06-05  Havoc Pennington  <hp@redhat.com>
5190
5191         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
5192         gtk_text_iter_reorder
5193
5194 2001-06-05  Havoc Pennington  <hp@redhat.com>
5195
5196         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
5197
5198 2001-06-05  Havoc Pennington  <hp@redhat.com>
5199
5200         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
5201         to the range that was set
5202
5203         * gtk/gtkrange.c: add value_changed signal, primarily 
5204         intended for use with GtkScale
5205         (gtk_range_set_increments): new function
5206         (gtk_range_set_range): new function with weird name
5207         (gtk_range_set_value): new function
5208         (gtk_range_get_value): new function
5209
5210         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
5211         from gtk_spin_button_get_value_as_float(). Compat #define
5212         added for get_value_as_float.
5213
5214         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
5215
5216         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
5217
5218 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
5219
5220         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
5221
5222 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
5223
5224         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
5225
5226         * tests/testgtk.c (create_tooltips): Remove usage of
5227         gtk_widget_set().
5228
5229 2001-06-05  Havoc Pennington  <hp@redhat.com>
5230
5231         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
5232
5233         Applying patch from Jeff Franks, with function docs added.
5234         
5235         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
5236         remove call to set_mnemonic_widget, change docs a bit.  
5237
5238         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
5239         new function
5240
5241         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
5242         new function
5243
5244         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
5245
5246         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
5247         function
5248         (gtk_radio_button_new_with_mnemonic_from_widget): new function
5249
5250         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
5251         new function
5252
5253         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
5254         function        
5255
5256         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
5257         auto-selection of mnemonic widget.
5258
5259 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
5260
5261         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
5262         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
5263         (gtk_tree_view_column_set_min_width): ditto.
5264
5265 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
5266
5267         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
5268         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
5269
5270 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
5271
5272         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
5273         gtk_clist_thaw().
5274
5275 2001-06-04  Havoc Pennington  <hp@pobox.com>
5276
5277         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
5278 r       eleases for buttons 6, 7
5279
5280 2001-06-04  Havoc Pennington  <hp@redhat.com>
5281
5282         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
5283         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
5284         #55562
5285
5286 2001-06-04  Havoc Pennington  <hp@redhat.com>
5287
5288         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
5289         where text_view->layout == NULL by assuming its size is 0, 
5290         i.e. same as if we haven't done any reflow. Reported by 
5291         Hidetoshi Tajima #55448 
5292
5293 2001-06-04  Havoc Pennington  <hp@redhat.com>
5294
5295         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
5296         and 7 for scroll left/right, from Thomas Broyer
5297
5298 2001-05-10  Havoc Pennington  <hp@redhat.com>
5299
5300         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
5301         we need to parse the xsetting as if it were an RC file string.
5302
5303         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
5304         value of palette from settings, not from static variable
5305
5306         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
5307         xsettings translation table
5308
5309         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
5310         hardcoding the toolbar style conflicts with new customizable 
5311         toolbar style philosophy
5312         (gtk_toolbar_class_init): add settings for default toolbar style;
5313         these are used unless the app specifically forces a toolbar style
5314
5315         * gtk/gtksettings.c (settings_install_property_parser): only
5316         return at the start if we warn and parser == NULL
5317
5318         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
5319         palette changed handler so we don't notify dead color selections
5320
5321         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
5322         xthickness/ythickness of 0 or 1 properly 
5323         (gtk_default_draw_resize_grip): clear the background behind the
5324         resize grips, and align to bottom right if we square the 
5325         area to be drawn.
5326
5327         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
5328         statusbar label to 1, so it doesn't make toplevels resize oddly
5329         (gtk_statusbar_size_request): add grip size to request
5330         (gtk_statusbar_size_allocate): hack so the hbox still works with 
5331         the grip size in the request
5332
5333         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
5334         bug where showing all on a toplevel makes the toolbar 
5335         button text appear despite the toolbar mode
5336
5337         * gtk/gtkmenubar.c: add internal padding style property
5338
5339         * gtk/gtktoolbar.c: Add internal padding style property; add
5340         shadow type style property
5341
5342         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
5343         state; and put Container::border_width outside the frame
5344
5345         * gtk/gtktextview.c: don't draw focus rectangle if we're in
5346         interior focus mode, we just use blinking cursor
5347
5348 2001-06-04  Havoc Pennington  <hp@redhat.com>
5349
5350         * configure.in: Make gdk-pixbuf have same version number as GTK
5351
5352 2001-06-04  Havoc Pennington  <hp@redhat.com>
5353
5354         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
5355         digits greater than 6. If there actually are limits (which there
5356         likely aren't), should clamp to them not warn.
5357         (gtk_spin_button_new_with_range): don't take log of 0
5358         (gtk_spin_button_size_request): use digits to compute size
5359         request, rather than step increment.
5360
5361         * tests/testgtk.c (create_spins): test larger values of digits
5362         
5363         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
5364         font on map not expose, so we don't get weirdness during scrolling
5365
5366 2001-06-04  Havoc Pennington  <hp@redhat.com>
5367
5368         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
5369         Sam Solon, bug #54577, update value even if not drawable.
5370
5371 2001-06-04  Havoc Pennington  <hp@redhat.com>
5372
5373         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
5374         SCROLL_LEFT, reported by Thomas Broyer.
5375
5376 2001-06-04  Havoc Pennington  <hp@redhat.com>
5377
5378         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
5379         Process updates immediately, to prevent funny lag effect
5380         when scrolling, at some mild potential efficiency cost.
5381
5382 2001-06-04  Havoc Pennington  <hp@redhat.com>
5383
5384         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
5385         slider on the click.
5386
5387 2001-06-03  Havoc Pennington  <hp@pobox.com>
5388
5389         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
5390         hscale/vscale details, so we can use it for scrollbar as well.
5391
5392         * tests/testgtk.c (reformat_value): honor digits from GtkScale
5393
5394         * gtk/gtkenums.h (GtkTroughType): Remove this enum
5395         (GtkScrollType): add START and END from GtkTroughType
5396
5397         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
5398         its x/y arguments
5399
5400         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
5401         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
5402         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
5403         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
5404         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
5405
5406         Notable changes in the process:
5407          
5408         - stepper_size style property is the height for vertical 
5409           ranges, width for horizontal; the other dimension matches
5410           the trough size
5411         - add ability to do NeXT-style steppers (and several other styles
5412           that don't make any sense)
5413         - added min_slider_length, fixed_slider_length properties to
5414           GtkScrollbar
5415         - cleaned some private (or at least useless) functions out of
5416           gtkscale.h    
5417         - moved bindings to GtkScale from subclasses, even arrow keys,
5418           since blind users don't know scale orientation.
5419         - change move_slider action signal to use new GtkScrollType,
5420           remove GtkTroughType argument
5421         - digits rounds the values a range will input to the given 
5422           number of decimals, but will not try to force adjustment 
5423           values set by other controllers. That is, we no longer
5424           modify adjustment->value inside a value_changed handler.
5425         - added getters for GtkScale setters
5426         - middle-click begins a slider drag
5427         
5428 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
5429
5430         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
5431         getting the focus code to work.
5432         (gtk_tree_view_class_init): Add a bunch of keybindings.
5433
5434         * gtk/gtktreeviewcolumn.c
5435         (gtk_tree_view_column_set_cell_data_func):
5436         s/GtkCellDataFunc/GtkTreeCellDataFunc.
5437         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
5438         of "properties_changed" to help justify the death of the latter
5439         signal. (-:
5440
5441         * tests/testtreefocus.c (main): Let some columns be focussable to
5442         test focus better.
5443
5444 2001-06-01  Havoc Pennington  <hp@redhat.com>
5445
5446         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
5447         
5448         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
5449         overwrite in overwrite mode if we already deleted the selection
5450         and replaced it with new text.  
5451
5452         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
5453         selection to an empty range, clear the clipboard if we owned it.
5454         (gtk_label_set_selectable): give up selection if we become
5455         unselectable.
5456         (gtk_label_state_changed): override state changed to unselect text
5457         when insensitive
5458         (get_text_callback): add paranoia check that indexes aren't
5459         outside of label->text
5460         (gtk_label_select_region): make -1 for start_offset mean "end of
5461         label," for consistency with GtkEditable
5462
5463         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
5464         GTK_DIALOG_NO_SEPARATOR flag
5465
5466 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
5467
5468         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
5469         notifications on non-existant "enable_arrow_keys".
5470         (#53753, Skip Montanaro)
5471
5472 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
5473
5474         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
5475         GDK_TYPE_RECTANGLE.
5476
5477         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
5478         of allocation argument be GDK_TYPE_RECTANGLE.
5479
5480 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
5481
5482         * gtk/gtkoptionmenu.c: Account for the fact that the border
5483         width is _outside_ the window. (Fixes #54585, bug found
5484         by Bastien Nocera.)
5485
5486 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
5487
5488         * gtk/gtksettings.c (gtk_settings_get_property): Validate
5489         value from GDK settings against parameter spec.
5490
5491         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
5492         to temporary values and use g_value_transform(), since
5493         thinking that GValue was going to be easy or efficient
5494         to use was, of course, a mistake.
5495
5496         * gtk/gtksettings.c: Add cursor blink setting.
5497         
5498         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
5499
5500         * gtk/gtkentry.c: Add cursor blinking.
5501
5502         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
5503         cursor blink global settings.
5504
5505         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
5506         for :text_position in places where it is missing.
5507
5508 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
5509
5510         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
5511
5512 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
5513
5514         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
5515         not pkg-config. (#51032)
5516
5517         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
5518         (fixes #51952, James Henstridge)
5519         
5520 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
5521
5522         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
5523         Rename to the more correct gtk-go-up.
5524
5525         * gtk/stock-icons/stock_menu_sort_ascending.png:
5526         Added new file.
5527         
5528         * gtk/stock-icons/stock_menu_sort_descending.png:
5529         Changed to show descending instead of ascending.
5530
5531         * gtk/gtkiconfactory.c:
5532         Added menu size icon to sort ascending.
5533
5534         * gtk/stock-icons/Makefile.am:
5535         Added stock_menu_sort_ascending.png.
5536         
5537         * gtk/gtkseparatormenuitem.c:
5538         Use correct typenames.
5539
5540 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
5541
5542         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
5543         gulong as in GSignal.
5544
5545 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
5546
5547         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
5548         instances of GtkCellRenderer in code (all but dnd icon code).
5549         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
5550         there, and I can do multiple Cells per column.
5551
5552         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
5553
5554         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
5555         when model was unreffed prior to removing the row reference.
5556
5557 2001-05-25  Havoc Pennington  <hp@redhat.com>
5558
5559         * gtk/gtkiconfactory.c: fix so that default icons are created if 
5560         you call gtk_stock_list_ids()
5561
5562         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
5563         in list
5564
5565 2001-05-25  Havoc Pennington  <hp@redhat.com>
5566
5567         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
5568         set can render without falling back to missing image icon
5569
5570         * gtk/gtktextview.c (gtk_text_view_size_request): request full
5571         size of text, instead of random values
5572
5573         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
5574         size of tree view, instead of random values
5575
5576         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
5577         image in an appropriate size
5578
5579         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
5580         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
5581
5582         Throughout: fix GTK_STOCK_BUTTON_ instances
5583         
5584         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
5585         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
5586         Add a bunch of new stock items/icons
5587
5588         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
5589         new function, convenience for inserting columns with a data func
5590
5591         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
5592         (_gtk_icon_factory_list_ids): use list of all factories to
5593         generate a list of all known IDs
5594
5595         * gtk/gtkstock.c (gtk_stock_list_ids): replace
5596         gtk_stock_list_items() with a function that returns all IDs known
5597         including those for GtkIconFactory.
5598
5599 2001-05-25  Hans Breuer  <hans@breuer.org>
5600
5601         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
5602         work -> check boxes and radio buttons are drawn now, even on win9x.
5603         Improved line settings a bit, still no clue how to get really dotted
5604         lines on win9x, on NT it's PS_ALTERNATE.
5605
5606         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
5607         GDK_HINT_MIN_SIZE as well
5608
5609         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
5610
5611         * gtk/gtk.def : updated
5612
5613         * gtk/gtktreeprivate.h : change column_drop_func to be a function
5614         pointer not a function pointer pointer
5615
5616         * tests/testdnd.c : include <stdlib.h> for putenv prototype
5617
5618         * tests/testsocket.c : made it compile on win32 again
5619
5620         * tests/makefile.msc : one more test-app uses prop-editor.obj
5621
5622 2001-05-22  Havoc Pennington  <hp@pobox.com>
5623
5624         * gtk/gtkbin.c (gtk_bin_get_child): New function
5625
5626 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
5627
5628         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
5629         to ignore when doing compose processing.
5630
5631 2001-05-22  Joe Shaw  <joe@ximian.com>
5632
5633         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
5634         Simplify as suggested by Havoc. Just get the last iter and work
5635         backward to the tag instead of getting a line and working back from
5636         there. Fixes passing in an invalid offset to
5637         iter_init_from_byte_offset().
5638
5639 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
5640
5641         * gtk/gtktreeview*.h: 
5642         * gtk/gtkcell*.h:
5643         * gtk/gtk*store.h:
5644         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
5645         macros to all objects.
5646
5647 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
5648
5649         * gtk/gtkcellrenderertext.c
5650         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
5651         with very large (TM) amounts of text.  May be moved to
5652         GtkCellRenderer in the future, though I'm not sure it wants to be
5653         this accessible.
5654
5655         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
5656         More sanity brought to this class.  I like it.
5657
5658         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
5659         case.  Kids, don't try this at home.
5660
5661         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
5662         convenience function.
5663
5664         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
5665
5666 2001-05-21  Alexander Larsson  <alexl@redhat.com>
5667
5668         * gtk/gtkfontsel.c:
5669         Added properties. Based on patch by Lee Mallabone.
5670
5671         * gtk/gtkruler.c:
5672         * gtk/gtkhruler.c:
5673         * gtk/gtkvruler.c:
5674         * gtk/gtktext.c:
5675         * gtk/gtktextview.c:
5676         Converted GtkArg to GParam. Based on patches by John Margaglione.
5677
5678         * tests/Makefile.am:
5679         * tests/testtext.c:
5680         Add a property editor to testtext.
5681         
5682 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
5683
5684         * gtk/gtk{h,v,}paned.c: Only show the separator if 
5685
5686         * configure.in: Fixed reversed conditional causing all image
5687         libraries to be linked in.
5688
5689 2001-05-21  Joe Shaw  <joe@ximian.com>
5690
5691         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
5692         that top_y needs to be >= 0.
5693
5694 2001-05-11  Havoc Pennington  <hp@pobox.com>
5695         
5696         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
5697         losing connection to the X server.
5698
5699 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
5700
5701         * configure.in: Start checks for X from pangox/pangoxft
5702         CFLAGS to avoid duplicate libraries.
5703
5704         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
5705
5706         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
5707         to include gobject.
5708         
5709 2001-05-18  Alexander Larsson  <alexl@redhat.com>
5710
5711         * gtk/gtkspinbutton.c:
5712         Convert GtkArgs to GParams. Based on patch by John Margaglione.
5713         Also do size request reasonable for MAXDOUBLE. Previously it printed
5714         the limits to a buffer and overran it. Instead do it using log10() and
5715         limit the width to 10 digits.
5716         
5717         * gtk/gtkwidget.c (gtk_widget_get_property):
5718         Correctly handle setting the parent property to NULL.
5719
5720 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
5721
5722         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
5723         style attributes even if the widget isn't realized.
5724
5725         * demos/gtk-demo/main.c: Use a slightly smaller font.
5726
5727 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
5728
5729         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
5730         This is something that only a widget writer would ever want
5731         to change.
5732
5733         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
5734         gtk_signal_emit_by_name().
5735
5736         * gtk/gtkviewport.c: Fix some warnings.
5737
5738         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
5739         allowing the requisitions of multiple widgets to be grouped
5740         together.
5741
5742         * tests/testgtk.c: Add GtkSizeGroup test
5743
5744         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
5745
5746         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
5747         warnings.
5748
5749         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
5750
5751 2001-04-28  Martin Baulig  <baulig@suse.de>
5752
5753         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
5754         to gtk_image_menu_item_set_icon() and made it work if there's already
5755         an image.
5756         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
5757         (gtk_image_menu_item_new_with_label): New function.
5758
5759 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
5760
5761         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
5762         highlighting code!!!!  The result is okay so long as you don't try
5763         to stress it.  It also highlights a bug in the TextView so it's in
5764         an unproportional font right now until it's fixed.
5765
5766         *demos/gtk-demo/*.c: Clean up code a bit to make it
5767         ugly-parser(TM) friendly. (-:
5768
5769 2001-05-17  Joe Shaw  <joe@ximian.com>
5770
5771         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
5772         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
5773         if it is only partially onscreen.
5774
5775 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
5776
5777         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
5778         not by characters.
5779
5780         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
5781         are not zero or one; that is, when graphemes of multiple characters
5782         are involved.
5783
5784         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
5785         FIXME.
5786
5787 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
5788         
5789         * gtk/gtkbbox.c:
5790         Add properties, based on patch by Lee Mallabone.
5791
5792         * gtk/gtknotebook.c:
5793         * gtk/gtktoolbar.c:
5794         Convert from GtkArg to GParam, based on patch by John Margaglione.
5795         
5796         * gtk/gtkhscale.c:
5797         * gtk/gtkvscale.c:
5798         * gtk/gtkhscrollbar.c:
5799         * gtk/gtkvscrollbar.c:
5800         * gtk/gtkrange.c:
5801         Move adjustment property to GtkRange.
5802
5803         * gtk/gtklabel.c:
5804         Setup mnemonics on property changes
5805
5806         * gtk/gtkwidget.c (gtk_widget_get_property):
5807         GdkExtensionMode is an enum, not a flag. Set it with
5808         g_value_set_enum ().
5809
5810         * tests/prop-editor.c:
5811         Better propery editor.
5812
5813         * tests/testgtk.c:
5814         Add new property test. Pass zero to the property editor to
5815         get properties from all derived types.
5816         
5817 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
5818
5819         * autogen.sh (have_automake): Require libtool-1.4,
5820         automake-1.4p1.
5821
5822         * acinclude.m4: Remove libtool macros.
5823
5824         * gdk-pixbuf/Makefile.am: Add dependencies to loade
5825         modules.
5826
5827         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
5828         for libgdk.
5829
5830         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
5831         libgdk.la for libgtk.
5832
5833         * modules/input/Makefile.am: Make modules have full
5834         dependencies.
5835
5836 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
5837
5838         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
5839         #54699 where paths weren't being checked for correctness.
5840
5841 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
5842
5843         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
5844         in any order you wan, whether or not the column is added to the
5845         tree, or the tree is realized.  Yay!
5846
5847         * gtk/gtktreeviewcolumn.c
5848         (gtk_tree_view_column_setup_sort_column_id_callback): handle
5849         sorting columns a lot saner
5850
5851         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
5852         new function to actually set wether or not a column is
5853         reorderable.
5854
5855         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
5856         if we have 'em.
5857
5858         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
5859         Fix nasty bug where we were showing the button just before
5860         realizing it.  As a result, the parent window was
5861         tree_view->window instead of tree_view->priv->header_window.
5862
5863         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
5864         to let you easily reorder a list or tree.
5865
5866 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
5867
5868         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
5869         from args to properties.
5870
5871 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
5872
5873         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
5874         from args to properties. (#51957)
5875
5876         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
5877         calls to after ->set_property call.
5878
5879 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
5880
5881         * tests/prop-editor.c: Block against redundant changes.
5882
5883         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
5884         properties.
5885
5886 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
5887
5888         * gdk/gdkpixmap.h: Remove creative formatting.
5889
5890 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
5891
5892         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
5893         property API. (#51669)
5894
5895         * gtk/gtkscale.c: Patch from John Margaglione converting to
5896         property API. (#51891)
5897
5898         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
5899         to property API. (#50985)
5900
5901 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
5902
5903         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
5904         buffering state across expose event, so we still call end_paint().
5905
5906 2001-05-11  Alexander Larsson  <alexl@redhat.com>
5907
5908         * gtk/gtkhsv.c (paint_triangle):
5909         Expose the ring in the triangle at the correct place when
5910         exposing just a part of the triangle.
5911
5912         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
5913         Return FALSE, or window focusing will not work.
5914
5915 2001-05-11  Havoc Pennington  <hp@pobox.com>
5916
5917         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
5918         #54144
5919
5920         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
5921         bug #54330
5922
5923 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
5924
5925         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
5926         propagate exposes to NULL child.
5927
5928         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
5929         against not having one of the scrollbars.
5930
5931         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
5932         we don't keep a mnemonic window if we have no mnemonic installed.
5933
5934 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
5935
5936         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
5937         it has the _important_ side effect of initializing a class.
5938
5939 2001-05-10  Alexander Larsson  <alexl@redhat.com>
5940
5941         * gdk/linux-fb/gdkprivate-fb.h:
5942         Make sure you can compile out the implementation/wrapper assert
5943         macros.
5944
5945         * gdk/linux-fb/gdkdrawable-fb2.c:
5946         Check implementation/wrappers, initialize type for pixmap dummys.
5947
5948         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
5949         Hide the cursor if reading from the screen.
5950
5951         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
5952         Fix sign bug in tiling code.
5953
5954         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
5955         Handle background pixmaps.
5956
5957 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
5958
5959         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
5960         function to let user control where columns are dragged.
5961
5962         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
5963         Escape is pressed.
5964
5965 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
5966
5967         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
5968         "columns_changed" signal.
5969         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
5970         motion code to draw arrows to the side if indicator is outside the
5971         widget.
5972         (gtk_tree_view_map_expanded_rows): Implement.
5973
5974 2001-05-07  Alexander Larsson  <alexl@redhat.com>
5975
5976         * demos/testpixbuf-save.c: 
5977         * demos/testpixbuf-drawable.c:
5978         Include gdkfb.h on linux-fb.
5979
5980 2001-05-07  Alexander Larsson  <alexl@redhat.com>
5981
5982         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
5983         New function for getting toplevel window at position.
5984         (gdk_drag_find_window): Use get_toplevel_window () instead
5985         of gdk_window_get_pointer(). (gdk_drag_status): Use
5986         correct context for getting window.
5987
5988         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
5989         g_strdup the atom name.
5990
5991         * gdk/linux-fb/gdkwindow-fb.c:
5992         Costmetic fix.
5993
5994         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
5995         Add code for changing cursor on linux-fb backend (same as
5996         win32).
5997
5998 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
5999
6000         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
6001         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
6002         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
6003         report was not for the development branch of GTK+, but it applies
6004         anyways).
6005
6006 2001-05-04  Havoc Pennington  <hp@redhat.com>
6007
6008         * configure.in: fix some shell typos
6009
6010         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
6011
6012         * gtk/gtkimage.c: handle animations
6013
6014         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
6015         border_width * 2, not just border_width
6016
6017         * gtk/gtkscale.c: add "format_value" signal to allow people
6018         to override the way values are drawn.
6019         (gtk_scale_get_value_size): fix width/height mistake,
6020         and compute size from actual displayed text, not 
6021         from made-up text.
6022
6023         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
6024         signal registration
6025
6026         * tests/testtext.c: Add "Remove all tags" menu item for testing
6027
6028         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
6029
6030         * demos/gtk-demo/main.c (main): add hack so we can find modules
6031         without installing gtk
6032
6033         * demos/gtk-demo/textview.c (insert_text): demo font scaling
6034
6035         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
6036         factor)
6037         (gtk_cell_renderer_text_set_property): remove some bogus
6038         g_object_notify
6039
6040         * gtk/gtktexttag.c: add "scale" property which is a font scaling
6041         factor
6042
6043         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
6044         to layout
6045
6046         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
6047         gtk_text_iter_is_first
6048
6049 2001-01-06  Hans Breuer  <hans@breuer.org>
6050
6051         * gdk/gdk.def : updated exports
6052
6053         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
6054         gdk won't compile anymore
6055  
6056         * gdk/win32/gdkevents-win32.c : initialize ret_val when
6057         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
6058         Improved gdk_flush () to not only do pending drawing operations
6059         but also process all currently pending events. This should make
6060         the behaviour more similar to the X11 version.  
6061
6062         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
6063         option needs to be set even if there is no GDK_GC_BACKGROUND.
6064         (gdk_win32_hdc_get) : use predraw_set_background () independent
6065         of value_mask. This allows to draw dashed lines leaving the original
6066         background intact.
6067
6068         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
6069         after processing, because we can't reuse it as the X11 version does.
6070
6071         * gtk/gtk.def : updated exports
6072
6073         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
6074         would like to get rid of this file again, and use straight
6075         makefile.msc again, as the other Gtk+ subdirs do)
6076
6077         * test/makefile.msc (new file) : build the test apps here
6078
6079 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
6080
6081         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
6082         strike-through setting
6083         (gdk_draw_layout_line_with_colors): Render strike-through
6084
6085 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
6086
6087         * Release 1.3.5
6088
6089         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
6090
6091         * NEWS: Updated
6092
6093         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
6094         Makefile breakage.
6095
6096 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
6097
6098         * demos/gtk-demo/images.c (progressive_timeout): Fix
6099         typo in filename.
6100
6101         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
6102         out FIXME warning; just too annoying.
6103
6104 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
6105
6106         * gdk/linux-fb/gdkcolor-fb.c:
6107         Better error messages.
6108
6109         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
6110         Initialize abs_x and abs_y.
6111         
6112         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
6113         Correct handling of stipple offset.
6114
6115         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
6116         Treat directcolor framebuffers as truecolor.
6117         
6118 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
6119
6120         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
6121         dependency on Atk for accessibility support.
6122
6123         * configure.in **/Makefile.am: Major reworking of substituted
6124         variables for CFLAGS/LIBS to make a lot more sane and 
6125         keep the the compile/link lines a bit shorter.
6126
6127         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
6128
6129 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
6130
6131         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
6132         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
6133         use _gtk_boolean_handled_accumulator.
6134
6135 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
6136
6137         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
6138         to fix things so clicking inside selection leaves cursor
6139         at point where clicked. (#50324)
6140
6141         * gtk/gtksettings.c (gtk_settings_class_init): Restore
6142         sane value for default double click time.
6143
6144         * tests/testtext.c (test_init): Really path to input modules.
6145
6146 2001-05-03  Sven Neumann  <sven@convergence.de>
6147
6148         * demos/testpixbuf-save.c: include target-specific headers as
6149         done in testpixbuf-drawable.c
6150
6151 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
6152
6153         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
6154         new_text_length appropriately when we run into the 
6155         size limit for the entry. (#53445, reported by Jeff Franks)
6156
6157         * tests/testgtk.c (create_entry): Remove most of the
6158         property toggle buttons. Replace with a "Props" button
6159         that brings up a property editor.
6160
6161         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
6162         Split the property editor code out for reuse, improve.
6163
6164 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
6165
6166         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
6167         trap errors around calls to XSetInputFocus since we have
6168         no way of knowing reliably whether we are viewable or
6169         not. (#53947)
6170
6171 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
6172
6173         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
6174         fix bug in dropping columns.  Moving columns now basically works
6175         modula some fine tuning.
6176
6177 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
6178
6179         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
6180         autoscroll support.  It mostly works, but could use some fine
6181         tuning.
6182         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
6183         Actually move the column.
6184
6185 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
6186
6187         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
6188           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
6189           New default theme! A slighly improved version of the 2.0 Raleigh
6190           theme, with Windows-esque focus/drawing default. 
6191           (GtkWidget::interior_focus defaults to TRUE.)
6192
6193         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
6194
6195 2001-04-30  Havoc Pennington  <hp@pobox.com>
6196
6197         * tests/testtext.c (line_numbers_expose): fix to work with
6198         gtk_paint_layout change
6199
6200 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
6201
6202         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
6203           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
6204           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
6205           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
6206
6207         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
6208           with GtkWidget::interior_focus = TRUE better.
6209
6210         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
6211         ::default_outside_border for more flexibility.
6212
6213         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
6214         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
6215         change that had to be made with g_object_get.
6216
6217 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
6218
6219         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
6220         (gtk_tree_view_move_column_after): Clean up interface. 
6221
6222 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
6223
6224         * gtk/gtkpacker.h:
6225         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
6226          to gtkenum.h.
6227
6228         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
6229         handled in switch).
6230
6231         * gtk/Makefile.am:
6232         (gtk.defs): generate enum portions with  glib-mkenums.
6233         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
6234         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
6235         
6236         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
6237         addition.
6238
6239         * docs/Changes-2.0.txt: keep a note on signal handlers now
6240         not getting emitted during the emission they were connected within.
6241
6242 2001-04-28  Havoc Pennington  <hp@pobox.com>
6243
6244         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
6245
6246 2001-04-24  Havoc Pennington  <hp@redhat.com>
6247
6248         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
6249         (gtk_text_layout_move_iter_to_next_line): fix these two for
6250         invisible text, lots of other stuff still hosed.
6251
6252         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
6253         new function, replaces the get/set palette stuff. This function 
6254         is intended for use by libgnomeui which should set the hook to a
6255         thing which sets the palette in GConf, and we need the
6256         GConf-to-xsettings proxy which will result in the change being
6257         propagated back to the GTK app.
6258
6259         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
6260         about unusable signals that it may be because the signal has 
6261         parameters.
6262
6263         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
6264         style, otherwise gtkrc.c won't know to create a new GtkStyle for
6265         it.
6266         (gtk_widget_modify_color_component): call
6267         gtk_widget_modify_style() so the rc style will get copied.
6268         (gtk_widget_modify_font): ditto
6269
6270         * gtk/gtkrc.c: make a couple variables static
6271
6272         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
6273         help button by default, since it does nothing
6274
6275         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
6276         around with UI
6277
6278         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
6279         so we can have tooltips
6280
6281         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
6282         can have tooltips
6283
6284         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
6285         GDK_ENABLE_BROKEN, because its memory behavior is completely
6286         hosed.
6287
6288         * gtk/gtknotebook.c: remove key press handler, replace with
6289         binding set, add numeric keypad support
6290
6291         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
6292
6293         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
6294
6295         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
6296         addition to plain Delete
6297
6298         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
6299         GDK_KP_Enter in addition to GDK_Return
6300
6301         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
6302         activate on entry instead of key press
6303         (gtk_font_selection_on_clist_key_press): get
6304         rid of this signal handler, not needed with new font sel.
6305
6306         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
6307         no-longer-needed emit_stop_by_name(), just return TRUE
6308
6309         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
6310         cruft, this widget is no longer focusable.
6311
6312         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
6313         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
6314         move_slider action signal, add binding set for vscale/hscale, in
6315         the process support numeric keypad
6316
6317         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
6318         make GDK_Return and GDK_KP_Enter activate the entry via 
6319         binding set, instead of hardcoded.
6320
6321 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
6322
6323         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
6324         code.  Some documentation added.
6325
6326 2001-04-27  Havoc Pennington  <hp@redhat.com>
6327
6328         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
6329
6330         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
6331
6332         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
6333         line/para separators
6334         (gtk_entry_create_layout): set single paragraph mode on the layout
6335
6336         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
6337         spacing between the image and label; instead, inside a button box 
6338         the button will get extra space that will go there, but if people 
6339         configure button box for 0 chubbiness, then there's no spacing.
6340
6341         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
6342         and min/max size style properties, so people can tune their
6343         chubbiness.
6344
6345         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
6346         functions
6347
6348         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
6349         space_style, and button_relief into style properties, remove
6350         functions for setting them
6351         
6352         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
6353         it back down
6354
6355         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
6356         types from gtk_widget_style_get
6357
6358         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
6359         with a style property.
6360
6361         * gdk/x11/gdkevents-x11.c: namespace the settings
6362
6363         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
6364
6365         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
6366         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
6367         be used. Also, translate doc strings for settings. Also, namespace
6368         the double-click-time property. Also, remove bell properties crap.
6369
6370 2001-04-27  Sven Neumann  <sven@gimp.org>
6371
6372         * Makefile.am: before creating links, check if pkg-config files
6373         exist for the default target. Otherwise link to the pkg-config files
6374         that got installed with this build.
6375
6376 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
6377
6378         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
6379         dragging code.  Revealed some (potential) GdkWindow bugs.
6380
6381         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
6382         _gdk_window_init_position to the end of reparent to fix the case
6383         of reparenting when new_x != old_x and new_y != old_y.
6384
6385 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
6386
6387         * gtk/gtkentry.c (strstr_len): Fix optimization that
6388         was correct for the use here, but completely incorrect
6389         in general.
6390
6391 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
6392
6393         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
6394         until patch adding gtk_window_set_size() is recommitted. 
6395
6396         * **Makefile.am configure.in gdk/x11/gdkim-11.c
6397           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
6398           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
6399           (#10784)
6400
6401 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
6402
6403         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
6404         window == NULL in a number of cases.
6405
6406         * tests/testdnd.c: Set module path for gdk-pixbuf.
6407
6408 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
6409
6410         * gtk/Makefile.am xembed.h: File containing #defines
6411         for XEMBED protocol.
6412
6413         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
6414
6415         - Change protocol from old plug/socket specific protocol
6416           to XEMBED draft
6417         - Various fixes to work with GTK+-2.0
6418
6419         Still quite a bit of work to do here to handle initiation
6420         from the socket side (as specified by XEMBED), to handle
6421         the more advanced features of XEMBED, and to figure out
6422         a good way to handle same-app embedding with less overhead
6423         than using full XEMBED.
6424
6425 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
6426
6427         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
6428         track of whether the toplevel has the focus; only send
6429         focus-in events to the focus widget when the window
6430         actually has the focus.
6431
6432 2001-04-25  Havoc Pennington  <hp@pobox.com>
6433
6434         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
6435         were still in the header
6436
6437 2001-04-24  Alexander Larsson  <alexl@redhat.com>
6438
6439         * gtk/gtkclist.[ch]:
6440         * gtk/gtkctree.c:
6441         When there is a row highlighted for D'n'D it must alse
6442         be painted hightlighted on exposes. Otherwise exposes from
6443         the icon being dragged will mess up the hightlight.
6444
6445         * gtk/gtkfontsel.c:
6446         Don't recenter selected font when exposing the font family
6447         clist. This means you can now actually scroll the font family
6448         list.
6449
6450         * gtk/gtknotebook.c:
6451         Fix focus movement on scrolling tabs that are placed on the left
6452         and right.
6453
6454 2001-04-21  Havoc Pennington  <hp@pobox.com>
6455
6456         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
6457         empty/invisible lines.
6458
6459         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
6460         (gtk_text_iter_set_visible_line_index): new functions to set
6461         indexes excluding invisible text
6462
6463         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
6464         index
6465
6466         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
6467         (gtk_text_iter_get_visible_line_offset): new functions to 
6468         get indexes excluding invisible text
6469
6470         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
6471         bunch of extra padding that served no purpose
6472
6473         * gtk/gtkdialog.c: Make all the spacings configurable via style
6474         properties, for chubbiness configuration in themes
6475
6476         * tests/testtext.c: fix path to the immodules.
6477         
6478 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
6479
6480         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
6481         got munched by #endif.
6482
6483         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
6484
6485         * gtk/gtktreeview.c: Refactored code to clean up a number of
6486         events.
6487
6488         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
6489         values to make consistent with other functions.  Spotted by Jeff
6490         Franks <jcf@tpg.com.au>.
6491
6492         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
6493         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
6494
6495 2001-04-23  Sven Neumann  <sven@gimp.org>
6496
6497         * gtk/Makefile.am
6498         * gtk/gtkplug.c
6499         * gtk/gtksocket.c: on request of Owen, reverted my last change 
6500         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
6501
6502 2001-04-23  Sven Neumann  <sven@gimp.org>
6503
6504         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
6505         compile for non-X11 targets again
6506
6507 2001-04-20  Alexander Larsson  <alexl@redhat.com>
6508
6509         * gtk/gtkcolorsel.[ch]:
6510         API Change. Take GdkColor arguments instead of gdouble *.
6511         Leave the old gtk_color_selection_set_color for compatibility,
6512         but marked deprecated.
6513         Do correct rounding when converting RGB <-> HSV.
6514         
6515         * gtk/gtkcolorseldialog.c:
6516         * tests/testgtk.c:
6517         Use new GtkColorSelection API.
6518
6519         * gtk/gtkhsv.c:
6520         Fix problem selecting colors in triangle when Hue is 330.
6521         Fix some black dots around the HSB triangle.
6522         
6523         * gtk/gtkfilesel.c:
6524         return FALSE from the focus_in_event handler to fix focus problems.
6525
6526 2001-04-18  Havoc Pennington  <hp@redhat.com>
6527
6528         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
6529         set, so keybindings are configurable    
6530         (gtk_window_activate_default): Change to activate the focus widget
6531         instead if there's a focus widget, to be consistent with the
6532         behavior that previously existed in key_press_event
6533
6534 2001-04-18  Havoc Pennington  <hp@redhat.com>
6535
6536         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
6537
6538 2001-04-18  Havoc Pennington  <hp@redhat.com>
6539
6540         Close bug #50615:
6541         
6542         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
6543         the layout
6544
6545         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
6546
6547         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
6548
6549         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
6550         
6551         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
6552         to blue for base, in addition to bg
6553         
6554 2001-04-18  Havoc Pennington  <hp@redhat.com>
6555
6556         * tests/testgtk.c (create_image): allow shrinking the image window
6557         to test that we clip to allocation.
6558
6559         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
6560         #9845
6561
6562         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
6563
6564 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
6565
6566         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
6567         mode on shm segments to 0600. We'll see who complains.
6568
6569         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
6570         _gdk_windowing_window_destroy() AFTER recursing through
6571         children.
6572
6573         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
6574         testsocket_child on X.
6575
6576         * tests/testsocket[_child].c: Fix uses of
6577         gtk_window_get_default_accel_group().
6578
6579         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
6580
6581         * gdk/gdkimage.c: (gdk_image_get):
6582         Deal with the possibility that XGetImage() might return NULL.
6583         Allocate the GdkImagePrivate structure only after XGetImage()
6584         succeeds in order not to dereference a NULL ximage pointer.  This
6585         prevents a core dump when XGetImage() fails - which is unlikely,
6586         but can happen due to race conditions accessing the geometries of
6587         drawables.  An x error will still be triggered, but the gdk image
6588         wrapper at least wont seg fault.
6589         
6590 2001-04-18  Havoc Pennington  <hp@redhat.com>
6591
6592         * gtk/gtkimage.c: fix to properly queue resizes when the image is
6593         set
6594
6595         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
6596         if the insertion point isn't editable
6597
6598         * demos/gtk-demo/images.c: Added a GtkImage demo
6599
6600         * demos/gtk-demo/drawingarea.c: drawing area demo
6601         
6602         * demos/gtk-demo/menus.c (create_menu): cleanups
6603
6604 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
6605
6606         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
6607           gdk/x11/gdkevents-x11.c: Introduce an extra child
6608         of toplevel windows that serves to hold the focus to
6609         avoid events being delivered to embedded windows.
6610
6611         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
6612         some extra variables to clean up code and reduce the
6613         number of casts.
6614
6615         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
6616         guint for 1 bit bit fields, not gboolean.
6617
6618 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
6619
6620         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
6621         not TRUE. (Fixes #52925)
6622
6623 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
6624
6625         * Released 1.3.4
6626
6627         * NEWS: Updated
6628
6629         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
6630         use GTK_TYPE_ENUM.
6631
6632 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
6633
6634         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
6635
6636         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
6637         names to compatibility #defines so docs work.
6638
6639         * gtk/gtkenums.h: Remove GtkMenuFactoryType
6640
6641         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
6642
6643         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
6644
6645         * tests/testgtkrc: No magenta cursors, please.
6646
6647         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
6648
6649         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
6650         
6651 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
6652
6653         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
6654         grabs, since they are no longer necessary.
6655
6656         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
6657         by signal_connect() and call gtk_button_pressed() rather
6658         than signal_connect_after().
6659
6660         * tests/testgtk.c: Restore radio menu items to combos 
6661         since they'll look OK with Raleigh, and it is easier
6662         than finishing the process of removing them that was
6663         started earlier.
6664
6665 2001-04-16  Hans Breuer  <hans@breuer.org>
6666
6667         * gdk/gdk.def :
6668         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
6669
6670         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
6671         we are interested in the functions return value not the function address
6672         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
6673
6674         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
6675
6676 2001-04-14  Hans Breuer  <hans@breuer.org>
6677
6678         * gdk/gdk.def :
6679         * gdk/makefile.msc : updated
6680
6681         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
6682         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
6683         (the testgtk::text backgound pixmap is drawn again)
6684         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
6685         Win32 Pango change
6686         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
6687
6688         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
6689         Not sure if the returned settings have the right unit, because I couldn't
6690         find any docs for the X version ...
6691
6692         * gtk/gtk.def :
6693         * gtk/makefile.msc.in : updated
6694
6695 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
6696
6697         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
6698         wording problems. (Compared to version from Johannes Stezenbach to
6699         check correctness.)
6700
6701 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
6702
6703         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
6704         this to compile.
6705
6706 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
6707
6708         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
6709         not pixbufpos.
6710
6711         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
6712
6713         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
6714         are unsigned insts, therefore use g_value_set_uint.
6715         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
6716
6717 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
6718
6719         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
6720
6721         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
6722         GTK_TYPE_STRING.
6723
6724         * gtk/gtktreeview.c: New functions to allow initial column
6725         dragging work.
6726
6727         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
6728
6729         * tests/testtreefocus.c: give dave some love.
6730
6731         * tests/testtreesort.c: Modify test to check really long samples.
6732
6733 2001-04-11  Alexander Larsson  <alexl@redhat.com>
6734
6735         * gtk-2.0.m4: Pass pkg-config options
6736         before the other args so it works even if
6737         POSIXLY_CORRECT is set.
6738
6739 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
6740
6741         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
6742         0, interface 0).
6743
6744 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
6745
6746         * gtk/gtkcalendar.c (gtk_calendar_button_press):
6747         check for action_func != NULL
6748
6749 2001-04-04  Sven Neumann  <sven@gimp.org>
6750
6751         * tests/testgtk.c (test_init): corrected path to gtk.immodules
6752
6753 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
6754
6755         * Released Gtk+-1.3.3.
6756
6757 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
6758
6759         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
6760
6761 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
6762
6763         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
6764         files to/from source dir. (if we don't stay in builddir, we
6765         can't reach make-inline-pixbuf.
6766
6767         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
6768         deps.
6769
6770         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
6771         ages 0).
6772
6773 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
6774
6775         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
6776         moved to the GtkTreeSortable interface.
6777
6778         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
6779         Make more efficient (fixes #50262).
6780
6781 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
6782
6783         * NEWS: Updated.
6784
6785         * configure.in: Remove support for uninstalled glib.
6786
6787         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
6788         so as not to stop emission.
6789
6790         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
6791         is no longer supported.
6792
6793         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
6794         into tests, change build order to build modules before
6795         gtk/.
6796
6797         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
6798         to here.
6799
6800 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
6801
6802         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
6803         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
6804         GPatternSpec. this is actually unlikely to cause breakage in
6805         third-party apps since except for gle, pretty much ever caller
6806         passes NULL here.
6807
6808         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
6809
6810         * *.c: use g_pattern_*() API.
6811
6812         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
6813
6814         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
6815         directions aren't passed in.
6816
6817         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
6818         functionality to be usable from gtkstyle.c as well, give precedence
6819         for conversion to user-supplied parsers.
6820         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
6821
6822         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
6823         _gtk_settings_parse_convert() for rcporperty value conversion.
6824
6825 2001-04-03  Alexander Larsson  <alexl@redhat.com>
6826
6827         * gdk/linux-fb/gdkevents-fb.c:
6828         Add empty gdk_setting_get().
6829
6830 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
6831
6832         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
6833         variable names.
6834         
6835         * gtk/makeenums.pl: touch this so enum files get remade.
6836
6837 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
6838
6839         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
6840         work again when not sorted.
6841
6842         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
6843         and "expand_row" signal, closing bug 52578.
6844
6845         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
6846         support.
6847
6848         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
6849         support.
6850
6851 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
6852
6853         * gdk/gdkevents.h: Add GdkEventSetting event for notification
6854         of changes to system settings, gdk_setting_get() to retrieve
6855         a single system setting.
6856
6857         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
6858         to the draft XSETTINGS mechanism.
6859
6860         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
6861         XSETTINGS.
6862
6863         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
6864         of GDK settings changes to the GtkSettings object.
6865
6866         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
6867         double-click-timeout property to GDK.
6868
6869         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
6870         Define GDK boxed types here.
6871
6872         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
6873         gdk/gdkenumtypes.[ch] for enum definitions.
6874
6875         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
6876         * gtk/gtk-boxed.defs: Comment out GDK types
6877         * gtk/gtktypeutils.h: Remove GDK types
6878         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
6879
6880 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
6881
6882         * Applied patch from Ron Steinke to add signal accumulators
6883         so that signals with the convention 'TRUE return means
6884         handled' stop emission on a TRUE return.
6885
6886         * gtk/gtkmain.[ch]: Add private accumulator 
6887         _gtk_boolean_handled_accumulator, used throughout GTK+.
6888         
6889         * gtk/gtkspinbutton.c: Add accumulator for ::output.
6890
6891         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
6892         
6893         * gtk/gtkwidget.c: Add accumulators for event signals,
6894         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
6895         for ::mnemonic-activate.
6896
6897         * gtk/gtkwindow.c: Add accumulator for ::frame_event
6898
6899 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
6900
6901         * gtk/gtkwidget.c: Add missing include.
6902
6903 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
6904
6905         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
6906         marshaller.
6907
6908         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
6909         "changed" signal to "range_changed".
6910
6911         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
6912         removing a tree from one model would remove all trees from that
6913         model.
6914         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
6915         changed signal instead.
6916
6917 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
6918
6919         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
6920         chaining up to parent impl, since we have a INPUT_ONLY
6921         window.
6922
6923         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
6924         foreground color for the cursor.
6925
6926 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
6927
6928         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
6929         param spec when caching property values, since we unref it
6930         later when we free the style.
6931
6932         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
6933         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
6934
6935 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
6936
6937         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
6938         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
6939         stupidity.
6940
6941 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
6942
6943         [ First pass at adding style properties. Still needs some definite
6944         fine-tuning. ]
6945
6946         * gtk/gtkbutton.c: Add ::default_spacing style property.
6947          
6948         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
6949         ::indicator_spacing style properties.
6950
6951         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
6952         style properties.
6953
6954         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
6955         rather than a normal property.
6956
6957         * gtk/gtkwidget.c: Add an ::interior_focus style property to
6958         draw focus inside buttons, in the Windows/Java Metal/etc. style.
6959
6960         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
6961         Honor ::interior_focus.
6962         
6963         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
6964         TRUE.
6965
6966         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
6967         Add ::slider_width, ::trough_border, ::stepper_size,
6968         ::stepper_spacing style properties.
6969
6970         * gtk/gtkscale.[ch] Add ::slider-length style property.
6971
6972 2001-04-02 Alexander Larsson   <alexl@redhat.com>
6973
6974         * gdk/linux-fb/gdkwindow-fb.c:
6975         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
6976         warnings that were spewed on startup.
6977
6978         * gtk/gtkwindow-decorate.c:
6979         gtk_window_reposition -> _gtk_window_reposition
6980
6981 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
6982
6983         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
6984         Add boxed type for GtkRequistion. Use it for ::size-request.
6985
6986         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
6987         Add a new GtkBorder structure useful for geometry properties
6988         for widgets. Add corresponding GTK_TYPE_BORDER.
6989         
6990         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
6991         Support automatic parser selection like
6992         gtk_settings_install_property_parser().
6993
6994         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
6995         functionality for use by gtk_widget_class_install_style_property.
6996         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
6997
6998 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
6999
7000         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
7001         g_param_spec_unichar(). 
7002
7003 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
7004
7005         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
7006         _NET window managers.
7007
7008         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
7009
7010 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
7011
7012         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
7013         bad needs to be nuked, not just deprecated.
7014
7015         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
7016         gtk_widget_popup().
7017
7018         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
7019         
7020         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
7021         widget.
7022         
7023         * docs/Changes-2.0.txt: updates.
7024         
7025 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
7026
7027         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
7028         for (i = 0; i < 100; i ++)
7029           g_print ("I will confirm it compile before committing\n");
7030
7031 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
7032
7033         * gtk/gtktreestore.c: Initial work on implementing the
7034         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
7035
7036 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
7037
7038         * gtk/gtkwidget.c: fixed a bunch of notifications, added
7039         reference counts around emissions where the widget is used afterwards.
7040         added freeze/thaws around multiple properties being notified.
7041         (_gtk_widget_get_aux_info): cleanups.
7042         
7043         * gtk/gtksettings.c (gtk_settings_install_property): provide
7044         default parsing functions for gdkcolor, enums and flags.
7045
7046         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
7047         applied by owen.
7048         backed out gtk_window_get_location(), gtk_window_set_location(),
7049         gtk_window_get_size() and gtk_window_set_size(), these
7050         have to be sorted out wrg x/y/width/height/default_with/default_height
7051         properties.
7052         kept a flag in GtkWindowGeometryInfo to handle user
7053         resetting default sizes.
7054         cleaned up ZVT comments.
7055         bunch of assorted bug fixes, notification fixes.
7056         (_gtk_window_reposition): make this a really internal function.
7057         
7058         * gtk/testgtk.c: fixups.
7059         
7060 2001-03-31  Hans Breuer  <hans@breuer.org>
7061
7062         * config.h.win32.in : disable USE_MMX for msvc build cause
7063         the assembler doesn't fit and is out of my scope. Disable
7064         USE_GMODULE for msvc build as wel. The right way to share
7065         binaries on win32 would be to use libtiff.dll etc. To reduce
7066         installation hassles IMO it's better to include all fileformats
7067         builtin to gdk-pixbuf
7068
7069         * gdk-pixbuf/makefile.msc : new file
7070
7071         * gdk/gdk.def : updated
7072
7073         * gdk/win32/gdkevents-win32.c : don't erase the background if
7074         .no_bg is set. It improves the scrolling (e.g. of testgtk main
7075         buttons
7076         * gdk/win32/gdkgeometry-win32.c : added comment about the above
7077
7078         * gdk/win32/gdkwindow-win32.c : added three new functions like
7079         the X version. Only one is implemented, because the other two
7080         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
7081         be default behaviour on win32 anyway ...
7082
7083         * gtk/gtk.def : updated
7084
7085         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
7086         from where it was built and add an additional rule to automagically
7087         build gtkmarshal.[hc]
7088
7089         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
7090         before array access for the current entry isn't finished
7091
7092         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
7093         use g_return_val_if_fail
7094
7095         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
7096         for the static array, but let the compiler calculate it. It
7097         makes me wonder if gcc isn't capable to catch bugs like this ...
7098
7099 2001-03-31  James Henstridge  <james@daa.com.au>
7100
7101         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
7102         constant "-1" in the aux info structure.
7103
7104 2001-03-30  Alexander Larsson  <alexl@redhat.com>
7105
7106         * gtk/gtkbutton.c (gtk_button_get_property):
7107         * gtk/gtklabel.c:
7108         Remove leaks.
7109         
7110         * gtk/gtkcontainer.c:
7111         * gtk/gtkhscale.c:
7112         * gtk/gtkhscrollbar.c:
7113         * gtk/gtklayout.c:
7114         * gtk/gtkmisc.c:
7115         * gtk/gtkprogress.c:
7116         * gtk/gtkprogressbar.c:
7117         * gtk/gtkrange.c:
7118         * gtk/gtktable.c:
7119         * gtk/gtkviewport.c:
7120         * gtk/gtkvscale.c:
7121         * gtk/gtkvscrollbar.c:
7122         * gtk/gtkwidget.c:
7123         Property patches, based on patches from John Margaglione and Lee Mallabone.
7124
7125 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
7126
7127         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
7128         adjustment. Cleaned redundant preconditions (spin != NULL). Added
7129         inline API function docs.
7130         (gtk_spin_button_new_with_range): New convenience constructor.
7131         (gtk_spin_button_set_increments): New adjustment helper.
7132         (gtk_spin_button_set_range): New adjustment helper.
7133
7134         * gtk/testgtk.c : added test of the new convenince constructor and
7135         value_changed signals.
7136
7137 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
7138
7139         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
7140         listen to the reorder signal.
7141
7142 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
7143
7144         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
7145         to get the aux info structure fo the widget.
7146
7147         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
7148         above function.
7149
7150         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
7151
7152         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
7153         to get the size of the window manager frame, basically the same
7154         code that gdk_window_get_root_origin() had
7155         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
7156
7157         * gtk/gtkwindow.c (gtk_window_set_default_size): use
7158         gdk_window_resize() if the window is realized and resizeable
7159
7160         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
7161         typo so that setting gravity works
7162
7163         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
7164         allocation if auto_shrink is on, even if the default size
7165         has not changed.
7166
7167         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
7168         g_return_if_fail
7169
7170 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
7171
7172         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
7173         reordering/sorting work.  Now pretty much works.
7174
7175         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
7176         reorder mostly work.  Still need to get the parity correct.
7177
7178         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
7179         signal, so I can listen for the sort_column_changed signal so I
7180         can change my "sort_indicator" property.  Cool.
7181
7182 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
7183
7184         [ Patch from Havoc Pennington, hp@redhat.com ]
7185
7186         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
7187         Add functions gdk_window_begin_resize_drag/begin_move_drag
7188         to start resizing or moving a toplevel window. This
7189         is done either using the _NET_WM_MOVERESIZE protocol,
7190         or, if that isn't present, by emulation.
7191
7192         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
7193         to export the above to GTK+-land.
7194
7195         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
7196         
7197         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
7198         Move this function into gdkwindow, since we need it
7199         when implementing fallback resizing.
7200
7201         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
7202         Fix typo when setting gravity.
7203
7204         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
7205         Add an optional (but on by default) resize grip for resizing 
7206         the parent window.
7207
7208 01-03-29  Alexander Larsson  <alexl@redhat.com>
7209
7210         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
7211         Don't return TRUE from the event handler, that blocks all
7212         event signals on the tooltip widget. Now you can press buttons
7213         in toolbars again.
7214
7215 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
7216
7217         * gtk/testtext.c (create_buffer): Add missing NULL on
7218         valist.
7219
7220         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
7221         c-n-p problem with INCONSISTENT property.
7222
7223         [ Patch from Havoc Pennington  <hp@redhat.com> ]
7224
7225         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
7226         hook.
7227
7228         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
7229         signal as a hook for extending the default popup menu
7230
7231         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
7232         use radio menu items for the input method menuitems
7233
7234         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
7235         inserted unicode from Ctrl-Shift-hex input method
7236
7237         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
7238         validatation here, already done at GtkTextBuffer level.
7239
7240         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
7241         popup_menu run action signal and Shift+F10 and Menu keybindings.
7242
7243         * gtk/gtkentry.c: implement a default handler for popup_menu
7244
7245         * gtk/gtktextview.c: implement a default handler for popup_menu
7246
7247         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
7248         from a key event
7249         
7250         * gtk/gtklabel.c: remove "trailer" cruft
7251
7252 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
7253
7254         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
7255         handle reordering of trees.  Seems to mostly work w/ the exception
7256         of the parity flag.
7257
7258         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
7259         signal.
7260
7261 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
7262
7263         * gtk/gtkwidget.h: c++ fixes.
7264
7265 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
7266
7267         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
7268         memory.
7269
7270 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
7271
7272         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
7273         Nils Barth fixing event return values. (#51041)
7274
7275         * gtk/gtkwidget.c: Fix some return values for default
7276         functions.
7277
7278         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
7279         return values for trough_keys functions.
7280
7281         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
7282         value for add_accelerator (shoudl have been a void
7283         return.)
7284
7285         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
7286         Fix return type of EVENT.
7287
7288         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
7289         signal return a boolean.
7290
7291 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
7292
7293         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
7294         reordered signal.
7295
7296         * tests/testtreesort.c (main): fix spelling.
7297
7298 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
7299
7300         * gtk/gtkliststore.c: More work on implementing sortable
7301         interface.
7302
7303 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
7304
7305         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
7306         reference the widgets in the resulting list. (#11821)
7307         This makes this consistent with gtk_container_children.
7308
7309         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
7310         uses of gtk_window_list_toplevels.
7311
7312 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
7313
7314         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
7315         a virtual function to set whether the IM context should use 
7316         the preedit string. (#51922)
7317         
7318 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
7319
7320         * gdk/gdkpango.h: Remove stale FIXME comment.
7321
7322 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
7323
7324         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
7325         Fixed bug that returned NULL if a filename was selected.
7326
7327 2001-03-24  Havoc Pennington  <hp@pobox.com>
7328
7329         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
7330         to contain the word "theme"
7331
7332 2001-03-24  Havoc Pennington  <hp@pobox.com>
7333
7334         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
7335         slower but finer-grained
7336         (gtk_hsv_focus): get initial focus on the ring or triangle 
7337         according to tab direction
7338
7339         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
7340
7341 2001-03-23  Havoc Pennington  <hp@pobox.com>
7342
7343         * gtk/gtkhsv.c: make this somewhat key-navigable
7344
7345         * gtk/gtkfontsel.c: mnemonics
7346
7347         * gtk/gtkgamma.c: mnemonics
7348
7349         * gtk/gtkcolorsel.c: add mnemonics to labels
7350
7351 2001-03-22  Havoc Pennington  <hp@pobox.com>
7352
7353         Applied big patch from Seth Lytle to fix event handler return
7354         values, slightly modified.
7355
7356         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
7357         handled.
7358         (gtk_calendar_key_press): return TRUE for GDK_space triggers
7359         select_day
7360
7361         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
7362         (gtk_clist_button_release): return TRUE if handled
7363
7364         * gtk/gtkcolorsel.c (mouse_release):
7365         (palette_activate): 
7366         (palette_press): 
7367         (palette_new): 
7368         (mouse_press): 
7369         (get_screen_color): 
7370         fixed return type (void to gboolean), return TRUE,
7371         added GTK_SIGNAL_FUNC cast
7372
7373         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
7374         (void to gboolean), and return TRUE
7375         (gtk_combo_button_release): changed return value to TRUE after
7376         gtk_grab_add on combo->popwin
7377
7378         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
7379         collapse or expand
7380
7381         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
7382         button/motion
7383
7384         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
7385         press/release and motion that trigger act
7386
7387         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
7388
7389         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
7390         for GDK_Return
7391         
7392         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
7393         (gtk_list_button_release): return TRUE if selection
7394
7395         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
7396         press
7397
7398         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
7399         (gtk_menu_shell_button_release): chain parent_menu_shell retval
7400
7401         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
7402         nothing triggered
7403         (gtk_notebook_button_release): return TRUE if we do anything
7404
7405         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
7406         (gtk_spin_button_button_release): return TRUE or chained retval
7407
7408         * gtk/gtktext.c (gtk_text_button_press): 
7409         (gtk_text_button_release): return TRUE
7410         (gtk_text_key_press): remove redundant retval code
7411         
7412         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
7413         and sensitive
7414         (gtk_tree_item_subtree_button_click): changed type to gint, and return
7415         TRUE if sensitive
7416
7417         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
7418         return TRUE
7419
7420 2001-03-23  Havoc Pennington  <hp@redhat.com>
7421
7422         * gtk/testgtk.c: fix warnings
7423
7424         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
7425
7426         * gtk/gtktextview.c: fix warnings
7427
7428         * gtk/gtktext.c (find_cursor_at_line): fix warning
7429
7430         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
7431
7432         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
7433         of this function
7434
7435         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
7436         fix warning
7437
7438         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
7439
7440         * gtk/gtkfontsel.c: fix warning
7441
7442         * gtk/gtkcolorsel.c: fix warnings
7443
7444 2001-03-23  Havoc Pennington  <hp@redhat.com>
7445
7446         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
7447
7448         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
7449
7450         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
7451         and deprecated gtk_check_menu_item_set_show_toggle().
7452         
7453         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
7454
7455         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
7456
7457         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
7458
7459 2001-03-23  Havoc Pennington  <hp@redhat.com>
7460
7461         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
7462         some docs
7463
7464 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
7465
7466         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
7467         this.
7468
7469         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
7470         set_cell to set_value
7471
7472         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
7473         set_cell to set_value
7474
7475 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
7476
7477         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
7478         fix braino.
7479         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
7480         support.
7481
7482         * gtk/gtktreeview.c: Addition of initial sortable support.
7483
7484         * gtk/gtktreestore.c: Addition of initial sortable support.
7485
7486         * gtk/gtkliststore.c: Addition of initial sortable support.
7487
7488         * gtk/gtkmarshal.list: yet another marshaller.
7489
7490         * gtk/gtktreedatallist.[ch]: shared code between the store models
7491         for handling sorting headers.
7492
7493 2001-03-22  Havoc Pennington  <hp@redhat.com>
7494
7495         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
7496         (gtk_container_unset_focus_chain): Add ability to override the 
7497         focus chain for a container explicitly
7498
7499 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
7500
7501         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
7502         added PROP_MNEMONIC_WIDGET.
7503
7504         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
7505         (gtk_window_remove_mnemonic): 
7506         (gtk_window_add_mnemonic): fixed assertions.
7507         (gtk_window_activate_mnemonic): constrain modifier checks to those
7508         permitted by gtk_accelerator_get_default_mod_mask().
7509         got rid of gtk_window_get_default_accel_group().
7510
7511         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
7512         activatable widgets either by focussing or a warning.
7513         added a signal accumulator to ::activate_mnemonic which stops the
7514         emission once a handler returned TRUE.
7515
7516 2001-03-22  Havoc Pennington  <hp@pobox.com>
7517
7518         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
7519         the stock item label
7520
7521         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
7522
7523         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
7524
7525         * demos/gtk-demo/*.c: Add mnemonics all over the place
7526
7527         * gtk/gtklabel.h: mark parse_uline deprecated
7528
7529 2001-03-21  Alexander Larsson  <alexl@redhat.com>
7530
7531         * gtk/gtkitemfactory.[ch]:
7532         Add support for stock and normal imagemenuitems.
7533         
7534         * gtk/testgtk.c:
7535         Add some tests for mnemonics, stock toolbars, stock
7536         and image menuitems in itemfactory and gdk_window_scroll.
7537
7538 2001-03-21  Alexander Larsson  <alexl@redhat.com>
7539
7540         * gtk/gtkbutton.[ch]:
7541         * gtk/gtkdialog.c:
7542         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
7543         removed accel_group argument. Renamed gtk_button_new_accel() to
7544         gtk_button_new_with_mnemonic() and removed accel_group argument.
7545
7546         * gtk/gtkcheckbutton.[ch]:
7547         New function gtk_check_button_new_with_mnemonic().
7548
7549         * gtk/gtkentry.c:
7550         Override activate_mnemonic and just grab focus.
7551
7552         * gtk/gtkitemfactory.c:
7553         Don't add menu uline accel group, instead use mnemonics support.
7554
7555         * gtk/gtklabel.[ch]:
7556         New support for mnemonics.
7557
7558         * gtk/gtkmarshal.list:
7559         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
7560
7561         * gtk/gtkmenu.[c]:
7562         * gtkmenushell.c:
7563         Use mnemonics instead of accel groups for uline
7564         support in menu items.
7565         Removed gtk_menu_get_uline_accel_group() and
7566         gtk_menu_ensure_uline_accel_group().
7567
7568         * gtk/gtkmenuitem.c:
7569         Override activate_mnemonic to handle switching between
7570         menu items if there are collisions.
7571         
7572         * gtk/gtknotebook.c:
7573         Connect to activate_mnemonic on the tab_label, so that
7574         activating it switches to that notebook page.
7575
7576         * gtk/gtkwidget.[ch]:
7577         Add activate_mnemonic signal. New function
7578         gtk_widget_activate_mnemonic() to emit it.
7579         Default implementation does activate/grab_focus.
7580
7581         * gtk/gtkwindow.[ch]:
7582         Add support for mnemonics in windows.
7583         New functions:
7584         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
7585         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
7586
7587         * gtk/testgtk.c:
7588         Update to function name changes.
7589         
7590 2001-03-21  Alexander Larsson  <alexl@redhat.com>
7591
7592         * gtk/gtkimagemenuitem.[c]:
7593         Add gtk_image_menu_item_new_from_stock()
7594
7595 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
7596
7597         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
7598         Fix buglet in meeting.
7599
7600 2001-03-19  Havoc Pennington  <hp@redhat.com>
7601
7602         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
7603         add a bunch of accessor functions. This is because we have
7604         reasonable expectations of extending what fields it contains in
7605         the future.
7606
7607         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
7608         changes
7609
7610         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
7611         GtkIconSource   
7612
7613 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
7614
7615         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
7616         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
7617
7618         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
7619           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
7620           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
7621           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
7622         Change float to double everywhere with the exception of 0<->1.0 alignment
7623         and GtkCurve.
7624
7625 2001-03-19  Tor Lillqvist  <tml@iki.fi>
7626
7627         * gdk/win32/gdkdrawable-win32.c
7628         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
7629         output.
7630
7631         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
7632         gdkwin32.h.
7633
7634 2001-03-18  Tor Lillqvist  <tml@iki.fi>
7635
7636         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
7637         print_event_state, print_event): Use preprocessor macro to make
7638         code more compact. Print also GDK_WINDOW_STATE events.
7639         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
7640         
7641         * gtk/gtk.def
7642         * gtk/makefile.mingw.in: Update.
7643
7644         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
7645         to catch also Cygwin.
7646
7647 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
7648
7649         * gtk/gtkspinbutton.[hc]: added rc-style argument
7650         GtkSpinButton::shadow_type.
7651         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
7652         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
7653         rc-style settings.
7654
7655         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
7656
7657         * gtk/gtkwidget.c: quark cleanups.
7658
7659         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
7660         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
7661         to create_rc_style() (we don't do cloning in standard OO sense).
7662         added per rc style properties.
7663         
7664         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
7665         property values and for caching those. some cleanups.
7666         
7667         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
7668         
7669         * gtk/gtksettings.[hc]: new file for global rc-file properties
7670         (at least currently, should get extended to support X properties
7671         and other communication mechanisms).
7672         
7673         * gtk/gtkwidget.[hc]: added style property support:
7674         (gtk_widget_class_install_style_property_parser): install style
7675         property pspec with parser function for rc-file values other
7676         than LONG, DOUBLE or STRING.
7677         (gtk_widget_class_install_style_property): same as above without
7678         parser (parsers are going to be needed quite infrequently).
7679         (gtk_widget_style_get_property): retrive style property value.
7680         (gtk_widget_style_get_valist): same as above with varargs support,
7681         has NOCOPY semantics.
7682         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
7683
7684 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
7685
7686         * demos/gtk-demo/main.c (row_activated_cb): modified to use
7687         "row_activated" signal.
7688
7689         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
7690         stupidity.  Lets actually pass in the row with this signal...
7691
7692 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
7693
7694         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
7695
7696         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
7697
7698         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
7699         everything into the ::destroy function, and freed a lot more.
7700
7701 2001-03-16  Havoc Pennington  <hp@redhat.com>
7702
7703         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
7704         instead of gint16, to avoid overflow issues, since sizes > 16-bit
7705         are now allowed.
7706
7707 2001-03-16  Havoc Pennington  <hp@redhat.com>
7708
7709         * Applied patch from Nils Barth (bug # 51041) to 
7710         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
7711         in various places.
7712
7713 2001-03-15  Havoc Pennington  <hp@redhat.com>
7714         
7715         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
7716         for properties to set on the tag.
7717
7718         * gtk/testtext.c: fixups to reflect create_tag change
7719         
7720         * gtk/gtktexttag.c (gtk_text_tag_set_property):
7721         background/foreground stipple are objects, not boxed.
7722
7723         * demos/gtk-demo/textview.c: intellihancing
7724
7725 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
7726
7727         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
7728         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
7729
7730 2001-03-16  Alexander Larsson  <alexl@redhat.com>
7731
7732         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
7733         Fix sign error with queued region translations.
7734
7735 2001-03-15  HideToshi Tajima  <tajima@happy>
7736
7737         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
7738         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
7739         * gtk/gtkentry.c (update_im_cursor_location): 
7740         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
7741         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
7742         set_cursor_pos to set_cursor_location in GtkInputContext class
7743
7744 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
7745
7746         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
7747         the location of the cell relative to its area.
7748         * gtk/gtkcell*: modified for above change
7749         * gtk/gtktreeview.c: modified for above change.
7750
7751 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
7752
7753         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
7754          (gtk_tree_view_finalize): actually unref the model.  Thanks to
7755         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
7756
7757 2001-03-14  Havoc Pennington  <hp@redhat.com>
7758
7759         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
7760         
7761         * gtk/gtk.h: remove gtkdata.h
7762
7763         * gtk/Makefile.am: remove gtkdata
7764         
7765         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
7766         not "disconnect" on the adjustments.
7767         
7768         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
7769         GtkData
7770
7771         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
7772         not GtkData
7773
7774         * configure.in: handle case where X render exists, but Pango lacks
7775         Xft support.
7776
7777 2001-03-15 Alexander Larsson  <alexl@redhat.com>
7778
7779         * gtk/gtktoolbar.[ch]:
7780         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
7781         to add stock items to toolbars.
7782
7783         * gtk/Makefile.am:
7784         Remove ../gdk/gdkim.h from gdk_headers.
7785
7786 2001-03-15  Sven Neumann  <sven@gimp.org>
7787
7788         * gdk/gdkim.h: removed
7789         
7790         * gdk/gdkprivate.h
7791         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
7792
7793 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
7794
7795         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
7796         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
7797         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
7798         set_cursor_pos() virtual method
7799
7800         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
7801         (gtk_im_context_xim_set_cursor_pos): add implementation for
7802         set_cursor_pos() method
7803
7804         * gtk/gtkentry.c (recompute_idle_func): set current cursor
7805         position to input methods
7806
7807 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
7808
7809         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
7810         code a lot.
7811
7812         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
7813         g_mem_chunk.
7814         (_gtk_tree_data_list_alloc): use g_mem_chunk.
7815         (_gtk_tree_data_list_node_to_value): Fix to switch on
7816         G_TYPE_FUNDAMENTAL.
7817         (_gtk_tree_data_list_value_to_node): Fix to switch on
7818         G_TYPE_FUNDAMENTAL.
7819         (_gtk_tree_data_list_node_copy): Fix to switch on
7820         G_TYPE_FUNDAMENTAL.
7821
7822 2001-03-12  Havoc Pennington  <hp@redhat.com>
7823
7824         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
7825         to convert to new property API. Also, change default_width and
7826         default_height get_property to return 0 as the flag value for
7827         "unset"; -1 is not a valid value for these fields.
7828
7829 2001-03-12  Havoc Pennington  <hp@redhat.com>
7830
7831         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
7832         enum with registration for icon sizes, instead of strings.
7833
7834         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
7835         gtkwidget.c: Fix to reflect GtkIconSize
7836         
7837 2001-03-12  Alexander Larsson  <alexl@redhat.com>
7838
7839         Make GtkFB compile and link.
7840         
7841         * gdk/linux-fb/gdkdrawable-fb2.c:
7842         window->mapped to GDK_WINDOW_IS_MAPPED(). 
7843         
7844         * gdk/linux-fb/gdkwindow-fb.c:
7845         window->mapped to GDK_WINDOW_IS_MAPPED(). 
7846         Added gdk_window_shape_combine_region.
7847         Added assorted placeholders for unimplemented new GdkWindow API calls.
7848
7849 2001-03-12  Alexander Larsson  <alexl@redhat.com>
7850
7851         * gtk/gtkfilesel.c:
7852         Add more test when converting filenames from/to utf-8.
7853         Don't allow entering text in the filename entry which isn't allowed in
7854         a filename. Just beep instead.
7855
7856 2001-03-12  Alexander Larsson  <alexl@redhat.com>
7857
7858         * gtk/gtkclist.c:
7859         Scroll using gdk_window_scroll(). Don't wait for exposes.
7860         Move the column headers in an order that makes them flash less.
7861
7862 2001-03-10  Hans Breuer  <hans@breuer.org>
7863
7864         * gdk/gdk.def : updated
7865
7866         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
7867         to offseting the clip_mask at the right place
7868
7869         * gdk/win32/gdkwindow-win32.c : don't create background brushes
7870         for all the gdkClasses, especially not for the input_only case.
7871         Otherwise flickering wont be avoidable, because we don't get
7872         WM_ERASEBKGND message for these windows.
7873
7874         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
7875         and fixed massive redraw problems apparently triggered by Alexanders 
7876         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
7877         but it seems to work quite well :-)
7878
7879         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
7880         prototype
7881
7882 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
7883
7884         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
7885         (gtk_list_store_set_cell): Fix a stupid typo.
7886
7887 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
7888
7889         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
7890         select_all not work if you're in SINGLE mode (it doesn't make that
7891         much sense, anyway.)
7892
7893         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
7894         handle types more sanely.
7895         (_gtk_tree_data_list_value_to_node): handle types more sanely.
7896         (_gtk_tree_data_list_node_copy): handle types more sanely.
7897
7898         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
7899         GValue better. Converts the type as well.
7900
7901         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
7902         GValue better. Converts the type as well.
7903
7904 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
7905
7906         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
7907         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
7908         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
7909         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
7910
7911         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
7912         gdk_im/gdk_ic.
7913
7914 2001-03-09  Hans Breuer  <hans@breuer.org>
7915
7916         * gdk/gdk.def : updated
7917
7918         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
7919         for their palette
7920
7921         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
7922         removing
7923
7924         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
7925         removing and implemented Havoc's GdkWindow state functions; 
7926         stick/unstick only as no-op, cause I don't know how to emulate 
7927         on win32 ...
7928
7929         * gtk/gtk.def : updated
7930
7931         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
7932
7933         * gtk/gtktypeutils.c : #include <string.h>
7934
7935         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
7936
7937 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
7938
7939         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
7940         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
7941         not a boxed.
7942
7943 2001-03-09  Alexander Larsson  <alexl@redhat.com>
7944
7945         * docs/Changes-2.0.txt:
7946         Document expose event->region change and that gtk_widget_event
7947         doesn't allow passing expose events.
7948
7949         * gdk/gdkevents.h:
7950         Add region to expose event.
7951         
7952         * gdk/gdkevents.c:
7953         Handle event->region in gdk_event_copy() and gdk_event_free().
7954
7955         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
7956         Generate expose_event->region when creating expose events.
7957
7958         * gdk/x11/gdkevents-x11.c:
7959         Generate expose events with regions when translating X events.
7960
7961         * gtk/gtkcontainer.[ch]:
7962         Default expose handler that propagates expose events to NO_WINDOW
7963         children. New function gtk_container_propagate_expose()
7964
7965         * gtk/gtkwidget.[ch]:
7966         Moved gtk_widget_event implementation to gtk_widget_event_internal.
7967         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
7968         expose events. New function gtk_widget_send_expose() to send expose
7969         events. New function gtk_widget_region_intersect() to calculate
7970         window/region intersections.
7971         
7972         * gtk/gtkmain.c (gtk_main_do_event):
7973         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
7974         Use gtk_widget_send_expose() to send expose events.
7975         
7976         * gtk/gtkbin.c:
7977         * gtk/gtkbox.c:
7978         * gtk/gtkfixed.c:
7979         * gtk/gtkimagemenuitem.c:
7980         * gtk/gtklist.c:
7981         * gtk/gtkpacker.c:
7982         * gtk/gtktable.c:
7983         * gtk/gtktree.c:
7984         Remove expose handler, using the default container implementation
7985         instead.
7986         
7987         * gtk/gtkbutton.c:
7988         * gtk/gtkcheckbutton.c:
7989         * gtk/gtkeventbox.c:
7990         * gtk/gtkfixed.c:
7991         * gtk/gtkhandlebox.c:
7992         * gtk/gtklayout.c:
7993         * gtk/gtklistitem.c:
7994         * gtk/gtkmenu.c:
7995         * gtk/gtkmenubar.c:
7996         * gtk/gtkmenuitem.c:
7997         * gtk/gtknotebook.c:
7998         * gtk/gtkoptionmenu.c:
7999         * gtk/gtkpaned.c:
8000         * gtk/gtkscrolledwindow.c:
8001         * gtk/gtktogglebutton.c:
8002         * gtk/gtktoolbar.c:
8003         * gtk/gtktreeitem.c:
8004         * gtk/gtkviewport.c:
8005         Chain expose handler to parent class handler. Use
8006         gtk_container_propagate_expose() to propagate exposes.
8007
8008         * gtk/gtkclist.c (check_exposures):
8009         * gtk/gtktext.c (process_exposes):
8010         Use gtk_widget_send_expose instead of gtk_widget_event.
8011
8012 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
8013
8014         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
8015
8016 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
8017
8018         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
8019         unref the nodes.   Fixes bug #50058.
8020
8021         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
8022         "::ref_iter" to "::ref_node".
8023         (gtk_tree_model_unref_node): change "::unref_iter" to
8024         "::unref_node". Fixes bug #50064.
8025
8026 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
8027
8028         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
8029         support for invisible cells.
8030          (gtk_tree_view_bin_expose): ditto
8031
8032 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
8033
8034         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
8035         on gobjects.
8036
8037         * tests/testtreefocus.c (main): New test file.
8038
8039         * tests/testtreeview.c: update to latest glib changes.
8040
8041         * tests/testtreecolumns.c: update to latest glib changes.
8042
8043 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
8044
8045         * gtk/testgtk.c: re-enabled event watcher emission hooks.
8046
8047 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
8048
8049         * *.c: added accumulator data argument to g_signal_newc()
8050         functions.
8051
8052         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
8053         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
8054         * gtk/treestoretest.c (make_window):
8055         s/g_signal_connect/g_signal_connectc/.
8056
8057         * gtk/gtktextbuffer.c: completed signal arg fixups,
8058         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
8059
8060 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
8061
8062         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
8063         G_CONST_RETURN.
8064
8065         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
8066         ::hierarchy-changed signal when a widget changes
8067         from anchored to unanchored or vice versa.
8068         (anchored means 
8069          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
8070         Use a private flag to keep track of this efficiently.
8071
8072 2001-03-07  Havoc Pennington  <hp@redhat.com>
8073
8074         * gtk/testgtk.c (create_spins): uglify so that size request gets
8075         tested.
8076
8077         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
8078         request on values for upper/lower, completes #6152
8079
8080 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
8081
8082         * Makefile.am: Remove gtk-config-2.0 again.
8083         (Grrrr, pkg-config. And stops make loops.)
8084
8085 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
8086
8087         * gtk/gtksignal.[hc]: removed old emission hook API.
8088         
8089         * docs/Changes-2.0.txt: fixed sections.
8090         
8091         * gtk/gtktextbuffer.c: signal arg fixups.
8092
8093 2001-03-07  Havoc Pennington  <hp@redhat.com>
8094
8095         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
8096
8097         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
8098         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
8099         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
8100         validation and the redraw which is higher priority than the
8101         validation.
8102
8103 2001-03-07  Havoc Pennington  <hp@redhat.com>
8104
8105         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
8106         (gtk_entry_set_property): remove trailer
8107
8108         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
8109         (gtk_entry_get_width_chars): new functions, to set size request to 
8110         a given number of characters
8111
8112         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
8113
8114         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
8115         (gtk_dialog_get_has_separator): new function
8116         (run_delete_handler): fix to not emit "response" signal
8117         because we already did in the delete event handler installed
8118         at dialog creation time.
8119         
8120         * gtk/gtkdialog.h: add a has_separator property,
8121         add GTK_DIALOG_NO_SEPARATOR flag
8122
8123 2001-03-07  Havoc Pennington  <hp@redhat.com>
8124
8125         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
8126         off decorations for a window.
8127
8128         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
8129         changes
8130
8131         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
8132         to get location of PangoLayout inside the label, closes #51198
8133
8134         * gtk/testgtk.c (create_bbox): fix up button box usage
8135
8136         * gtk/testcalendar.c (create_calendar): fix up button box usage
8137
8138         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
8139
8140         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
8141
8142         * gtk/gtkhbbox.h: deprecations
8143
8144         * gtk/gtkvbbox.h: deprecations
8145
8146         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
8147         emulate deprecated gtk_button_box_get_spacing
8148
8149         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
8150         the "set global default" functions
8151         (struct _GtkButtonBox): remove "spacing" field, use the one from 
8152         GtkBox base class
8153
8154         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
8155
8156         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
8157         render the icon, return the missing image icon.
8158
8159         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
8160         image icon if the load fails.   
8161
8162         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
8163         when no image is found; should be the Netscape "missing image"
8164         icon eventually but for now is a random image
8165
8166         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
8167         role for the session manager
8168
8169         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
8170
8171         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
8172         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
8173
8174         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
8175
8176 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
8177
8178         * gtk/*.c: marshaller fixes.
8179         
8180         * gtk/gtkmarshal.list: extreme cleanup.
8181
8182         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
8183         param spec for now.
8184
8185         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
8186         where appliable.
8187
8188         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
8189         special cased autogenerated boxed types from gtktypebuiltins_ids.c
8190         which are not reference counted:
8191         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
8192         PangoFontDescription, GtkTreeIter and GtkTreePath.
8193
8194 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
8195
8196         * gtk/gtktreeselection.h: 
8197         * gtk/gtktreemodel.c:
8198         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
8199         file should be included directly, and gobject/gmarshal.h
8200         as well as gtk/gtkmarshal.h even can't be included directly.
8201
8202         * Makefile.am: grr, install gtk-config-2.0.
8203
8204         * gtk/testgtk.c:
8205         * gtk/simple.c:
8206         * gtk/gtkmenu.c:
8207         * gtk/gtkitemfactory.c: use g_object_connect() instead of
8208         passing "*signal*::*" args to gtk_widget_set().
8209         
8210         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
8211         
8212         * gtk/*.c: removed trailer arg from property setters and getters.
8213         macro fixups.
8214
8215 2001-03-07  Alexander Larsson  <alexl@redhat.com>
8216
8217         * gtk/gtklabel.c (set_markup): Removed warning
8218
8219 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
8220
8221         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
8222         field to allow you to hide cell renderers.
8223
8224         * gtk/gtkcellrenderer.c: Add support for invisible cells.
8225
8226         * gtk/gtktreeview.c: Add support for invisible cells.
8227
8228 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
8229
8230         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
8231         Add "clicked" signal back to columns.
8232
8233         * ChangeLog: remove conflict markers.
8234
8235 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
8236
8237         * gtk/gtkbutton.c: Add animation of activation by, on 
8238         activate, pressing the button, and adding a timeout that 
8239         releases the button after 250ms or on key release and
8240         emits ::clicked. (#51501)
8241
8242         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
8243         action area, we connect to ::clicked instead of ::activate
8244         so the dialog stays up through the animation.
8245
8246 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
8247
8248         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
8249         check the ignore_enter flag for the menu shell that
8250         the item is actually a child of, not for attached
8251         submenus. (#51536)
8252
8253 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
8254
8255         * gtk/gtkmain.c (gtk_propagate_event): Only do special
8256         special key-press grab handling for widgets within
8257         GtkWindows. Otherwise, fall through to normal case.
8258
8259         This prevents key events being sent twice to GtkInvisible
8260         widgets, which can cause all sorts of mischief.
8261
8262 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
8263
8264         * gtk/gtkmain.c (gtk_propagate_event): When a grab
8265         widget is in effect, give the grab widget a first
8266         crack at KEY_PRESS/RELEASE events. (#424)
8267
8268 2001-03-06  James Henstridge  <james@daa.com.au>
8269
8270         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
8271         offset for the window_state_event to point at window_state_event
8272         rather than no_expose_event.
8273
8274 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
8275
8276         * gtk/gtkimmodule.h: fix busted /* comment */
8277
8278 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
8279
8280         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
8281         object properties.
8282
8283 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
8284
8285         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
8286         add object properties.
8287
8288         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
8289         to add object properties.
8290
8291         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
8292         object properties.
8293
8294         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
8295         add object properties.
8296
8297         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
8298         object properties.
8299
8300 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
8301
8302         * gtk/gtktreemodel.c: renamed "child_toggled" to
8303         "has_child_toggled".
8304
8305         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
8306         handle new signal name.
8307
8308         * gtk/gtktreestore.c: Updated to handle new signal name.
8309         * gtk/gtklisttore.c: Updated to handle new signal name.
8310         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
8311
8312 2001-03-05  Alexander Larsson  <alexl@redhat.com>
8313
8314         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
8315         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
8316
8317 2001-03-05  Michael Natterer  <mitch@gimp.org>
8318
8319         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
8320         pixbuf-engine coincidentially also failed to make one of it's
8321         parent_class pointers static, causing overwriting of GtkLabel's
8322         parent_class pointer in pixbuf_style_class_init().
8323         (Will commit the fix to the pixbuf-engine too).
8324
8325 2001-03-05  Alexander Larsson  <alexl@redhat.com>
8326
8327         * gdk/gdkwindow.h:
8328         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
8329         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
8330         gdk_window_set_icon_list for net wmspec functionality.
8331
8332         * gdk/x11/gdkwindow-x11.c:
8333         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
8334         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
8335         gdk_window_set_icon_list.
8336         Added gdk_wmspec_change_state helper function and used it in the code.
8337         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
8338
8339         * gtk/gtkdialog.c (gtk_dialog_init):
8340         Set GDK_WINDOW_TYPE_HINT_DIALOG.
8341
8342         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
8343         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
8344
8345         * gtk/gtkwindow.c:
8346         new function gtk_window_set_type_hint.
8347         On realize, set type hint and modal hint.
8348
8349         * gtk/gtkwindow.h:
8350         Added type_hint field and gtk_window_set_type_hint.
8351
8352 2001-03-05  Alexander Larsson  <alexl@redhat.com>
8353
8354         * gtk/gtklabel.[ch]:
8355         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
8356         New function gtk_label_get_accel_keyval () to get the underline accelerator
8357         of the label. Setting the label pattern overrides other attributes.
8358
8359 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
8360
8361         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
8362         Added missing initializers to gtk_rc_style_init().
8363
8364 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
8365
8366         * gtk/gtktextview.c: fixed bug #51097 about setting 
8367         gtk_text_view_set_border_window_size() if the widget is 
8368         already realized.
8369
8370 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
8371
8372         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
8373
8374         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
8375         comment. Won't do to have duplicated doc comments between
8376         the platform subdirs.
8377
8378 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
8379
8380         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
8381           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
8382
8383         Detectable auto-repeat - make a repeating key generate
8384         press/press/press/release instead of press/release pairs.
8385
8386         If we have Xkb and XkbSetDectableAutoRepeat supports
8387         that, we do it that way. Otherwise, when we get
8388         a release event, we check ahead with XPending to see
8389         if the next key is a KeyPress with the same keycode
8390         and timestamp. (Not 100% reliable, but pretty close.)
8391           
8392 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
8393         
8394         * gtk/gtkmain.c (gtk_propagate_event): Only do special
8395         special key-press grab handling for widgets within
8396         GtkWindows. Otherwise, fall through to normal case.
8397  
8398         This prevents key events being sent twice to GtkInvisible
8399         widgets, which can cause all sorts of mischief.
8400  
8401 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
8402  
8403         * gtk/gtkmain.c (gtk_propagate_event): When a grab
8404         widget is in effect, give the grab widget a first
8405         crack at KEY_PRESS/RELEASE events. (#424)
8406  
8407 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
8408
8409         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
8410         to extend the selection. (Roughly based on patch
8411         from Jay Cox, #50939)
8412
8413         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
8414         to properly handle previous GDK_BUTTON_PRESS. 
8415         (Patch from Jay Cox, #50938)
8416
8417         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
8418         '\0' back along with the deleted text. (#51148)
8419
8420 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
8421
8422         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
8423         the group when extracting it from the X keyboard event.
8424
8425         * modules/input/Makefile.am modules/input/imipa.c: 
8426         Simple module for entering IPA. (Do we need a 
8427         gtk-stupid-input-tricks CVS module?)
8428
8429 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
8430
8431         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
8432         const.
8433
8434         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
8435
8436         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
8437         is no focus widget for the dialog currently, grab the focus as well
8438         as the default.
8439
8440         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
8441         the action area's children to iterate through, not the
8442         dialog's children.
8443
8444 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
8445
8446         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
8447         Add plug-socket tests. (Won't work worth a darn until I commit
8448         the rest of the plug-socket changes, but no reason these
8449         can't go into CVS now.)
8450
8451 2001-03-02  Havoc Pennington  <hp@redhat.com>
8452
8453         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
8454         _gdk_region_get_xrectangles()
8455
8456         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
8457
8458         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
8459
8460         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
8461         function, contributed by Ron Steinke    
8462
8463         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
8464         gdk_net_wm_supports
8465
8466         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
8467         New function, contributed by Ron Steinke
8468
8469         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
8470         used to line up the text in the entry when using the entry for
8471         editable sheet cell hacks
8472
8473         * gtk/testgtk.c (create_entry): test the activate_default setting
8474         on GtkEntry
8475
8476         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
8477         cause the entry to activate the default button for a dialog when 
8478         activated
8479         (gtk_entry_get_activates_default): new function
8480
8481 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
8482
8483         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
8484         Hwang to move call to sync_selection() up a few lines
8485         to before the row list is modified, to fix crash when
8486         removing rows in the undo_selection list.
8487
8488         (Test case provided by Daniel Elstner:
8489
8490         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
8491
8492 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
8493
8494         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
8495         of tree->root_tree in parent_set rather than _map(), 
8496         fixing #50892 in a bit better manner.
8497
8498 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
8499
8500         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
8501
8502 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
8503
8504         * gtk/gtkstyle.c : Remove duplicate fwd decl for
8505         gtk_default_draw_shadow.
8506
8507 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
8508
8509         * gdk/gdkimage.c (gdk_image_new): Remove excess 
8510         warning, make warnings more verbose, treat a error
8511         in shmat as permanent, and don't try again.
8512         (#51163, Ed Randall.)
8513
8514 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
8515
8516         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
8517         delay for the first click before starting to scroll.
8518         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
8519
8520         * gtk/gtktext.c: GtkText should have I-beam cursor. 
8521         (based on gtk-enf-990513-1.patch, Eric Fisher.)
8522
8523 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
8524
8525         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
8526         cleanup to remove some references to unused
8527         ->xoffset, ->yoffset.
8528
8529 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
8530
8531         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
8532         mask. (#51039, fix from Martin Maierhofer)
8533
8534 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
8535
8536         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
8537         for unshifted + and shifted = for non-us keyboards.
8538         Make <Control>+ and <Control>- work as well as 
8539         <Control>KP_Plus, <Control>KP_Minus for recursive
8540         open/close.  (#2682, René Seindal)
8541
8542 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
8543
8544         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
8545         the active menu item before deactivating the menu,
8546         so gtk_menu_popdown doesn't change the history. (#50964)
8547         
8548 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
8549
8550         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
8551         draw lines with text_gc rather than black_gc.
8552         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
8553
8554 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
8555
8556         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
8557         Move handling of buttons fully in gtktreeviewcolumn.  This code is
8558         less interrelated then it was, but it still requires the
8559         GtkTreeView to map it.
8560
8561         * test/testtreecolumn.c: Now I can add a column to one view,
8562         remove it, add it to the another view, remove it, then re-add it
8563         to the first.  Nifty.
8564
8565 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
8566
8567         * docs/tutorial/gtk-tut.sgml: Minor corrections
8568
8569 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
8570
8571         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
8572         GtkRowReference.
8573
8574 2001-02-28  Havoc Pennington  <hp@redhat.com>
8575
8576         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
8577         draw_default
8578         (gtk_widget_draw_focus): remove this function; we could instead
8579         make it just gtk_widget_draw(), but in most cases I think the
8580         result would be broken user code, so think it's better to have
8581         that code not compile and get fixed
8582         (gtk_widget_draw_default): ditto
8583
8584         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
8585         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
8586         
8587         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
8588         widgets lose/get the default, instead of calling draw_default
8589         
8590         * docs/Changes-2.0.txt: note about all this
8591
8592         Then fixed every widget in GTK, I won't list all the filenames.
8593
8594 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
8595
8596         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
8597         _gtk_tree_row_reference_deleted.
8598         (inserted_callback): Proxy out to
8599         _gtk_tree_row_reference_inserted.
8600         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
8601         get around signal emission ordering problem.
8602
8603         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
8604         fix to work with SINGLE 
8605         (_gtk_tree_selection_internal_select_node): Major sanitization on
8606         selections.  SINGLE now seems to work.
8607
8608         * tests/Makefile.am: add testtreecolumn.c:
8609
8610         * tests/testtreecolumn.c: New test.  Mostly points out selection
8611         bugs currently, but will test columns later.
8612
8613         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
8614         selection bug.  I hate touching this code -- it's scary.
8615
8616 2001-02-26  Havoc Pennington  <hp@redhat.com>
8617
8618         * gtk/testgtk.c: test the window state stuff
8619
8620         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
8621         window come to the user's attention as if it were just created
8622         (gtk_window_iconify): new function
8623         (gtk_window_deiconify): new function
8624         (gtk_window_stick): new function
8625         (gtk_window_unstick): new function
8626         (gtk_window_maximize): new function
8627         (gtk_window_unmaximize): new function
8628
8629         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
8630
8631         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
8632
8633         * gdk/x11/gdkevents-x11.c: create window state events when
8634         appropriate
8635         (gdk_wmspec_supported): new function
8636
8637         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
8638         iconification before showing the window
8639         (gdk_window_deiconify): new function
8640         (gdk_window_stick): new function
8641         (gdk_window_unstick): new function
8642         (gdk_window_maximize): new function
8643         (gdk_window_unmaximize): new function
8644
8645         * gdk/gdkwindow.c: store the window state in the window; 
8646         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
8647         window->mapped.
8648         (gdk_window_get_state): return the current window state
8649
8650         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
8651         (gdk_event_get_state): handle GDK_WINDOW_STATE
8652         (gdk_synthesize_window_state): function to create the window state
8653         events
8654
8655         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
8656         event, for changes to "window state" such as maximized, sticky, 
8657         etc.
8658         
8659         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
8660         focuses a window
8661
8662         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
8663         finds out if we support a given WM spec hint
8664
8665 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
8666
8667         * docs/faq/gtk-faq.sgml: New question re memory leaks.
8668
8669 2001-02-25  Hans Breuer  <hans@breuer.org>
8670
8671         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
8672         cause we want to loose those prototypes only in the latter case
8673
8674         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
8675         GdkPixmapImplWin32 because it itsn't derived from it. Use the
8676         impl member variable instead
8677
8678         * gtk/gtk.def : updated
8679
8680         * gtk/gtklist.c : 
8681         * gtk/gtkmenus.c : include <string.h> for memset ()
8682
8683         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
8684         for everthing built here, but for gtk-x.x.dll only. This solves
8685         problem of indifferent gtk type definitions
8686
8687 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
8688
8689         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
8690
8691 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
8692
8693         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
8694         column that is exposed.
8695
8696         (_gtk_tree_view_update_size): Changed name from set_size, and
8697         changed function to do more work, and not force people calling it
8698         to figure out the size.  Simplifies a lot of code elsewhere.
8699
8700 2001-02-23  Alexander Larsson  <alexl@redhat.com>
8701
8702         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
8703         return solid masks for xpms that have no transparent color.
8704         This makes the ..._create_from_xpm... API backwards
8705         compatible.
8706
8707 2001-02-23  Tor Lillqvist  <tml@iki.fi>
8708
8709         * README.win32: Update. Mention the gtk-1-3-win32-production
8710         branch.
8711
8712         * gdk/win32/bdfcursor.c: New file. A program that generates
8713         xcursors.h. Thanks to Stefan Ondrejicka.
8714
8715         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
8716         compact format.
8717
8718         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
8719
8720         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
8721         function, uses xcursors.h.
8722         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
8723         cursor from inline data instead of using LoadCursor() to generate
8724         it from a resource.
8725
8726         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
8727         event, must check the Windows message for mouse button state, as
8728         the GDK event state might not have been built if it is
8729         undelivered. Remove one goto.
8730
8731         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
8732         SetCursor() if the current cursor as returned by GetCursor() is
8733         the window's previous cursor. The ChildWindowFromPoint() test
8734         apparently didn't work correctly.
8735
8736         * gdk/win32/rc/*.cur: Remove.
8737
8738         * gdk/win32/rc/gdk.rc.in: Remove cursors.
8739
8740         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
8741
8742         * gtk/makefile.{mingw,msc}.in: Updates.
8743
8744 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
8745
8746         * gtk/gtktreemodel.h: add functions for signal emission.
8747
8748         * gtk/gtktreestore.c: move to use above functions instead of
8749         g_signal_emit.
8750
8751         * gtk/gtkliststore.c: ditto
8752
8753 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
8754
8755         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
8756         GObject instead of GtkObject.
8757
8758         * gtk/gtkliststore.c: ditto.
8759
8760         * gtk/gtktreemodelsort.c: ditto.
8761
8762         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
8763         GtkTreeModelIface, instead of in each model.
8764
8765 2001-02-21  Havoc Pennington  <hp@redhat.com>
8766
8767         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
8768         unbreak this function
8769
8770         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
8771         properties
8772
8773         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
8774         properties
8775
8776         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
8777         properties
8778
8779         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
8780         mean unset the max length
8781
8782 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
8783
8784         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
8785         Changed name to be set_cell_data_func to make it clear what
8786         the functino does.  Close bug #51069.
8787
8788 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
8789
8790         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
8791         have memory actually freed.  Keeps box running longer.
8792
8793 2001-02-21  Alexander Larsson  <alexl@redhat.com>
8794         
8795         * gtk/gtkseparatormenuitem.[ch]:
8796         Added new menu separator item. The drawing and size handling
8797         is still done in GtkMenuItem, but the API is a bit more sane.
8798         
8799         * gtk/Makefile.am:
8800         Add gtkseparatormenuitem.[ch].
8801
8802         * gtk/gtk.h:
8803         Add gtkseparatormenuitem.h.
8804         
8805         * gtk/gtkentry.c:
8806         * gtk/gtkmenufactory.c:
8807         * gtk/gtktextview.c:
8808         Use the new API for menu separators.
8809         
8810         * demos/gtk-demo/menus.c (create_menu):
8811         Add some GtkSeparatorMenuItem demo code.
8812
8813 2001-02-20  Havoc Pennington  <hp@redhat.com>
8814
8815         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
8816         Lee Mallabone
8817
8818         * gtk/gtkarrow.c: Convert to new property API, patch from 
8819         Lee Mallabone
8820
8821 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
8822
8823         * tests/testtreeview.c (toggled_callback): fix to reflect change
8824         in GtkTreeModelStore.
8825
8826 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
8827
8828         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
8829         function to create an icon set from a pixbuf.
8830
8831 2001-02-20  Alexander Larsson  <alexl@redhat.com>
8832
8833         * gtk/gtkcellrenderertext.[ch]:
8834         Add a "markup" property.
8835
8836         * gtk/treestoretest.c:
8837         Use the markup property, remove some leftover stuff from
8838         GtkTreeModelMapping.
8839
8840 2001-02-20  Alexander Larsson  <alexl@redhat.com>
8841
8842         * gtk/gtklabel.c (gtk_label_set_selectable):
8843         Queue a redraw if the selectable setting was changed.
8844
8845 2001-02-20  Alexander Larsson  <alexl@redhat.com>
8846
8847         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
8848         Actually copy the whole gc, not just the public parts.
8849         
8850         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
8851         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
8852         labels.
8853
8854 2001-02-19  Havoc Pennington  <hp@pobox.com>
8855
8856         * gdk/gdkwindow.c: docs
8857
8858         * gdk/gdkrgb.c: docs
8859
8860         * gdk/gdkregion-generic.c: docs
8861
8862         * gdk/gdkgc.c (gdk_gc_set_values): docs
8863
8864         * gdk/gdkdraw.c: docs
8865
8866         * gdk/gdkdrawable.h: deprecate drawable get/set data
8867
8868 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
8869
8870         * demos/gtk-demo/dialog.c: Add simple new demo.
8871
8872 2001-02-19  Havoc Pennington  <hp@redhat.com>
8873
8874         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
8875         insert_child_anchor signal, bug #50245
8876
8877         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
8878         from create_child_anchor, so the anchor is passed in
8879
8880         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
8881         (_gtk_widget_segment_new): have the child anchor object passed in, 
8882         instead of creating it.
8883
8884         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
8885         to gtk_text_buffer_get_modified
8886
8887 2001-02-19  Havoc Pennington  <hp@redhat.com>
8888
8889         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
8890         changed GLib without fixing GTK
8891
8892         * gtk/gtkrange.h: Rename all the stupid implementation detail 
8893         functions to have an underscore in front. Most of them should 
8894         probably just go away, but for starters don't export them.
8895         Bug #50482
8896
8897 2001-02-19  Havoc Pennington  <hp@redhat.com>
8898
8899         * gdk/gdkcolor.h: test was backward, so deprecated functions were
8900         excluded by default
8901
8902         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
8903         clean up the old code a bit
8904
8905         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
8906         inconsistent state
8907
8908         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
8909         draw inconsistent state
8910
8911         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
8912         (create_menu): add inconsistent test
8913
8914         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
8915         new function
8916         (gtk_check_menu_item_get_inconsistent): new function
8917         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
8918         state (using etched in for now)
8919
8920         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
8921         draw inconsistent state
8922
8923         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
8924         function, used when the user has selected a range of stuff in
8925         different states
8926         (gtk_toggle_button_get_inconsistent): accessor for that
8927         (gtk_toggle_button_paint): draw inconsistent state (etched in?
8928         don't know what else to do)
8929
8930 2001-02-19  Hans Breuer <hans@breuer.org>
8931
8932         * gtk/gtk.def : updated exported symbols
8933
8934         * gtk/makefile.msc.in : updated
8935
8936         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
8937         a colormap, when invoked from testgtk::entry. I'm not sure where
8938         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
8939         avoids immediate crashing ...
8940
8941         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
8942         any objections ?
8943
8944         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
8945         0 parameter. At least msvc doesn't like macros with var args. 
8946         I simply removed the extra 0, was it a feature or a typo ?
8947
8948         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
8949         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
8950         because the value assignment to the internal struct wasn't working.
8951         I'm not absolutely sure. The problem could have been resolved by
8952         changing the "func" declartion in the struct, but was the pointer
8953         to the function pointer intended ?
8954
8955         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
8956
8957         * gdk/gdk.def : updated exported symbols
8958
8959         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
8960         only use SetDIBitsToDevice if there is a palette at the drawable
8961         and the image is GDK_VISUAL_PSEUDO_COLOR
8962
8963         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
8964
8965         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
8966
8967         * gdk/*/makefile.msc : updated
8968
8969 2001-02-19  Havoc Pennington  <hp@redhat.com>
8970
8971         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
8972         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
8973
8974         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
8975         (gdk_key_repeat_restore): nuke
8976
8977         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
8978         (gdk_init_check): no atexit func
8979
8980         * gdk/gdkrgb.h: mark some stuff deprecated
8981
8982         * gdk/gdkcolor.h: mark some stuff deprecated
8983         
8984         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
8985
8986         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
8987
8988 2001-02-16  Havoc Pennington  <hp@redhat.com>
8989
8990         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
8991         scroll steps.
8992
8993         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
8994         steps, and add Ctrl-arrow shortcuts for paging visually as with
8995         HScale, since Page Up and Page Down move logically.
8996
8997         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
8998         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
8999         
9000         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
9001         steps
9002         (gtk_range_scroll): handle the visual steps
9003
9004         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
9005         scroll steps
9006
9007         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
9008         steps, not the logical ones.
9009
9010         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
9011         (scroll_vertical): handle up/down steps
9012
9013 2001-02-19 Alexander Larsson  <alexl@redhat.com>
9014
9015         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
9016         Copy data and free data with free().
9017
9018         * gdk-pixbuf/gdk-pixbuf.c:
9019         * gdk-pixbuf/io-jpeg.c:
9020         * gdk-pixbuf/io-png.c:
9021         Use g_try_malloc/g_free instead malloc/free.
9022         
9023         * gdk-pixbuf/test-gdk-pixbuf.c:
9024         Must... initialize... gobject...
9025         
9026         * gdk-pixbuf/pixops/timescale.c:
9027         * gtk/gtkcalendar.c:
9028         Use g_malloc instead of malloc.
9029         
9030 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
9031
9032         * gtk/testgtkrc:
9033         Comment out property assignments, these don't work yet.
9034
9035 2001-02-17  Havoc Pennington  <hp@pobox.com>
9036
9037         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
9038         bit.
9039
9040 2001-02-17  Havoc Pennington  <hp@pobox.com>
9041
9042         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
9043         shadowed variables that had broken size request in some cases,
9044         leading to bogus tooltips (#50996)
9045
9046 2001-02-06  Jon K Hellan  <hellan@acm.org>
9047
9048         Implement fast browsing of tooltips, bug #50619
9049         
9050         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
9051         and last_popdown
9052         
9053         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
9054         use_sticky_delay and last_popdown.
9055         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
9056         time of popdown.
9057         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
9058         is NULL.
9059         (gtk_tooltips_recently_shown): New static function.  Return true
9060         if < sticky_delay has elapsed since last popdown.
9061         (gtk_tooltips_event_handler): Display window after sticky_delay
9062         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
9063         since last popdown.
9064         
9065 2001-02-17  Havoc Pennington  <hp@pobox.com>
9066
9067         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
9068         instead of (). #6394
9069
9070         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
9071         G_CONST_RETURN, make it return by reference, #50473
9072         
9073 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
9074
9075         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
9076         generated ENTER_NOTIFY event with 0, otherwise not explicitely
9077         setup fields contain garbage (e.g. subwindow, breaking
9078         gdk_drawable_ref() upon event copy).
9079         (gtk_menu_stop_navigating_submenu_cb): same here.
9080
9081         * gtk/gtklist.c (gtk_list_vertical_timeout): 
9082         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
9083         * gtk/gtkclist.c (vertical_timeout): 
9084         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
9085         default-zero-intialization for unions to memset(,0,), as unions are
9086         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
9087         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
9088
9089         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
9090         g_closure_sink() warning.
9091
9092         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
9093         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
9094         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
9095         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
9096         
9097 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
9098
9099         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
9100         gtk_*_store_get, and moved to GtkTreeModel.
9101
9102         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
9103
9104         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
9105
9106         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
9107
9108         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
9109         set the func.
9110
9111         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
9112         freeze/thaw notify between setting all the properties for a cell.
9113
9114         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
9115
9116 2001-02-15  Havoc Pennington  <hp@redhat.com>
9117
9118         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
9119         the X coordinates so they're with respect to the line, rather than 
9120         with respect to the layout.
9121
9122         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
9123         Mallabone
9124
9125         * gtk/testgtk.c (create_range_controls): add vscale tests, 
9126         and inverted test
9127
9128         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
9129         #50806
9130
9131         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
9132
9133         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
9134         gtk_text_iter_is_end
9135
9136         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
9137         rename gtk_text_buffer_get_end_iter
9138
9139         * gtk/testgtk.c (create_labels): Add test for selectable
9140
9141         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
9142         the selection stuff. This code is kind of broken since it doesn't 
9143         use the theme engine.
9144
9145         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
9146         fix infinite loop and y offset problem
9147         (gdk_draw_layout_line_with_colors): fix foreground color handling
9148
9149         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
9150         that makes the label selectable.
9151         
9152         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
9153         layout when the style is set, since fonts etc. could have changed.      
9154
9155 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
9156
9157         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
9158
9159         * gtk/gtktreemodelsimple.[ch]: removed.
9160
9161 2001-02-16  Alexander Larsson  <alexl@redhat.com>
9162
9163         * gtk/gtktreemodelmapping.[ch]:
9164         New files. Implement GtkTreeModelMapping.
9165         
9166         * gtk/Makefile.am:
9167         Add gtktreemodelmapping.[ch].
9168         
9169         * gtk/gtk.h:
9170         Add gtktreemodelmapping.h
9171
9172         * gtk/treestoretest.c:
9173         Test the GtkTreeModelMapping
9174
9175 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
9176
9177         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
9178         have a demo, we might as well pass in real values.  Thanks to
9179         clahey for pointing this out.
9180
9181 2001-02-14  Havoc Pennington  <hp@pobox.com>
9182
9183         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
9184         "static" to a private function
9185         (gtk_image_menu_item_class_init): remove destroy handler,
9186         add "image" object property
9187
9188 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
9189
9190         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
9191         Add a shortcut if the window and the current clip_region doesn't
9192         overlap. This is needed when there are a lot of windows in a
9193         window. The layout test in testgtk is a good test.
9194
9195         * gdk/linux-fb/gdkwindow-fb.c:
9196         Whitespace fix.
9197
9198 2001-02-13  Sven Neumann  <sven@convergence.de>
9199
9200         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
9201
9202 2001-02-13  Alexander Larsson  <alexl@redhat.com>
9203
9204         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
9205         Don't reference last_cursor if it is null. Fixes crash when rotating
9206         the screen before having moved the mouse.
9207
9208         * gdk/linux-fb/gdkcc-fb.c: Zapp!
9209
9210         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
9211
9212         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
9213         when using 90 or 270 degrees rotation.
9214
9215 2001-02-12  Havoc Pennington  <hp@pobox.com>
9216
9217         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
9218         it always set the foreground, even if we were only using
9219         a stipple.
9220         (gdk_draw_layout_line_with_colors): new function, allow
9221         override colors
9222         (gdk_draw_layout_with_colors): new function, allow override
9223         colors
9224         (gdk_pango_layout_line_get_clip_region): function to get the clip
9225         region for a logical text range
9226         (gdk_pango_layout_get_clip_region): get the clip region for a
9227         logical text range
9228
9229         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
9230         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
9231         the right number of arguments.
9232
9233         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
9234         enhance the function to check that node data corresponds to a 
9235         view still belonging to the tree.
9236
9237         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
9238         GtkTreePath
9239         (gtk_tree_view_inserted): ditto
9240         (gtk_tree_view_child_toggled): ditto
9241
9242         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
9243         simplify this code.
9244
9245         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
9246         a PangoAttrList
9247
9248         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
9249
9250         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
9251
9252         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
9253         size in the size request 
9254         (gtk_menu_bar_size_allocate): consider toggle size here
9255
9256         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
9257         that displays a widget in the toggle slot
9258
9259         * gtk/testgtk.c: test GtkImageMenuItem
9260
9261         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
9262         
9263         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
9264         request and allocation
9265
9266         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
9267
9268         * gtk/gtkcheckmenuitem.c
9269         (gtk_check_menu_item_toggle_size_request): ditto
9270         
9271 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
9272
9273         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
9274         reference.
9275
9276         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
9277         and refuse to initialize GTK+ if they fail.
9278
9279 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
9280
9281         * configure.in: Add check for gtk-doc version.
9282
9283 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
9284
9285         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
9286         where the xpad/ypad was only being used on one side!
9287
9288 2001-02-11  Tor Lillqvist  <tml@iki.fi>
9289
9290         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
9291         function, copied from X11 version.
9292
9293         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
9294         DestroyCursor failures. The reason for the problem (despite the
9295         inconsistent messages from GetLastError()) was that
9296         DestroyCursor() cannot be called while a cursor is set in a
9297         window. Set the new cursor first and then destroy the old one.
9298         Thanks to jpe@archaeopteryx.com.
9299
9300         * gdk/win32/gdkcc-win32.c: Remove.
9301
9302         * gdk/win32/Makefile.am: Remove from here, too.
9303         
9304         * gdk/gdk.def
9305         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
9306
9307         * gtk/gtk.def
9308         * gtk/makefile.mingw.in: Updates.
9309
9310 2001-02-08  Havoc Pennington  <hp@redhat.com>
9311
9312         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
9313         add a widget to a bin that already has a child.
9314
9315         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
9316
9317         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
9318         
9319         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
9320
9321         * gdk/gdk.h: remove gdkcc.h
9322
9323         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
9324
9325         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
9326         GdkPixbuf, since the previous implementation was GdkColorContext
9327         dependent.
9328
9329         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
9330         
9331 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
9332
9333         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
9334         a sane value!
9335
9336 2001-02-08  Havoc Pennington  <hp@redhat.com>
9337
9338         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
9339         lighten them.
9340
9341 2001-02-08  Havoc Pennington  <hp@redhat.com>
9342
9343         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
9344         validation idle
9345
9346         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
9347         cell renderer
9348
9349         * demos/pixbuf-demo.c (timeout): remove deprecated
9350         gtk_widget_draw
9351
9352         * demos/testpixbuf-save.c (main): remove deprecated
9353         gtk_drawing_area_size
9354
9355         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
9356         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
9357         at the start of the allocation.
9358         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
9359         unsetup or NULL model.
9360
9361         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
9362         even/odd/sorted cells in the tree view.
9363
9364         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
9365         bugfixes
9366
9367         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
9368         backgrounds with draw_flat_box using different detail for even/odd
9369         rows.
9370
9371         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
9372         row, so we can draw the alternating colors thing
9373
9374         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
9375         property from a synonym property, notify for the synonym.
9376         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
9377         (gtk_text_tag_get_property): Always return the font, even if
9378         all its fields aren't set
9379
9380         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
9381         store the attr list; it leaves us with no way to change attributes
9382         in _render according to the render flags, and no way to implement
9383         get_property. Instead store all the specific text attributes. 
9384         Separate whether an attribute is enabled from its value. Sync all
9385         properties with GtkTextTag, make them all consistent, etc.
9386
9387         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
9388         renderers can highlight the sort row/column     
9389
9390         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
9391         accessor functions to get values; this has the side effect of
9392         showing up which accessor functions were missing. Added those.
9393
9394         * gtk/gtktreeviewcolumn.h: Replace set_justification with
9395         set_alignment, to be consistent with GtkLabel, GtkMisc
9396
9397         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
9398         arrow.
9399
9400         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
9401
9402         * gtk/gtktreesortable.h: updates in here
9403
9404 2001-02-07  Sven Neumann  <sven@convergence.de>
9405
9406         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
9407         pango dimensions after painting the background. We used to draw
9408         gigantic flat boxes here.
9409
9410 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
9411
9412         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
9413         error introduced with earlier commit) (pointed out by
9414         Ollie Lho)
9415
9416 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
9417
9418         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
9419         which are no longer necessary.
9420
9421 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
9422
9423         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
9424
9425 2001-02-04  Tor Lillqvist  <tml@iki.fi>
9426
9427         * gdk/gdk.def
9428         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
9429         Provide dummy implementations.
9430
9431 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
9432
9433         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
9434
9435         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
9436         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
9437         deprecated this function.
9438
9439         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
9440         argument.
9441
9442 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
9443
9444         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
9445
9446 2001-02-03  Havoc Pennington  <hp@pobox.com>
9447
9448         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
9449         Mikael Hermansson with patch from Mikael (if there was a toggle
9450         start one after the first character in the range, this function
9451         was broken). Bug #50380
9452
9453 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
9454
9455         * configure.in: Remove confusing comment about X11.
9456
9457 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
9458
9459         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
9460         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
9461         
9462 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
9463
9464         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
9465         it breaks things on BSD. If you want to compile GTK+ with
9466         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
9467         when configuring, since GTK+ simply can't be "pure ANSI" 
9468         in the header files it uses. (#8170, Greg Hudson)
9469
9470 2001-02-02  Havoc Pennington  <hp@redhat.com>
9471
9472         * gtk/gtkwindow.c: docs
9473
9474         * gtk/gtkwidget.c: docs
9475         (gtk_widget_set_colormap): add a reference to the colormap
9476         (gtk_widget_get_default_colormap): add a reference to the colormap
9477
9478         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
9479
9480         * gtk/gtktextiter.c: docs
9481
9482         * gtk/gtkmain.c (gtk_propagate_event): docs
9483
9484         * gtk/gtkpaned.c (gtk_paned_get_position): docs
9485         (gtk_paned_set_position): docs
9486
9487         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
9488         sort interface, no implementation yet.
9489
9490         * demos/testpixbuf.c (new_testrgb_window): replace
9491         gtk_drawing_area_size() with gtk_widget_set_usize()
9492
9493         * demos/testpixbuf-drawable.c (main): ditto
9494         
9495         * gtk/testgtk.c: remove use of GtkStatusbarMsg
9496
9497         * gtk/gtktextbuffer.c: docs
9498
9499         * gtk/gtkstock.c: docs
9500
9501         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
9502
9503         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
9504
9505         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
9506         
9507         * gtk/gtkimage.c: add some docs in here
9508         (gtk_image_size_request): change name of
9509         gtk_widget_render_stock_icon
9510         (gtk_image_get_icon_set): don't dup returned string
9511         (gtk_image_get_icon_set): don't dup returned string
9512
9513         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
9514         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
9515         and gtkiconfactory.h functions
9516
9517         * gtk/gtkiconfactory.c: add some docs in here
9518
9519         * gtk/gtkmain.c (gtk_get_default_language): document
9520         (gtk_get_current_event): document
9521         (gtk_get_current_event_state): document
9522         (gtk_get_event_widget): document
9523
9524         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
9525
9526         * gtk/gtkcontainer.c: Add some documentation
9527         (gtk_container_add): give a more explanatory warning on adding an
9528         already-parented widget, this is kind of a FAQ and also a common
9529         typo that's easier to debug with a nice warning 
9530
9531         * gtk/gtkcellrenderertoggle.c
9532         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
9533         adding this, it's useless
9534         (gtk_cell_renderer_toggle_set_active): remove
9535         (gtk_cell_renderer_toggle_get_radio): add
9536
9537         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
9538         the NULL cell renderer, that doesn't make any sense to me. 
9539
9540         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
9541         demo code should never use deprecated features.
9542
9543         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
9544         code should never use deprecated features.
9545
9546         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
9547         gtk_widget_queue_clear_area deprecated
9548
9549         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
9550         deprecated
9551
9552         * gtk/gtklabel.h: mark gtk_label_get() deprecated
9553
9554         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
9555         a GdkImage deprecated, replaced by new consistently-named
9556         functions       
9557
9558         * gtk/gtkmain.h: Mark gtk_exit() deprecated
9559
9560         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
9561
9562         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
9563         deprecated
9564
9565         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
9566         so it won't appear in docs and confuse people.
9567
9568         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
9569
9570         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
9571         macros deprecated. (can't mark the type itself deprecated, since
9572         GtkProgressBar is not deprecated and we need the type decl to use
9573         GtkProgressBar)
9574
9575         * gtk/gtkpixmap.h: Mark deprecated
9576
9577         * gtk/gtkoldeditable.h: Mark deprecated
9578
9579         * gtk/gtklist.h: Mark deprecated
9580
9581         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
9582         for anything anymore.
9583
9584         * gtk/gtkctree.h: Mark deprecated
9585
9586         * gtk/gtkclist.h: Mark deprecated
9587
9588         * gtk/gtkpreview.h: Mark deprecated
9589
9590         * gtk/gtkpacker.h: Mark deprecated
9591
9592         * gtk/gtktipsquery.h: Mark deprecated
9593
9594         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
9595
9596         * gtk/gtkvruler.h: Add comment that it will move out of GTK
9597
9598         * gtk/gtkhruler.h: Add comment that it will move out of GTK
9599
9600         * gtk/gtkruler.h: Add comment that it will move out of GTK
9601
9602         * gtk/gtkgamma.h: Add comment that it will move out of GTK
9603
9604         * gtk/gtkcurve.h: Add comment that it will move out of GTK
9605
9606 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
9607
9608         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
9609         gdk_colormap_sync private since it was never exported
9610         in a header file.
9611
9612         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
9613         colormap->colors[] for StaticGray, StaticColor colormaps.
9614
9615         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
9616         was being used as if it was image->bits_per_pixel.
9617
9618         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
9619         for the image in the GdkImage structure since it isn't
9620         reconstructable, and we need it to handle packed types
9621
9622         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
9623         the assumption that on Win32 image->bits_per_pixel == image->depth,
9624         always.
9625
9626         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
9627
9628         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
9629         warning message if no converter can be found. 
9630
9631 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
9632
9633         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
9634         chars to isupper() / tolower(). (#567)
9635
9636         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
9637         to clear up 64-bit warnings. (#567)
9638
9639 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
9640
9641         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
9642         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
9643
9644         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
9645         since some people set $(libdir) separately. (#1290, David Kaelbling)
9646
9647 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
9648
9649         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
9650         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
9651         MAXPATHLEN, but the code here depends on a fixed value.)
9652         (#4524)
9653
9654 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
9655
9656         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
9657         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
9658
9659 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
9660
9661         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
9662         viewable there is no way that moving the node will cause the 
9663         focus row to become not viewable, so omit check on the visibility
9664         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
9665
9666 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
9667
9668         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
9669         selection before inserting new text.
9670
9671 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
9672
9673         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
9674         Make the sensitivity of the reparented child track that of
9675         the original parent menu item. (#34218, David Hodson)
9676
9677         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
9678         the case where the current item is destroyed properly.
9679
9680         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
9681         some edge cases with child-less menuitems.
9682         
9683 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
9684
9685         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
9686         key pop down window. (#12074, Jon K Hellan)
9687
9688 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
9689
9690         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
9691         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
9692         The solution here isn't perfect - you get an extraneous
9693         emission of "toggle", which could conceivably confuse an app,
9694         but better than the current situation. LXR search seems to
9695         indicate that no apps in GNOME CVS connect to "toggle".
9696
9697 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
9698
9699         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
9700         gtk_public_h_sources to directly here to avoid warning when
9701         building srcdir != builddir. (#9656)
9702
9703 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
9704
9705         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
9706         handlers in gtkrange.c return the proper values (TRUE == handled)
9707         (#10316).
9708
9709         This is just the tip of the iceberg, but gtkrange.c is the
9710         most common place where the propagation is problematical,
9711         and also a place where it is almost certainly safe to change
9712         this in the stable branch.
9713
9714         (You don't want right click popups on a range control or anything...)
9715
9716 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
9717
9718         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
9719         area on focus out, even if a background pixmap isn't set.
9720         (#13941)
9721         
9722 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
9723
9724         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
9725         to deal with setting the shape properly when scrolling arrows are
9726         turned on, but not visible because there is sufficient space.
9727         (#13432)
9728
9729 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
9730
9731         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
9732         items with submenus, destroy the item along with the submenu.
9733         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
9734         properly.
9735
9736         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
9737         later.
9738
9739 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
9740
9741         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
9742         the focus widget sometimes wasn't drawn with the default if there
9743         was no default widget.
9744
9745         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
9746         unreference pixmaps. 
9747
9748         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
9749         for some extra safety.
9750
9751 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
9752
9753         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
9754         the text of a cell to the old pointer value better, by
9755         copying the new text before freeing the old text. Some code
9756         cleanup. (#8079, Karl Nelson)
9757
9758 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
9759
9760         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
9761         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
9762
9763 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
9764
9765         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
9766         item from a menu, check to see if it matches 
9767         menu->old_active_menu_item, and if so, unref and clear
9768         old_active_menu_item (Patch from Pavel Cisler)
9769
9770         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
9771         menu_shell->active_menu_item, if it is the child being
9772         removed. (Patch based on that of Gene Ragan, #50337)
9773
9774 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
9775
9776         * gdk/linux-fb/gdkselection-fb.c: 
9777         * gdk/linux-fb/gdkcolor-fb.c: 
9778         * gdk/linux-fb/gdkdrawable-fb2.c: 
9779         * gdk/linux-fb/gdkfont-fb.c: 
9780         * gdk/linux-fb/gdkim-fb.c: 
9781         * gdk/linux-fb/gdkinput.c: 
9782         * gdk/linux-fb/gdkkeyboard-fb.c: 
9783         * gdk/linux-fb/gdkmain-fb.c: 
9784         * gdk/linux-fb/gdkrender-fb.c: 
9785         A bunch of whitespace cleanup.
9786         
9787 2001-01-30  Havoc Pennington  <hp@pobox.com>
9788
9789         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
9790         #ifdef GTK_ENABLE_BROKEN.
9791
9792         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
9793         GTK_ENABLE_BROKEN just before including the broken headers.
9794         
9795         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
9796         deprecated types registered.
9797
9798         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
9799         we have to test the broken stuff.
9800
9801         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
9802         
9803 2001-01-30  Havoc Pennington  <hp@redhat.com>
9804
9805         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
9806         here where prev pointer was set to the wrong thing
9807
9808         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
9809         (gtk_tree_path_is_descendant): new function
9810
9811         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
9812         cached length
9813         (gtk_list_store_get_iter): don't modify iter if we can't get the
9814         path.
9815
9816         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
9817         
9818         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
9819         GtkTreeDragDest
9820
9821         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
9822         was causing segfault
9823
9824         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
9825         pointer to NULL
9826
9827         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
9828
9829         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
9830         on returning FALSE
9831         (gtk_list_store_iter_children): ditto
9832         (gtk_list_store_iter_nth_child): ditto
9833         (gtk_list_store_iter_nth_child): ditto
9834         (gtk_list_store_iter_parent): ditto
9835
9836         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
9837         on iter->user_data != NULL instead of silently accepting it.
9838         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
9839         we are returning TRUE.
9840         (gtk_tree_store_iter_children): ditto
9841         (gtk_tree_store_iter_nth_child): ditto
9842         (gtk_tree_store_iter_parent): ditto
9843         (gtk_tree_store_insert): remove handling of parent->user_data ==
9844         NULL, replace with parent == NULL       
9845
9846         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
9847         and a comment explaining things
9848
9849         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
9850         interface support to GtkTreeStore.
9851
9852         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
9853         FALSE if no prev, fix
9854
9855         * gtk/gtktreeview.c (set_source_row): use a row reference
9856         (set_dest_row): use a row reference
9857
9858 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
9859
9860         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
9861         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
9862         (gtk_tree_selection_select_iter): The same as above.
9863
9864 2001-01-26  Havoc Pennington  <hp@redhat.com>
9865
9866         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
9867         which holds a handle to a specific row (particular set of values
9868         in the model, i.e. pointer-identity row).
9869
9870         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
9871         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
9872         Still need to use it for the src/dest row saved on the drag context.
9873
9874 2001-01-26  Havoc Pennington  <hp@redhat.com>
9875
9876         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
9877
9878         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
9879         not offset by TREE_VIEW_HEADER_HEIGHT
9880         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
9881         TREE_VIEW_HEADER_HEIGHT
9882
9883         * configure.in (included_loaders): for me, --with-included-loaders
9884         generates the error "the specified loader yes does not exist",
9885         i.e. the arg defaults to "yes", so change test for value ""
9886         to test for value "yes", and include all loaders in that case.
9887
9888         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
9889
9890         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
9891         handle TREE_VIEW_VERTICAL_SEPARATOR
9892         (gtk_tree_view_bin_expose): fix to consider the row offset as
9893         pointing halfway into vertical separator.       
9894         (gtk_tree_view_draw_node_focus_rect): ditto
9895
9896         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
9897         --gtk-debug=updates, which causes gdk_window_set_debug_updates
9898         (TRUE) to be called.
9899
9900         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
9901         debug mode where the invalid region is colored in on invalidate,
9902         so you can see the flicker and know whether your redraw code is 
9903         doing a good job.
9904
9905         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
9906         tree window coordinates (clip rect is in tree window coords)
9907
9908         * gtk/Makefile.am: add gtktreednd.[hc]
9909
9910         * gtk/gtkliststore.c: implement gtktreednd interfaces.
9911
9912         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
9913         drag-and-drop data operations on a model (so we can set up tree
9914         drag-and-drop automatically)
9915
9916         * gtk/testgtk.c: Add a window to change sensitivity in the
9917         GtkLabel test; add a way to change the entry frame in GtkEntry
9918         test
9919
9920         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
9921         (gtk_entry_get_has_frame): new functions to remove the frame
9922         around an entry
9923         (gtk_entry_size_request): shrink requisition if no frame
9924         (gtk_entry_draw_focus): don't draw frame if no frame
9925
9926         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
9927         checks inside a cell renderer
9928         (gtk_default_draw_option): ditto for options
9929
9930         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
9931         children from the alignment, not the button
9932         (gtk_tree_view_column_init): ref/sink the column, to emulate
9933         GObject refcounting.
9934
9935         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
9936         
9937         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
9938         Use theme functions to draw the toggles 
9939
9940         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
9941
9942         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
9943         GdkPangoAttrEmbossed to use in rendering insensitive text
9944
9945         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
9946
9947         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
9948         using new GDK features
9949         
9950 2001-01-24  Alexander Larsson  <alexl@redhat.com>
9951
9952         * gtk/gtkimage.c:
9953         Splitted gtk_image_clear into gtk_image_clear() and
9954         gtk_image_reset(). Call gtk_image_clear() in ::destroy
9955         to avoid leaks.
9956
9957         * gtk/gtklabel.c (set_markup):
9958         Don't leak text.
9959
9960         * gtk/gtktextlayout.c:
9961         Always free display->shaped_objects.
9962
9963         * gtk/testgtk.c (create_clist):
9964         Don't leak custom style.
9965
9966 2001-01-23  Alexander Larsson  <alexl@redhat.com>
9967
9968         * gtk/gtkcolorsel.c (grab_color_at_mouse):
9969         Don't leak image. Simplify using gdk_colormap_query_color().
9970         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
9971
9972         * linux-fb/gdkcolor-fb.c:
9973         Implemented gdk_colormap_query_color.
9974
9975 2001-01-23  Alexander Larsson  <alexl@redhat.com>
9976
9977         * linux-fb/gdkcursor-fb.c:
9978         Don't leak built-in cursors.
9979
9980         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
9981         Don't leak tmp_points.
9982
9983         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
9984         Don't modify desc. Don't leak font if the PangoFont
9985         isn't found.
9986         
9987         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
9988         Free dash_list.
9989
9990         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
9991         Don't leak string.
9992         
9993 2001-01-20  Havoc Pennington  <hp@pobox.com>
9994
9995         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
9996         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
9997         me, matches Pango
9998
9999 2001-01-22  Havoc Pennington  <hp@redhat.com>
10000
10001         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
10002
10003         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
10004
10005         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
10006         Remove, move back to gdk-pixbuf
10007
10008         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
10009         to all the word functions
10010
10011         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
10012         before doing anything on NULL layout or if we don't have the focus
10013
10014         * gtk/testtext.c (fill_example_buffer): "justification"
10015
10016         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
10017         to be called "justification" not "justify"
10018
10019         * demos/gtk-demo/textview.c (create_tags): "justification"
10020         
10021         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
10022
10023 2001-01-22  Alexander Larsson  <alexl@redhat.com>
10024
10025         * gdk/gdkwindow.c (gdk_window_invalidate_region):
10026         Don't leak visible_region. Use visible_region instead of region.
10027         
10028         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
10029         Don't do extra gdk_drawable_ref(). This is not X.
10030         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
10031         gdk_fb_focused_window is ref:ed.
10032         (gdk_fb_window_send_crossing_events): Watch out for destroyed
10033         windows.
10034
10035 2001-01-22  Alexander Larsson  <alexl@redhat.com>
10036
10037         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
10038         Don't leak the PangoFontDescriptor.
10039
10040 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
10041
10042         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
10043         when not realized.
10044         (gtk_tree_view_scroll_to_cell): Make work when not realized.
10045         (gtk_tree_view_realize): add scroll_to support
10046         (gtk_tree_view_finalize): add a finalize method.  Populate.
10047         (gtk_tree_view_insert_column): ref and sink the column.
10048         (gtk_tree_view_append_column): ref and sink the column.
10049         (gtk_tree_view_queue_draw_node): New function to handle redrawing
10050         individual nodes.  Should make the code much more efficient, if
10051         actually used.
10052
10053 2001-01-19  Havoc Pennington  <hp@redhat.com>
10054
10055         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
10056         byte_offset variable was being used to mean both "offset into
10057         layout" and "offset into buffer line" which was no longer true
10058         with addition of preedit string; fix
10059
10060 2001-01-19  Havoc Pennington  <hp@redhat.com>
10061
10062         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
10063
10064         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
10065         function
10066
10067         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
10068         implement
10069
10070         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
10071         scroll_to_cell, matches TextView scroll functions better
10072         (gtk_tree_view_tree_to_widget_coords): new function
10073         (gtk_tree_view_widget_to_tree_coords): new function
10074         (gtk_tree_view_get_visible_rect): new function
10075         (gtk_tree_view_get_path_at_pos): accept negative coordinates
10076         (gtk_tree_view_draw_node_focus_rect): new function moved from
10077         draw_focus, also, use width of bin_window as width of the focus
10078         rect
10079         (gtk_tree_view_expand_row): fix bug where it didn't recognize
10080         already-expanded rows
10081         (gtk_tree_view_get_cell_rect): new function
10082         (gtk_tree_view_get_path_at_pos): return the click position
10083         relative to the passed-in cell
10084         (gtk_tree_view_set_expander_column): new function
10085
10086         * configure.in: remove gtk-config-2.0 chmod
10087
10088         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
10089         and properly handle drags with targets we don't understand
10090         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
10091         scrolling anyway
10092         (gtk_text_view_drag_drop): stop scrolling here though, and set the
10093         mark invisible
10094
10095         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
10096         function
10097         (gtk_drag_dest_get_target_list): new function
10098         (gtk_drag_dest_set_target_list): new function
10099         
10100         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
10101
10102         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
10103         related to drag-and-drop
10104
10105 2001-01-19  Alexander Larsson  <alexl@redhat.com>
10106
10107         * gdk/linux-fb/gdkprivate-fb.h:
10108         Define EMULATE_GDKFONT.
10109         Add extra pango_font stuff to GfkFontPrivate.
10110         
10111         * gdk/linux-fb/gdkdrawable-fb2.c:
10112         * gdk/linux-fb/gdkfont-fb.c:
10113         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
10114         emulation using PangoFont.
10115
10116 2001-01-17  Havoc Pennington  <hp@pobox.com>
10117
10118         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
10119         all the non-deprecated set_foo functions. Added missing object
10120         properties, and added g_object_notify() to setters. 
10121         Wrote docs.
10122         
10123 2001-01-18  Tor Lillqvist  <tml@iki.fi>
10124
10125         * gtk/gtkmain.c
10126         * gtk/gtkrc.c: (Win32) Use the new
10127         g_win32_get_package_installation_(sub)directory() functions.
10128
10129         * config.h.win32.in: New file.
10130         
10131         * config.h.win32: Removed.
10132
10133         * configure.in: Output config.h.win32.
10134
10135         * Makefile.am: Add it to EXTRA_DIST.
10136
10137         * gtk/gtk.def: Update.
10138
10139 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
10140
10141         * gtk/gtklabel.c (gtk_label_size_request): Set the
10142         attributes onto the PangoLayout even if they are newly
10143         created from label->pattern.
10144
10145 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
10146
10147         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
10148
10149         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
10150         structures in functions. Fixes bug where gtk_dataset_*
10151         was accidentally still being used in one place, causing
10152         every dest side event to be treated independently.
10153
10154         * gtk/gtkdnd.c: Remove last vestages of handling
10155         ::draw (fixes warning)
10156         
10157         * gtk/gtkentry.[ch]: Add drag and drop support.
10158
10159         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
10160         new function gtk_check_drag_threshhold() for checking
10161         to check if (dx,dy) has exceeded the threshhold for starting
10162         a drag and use it everywhere.
10163
10164 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
10165
10166         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
10167         add -I{includedir}/gtk-2.0.
10168
10169         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
10170         gdk/gdk-pixbuf.h: Doc fixups.
10171         
10172         * gtk/gtkobject.h: Remove trailing , from enum
10173
10174 2001-01-17 Alexander Larsson <alexl@redhat.com> 
10175
10176         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
10177         Doh! Mixed up x and y.
10178
10179         * gdk/linux-fb/gdkglobals-fb.c:
10180         Removed gdk_fb_pointer_grab_window_events,
10181         added _gdk_fb_pointer_grab_owner_events and
10182         _gdk_fb_keyboard_grab_owner_events.
10183
10184         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
10185         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
10186         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
10187         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
10188         Send crossing events after ungrab finished.
10189         (gdk_keyboard_grab): Set ..._owner_events
10190         (type_masks): Move out of function.
10191         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
10192         gdk_fb_keyboard_event_window): New functions, return the
10193         window an event should be targeted at. Handles grabs and
10194         event propagation. Can return NULL.
10195         (gdk_event_make): Remove event_mask checking. Now always
10196         returns an event.
10197                 
10198         * gdk/linux-fb/gdkkeyboard-fb.c:
10199         * gdk/linux-fb/gdkproperty-fb.c:
10200         * gdk/linux-fb/gdkselection-fb.c:
10201         Use new event_window/gdk_event_make() behaviour.
10202         
10203         * gdk/linux-fb/gdkmouse-fb.c:
10204         Use new event_window/gdk_event_make() behaviour.
10205         Only send motion events if in the same window.
10206         If grabbed, use cursor from window if sibling of grabbed
10207         window, and cursor from grabbed window otherwise.
10208
10209         * gdk/linux-fb/gdkprivate-fb.h:
10210         Update gdk_fb_window_send_crossing_events, gdk_event_make
10211         and grab varaible declarations. Add gdk_fb_*_event_window().
10212
10213         * gdk/linux-fb/gdkwindow-fb.c:
10214         Use new event_window/gdk_event_make() behaviour.
10215         Keep correct track of focus window.
10216         (gdk_window_set_events): Set all specific button motion masks
10217         if GDK_BUTTON_MOTION_MASK set.
10218
10219         * gtk/gtkdnd.c (gtk_drag_update):
10220         Free info->last_event if gdk_drag_motion returned FALSE.
10221
10222 2001-01-16  Tor Lillqvist  <tml@iki.fi>
10223
10224         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
10225         Eliminate redraws when input-only windows are shown or
10226         hidden. Thanks to jpe@archaeopteryx.com.
10227
10228 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
10229
10230         * docs/faq/gtk-faq.sgml: FAQ update:
10231           - Update to bugzilla
10232           - Add GTK+ and security/SUID/SGID
10233           - Add DnD question
10234
10235 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
10236
10237         * gdk/linux-fb/gdkdnd-fb.c:
10238         Some cleanups.
10239         
10240 2001-01-15  Havoc Pennington  <hp@pobox.com>
10241
10242         * tests/testtreeview.c: add test stuff for CellRendererToggle
10243
10244         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
10245         accessor
10246
10247         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
10248         only toggle on button press (would do release like GtkButton, but
10249         we'd need implicit grab code for treeview cells)
10250
10251 2001-01-16  Tor Lillqvist  <tml@iki.fi>
10252
10253         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
10254
10255         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
10256         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
10257
10258         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
10259         to g_{locale,filename}_{to,from}_utf8 to match current API.
10260
10261         * gtk/makefile.msc.in (gtk_OBJECTS)
10262         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
10263
10264         * gtk/gtk.def: Update.
10265
10266 2001-01-15  Tor Lillqvist  <tml@iki.fi>
10267
10268         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
10269         implementaion that more closely mimics the events that an X server
10270         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
10271         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
10272         with nested preview widgets, for instance, more responsive when
10273         you move the mouse quickly into them.
10274         (find_window_for_pointer_event): Make it actually compile.
10275         (gdk_event_translate): Set send_event to the value of
10276         InSendMessage (). This doesn't really mean the same as X11's
10277         send_event flag, but is close enough, says jpe@archaeopteryx.com
10278
10279 2001-01-15  Alexander Larsson  <alexl@redhat.com>
10280
10281         * gdk/linux-fb/gdkdnd-fb.c:
10282         Implemented drag and drop.
10283         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
10284         when it tries to free and then copy the same event (info->last_event).
10285         I am not sure about why this happens, but will continue looking.
10286
10287 2001-01-15  Alexander Larsson  <alexl@redhat.com>
10288
10289         * gdk/linux-fb/gdkwindow-fb.c:
10290         Use gdk_window_invalidate_rect instead of
10291         gdk_window_invalidate_rect_clear to minimise flashing.
10292         When hiding windows you need to clear the root window though.
10293
10294 2001-01-15  Alexander Larsson  <alexl@redhat.com>
10295
10296         * gdk/linux-fb/gdkdrawable-fb2.c:
10297         For optization, add an full_shapes argument to gdk_fb_clip_region.
10298         If this is false, only the cliprects of the shapes are used.
10299
10300         * gdk/linux-fb/gdkprivate-fb.h:
10301         Export gdk_fb_window_peek_shape.
10302         Add full_shapes to gdk_fb_clip_region.
10303
10304         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
10305         When moving a window, don't clear everything under the it, just the
10306         root window. Makes stuff faster and flash less.
10307         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
10308         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
10309         offset of the shape.
10310         
10311
10312 2001-01-12  Havoc Pennington  <hp@redhat.com>
10313
10314         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
10315         current invalid region, fixes redraw bug while scrolling the 
10316         text widget
10317
10318         * gtk/gtktextview.c, gtk/gtktextview.h:
10319         Rearrange the scrolling/validation/etc. code in a major way, 
10320         so it seems to make sense to me. Probably isn't genuinely that
10321         much better, but...
10322
10323         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
10324         notifies
10325
10326         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
10327
10328 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
10329
10330         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
10331         Hide mouse pointer while rotation. Show it afterwards.
10332
10333 2001-01-12  Alexander Larsson  <alexl@redhat.com>
10334
10335         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
10336         windows in consideration when generating clip region.
10337
10338         * gdk/linux-fb/gdkfb.h:
10339         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
10340
10341         * gdk/linux-fb/gdkprivate-fb.h:
10342         Add shape to GdkWindowFBDatat.
10343         exported gdk_fb_window_get_abs_shape().
10344         removed gdk_fb_draw_lines declaration.
10345
10346         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
10347         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
10348         send focus changes when there is a grabbed window.
10349         (gdk_window_get_pointer): Handle shaped windows.
10350         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
10351         (gdk_fb_window_peek_shape): Returns the shape for a window,
10352         handles GDK_FB_USE_CHILD_SHAPE.
10353         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
10354         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
10355         (gdk_window_shape_combine_mask): Implement.
10356
10357         * gtk/gtkwindow-decorate.c:
10358         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
10359         setting the shape of a window makes the window transparent.
10360
10361 2001-01-11  Havoc Pennington  <hp@redhat.com>
10362
10363         * gtk/gtktreemodelsimple.h: Oops, broke some macros
10364
10365 2001-01-10  Havoc Pennington  <hp@redhat.com>
10366
10367         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
10368         add this function, bug 40251
10369
10370         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
10371         of type macro   
10372
10373 2001-01-11  Alexander Larsson  <alexl@redhat.com>
10374
10375         * acconfig.h:
10376         Added ENABLE_SHADOW_FB
10377
10378         * configure.in:
10379         Added --disable-shadowfb
10380
10381         * gdk/linux-fb/gdkcursor-fb.c:
10382         Update shadowfb when updating cursor
10383
10384         * gdk/linux-fb/gdkdrawable-fb2.c:
10385         Added wrappers for shadowfb that calls  the normal drawable
10386         methods, but calls gdk_shadow_fb_update(bounding box) when
10387         GdkWindows are drawed to.
10388         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
10389         which also returns the bounding box.
10390
10391         * gdk/linux-fb/gdkfb.h:
10392         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
10393
10394         * gdk/linux-fb/gdkgeometry-fb.c:
10395         Update shadowfb when scrolling window.
10396
10397         * gdk/linux-fb/gdkglobals-fb.c:
10398         Add _gdk_fb_screen_angle.
10399         
10400         * gdk/linux-fb/gdkkeyboard-fb.c:
10401         Test code for screen rotation. Shift-F2 in the xlate driver
10402         rotates the screen.
10403
10404         * gdk/linux-fb/gdkmain-fb.c:
10405         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
10406
10407         * gdk/linux-fb/gdkmouse-fb.c:
10408         Use fb_width/height instead of modeinfo.xres/yres.
10409
10410         * gdk/linux-fb/gdkprivate-fb.h:
10411         Added fb_men, fb_width, fb_height & fb_stride. When using
10412         shadow fb these can differ from the framebuffer stuff.
10413         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
10414         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
10415         _gdk_fb_screen_angle. Removed CM, RP.
10416
10417         * gdk/linux-fb/gdkrender-fb.c:
10418         Added code for shadowfb handling and screen rotation using
10419         shadowfb.
10420
10421         * gdk/linux-fb/gdkwindow-fb.c:
10422         Use fb_mem, fb_stride, fb_width, fb_height.
10423         Added recompute_rowstride to reset the rowstride of all windows.
10424         Added gdk_fb_recompute_all() which recomputes rootwindow size,
10425         window abs positions and window rowstrides. Usefull when the
10426         rotation has changed.
10427
10428 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
10429
10430         * docs/faq/gtk-faq.sgml: update to make web site updating easier
10431
10432 2001-01-10  Havoc Pennington  <hp@redhat.com>
10433
10434         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
10435         where sibling == iter
10436         (gtk_tree_store_insert_after): handle sibling == iter
10437         (gtk_tree_store_prepend): remove stamp checks
10438         (gtk_tree_store_insert_before): ditto
10439         (gtk_tree_store_append): ditto
10440         (gtk_tree_store_get_path): ditto
10441         (gtk_tree_store_get_value): ditto
10442         (gtk_tree_store_iter_has_child): ditto
10443         (gtk_tree_store_iter_n_children): ditto
10444         (gtk_tree_store_iter_nth_child): ditto
10445         (gtk_tree_store_insert_after): ditto
10446         (gtk_tree_store_is_ancestor): ditto
10447         (gtk_tree_store_iter_depth): ditto
10448         (gtk_tree_store_insert_before): assert that sibling's parent is
10449         the same as the passed-in parent
10450         (gtk_tree_store_insert_after): assert that sibling's parent is
10451         the same as the passed-in parent
10452
10453         
10454         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
10455         function to get the first iterator in a model
10456         
10457         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
10458         conventionally the "root" in this sense is just NULL afaict.
10459
10460         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
10461         where sibling == iter
10462         (gtk_list_store_insert_after): handle case where sibling == iter
10463
10464         * tests/testtreeview.c (run_automated_tests): fairly lame basic
10465         automated tests for ListStore, TreeStore
10466
10467         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
10468         (gtk_list_store_insert): update tail pointer, and fix it to work
10469         (gtk_list_store_insert_before): update tail pointer, and fix it to work
10470         (gtk_list_store_append): use tail to be faster
10471         (gtk_list_store_prepend): fix it, update tail pointer
10472         (gtk_list_store_insert_after): fix it, update tail pointer
10473
10474         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
10475         the list
10476
10477 2001-01-09  Havoc Pennington  <hp@redhat.com>
10478
10479         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
10480         is NULL due to a pending resize
10481
10482         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
10483         column width to values less than 1
10484
10485         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
10486         width to be between min/max width, and still set the width 
10487         even if autosize is turned on, so the tree view can use this 
10488         function in order to autosize.
10489         (gtk_tree_view_column_init): set initial width to 1 not 0
10490
10491         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
10492         setter function to modify column width, so we get notification
10493         (gtk_tree_view_insert_iter_height): ditto
10494         (gtk_tree_view_calc_size): ditto
10495         (gtk_tree_view_check_dirty): ditto
10496
10497         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
10498         properties to change all the interesting attributes of the tree
10499         view column.
10500         (gtk_tree_view_column_set_header_clickable): rename set_clickable
10501         (gtk_tree_view_column_get_clickable): add
10502         (gtk_tree_view_column_set_cell_renderer): don't unset the current
10503         attributes; assume a cell renderer with equivalent object
10504         properties has been swapped in. Do g_object_notify().
10505         (gtk_tree_view_column_set_visible): g_object_notify
10506         (gtk_tree_view_column_get_sizing): rename from get_col_type
10507         (gtk_tree_view_column_set_sizing): g_object_notify
10508         (gtk_tree_view_column_set_width): add g_object_notify
10509         (gtk_tree_view_column_set_min_width): ditto
10510         (gtk_tree_view_column_set_max_width): ditto
10511         (gtk_tree_view_column_set_title): ditto
10512         (gtk_tree_view_column_set_clickable): ditto
10513         (gtk_tree_view_column_set_widget): ditto
10514         (gtk_tree_view_column_set_justification): ditto
10515
10516 2001-01-09  Havoc Pennington  <hp@redhat.com>
10517
10518         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
10519         there are no rows in the model
10520
10521         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
10522         NULL, then return the start of the list
10523
10524         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
10525         if we can't get any rows from an empty model 
10526
10527         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
10528         extraneous * after function pointer typedef usage
10529
10530         * Makefile.am: don't specify full path to cp and rm
10531
10532         * gtk/gtkcellrenderertextpixbuf.c
10533         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
10534         NULL before dereferencing, fixes a segfault that happened from
10535         time to time
10536
10537         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
10538         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
10539         and reindent the function
10540         (gtk_cell_renderer_pixbuf_get_size): indentation
10541
10542         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
10543         we quit it
10544         (gtk_dialog_add_buttons_valist): add g_return_if_fail
10545         (gtk_dialog_set_default_response): New function, to set default
10546         button
10547         (gtk_dialog_set_response_sensitive): New function, to set 
10548         sensitivity of buttons
10549
10550         * gtk/gtkcellrendererpixbuf.c
10551         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
10552         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
10553
10554         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
10555         handle any G_TYPE_OBJECT subclass, not just the base class, and 
10556         also boxed types.
10557         (_gtk_tree_data_list_value_to_node): ditto
10558
10559         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
10560         --gtk-debug=tree
10561
10562         * gtk/gtkmain.c: add GTK_DEBUG_TREE
10563
10564         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
10565
10566 2001-01-09  Tor Lillqvist  <tml@iki.fi>
10567
10568         * gdk/win32/gdkevents-win32.c: Implement better mouse
10569         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
10570         (find_window_for_pointer_event): New function.
10571         (gdk_event_translate): Use it when handling mouse events.
10572
10573 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
10574
10575         * configure.in:
10576         Added --with-included-loaders option
10577
10578         * gdk-pixbuf/Makefile.am:
10579         * gdk-pixbuf/gdk-pixbuf-io.c:
10580         Add support for including selected gdk-pixbuf loaders only.
10581
10582         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
10583         gtk_window_set_has_frame):
10584         Added inline documentation.
10585
10586         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
10587         * docs/reference/gdk/tmpl/windows.sgml:
10588         Added inline documentation.
10589
10590 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
10591
10592         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
10593         realizing buttons that have already been realized.
10594
10595 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
10596
10597         * tests/testtreeview.c (main): Show menu items before adding to
10598         option menu.
10599
10600         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
10601         around if we kill them.
10602
10603         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
10604         Return if we pass in a NULL model.
10605
10606 2001-01-08  Havoc Pennington  <hp@redhat.com>
10607
10608         * tests/testtreeview.c: hack on this some
10609
10610         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
10611         gtk_tree_store_set_valist, v is for arrays, valist for varargs
10612         list
10613         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
10614
10615         * gtk/gtkliststore.h: Add varargs set() and get() convenience
10616         functions
10617
10618 2001-01-08  Alexander Larsson  <alexl@redhat.com>
10619
10620         * gtk/gtkwindow-decorate.[hc]:
10621         * gtk/Makefile.am:
10622         New files. Contains an implementation of a minimal WM for
10623         linux-fb.
10624
10625         * gtk/gtkwindow.h:
10626         Add the possibility for GtkWindows to specify a frame. This
10627         is used for the window decoration code, but could concievably
10628         be used for X programs too (xmms style windows).
10629         GtkWindow->frame is the toplevel window if the window is framed.
10630         The signal frame_event gets all events that are targeted to
10631         GtkWindow->frame.
10632         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
10633         
10634         * gtk/gtkwindow.c:
10635         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
10636         Call out to gtkwindow-decorate.c for WM support in linx-fb.
10637
10638 2001-01-08  Alexander Larsson  <alexl@redhat.com>
10639
10640         * docs/README.linux-fb:
10641         Correct filename ~/.pangoft2_aliases
10642
10643         * gdk/gdkwindow.h:
10644         Added new function gdk_window_get_decorations.
10645
10646         * gdk/linux-fb/gdkfb.h:
10647         Removed _gdk_window_get_decorations declaration.
10648         Renamed _gdk_window_set_child_handler to
10649         gdk_fb_window_set_child_handler.
10650
10651         * gdk/linux-fb/gdkwindow-fb.c:
10652         Renamed _gdk_window_set_child_handler to
10653         gdk_fb_window_set_child_handler.
10654
10655         * gdk/x11/gdkwindow-x11.c:
10656         New function gdk_window_get_mwm_hints().
10657         Implemented gdk_window_get_decorations.
10658
10659         * docs/reference/gdk/tmpl/windows.sgml:
10660         * docs/reference/gdk/gdk-sections.txt:
10661         Added gdk_window_get_decorations docs.
10662         
10663 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
10664
10665         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
10666         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
10667         gdk_fb_window_send_crossing_events):
10668         Possibly send focus events when the mouse moves from one
10669         window to another.
10670
10671 2001-01-07  Tor Lillqvist  <tml@iki.fi>
10672
10673         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
10674         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
10675         to match current API.
10676
10677         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
10678         environment variable is set, don't call g_error when on a
10679         palettized (PseudoColor) display. Some people want to use GTK+ 
10680         in 256-colour mode even though works only partially.
10681
10682         * gdk/gdk.def
10683         * gtk/gtk.def
10684         * gtk/makefile.mingw.in: Update.
10685
10686 2001-01-05  Havoc Pennington  <hp@redhat.com>
10687
10688         * tests/testtreeview.c: hack on this a bit
10689
10690         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
10691         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
10692
10693         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
10694         was spelled incorrectly
10695         (GTK_IS_TREE_MODEL_SIMPLE): ditto
10696
10697         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
10698         from gtk_tree_view_set_headers_active   
10699
10700         * gtk/gtktexttag.c:
10701         (gtk_text_tag_get_property): handle PROP_DIRECTION
10702         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
10703         properties, bug 40235
10704
10705         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
10706         forward_to_line_end
10707
10708 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
10709
10710         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
10711         modules/input/gtkimcontextxim.c: Adapt to new prototypes
10712         for unicode,locale,filename conversion functions.
10713
10714 2001-01-05  Havoc Pennington  <hp@redhat.com>
10715
10716         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
10717         broken if called on the first position in the buffer.
10718
10719         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
10720         forward_to_delimiters to be called only if we aren't already at
10721         the delimiters.
10722
10723 2001-01-05  Havoc Pennington  <hp@redhat.com>
10724
10725         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
10726
10727 2001-01-05  Alexander Larsson  <alexl@redhat.com>
10728
10729         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
10730         colormap in here. Sync from X port.
10731         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
10732         Sync from X port.
10733         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
10734         This happens now and then, and i don't think it is a bug.
10735         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
10736         != endpoint.
10737         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
10738         GDK_LINE_SOLID.
10739
10740         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
10741         some of the fields filled in at least.
10742
10743         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
10744         miLineArcD is no more, remove it from the function definition.
10745
10746 2001-01-04  Havoc Pennington  <hp@redhat.com>
10747
10748         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
10749         this
10750
10751         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
10752         user_data instead of tree_node
10753
10754         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
10755         TREE_VIEW_COLUMN_SIZE
10756
10757         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
10758         "size" field to "width" finishes bug 40061
10759
10760         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
10761         for bitfields, bug 40268
10762
10763 2001-01-04  Havoc Pennington  <hp@redhat.com>
10764
10765         Rename some stuff:
10766         
10767         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
10768
10769         s/GtkModelSimple/GtkTreeModelSimple/g;
10770         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
10771         s/gtk_model_simple/gtk_tree_model_simple/g;
10772         s/gtkmodelsimple/gtktreemodelsimple/g;
10773
10774         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
10775
10776         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
10777         s/column_set_col_type/column_set_sizing/g;
10778
10779         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
10780         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
10781
10782         s/GtkCellRendererType/GtkCellRendererState/g;
10783         
10784         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
10785         (gtk_cell_renderer_toggle_class_init): change "state" property to
10786         "active", to match GtkToggleButton
10787         (gtk_cell_renderer_toggle_get_active): new function, bug
10788         40269
10789         (gtk_cell_renderer_toggle_set_active): new function
10790         (gtk_cell_renderer_toggle_set_property): route changes to toggle
10791         state through gtk_cell_renderer_set_active
10792
10793 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
10794
10795         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
10796         temporarily until they work again.  Brought up to date with
10797         changes in the model.
10798         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
10799         model.
10800
10801 2001-01-04  Havoc Pennington  <hp@redhat.com>
10802
10803         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
10804         equal to the line length, then position iterator before paragraph 
10805         separators. Fixes crash reported by Mikael Hermansson when
10806         pressing left arrow from the start of a line.   
10807
10808         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
10809         about byte indexes off the end
10810         (iter_set_from_char_offset): add g_error about char offsets
10811         off the end
10812
10813 2001-01-03  Havoc Pennington  <hp@redhat.com>
10814
10815         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
10816
10817         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
10818         of private functions; remove inclusion of private headers.
10819
10820         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
10821         function, so we don't need private functions in gtktextdisplay.c
10822
10823         * gtk/gtktextiterprivate.h: underscore-ification
10824
10825         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
10826         to instead say "only useful to implement widgets"
10827
10828         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
10829         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
10830         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
10831
10832         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
10833         This function was completely broken
10834
10835         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
10836
10837         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
10838
10839         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
10840
10841         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
10842
10843         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
10844
10845         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
10846
10847         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
10848         gtk_paint_layout
10849
10850         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
10851         gtk_paint_layout
10852
10853         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
10854         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
10855         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
10856         which were not implemented.     
10857
10858         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
10859         insert_pixbuf signal. Rename delete_text to delete_range since it
10860         also deletes pixbufs and child anchors. This almost closes bug
10861         40245 (still need to deal with child anchors)
10862
10863         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
10864         insert_pixbuf, change signal names as appropriate, change types of
10865         signals taking marks/tags to have the specific type, not just
10866         G_TYPE_OBJECT
10867         
10868         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
10869         closes bug 40051
10870
10871         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
10872         unnecessary remove_contents() call
10873         (gtk_option_menu_class_init): add a "changed" signal, closes
10874         bug 40039
10875         (gtk_option_menu_update_contents): emit "changed" if the 
10876         active menu item changes
10877
10878         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
10879         cast to GtkObject, reported by Jonas Borgstrom
10880         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
10881         we can't do stuff with side effects in finalize. Instead, spew a
10882         warning if the loader isn't closed.
10883
10884         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
10885         colormap in here, non-X ports probably need to sync to this change
10886
10887         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
10888         assertion that colormap != NULL, you can set the colormap to NULL
10889         if you like.
10890         
10891         * Makefile.am: remove gtk-config-2.0
10892
10893         * configure.in: Use pkg-config to locate GLib. Remove
10894         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
10895         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
10896         Use pkg-config to locate Pango. Output correct Pango libs to
10897         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
10898
10899         * Makefile.am (pkgconfig_DATA): install only target-specific pc
10900         files
10901         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
10902         X11 pc files
10903
10904         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
10905         unref from here
10906
10907 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
10908
10909         * configure.in:
10910         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
10911
10912 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
10913
10914         * gtk/gtktextlayout.c
10915         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
10916         variable when moving back onto a single line.
10917
10918 2001-01-01  Havoc Pennington  <hp@redhat.com>
10919
10920         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
10921
10922         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
10923
10924         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
10925         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
10926
10927 2001-01-01  Havoc Pennington  <hp@redhat.com>
10928
10929         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
10930
10931         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
10932         GtkTextAttributes
10933
10934         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
10935         #40246
10936         (gtk_text_attributes_copy_values): rename from 
10937         gtk_text_attributes_copy
10938         (gtk_text_attributes_copy): a more standard GTK copy function, 
10939         which returns a new object
10940
10941 2001-01-01  Havoc Pennington  <hp@redhat.com>
10942
10943         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
10944         
10945         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
10946         don't fill in tree_view->priv->selection, kind of an unexpected
10947         side effect
10948
10949         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
10950         gtkintl.h
10951         
10952         * gtk/gtkcellrenderer.c: Remove definition of _ and include
10953         gtkintl.h
10954         (gtk_cell_renderer_get_property): remove calls to g_value_init
10955
10956         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
10957         gtkintl.h
10958
10959         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
10960         and include gtkintl.h
10961         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
10962         property names
10963
10964         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
10965         GtkTreeSelection
10966         (_gtk_tree_selection_new_from_with_view): rename, return
10967         GtkTreeSelection
10968         (_gtk_tree_selection_set_tree_view): rename with uscore
10969         (gtk_tree_selection_get_selected): fill in the "model" out param
10970         first, so it gets filled in even if we return at the top of the 
10971         function
10972         (gtk_tree_selection_real_select_all): add a comment and an else{}
10973         to clarify this a bit
10974         (gtk_tree_selection_real_unselect_all): add the same else{}
10975
10976         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
10977         set_tree_view to have underscore prefixes, move them to the
10978         private header, fix return type of new_with_tree_view
10979         (struct _GtkTreeSelection): mark struct
10980         fields private  
10981
10982         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
10983         GtkTreeModelFlags, not a guint
10984         (gtk_tree_path_prev): return gboolean not gint
10985         (gtk_tree_path_up): return gboolean not gint
10986
10987         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
10988         return GtkTreeModelFlags, not a guint
10989
10990         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
10991         that child model is non-null before unrefing it
10992         (g_value_int_compare_func): make this a qsort compare func, not 
10993         a boolean predicate
10994
10995         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
10996         (add -umn to the end), and mark it unimplemented
10997         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
10998         I don't see what it's for - doesn't the model always sort itself?
10999         (gtk_tree_model_sort_set_compare): this had the wrong signature
11000
11001         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
11002         Fix the docs to say that it destructively replaces existing
11003         attributes (previously said that it added attributes).
11004         (gtk_tree_view_column_set_visible): canonicalize bool before
11005         equality testing. Also, check for realization before
11006         hiding/showing the tree_column->window; if this window could exist
11007         before realization, then it's busted and needs fixing, we can't 
11008         create GDK resources pre-realization. Also, remove
11009         superfluous queue_resize(), since set_size() does that for us.
11010         (gtk_tree_view_column_set_col_type): check realization before 
11011         using tree_column->window
11012
11013         * gtk/gtktreedatalist.c: fix filename in copyright notice
11014
11015 2000-12-31  Havoc Pennington  <hp@pobox.com>
11016
11017         * gtk/gtktextview.c: Rearrange all the
11018         scroll-while-dragging-or-selecting code to be different, not
11019         necessarily better. ;-)
11020         (gtk_text_view_scroll_to_mark): Change this
11021         function to take within_margin as a fraction instead of a pixel
11022         value, and to take alignment arguments (indicating where to align 
11023         the mark inside the visible area)
11024         
11025         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
11026         to GtkObject
11027
11028         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
11029         behavior so that offsets past the end of the line are not 
11030         allowed, and an offset equal to the line length moves the iterator
11031         to the next line
11032         (gtk_text_iter_set_line_index): make parallel change
11033         (gtk_text_iter_get_bytes_in_line): add this function
11034         
11035         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
11036         of byte indexes off the end of the line; byte index at the end of
11037         the line now returns FALSE and doesn't fill in the requested
11038         values, byte index past the end of the line is an error.  Also,
11039         don't allow -1 offset anymore, since its meaning is unclear.
11040
11041         This change exposes some bug in visual cursor motion, where we
11042         end up with a huge invalid byte index; needs fixing. Symptom of 
11043         bug is a crash when you hit up arrow.
11044         
11045         (_gtk_text_line_char_locate): match the change to byte_locate
11046
11047         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
11048         from start of line properly. fixes bug reported by Mikael
11049         Hermansson where backspace would delete all text before the
11050         cursor.
11051
11052 2000-12-30  Tor Lillqvist  <tml@iki.fi>
11053
11054         * gdk/win32/gdkwindow-win32.c
11055         (gdk_window_impl_win32_get_visible_region): New function, as in
11056         the X11 backend.
11057         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
11058         instead of duplicating the same code here.
11059
11060         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
11061         GDK_COLORMAP macro.
11062
11063         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
11064         destroy function.
11065         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
11066         access that.
11067
11068         * gtk/gtk.def: Update.
11069
11070         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
11071
11072 2000-12-30  Havoc Pennington  <hp@pobox.com>
11073
11074         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
11075         colormap on input only windows, to avoid special cases all over
11076         the code for these windows.
11077
11078 2000-12-26  Tor Lillqvist  <tml@iki.fi>
11079
11080         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
11081         we are on a palettized display ("PseudoColor" in X11), as the code
11082         for that doesn't work anyway, and never has.
11083
11084 2000-12-22  Alexander Larsson  <alexl@redhat.com>
11085
11086         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
11087         Don't use isprint() for chars > 255.
11088
11089 2000-12-21  Havoc Pennington  <hp@redhat.com>
11090
11091         * tests/testtreeview.c: more work
11092
11093 2000-12-21  Alexander Larsson  <alexl@redhat.com>
11094
11095         * docs/README.linux-fb:
11096         Update the docs to the new pangoft2 way.
11097
11098 2000-12-21  Alexander Larsson  <alexl@redhat.com>
11099
11100         * configure.in:
11101         For linux-fb get the pangoft2 cflags and libs. This needs a recent
11102         pango version.
11103         Remove modules/linux-fb/Makefile.
11104
11105         * gdk/linux-fb/gdkdrawable-fb2.c:
11106         Render glyphs using freetype.
11107
11108         * gdk/linux-fb/gdkfb.h:
11109         Add new fb-specific functions needed for managing windows.
11110
11111         * gdk/linux-fb/gdkmain-fb.c:
11112         Remove gdk_font_init/fini() calls.
11113
11114         * gdk/linux-fb/gdkpango-fb.c:
11115         Remove old implementation. Use pangoft2 instead.
11116
11117         * gdk/linux-fb/gdkprivate-fb.h:
11118         Remove PangoFBFont and related stuff.
11119
11120         * gdk/linux-fb/gdkwindow-fb.c:
11121         Implement drawable->get_visible_region.
11122         Implement support for _gdk_window_set_child_handler () and
11123         _gdk_window_get_decorations().
11124
11125         * modules/Makefile.am:
11126         Remove linux-fb subdir.
11127
11128         * modules/linux-fb/*:
11129         Removed all.
11130         
11131 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
11132
11133         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
11134         calls, as they are no longer needed.
11135
11136         * gtk/gtktreemodelsort.c: Fix up the comparison code.
11137         
11138         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
11139         figure out how to emit a signal on an interface.
11140
11141 2000-12-20  Havoc Pennington  <hp@redhat.com>
11142
11143         * tests: new directory to contain tests, gtk/test* should move
11144         here sometime (with appropriate on-cvs-server hackery)
11145
11146         * tests/testtreeview.c, tests/Makefile.am: a test
11147         
11148         * configure.in (AC_OUTPUT): add tests/Makefile
11149
11150         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
11151         and "invisible_set" which were missing
11152
11153         * gtk/gtkrbtree.h: some cheesy indentation fix
11154         
11155 2000-12-20  Alexander Larsson  <alexl@redhat.com>
11156
11157         * gtk/gtkinvisible.c (gtk_invisible_realize):
11158         Attach the style to the window so that the style it is not
11159         leaked when unrealizing the window.
11160
11161 2000-12-18  Havoc Pennington  <hp@redhat.com>
11162
11163         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
11164         begin/end user action where appropriate
11165         (gtk_text_view_commit_handler): add begin/end user action
11166
11167         * gtk/gtktextbuffer.c: add begin/end user action signals, and
11168         bracket interactive operations with begin/end user action pair.
11169         
11170         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
11171         "interactive" arg from insert_text and delete_text signals.
11172         Add begin_user_action, end_user_action signals
11173         (gtk_text_buffer_begin_user_action): 
11174         (gtk_text_buffer_end_user_action): New functions to delimit 
11175         a user-visible action
11176
11177         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
11178         signals.
11179         
11180 2000-12-18  Havoc Pennington  <hp@redhat.com>
11181
11182         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
11183         was pretty non-working.
11184
11185         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
11186         by passing the length to g_utf8_validate().
11187
11188 2000-12-16  Havoc Pennington  <hp@pobox.com>
11189
11190         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
11191         Port to GObject, can go back in gdk-pixbuf after setting up 
11192         a gdk-pixbuf-marshal.h header over there.
11193
11194         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
11195         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
11196         args
11197         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
11198         set
11199         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
11200         here, do it when we create the buttons later
11201         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
11202         (gtk_tree_view_map): paranoia checks that column->button is shown 
11203         and unmapped
11204         (gtk_tree_view_size_request): only request visible children.
11205         Move header size calculation in here, for cleanliness, and 
11206         to maintain invariants for child widgets if we eventually 
11207         let users set different children inside the buttons
11208         (gtk_tree_view_map_buttons): factor out code to map buttons,
11209         since it was being called several times
11210         (gtk_tree_view_size_allocate_buttons): move_resize the drag
11211         windows instead of just moving them; their height may change 
11212         if we allow random widgets in there, or the theme changes.
11213         (gtk_tree_view_size_allocate): move button size allocation 
11214         above emitting the scroll signals, to ensure a sane state when we
11215         hit user code
11216         (gtk_tree_view_button_release): remove queue_resize after
11217         tree_view_set_size(), set_size() will handle any resize queuing
11218         that's needed
11219         (gtk_tree_view_focus_in): just queue a draw, don't fool with
11220         draw_focus goo
11221         (gtk_tree_view_focus): use gtk_get_current_event() and
11222         gdk_event_get_state()
11223         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
11224         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
11225         semicolon
11226         (gtk_tree_view_create_button): show the button here
11227         (gtk_tree_view_button_clicked): actually emit the clicked signal
11228         on the column
11229         (_gtk_tree_view_set_size): return right away if the size is
11230         unchanged, as a cheesy optimization
11231         (gtk_tree_view_setup_model): rename set_model_realized to 
11232         setup_model to match the flag that indicates whether we've 
11233         called it
11234         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
11235         exist, because set_scroll_adjustment does that and it shouldn't
11236         matter what order you call these in
11237         (gtk_tree_view_get_vadjustment): ditto
11238         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
11239         for paranoia
11240         (gtk_tree_view_set_headers_visible): call
11241         gtk_tree_view_map_buttons() instead of using cut-and-paste code
11242         (gtk_tree_view_append_column): clarify whether the return value
11243         is the count of columns before or after, and do the increment 
11244         separately from the return statement so you can tell from the code.
11245         (gtk_tree_view_remove_column): ditto
11246         (gtk_tree_view_insert_column): ditto
11247         (gtk_tree_view_get_column): remove g_return_if_fail for columns
11248         outside the existing range, the docs say that outside-range
11249         columns are allowed, so we handle them as documented. (Presumably
11250         this allows a nice loop with column != NULL as test.)
11251         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
11252         mean (left/right/center etc.).
11253         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
11254         (gtk_tree_view_expand_row): add docs
11255         (gtk_tree_view_collapse_row): add docs
11256
11257         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
11258         function to emit the clicked signal on a column
11259         
11260         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
11261         state of an event
11262         (gdk_event_get_time): don't treat GDK_SCROLL 
11263         as a button event, remove default case from switch so gcc 
11264         will whine if we don't explicitly handle all event types
11265
11266         * gtk/gtktreeselection.h: added some FIXME 
11267         
11268         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
11269         "columns" to "n_columns" and "column" to "columns" for clarity
11270
11271 2000-12-16  Havoc Pennington  <hp@pobox.com>
11272         
11273         * gtk/gtktextiter.c: General cleanup of the log attr iteration
11274         stuff. This should make e.g. the delete key work again in the
11275         text widget...
11276         (gtk_text_iter_forward_cursor_positions): handle negative count
11277         (gtk_text_iter_backward_cursor_positions): handle negative count
11278         (gtk_text_iter_forward_word_ends): handle negative count
11279         (gtk_text_iter_backward_word_starts): handle negative count
11280
11281         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
11282         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
11283         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
11284         GObject. No doubt will cause breakage.
11285
11286         * demos/gtk-demo/textview.c: remove hacks around
11287         non-GObject-ification of the text objects
11288
11289         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
11290         the text tag
11291         
11292 2000-12-14  Havoc Pennington  <hp@pobox.com>
11293
11294         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
11295         that we have Xrender
11296
11297 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
11298
11299         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
11300         Add two virtualized functions gdk_drawable_get_clip_region - to
11301         get the clip region when drawing.
11302         
11303         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
11304         use invalidate_region.
11305
11306         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
11307         region.
11308
11309         * acconfig.h configure.in: Check for Xft. For now, assume
11310         that if Xft is found, Pango was compiled with Xft support
11311         as well.
11312
11313         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
11314         gdk_colormap_query_color().
11315         
11316         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
11317         with Xft if appropriate.
11318
11319         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
11320         a pangoxft context if we have XFT and the environment
11321         variable GD_USE_XFT is set.
11322         
11323         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
11324         and also possibly an XftDraw structure.
11325
11326         * gtk/gtkfontsel.c: Handle the case where the font from the
11327         style doesn't match any of the fonts a bit better.
11328         
11329         * gtk/testgtk.c: Add tabs between directional segments for
11330         hebrew/arabic test. (Not really necessary, just a little
11331         prettier.)
11332
11333 2000-12-14  Havoc Pennington  <hp@redhat.com>
11334
11335         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
11336         reading a file
11337
11338 2000-12-14  Havoc Pennington  <hp@redhat.com>
11339
11340         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
11341         unused call to get_last_line()
11342
11343         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
11344         here until boxed is working (and maybe after that - we should
11345         really not gratuitously break old code)
11346
11347         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
11348         specific types for font_desc and tabs args, move them to
11349         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
11350         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
11351
11352         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
11353         use GTK_TYPE_POINTER for signal signatures as a hack-around
11354
11355         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
11356         PangoTabArray
11357
11358         * gtk/gtktextlayout.c (line_display_iter_to_index): 
11359         make static
11360         (line_display_index_to_iter): make static
11361
11362         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
11363         to marshal a string not a boxed
11364
11365         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
11366
11367         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
11368         since the UTF-8 isn't validated yet
11369
11370         * gtk/gtktextsegment.c (char_segment_check_func): don't require
11371         lines to end in '\n'
11372         
11373         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
11374         forward_to_delimiters, and grapheme boundaries
11375         (gtk_text_view_delete_from_cursor): properly handle non-newline
11376         delimiters, and grapheme boundaries
11377
11378         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
11379         to gtk_text_iter_forward_to_delimiters, and make it work properly
11380         if empty lines end with a character other than '\n'
11381
11382         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
11383         position
11384
11385 2000-12-15  Tor Lillqvist  <tml@iki.fi>
11386
11387         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
11388
11389         * gtk/gtk.def
11390         * gdk/gdk.def: Update.
11391
11392         * gdk/win32/gdkmain-win32.c
11393         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
11394         gdkmain-win32.c here.
11395
11396         * gdk/win32/makefile.mingw.in (all): No need to make
11397         gdk-win32res.o here, the makefile one step up will call us to make
11398         it.
11399
11400         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
11401         gdkkeys-win32.
11402
11403         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
11404
11405         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
11406         call to g_source_add().
11407
11408         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
11409         leak. Thanks to Andreas Kemnade.
11410
11411 2000-12-13  Havoc Pennington  <hp@pobox.com>
11412
11413         * gtk/gtktextbtree.h: Remove double _ in front of some functions
11414
11415         * gtk/gtktext*.[hc]: update accordingly
11416         
11417 2000-12-13  Havoc Pennington  <hp@pobox.com>
11418
11419         * gtk/gtktextbtree.h: Put _ in front of every function in this 
11420         header file
11421
11422         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
11423
11424 2000-12-13  Alex Larsson  <alexl@redhat.com>
11425
11426         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
11427         Add support for ps2 intellimouse.
11428
11429         * gdkkeyboard-fb.c:
11430         Move shift-F1 repaint handling to xlate handler only.
11431         
11432         * docs/README.linux-fb:
11433         Add imps2 to docs.
11434         Document the new refresh keys.
11435         
11436 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
11437
11438         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
11439
11440         * gtk/gtkbox.c: change property types from (u)long to (u)int for
11441         ::position and ::padding.
11442
11443         * gtk/gtkcontainer.c: make ::border_width an INT property.
11444
11445         * gtk/gtkpacker.c: make ::position an INT property.
11446
11447         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
11448         guard against NULL h/v scrollbars, since this is used at construction
11449         time.
11450
11451         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
11452         internal gtk_clist_constructor().
11453
11454         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
11455         gtk_ctree_constructor().
11456
11457         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
11458         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
11459
11460         * docs/reference/Makefile.am: fun stuff, disabled docs generation
11461         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
11462
11463         * gtk/gtkwidget.[hc]:
11464         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
11465         and gtk_widget_get().
11466         (gtk_widget_new): use g_object_new_valist().
11467         (gtk_widget_set): use g_object_set_valist().
11468
11469         * gtk/gtkobject.[hc]:
11470         removed gtk_object_arg_get_info(), gtk_object_getv(),
11471         gtk_object_query_args(), gtk_object_newv(),
11472         gtk_object_class_add_signals(),
11473         gtk_object_class_user_signal_new(),
11474         gtk_object_class_user_signal_newv(),
11475         gtk_object_arg_set(), gtk_object_arg_get(),
11476         gtk_object_args_collect(),
11477         gtk_object_default_construct(),
11478         gtk_object_constructed(),
11479         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
11480         removed nsignals, signals and n_args members from GtkObjectClass.
11481         (gtk_object_new): use g_object_new_valist().
11482         (gtk_object_set): use g_object_set_valist().
11483         (gtk_object_get): use g_object_get_valist().
11484         
11485         * gtk/gtkcompat.h: define gtk_object_default_construct().
11486         
11487         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
11488         g_object_new().
11489
11490         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
11491         fucntions, cleaned up method assignments (make sure your structures
11492         are setup properly before calling out). removed all GTK_CONSTRUCTED
11493         hacks ;)
11494
11495 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
11496
11497         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
11498         off-by-one error in checks. (Dave Lambert)
11499
11500 2000-12-12  Alexander Larsson  <alexl@redhat.com>
11501
11502         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
11503         Don't free gdk_fb_keyboard twice.
11504
11505 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
11506
11507         * gtk/testgtk.c:
11508         (create_tooltips): 
11509         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
11510         use GObject swapped_signal:: properties instead.
11511
11512         * gtk/gtkcellrenderertoggle.c: 
11513         * gtk/gtkcellrenderertextpixbuf.c: 
11514         * gtk/gtkcellrenderertext.c: 
11515         * gtk/gtkcellrendererpixbuf.c: 
11516         * gtk/gtkcellrenderer.c:
11517         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
11518         missing warnings for invalid property ids, install properties
11519         with g_object_class_install_property() now.
11520         
11521         * gtk/gtksignal.c:
11522         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
11523         
11524 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
11525         
11526         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
11527         to determine if a window is the focus widget within
11528         its toplevel.
11529
11530         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
11531         to be boolean.
11532
11533         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
11534         of the case where the container CAN_FOCUS to here instead
11535         of having it in each individual move-the-focus place.
11536
11537         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
11538         focusing to be geometric in a much more obvious sense. Arrowing
11539         around is still non-intuitive because it isn't perfect and
11540         because entries, etc, grab the arrow keys, but it at least
11541         usually will do what you expect now.
11542         
11543         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
11544         file.
11545
11546         * gtk/gtknotebook.c: Change tabs to be a single item in
11547         the focus chain. Make movement of focus on tabs with arrow
11548         keys wrap around.
11549         
11550         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
11551         CHECK_FIND_CHILD macro to give informative error messages
11552         instead of silent returns.
11553
11554         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
11555         flag since we handle GdkReturn on the tabs.
11556
11557         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
11558         windows rather than sending expose events directly.
11559
11560         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
11561         definition for GtkNotebookPage into .c file, since it is private.
11562
11563         * gtk/testgtk.c (create_notebook): Add option for 
11564         testing borderless notebook.
11565
11566         * gtk/testgtk.c (page_switch): Removed egregious poking
11567         around in GTK+ internals.
11568
11569         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
11570
11571         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
11572         properly through gtk_clist_focus. Make the title headers a
11573         single item in the tab-focus chain, and make left-right wrap
11574         around.
11575
11576         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
11577         focus method so that wrapping around works properly.
11578
11579         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
11580         that is handled for the widget now. 
11581
11582 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
11583
11584         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
11585         widgets as TOPLEVEL.
11586
11587         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
11588         TOPLEVEL widgets are containers.
11589
11590         * gtk/gtkinvisible.h: Remove useless include.
11591
11592 2000-12-11  Havoc Pennington  <hp@redhat.com>
11593
11594         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
11595         Handle chopping off \r\n and 0x2029 in addition to \n before
11596         passing to PangoLayout
11597
11598         * gtk/gtkimcontextsimple.c
11599         (gtk_im_context_simple_get_preedit_string): 
11600         return an empty string if no match is pending
11601
11602         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
11603         assertion that the returned preedit string was sane
11604
11605         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
11606         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
11607         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
11608
11609 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
11610
11611         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
11612         Fix up finalizer to chain to its parent.
11613
11614 2000-12-11  Alexander Larsson  <alexl@redhat.com>
11615
11616         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
11617         Clearified the difference between the keyboard types. Wrote a note
11618         about the magic sysrq key to get out of raw mode.
11619
11620 2000-12-09  James Henstridge  <james@daa.com.au>
11621
11622         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
11623         member to hold masks for detecting the start of a protocol packet.
11624         (mouse_devs): add packet start masks for ps2 and ms device types.
11625         Left the mask for fidmour blank, as I have no idea what it should
11626         be.
11627         (handle_mouse_io): skip bytes until we get to the start of a
11628         packet.  My Logitech mouse seems to be passing an extra NULL pad
11629         byte, and GPM does a similar thing here.
11630         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
11631         this is the ms mouse driver.
11632         (gdk_fb_mouse_ms_packet): fix up button handling, which was
11633         completely broken except for button1.  It was checking the wrong
11634         bit in the packet for the status of the right mouse button, and
11635         wrongly assuming right == button2 rather than 3.  I fixed that and
11636         also added support for middle button (button2).
11637
11638 2000-12-08  Havoc Pennington  <hp@redhat.com>
11639
11640         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
11641         that cause a segfault on text insertion
11642
11643         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
11644         warning
11645
11646         * gtk/gtktextiter.c (test_log_attrs): use
11647         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
11648
11649         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
11650         Get log attrs for a line, using a cache stored on the buffer
11651         
11652         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
11653         reported by Jeff Franks
11654
11655 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
11656
11657         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
11658         /dev/ttyS0 -> /dev/mouse
11659
11660 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
11661
11662         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
11663         Added dummy gdk_fontset_load.
11664
11665 2000-12-08  Alexander Larsson  <alexl@redhat.com>
11666
11667         * docs/README.linux-fb:
11668         * docs/Makefile.am:
11669         Initial GtkFB docs.
11670         
11671         * gdk/linux-fb/Makefile.am:
11672         Define GDK_DATA_PREFIX.
11673
11674         * gdk/linux-fb/gdkmain-fb.c:
11675         Fix typo.
11676         Change default display to /dev/fb0.
11677
11678         * gdk/linux-fb/gdkpango-fb.c:
11679         Add $(prefix)/share/fonts/ to font path.
11680         
11681 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
11682
11683         * gdk/linux-fb/gdkkeyboard-fb.c:
11684         New file containing the abstracted keyboard driver. Most code
11685         taken from gdkinput-ps2.c
11686
11687         * gdk/linux-fb/gdkinput-ps2.c:
11688         Removed file.
11689         
11690         * gdk/linux-fb/Makefile.am:
11691         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
11692
11693         * gdk/linux-fb/gdkcolor-fb.c:
11694         display->fb was renamed to display->fb_fd.
11695
11696         * gdk/linux-fb/gdkcursor-fb.c:
11697         gdk_mouse_get_info -> gdk_fb_mouse_get_info
11698
11699         * gdk/linux-fb/gdkinput.c:
11700         Moved gdk_input_init here from gdkinput-ps2.c
11701
11702         * gdk/linux-fb/gdkmain-fb.c:
11703         display->fb was renamed to display->fb_fd.
11704         Now the tty and the console is opened here instead
11705         of in the keyboard driver. Also check GDK_VT to see what
11706         tty to open.
11707         Move gdk_beep () here from gdkinput-ps2.c
11708         gdk_mouse_get_info -> gdk_fb_mouse_get_info
11709
11710         * gdk/linux-fb/gdkmouse-fb.c:
11711         Add header.
11712         gdk_mouse_get_info -> gdk_fb_mouse_get_info
11713         Return correct keyboard modifiers.
11714         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
11715
11716         * gdk/linux-fb/gdkprivate-fb.h:
11717         Add tty and vt info to display.
11718         Add orignal modeinfo storage to display
11719         Update global functions
11720
11721         * gdk/linux-fb/gdkwindow-fb.c:
11722         Added gdk_fb_window_find_focus().
11723         gdk_mouse_get_info -> gdk_fb_mouse_get_info
11724
11725 2000-12-07  Havoc Pennington  <hp@pobox.com>
11726
11727         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
11728         function, noticed by Alex
11729
11730 2000-12-06  Elliot Lee  <sopwith@redhat.com>
11731
11732         * configure.in: Detect freetype properly
11733
11734         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
11735         above.
11736
11737 2000-12-06  Alexander Larsson  <alexl@redhat.com>
11738
11739         * gdk/linux-fb/Makefile.am:
11740         Add gdkmouse-fb.c
11741         
11742         * gdk/linux-fb/gdkmouse-fb.c:
11743         New file. Abstracted the mouse drivers a bit.
11744
11745         * gdk/linux-fb/gdkcursor-fb.c:
11746         The cursor hide/show functions was moved here from gdkinput-ps2.c.
11747
11748         * gdk/linux-fb/gdkinput-ps2.c:
11749         Removed old mouse handling code. Moved cursor handling code
11750         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
11751         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
11752         gdk_mouse_get_info.
11753
11754         * gdk/linux-fb/gdkmain-fb.c:
11755         Pass NULL pointers for x,y in gdk_mouse_get_info call.
11756
11757         * gdk/linux-fb/gdkprivate-fb.h:
11758         Removed public gdk_fb_find_common_ancestor, added and renamed
11759         functions for the new mouse handling code.
11760
11761         * gdk/linux-fb/gdkwindow-fb.c:
11762         Moved gdk_fb_window_send_crossing_events here. added global
11763         variable gdk_fb_window_containing_pointer. made
11764         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
11765         renamed to gdk_mouse_get_info.
11766
11767 2000-12-06  Alexander Larsson  <alexl@redhat.com>
11768
11769         * gdk/linux-fb/gdkevents-fb.c:
11770         Update to match latest gmain/gsource changes.
11771
11772         * gdk/linux-fb/gdkinput-ps2.c:
11773         Bogus gdk_keymap_get_entries_for_keycode implementation so that
11774         it links. Will be implemented later.
11775
11776 2000-12-03  Havoc Pennington  <hp@pobox.com>
11777
11778         * gdk/Makefile.am: add gdkkeys.[hc]
11779
11780         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
11781         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
11782
11783         * acconfig.h, configure.in: add checks and command line options
11784         for XKB
11785
11786         * gdk/x11/gdkkeys-x11.c: Implement the above functions
11787         
11788         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
11789         and group in the key event
11790
11791         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
11792         field with the low-level hardware key code, and a group
11793         field with the keyboard group
11794
11795         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
11796         and declare a couple globals used for keymap handling
11797         
11798         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
11799         hold down Shift-Control and type a hex number to get a Unicode 
11800         character corresponding to the hex number
11801         (gtk_im_context_simple_get_preedit_string): Fix cursor position
11802         (return bytes not chars)
11803
11804 2000-12-05  Elliot Lee  <sopwith@redhat.com>
11805
11806         * gdk/gdkcolor.h: Make GdkColor specify element sizes
11807         to avoid waste on 64-bit platforms.
11808
11809 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
11810
11811         * INSTALL: Fix link to PNG home, remove reference
11812         to fribidi.
11813
11814         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
11815         
11816         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
11817         tested.)
11818
11819         * gtk/gtkcheckmenuitem.c: Permanently turn on
11820         always_show_toggle.
11821
11822         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
11823         be NULL. (Vladimir Klebanov, #26545)
11824
11825         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
11826         some signed/unsigned comparison problems. (#6510,
11827         David Kaelbling)
11828
11829         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
11830         return type to boolean (Oskar Liljeblad, #18648)
11831
11832 2000-12-05  Alexander Larsson  <alexl@redhat.com>
11833
11834         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
11835         Remove bogus colormap setting.
11836
11837 2000-12-05  Alexander Larsson  <alexl@redhat.com>
11838
11839         * gdk/linux-fb/gdkcolor-fb.c:
11840         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
11841
11842         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
11843         Must set colormap.
11844         
11845 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
11846
11847         * docs/tutorial/gtk-tut.sgml: DND updates
11848
11849 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
11850
11851         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
11852         Remove old debug g_warning().
11853         (gdk_fb_draw_drawable): The src argument can be either a wrapper
11854         or an implementation, just pass the implementation to draw_drawable_2.
11855         
11856         * gdk/linux-fb/gdkprivate-fb.h:
11857         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
11858
11859         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
11860         clear and invalidate area when window is destroyed.
11861         (send_map_events): Remove old commented out code.
11862
11863 2000-12-05  Alexander Larsson  <alexl@redhat.com>
11864
11865         * gdk/linux-fb/gdkpango-fb.c:
11866         Use italic instead of oblique in font aliases.
11867         
11868         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
11869         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
11870         other unsupported functions.
11871
11872 2000-12-04  Havoc Pennington  <hp@redhat.com>
11873
11874         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
11875
11876         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
11877
11878         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
11879
11880         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
11881         hack to avoid infinite loops (synthetic expose event) - 
11882         Owen has more appropriate fixes in a branch he'll check in later.
11883
11884         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
11885         separator, CR, and CRLF as line ends
11886
11887         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
11888         into lines using pango_find_paragraph_boundary(); other bits of
11889         the widget are still going to be broken if the boundary isn't '\n'
11890         though
11891
11892 2000-12-04  Alexander Larsson  <alexl@redhat.com>
11893
11894         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
11895         multiply.
11896
11897         * gdk/linux-fb/gdkpango-fb.c:
11898         Copied some 26.6 scaling macros from pango to clean up the rounding.
11899         (pango_fb_font_get_glyph_info): Correct sign on x value.
11900
11901         * gdk/linux-fb/gdkprivate-fb.h:
11902         Removed unreferenced external functions.
11903
11904         * modules/linux-fb/Makefile.am: Use ` instead of '.
11905
11906         * modules/linux-fb/basic.c:
11907         Remove dead code. In particular the dummy lang engine which broke all
11908         pango layouts in GtkFB. Don't include tables-big.i anymore.
11909
11910         * modules/linux-fb/tables-big.i:
11911         Upgrade to latest version from pango. Left for reference, basic_ranges
11912         moved to basic.c.
11913         
11914 2000-12-04  Havoc Pennington  <hp@redhat.com>
11915
11916         Fix bugs Alex found:
11917         
11918         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
11919         to "draw"
11920
11921         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
11922
11923         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
11924
11925         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
11926         implementation in here, apparently the expose() implementation was
11927         dead code.
11928
11929 2000-12-04  Alexander Larsson  <alexl@redhat.com>
11930
11931         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
11932         Return positive descent.
11933
11934 2000-12-02  Havoc Pennington  <hp@pobox.com>
11935
11936         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
11937         method and signal
11938         
11939         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
11940         calls gdk_window_process_updates() to push the exposes through
11941         (gtk_widget_class_init): No more draw signal, no
11942         gtk_widget_real_draw()  
11943         
11944         * gtk/gtkbin.c (gtk_bin_draw): remove
11945
11946         * gtk/gtkbox.c (gtk_box_draw): remove
11947
11948         * gtk/gtkbutton.c (gtk_button_draw): remove
11949
11950         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
11951
11952         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
11953
11954         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
11955
11956         * gtk/gtkclist.c (gtk_clist_draw): remove
11957
11958         * gtk/gtkentry.c (gtk_entry_draw): remove
11959
11960         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
11961
11962         * gtk/gtkfixed.c (gtk_fixed_draw): remove
11963
11964         * gtk/gtkframe.c (gtk_frame_draw): remove
11965
11966         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
11967
11968         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
11969
11970         * gtk/gtklayout.c (gtk_layout_draw): remove
11971
11972         * gtk/gtklist.c (gtk_list_draw): remove
11973
11974         * gtk/gtklistitem.c (gtk_list_item_draw): remove
11975
11976         * gtk/gtkmenu.c (gtk_menu_draw): remove
11977
11978         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
11979
11980         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
11981
11982         * gtk/gtknotebook.c (gtk_notebook_draw): remove
11983
11984         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
11985
11986         * gtk/gtkpacker.c (gtk_packer_draw): remove
11987
11988         * gtk/gtkrange.c (gtk_range_draw): remove
11989
11990         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
11991
11992         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
11993
11994         * gtk/gtktable.c (gtk_table_draw): remove
11995
11996         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
11997
11998         * gtk/gtktext.c (gtk_text_draw): remove
11999
12000         * gtk/gtktextview.c (gtk_text_view_draw): remove
12001
12002         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
12003
12004         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
12005
12006         * gtk/gtktree.c (gtk_tree_draw): remove
12007
12008         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
12009
12010         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
12011
12012         * gtk/gtkviewport.c (gtk_viewport_draw): remove
12013
12014         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
12015
12016         * gtk/gtkvscale.c (gtk_vscale_draw): remove
12017
12018         * gtk/gtkwindow.c (gtk_window_draw): remove
12019
12020 2000-20-01  Anders Carlsson  <andersca@gnu.org>
12021
12022         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
12023         a GtkToggleButton is both insensitive and active, it was being
12024         drawn by the GtkButton draw handler which doesn't check the
12025         state. Now it's calling gtk_toggle_button_paint instead.
12026         
12027 2000-12-01  Havoc Pennington  <hp@redhat.com>
12028
12029         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
12030         dangling pointers to the appearance attributes from the 
12031         line display
12032
12033         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
12034         width/height to mean "full width/height of drawable"
12035
12036         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
12037         click to select word/line
12038         
12039         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
12040         when getting log attrs. Get a slice, so that pixmaps and stuff
12041         are properly handled.
12042
12043         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
12044         paste into the selection (replaces selection now, previously
12045         crashed or added to selection). Reveals longstanding btree bug -
12046         select multiple lines, middle-click on the selection, boom. This
12047         isn't related to my changes though.
12048
12049         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
12050         PangoLogAttrs changes
12051         (gtk_entry_move_backward_word): ditto
12052
12053         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
12054         functions return bool whether the iter moved onto a
12055         dereferenceable position.
12056  
12057         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
12058         functions for motion in terms of display lines.
12059
12060         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
12061         get the buffer a mark is inside
12062         
12063 2000-12-01  Alexander Larsson  <alexl@redhat.com>
12064
12065         * gdk/linux-fb/Makefile.am:
12066         * modules/linux-fb/Makefile.am:
12067         Freetype 2 final uses freetype-config
12068
12069         * gdk/linux-fb/gdkpango-fb.c:
12070         Upgrade to use Freetype 2 final.
12071         More flexible support for font aliases, this also fixes a bug with
12072         GtkFontSelector, as the aliases must be visible in the font/family list,
12073         or GtkFontSelector reads uninitialized memory.
12074
12075 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
12076
12077         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
12078         XGetIMValues to properly terminate variable argument list, and do
12079         NULL return check for ic_values and xim_styles.
12080
12081         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
12082         Restore preedit state after XmbResetIC().
12083         
12084         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
12085         XvaCreateNestedList() should take XvaNestedList, but not
12086         XvaNestedList*.
12087
12088         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
12089         preedit_draw_callback, preedit_caret_callback): Match
12090         "preedit-changed" signal name to "preedit_changed" to be
12091         consistent to the spec.
12092
12093         * gtk/gtkimcontextsimple.c (check_table):
12094         Match "preedit-changed" to "preedit_changed" to be consistent
12095         to the spec.
12096
12097 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
12098
12099         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
12100         gc->clip_region == NULL>
12101
12102 2000-11-30  Tor Lillqvist  <tml@iki.fi>
12103
12104         Changes by Hans Breuer:
12105         
12106         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
12107         Dont't use negative width and height as max_hints. This fixes
12108         Owen's recent testgtk changes for win32.
12109
12110         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
12111         gdk_win32_hdc_release): These are exported and may be called with
12112         other drawable types than our GdkDrawableImplWin32 (?).
12113
12114         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
12115         so always #define USE_BACKING_STORE.
12116
12117         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
12118         of printf for debugging output.
12119
12120         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
12121         
12122         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
12123
12124         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
12125         declaration.
12126
12127         * gtk/gtktexttypes.h: Ditto.
12128
12129         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
12130         (GDK_VoidSymbol) also if in case of arg check failure.
12131
12132         * gtk/gtkimcontextsimple.c
12133         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
12134         position to the pointer, but to the variable it points to.
12135
12136         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
12137
12138         * gtk/gtk.def: Updates.
12139
12140 2000-11-29  Elliot Lee  <sopwith@redhat.com>
12141
12142         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
12143         GTK_TYPE_TREE_MODEL.
12144
12145 2000-11-29  Alexander Larsson  <alexl@redhat.com>
12146
12147         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
12148         Set the size of the font from the description.
12149         (gdk_text_width): Gross hack that calculates the width
12150         of text by text_length * size/2. This is necessary because
12151         GtkLabel does some ugly gtk_string_width call to calculate
12152         an good size.
12153         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
12154
12155 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
12156
12157         * docs/tutorial/gtk-tut.sgml: DND updates
12158
12159 2000-11-29  Alexander Larsson  <alexl@redhat.com>
12160
12161         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
12162         If you pass width or height == 0 to gdk_window_clear_area they
12163         should be calculated from the window size.
12164
12165 2000-11-29  Alexander Larsson  <alexl@redhat.com>
12166
12167         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
12168         a grab, but no grab-cursor, use the cursor from the grabbed
12169         window. (gdk_fb_window_send_crossing_events): Send normal
12170         enter/leave notifications if grab and owner_events == TRUE.
12171
12172 2000-11-29  Alexander Larsson  <alexl@redhat.com>
12173
12174         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
12175         Do implicit button grabs, even if the window doesn't
12176         want the event.
12177         (gdk_fb_window_send_crossing_events): If there is a
12178         grab, only the grabbed window gets normal enter/leave
12179         notifications. On ungrab go from grabbed window to current.
12180         Don't send any notification to b when propagating from c -> b.
12181         If setting a grab on window, don't set prev_window.
12182         (handle_mouse_input): Send enter/leave events to the window the
12183         mouse is over, not the grabbed one.
12184         
12185 2000-11-28  Elliot Lee  <sopwith@redhat.com>
12186
12187         * gdk/gdkregion-generic.c: Zap warning.
12188         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
12189         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
12190
12191 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
12192
12193         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
12194         The cursor should be hidden if it is part of either the
12195         source or destination region. Not only if it is in both.
12196         (gdk_window_set_transient_for): Silence warnings.
12197
12198 2000-11-28  Alexander Larsson  <alexl@redhat.com>
12199
12200         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
12201         The default mode in X is Pie Arcs, therefore that is
12202         what Gtk+ uses.
12203
12204 2000-11-28  Alexander Larsson  <alexl@redhat.com>
12205
12206         * gdk/linux-fb/gdkinput-ps2.c:
12207         Implement correct EnterNotify/LeaveNotify:
12208         (gdk_fb_window_send_crossing_events): New function that sends
12209         all GdkCrossingEvents from the last mouse-window to the specified
12210         destination.
12211         (gdk_fb_window_visibility_crossing): Removed function.
12212         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
12213         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
12214         instead of gdk_window_get_pointer() for better readability.
12215
12216         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
12217         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
12218
12219         * gdk/linux-fb/gdkprivate-fb.h:
12220         removed gdk_fb_window_visibility_crossing, added
12221         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
12222
12223         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
12224         New function that finds the least common ancestor of two windows.
12225         (gdk_window_show, gdk_window_hide):
12226         Use gdk_fb_window_send_crossing_events.
12227         (gdk_fb_window_move_resize): Send configure events to toplevel
12228         windows. Use gdk_fb_window_send_crossing_events.
12229
12230 2000-11-27  Havoc Pennington  <hp@redhat.com>
12231
12232         * gtk/gtkprivate.h (enum): Remove a trailing comma
12233
12234 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
12235
12236         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
12237         the "changed" callback of the adjustment.  We need to redraw the
12238         spin button's arrows when the adjustment's range changes.
12239         (adjustment_changed_cb): Draw the arrows.
12240         (gtk_spin_button_value_changed): Draw the arrows.
12241
12242 2000-11-23  Alexander Larsson  <alexl@redhat.com>
12243
12244         * gdk/linux-fb/gdkselection-fb.c:
12245         Initial selection implementation.
12246
12247         * gtk/gtkselection.c:
12248         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
12249         requestor in gtk_selection_request.
12250         
12251         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
12252         Added gdk_selection_property atom.
12253
12254         * gdk/linux-fb/gdkprivate-fb.h:
12255         Export _gdk_selection_window_destroyed.
12256         Removed mask_off_x/y from GdkCursorPrivateFB.
12257         Removed hbearing, added top, left to PangoFBGlyphInfo.
12258
12259         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
12260         Call _gdk_selection_window_destroyed
12261         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
12262         the root window has been created.
12263         (static_dx_hack, static_dy_hack, compare_draw_rects,
12264         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
12265         in region. They are already sorted. Instead just traverse them in
12266         reverse if draw_direction < 0.
12267         
12268         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
12269         Double-clicks must be sent after the normal button_press.
12270         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
12271         
12272         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
12273         Pass _gdk_fb_screen_gc instead of NULL.
12274
12275         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
12276         Initialize gdk_selection_property.
12277         (gdk_event_make): Remove unused code.
12278
12279         * gdk/linux-fb/gdkcursor-fb.c:
12280         Make the pixmap for the cursor the same size as the mask. Also remove
12281         the mask_off_x/y fields in GdkCursorPrivateFB and combine
12282         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
12283         Now the whole cursor is visible.
12284
12285         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
12286         Fix bug where xdest+height instead of ydest+height was used
12287         to calculate if the source and dest overlapped. This fixes the
12288         redraw bug when the main window in testgtk was scrolled when
12289         partially covered by a tall window.
12290         Copy rectangles in region in order depending on draw_direction.
12291         Also moved the draw_direction flipping of start_y and end_y into
12292         the gc functions, as this might not be what all of them want.
12293         (gdk_fb_draw_lines): Support dashed lines.
12294         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
12295         so that the text is positioned correctly (was 1 pixel high).
12296
12297         gdk/linux-fb/gdkgc-fb.c:
12298         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
12299         all lines were drawn a pixel to short. Also checked the default of
12300         the rest of the values, and they're the same as X now.
12301
12302         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
12303         Clean up pixel positioning of the glyphs. Just use bgy->top and
12304         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
12305         to all divisions to get correct rounding behaviour.
12306
12307         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
12308         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
12309         Moved start_y/end_y flip into draw_drawable implementations.
12310         Flip also x rendering when draw_direction < 0.
12311         Remove unneccesary multiply with draw_direction.
12312
12313 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
12314
12315         * docs/tutorial/gtk-tut.sgml:
12316           - get rid of gtk_toggle_button_toggled FUD
12317           - start DND section - needs work - based on:
12318                 http://wolfpack.twu.net/docs/gtkdnd/
12319
12320 2000-11-22  Alexander Larsson  <alexl@redhat.com>
12321
12322         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
12323         Correct calculation of font metrics. Now GtkEntrys have sane
12324         size.
12325
12326 2000-11-22  Alexander Larsson  <alexl@redhat.com>
12327
12328         * gdk/gdktypes.h:
12329         Add new type GdkSpan
12330         
12331         * docs/reference/gdk/gdk-sections.txt,
12332         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
12333         gdk/gdkregion.h:
12334         Implement and document gdk_region_spans_intersect_foreach.
12335
12336         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
12337         Add new file gdkrender-fb.c which contains all core
12338         rendering code.
12339         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
12340         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
12341         (optimized rectangle fillers).
12342
12343         * gdk/linux-fb/gdkdrawable-fb2.c:
12344         Move all rendering code to gdkrender-fb.c.
12345         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
12346         Use the new span intersection functions in gdk_fb_fill_spans.
12347         gdk_fb_draw_rectangle() clips filled rectangles and calls
12348         gc->fill_rectangle with the result.
12349         gdk_fb_fill_spans() gets extra argument "sorted".
12350
12351         * gdk/linux-fb/gdkevents-fb.c:
12352         Remove unused includes and defines.
12353         New function gdk_fb_get_time() to get correct time for events.
12354
12355         * gdk/linux-fb/gdkinput-ps2.c:
12356         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
12357         Make sure to set the time of all events.
12358
12359         * gdk/linux-fb/gdkmain-fb.c:
12360         Use gdk_fb_get_time ().
12361
12362         * gdk/linux-fb/gdkprivate-fb.h:
12363         New virtual GC calls: fill_span & fill_rectangle.
12364         Export gdk_fb_get_time().
12365         gdk_fb_fill_spans() gets extra argument "sorted".
12366
12367         * gdk/linux-fb/mi*.c:
12368         Use GdkSpan instead of GdkRectangle.
12369         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
12370         from XFree 4 source)
12371         
12372 2000-11-22    <jrb@redhat.com>
12373
12374         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
12375         reversing the order in an if statement will do.  Doing so managed
12376         to make the treemodelsort half work.  Other half will follow after
12377         I get the insert function fully fixed.
12378
12379 2000-11-21  Elliot Lee  <sopwith@redhat.com>
12380         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
12381         more than 2 bits. Besides, I need to implement an evil hack. :)
12382
12383 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
12384
12385         * docs/tutorial/gtk-tut.sgml: minor corrections
12386
12387 2000-11-20  Jonathan Blandford <jrb@redhat.com>
12388         * gtk/gtktreemodelsort.h: Add convertion functions to let you
12389           convert to and from relative path's and iters.
12390
12391         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
12392           testing sorting functions a bit better.  Currently broken -- will
12393           fix in morning.
12394
12395 2000-11-20  Havoc Pennington  <hp@redhat.com>
12396
12397         * gtk/gtkwidget.c: Documented a bunch of functions in here
12398         (gtk_widget_realize): Warn if you try to realize
12399         a widget with no parent that isn't a toplevel
12400         (gtk_widget_intersect): return a gboolean
12401
12402 2000-11-20  Havoc Pennington  <hp@redhat.com>
12403
12404         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
12405         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
12406         scrolling to be implemented in GDK to finish. Also, right now
12407         we just size_allocate all children on every layout change,
12408         which is pretty lame. Test commented out of testtext.c, 
12409         until it works better.
12410
12411 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
12412
12413         * gdk/linux-fb/gdkdrawable-fb2.c:
12414         Removed unused arguments from gdk_fb_drawable_get_pixel().
12415
12416         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
12417         Renamed fidur specific mouse packet data in MouseDevice to
12418         generic. Used it in ps2 mouse handling code to avoid blocking
12419         reads.
12420
12421 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
12422
12423         * demos/gtk-demo/main.c: Changed to have the list become
12424         non-italic when the demo window is destroyed through an external
12425         event (like a close button).  Doing so found three bugs in the
12426         widget.
12427
12428         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
12429
12430         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
12431         we actually set the cell.
12432
12433         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
12434
12435         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
12436         free a leaked path.  Thanks memprof.
12437
12438 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
12439
12440         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
12441         off-by-one error when destroying allocated segments
12442         on failure. (Elliot)
12443
12444 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
12445
12446         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
12447         memleaks found by Evan Martin.
12448
12449 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
12450
12451         * Released 1.3.2
12452         
12453         * NEWS: Updates for 1.3.2
12454
12455 2000-11-17  Tor Lillqvist  <tml@iki.fi>
12456
12457         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
12458         but in general for window system specific events.
12459
12460         * gtk/gtk.def
12461         * gtk/makefile.mingw.in
12462         * gtk/makefile.msc.in: Update.
12463         
12464         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
12465
12466 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
12467
12468         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
12469         distribute gtk.immodules.
12470
12471         * gtk/Makefile.am (install-data-local): Don't install the
12472         gtk.immodules file created for the uninstalled modules;
12473         instead run gtk-query-immodules after install
12474
12475 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
12476
12477         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
12478         -rpath to the right install location.
12479
12480         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
12481         -export-dynamic.
12482
12483         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
12484         properly.
12485
12486 2000-11-15  Havoc Pennington  <hp@pobox.com>
12487
12488         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
12489         patch from Mikael Hermansson to temporarily stop blinking while
12490         the user is using the keyboard to type or navigate. 
12491
12492         Also, when blinking, stay on for longer than we stay off. Also,
12493         return from start_cursor_blink if !cursor_visible, to save
12494         checking that flag all over the place before we call
12495         start_cursor_blink.
12496
12497 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
12498
12499         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
12500         only contain a "fontset" line, which is now ignored.
12501
12502         * gtk/gtkentry.c (gtk_entry_button_release): Make 
12503         double-click-to-select-word work.
12504         
12505 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
12506
12507         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
12508         Don't move back one char when we are actually at the end of the 
12509         paragraph.
12510
12511 2000-11-15  Robert Brady  <robert@suse.co.uk>
12512
12513         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
12514         'o' < 'p'.
12515         
12516         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
12517         bind_textdomain_codeset.
12518
12519         (gtk_init_check): Make the warning about translating default:LTR
12520         sterner.
12521         
12522 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
12523
12524         * **/Makefile.am : remove unecessary rules for win32-specific
12525         config-substituted targets. If you want these rules, use
12526         --enable-maintainer-mode (called automatically by autogen.sh).
12527         Stops a lot of unneccessary make-time warnings.
12528
12529         * gtk/gtktext{layout,display}.c: Factor in total width as
12530         well as screen when figuring alignment for word-wrap as well as
12531         no wrap; this is necessary to handle lines that cannot be wrapped
12532         at all.
12533
12534 2000-11-15  Havoc Pennington  <hp@redhat.com>
12535
12536         * gtk/testtext.c: Implement essential color cycling feature
12537
12538 2000-11-15  Havoc Pennington  <hp@redhat.com>
12539
12540         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
12541         when we invalidate the main window.
12542
12543         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
12544         GtkTextView will now invalidate the side windows for us when text
12545         changes.
12546
12547 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
12548
12549         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
12550         unconditionally, since we may need to update the horizontal
12551         scrollbars even if the height didn't change.
12552
12553         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
12554         the extra attrs, since some of them affect size.
12555
12556         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
12557         x_offset correctly.
12558
12559 2000-11-15  Havoc Pennington  <hp@redhat.com>
12560
12561         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
12562         don't move the first line out into the margin, instead move the
12563         whole paragraph in order to make space for the first line within 
12564         the margin
12565
12566 2000-11-15  Havoc Pennington  <hp@redhat.com>
12567
12568         * gtk/gtktextview.c (changed_handler): offset redraw rect by
12569         xoffset in addition to yoffset, so horizontal scrolling doesn't
12570         break redraws
12571
12572 2000-11-15  Havoc Pennington  <hp@redhat.com>
12573
12574         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
12575         from the cursor
12576         (render_layout_line): fix reversed test that caused weird
12577         underlines to get drawn
12578
12579 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
12580
12581         * gdk/linux-fb/gdkprivate-fb.h:
12582         Fix debug macros.
12583         
12584 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
12585
12586         * gdk/linux-fb/gdkprivate-fb.h:
12587         Added virtual functions set_pixel, get_color,
12588         fill_span and draw_drawable to the GC.
12589         Added global _gdk_fb_screen_gc to use instead of
12590         NULL when drawing to the screen.
12591         Added _gdk_fb_gc_calc_state() prototype.
12592
12593         * gdk/linux-fb/gdkgc-fb.c:
12594         Call _gdk_fb_gc_calc_state() on any gc state change.
12595
12596         * gdk/linux-fb/gdkglobals-fb.c:
12597         Add _gdk_fb_screen_gc
12598                 
12599         * gdk/linux-fb/gdkdrawable-fb2.c:
12600         _gdk_fb_gc_calc_state() calculates best functions
12601         for the GC state and depth.
12602         Moved bpp specialized code to separate functions.
12603         Added optimized 24 bpp AA draw_drawable.
12604
12605         * gdk/linux-fb/gdkevents-fb.c:
12606         Silence gcc warning.
12607
12608         * gdk/linux-fb/gdkimage-fb.c:
12609         Use _gdk_fb_screen_gc
12610
12611         * gdk/linux-fb/gdkwindow-fb.c:
12612         Init and use _gdk_fb_screen_gc
12613
12614         * gdk/linux-fb/mitypes.h:
12615         Remove unused types.
12616
12617 2000-11-14  Havoc Pennington  <hp@pobox.com>
12618
12619         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
12620         to pixels
12621
12622 2000-11-14  Havoc Pennington  <hp@pobox.com>
12623
12624         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
12625
12626         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
12627         unknown char, no real reason we were using a variable. 
12628         Remove gtk_text_unknown_char variable. Fix all the text widget
12629         files accordingly.
12630
12631         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
12632         since the Unicode spec seems to prefer that character for our
12633         purposes.
12634
12635 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
12636
12637         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
12638         value of g_getenv() isn't freeable, so g_strdup it.
12639
12640         * modules/input/inuktitut.c: Inuktitut input method.
12641
12642         * modules/input/Makefile.am: Build this.
12643         
12644 2000-11-14  Elliot Lee  <sopwith@redhat.com>
12645
12646         * gtk/Makefile.am: Install gtk.immodules, needed for operation
12647         of gtk programs.
12648
12649 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
12650
12651         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
12652         reversed > that was causing Home to go to end of previous line.
12653
12654         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
12655         modified-keypresses (leave for bindings.)
12656
12657         * modules/input/Makefile.am: Remove useless -export-dynamic
12658         from module LDFLAGS.
12659
12660 2000-11-14  Havoc Pennington  <hp@redhat.com>
12661
12662         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
12663         higher.
12664
12665         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
12666         account. Also, render rise, underline, background, etc. for
12667         pixbufs as well as text. Also, draw underlines one pixel higher.
12668
12669         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
12670         PangoAttribute for the rise, so it gets drawn properly. Also,
12671         add the GtkTextAppearance attribute for pixbuf/widget segments
12672         as well; we should go ahead and have rise, underline, background,
12673         stipple work for those
12674
12675         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
12676         Pango
12677
12678 2000-11-15  Tor Lillqvist  <tml@iki.fi>
12679
12680         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
12681
12682         * gtk/gtk.def: Update.
12683
12684         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
12685         included.
12686         (gtk_rc_get_im_module_file): Use run-time installation directory
12687         on Win32.
12688
12689         * gdk/win32/rc/gdk.rc: Remove.
12690         * gdk/win32/rc/gdk.rc.in: New file.
12691         * gdk/win32/rc/Makefile.am: New file
12692         * gdk/win32/Makefile.am: Corresponding changes.
12693
12694         * gtk/gtk.rc: Remove.
12695         * gtk/gtk-win32.rc.in: New file.
12696         * gtk/Makefile.am: Corresponding changes.
12697
12698         * configure.in: Corresponding changes.
12699
12700         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
12701         has a built gtkcompat.h. Developers using CVS code on Win32 can
12702         hand-edit it from gtkcompat.h.in.
12703
12704         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
12705         gtkcompat.h from gtkcompat.h.win32.
12706
12707 2000-11-14  Havoc Pennington  <hp@redhat.com>
12708
12709         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
12710         to default to GDK_ACTION_MOVE if the drag is within a single
12711         widget. Defaults to GDK_ACTION_COPY between widgets.
12712
12713 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
12714
12715         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
12716
12717         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
12718
12719         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
12720         srcdir != builddir
12721
12722         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
12723
12724         * configure.in (GTK_VERSION): Up to 1.3.2
12725
12726         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
12727         gtkimcontextxim.h
12728
12729         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
12730         missing doc comment.
12731
12732 2000-11-14  Alexander Larsson  <alexl@redhat.com>
12733
12734         * modules/linux-fb/basic.c:
12735         Use the glib iconv wrappers.
12736
12737 2000-11-13  Havoc Pennington  <hp@pobox.com>
12738
12739         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
12740         still more bugs.
12741
12742         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
12743         scroll the GdkWindows before realization.
12744
12745 2000-11-13  Havoc Pennington  <hp@redhat.com>
12746
12747         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
12748         where GC didn't always get updated properly
12749
12750         * demos/gtk-demo/textview.c (create_tags): Use subattributes
12751         of fonts instead of setting the entire font
12752
12753         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
12754         setting entire font
12755
12756         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
12757
12758         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
12759         a bunch of individually-settable font attributes. You can still 
12760         use the "font" and "font_desc" args, they just set all the font
12761         attributes at once.
12762
12763 2000-11-13 Elliot Lee <sopwith@redhat.com>
12764
12765         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
12766
12767 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
12768
12769         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
12770         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
12771
12772         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
12773         work better.
12774
12775 2000-11-13  Havoc Pennington  <hp@redhat.com>
12776
12777         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
12778         the module file.
12779
12780         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
12781         dest->language
12782
12783         * gtk/testtext.c: Test pixels above/below/inside paragraphs
12784         settings
12785
12786         * gtk/gtktextview.c: Implement object args and setters/getters for
12787         all the aspects of the GtkTextAttributes that are not set from
12788         GtkWidget attributes. This is spacing, justification, margins,
12789         etc.
12790
12791         (gtk_text_view_set_arg)
12792         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
12793         args
12794         (gtk_text_view_class_init): Add args for justify, left_margin,
12795         right_margin, indent, and tabs
12796         
12797
12798         * gtk/gtktextlayout.c (set_para_values): fix to display indent
12799         attribute properly
12800
12801         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
12802         replace with indent attribute
12803
12804         * gtk/gtktextlayout.c (set_para_values): multiply indent by
12805         PANGO_SCALE
12806
12807         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
12808         rearranging code to do that
12809         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
12810         i.e. don't subtract the top_margin first, just to keep
12811         all margin-futzing in one place.
12812
12813         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
12814
12815         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
12816         special case of last line, Pango now handles this itself.
12817         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
12818         Y coordinate
12819         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
12820         (find_display_line_above): wasn't moving the byte index as it
12821         iterated over lines, so always returned byte 0. Also, port to use
12822         PangoLayoutIter.
12823         (find_display_line_below): same problem as
12824         find_display_line_above. Also, port to use PangoLayoutIter.
12825
12826 2000-11-13  Alexander Larsson  <alexl@redhat.com>
12827
12828         * gdk/linux-fb/*.[ch]:
12829         Massive reindent to gtk+ standard. My hands hurt.
12830
12831         * gdk/linux-fb/gdkcolor-fb.c:
12832         Move GdkColorPrivateFB from inherited to windowing_data
12833
12834         * gdk/linux-fb/gdkcursor-fb.c:
12835         _gdk_cursor_new_from_pixmap made static
12836
12837         * gdk/linux-fb/gdkdnd-fb.c:
12838         GdkDragContextPrivate moved to windowing_data
12839
12840         * gdk/linux-fb/gdkdrawable-fb2.c:
12841         Removed endian.h, use glib endianness macros instead
12842         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
12843         and GDK_DRAWABLE_IMPL_FBDATA
12844
12845         * gdk/linux-fb/gdkfont-fb.c:
12846         Add empty gdk_font_load(). Needed for linking of Gtk+.
12847
12848         * gdk/linux-fb/gdkimage-fb.c:
12849         Removed endian.h, use glib endianness macros instead
12850         Moved GdkImagePrivateFB to windowing_data
12851         gdk_image_new_bitmap didn't always allocate enough
12852         memory.
12853
12854         * gdk/linux-fb/gdkinput-ps2.c:
12855         Added semi-working support for MS serial mice.
12856
12857         * gdk/linux-fb/gdkprivate-fb.h:
12858         s/GdkWindowPrivate/GdkWindowObject/
12859         Removed GdkWindowPrivate typedef
12860         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
12861         Removed GDK_DRAWABLE_P
12862         Move GdkColorPrivateFB from inherited to windowing_data
12863         Moved GdkImagePrivateFB to windowing_data
12864
12865         * gdk/linux-fb/gdkvisual-fb.c:
12866         Removed some unused debug code.
12867
12868         * gdk/linux-fb/gdkwindow-fb.c:
12869         Use stock cursors instead of including X headers.
12870         s/GdkWindowPrivate/GdkWindowObject/
12871
12872         * gdk/linux-fb/mitypes.h:
12873         Removed unused types.
12874
12875         * modules/linux-fb/basic.c:
12876         Use the pango fribidi wrappers.
12877
12878 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
12879
12880         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
12881         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
12882         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
12883         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
12884         GEqualFunc where applicable.
12885         
12886         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
12887         pango_font_description_equal as changed in pango.
12888         
12889         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
12890
12891         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
12892
12893         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
12894
12895         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
12896
12897         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
12898
12899         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
12900
12901         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
12902         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
12903
12904         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
12905         gtk_rc_styles_compare -> gtk_rc_styles_equal.
12906
12907 2000-11-12  Havoc Pennington  <hp@pobox.com>
12908
12909         * demos/gtk-demo/Makefile.am (democodedir): change demo install
12910         dir to datadir/gtk+-2.0/demo
12911
12912         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
12913         sorts of text widget and Pango font bugs. Urgh.
12914
12915         * demos/gtk-demo/Makefile.am (demos): Add textview.c
12916
12917         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
12918         tree that you should double click to see the demo. Fix 
12919         types of variables to reflect changed return values from 
12920         GtkTreeStore and GtkTreeViewColumn constructors.
12921
12922         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
12923         newly-created buffer to prepare for GObject semantics
12924
12925         * gtk/testtext.c: don't leak the buffer with GObject semantics
12926
12927         * gtk/testtextbuffer.c: ditto
12928         
12929 2000-11-12  Havoc Pennington  <hp@pobox.com>
12930
12931         Rename this testgtk to gtk-demo to avoid confusion, and 
12932         install it so people can use it as a supplement to 
12933         the documentation.
12934         
12935         * demos/gtk-demo: Moved from demos/testgtk
12936
12937         * demos/testgtk: Removed
12938
12939         * configure.in: make Makefile in gtk-demo
12940         
12941         * demos/gtk-demo/Makefile.am: Install sample source to 
12942         datadir/gtk-demo (maybe there's a better place?), and 
12943         rename the binary to gtk-demo
12944         
12945         * demos/gtk-demo/main.c (load_file): Load installed sample
12946         source if source isn't found in pwd.
12947
12948 2000-11-09  Havoc Pennington  <hp@pobox.com>
12949
12950         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
12951         argument to set the char displayed when visibility == FALSE
12952         (gtk_entry_create_layout): If !entry->visible, replace 
12953         all chars with the "invisible char"
12954
12955         * gtk/testgtk.c: Test the invisible_char deal
12956         
12957 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
12958
12959         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
12960         can't get a native font in the right encoding.
12961
12962 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
12963
12964         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
12965         respectively.
12966
12967 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
12968
12969         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
12970         Fix warning when moving between paragraphs.
12971
12972         * gtk/gtkentry.[ch]: Change move => move_cursor, 
12973         delete => delete_from_cursor, insert => insert_at_cursor
12974
12975 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
12976
12977         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
12978
12979         * modules/input/imthai-broken.c: A Thai input method for use if
12980         Thai keys are really generating Latin1 keysyms.
12981
12982         * modules/input/Makefile.am: Build these.
12983
12984 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
12985
12986         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
12987         g_filename_{to,from}_utf8 now takes an extra parameter.
12988
12989         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
12990         strftime into UTF-8.
12991
12992         (column_from_x, gtk_calendar_paint_day_names): Support RTL
12993         calendars.
12994
12995         (gtk_calendar_paint_day_names): Draw day names in the right 
12996         place.
12997         
12998 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
12999
13000         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
13001         problem with using result of g_get_charset() backwards -
13002         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
13003
13004         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
13005         negative min_width/height and max_width/height to
13006         mean "requisition"; this allows setting a window
13007         to be user-resizable in only one direction easily.
13008
13009         * gtk/testgtk.c (create_main_window): Remove hard-coded
13010         usize - set a default size in the vertical direction.
13011
13012 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
13013
13014         * gtk/gtkrange.c: Add some missing casts. Support 
13015         2 and 3 button clicks on the arrows to mean 
13016         "move by pages" and "jump to end". (Like gtkspinbutton)
13017
13018 2000-11-12 Hans Breuer <Hans@Breuer.Org>
13019
13020         * gdk/win32/makefile.msc : reflect build module changes
13021
13022         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
13023         from GdkPixmap*, cast implementation member instead.
13024
13025         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
13026         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
13027         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
13028         more Gdi functions return value checking. 
13029         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
13030         GdkImagePrivateWin32 *.
13031
13032         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
13033         menus useable again. Add #pragma message to keep reminded on this issue.
13034         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
13035         windows. This allows to enable backing store on Win32!
13036
13037         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
13038         in drawable is of impl type. Correct specific type checks appropriate.
13039  
13040         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
13041         GDK_WINDOW_DESTROYED before allocating new resources.
13042
13043         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
13044
13045         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
13046         (gdk_window_foreign_new) initialize parent handle.
13047         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
13048
13049         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
13050         Let the GDI invalidate the window on MoveWindow call to fix scrolling
13051         problems (e.g. main buttons in testgtk). 
13052
13053 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
13054
13055         * gtk/gtkentry.c (gtk_entry_key_press): Call 
13056         gtk_widget_activate for GDK_Return.
13057
13058         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
13059         of preedit cursor position.
13060
13061 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
13062
13063         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
13064         static.
13065
13066 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
13067
13068         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
13069         out support for multiple locales; that simple doesn't
13070         work reliably with current Xlib
13071
13072         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
13073         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
13074         Add support for positioning the cursor within the preedit string.
13075
13076 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
13077
13078         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
13079         at XIM input method module.
13080
13081         * gtk/gtktextview.c: Check for bindings after passing
13082         events to im context filter.
13083
13084 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
13085
13086         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
13087         empty attribute lists properly.
13088
13089 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
13090
13091         * gtk/queryimmodules.c (main): Return non-zero exit
13092         status if errors were encountered querying any
13093         modules.
13094
13095         * modules/input/Makefile.am (moduledir): remove
13096         leftover bin program target.
13097
13098         * docs/make-todo: Fix typo in error message.
13099
13100 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
13101
13102         * configure.in: Add modules/input/Makefile
13103
13104 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
13105
13106         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
13107         don't include gtkthemes.h.
13108
13109         * gtk/testgtk.c gtk/testtext.c: Set environment variables
13110         to point
13111
13112         * gtk/Makefile.am: Add new .c and .h files, build 
13113         gtk-query-immodules and use it to create a gtk.immodules
13114         file for use of test programs.
13115
13116         * gtk/gtkpreview.c: remove extra blank line.
13117
13118 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
13119
13120         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
13121         Add the ability to add extra tables beyond the default
13122         one, and also the ability to have compose sequences 
13123         that are prefixes of other compose sequences. 
13124
13125         * gtk/gtkimcontextsimple.c: Export a preedit string which
13126         consists of possible candidates for keystrokes that have
13127         been entered but not yet committed.
13128
13129         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
13130         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
13131
13132         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
13133         Add a function to add input-method switching menu items
13134         to a menu.
13135
13136         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
13137         when switching input methods.
13138
13139         * gtk/gtkimcontextsimple.[ch]: Change the format of
13140         the compose table to allow compose tables of different
13141         lengths / sequence.
13142
13143 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
13144
13145         * gtk/gtkimmodule.[ch]: Support routines for loading
13146         GtkIMContext implementations dynamically at runtime.
13147
13148         * modules/input/imcyrillic-translit.c: A sample input
13149         method (based on GtkIMContextSimple with an extra table),
13150         which demonstrates preedit strings and the module
13151         system for input modules
13152
13153         * gtk/queryimmodules.c: Program to query the available
13154         input modules and write the results into a file.
13155          
13156         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
13157         extra config options "im_module_file" (cache file for
13158         input method modules), and "im_module_path" - path
13159         to look for modules when generating cache file.
13160
13161         This doesn't scale.
13162
13163 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
13164
13165         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
13166         generic code from gtkthemes into a new abstraction
13167         GtkModule which has the logic for implementing
13168         a loadable module which implements a number of 
13169         GObject types.
13170
13171 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
13172
13173         * gtk/gtkeditable.[ch]: Convert GtkEditable from
13174         a class into an interface  
13175         
13176         * gtk/gtkoldeditable.[ch]: Move the old editable
13177         implementation into here, so legacy widgets can
13178         still rely on the implemenation. GtkOldEditable
13179         exports GtkEditable. Make selection handling
13180         code use new text conversion functions (and
13181         handle UTF-8 as a side-effect). Use GtkClipboard
13182         for CLIPBOARD.
13183
13184         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
13185         Adopt to match above changes.
13186
13187         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
13188         avoid GtkOldEditable implementation. Restructure
13189         to reduce number of places that modify state directly.
13190         Move to GtkBindingSet. Display the preedit string.
13191         Queue recomputation of PangoLayout and scroll position
13192         to improve effiency of doing complex changes naively.
13193         Add a menu with cut/copy/paste and input method selection.
13194
13195 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
13196
13197         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
13198         to set preedit string and attributes; display preedit string by
13199         inserting string and attributes at cursor when creating the
13200         GtkTextLineDisplay.
13201
13202         * gtk/gtktextlayout.c: Move all conversions between byte
13203         positions in PangoLayout and GtkTextIter into new functions
13204         line_display_iter_to_index/index_to_iter that properly
13205         handle the preedit string.
13206
13207         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
13208         it to return const char * (eventually will end up
13209         as GCONST char *, most likely.)
13210
13211         * gtk/gtktextview.[ch]: Handle the preedit string, call
13212         gtk_im_context_reset() as necessary, add a menu to switch
13213         input methods.
13214         
13215         * gtk/gtktextlayout.[ch]: Remove useless
13216         gtk_text_layout_get_log_attrs() function.
13217
13218 2000-11-11  Tor Lillqvist  <tml@iki.fi>
13219
13220         * gdk/gdk.def
13221         * gtk/gtk.def: Update.
13222
13223         * gdk/win32/*.c: Add last argument to g_type_register_static()
13224         calls.
13225
13226         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
13227
13228         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
13229         generated by older wheel mouse drivers. Get the correct y
13230         coordinate from WM_MOUSEWHEEL messages.
13231
13232         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
13233         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
13234         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
13235         Debugging functions.
13236
13237         * gdk/win32/gdkprivate-win32.h: Declare them.
13238
13239         * gdk/win32/gdkinput-win32.h: Add declaration for
13240         gdk_input_window_destroy().
13241
13242         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
13243
13244 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
13245
13246         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
13247         function to help handle keeping things in sync.
13248
13249 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
13250
13251         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
13252         BOXED marshallers.
13253
13254         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
13255         (gtk_list_store_class_init): use the new BOXED marshallers.
13256
13257         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
13258         new_with_values to new_with_types.
13259         (gtk_tree_store_get_column_type): add this.
13260         (gtk_tree_store_class_init): use the new BOXED marshallers.
13261
13262         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
13263         mirror some POINTER marshallers.
13264
13265 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
13266
13267         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
13268         allow more interesting iterators.  Also, made the lifecycle of
13269         iterators more explicit.
13270
13271         * gtk/gtktreemodelsort.[ch]: New model for sorting.
13272
13273         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
13274         types.
13275
13276 2000-11-09  Alexander Larsson  <alexl@redhat.com>
13277
13278         * demos/testgtk/menus.c:
13279         Changes to make the new testgtk compile after
13280         gtk_menu_append was removed.
13281
13282         * gdk/linux-fb/gdkdrawable-fb2.c
13283         (gdk_fb_get_depth, gdk_fb_get_visual,
13284         gdk_drawable_impl_fb_class_init): Implement
13285         these drawable functions. Now GtkImages work again.
13286
13287         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
13288
13289         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
13290         
13291         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
13292         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
13293         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
13294         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
13295
13296 2000-11-08  Havoc Pennington  <hp@pobox.com>
13297
13298         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
13299         visible_set args, don't know where these had gone, I thought they
13300         used to be there
13301
13302         * gtk/testtext.c: Add a menu item to apply invisibility tag;
13303         now we can test the feature and see that it's totally broken.
13304
13305 2000-11-08  Havoc Pennington  <hp@pobox.com>
13306
13307         Make DND copy pixbufs and tags when source and target share a 
13308         tag table.
13309         
13310         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
13311         in-process GTK_TEXT_BUFFER_CONTENTS target
13312         (gtk_text_view_drag_data_received): Paste from
13313         GTK_TEXT_BUFFER_CONTENTS if we receive it.
13314
13315 2000-11-08  Alexander Larsson  <alexl@redhat.com>
13316
13317         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
13318         API changes.
13319
13320         * gtk/gtkmenu.c: Add support for scrolling menus.
13321         Remove gtk_menu_append/prepend/insert, these have been moved to
13322         gtkcompat.h as #defines.
13323
13324         * gtk/gtkcompat.h.in:
13325         Add compatibility #defines for gtk_menu_append/prepend/insert
13326
13327         * gtk/gtkmenu.h: Add data needed for scrolling menus.
13328         GtkMenuPositionFunc gets an extra argument push_in.
13329         gtk_menu_append/prepend/insert removed.
13330         
13331         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
13332         positioning behaviour to fit to scrolling menus.
13333
13334         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
13335         into menuitem->submeny. That is wrong, and broke torn
13336         off submenus of torn off menus, since they were unrealized
13337         when the first menu was unrealized.
13338
13339         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
13340         gtk_menu_shell_select_item() since these need to be overridden in
13341         GtkMenu.
13342
13343         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
13344         positioning behaviour to fit to scrolling menus.
13345         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
13346         the current item so that it is prelighted when the menu pops up.
13347         This is a workaround to the fact that the menu doesn't get the
13348         initial enter event (due to grabs).
13349
13350         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
13351         s/gtk_menu_append/gtk_menu_shell_append/
13352
13353         * gtk/gtknotebook.c:
13354         s/gtk_menu_insert/gtk_menu_shell_insert/
13355
13356         * gtk/testgtk.c (create_menu, create_menus):
13357         Create the first menu with 50 items so that menu scrolling
13358         can be tested.
13359         
13360         
13361         Patch from Jonathan Blandford  <jrb@redhat.com>
13362
13363         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
13364         system to handle size requests.  First, we ask what the size of
13365         the toggle is.  Then, when allocating the size, we allocate the
13366         toggle_size first.  This way we can have multiple menu-item
13367         classes w/o needing a seperate class for each.
13368
13369         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
13370         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
13371
13372         * gtk/gtkcheckmenuitem.c
13373         (gtk_check_menu_item_toggle_size_request): New function to handle
13374         the toggle size-request.
13375
13376 2000-11-07  Havoc Pennington  <hp@redhat.com>
13377
13378         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
13379         Half-ass somewhat fix this function, so that scrolling to the
13380         insertion point works. Pango hacking is in the future to really
13381         fix it.
13382
13383         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
13384         length of data, no longer used.
13385
13386         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
13387         method contents in here, get rid of destroy method
13388         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
13389         that were backward. Remove debug spew.
13390         (cut_or_copy): Make the clipboard work with insert_range to
13391         preserve tags and pixbufs, not just the primary selection.
13392
13393 2000-11-07  Havoc Pennington  <hp@redhat.com>
13394
13395         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
13396         to gtk_text_mark_get_visible
13397
13398         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
13399         bug that was generating an invalid iterator
13400
13401         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
13402         ensure_char_offsets() in front of code placing the iter in an
13403         invalid state.
13404
13405         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
13406         make override_location arg const
13407         (paste): Replace the selection if we paste into the 
13408         current selection
13409
13410         * gtk/gtkselection.h: Remove "GtkSelectioData"
13411         (struct _GtkSelectionData): move the definition here.
13412
13413         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
13414         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
13415
13416         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
13417
13418         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
13419         (gtk_text_buffer_insert_range_interactive): implement
13420         (gtk_text_buffer_get_tags): Remove, replaced by
13421         gtk_text_iter_get_tags()
13422
13423         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
13424         limit parameter, to avoid infinite linear scan.
13425         (gtk_text_iter_backward_search): Add search limit
13426         (gtk_text_iter_forward_find_char): Add search limit
13427         (gtk_text_iter_backward_find_char): Add search limit
13428
13429 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
13430
13431         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
13432         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
13433         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
13434         gdk/linux-fb/gdkwindow-fb.c:
13435         use g_object_new() instead of g_type_create_instance() which
13436         is a private function for fundamental type implementations.
13437
13438         * gdk/linux-fb/gdkinput-ps2.c:
13439         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
13440         instead just store the current modifier state. Add a (somewhat broken)
13441         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
13442         Rename exported function gdk_input_ps2_get_mouseinfo to
13443         gdk_input_get_mouseinfo.
13444
13445         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
13446         gdk/linux-fb/gdkwindow-fb.c:
13447         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
13448         
13449
13450 2000-11-02  Havoc Pennington  <hp@redhat.com>
13451
13452         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
13453         use stock buttons. Should be 100% source compatible, appropriate
13454         filesel fields now point to dialog->vbox and dialog->action_area.
13455         On the bizarre side, dialog->action_area and filesel->action_area
13456         are not the same widget.
13457         (gtk_file_selection_init): Put some padding around the selection
13458         entry, so it isn't touching the GtkDialog separator.    
13459
13460         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
13461         use stock buttons, etc. Should also be source compatible.
13462         Set the dialog default title in _init not _new().
13463         
13464         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
13465         Use stock buttons; don't put a button box inside the existing
13466         dialog button box. Don't bother with push/pop colormap anymore.
13467
13468         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
13469         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
13470         for message dialog, and necessary for the font selection and color
13471         selection with help and apply buttons.
13472         
13473         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
13474         to the created button widget. Set GTK_CAN_DEFAULT on the button.
13475         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
13476         between buttons, put less padding around the action area.
13477         (gtk_dialog_run): Exit on unmap rather than on destroy. 
13478         This will also exit the loop if the widget is hidden.
13479         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
13480         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
13481         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
13482         special-case delete event.
13483
13484         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
13485         formatting
13486         
13487 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
13488
13489         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
13490         button to temporarily disable position recording in the
13491         "saved position" test.
13492
13493 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
13494
13495         * gtk/gtkthemes.c: added compat code that temporarily implements
13496         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
13497         going to be revamped by owen's upcoming GtkModule patches, but
13498         untill then people want gtk to build, right? ;)
13499
13500 2000-11-04  Havoc Pennington  <hp@pobox.com>
13501
13502         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
13503         list
13504
13505         * docs/Changes-2.0.txt: Add note about
13506         gtk_container_get_toplevels()
13507
13508         * gtk/gtktextview.h: formatting
13509         
13510         * gtk/gtktextview.c: don't start descriptions with "Returns",
13511         confuses gtk-doc
13512
13513 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
13514
13515         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
13516         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
13517
13518 2000-11-03  Havoc Pennington  <hp@redhat.com>
13519
13520         * gtk/gtktexttagtable.c: Docs
13521         (gtk_text_tag_table_size): return a signed int
13522
13523         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
13524         (gtk_text_tag_event): make the event_object a GObject
13525
13526         * gtk/gtktextview.c: Write API docs for all functions.
13527
13528         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
13529         for gtk_text_view_get_window_type() called on one of the private
13530         windows.
13531
13532         * gtk/gtktextview.c: Instead of accessing text_view->buffer
13533         directly, call get_buffer() which demand-creates a default
13534         buffer. So gtk_text_view_new() can be used to create a view with a
13535         default buffer in it, if you just want an empty text box users can
13536         put data in. Useful for GUI builders also.
13537
13538 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
13539
13540         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
13541         the charset encodign portion MUST be in lowercase.
13542         * gtk/gtkrc.az: added file for Azeri language
13543
13544 2000-11-03  Havoc Pennington  <hp@redhat.com>
13545
13546         Get widgets working on the btree/buffer side. Display of them 
13547         still doesn't work.
13548         
13549         * gtk/gtktextview.c: start implementing child widget stuff
13550
13551         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
13552
13553         * gtk/gtktextlayout.c: handle embedded widgets
13554
13555         * gtk/gtktextdisplay.c: handle embedded widgets
13556
13557         * gtk/gtktextchild.c: Implement all the child anchor goo
13558
13559         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
13560         function
13561
13562         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
13563         (insert_pixbuf_or_widget_segment): abstract out common portions of 
13564         creating a child anchor or a pixbuf segment.
13565         (gtk_text_btree_create_child_anchor): new function
13566         (gtk_text_btree_unregister_child_anchor): new function
13567
13568         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
13569         allocate_child signal on GtkTextLayout
13570
13571         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
13572         values
13573         (gtk_text_iter_get_child_anchor): new function
13574
13575         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
13576         default handler for the changed signal, which calls
13577         gtk_text_buffer_set_modified(), instead of just always emitting
13578         changed then calling set_modified() manually. I guess this is
13579         maybe more flexible. It seems logical.
13580
13581 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
13582
13583         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
13584         now.
13585
13586         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
13587
13588 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
13589
13590         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
13591         been marked static.
13592
13593 2000-11-02  Havoc Pennington  <hp@redhat.com>
13594
13595         * gtk/testgtk.c (create_labels): had a test backward
13596
13597         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
13598         fields, so the dest GC ends up with the correct clip origin, 
13599         etc. Fixes a bug where colored labels didn't redraw 
13600         properly.
13601
13602 2000-11-02  Alexander Larsson  <alexl@redhat.com>
13603
13604         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
13605         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
13606         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
13607         Add last argument to t_type_register_static call.
13608         
13609         * gdk/linux-fb/gdkdrawable-fb2.c:
13610         Add last argument to t_type_register_static call.
13611         export the get_image drawable virtual function.
13612
13613         * gdk/linux-fb/gdkimage-fb.c:
13614         Add last argument to t_type_register_static call.
13615         rename gtk_image_get to _gdk_fb_get_image and
13616         export it for use by gdkdrawable-fb2.
13617
13618         * gdk/linux-fb/gdkprivate-fb.h:
13619         export _gdk_fb_get_image.
13620
13621         * gdk/linux-fb/gdkselection-fb.c:
13622         Add new api call stubs.
13623
13624         * gtk/Makefile.am:
13625         Missing ( in linux-fb part.
13626
13627         * modules/linux-fb/Makefile.am:
13628         Must link with gdk_pixbuf or get unresolved symbol.
13629
13630 2000-11-01  Havoc Pennington  <hp@pobox.com>
13631
13632         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
13633         GTK_TYPE_TEXT_ITER and BOXED marshallers
13634
13635         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
13636
13637         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
13638         
13639         * gtk/gtk-boxed.defs: add GtkTextIter
13640
13641         * gtk/gtkmarshal.list: Add marshallers for text widget that 
13642         properly use OBJECT and BOXED
13643
13644 2000-11-01  Havoc Pennington  <hp@redhat.com>
13645
13646         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
13647
13648         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
13649         before returning it. 
13650         
13651 2000-11-01  Havoc Pennington  <hp@redhat.com>
13652
13653         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
13654         Clip the rectangle to be rendered to the drawable, since
13655         get_from_drawable() requires a region within the drawable
13656
13657 2000-11-01  Havoc Pennington  <hp@redhat.com>
13658
13659         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
13660         from coordinates.
13661
13662 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
13663
13664         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
13665         it isn't NULL.
13666
13667 2000-11-01  Havoc Pennington  <hp@pobox.com>
13668
13669         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
13670         on a label
13671         (gtk_label_finalize): unref the attr list if any.
13672
13673         * gtk/testgtk.c (create_get_image): close test on second click
13674         (make_message_dialog): close dialog if it exists
13675
13676         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
13677
13678         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
13679         gdk-pixbuf
13680
13681         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
13682         from Pango markup format
13683         (gtk_label_set_markup_with_accel): ditto but with accelerator
13684         parsing
13685
13686         * gtk/gtkimage.c (gtk_image_expose): reformatting.
13687
13688         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
13689         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
13690         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
13691         call gdk_window_get_origin().
13692
13693         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
13694         implement GDK_PIXBUF_ALPHA_FULL
13695         
13696 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
13697
13698         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
13699         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
13700         g_signal_handlers_disconnect_matched to block/unblock and disconnect
13701         multiple handlers respectively, instead of only treating the
13702         first handler found (bug reported by owen).
13703
13704 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
13705
13706         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
13707
13708         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
13709
13710         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
13711         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
13712         gtk/gtktreeviewcolumn.h: Fixed inline docs.
13713
13714         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
13715         widget.  Needs writing someday.
13716
13717         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
13718         the docs.
13719
13720 2000-10-30  Havoc Pennington  <hp@redhat.com>
13721
13722         * gtk/gtktextview.h, gtk/gtktextview.c:
13723         Rename delete_at_cursor delete_from_cursor, and 
13724         move to move_cursor.
13725
13726 2000-10-30  Havoc Pennington  <hp@redhat.com>
13727
13728         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
13729         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
13730         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
13731         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
13732         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
13733         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
13734         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
13735         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
13736         gtktexttypes.h, gtktextview.c, gtktextview.h:
13737
13738         Massive reindentation and reformatting. Arg alignment and comments
13739         still need fixing in various places.
13740
13741 2000-10-30  Havoc Pennington  <hp@redhat.com>
13742
13743         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
13744         to be named insert_at_cursor and delete_at_cursor so C++ can
13745         handle them.
13746
13747 2000-10-28  Tor Lillqvist  <tml@iki.fi>
13748
13749         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
13750         to get a double directory separator in case the home directory
13751         ends with one. This would cause trouble especially on Windows,
13752         where the path will be confused with the syntax for an an UNC
13753         (network share) path \\server\share\path.
13754         (gtk_rc_add_initial_default_files): Ditto.
13755
13756 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
13757
13758         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
13759
13760         * gtk/gtktextview.c: Use correct marshallers.
13761
13762 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
13763
13764         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
13765         use new iter stuff, and added all the appropriate signals et al.
13766
13767         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
13768         code is internal to gtk only.
13769
13770 2000-10-28  Tor Lillqvist  <tml@iki.fi>
13771
13772         * gtk/gtk.def
13773         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
13774         glib-genmarshal etc.
13775
13776 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
13777
13778         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
13779         parallel builds.
13780
13781 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
13782
13783         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
13784
13785 2000-10-27  Robert Brady  <robert@suse.co.uk>
13786
13787         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
13788         en_GB (British), ia (Interlingua).
13789
13790 2000-10-26  Havoc Pennington  <hp@redhat.com>
13791
13792         * gtk/gtktextiter.c (my_strrstr): fix constness warning
13793
13794         Fixed output of:
13795         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
13796         
13797         * gtk/gtktextsegment.c (char_segment_new): rename
13798         (_char_segment_new_from_two_strings): rename
13799         (_toggle_segment_new): rename
13800         
13801         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
13802         (make_clipboard_widget): make it static
13803         (text_get_func): static
13804         (text_clear_func): static
13805
13806         * gtk/gtkcolorsel.c (adjustment_changed): make this function
13807         static
13808         (hex_changed): make it static
13809         (hsv_changed): make it static
13810         (opacity_entry_changed): make it static
13811
13812         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
13813         (toggle_segment_check_func): rename with _gtk
13814
13815         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
13816         (_widget_segment_new): rename
13817         (_widget_segment_add): rename
13818         (_widget_segment_remove): rename
13819         (_widget_segment_ref): rename
13820         (_widget_segment_unref): rename
13821
13822         * gtk/gtktextmark.c (_mark_segment_new): Rename
13823         _gtk_mark_segment_new   
13824
13825 2000-10-26  Havoc Pennington  <hp@redhat.com>
13826
13827         * gtk/gtkmarshal.list: add new marshallers used by the text widget
13828         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
13829         types
13830
13831         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
13832         marshaller types
13833
13834         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
13835         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
13836         license on these files.
13837
13838         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
13839         work.
13840
13841         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
13842         runtime random number different for each tree, instead of 
13843         a constant I made up.
13844
13845 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
13846
13847         * gtk/Makefile.am: buncha cleanups, kludged build sources
13848         dependencies with a Makefile: oldest-source-stamp dependancy
13849         for the moment. automake is really fighting us here, with
13850         intentionally not allowing user-defined rules or dependancies
13851         prior to it's -include $(DEP_FILES) statement. sucks rocks!
13852
13853         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
13854         to public headers. tehy have a comment stating that they are
13855         "semi-public" aren't included by gtk.h and if enums popup there,
13856         they can be /*< skip >*/-ed.
13857
13858         * gtk/gtktextlayout.h: 
13859         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
13860         added LGPL... <SIGH>
13861
13862 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
13863
13864         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
13865         GtkTreeIter.  Added iterators everywhere.
13866
13867         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
13868
13869         * gtk/gtktreeviewselection.c: Changed to use the iterators.
13870
13871         * gtk/gtktreestore.c: Changed to use the iterators.
13872
13873         * gtk/gtkliststore.c: Commented out the code.  Will convert to
13874         iterators tomorrow.
13875
13876         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
13877         iterators tomorrow.
13878
13879         * gtk/treestoretest.c: Changed to use iterators.
13880
13881         * demos/testgtk/main.c: Moved to use the new iterator system.
13882
13883 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
13884
13885         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
13886         localization misbehaviour.
13887
13888         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
13889         a useless type without copy/free.
13890
13891         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
13892         of GTK_TYPE_CTREE_NODE.
13893
13894 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
13895
13896         * gtk/gtksignal.c:
13897         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
13898         applicable.
13899
13900         * gtk/gtk-boxed.defs (GtkSelectionData): specify
13901         gtk_selection_data_copy and gtk_selection_data_free
13902         do GtkSelectionData work as params in signals.
13903
13904 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
13905
13906         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
13907         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
13908         couldn't they at least give it a non-standard name?
13909         
13910         * gtk/gtktextlayout.c: arg! yet another implementation of
13911         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
13912
13913         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
13914         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
13915         home. now i know this _is_ a conspiracy.
13916
13917         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
13918         ::state-changed.
13919
13920         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
13921         (gtk_accel_group_create_add): marshaller signature fixups.
13922
13923         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
13924         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
13925
13926         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
13927         anymore.
13928
13929 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
13930
13931         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
13932         due to the signal system changes, it wouldn't build currently. to
13933         be fixed soon.
13934
13935         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
13936
13937         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
13938         so it needs gtk_marshal_VOID__ENUM() instead of
13939         gtk_marshal_NONE__UINT().
13940
13941         * gdk/gdk*.c: adapted type registration functions.
13942
13943         * gtk/gtkbindings.c:
13944         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
13945         gone.
13946
13947         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
13948
13949         * gtk/gtkobject.c:
13950         (gtk_object_destroy):
13951         (gtk_object_shutdown): fixed recursion guards. basically we have to
13952         catch the case where any of GObject.shutdown() or gtk_object_destroy()
13953         is called during ::destroy, and avoid recursion there.
13954
13955         * gtk/gtktypeutils.c:
13956         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
13957         boxed_copy/boxed_free. this needs a more general solution based on a
13958         publically installed code-generator utility.
13959
13960         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
13961         glib's gobject has support for that now.
13962         define GtkSignalMarshaller in terms of GSignalCMarshaller.
13963
13964 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
13965
13966         * gtk/gtksignal.[hc]:
13967         * gtk/gtkmarshal.[hc]:
13968         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
13969         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
13970         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
13971         care of that.
13972
13973         * *.c: marshaller name fixups.
13974
13975         * gtk/gtkmarshal.list: added a comment briefing the format.
13976
13977 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
13978
13979         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
13980         compatibility macros here now. more specifically, most of
13981         the API is preserved (yes, _most_, nonwithstanding the
13982         following exceptions listed, the API is stil lHUGE ;)
13983         things that got removed completely:
13984         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
13985         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
13986         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
13987         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
13988         gtk_signal_remove_emission_hook().
13989         non-functional functions variants:
13990         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
13991         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
13992         not supported anymore.
13993         (gtk_signal_compat_matched): new internal function to aid
13994         implementation of the compatibility macros, it  provides
13995         functionality to block/unblock/disconnect handlers based
13996         on func/data.
13997
13998         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
13999
14000         * *.c: adaptions to new type registration API signatures.
14001
14002 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
14003
14004         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
14005
14006 2000-10-25  Robert Brady  <robert@suse.co.uk>
14007
14008         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
14009         gdk_property_delete): If window == NULL, assume the root window.
14010         (restoring the behaviour that was in 1.2).
14011         
14012         * gtk/testtext.c (save_buffer): Allow creation of new files when
14013         saving.
14014
14015         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
14016         calls to read().
14017
14018 2000-10-25  Tor Lillqvist  <tml@iki.fi>
14019
14020         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
14021
14022         * gdk/win32/gdkdrawable-win32.c
14023         * gdk/win32/gdkimage-win32.c
14024         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
14025         X11 backend.
14026
14027         * gdk/win32/gdkcc-win32.c
14028         * gdk/win32/gdkcolor-win32.c
14029         * gdk/win32/gdkfont-win32.c
14030         * gdk/win32/gdkinput-win32.c
14031         * gdk/win32/gdkmain-win32.c
14032         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
14033
14034 2000-10-24  Havoc Pennington  <hp@redhat.com>
14035
14036         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
14037         it a static function
14038
14039         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
14040         redraw text when a tag is applied to it.
14041
14042         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
14043         (gtk_text_tag_affects_nonsize_appearance): private functions to
14044         see if a tag requires various kinds of redraw/layout to be queued
14045         up.
14046
14047         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
14048
14049         * gtk/testtext.c (fill_example_buffer): Put the cursor 
14050         at the start of the buffer, so search works by default
14051
14052         * gtk/gtktextiter.c (lines_match): init match_start always
14053
14054         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
14055         function, get iter at a line + a byte index
14056
14057         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
14058         to set byte position within a line
14059         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
14060
14061 2000-10-23  Havoc Pennington  <hp@redhat.com>
14062
14063         * gtk/testtext.c: Re-enable the "find" dialog
14064
14065         * gtk/testgtk.c: Add test for gdk_drawable_get_image
14066         
14067         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
14068         the arguments to gdk_draw_drawable were in the wrong order
14069         (gdk_window_paint_init_bg): This function was ignoring the
14070         init_region, instead of clipping to it, so the entire backing
14071         pixmap was cleared on every begin_paint()
14072         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
14073         was in here again, the loop kept using the same GtkWindowPaint
14074         over and over.
14075         (gdk_window_begin_paint_region): Fix a bug where we had two
14076         x_offset instead of x_offset and y_offset
14077
14078         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
14079         before we get the image.
14080         (gdk_draw_drawable): get the composite before we draw the drawable.
14081         (gdk_drawable_real_get_composite_drawable): default
14082         get_composite_drawable implementation that returns the drawable 
14083         itself
14084
14085         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
14086         get_composite_drawable virtual function
14087
14088         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
14089         list-walking bug
14090
14091         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
14092         make this work if the source drawable is a GdkDrawableImplX11
14093         instead of a public drawable type. This is really broken; the
14094         problem is that GdkDrawable needs a virtual method get_xid(), but
14095         of course that doesn't work in practice. Enter RTTI.
14096
14097         Also, improve mismatched depth message.
14098
14099         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
14100         GdkPixmap
14101
14102         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
14103         install _gdk_x11_get_image as our implementation of get_image
14104         
14105         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
14106         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
14107
14108         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
14109         gdk_drawable_get_image
14110
14111         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
14112
14113         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
14114         get_image
14115
14116         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
14117         trailing semicolon after for loop
14118
14119 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
14120
14121         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
14122         where font_desc for widget's context lagged widget's font_desc by
14123         one step.
14124
14125 2000-10-22  Tor Lillqvist  <tml@iki.fi>
14126
14127         * gdk/win32/gdkgc-win32.c
14128         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
14129
14130         * gtk/makefile.mingw.in
14131         * gtk/gtk.def: Updates.
14132
14133         * gtk/testgtk.c: sleep() is called _sleep in MS's C
14134         library.
14135
14136         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
14137
14138         * gtk/makefile.msc: Remove
14139
14140         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
14141
14142         * gtk/Makefile.am: Add it.
14143
14144         * configure.in: Generate it.
14145
14146         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
14147         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
14148         something even if not implemented, to satisfy picky MSVC.
14149
14150         Patches by Hans Breuer:
14151         
14152         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
14153         SetBkMode() and SetTextAlign() before calling
14154         pango_win32_render().
14155
14156         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
14157         Set hcliprgn to NULL after destroying it.
14158         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
14159
14160         * gdk/win32/gdkgeometry-win32.c
14161         (_gdk_windowing_window_queue_antiexpose): More effective
14162         implementation.
14163
14164         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
14165         depth as default, not the visual's.
14166
14167         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
14168         against empty title.
14169
14170         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
14171         IMAGE_PRIVATE_DATA.
14172
14173         * gdk/win32/gdkimage-win32.c: Use it.
14174
14175 2000-10-22  Robert Brady  <robert@suse.co.uk>
14176
14177         * configure.in: Check for bind_textdomain_codeset
14178
14179         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
14180         present, make use of it.
14181
14182         Add a translatable string "default:LTR" which, if translated
14183         to "default:RTL", will cause the default direction to be
14184         Right-to-Left.
14185
14186         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
14187         direction if marked as flippable.
14188
14189         * gtk/gtkhscale.c: Mark widget as flippable.
14190         
14191 2000-10-04  Havoc Pennington  <hp@redhat.com>
14192
14193         * gtk/testgtk.c (create_buttons): create some stock buttons
14194         with the default accel group
14195         (create_image): test some new GtkImage features
14196         (make_message_dialog): test GtkMessageDialog
14197         (create_modal_window): fix someone's bizzarro indentation
14198
14199         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
14200         GTK_WIN_POS_CENTER_ON_PARENT. 
14201         Add "destroy with parent" setting, which means the window goes
14202         away with its transient parent.
14203         (gtk_window_get_default_accel_group): get the default accel group
14204         for the window.
14205         (gtk_window_set_destroy_with_parent): set/unset destroy with
14206         parent flag
14207         (gtk_window_read_rcfiles): invalidate icon set caches
14208         after reloading rcfiles 
14209
14210         * gtk/gtkenums.h (GtkWindowPosition): add
14211         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
14212         on its parent window when the dialog is mapped for the first time.
14213
14214         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
14215         a simple message dialog class
14216         
14217         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
14218         handler to emit response signal, and maybe later it would
14219         honor a hide_on_delete flag - though that isn't there yet.
14220         Set border width on the vbox to 2, so we get some padding.      
14221         Use a button box for the action area.
14222         (gtk_dialog_key_press): synthesize a delete event if Esc
14223         is pressed and the GtkWidget key press handler didn't 
14224         handle the escape key.
14225         (gtk_dialog_new_with_buttons): new function creates a dialog
14226         with some default buttons in it.
14227         (gtk_dialog_add_action_widget): add an activatable widget
14228         as a button in the dialog - you can also add a non-activatable
14229         widget by accessing the action area directly.
14230         (gtk_dialog_add_button): add a simple button - stock ID or 
14231         label - to the action area
14232         (gtk_dialog_response): emit response signal
14233         (gtk_dialog_run): block waiting for the dialog, return 
14234         the response. Override normal delete_event behavior, so that 
14235         delete_event does nothing inside gtk_dialog_run().
14236
14237         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
14238         emitted when an action widget is clicked or the dialog gets
14239         delete_event
14240
14241         * gtk/gtk.h: add gtkmessagedialog.h
14242
14243         * gtk/Makefile.am: add gtkmessagedialog.[hc]
14244
14245 2000-10-18  Havoc Pennington  <hp@redhat.com>
14246
14247         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
14248         where any number of empty lines would get skipped
14249
14250         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
14251         edge.
14252
14253         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
14254         warning about invalid iterators (explain more thoroughly)
14255         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
14256
14257         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
14258         big
14259
14260         * demos/*.c: Add error handling
14261
14262         * gtk/gtktextbuffer.c: don't modify const iterators
14263
14264         * gtk/gdk-pixbuf-loader.c: Add full error handling here
14265
14266         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
14267         on file load
14268
14269         * gtk/gtkiconfactory.c: Update to reflect addition of error
14270         handling to gdk-pixbuf loaders
14271
14272 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
14273
14274         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
14275         move to new modularized testgtk.
14276
14277 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
14278
14279         * gtk/gtktreeview.c: Draw the arrows correctly.
14280
14281         * gtk/gtktreemodel.c: Added user docs.
14282
14283         * gtk/gtk.h: remove gtktreedatalist.h.
14284
14285         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
14286         parent when generating my type.
14287
14288         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
14289         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
14290
14291 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
14292
14293         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
14294         GtkTreeModel from object to interface.
14295
14296 2000-10-16  Havoc Pennington  <hp@redhat.com>
14297
14298         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
14299         compilation
14300
14301 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
14302
14303         * gtk/gtktreeselection.c: Add API documentation to all public
14304         functions.
14305
14306         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
14307         functions.
14308
14309 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
14310
14311         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
14312         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
14313         docs to all public functions.
14314
14315         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
14316         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
14317         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
14318         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
14319         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
14320         issue.
14321
14322 2000-10-14  Robert Brady  <robert@suse.co.uk>
14323
14324         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
14325
14326 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
14327
14328         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
14329         values other then G_TYPE_STRING.
14330         * gtk/gtktreeselection.c: Minor commenting updates.
14331         * gtk/gtktreeview.c: Format updates.
14332
14333 2000-10-09  Tor Lillqvist  <tml@iki.fi>
14334
14335         * README.win32: Update.
14336
14337         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
14338         lines that had been deleted by mistake (?).
14339
14340         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
14341         also the case fg==white and bg==black (but still not randomly
14342         coloured cursors). Thanks to Wolfgang Sourdeau.
14343
14344         * gdk/win32/*.c: Silence gcc -Wall.
14345
14346         * gtk/gtk.def: Add missing entry points.
14347
14348         Fixes by Hans Breuer:
14349
14350         * gdk/makefile.msc
14351         * gdk/win32/makefile.msc: Update.
14352
14353         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
14354         some MSVC thing, presumably), cause breakpoint on failures. Add
14355         GDK_NOR case. Call g_log_set_always_fatal.
14356
14357         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
14358         should be pased by reference.
14359         
14360         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
14361         
14362         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
14363
14364         * gdk/win32/gdkevents-win32.c
14365         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
14366
14367         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
14368         implementation object.
14369
14370         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
14371         not just windows.
14372         
14373         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
14374         Use the wrapper object.
14375         
14376 2000-10-06  Havoc Pennington  <hp@redhat.com>
14377
14378         * Makefile.am (SRC_SUBDIRS): contrib subdir
14379
14380         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
14381         so it can be used in Xlib version
14382
14383         * demos/testpixbuf.c (update_timeout): error checking from 1.0
14384         tree
14385
14386         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
14387         change from 1.0 tree that returns first frame of animation
14388         if the loaded file is an animation.
14389
14390         * contrib: add new directory to hold stuff that comes with GTK+
14391         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
14392         
14393         * configure.in: add contrib/*
14394
14395 2000-10-05  Havoc Pennington  <hp@redhat.com>
14396
14397         * demos/testpixbuf-save.c: add pixbuf save test
14398
14399         * demos/Makefile.am: add testpixbuf-save.c
14400
14401 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
14402
14403         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
14404         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
14405         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
14406         * gtk/gtktreeselection.[ch]: Replaced
14407         "node_selected"/"node_unselected" signal with "selection_changed"
14408         signal.
14409
14410 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
14411
14412         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
14413         tree widget.
14414
14415 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
14416
14417         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
14418         drawing.
14419
14420 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
14421
14422         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
14423         Move list pointer forwards before removing item from
14424         list. (Crash reported by Salmaso Raffaele)
14425
14426         * gdk/gdkwindow.h: Remove spurious trailing ,
14427
14428         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
14429         dependencies on uninstalled libraries, sorry folks.
14430
14431 2000-10-04  Havoc Pennington  <hp@redhat.com>
14432
14433         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
14434         gtk/gtkiconfactory.c: Fix copyrights    
14435
14436         * demos/testpixbuf.c: add inline pixbuf test
14437         
14438 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
14439
14440         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
14441         Add gdk_window_iconify.
14442
14443         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
14444         (gdk_window_set_geometry_hints): Add win_gravity
14445         to geometry structure.
14446
14447         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
14448         Implement _NET_WM_PING.
14449
14450         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
14451         Set _NET_WM_PID on the client leader.
14452
14453         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
14454         Handle UTF-8 better.
14455
14456         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
14457         UTF-8 better, set _NET_WM_NAME as well. Only set
14458         icon name if it hasn't previously been explicitely 
14459         set.
14460
14461 2000-10-03  Havoc Pennington  <hp@redhat.com>
14462
14463         * gtk/testtextbuffer.c: clean up trailing whitespace,
14464         add extensive tests for tag toggle iteration.
14465         
14466         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
14467         distance
14468
14469         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
14470         optimize case where the tag root is on level 1
14471         (gtk_text_line_previous_could_contain_tag): attempt to implement
14472         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
14473         functionality
14474
14475         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
14476         Implement this, though not very efficiently.
14477
14478         * gtk/gtktextiterprivate.h: reformat
14479
14480         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
14481         iterator
14482
14483         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
14484         this to properly revalidate the iterators.
14485
14486         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
14487         properly at the end of the line (and therefore on empty lines)
14488
14489         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
14490         maybe we should return a value...
14491
14492 2000-10-03  Tor Lillqvist  <tml@iki.fi>
14493
14494         * config.h.win32: Guard definition of alloca(). glib.h now handles
14495         that.
14496
14497         * gdk/gdk.def
14498         * gtk/gtk.def: Add new entry points.
14499
14500         Changes just to make GTK+ build without errors on Win32. No hope
14501         of it working in its current state, though...:
14502         
14503         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
14504         some functions from the X11 backend, just to make GTK+ build.
14505
14506         * gdk/makefile.mingw.in
14507         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
14508         number. Add new object files.
14509
14510         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
14511         GetMessageTime to get timestamp (where on X11 uses
14512         gdk_x11_get_server_time()).
14513
14514 2000-10-02  Havoc Pennington  <hp@pobox.com>
14515
14516         * gtk/gtktextview.c: text_window_* weren't static and should have
14517         been.
14518         Start work on child widgets; not yet complete, syncing to 
14519         office computer.
14520
14521         * gtk/gtktextchild.h: change this to contain a public interface,
14522         starting work on child interfaces.
14523         * gtk/gtktextchildprivate.h: move private interfaces here
14524
14525         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
14526
14527         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
14528         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
14529         gtk/gtktextmark.c: copyright notices
14530
14531         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
14532         internal functions      
14533
14534         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
14535         internal function
14536
14537         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
14538         Reformatting    
14539
14540 2000-09-30  Havoc Pennington  <hp@pobox.com>
14541
14542         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
14543         NULL start/end pointers
14544
14545         * gtk/gtktextbuffer.c: Write some docs
14546         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
14547         NULL, so you can just check whether there's a selection.        
14548
14549         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
14550         cleanup_line or segments_changed ourselves, it gets done 
14551         in unlink_segment
14552
14553         * gtk/gtktextmark.h:
14554         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
14555         
14556         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
14557
14558         * gtk/gtktextmark.c: delete some more old Tk cruft
14559
14560         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
14561         mark before removing it, so we can emit MARK_DELETED with a valid
14562         pointer.
14563         (gtk_text_buffer_mark_set): hold ref across signal emission
14564
14565         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
14566         whining about attempts to delete special marks
14567
14568         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
14569         underscore, since it's internal.
14570
14571         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
14572         now implemented in terms of iterators in gtktextiter.h
14573
14574         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
14575         New function, destructively sets contents of buffer. Also 
14576         a convenient way to clear the buffer by setting text to ""
14577
14578         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
14579         multiline string literal
14580
14581         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
14582         text changes.
14583
14584         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
14585         is not dereferenceable
14586         (gtk_text_iter_forward_lines): fix return value
14587
14588 2000-09-29  Havoc Pennington  <hp@redhat.com>
14589
14590         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
14591
14592         * gtk/gtktextview.c: Implement drag thresholding; change functions 
14593         that set border window size to have nicer name
14594         (gtk_text_view_mark_set_handler):  Fix this to have the 
14595         right signature.
14596
14597         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
14598
14599         * gtk/testtext.c: Update with API changes, put line numbers on 
14600         both sides.
14601         
14602         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
14603         with this
14604
14605         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
14606         pixbuf; delete a big block of #if 0 Tk code
14607
14608         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
14609         insert_pixmap with insert_pixbuf
14610
14611 2000-09-29  Martin Baulig  <baulig@suse.de>
14612
14613         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
14614         confusion with the GdkPixbuf of the GNOME 1.x platform.
14615
14616 2000-09-29  Havoc Pennington  <hp@pobox.com>
14617
14618         * gtk/gtktextview.c: Implement the side windows.
14619
14620         * gtk/testtext.c: Implement simple line numbering in the 
14621         left side window; seems to make scrolling sloooow. Oops.
14622         Also, cursor blink is for some reason causing redraws
14623         of the line numbers. Should investigate...
14624
14625 2000-09-28  Havoc Pennington  <hp@redhat.com>
14626
14627         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
14628         scrolling child windows, and draw focus rectangle properly.
14629         
14630         (gtk_text_view_buffer_to_window_coords):
14631         Coordinate transformation to deal with all these freaking windows
14632         and offsets
14633         (gtk_text_view_window_to_buffer_coords): transform the other way
14634
14635         * gtk/testtext.c (create_buffer): Update to match Pango API change
14636
14637         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
14638         anonymous tags
14639         (foreach_unref): don't emit remove signal from finalize, just
14640         set tag's parent to NULL
14641
14642 2000-09-26  Havoc Pennington  <hp@redhat.com>
14643
14644         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
14645         Fix some warnings       
14646
14647 2000-09-26  Havoc Pennington  <hp@redhat.com>
14648
14649         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
14650         headers into the private header list
14651
14652         * Makefile.am (pkgconfig_DATA): install pkg-config files
14653
14654         * configure.in: add pkg-config files
14655
14656         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
14657
14658         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
14659         outstanding icon caches on theme change.
14660
14661         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
14662         important types:
14663
14664         (GtkIconSource): Specification for creating a pixbuf 
14665         appropriate for a direction/state/size triplet from 
14666         a source pixbuf or filename
14667
14668         (GtkIconSet): List of GtkIconSource objects that are used to
14669         create the "same" icon (e.g. an OK button icon), and cache for
14670         rendered icons
14671
14672         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
14673         up the icon set for a given stock ID.  GTK maintains a stack of
14674         GtkIconFactory to search, and applications or libraries can add
14675         additional icon factories on top of the stack
14676         
14677         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
14678         the set of GtkIconSource specified for a given stock ID into 
14679         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
14680         RcStyle, under the specified stock ID.
14681
14682         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
14683         render_icon used to derive a GdkPixbuf from a GtkIconSource.
14684         This allows people to theme how prelight, insensitive, etc. are
14685         done.
14686
14687         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
14688         icon factories for a style, and return the resulting 
14689         icon set if any.
14690
14691         (gtk_style_render_icon): Render an icon using the render_icon 
14692         method in the GtkStyleClass.
14693
14694         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
14695         Use the style for a given widget to look up a stock ID, get the
14696         icon set, and render an icon using the render_icon method 
14697         of the style
14698
14699         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
14700         (contains information about a stock item), the built-in stock item
14701         IDs, and functions to add/lookup stock items.
14702
14703         * gtk/stock-icons/*: Stock icons that come with GTK
14704
14705         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
14706         a button based on a GtkStockItem
14707         (gtk_button_new_accel): Takes a uline string and accel group, and
14708         installs the accelerator.
14709
14710         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
14711         image-display widget.
14712
14713 2000-09-25  Havoc Pennington  <hp@redhat.com>
14714
14715         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
14716
14717         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
14718         Fix a bug when removing node data, we didn't properly 
14719         re-splice the linked list after removing the data.
14720
14721         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
14722         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
14723
14724         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
14725
14726         * gtk/gtktextlayout.c (set_para_values): Set tab array 
14727         for the layout from the GtkTextTag.
14728
14729         * gtk/gtktexttypes.h: delete tab and search cruft, 
14730         remove g_convert() in favor of GLib version
14731
14732         * gtk/gtktexttypes.c: remove tab implementation from here,
14733         move to Pango
14734
14735         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
14736         tab stuff using new PangoTabArray from Pango
14737
14738         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
14739         unused border_width stuff
14740
14741 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
14742
14743         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
14744         glib) and now useless utf_to_latin1() latin1_to_utf()
14745
14746         * gtk/gtktextview.[ch]: Change ::move_insert and
14747         ::delete_text action signals to ::move and ::delete;
14748         create the signals with the right enumeration type,
14749         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
14750         C-v bindings, change Home, End to move to beginning/end
14751         of line, Add C-Home C-End to move to beginning/end
14752         of buffer. Change ::cut_text to ::cut_clipboard, etc;
14753         combine ::scroll_text into ::move; use new GtkSelectionData
14754         functions to simplify DND text handling.
14755         
14756         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
14757         deletion enumerations here, rename enumeration values to 
14758         be consistently plural.
14759
14760         * gtk/gtktextbuffer.c: Use new clipboard interfaces
14761         for cut/copy/paste and primary selection.
14762
14763         * gtk/gtktextbuffer.[ch]: Remove excess time and
14764         'interactive' arguments from cut/copy/paste;
14765         rename cut to cut_clipboard, etc; remove
14766         gtk_text_buffer_get_clipboard_contents().
14767
14768         * gtk/gtktextlayout.[ch]: Add 
14769         gtk_text_layout_move_iter_to_line_end() to move the iter to 
14770         line ends.
14771
14772         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
14773         Functions to set or get a UTF-8 string on the selection
14774         data.
14775
14776         * gtk/gtkclipboard.[ch]: New, simplified selection handling
14777         interfaces.
14778
14779         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
14780         created widgets - one of these is useless if we don't.
14781
14782         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
14783         a public function clear all targets registered for the
14784         widget.
14785
14786         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
14787         Never call gtk_widget_realize() - that was just asking
14788         for bizarre side-effects.
14789
14790         * gtk/gtkselection.c (gtk_selection_owner_set): Call
14791         gdk_selection_owner_set even if the widget is the
14792         same so that we reliably update the timestamp on
14793         the server.
14794
14795         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
14796         gdk_x11_get_server_time() function.
14797         
14798         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
14799         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
14800         Add some tricky filtering on serial numbers for
14801         selection clear events to fix up long-standard
14802         race condition FIXME's in gtkselection.c.
14803
14804         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
14805         routines to convert from utf8 to compound text or
14806         STRING and from a text property to UTF-8.
14807
14808         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
14809         a convenience function gdk_get_current_event_time().
14810
14811         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
14812         and free selection_data->data properly
14813
14814 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
14815
14816         * gtk/gtkthemes.c: Remove some unecessary includes.
14817
14818 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
14819
14820         * gtk/gtktextdisplay.c
14821         * gtk/gtktextlayout.c
14822         * gtk/gtktexttag.c
14823         * gtk/gtktexttag.h
14824         * gtk/testtext.c: Change the overstrike property to strikethrough,
14825         to closer match pango.
14826
14827 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
14828
14829         * gtk/gtktextview.c: Fix up visibility so that focus,
14830         cursor_visible and blink interact properly.  Reenable cursor blink
14831         which had been roughly disabled. Make blink and focus
14832         properly per-view.
14833
14834         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
14835         Add a flag for whether to display insertion cursor and
14836         a function to set the flag.
14837
14838         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
14839         get_line_y() to get_line_yrange(), to be a bit more generally
14840         useful.
14841
14842 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
14843
14844         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
14845           do stop_navigating_submenu, to clear last timeout properly.
14846           Also in gtk_menu_motion_notify move ignore_enter above
14847           the conditional to make it always happen as suggested by Owen
14848
14849 2000-09-07  Tor Lillqvist  <tml@iki.fi>
14850
14851         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
14852
14853         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
14854         w32api headers.
14855
14856         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
14857         declarations.
14858
14859         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
14860         (gdk_win32_get_colormap): A line had been deleted by mistake.
14861
14862         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
14863         (gdk_event_translate): Handle more virtual keycodes to be able to
14864         generate GDK events for Control-comma, Control-period, etc.
14865
14866         * gtk/gtk.def: Add some missing entry points.
14867
14868 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
14869
14870         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
14871         Doc comment fixing. (Mostly non-matching parameter names.)
14872
14873         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
14874         comments a little to avoid looking like a doc comment.
14875
14876         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
14877         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
14878         conversions be changed to GError?)
14879
14880         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
14881         Move private #defines into .c file.
14882
14883         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
14884         order of argument addition, remove duplicates.
14885
14886         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
14887         parent class is FrameClass, not BinClass.
14888
14889         * gtk/gtk.h: Add gtkinvisible, which was missing.
14890         (It's occasionalyl useful for client apps, if seldom.)
14891
14892         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
14893         #define.
14894
14895 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
14896
14897         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
14898         coordinates when creating window, instead of GDK-space
14899         coordinates. (Avoid BadValue on too large windows.)
14900
14901 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
14902
14903         * configure.in (use_mmx_asm): Remove conftest* after use along the
14904         lines of AC_TRY_COMPILE.        
14905         
14906         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
14907         of g_dirname, which is deprecated.
14908         (gtk_rc_parse_any): Removed calls to
14909         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
14910
14911         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
14912         Removed calls to g_hash_table_{freeze,thaw}, as they are
14913         deprecated now.
14914
14915         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
14916         instead of g_basename.
14917         
14918 2000-09-04 Elliot Lee <sopwith@redhat.com>
14919         
14920         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
14921         ANSI warning.
14922
14923 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
14924
14925         * gtk/gtkwidget.h:  Add some documenting comments about 
14926           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
14927           just as owen said on irc.
14928
14929         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
14930           set HAS_DEFAULT.  Only set it if there isn't another window
14931           holding it (a focus window which RECEIVES_DEFAULT) and only unset
14932           it if the widget is not the focused window with RECEIVES_DEFAULT.
14933           This fixes weird double default bugs in dialogs which has things
14934           call gtk_window_set_default at times.
14935
14936 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
14937
14938         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
14939         Nils Barth and David Santiago to improve submenu
14940         navigation. The patch does this by creating a triangular
14941         region from the point where the pointer leaves the
14942         menu to the submenu.  While the pointer is in
14943         that region and a timeout has not expired, events 
14944         that would cause the active submenu to change are
14945         ignored.
14946
14947 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
14948
14949         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
14950         moving a toplevel window immediately after sizing it would
14951         result in it being sized back to the old size since 
14952         impl->width, impl->height aren't updated until we hear
14953         back from the server. There is still a (longstanding) bug
14954         here that gdk_window_get_size() will give the wrong size
14955         until we do hear back.
14956
14957 2000-08-31  Havoc Pennington  <hp@redhat.com>
14958
14959         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
14960         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
14961         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
14962         Rename GtkTextStyleValues to GtkTextAttributes
14963
14964 2000-08-31  Havoc Pennington  <hp@pobox.com>
14965
14966         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
14967         for rapid testing whether an iterator is the end iterator
14968         (gtk_text_btree_new): init end line cache
14969         (gtk_text_line_is_last): use fast cached line to 
14970         see if we're the last line.
14971         (get_last_line): use cached line here too, should 
14972         speed up some random unrelated code.
14973         
14974 2000-08-30  Havoc Pennington  <hp@pobox.com>
14975
14976         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
14977         signals.
14978
14979         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
14980         delete_text signals. This allows the signals to be used for
14981         implementing undo.
14982
14983         * gtk/gtktextbuffer.c: Change signal handler signatures; 
14984         provide "interactive" argument when emitting insert_text or
14985         delete_text signal.
14986         
14987 2000-08-30  Havoc Pennington  <hp@pobox.com>
14988
14989         * gtk/gtktextbuffer.c: Docs
14990
14991 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
14992
14993         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
14994         from switch statements, since Tor removed the enumeration
14995         value.
14996         
14997         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
14998         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
14999
15000 2000-08-29 Elliot Lee <sopwith@redhat.com>
15001         * */*.h: Use G_GNUC_CONST.
15002
15003 2000-08-27  Havoc Pennington  <hp@pobox.com>
15004
15005         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
15006         minor indentation fixes, inserted some FIXME about stuff I
15007         realized was broken while documenting it.
15008         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
15009         GTK convention  
15010
15011 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
15012
15013         * gtk/testgtk.c (create_styles): Fix double free of
15014         font desc.
15015
15016 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
15017
15018         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
15019         
15020         * gtk/testgtk.c (create_styles): Add a test for modifying
15021         the style through gtk_widget_modify_*.
15022
15023         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
15024         a function to get the current modifier style.
15025
15026         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
15027         of the passed in GtkRcStyle instead of ref'ing it.
15028
15029         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
15030
15031 2000-08-20  Tor Lillqvist  <tml@iki.fi>
15032
15033         * gdk/gdkimage.h
15034         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
15035         shared memory image+pixmap GdkImage type, or
15036         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
15037         I am dropping that.
15038
15039         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
15040         actually call gtk_init_abi_check(), passing also
15041         sizeof(GtkWindow). Ditto for gtk_init_check(). 
15042
15043         * gtk/gtk.def
15044         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
15045         New functions, used to check that the GTK+-using code has been
15046         compiled using the correct compiler and switches. In particular,
15047         with gcc one has to use the -fnative-struct switch as GTK+ is
15048         compiled with that.
15049
15050 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
15051
15052         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
15053         ->prev fields when merging lists. (Found simultaneously
15054         by Pawel Salek and Jakub Jelinek)
15055
15056 2000-08-12  Tor Lillqvist  <tml@iki.fi>
15057
15058         * gdk/gdk.def
15059         * gtk/gtk.def: Add missing entries.
15060
15061         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
15062         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
15063
15064         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
15065         function. Dummy implementation at this point.
15066
15067         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
15068         rules. Undefine GTK_COMPILATION when compiling the test programs.
15069         
15070         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
15071
15072 2000-08-11  Tor Lillqvist  <tml@iki.fi>
15073
15074         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
15075         to convert back and forth from UTF-8 and the "system" (or "current
15076         locale") charset when necessary. Indentation/spacing cleanup.
15077
15078 2000-08-10  Havoc Pennington  <hp@redhat.com>
15079
15080         * Makefile.am (snapshot): Change the format of the snapshot
15081         version to match glib
15082
15083         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
15084         from EXTRA_DIST since it doesn't seem to exist
15085
15086 2000-08-10  Tor Lillqvist  <tml@iki.fi>
15087
15088         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
15089         version of the directory name (not the UTF-8 one) when building
15090         the path name to stat().
15091
15092 2000-08-03  Elliot Lee  <sopwith@redhat.com>
15093
15094         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
15095         PANGO_ATTR_SHAPE set.
15096
15097 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
15098
15099         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
15100         Peter Osterlund to simplify the code while keeping the
15101         functionality the same.
15102
15103 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
15104
15105         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
15106         is_viewable() test further inside the function, since removing the 
15107         window from the redraw list without clearing ->update_area
15108         was also very broken.
15109
15110 2000-08-02  Tor Lillqvist  <tml@iki.fi>
15111
15112         * configure.in: Check for <unistd.h>.
15113
15114 2000-08-01  Martin Baulig  <baulig@suse.de>
15115
15116         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
15117         to display the message that this is a development version of GTK+.
15118
15119 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
15120
15121         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
15122         was depending on widget->allocation instead of the width of text_area,
15123         which was incorrect for subclasses like GtkSpinButton.
15124
15125         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
15126         with width == 1 tests that should be width == -1.
15127
15128 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
15129
15130         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
15131         (broken, Elliot, every single window blank on X) custom code with call
15132         to gdk_window_is_viewable() which a) prevents code duplicate and
15133         b) works. 
15134
15135 2000-07-31  Elliot Lee  <sopwith@redhat.com>
15136
15137         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
15138         to get the GDK_PARENT_ROOT() macro to work.
15139         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
15140         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
15141         of, windows that aren't shown.
15142         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
15143         pointer grab stuff.
15144
15145 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
15146
15147         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
15148           s/gtk_main_iteration/g_main_iteration/
15149
15150           Did this already in change:
15151                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
15152           don't know how it got reverted.
15153
15154 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
15155
15156         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
15157         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
15158
15159         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
15160         not gdk_pixbuf.
15161
15162 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
15163
15164         * configure.in,po/{sp,sr}.po: Added Serbian files
15165
15166 2000-07-30  Tor Lillqvist  <tml@iki.fi>
15167
15168         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
15169
15170         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
15171         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
15172         GIOChannel implementation.
15173
15174         * gdk/win32/gdkinput.c
15175         * gdk/win32/gdkpango-win32.c: Update license name here, too.
15176
15177         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
15178         definition to match prototype.
15179
15180         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
15181
15182 2000-07-27  Elliot Lee  <sopwith@redhat.com>
15183
15184         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
15185         function, to allow handling image formats that cannot be detected
15186         by looking at content alone.
15187
15188 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
15189
15190         * docs/tutorial/*.gif *.jpg *.eps
15191           Update these to the same look-n-feel.
15192           Why does including images in DocBook suck so badly?
15193
15194 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
15195
15196         * gtk/gtktable.c: applied patch from Phil Thompson
15197         <phil@river-bank.demon.co.uk> that enables space settings for
15198         the last row/columns as well.
15199
15200 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
15201
15202         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
15203         updates the license headers to the GNU Lesser General Public License,
15204         as well as updating the copyright year to 2000.
15205
15206 2000-07-26  Robert Brady  <rwb197@zepler.org>
15207
15208         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
15209           and po/Makefile, was installing and looking for them under gtk20
15210           and gtk2 respectively.
15211
15212 2000-07-25  Havoc Pennington  <hp@redhat.com>
15213
15214         * gtk/testtext.c: Comment out some stuff that depends on the rest
15215         of my patches.
15216
15217 2000-07-25  Havoc Pennington  <hp@redhat.com>
15218
15219         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
15220         buffer
15221
15222 2000-07-25  Havoc Pennington  <hp@redhat.com>
15223
15224         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
15225         widget changes.
15226
15227         * gtk/gtktextview.h: To be consistent with usage of "line"
15228         throughout the API to mean "newline-terminated thingy", change
15229         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
15230         to MOVEMENT_LINE.
15231
15232         (GtkTextView): Add flags for default editability, and whether to
15233         show the cursor. Add functions to get/set that. Add 
15234
15235         (gtk_text_view_get_iter_location): new function
15236
15237         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
15238         gtktextlayout.h
15239         (g_convert): Add g_convert temporarily, will go in glib in a bit
15240         
15241         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
15242         GtkTextTagTableForeach instead of brokenly using GHFunc.
15243         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
15244
15245         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
15246         moved to public header.
15247
15248         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
15249         "invisible", since "elide" was a bad name.
15250         (gtk_text_tag_get_priority): Added
15251
15252         (GtkTextStyleValues): put this in public header, along with
15253         functions to use it.
15254
15255         * gtk/gtktextmarkprivate.h: Include more headers, since we no
15256         longer include gtktextbtree.h.
15257
15258         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
15259         gtk_text_mark_deleted
15260
15261         * gtk/gtktextlayout.h: Don't include the "really private" headers,
15262         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
15263         to make this possible. Now we only need to install
15264         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
15265         (However the Makefile.am isn't changed yet because of the
15266         logistics of merging gtk-hp-patches piecemeal)
15267
15268         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
15269         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
15270         gtk_text_iter_get_line is now used in the public API for a
15271         different purpose.
15272
15273         * gtk/gtktextiter.h: Clean up function names to be more
15274         consistent. Always call char offset "offset" and byte index
15275         "index". A "line" is always a line number. 
15276
15277         (gtk_text_iter_is_last): new function, more efficient than 
15278         the existing way to check
15279         (gtk_text_iter_is_first): new function, also more efficient
15280
15281         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
15282
15283         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
15284         gtk_text_iter_forward_char, etc.
15285
15286         (gtk_text_iter_forward_to_tag_toggle): Renamed from
15287         forward_find_tag_toggle, since this isn't a linear search
15288
15289         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
15290
15291         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
15292         New functions, search for a buffer substring.
15293
15294         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
15295         interactive and default editable (since we need to store that info
15296         until we receive the selection data).
15297
15298         Remove all the _at_char and at_line etc. versions of functions;
15299         only have iterator versions.
15300
15301         Add _interactive() versions of functions, that consider the
15302         editability of text. (FIXME add interactive flag to the 
15303         insert/delete signals per Darin's suggestion)
15304
15305         (gtk_text_buffer_get_tag_table): new function, demand-creates the
15306         tag table if necessary
15307
15308         Remove declaration of gtk_text_buffer_get_iter_from_string
15309
15310         (_gtk_text_buffer_get_btree): private/internal function, added.
15311         
15312
15313         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
15314         (gtk_text_line_is_last): new function
15315
15316 2000-07-25  Havoc Pennington  <hp@redhat.com>
15317
15318         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
15319         using GtkProgressBar. See Changes-2.0.txt for details.
15320
15321         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
15322         "pulse_step" which are the equivalent of
15323         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
15324         Implement new API.
15325         
15326         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
15327         (use_text_format) to mark whether text set on the progress bar is
15328         a format string. Deprecate entire GtkProgress interface.
15329
15330         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
15331         (gtk_progress_build_string): make this a no-op if use_text_format
15332         is FALSE
15333
15334         * docs/Changes-2.0.txt: Describe progress bar changes.
15335
15336 2000-07-25  Tor Lillqvist  <tml@iki.fi>
15337
15338         * Makefile.am: Include the build directory.
15339
15340         * configure.in: Generate build/Makefile, build/win32/Makefile,
15341         gdk/, gdk/win32/, and gtk/makefile.mingw.
15342
15343         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
15344         Add GETTEXT_PACKAGE.
15345         
15346         * gdk/gdk.def
15347         * gtk/gtk.def: Updates.
15348
15349         * gdk/gdkfont.h
15350         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
15351         need them any longer.
15352
15353         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
15354
15355         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
15356         PANGOWIN32_LIBS and gdk_pixbuf.
15357
15358         * gdk/win32: Compiles, but no doubt doesn't work at all.
15359
15360         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
15361
15362         * gdk/win32/gdkinput.c: New file, temporarily.
15363         
15364         * gdk/win32/gdkinput-win32.h: New file
15365
15366         * gdk/win32/gdkinputprivate.h: Remove.
15367
15368         * gdk/win32/gdkpango-win32.c: New file.
15369
15370         * gtk/makefile.mingw.in: New file
15371
15372         * gtk/makefile.cygwin: Removed
15373         
15374         * gtk/Makefile.am: Update accordingly.
15375
15376         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
15377         made externally visible.
15378
15379         * gtk/gtkmain.c: Use it.
15380         
15381         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
15382         is enough.
15383
15384         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
15385
15386 2000-07-24 Elliot Lee <sopwith@redhat.com>
15387         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
15388         individual backends already.
15389         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
15390         again. Yes, there really is a good reason for this, if you are using the gdkregion
15391         internals, and if you're not, why do you care?
15392         * gdk/gdkwindow.c: Fix inverted condition
15393         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
15394         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
15395         * gtk/gtkrange.c: Redraw trough when moving.
15396         * gtk/gtktypeutils.c: Fix warning by adding const cast.
15397         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
15398
15399 2000-07-23  Tor Lillqvist  <tml@iki.fi>
15400
15401         * configure.in: Check for mkstemp and sigsetjmp. Output
15402         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
15403
15404         More work on GDK for Win32. Still in an intermediate state.
15405
15406         * gdk/makefile.cygwin
15407         * gdk/win32/makefile.cygwin: Removed.
15408         
15409         * gdk/makefile.mingw.in
15410         * gdk/win32/makefile.mingw.in: New files.
15411
15412         * gdk/Makefile.am
15413         * gdk/win32/Makefile.am: Generate and distribute them.
15414
15415         * gdk/win32/gdkwindow-win32.h
15416         * gdk/win32/gdkdrawable-win32.h
15417         * gdk/win32/gdkpixmap-win32.h: New files.
15418
15419         * gdk/win32/gdkcolor-win32.c
15420         * gdk/win32/gdkcursor-win32.c
15421         * gdk/win32/gdkdrawable-win32.c
15422         * gdk/win32/gdkgc-win32.c
15423         * gdk/win32/gdkimage-win32.c
15424         * gdk/win32/gdkprivate-win32.h
15425         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
15426         Rename fields and variables called xcursor, xid, etc (these names
15427         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
15428
15429 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
15430
15431         * gtk/gtkentry.[ch]: Fix some problems with vertical
15432         alignment.
15433
15434         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
15435         char/byte confusion.
15436
15437 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
15438
15439         * gtk/gtktextview.c (changed_handler): Fix bug where
15440         redraw wasn't being done properly when height of
15441         dirty region changed.
15442
15443         * demos/Makefile.am: Remove various references to
15444         -lgmodule
15445
15446 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
15447
15448         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
15449         PangoAttrShape to reserve space for pixmaps, add 
15450         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
15451         in the display functions.
15452         
15453         * gtk/testgtk.c (create_layout): Set some more exotic
15454         scrolled window options
15455
15456         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
15457         Add function to set the shadow type of a window, to allow
15458         putting a shadow around widgets such as GtkLayout or GnomeCanvas
15459         which don't draw their own frame.
15460
15461 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
15462
15463         * docs/tutorial/package-db-tutorial.sh: New file for
15464           packaging DocBook format tutorial
15465
15466 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
15467
15468         * docs/tutorial/gtk-tut.sgml: Minor updates
15469
15470         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
15471
15472 2000-07-19  Tor Lillqvist  <tml@iki.fi>
15473
15474         * gtk/gtksignal.c: Fix C++ comment.
15475
15476         * gtk/gtkimmulticontext.c
15477         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
15478         don't return value from void functions.
15479
15480         * gtk/gtk.def: Add gtk_rc_style_unref.
15481
15482 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
15483
15484         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
15485         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
15486         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
15487         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
15488         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
15489         gtk/gtktypeutils.h: Include files outside of the extern "C"
15490         block. Makes some C++ compiler happy. Reported by Denis Vakatov
15491         <vakatov@peony.nlm.nih.gov>.
15492
15493 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
15494
15495         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
15496           Completes first pass. Hurrah!
15497
15498 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
15499
15500         * docs/tutorial/gtk-tut.sgml: More clean ups.
15501
15502 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
15503
15504         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
15505         paint the background of the text area which was accidentally
15506         removed at some point.
15507
15508         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
15509           
15510          - Move most of the functionality from the theme vtable
15511            into GtkRcStyleClass and GtkStyleClass. The moved
15512            vtable functions were changed a bit in the move to
15513            work better in their new home.
15514
15515          - Get rid of the engine and engine_data fields from
15516            GtkRcStyle and GtkStyle; instead the theme
15517            engine derives theme-specific subclasses of GtkRcStyle
15518            and GtkStyle
15519
15520          - Add extra dlsym() found entry point to themes,
15521            theme_create_rc_style().
15522
15523         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
15524         in gtk_style_real_copy.
15525
15526         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
15527         to register a type associated with an engine. (The engine
15528         won't be unloaded as there is an instance of the type.)
15529
15530
15531 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
15532
15533         * docs/tutorial/gtk-tut.sgml: Clean ups.
15534
15535 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
15536
15537         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
15538           of cleaning up to do.
15539
15540 2000-07-15  Tor Lillqvist  <tml@iki.fi>
15541
15542         * gdk/testgdk.c: New file, quick hack to test backends for
15543         pixel-by-pixel correctness of the most simple graphic operations.
15544
15545 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
15546
15547         * Really release 1.3.1
15548         
15549         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
15550         include structure.
15551
15552 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
15553
15554         * Released 1.3.1
15555
15556 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
15557
15558         * gtk/gtktextlayout.c: use FALSE for size_only most
15559         of the time when calling gtk_text_layout_get_line_display()
15560         to avoid causing double reshapes when a redraw follows
15561         immediately after.
15562
15563 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
15564
15565         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
15566         appropriate region and gdk_window_process_updates() so trough
15567         updating doesn't lag behind the window being scrolled.
15568
15569         * gdk/gdkgc.c: Make parent_class pointer static.
15570          
15571 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
15572
15573         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
15574         include <string.h>.
15575          
15576         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
15577         cut-and-paste error in computing memory offset for 4 channels.
15578
15579 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
15580
15581         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
15582         gtk_rc_append_default_pixmap_path(), since it wasn't
15583         adding an interesting path and we don't have a meaningful
15584         default for this value.
15585
15586 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
15587
15588         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
15589         gtk-config to gtk-config-2.0 move gtk_.m4 to
15590         gtk-2.0.m4
15591
15592         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
15593         gdk/Makefile.am demos/Makefile.am: Change 
15594         library names to libgtk-1.3.la, etc, so that we
15595         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
15596
15597         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
15598         gdk/Makefile.am gdk/x11/Makfile.am
15599         Move include files into /usr/include/gtk-2.0, 
15600         /usr/lib/gtk-2.0/include/
15601          
15602         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
15603         gtk/gtkintl.h: Change package for gettext from 
15604         gtk+ to gtk20. Put hack in autogen.sh to modify
15605         po/Makefile.in.in after gettextize to make this
15606         possible.
15607
15608         * gtk+.spec: Some updates, not tested.
15609
15610         * gdk-pixbuf/Makefile.am: Move loaders into
15611         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
15612
15613         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
15614         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
15615         to THEMENAME/gtk-2.0/. Move engine directory  to
15616         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
15617         
15618 2000-07-12  Tor Lillqvist  <tml@iki.fi>
15619
15620         Win32 changes, still doesn't build though.
15621
15622         * gdk/makefile.cygwin
15623         * gdk/win32/makefile.cygwin
15624         * gtk/makefile.cygwin: Updates.
15625
15626         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
15627         default values for fg and bg pixel as X11 does (0 and 1), not
15628         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
15629         Use 0 for pen width by default (treated as 1 anyway later, but for
15630         apps that might check the value in the GdkGC).
15631         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
15632         interface to gdk_gc_predraw and _postdraw.
15633
15634         * gdk/win32/gdkwin32.h
15635         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
15636
15637         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
15638         extraneous semicolon.
15639
15640         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
15641
15642         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
15643         not the Win32 bitspixel value.
15644
15645         * gdk/win32/gdkcc-win32.c:
15646         * gdk/win32/gdkcolor-win32.c 
15647         * gdk/win32/gdkprivate-win32.h
15648         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
15649         GDK object structure.
15650
15651 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
15652
15653         * docs/tutorial/gtk_tut_12.es.sgml (name): 
15654         * docs/tutorial/gtk_tut_it.sgml (name): 
15655         * docs/tutorial/gtk_tut_fr.sgml (name): 
15656         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
15657         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
15658
15659 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
15660
15661         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
15662           small changes.
15663
15664 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
15665
15666         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
15667         a bug here, never been here and never fixed anything ;(
15668         (don't segfault if tree->root_tree is NULL, which happens prior
15669         to widget realization, but puke instead).
15670
15671 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
15672
15673         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
15674         add the necessary tokens.
15675
15676         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
15677         (gtk_rc_style_to_style): copy thicknesses.
15678         (gtk_rc_init_style): apply thicknesses.
15679         (gtk_rc_parse_style): parse xthickness and ythickness.
15680
15681         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
15682
15683         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
15684         (gdk_window_new): 
15685         (_gdk_windowing_window_init): 
15686         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
15687         (gdk_pixmap_create_from_data): 
15688         (gdk_bitmap_create_from_data): 
15689         (gdk_pixmap_new): 
15690         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
15691         (gdk_image_new): 
15692         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
15693         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
15694         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
15695         (gdk_colormap_get_system): 
15696         (gdk_colormap_new): 
15697         * gdk/gdkwindow.c (gdk_window_init): 
15698         * gtk/gtkstyle.c (gtk_style_new):
15699         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
15700         * gdk/gdkpixmap.c (gdk_pixmap_init): 
15701         * gtk/gtkrc.c (gtk_rc_style_new):
15702         use g_object_new() instead of g_type_create_instance() which
15703         is a private function for fundamental type implementations.
15704
15705 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
15706
15707         * configure.in: Add check for db2html
15708
15709 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
15710
15711         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
15712         hack to set glib_debug_objects based on gtk_debug_flags.
15713
15714 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
15715
15716         * INSTALL.in: Update the Prerequisites section.
15717
15718         * Makefile.am demos/Makefile.am docs/Makefile.am
15719         docs/tutorial/Makefile.am gdk/x11/Makefile.am
15720         gdk/linux-fb/Makefile.am: Dist fixes
15721
15722 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
15723
15724         * NEWS: 10,000 foot view of 1.3.1 changes.
15725
15726 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
15727
15728         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
15729         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
15730         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
15731         gdk/x11/gdkmain-x11.c: 
15732
15733         Patch from George Lebl to add a GdkGrabStatus enumeration to use
15734         as a return value of gdk_*_grab(). Previously, we just
15735         returned the X11 values directly.
15736
15737 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
15738
15739         * gdk/x11/Makefile.am: Patch from George Lebl to 
15740         install all the headers in the right place.
15741
15742 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
15743
15744         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
15745           initial conversion to DocBook.
15746
15747 2000-07-04  Tor Lillqvist  <tml@iki.fi>
15748
15749         * README.win32: Improve a bit.
15750
15751         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
15752         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
15753         Alt+0nnn on the numpad (used to enter characters by numeric code
15754         from current DOS or ANSI codepage) working correctly, as in other
15755         Windows apps.
15756
15757         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
15758         same argument validity tests as in X11 version.
15759         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
15760
15761         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
15762         definitions in case missing from headers.
15763
15764         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
15765         destroy the window-specific cursor.
15766         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
15767         calling GetModuleHandle(NULL).
15768         (gdk_window_set_cursor): Reworked to always copy the passed cursor
15769         with CopyCursor before setting it as the window-specific
15770         cursor. It is OK for the caller to destroy the GdkCursor (and thus
15771         also its Windows cursor) after calling this function. Destroy any
15772         previous window-specific cursor.
15773
15774 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
15775
15776         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
15777         font charset is iso8859-1, not iso-8859-1.
15778
15779 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
15780
15781         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
15782         Use g_get_charset() instead of g_get_codeset().
15783
15784         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
15785         Comment out some strdup'ing functions to keep timj
15786         happy until we finish fighting this out.
15787
15788 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
15789
15790         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
15791         <= width or height.
15792
15793         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
15794         from 1.2 for parent/child states.
15795
15796         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
15797         of typos.
15798
15799         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
15800         event structures, replace with a generic axes field. Replace 
15801         deviceid/sourec with GdkDevice *device.
15802
15803         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
15804         to extract particular axis use value from event. (Also
15805         can be used for normal X/Y.)
15806
15807         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
15808         allow for arbitrary number of axes, namespace everything
15809         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
15810         everywhere.
15811
15812         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
15813         Get rid of the gdk_input_vtable setup if favor of simply
15814         defining the functions in gdkinput-none/gxi/xfree.c in
15815         a similar fashion to the way that the port structure is 
15816         done.
15817
15818         * gtk/gtkdnd.c: Fix fields of synthesized button press event
15819         for new event structures. 
15820
15821         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
15822         new device interfaces.
15823
15824 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
15825
15826         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
15827         set the initial text.
15828
15829         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
15830         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
15831         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
15832         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
15833
15834         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
15835         pango_layout_set_font_description to simplify.
15836
15837 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
15838
15839         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
15840         pango_layout_set_font_description to simplify.
15841
15842 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
15843
15844         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
15845         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
15846         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
15847
15848         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
15849         PANGO_PIXELS() macro.
15850
15851 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
15852
15853         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
15854         that returns a PangoContext owned by the widget and updated to
15855         match future changes in the widget. Also, make 
15856         gtk_widget_create_pango_layout() use this context. If we ever
15857         add a ::changed signal to PangoContext, this will make things
15858         much more convenient. 
15859
15860         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
15861         in the appropriate places instead of destroying the layouts and
15862         creating new ones.
15863
15864         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
15865         in a few strategic places.
15866
15867 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
15868
15869         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
15870         gtk_widget_size_request() on reparented child, if one. Otherwise,
15871         queue_resize() on the child never results in it getting size-requested
15872         at all.
15873
15874         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
15875         in option menus, so that (with luck) people won't copy it into
15876         their apps in the future.
15877
15878         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
15879         to gtk_option_menu_calc_size. This isn't perfect, but should fix
15880         a lot of problems with changing the size of the menu's menu
15881         items after adding it to the option menu.
15882
15883         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
15884
15885         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
15886         the text direction for a widget changes.
15887
15888         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
15889         ::direction_changed to get rid of various hacks.
15890
15891 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
15892
15893         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
15894         name.
15895
15896 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
15897
15898         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
15899         flag to the structure. Do not call XFreePixmap on pixmaps created
15900         by gdk_pixmap_foreign_new().
15901
15902 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
15903
15904         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
15905         value using GdkRGB functionality given GdkColormap and GdkColor.
15906         (name not final, waiting for inspiration.)
15907         
15908         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
15909         set the foreground/background of a GC using the GC's colormap
15910         and GdkRGB. (name not final, waiting for inspiration.)
15911
15912         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
15913         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
15914
15915         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
15916         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
15917         purely a function of the corresponding colormap. Make
15918         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
15919
15920         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
15921         gdk_pixbuf_*create_from_xpm_* in terms of
15922         gdk_pixbuf_new_from_xpm_data(), move into platform independent
15923         code.
15924
15925         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
15926         advantage of the new draw_rgb_32_image_dithalign.
15927
15928         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
15929
15930         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
15931         on each created GC.
15932
15933         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
15934
15935         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
15936         which we initialize from the drawable when the GC is created,
15937         if the drawable has a colormap.
15938
15939         * gdk/x11/gdkgc-x11.c: include string.h for memset.
15940
15941         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
15942
15943         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
15944
15945 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
15946
15947         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
15948         actually returning expose events, make sure to set
15949         the count field properly.
15950
15951         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
15952         accidentally reintroced bug which always cleared
15953         the graphics_exposures value. 
15954
15955 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
15956
15957         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
15958
15959 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
15960
15961         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
15962
15963 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
15964
15965         * docs/faq/gtk-faq.sgml: Start of Section 6.
15966
15967 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
15968
15969         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
15970         
15971         (Fixes problem with drawing childless frames. Pointed out
15972         by and a first patch from Anders)
15973         
15974         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
15975         compute a child_allocation, even if we don't have a child.
15976
15977         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
15978         Always chain to the parent's impl, even if we don't have a child.
15979
15980 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
15981
15982         * gdk/gdkrgb.c: If possible, create only a single shm segment and
15983         use multiple parts of it instead of creating a bunch of separate
15984         segments, since the maximum number of segments per system is not
15985         large. (This might be worth backporting to GTK+-1.2.x if we make a
15986         new release )
15987
15988         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
15989         structure in preparation for per-colormap GdkRGB.
15990
15991         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
15992         to False when we get EINVAL from shmget so that the caller of
15993         gdk_image_new can retry with a smaller segment size.
15994
15995 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
15996
15997         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
15998
15999 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
16000
16001         * configure.in: make the current version number 1.3.1 (binary age 0,
16002         interface age 0).
16003         
16004         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
16005         gtkcompat.h is all we want.
16006
16007         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
16008         GLib primitive types. fixed g_type_register_fundamental() argument
16009         ordering.
16010
16011         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
16012         compiles.
16013
16014         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
16015         object code cleanup, comment trigraph fixes, etc...
16016
16017 2000-06-23  Havoc Pennington  <hp@redhat.com>
16018
16019         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
16020         instead of making up a bogus name for first_para_mark
16021
16022         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
16023         0 as a context ID
16024
16025 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
16026
16027         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
16028
16029 2000-06-21  Havoc Pennington  <hp@pobox.com>
16030
16031         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
16032         we didn't check window->bg_pixmap != GDK_NO_BG.
16033
16034         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
16035         gdk-pixbuf
16036
16037 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
16038
16039         * docs/faq/gtk-faq.sgm: Move file to here.
16040           TODO: Update Makfile.am 
16041
16042 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
16043
16044         * docs/gtk-faq.sgm: Add Section 2
16045
16046 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
16047
16048         * docs/gtk-faq.sgm: New file. Start of DocBook
16049           version of the FAQ.
16050
16051 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
16052
16053         * configure.in (GDK_PIXBUF_MAJOR): Define version
16054         numbers for GDK_PIXBUF_*, as they get substituted
16055         into a header file. Need to consider versioning
16056         for gdk-pixbuf more carefully later.
16057
16058 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
16059
16060         Work with srcdir != builddir.   
16061         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
16062         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
16063         * demos/testpixbuf.c: Likewise.
16064         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
16065         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
16066         <gdk/x11/gdkx.h>.
16067         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
16068         "gdk-pixbuf.h".
16069         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
16070
16071 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
16072
16073         * TODO.xml: Change 1.4 version numbers to 2.0.
16074
16075 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
16076
16077         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
16078         fixups to GTK+ standard.
16079
16080 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
16081
16082         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
16083         gdk-pixbuf.
16084
16085         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
16086         fixups for GObject.
16087
16088         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
16089         gdk-pixbuf with GDK dependencies moved into GDK.
16090         
16091         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
16092         move gdk-pixbuf-loader here until GObject has signals.
16093
16094         * demos/: New directory of demos. Move demos from
16095         gdk-pixbuf here.
16096
16097         * demos/pixbuf-init.c: Small bit of code to check for
16098         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
16099         set GDK_PIXBUF_MODULEDIR appropriately.
16100
16101         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
16102         define which no longer makes sense.
16103
16104 2000-06-21  Havoc Pennington  <hp@redhat.com>
16105
16106         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
16107         gtk_get_default_language
16108
16109         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
16110         new function to get the default language
16111
16112         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
16113         s/gtk_text_view_style_values/gtk_text_style_values/
16114
16115         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
16116         Add a "language" field to tags.
16117
16118         (gtk_text_tag_set_arg): Fix bug in setting
16119         "bg_full_height_set" tag.
16120
16121 2000-06-21  Havoc Pennington  <hp@redhat.com>
16122
16123         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
16124         in the interfaces
16125
16126         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
16127         stuff instead when possible.
16128
16129         * gtk/gtktexttypes.h: Delete some unused constants
16130
16131         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
16132         testtextbuffer.c: use glib instead of custom unicode routines
16133
16134 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
16135
16136         * docs/es/: Removed mistakenly added generated sgml
16137
16138         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
16139         Remove outdated info files.
16140
16141         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
16142         Moved tutorial files into subdir
16143
16144         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
16145         subdir.
16146
16147         * docs/man/gtk_button.pod: Remove. (contents will be
16148         integrated into gtk-reference button page.)
16149
16150         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
16151         docs/faq/Makefile.am: Adjust for new organization
16152
16153 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
16154
16155         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
16156         not $(MKINSTALLDIRS)
16157
16158 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
16159
16160         * gtk/testgtk.c (create_text): Finish the job Elliot started
16161         of removing font setting test for text widget. (Since text widget
16162         and GdkFont are not deprecated, and cause portability problems.)
16163
16164 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
16165
16166         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
16167         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
16168         Remove use of libunicode in favor of new GLib functions.
16169
16170         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
16171         nano-x, framebuffer. The X11 include is just a hack until we get
16172         the necessary functions in gdkcolor.h, so there is no reason to
16173         add other includes of platforms.
16174
16175         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
16176         window bigger than the screen change.
16177
16178         * gtk/testgtk.c: Revert some random changes from Elliot
16179         that had no particular point and were causing testgtkrc
16180         not to function correctly.
16181         
16182         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
16183         because GdkSegment and GdkRegionBox have the same fields,
16184         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
16185         results in clearer code.
16186
16187         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
16188         gdk_input_translate_coordinates): Fix missed GdkObjectification
16189
16190 2000-06-18  Elliot Lee  <sopwith@redhat.com>
16191
16192         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
16193         * gtk/gtk{plug,socket}.h: Missed commits from previous.
16194
16195 2000-06-20  Havoc Pennington  <hp@redhat.com>
16196
16197         * modules/linux-fb/Makefile.am: Make this compile
16198         without framebuffer enabled
16199
16200         * gdk/linux-fb/Makefile.am: Add conditional to not build
16201         framebuffer unless specified in configure
16202
16203         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
16204         the size of the target instead of source if -1 was passed for
16205         width/height
16206
16207         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
16208         width/height confusion.
16209
16210 2000-06-19  Havoc Pennington  <hp@redhat.com>
16211
16212         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
16213         GDK_DRAWABLE_XID. In the future, we probably want to make it
16214         faster with G_DISABLE_CHECKS turned on.
16215
16216 2000-06-14  Havoc Pennington  <hp@redhat.com>
16217
16218         * gdk/Makefile.am: add gdkpixmap.c
16219
16220         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
16221         s/gdk_image_init/_gdk_windowing_image_init
16222
16223         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
16224         ref/unref
16225
16226         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
16227
16228         * gdk/gdkcompat.h: remove GdkWindowType compat, since
16229         GdkWindowType is now non-deprecated; 
16230         change gdk_window_get_type() compat to be
16231         gdk_window_get_window_type().
16232
16233         * gdk/gdkdnd.h: make GdkDragContext a GObject.
16234
16235         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
16236         virtual GObject. Make all functions call into the vtable.
16237         Move gdk_image_put() guts in here. Remove GdkDrawableType
16238         and gdk_drawable_get_type(), these are now GdkWindow-specific.
16239         draw_image, get_depth, get_size, set_colormap, get_colormap,
16240         get_visual added to the vtable.
16241         
16242         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
16243         GObject. Virtualize everything. 
16244         (gdk_gc_new_with_values): remove check for destroyed window,
16245         because now GdkWindow::create_gc will check this.
16246         (gdk_gc_set_values): New function to set GC values, this 
16247         was already implemented but wasn't in the header
16248
16249         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
16250
16251         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
16252         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
16253         remove _gdk_window_class; add _gdk_window_impl_get_type() and
16254         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
16255         _gdk_windowing_window_init, rename gdk_image_init to
16256         _gdk_windowing_image_init.
16257         
16258         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
16259         (gdk_draw_layout): Remove check for destroyed window, 
16260         because all the drawable methods already check it.
16261         
16262         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
16263         Add gdkpixmap.c which contains implementation of GdkDrawable
16264         virtual table (by chaining to a platform-specific implementation
16265         object).
16266         
16267         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
16268         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
16269         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
16270         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
16271         GdkColormapPrivate. 
16272
16273         * gdk/gdktypes.h: #include <glib-object.h>
16274
16275         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
16276         Move most functionality to platform-specific implementation
16277         object. GdkWindow itself now handles the backing store, then
16278         chains to the platform-specific implementation.
16279         (gdk_window_get_window_type): return GdkWindowType of the window.
16280         (gdk_window_peek_children): New routine, returns the children of 
16281         a GdkWindow
16282         (gdk_window_get_children): Was in X11-specific code and did 
16283         XQueryTree. Changed to simply return a copy of window->children; 
16284         so it can go in cross-platform code.
16285         
16286         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
16287
16288         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
16289         GdkColormap; just changed to use the new private data instead
16290         of casting to GdkColormapPrivate.
16291
16292         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
16293         gdk_cursor_new().
16294
16295         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
16296         (private data member in the GObject). 
16297         (xdnd_manager_source_filter): Function had broken 
16298         error handling, fix it (use gdk_error_trap_push).
16299
16300         * gdk/x11/gdkdrawable-x11.c: This file now implements
16301         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
16302         base class is purely for the convenience of the X port,
16303         and not part of the interface to cross-platform GDK.
16304
16305         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
16306         
16307         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
16308         specific to X, and returned by the create_gc virtual method
16309         of GdkDrawableImplX11. 
16310         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
16311         rather than gchar, this was also changed in the GdkGC vtable.
16312         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
16313         mask is 0, return immediately, instead of checking every flag.
16314         This is faster, and keeps us from segfaulting if values is NULL
16315         and the mask contains some nonzero flags.
16316
16317         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
16318         GdkWindow.
16319
16320         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
16321         GdkWindowPrivate is gone.
16322
16323         * gdk/x11/gdkim-x11.c: rename things that got renamed.
16324
16325         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
16326         remove the image_put stuff that got transferred to GdkDrawable.
16327         
16328         * gdk/x11/gdkinput.c: renamings
16329
16330         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
16331
16332         * gdk/x11/gdkpixmap-x11.c: GObject conversion
16333
16334         * gdk/x11/gdkprivate-x11.h: indentation fixes
16335
16336         * gdk/x11/gdkproperty-x11.c: renamings
16337
16338         * gdk/x11/gdkselection-x11.c: renamings
16339
16340         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
16341         implements the platform-specific "impl" object.
16342         Moved gdk_window_get_children to gdk/gdkwindow.c
16343
16344         * gdk/x11/gdkx.h: Remove all the private structs and private datas
16345         that no longer exist. Add declaration of GdkGCX11 object here.
16346         Fix all the macros to still work. 
16347
16348         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
16349         GdkDragContext from the boxed types since they are now GObjects.
16350
16351         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
16352         moved xthickness/ythickness into the instance. GtkStyleClass
16353         functions are now in the standard vtable for GtkStyle, so you have
16354         to create a GObject subclass to write a theme engine.
16355         (gtk_style_copy): fixed a leaked PangoFontDescription
16356         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
16357         can be the standard GObject function.
16358         
16359         * Throughout GTK:
16360         s/style->klass->[xy]thickness/style->[xy]thickness
16361         s/pango_layout_unref/g_object_unref/
16362
16363         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
16364         
16365         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
16366         accessing GDK internals.
16367
16368         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
16369         accessing GDK internals.
16370
16371 2000-06-18  Elliot Lee  <sopwith@redhat.com>
16372
16373         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
16374
16375         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
16376         problem by calculating event position relative to the trough
16377         rather than the slider.
16378         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
16379
16380         * gdk/gdkgc.h: Add GDK_NOR.
16381
16382         * configure.in, Makefile.am: Add modules top level dir
16383         * configure.in: Only use pangox library if building x11 target.
16384         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
16385
16386 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
16387
16388         * gtk/gtkcolorsel.c: Change private class member to be named
16389         private_data throughout the file.
16390
16391         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
16392         private_data to avoid clashing with keyword.
16393
16394 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
16395
16396         * gdk/gdkdnd.h: Add comment to remove warning.
16397
16398 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
16399
16400         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
16401         Byelorussian language; changed the Makefile and file names 
16402         to reflect that.
16403
16404 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
16405
16406         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
16407         rather than gdk_window_hide; this makes things work
16408         correctly if the window is programmatically hidden while
16409         iconified.
16410
16411 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
16412
16413         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
16414         cut and paste typo where wrong pixmap was being
16415         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
16416
16417 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
16418
16419         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
16420         Add helper function to compute format / bytes 
16421         relationship. Use in a couple places to fix up
16422         errors which assume 8 * format.
16423
16424         * gtk/gtkselection.c (gtk_selection_request): Use 32
16425         rather than 8 * sizeof (GdkAtom), to work correctly
16426         on Alpha.
16427
16428 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
16429
16430         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
16431         libgtk.la
16432         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
16433         versions
16434
16435         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
16436         checking macros return NULL since the function has a return value.
16437
16438 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
16439
16440         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
16441         GTK+ from building at all.
16442
16443         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
16444
16445 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
16446
16447         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
16448         gtk/Makefile.am: make it possible to configure gtk for different
16449         targets on the same platform. The library name is now 
16450         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
16451         flag. Only the x11 target compiles right now.
16452         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
16453         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
16454         * gdk/nanox/gdk*generic*: delete generic region code.
16455         * gdk/linux-fb/gdk*generic*: delete generic region code.
16456         * README.nanox: update information.
16457         
16458 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
16459
16460         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
16461         prepend not append. (Pointed out by Brett Hall.)
16462
16463 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
16464
16465         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
16466
16467 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
16468
16469         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
16470         need this later, and this makes sure that the atexit for
16471         glib gets called after that for GDK, so atexits are
16472         properly ordered for object leak checking.
16473
16474         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
16475
16476         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
16477         pango_x_shutdown_display()
16478
16479         * gtk/simple.c (main): Close window on destroy.
16480
16481 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
16482
16483         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
16484         to treat initial creation different from setting with 
16485         regards to the graphics-exposures parameter, so add a parameter
16486         indicating whether this is initial or not.
16487
16488 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
16489
16490         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
16491         to sort of work by adding an extra return_exposes arg
16492         to gdk_event_translate() - it might be better to simply
16493         deprecate the function altogether and force people to rewrite
16494         without it. gdk_window_scroll() handles most of it, and where
16495         gdk_window_scroll() doesn't work, simply redrawing more does.
16496
16497         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
16498         assertion.
16499
16500         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
16501
16502         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
16503         bunch of pretty much useless /* Print debugging info */ comments 
16504         which had drifted away from the code they were commenting.
16505
16506 2000-06-02  Havoc Pennington  <hp@pobox.com>
16507
16508         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
16509         is in working order.
16510         
16511         * gtk/testtext.c: Change to reflect anonymous mark API
16512
16513         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
16514
16515         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
16516         field, which was unused.
16517
16518         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
16519         saves some typing.
16520
16521         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
16522
16523         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
16524         flag on the insertion point and selection bound
16525
16526         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
16527         make mark-manipulation functions take a GtkTextMark* instead of a
16528         mark name.
16529         
16530         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
16531         GtkTextMarkBody; will be used to detect attempts to delete
16532         the permanent marks (insert and selection bound)
16533
16534         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
16535
16536 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
16537
16538         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
16539         flag to on.
16540
16541         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
16542         Honor DOUBLE_BUFFRED_FLAG
16543
16544         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
16545         function to set the DOUBLE_BUFFERED flag.
16546
16547         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
16548         or not exposes done on the widget should be double-buffered.
16549
16550         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
16551         to be what would be expected. (Fixes problem with a
16552         g_return_if_fail() validating a TextDirection enumeration)
16553
16554 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
16555
16556         * gtk/gtkwidget.c: Remove all references to 
16557         offscreen flag which was no longer used.
16558
16559         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
16560
16561         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
16562         for non-null label_widget->parent.
16563
16564         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
16565         which no longer was used.
16566
16567         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
16568
16569         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
16570         for null arguments.
16571
16572         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
16573         check for destroyed windows.
16574
16575 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
16576
16577         * gtk/gtkimmulticontext.c: Add a finalize method and unref
16578         the slave context there.
16579
16580         * gtk/gtkinvisible.[ch]: Make reference counting behavior
16581         identical to GtkWindow.
16582
16583 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
16584
16585         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
16586         pangox to here, so we can write them independent of rendering
16587         system, using GDK primitives.
16588
16589         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
16590         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
16591         since we have a rendering-system independent implementation in
16592         terms of draw_glyphs().
16593         
16594         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
16595         function to render a single line.
16596
16597         * gdk/x11/gdkpango.c: Move the guts of this file mostly
16598         into ../gdkpango.c, which simplifies things, since we
16599         don't have to deal with raw X gc's.
16600
16601 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
16602
16603         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
16604         get the logical attributes for a given GtkTextLine.
16605
16606 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
16607
16608         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
16609         g_locale_get_codeset() to g_get_codeset() change.
16610
16611 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
16612
16613         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
16614         descriptions.
16615
16616         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
16617         the entry.
16618
16619         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
16620         redoing (vastly simplifying) for Pango. Still needs quite
16621         a bit of work. (Size selection is currently poor. List of 
16622         predefined sizes is not a good idea, since all of these
16623         sizes won't necessarily be distinct.)
16624
16625 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
16626
16627         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
16628         CODESET results for LANG=C.
16629
16630 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
16631
16632         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
16633         which takes a stringized pango font description;
16634         ignore the older 'font' and 'fontset' declarations.
16635
16636         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
16637         field with a GdkFont derived via gdk_font_from_description(),
16638         for compatibility. (Should we just remove it entirely?
16639         Probably too much compatibility breakage, but people
16640         should be migrating to the new Pango stuff as quickly
16641         as possible.)
16642
16643 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
16644
16645         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
16646
16647 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
16648
16649         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
16650         redoing; there are some bugs in size allocation right
16651         now, the semi-existant distinction between header / day
16652         fonts was removed, but, with Pango, could actually
16653         be made functional in a nice way.
16654         
16655         * gtk/testcalender: Move calender from examples into this
16656         directory as a test program. (We really need to restrcture
16657         testgtk into a whole directory full of tests for every
16658         widget or functionality group, separated into multiple .c
16659         files.)
16660
16661 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
16662
16663         * gtk/testgtk.c (file_exists): Fix stupid typo that
16664         was keeping RC file from being loaded.
16665
16666         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
16667         RC file font code.
16668
16669 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
16670
16671         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
16672         Add function to load a GdkFont from a PangoFontDescription.
16673
16674 2000-05-29  Tor Lillqvist  <tml@iki.fi>
16675
16676         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
16677         variable should be of type GdkEventPrivate.
16678
16679 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
16680
16681         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
16682         to have any widget for the label, use a GtkLabel widget
16683         to display the text. (Based partially on a patch from
16684         Anders Carlson.)
16685
16686         (Quite a bit of code reorganization - strip 90% of the
16687         guts out of gtkaspectframe and add a single virtual
16688         func to GtkFrameClass - compute_child_allocation.)
16689
16690 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
16691
16692         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
16693         (Removed clist->row_center_offset field because caching
16694         it wasn't saving time or code, added private function
16695         _gtk_clist_create_cell_layout()).
16696
16697 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
16698
16699         * gtk/gtkaccellabel.c: Pangoized.
16700
16701         * gtk/[hv]ruler.c: Pangoized
16702
16703 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
16704
16705         * gtk/gtkfilesel.c (gtk_file_selection_init):
16706         Use gtk_clist_set_column_auto_resize() to remove need
16707         need for manual column width computations.
16708
16709 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
16710
16711         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
16712         ensuring Pango correctness, and considerably simplifying the
16713         code.
16714         
16715         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
16716
16717         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
16718         getting of numbers of lines.
16719
16720         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
16721         to the actual requested width of the lable, not to the wrap
16722         width we set.
16723
16724         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
16725
16726         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
16727           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
16728
16729         * gtk/gtktextview.c: Fix structure inheritance.
16730
16731         * gtk/gtkprogressbar.c: Pangoize.
16732
16733 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
16734
16735         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
16736         in a function.
16737
16738         * gtk/gtktextlayout.c (find_display_line_above): Fixed
16739         bug with computing line tops.
16740
16741         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
16742
16743 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
16744
16745         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
16746         and y_offset coordinates to do what we need now. (The offset between
16747         buffer and layout coordinates has been reintroduced, but is a 
16748         bit different than before.)
16749
16750         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
16751         handle the adjustments ourselves, and scroll as necessary using
16752         the new gdk_window_scroll().
16753         
16754         The advantage of this is that when we are incrementally revalidating,
16755         we are essentially rearranging things around the visible portion
16756         of the screen. With the old setup, the visible portion of the
16757         screen was moved around in the layout, so scrolling and redrawing
16758         to track that caused jumping of the display. Since we now
16759         control the scrolling ourselves, we can suppress this and
16760         only redraw when things actually change.
16761
16762 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
16763
16764         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
16765         the region not just redisplay it after-all, since we store the
16766         cursors in the LineDisplay. (Ugly interactions here between
16767         GtkLayout and GtkTextBTree here.)
16768         
16769         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
16770
16771 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
16772
16773         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
16774         Added function to scroll contents of a window while keeping the
16775         window constant. Works by XCopyArea or guffaw-scrolling depending
16776         on the details of how the window is set up. (guffaw-scrolling
16777         still needs to be filled in.)
16778
16779 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
16780
16781         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
16782         move the debugging that was tied to a global variable
16783         to that.
16784
16785         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
16786
16787         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
16788         validated flag, in line data instead of setting height/width to
16789         -1. This allows us to perform operations with partially invalid
16790         buffer (using the old size for invalid lines) and thus to do
16791         incremental vaidation. Keep height/width aggregates up to date
16792         when deleting text and rebalancing the tree.
16793
16794         * gtk/gtktextbtree.[ch]: Add functions validate a line
16795         (gtk_text_btree_validate_line), and to validate up
16796         to a number of pixels (gtk_text_btree_validate).
16797
16798         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
16799         that indicates that something is changed and a revalidation
16800         pass is needed. Change ::need_repaint to ::changed, and
16801         make it take old and new yranges instead of a rectangle.
16802
16803         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
16804         the line_data_destroy() function from 
16805         gtk_text_btree_add_view() to a virtual function in 
16806         GtkTextLayout
16807
16808         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
16809         since we are handling partial repaints in a different fashion
16810         now.
16811
16812         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
16813         of the selection instead of queueing a repaint on the
16814         entire widget.
16815
16816         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
16817         get_selection_bounds() down to btree, make the function
16818         in buffer a wrapper around the btree function.
16819
16820         * gtk/gtktextlayout.[ch]: Add functions to check if the
16821         layout is valid and to recompute either a range of pixels
16822         aroudn a line or a certain total number of pixels.
16823
16824         * gtk/gtktextlayout.[ch]: Cache a single line display;
16825         now that we only redraw the needed portions, the hit rate
16826         for this cache is quite high.
16827         
16828         * gtk/gtktextview.[ch]: Keep track of the first paragraph
16829         on the screen so that when re-laying-out the buffer, we can
16830         keep the same place. This requires connecting to ::value_changed
16831         on the adjustments
16832
16833         * gtk/gtktextview.[ch]: Add idle functions to revalidate
16834         the buffer after we receive an ::invalidated signal.
16835         
16836 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
16837
16838         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
16839         to max of allocation and layout size, not just to the
16840         layout size.
16841
16842         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
16843         Invalidate window so it gets redrawn properly.
16844
16845         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
16846         to mean the entire window.
16847
16848         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
16849         into public header.
16850
16851 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
16852
16853         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
16854         to get the name of a mark.
16855
16856         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
16857         to find the paragraph from a y position.
16858
16859 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
16860
16861         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
16862         nodes have width/height >= 0, not > 0.
16863
16864 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
16865
16866         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
16867         Add a size_only flag, so when we only need the size, we don't create
16868         useless appearance attributes.
16869
16870         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
16871         duplicate setting of font description.
16872
16873         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
16874
16875 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
16876
16877         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
16878         EXTRA_DIST. It does not work well when the file that
16879         everything depends on is not in the tarball.
16880
16881 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
16882
16883         * gtk/testgtk.c: Some hacks and fixes so that it basically
16884         works when not sitting in the GTK+ build tree.
16885
16886 2000-05-03  Havoc Pennington  <hp@redhat.com>
16887
16888         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
16889         Properly determine the ordering of the tag root and the current
16890         line within the tree. Previous algorithm only worked if the tag
16891         root's immediate parent was the common root of both the current
16892         line and the tag root.
16893
16894 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
16895
16896         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
16897         alignment.
16898
16899         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
16900         the widget text directional dynamically.
16901
16902         * gtk/gtktextview.[ch]: Added functions to get and set default
16903         wrap mode.
16904
16905 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
16906
16907         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
16908         in cursor location computation.
16909
16910 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
16911
16912         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
16913         vadjusment values properly when layout gets smaller.
16914
16915         * gtk/gtktextview.c (need_repaint_handler): Areas being
16916         passed in are far completely inaccurate, and sometimes
16917         too small, so, for now, just queue a redraw on the
16918         whole visible region.
16919
16920 2000-04-25  Havoc Pennington  <hp@redhat.com>
16921
16922         * gtk/gtktextbtree.c (summary_destroy): new function to 
16923         destroy tag summary nodes
16924         (gtk_text_line_next_could_contain_tag): this function was 
16925         totally broken if the line passed in wasn't below the tag
16926         root. Fix it.
16927         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
16928         "wildcard" case, we have to do a linear scan. Blah.
16929         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
16930         we have to do the linear scan
16931         (tag_removed_cb): When a tag is removed from the tag table, 
16932         remove the GtkTextTagInfo node from the btree.
16933         (gtk_text_btree_spew): Implement the spew function, for 
16934         our debugging pleasure.
16935
16936 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
16937
16938         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
16939         a problem with referring to the wrong buffer.
16940
16941         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
16942
16943         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
16944         font description to gtk_style_new() - otherwise things
16945         don't work without a .gtkrc file.
16946
16947         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
16948         tags table if we create it ourself, too.
16949
16950         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
16951         it was conflicting with XKB modifiers.
16952
16953         * gtk/gtktextview.[ch]: Add simple support for 
16954         GtkIMContext.
16955
16956 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
16957
16958         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
16959         with deletion from last commit.
16960
16961 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
16962
16963         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
16964         in the context from the current locale.
16965         
16966         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
16967         context, not hardcoded value.
16968
16969         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
16970         not logical.
16971
16972 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
16973
16974         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
16975         attributes - that doesn't handle partial-glyph selection
16976         properly. Instead use new pango_layout_line_get_x_ranges()
16977         functionality to draw the selection.
16978
16979         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
16980         now properly handles out-of-range coordinates.
16981
16982         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
16983
16984         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
16985         public.
16986
16987         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
16988         for paragraphs opposite to the base direction of the widget.
16989
16990         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
16991
16992         * gtk/gtktextlayout.c: Don't split segments on marks, since that
16993         causes Arabic words to reshape as you cursor through.
16994
16995         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
16996         cursor position when moving vertically with the arrow keys and
16997         scrolling with page-up/page-down. (Arrow keys save only the X,
16998         scrolling saves both X and Y.)
16999
17000         This means you can line-up / line-down or page-up / page-down
17001         without losing your place, and also that moving vertically
17002         with the cursor keys keeps the same X position, not the same
17003         character count:
17004
17005         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
17006         arrow keys move by display lines, not paragraphs.
17007
17008 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
17009
17010         * gtk/gtklayout.c: Make sure that the bin window is at least
17011         as big as the allocation. (Should we also make sure that the
17012         bin window is big enough to completely cover widget->window?)
17013
17014         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
17015         function to get the onscreen rectangle.
17016
17017         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
17018         for offsets in window coordinates.
17019
17020 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
17021
17022         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
17023         confusion.
17024
17025         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
17026         from the widget direction.
17027
17028         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
17029         Add a "direction" attribute.
17030
17031         * gtk/gtktextview.c: global s/tkxt/text_view/.
17032
17033         * gtk/testtext.c: Added long block of text in Arabic, to test out
17034         the direction attributes. (Some problems with the shaping system
17035         for arabic become obvious - like the fact the cursor splits words
17036         into unjoined pieces.)
17037
17038 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
17039
17040         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
17041
17042         * gtk/gtktextlayout.c: Fix up alignment.
17043
17044         * gtk/testtext.c: Add some tests for centering, wrapping.
17045
17046 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
17047
17048         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
17049         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
17050         If we wrote GTK+-specific layout-render function this could just replace
17051         the draw_layout() operation in the vtable.
17052
17053         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
17054         pango_layout_get_cursor_pos() and use that function.
17055
17056         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
17057         is a non-static symbol.
17058
17059         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
17060         with gtk_text_btree_find_line_by_y()
17061
17062         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
17063         renderer that handles GtkTextAppearance attributes.
17064
17065         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
17066
17067           - Move the values in the style that don't affect geometry into a
17068             GtkTextAppearance structure.
17069           - Change underline to take a PangoUnderline and "font" a string
17070             representation of a font description
17071           - Add a "font_desc" attribute which takes a FontDescription structure.
17072
17073         * gtk/gtktextlayout.[ch]:
17074
17075           - Get rid of the display-line list per each line. Instead, we
17076             generate, on demand, a GtkTextLineDisplay structure which]
17077             contains a PangoLayout * and other necesary information
17078             (offsets, cursor locations) for displaying a paragraph.
17079           - Get rid of the code to wrap lines, create display chunks,
17080             etc. Instead, we just go through a paragraph and convert
17081             it into the necessary inputs to a PangoLayout.
17082           - Implement a new attribute type, GtkTextAttrAppearance. This
17083             holds a GtkTextAppearance, and is used to pass colors, 
17084             stipple, etc, through from the layout to the display without
17085             having to use lots and lots of individual attributes.
17086           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
17087             in terms of PangoLayout functions.
17088         
17089         * gtk/gtktextview.c: 
17090          
17091           - Handle passing the necessary PangoContext to the layout
17092           - Some fixups in painting to deal with the automatic backing store
17093             and offsetting of GTK+-1.4
17094           - Add a style_set handler so that the default style reacts
17095             properly to theme changes.
17096         
17097         * gtk/gtktext?*.[ch]: Random code-style fixes.
17098
17099         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
17100
17101 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
17102
17103         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
17104         in original form preparatory to Pango-ization and gdkimcontext-ization.
17105
17106 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
17107
17108         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
17109         so that we can derive from gtkimcontext in language bindings properly.
17110
17111 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
17112
17113         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
17114         Add a compose table including (almost) all the compose combinations
17115         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
17116         data in the XIM implementation.
17117
17118         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
17119         Moved functions to convert keyvalues from and to unicode here from
17120         the win32 port and made them public.
17121
17122 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
17123
17124         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
17125
17126 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
17127
17128         * gtk/gtkimcontext.[ch]: Base class for new input context system
17129
17130         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
17131         the real input context implementation to be loaded from modules
17132         and switched on the fly.
17133
17134         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
17135         context that just does direct keysymbol => unicode translation.
17136
17137         * gtk/gtkentry.[ch]: Start switching editing over to using
17138         GtkInputContext. (No handling of preedit yet.)
17139
17140 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
17141
17142         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
17143         many substitutions. (klass should not be subsituted.)
17144
17145 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
17146
17147         * configure.in: Add checks for Pango
17148
17149         * configure.in docs/Makefile.am: Add test for sgml2html
17150         and allow 'make dist' without building html, but print out
17151         warnings in that case. (For making snapshots)
17152
17153         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
17154         Add Pango libraries and C flags
17155
17156         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
17157         Add function (gdk_draw_layout) to draw a pango layout.
17158
17159         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
17160         for getting Pango contexts for GDK.
17161
17162         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
17163
17164         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
17165         editing.
17166
17167         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
17168         keysym => unicode translations. More languages can be added
17169         here, but real input-method support is needed.
17170
17171         * docs/Changes-1.4.txt: Added note about entry behavior.
17172         
17173         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
17174         to set the reading direction for a widget and the global direction.
17175         Add test which allows toggling the global direction. Two private
17176         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
17177
17178         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
17179           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
17180
17181         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
17182
17183         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
17184         underlining now handled by Pango.
17185
17186         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
17187         to RCStyle and Style. (Having both this and the old font name and GdkFont 
17188         is temporary.)
17189
17190         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
17191         convenience functions for creating contexts and layouts for widgets.
17192
17193         * gtk/testgtk.c: Enhance label tests with multilingual labels.
17194
17195 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
17196
17197         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
17198         titles to be active, even if they aren't visible.
17199         (gtk_clist_column_titles_passive):  Ditto.
17200
17201 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
17202
17203         * gtkmenu.c:
17204         * gtkmenu.h:
17205         * gtktypeutils.h: Spelling/grammar fixes in comments.
17206
17207 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
17208
17209         * gdk/nanox/*.h: add missing header files.
17210
17211 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
17212
17213         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
17214         send_event to TRUE.
17215         (gtk_drawing_area_size): queue a resize.
17216
17217 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
17218
17219         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
17220         the handlers, also invalidate them. bug nailed down by Karl Nelson
17221         <kenelson@ece.ucdavis.edu>.
17222
17223 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
17224
17225         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
17226         "(nil)" foundries, patch from Grigorios Magklis.
17227
17228         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
17229         on non-available fonts, based on a patch by Grigorios Magklis
17230         <maglis@cs.rochester.edu>.
17231
17232 2000-05-18  Elliot Lee  <sopwith@redhat.com>
17233
17234         * gdk/x11/gdkregion-generic.c: If a region does not have any
17235         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
17236         instead of GDK_OVERLAP_RECTANGLE_IN.
17237
17238 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
17239
17240         * gtk/gtklayout.c (gtk_layout_map): Remove references to
17241         OFFSCREEN, as it is no longer necessary.
17242
17243 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
17244
17245         * gtk/gtkcolorsel.c: Patch from David Santiago
17246         <mrcooger@cyberverse.com> to change things so that the 
17247         indicator of the active palette entry is done independently,
17248         not via the focus, since it should always be visible.
17249
17250 2000-05-17  Tor Lillqvist  <tml@iki.fi>
17251
17252         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
17253         refcount leaks as in the X11 backend.
17254
17255         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
17256         cosmetics.
17257
17258         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
17259         backend. Add _gdk_windowing_window_destroy().
17260
17261         * gtk/gtkcolorsel.c: Include correct backend-specific header.
17262         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
17263         either, but these probably do exist on nanox?)
17264         
17265         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
17266         which isn't necessarily defined by <math.h>.
17267
17268         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
17269         ancestry past GtkObject.
17270
17271         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
17272         from DLL on Win32.
17273
17274         * gtk/gtk.def: Update corresponding to recent changes.
17275
17276         * gtk/makefile.{cygwin,msc}: Updates.
17277
17278 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
17279
17280         * docs/Changes-1.4.txt: A bit of editing.
17281
17282         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
17283         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
17284         to clear the update area for the window, and clear it
17285         when hiding a window.
17286
17287         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
17288         if window destroyed.
17289
17290         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
17291
17292         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
17293         gdk_window_destroy() to the generic code, since there was a lot of 
17294         window-system-independent logic it in. Add a function:
17295         
17296          _gdk_window_destroy() 
17297
17298         to the internal API to destroy a window without unreferencing it.
17299         Add a function:
17300
17301          _gdk_windowing_window_destroy()
17302
17303         That does the windowing-system-dependent part of destroying 
17304         the window.
17305
17306 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
17307
17308         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
17309
17310 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
17311
17312         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
17313         Make gtk_widget_shape_combine_mask() keep a reference count on
17314         the pixmap since it keeps it around.
17315
17316 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
17317
17318         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
17319         leak.
17320
17321         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
17322         leak with event filters.
17323
17324 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
17325
17326         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
17327         signal handlers with the right data arguments. (Fixes
17328         some warnings when a widget was repeatedly set as a drag
17329         destination.)
17330
17331         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
17332         window so we can avoid avoid setting the DND properties on the
17333         toplevel window repeatedly.
17334
17335 2000-05-13  Tor Lillqvist  <tml@iki.fi>
17336
17337         * gdk/win32/gdkwin32.h: Define more message types missing from
17338         mingw headers.
17339
17340         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
17341         call gdk_window_destroy_notify(). It was never called. This
17342         probably meant that the GdkWindow was never freed. Thanks Owen for
17343         noticing (!).
17344
17345         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
17346         window as destroyed before calling DestroyWindow(). DestroyWindow()
17347         causes a call to the window procedure (gdk_WindowProc), which
17348         calls gdk_event_translate(), which calls
17349         gdk_window_destroy_notify(), which gets confused unless the window
17350         is set as destroyed.
17351
17352         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
17353         this function to indicate it's win32 only. Put inside #ifdef
17354         G_ENABLE_DEBUG.
17355
17356         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
17357         debugging function. (gdk_event_translate:) Add a default branch
17358         that uses the above function to print debug messages with all
17359         Windows messages symbolically.
17360
17361         * gdk/win32/gdkprivate-win32.h: Declare it, and
17362         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
17363
17364 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
17365
17366         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
17367         public header file.
17368
17369 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
17370
17371         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
17372
17373         * gtk/gtktext.c: made the adjustments no-construct args, simply
17374         provide default adjustments.
17375         (gtk_text_destroy): release adjustments.
17376
17377         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
17378         adjustment argument non-construct.
17379
17380         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
17381         instead of in finalize.
17382         (gtk_progress_get_text_from_value): 
17383         (gtk_progress_get_current_text): 
17384         (gtk_progress_set_value): 
17385         (gtk_progress_get_percentage_from_value): 
17386         (gtk_progress_get_current_percentage): 
17387         (gtk_progress_set_percentage): 
17388         (gtk_progress_configure): ensure an adjustment is present.
17389
17390 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
17391
17392         * gtk/gtkcolorsel.[hc]:
17393         * gtk/gtkcolorseldialog.[hc]:
17394         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
17395         their parent implementation, use bit fields for boolean values, don't
17396         create unused widgets, usage of glib types, braces go on their own
17397         lines, function argument alignment, #include directives etc. etc. etc..
17398
17399         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
17400
17401 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
17402
17403         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
17404
17405         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
17406         of NULL.
17407
17408         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
17409         to freed data.
17410         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
17411
17412         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
17413         to NULL when the toplevel is getting destroyed.
17414         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
17415         (gtk_menu_destroy): 
17416         (gtk_menu_init): store the information of whether we have to
17417         readd the initial child ref_count during destruction in a new
17418         GtkMenu field needs_destruction_ref_count.
17419
17420         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
17421         here, those reading: learn from my mistake! ;)
17422         in order for set_?adjustment to support a default adjustemnt if
17423         invoked with an adjustment pointer of NULL, the code read (pseudo):
17424         if (v->adjustment) unref (v->adjustment);
17425         if (!adjustment) adjustment = adjustment_new ();
17426         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
17427         now imagine the first unref to actually free the old adjustment and
17428         adjustment_new() creating a new adjustment from the very same memory
17429         portion. here, the latter comparision will unintendedly fail, and
17430         all hell breaks loose.
17431         (gtk_viewport_set_hadjustment):
17432         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
17433         after unreferencing it.
17434
17435         * gtk/gtkcontainer.[hc]: removed toplevel registration
17436         functions: gtk_container_register_toplevel(),
17437         gtk_container_unregister_toplevel() and
17438         gtk_container_get_toplevels() which had wrong semantics
17439         anyways: it didn't reference and copy the list.
17440
17441         * gtk/gtkwindow.c: we take over the container toplevel registration
17442         bussiness now. windows are registered across multiple destructions,
17443         untill they are finalized. the initial implicit reference count
17444         users are holding on windows is removed with the first destruction
17445         though.
17446         (gtk_window_init): ref & sink and set has_user_ref_count, got
17447         rid of gtk_container_register_toplevel() call. add window to
17448         toplevel_list.
17449         (gtk_window_destroy): unref the window if has_user_ref_count
17450         is still set, got rid of call to
17451         gtk_container_unregister_toplevel().
17452         (gtk_window_finalize): remove window from toplevel list.
17453         (gtk_window_list_toplevels): new function to return a newly
17454         created list with referenced toplevels.
17455         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
17456
17457         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
17458         adjustment a non-construct arg.
17459         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
17460         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
17461         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
17462
17463         * gtk/gtkrange.c: added some realized checks.
17464         (gtk_range_destroy): get rid of the h/v adjustments in the
17465         destroy handler instead of finalize. remove timer.
17466         (gtk_range_get_adjustment): demand create adjustment.
17467
17468         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
17469         we simply create them on demand now and get rid of them in
17470         the destroy handler.
17471         (gtk_viewport_destroy): get rid of the h/v adjustments in the
17472         destroy handler instead of finalize.
17473         (gtk_viewport_get_hadjustment): 
17474         (gtk_viewport_get_vadjustment): 
17475         (gtk_viewport_size_allocate): demand create h/v adjustment
17476         if required.
17477
17478         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
17479         gtk_widget_real_destroy () functionality.
17480         (gtk_widget_real_destroy): reinitialize with a new style, instead
17481         of setting widget->style to NULL.
17482
17483 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
17484
17485         * gtk/gtkcalendar.c:
17486         * gtk/gtkbutton.c: ported _get_type() implementation over to
17487         GType, either to preserve memchunks allocation facilities,
17488         or because Gtk+ 1.0 GtkTypeInfo was still being used.
17489
17490         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
17491         over. prepare for ::destroy to be emitted multiple times.
17492         removed reference tracer magic. chain into GObjectClass.shutdown()
17493         to emit ::destroy signal.
17494
17495         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
17496         fundamental.
17497
17498         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
17499         cludge.
17500
17501         * gtk/gtksocket.c:
17502         * gtk/gtkplug.c:
17503         * gtk/gtklayout.c:
17504         * gtk/gtklabel.c:
17505         * gtk/gtkargcollector.c:
17506         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
17507         not being a fundamental anymore, and to work with the new
17508         type system (nuked fundamental type varargs clutter).
17509
17510         * gtk/*.c: install finalize handlers in the GObjectClass
17511         part of the class structure.
17512         changed direct GTK_OBJECT()->klass accesses to
17513         GTK_*_GET_CLASS().
17514         changed direct object_class->type accesses to GTK_CLASS_TYPE().
17515
17516         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
17517         GType. made most of the GTK_*() type macros and Gtk* typedefs
17518         simple wrappers around macros and types provided by GType.
17519         most notably, a significant portion of the old API vanished:
17520         GTK_TYPE_MAKE(),
17521         GTK_TYPE_SEQNO(),
17522         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
17523         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
17524         GTK_TYPE_ARGS,
17525         GTK_TYPE_CALLBACK,
17526         GTK_TYPE_C_CALLBACK,
17527         GTK_TYPE_FOREIGN,
17528         GtkTypeQuery,
17529         gtk_type_query(),
17530         gtk_type_set_varargs_type(),
17531         gtk_type_get_varargs_type(),
17532         gtk_type_check_object_cast(),
17533         gtk_type_check_class_cast(),
17534         gtk_type_describe_tree(),
17535         gtk_type_describe_heritage(),
17536         gtk_type_free(),
17537         gtk_type_children_types(),
17538         gtk_type_set_chunk_alloc(),
17539         gtk_type_register_enum(),
17540         gtk_type_register_flags(),
17541         gtk_type_parent_class().
17542         replacements, where available are described in ../docs/Changes-1.4.txt.
17543         implemented compatibility functions for the remaining API.
17544
17545         * configure.in: depend on glib 1.3.1, use gobject module.
17546
17547 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
17548
17549         * TODO.xml: Various updates to current status.
17550
17551 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
17552
17553         * gtk.m4: Print out version when test succeeds.
17554
17555 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
17556
17557         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
17558         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
17559         
17560         (Original triangle color selector from Simon Budig
17561         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
17562         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
17563         Santiago <mrcooger@cyberverse.com>)
17564
17565         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
17566         out into a separate widget.
17567
17568         * gtk/testgtk.c: Add some checkbuttons for toggling palette
17569         and opacity controls.
17570
17571 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
17572
17573         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
17574         snuck in prematurely.
17575
17576 2000-05-07  Tor Lillqvist  <tml@iki.fi>
17577
17578         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
17579         had deleted a ! operator by mistake, which caused
17580         GDK_SELECTION_CLEAR events never to be generated, which caused
17581         only the first copy to the clipboard from an gtkeditable to
17582         actually cause a copy to the Windows clipboard.
17583
17584 2000-05-06  Tor Lillqvist  <tml@iki.fi>
17585
17586         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
17587         compilation, too. Current mingw gcc distributions include the
17588         necessary headers. Also the necessary IIDs are now in mingw
17589         headers/libraries, and own definitions unnecessary.
17590
17591         More hacking on OLE2 DND, still doesn't work though, and thus
17592         ifdeffed out.
17593
17594         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
17595         here, too.
17596
17597 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
17598
17599         * gdk/nanox/*: nano-X port work in progress.
17600         * gdk/simple.c: simple test for Gdk.
17601         * README.nanox: notes about the port: read this first!
17602         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
17603         with nano-X.
17604
17605 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
17606
17607         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
17608         gdk_window_clear() into common code, implement in terms of
17609         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
17610         not redirected to the backing rectangle.
17611
17612 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
17613
17614         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
17615         EXTRA_DIST. It does not work well when the file that
17616         everything depends on is not in the tarball.
17617
17618 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
17619
17620         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
17621         with recursion where process_updates() is called from
17622         an expose handler. (GtkTextView is highly broken in
17623         doing this, but it should work, so it is a nice test
17624         case.)
17625
17626 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
17627
17628         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
17629         handle the case where updates are queued during processing of
17630         updates.
17631
17632 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
17633
17634         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
17635         window is on gdk_display - use that instead of segfaulting.
17636
17637 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
17638
17639         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
17640         broken and require an empty arg, give it to them.
17641
17642 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
17643
17644         * gtk/gtklabel.h: indentation fixes.
17645
17646 2000-05-02  Tor Lillqvist  <tml@iki.fi>
17647
17648         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
17649         draw too narrow or too low arcs, they seem to fail, at least with
17650         some display drivers.
17651
17652         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
17653
17654         Large changes to the Win32 backend, partially made necessary by
17655         the changes to the backend-independent internal
17656         structures. Attempts to implement similar backing store stuff as
17657         on X11. The current (CVS) version of the Win32 backend is *not* as
17658         stable as it was before the no-flicker branch was merged. A
17659         zipfile with that version is available from
17660         http://www.gimp.org/win32/. That should be use by "production"
17661         code until this CVS version is usable. (But note, the Win32
17662         backend has never been claimed to be "production quality".)
17663
17664         * README.win32: Add the above comment about versions.
17665
17666         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
17667
17668         * gdk/gdk.def: Update.
17669
17670         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
17671         presumably be replaced by some more better mechanism as 1.4 gets
17672         closer to release shape.
17673
17674         * gdk/makefile.{cygwin,msc}: Update.
17675
17676         * gdk/win32/*.c: Correct inclusions of the backend-specific and
17677         internal headers. Change code according to changes in these. Use
17678         gdk_drawable_*, not gdk_window_* where necessary.
17679
17680         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
17681         our old DND.
17682
17683         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
17684         to interpret single characters as UTF-8. Thanks to Hans Breuer.
17685         Use correct function name in warning messages.
17686
17687         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
17688         GSourceFuncs gdk_event_prepare and gdk_event_check.
17689         (gdk_event_get_graphics_expose): Do implement, use
17690         PeekMessage. Thanks to Hans Breuer.
17691         (event_mask_string): Debugging function to print an GdkEventMask.
17692         (gdk_pointer_grab): Use it.
17693
17694         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
17695         (old) book I used claimed was Hangul actually is CJK Unified
17696         Ideographs Extension A. Also, Hangul Syllables were missing.
17697         Improve logging.
17698
17699         * gdk/win32/gdkgc-win32.c: Largish changes.
17700
17701         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
17702         g_win32_getlocale() from GLib, and not setlocale() to get current
17703         locale name.
17704
17705         * gdk/win32/gdkprivate-win32.h
17706         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
17707         gdkwin32.h, similarily as in the X11 backend.
17708
17709         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
17710         assignment was used instead of equals in if test. Thanks to Hans
17711         Breuer.
17712
17713         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
17714         the X11 version.
17715
17716         * gdk/win32/makefile.{cygwin,msc}
17717         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
17718         path to the Win32 headers that works also with the mingw compiler.
17719
17720         * gtk/gtkstyle.c: Include <string.h>.
17721
17722 2000-04-26  Havoc Pennington  <hp@redhat.com>
17723
17724         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
17725         replacing the broken gtk_label_get ()
17726
17727 2000-04-15  Havoc Pennington  <hp@pobox.com>
17728
17729         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
17730         this keeps scanner scripts from getting confused.
17731
17732         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
17733         data, rather than void
17734
17735 2000-04-15  Tor Lillqvist  <tml@iki.fi>
17736
17737         * gtk/gtkclist.c (gtk_clist_motion)
17738         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
17739         with is_hint FALSE, get x and y from the event. They used to be
17740         used uninitialised. The Win32 backend never sends motion events
17741         marked as hints. This for instance fixes the annoying file and
17742         font selector behaviour in the Win32 version.
17743
17744 2000-04-14  Tor Lillqvist  <tml@iki.fi>
17745
17746         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
17747         gtk_private_n_signals variables, they are used by some software,
17748         sigh.
17749
17750         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
17751         installation directory from the Registry, where the installer
17752         should have put it.
17753
17754 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
17755
17756         * gdk/x11/Makefile.am: Fix problem with installation directory for
17757         gdkx.h
17758
17759         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
17760         <mrcooger@cyberverse.com> so that when selecting menus with the
17761         mouse, the first item will not be selected, but when selecting
17762         with an accelerator, or navigating left-right on a menubar with
17763         the menus popped up, the first item will be selected.
17764
17765 2000-04-05  Dan Damian  <dand@dnttm.ro>
17766
17767         * configure.in: Added "ro" to ALL_LINGUAS.
17768
17769 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
17770
17771         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
17772         indentation.
17773
17774         * Makefile.am (EXTRA_DIST): Fix typo.
17775
17776         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
17777         to catch gdkconfig.h
17778
17779         * gtk/gtkitemfactory.c: Added FIXME.
17780
17781 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
17782
17783         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
17784         s/return_if_fail/return_val_if_fail/g and add a return value.
17785
17786 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
17787
17788         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
17789         merge slipup.
17790
17791         * gdk/gdkinput.h: Fix missing line from merge.
17792
17793 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
17794
17795         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
17796         instead of gdkprivate.h.
17797
17798 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
17799
17800         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
17801         parent class to correctly be GtkDialogClass.
17802
17803 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
17804
17805         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
17806         toplevel windows and their immediate children by their parents,
17807         since the size of toplevel windows is out of our immediate
17808         control and we don't get any real benefit from trying to track
17809         this size for clipping.
17810
17811         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
17812         for input_only windows.
17813
17814         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
17815         to fix some hacks and make sure that we don't try to set the
17816         background of input only windows.
17817
17818 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
17819
17820         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
17821         the _really_ internal stuff, and leave gdkprivate.h for the fake private
17822         stuff that we've traditionally exposed.
17823
17824         * gdk/**.c: Use gdkinternals.h where appropriate.
17825
17826         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
17827         not include gdkprivate-x11.h, move all stuff of conceivable public
17828         interest into gdkx.h; keep all really private stuff in
17829         uninstalled header gdkprivate-x11.h.
17830
17831         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
17832         image->image_put on windows through a new function _gdk_window_draw_image()
17833         to allow us to do backing store for images. (Sort of ugly)
17834
17835         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
17836         contexts locally so that we can offset them properly when drawing 
17837         onto backing pixmaps.
17838
17839         * gdk/gdkinput.h: Reindented
17840
17841         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
17842         pixmap or color for the window, so we can properly initialize
17843         our double-buffer pixmaps, and also so that we temporarily set
17844         a background of None while scrolling.
17845
17846         * gdk/gdkregion.h: Revise region boolean operators to have an
17847         interface that is actually convenient - switch from creating new
17848         regions on every op, to "methods" that modify existing regions
17849         (A = A OP B). 3 argument forms which allow dest == src, would also
17850         be possible, but the current interfaces seem to map nicely
17851         onto what needs to be done. (There is quite a lot of region
17852         code in GDK now.)
17853
17854         * gdk/gdkregion.h: Add constructor from rectangle and a copy
17855         operator.
17856
17857         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
17858         gdkpoly-generic.h: Copy region code from Xlib, switch it over
17859         to 32 bit coordinates, modify it to be mostly GTK+ style
17860         and to have interfaces that match gdkregion.h.
17861
17862         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
17863         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
17864         create a backing pixmap and redirect all drawing to
17865         that backing pixmap until a matching gdk_window_end_paint().
17866
17867         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
17868         Create a special drawable class for GtkWindow's that 
17869         redirects the drawing to the backing pixmap as necessary
17870         and then calls the real operations in _gdk_windowing_window_class.
17871
17872         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
17873         Store invalid region for each window. Generate expose events for invalid
17874         region in an idle. This replaces both the expose compression
17875         and the redrawing queuing in GTK+. It is both more efficient and
17876         simpler than either one individually and far more so then the
17877         combination.
17878
17879         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
17880         Emulate 32 bit coordinates for windows with 16 bit coordinates
17881         by offsetting drawing, guffaw scrolling techniques and
17882         mapping/unmapping child windows as necessary.
17883
17884         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
17885         where, when invalid regions are processed, the region is stored,
17886         and if expose events come in that are detectably duplicate
17887         the processed exposes (by comparison of event serial numbers),
17888         the stored region is subtracted out of those exposes.
17889
17890         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
17891         regions newly exposed when scrolling or resizing windows.
17892         This, combined with forcing processesing of queued invalidated
17893         regions, gives nice flicker-free scrolling.
17894
17895         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
17896         invalidated regions after every scroll.
17897
17898         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
17899         emulation in GDK. Its, for all practical purposes just a
17900         GtkViewport/GtkFixed hybrid now.
17901
17902         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
17903         (16-bit) structures as necessary instead of just casting.
17904
17905         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
17906         in terms of the structures from gdkregion-generic.c, using appropriate
17907         offsets from GDK to X11 coordinates. Cache clip mask and
17908         origin and ts origin locally and only flush to the server
17909         when drawing, to avoid constantly setting and resetting these
17910         values when offsetting GC's for scrolling and backing pixmaps.
17911
17912         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
17913
17914         * gtk/gtkcontainer.c: Call process_all_updates at end
17915         of resizing to reduce flicker. (Avoids having redraw
17916         lag arbitrarily behind resize under some circumstances)
17917
17918         * gtk/gtkentry.c: Remove old backing store code, and simply take
17919         advantage of the new backing store capabilities of GDK.
17920
17921         * gtk/gtkmain.c: Simple implementation of widget backing
17922         store - simply push a paint while handling each expose.
17923         (Should really be configurable widget for widget.)
17924         
17925         * gtk/gtkwidget.c: Remove all the old complicated redraw
17926         code, and simply invalidate the GDK windows from
17927         gdk_window_queue_clear(), etc. (Sigh, so much carefully
17928         debugged complexity ... gone to the winds.)
17929
17930         Remove all the code for suppressing expose events while
17931         resizes are pending; this isn't needed since the invalid
17932         areas won't be processed until after the resizes are
17933         processed, since they are in a lower priority idle.
17934
17935 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
17936
17937         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
17938         and height of dest rectangle for non-intersecting rectangles.
17939
17940 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
17941
17942         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
17943         for GdkRectangle.
17944
17945 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
17946
17947         * gdk/gdk{events,image,private,types,window}.h
17948          gdk/x11/gdkinputprivate.h: Change all coordinates
17949          from int16 to int. Also, Change width and height from
17950          unsigned to signed to avoid all the stupid C 
17951          signedness bugs.
17952
17953 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
17954
17955         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
17956         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
17957         Add some more detailed checking.
17958
17959         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
17960         New function to retrieve the depth of a drawable.
17961
17962         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
17963         field, reorder fields to save memory. 
17964
17965 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
17966
17967         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
17968         of the background image instead of scaling the background down to
17969         a line.
17970
17971         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
17972         which temporarily set slider to wrong size.
17973
17974         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
17975         queue_clear().
17976
17977 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
17978
17979 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
17980
17981         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
17982
17983 2000-03-17  Tor Lillqvist  <tml@iki.fi>
17984
17985         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
17986         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
17987
17988         * gdk/win32/gdkfont-win32.c
17989         * gdk/win32/gdkproperty-win32.c
17990         * gdk/win32/gdkselection-win32.c
17991         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
17992         now declared such.
17993
17994 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
17995
17996         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
17997
17998 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
17999
18000         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
18001         is called without trapping X errors.
18002
18003 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
18004
18005         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
18006         way into the fontset lists.
18007
18008 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
18009
18010         * gtk/gtkthemes.h: add extern "C" scope.
18011
18012 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
18013
18014         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
18015         to make appends to the list constant. (gtk-guy-990901-0.patch)
18016
18017 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
18018
18019         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
18020         for the typename hash table.
18021
18022 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
18023
18024         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
18025         to make sure we never divide by zero. 
18026         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
18027
18028 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
18029
18030         * gtk/gtkfontsel.c: Apply patch from
18031         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
18032         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
18033
18034         Also, some cleanups in atom handling.
18035
18036 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
18037
18038         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
18039         not GtkWidget.
18040
18041 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
18042
18043         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
18044         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
18045         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
18046         more guint wrap-around bugs before going to bed.
18047
18048 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
18049
18050         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
18051         guint wrap arounds in allocation.width.
18052
18053         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
18054         process untill we fit the allocation given.
18055
18056 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
18057
18058         * gtk/gtkwidget.c:
18059         (gtk_widget_unrealize): guard widget access with ref/unref
18060         around signal emission.
18061         (gtk_widget_hide): same here, but also check its destroyed
18062         state before queueing a resize.
18063
18064 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
18065
18066         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
18067         of gtk_default_insensitive_bg as insensitive base color.
18068
18069         * gtk/gtktext.c (gtk_text_style_set): set the background color according
18070         to the widget's state.
18071         (gtk_text_realize): same here.
18072         (gtk_text_state_changed): same here.
18073         (draw_bg_rect): compare background color against base[] from
18074         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
18075
18076 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
18077
18078         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
18079         grabs are active, unless a delete event is send to the toplevel
18080         of the currently grab holding widget.
18081
18082 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
18083
18084         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
18085         debugging g_print's.
18086
18087 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
18088
18089         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
18090         ever make the scrolled-window requisition ever depend on the 
18091         visibility state of the scrollbars for the AUTOMATIC policy. 
18092         This breaks the GTK+ requisition model, and causes loops.
18093
18094 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
18095
18096         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
18097         the default font to avoid problems with XFree86-4.0 where the
18098         default charset is iso10646-1, not iso8859-1.
18099
18100 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
18101
18102         * acinclude.m4
18103         * config.guess
18104         * config.sub
18105         * ltconfig
18106         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
18107
18108         * gtk/Makefile.am: minor cosmetic consistency tweak
18109
18110 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
18111
18112         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
18113         the activate_time to 0, so that we handle a quick
18114         press/release press/release properly and don't suppress
18115         the second release. (Red Hat bug #7545)
18116
18117 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
18118
18119         * gtk/gtkctree.c (row_delete):
18120         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
18121         bugs with destruction notifier, *always* update internal
18122         structures *before* calling user code.
18123
18124 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
18125
18126         A few more fixes for bug #5487, #2051, #2677.
18127         * gtk/gtkclist.c : 
18128         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
18129         not GDK_BUTTON_PRESS.
18130         (resync_selection): resync only if selection_mode is
18131         GTK_SELECTION_EXTENDED
18132         * gtk/gtkctree.c (resync_selection): same here
18133
18134 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
18135
18136         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
18137         gdk_drag_get_selection() and gtk_menu_detach().
18138
18139         [ From Jeroen Ruigrok/Asmodai ]
18140
18141 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
18142
18143         * gtk/gtknotebook.c (gtk_notebook_size_request): 
18144         page->tab_label can be NULL.
18145
18146 2000-01-25  Havoc Pennington  <hp@pobox.com>
18147         
18148         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
18149         arg is boolean
18150
18151         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
18152
18153         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
18154
18155         * gdk/gdkproperty.c (gdk_property_get): return boolean
18156
18157         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
18158
18159         * gdk/gdkim.c (gdk_im_ready): return boolean
18160
18161         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
18162
18163         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
18164         glib clash, should fix glib)
18165
18166         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
18167         (gdk_get_show_events): return gboolean, and canonicalize 
18168         to TRUE/FALSE
18169
18170         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
18171         colormap is private
18172         (gdk_colors_alloc): gboolean whether to be contiguous
18173         (gdk_color_equal): return gboolean since we are a predicate
18174         and not a qsort() (this looks semi-wrong due to glib breakage,
18175         IMO glib should be fixed)
18176         
18177         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
18178         (gdk_get_use_xshm): return gboolean
18179         (gdk_pointer_is_grabbed): return gboolean
18180
18181         * gdk/gdk.h: Change prototypes to match all the above changes,
18182         and re-run egtk-format-protos as required.
18183
18184 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
18185
18186         * gtk/gtkctree.c (resync_selection): 
18187         * gtk/gtkclist.c (resync_selection):
18188
18189         Return immediately if clist->drag_pos < 0. This is a workaround
18190         for the corrupt state that the clist gets into when a
18191         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
18192
18193         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
18194         
18195         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
18196         variable from recent commit.
18197
18198 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
18199
18200         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
18201
18202 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
18203
18204         * gtk/Makefile.am: prefix all autogenerated source that get build in
18205         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
18206         in builddir. since we subsequently cd into srcdir for autogeneration,
18207         the paths have to be stripped from the target file names, thusly we
18208         use $(@F) as target names now.
18209         put a comment about configure.in's --disable-rebuilds option,
18210         which can be used for non-writable source directories, for development
18211         setups though, srcdir has to be *writable*.
18212
18213 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
18214
18215         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
18216           Finish the job of allowing event to be NULL.
18217           (Fixes bug #4283, reported by Chris Blizzard)
18218
18219         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
18220           things so that the cursor appears on screen, properly
18221           take into account INNER_BORDER.
18222           (Fixes bug #4754, reported by Antonio Campos)
18223
18224 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
18225
18226         * gtk/gtknotebook.c (gtk_notebook_map): Don't
18227           show the tab_label unless it itself is visible.
18228
18229           gtk/gtknotebook.c (gtk_notebook_size_request):
18230           Do a better job of making sure that the visibility
18231           of the tab label corresponds to whether it should
18232           be mapped or not.
18233
18234 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
18235
18236         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
18237           Use the requisition, not the allocation, since the
18238           allocation has not necessarily been computed yet.
18239           (Pointed out by Eugene Osintsev)
18240
18241 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
18242
18243         * gtk/gtkstyle.c (gtk_style_new): Dont' set
18244           style/base[GTK_STATE_INSENSITIVE] both to
18245           gtk_default_insensitive_bg!
18246           (Bug #2187, reported by Jonathan Blandford)
18247
18248         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
18249           Add Alt_L, Alt_R to list of invalid accelerators.
18250           (Bug #3736, reported by Vlad Harchev)
18251
18252 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
18253
18254         * gtk/gtkfilesel.c (open_ref_dir): Fix several
18255         bugs which occured after an attempt to open 
18256         invalid home directory left cmpl_state->reference_dir == NULL.
18257
18258          - completion on files in home directory didn't work
18259          - completion on an empty string caused  segfault
18260
18261          (Bug #3678, reported by Steve Ratcliffe)
18262
18263         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
18264         cut and paste error that was causing scales to
18265         be incorrectly positioned.
18266         (Bug #2956,
18267          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
18268
18269 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
18270
18271         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
18272         when checking for dcgettext, if we've found we needed
18273         it for dgettext.
18274 +
18275 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
18276
18277         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
18278         queue_clear on NO_WINDOW widgets during a reparent,
18279         since at that point the window and widget heirarchies
18280         are out of sync. This stops crashing in some cases
18281         (the scrolled window reparent test, for instance), and
18282         _probably_ won't cause drawing errors.
18283
18284         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
18285         test do what it was supposed to do and be robust against
18286         window closings, etc. (Bug #2443)
18287
18288 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
18289
18290         * gtk/gtkentry.c: Fix return values on mouse events.
18291         (Bug #2686, Sky <seb_sky@yahoo.com>)
18292
18293         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
18294         (pointed out by George Lebl)
18295
18296         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
18297         (From Ettore Perazzoli  <ettore@helixcode.com>)
18298  
18299 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
18300
18301         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
18302         clicks between rows or outside calender area correctly.
18303         (Patch from Damon Chaplin)
18304
18305         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
18306         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
18307           Call destroy function when overwriting existing data. 
18308           (Pointed out by Damon Chaplin)
18309
18310 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
18311
18312         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
18313           which was causing problems on various systems with Xmu.
18314           This hasn't been needed for a very long time.
18315           (Fixes #1185 3167)
18316
18317 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
18318
18319         * gdk/gdki18n.h: Include <ctype.h> when defining
18320           gdk_isw* in terms of is* as a fallback.
18321           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
18322
18323 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
18324
18325         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
18326           realize the widget when it is size allocated!
18327           (old, old bug)
18328
18329         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
18330           Removed unused call to gdk_window_get_size() that
18331           showed up when the above was fixed.
18332
18333 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
18334
18335         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
18336           fix up widget->window when the widget is a
18337           NO_WINDOW container widget.
18338
18339 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
18340
18341         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
18342           to account for the fact that feof() does _not_ 
18343           return TRUE on errors, and thus avoid infinite loops
18344           when trying to use gdk_pixmap_create_from_xpm()
18345           on unreadable values.
18346
18347 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
18348
18349         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
18350
18351 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
18352
18353         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
18354           gdk_gc_set_dashes to take gint8 instead of gchar to
18355           make it clearer that it is _not_ a NULL terminated string.
18356
18357         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
18358           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
18359           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
18360           arguments.
18361
18362 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
18363
18364         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
18365         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
18366         background size relative to our allocation, guard against small
18367         allocations, we may have not yet been size allocated.
18368
18369 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
18370
18371         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
18372         not just version == 3. We implement all 3 + most of 4 - 
18373         (we don't support matching text/plain;charset=iso-8859-1
18374         to a dest that expects text/plain). We'll still advertise
18375         3 to be safe, but any client implementing version >= 3
18376         must interoperate with 3.
18377         
18378 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
18379
18380         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
18381         background and gc members, add a warning in gtk_tooltips_set_color()
18382         indicating that this function is deprecated.
18383
18384 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
18385
18386         * docs/gtkfaq.sgml: FAQ Update:
18387           - Minor cleanups (Emmanuel, me)
18388           - New questions:
18389                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
18390                 How can I retrieve the text from a GtkMenuItem? (timj)
18391                 How do I validate/limit/filter the input to a GtkEntry? (me)
18392                 Memory does not seem to be released when I free the list
18393                         nodes I've allocated (timj)
18394
18395 2000-03-07  Tor Lillqvist  <tml@iki.fi>
18396
18397         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
18398         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
18399         for which it is no use to call GetLastError onWin9x.
18400         (gdk_other_api_failed) New function, for general error
18401         reporting without calling GetLastError.
18402         (gdk_win32_api_failed) OTOH, this function always calls
18403         GetLastError. (gdk_win32_last_error_string) Remove this function,
18404         GLib has the equivalent now.
18405
18406         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
18407         call them with function name, file name and line number in the
18408         arguments.
18409
18410         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
18411         functions.
18412         
18413         * gtk/gtk.def: Add some missing entry points.
18414
18415         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
18416         gtk_paned_set_gutter_size, which don't exist any longer, as void.
18417         
18418         Fixes by Hans Breuer:
18419
18420         * gdk/makefile.msc: Update for debugging.
18421
18422         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
18423         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
18424         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
18425         in the dash_list.
18426
18427         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
18428         the x11 backend.
18429
18430         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
18431
18432         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
18433
18434 2000-03-04  Tor Lillqvist  <tml@iki.fi>
18435
18436         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
18437         just pixel value of background colour.
18438
18439         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
18440         containing code snippet previously duplicated in a couple of
18441         places.
18442         
18443         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
18444         gdk_colormap_color.
18445
18446         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
18447         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
18448         events for autorepeated Shift, Control and Alt keys. Use
18449         gdk_colormap_color.
18450
18451         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
18452         pointer is inside the window the cursor of which we are setting,
18453         call SetCursor immediately.
18454
18455         * gdk/win32/makefile.cygwin
18456         * gtk/makefile.cygwin: If we don't have the build number stamp
18457         file, use zero.
18458
18459         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
18460         gtk_paned_set_gutter_size as empty.
18461
18462         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
18463         
18464 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
18465
18466         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
18467           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
18468           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
18469           docs/gtk_tut.sgml docs/gtk.texi TODO:
18470
18471           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
18472
18473 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
18474
18475         * gtk/gtkcalendar.c: Implement num_marked_dates,
18476           and don't emit mutiple day_selected signals on
18477           month_prev.
18478
18479 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
18480
18481         * docs/make-todo (lineno): let title and logo be configurable so
18482         that GNOME can use this script too.
18483
18484         * TODO.xml: added logourl and a title
18485
18486 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
18487
18488         * TODO.xml: Added some UI items, and an explanatory
18489         comment at the top of the file.
18490
18491 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
18492
18493         * TODO.xml: some updates, added abunch of new entries.
18494         a note for those fiddeling with this file, when done
18495         with it, invoke:
18496         $ ./docs/make-todo TODO.xml >/dev/null
18497         and correct output errors before comitting changes.
18498
18499 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
18500
18501         * TODO.xml: Added XML-structured TODO file.
18502         * docs/make-todo: python script to turn TODO.xml into
18503           pretty XML output. 
18504
18505 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
18506
18507         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
18508         the function to let it draw the seven dots, instead of the old,
18509         much maligned, method.
18510         (draw_dot): New function to draw a dot.
18511
18512         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
18513         to draw the handle inside the border width as opposed to outside.
18514         Use paint function instead of gdk_draw_point.
18515
18516         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
18517         to draw the handle inside the border width as opposed to outside.
18518         Use paint function instead of gdk_draw_point.
18519
18520         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
18521         Change indenting to be more GTK like.
18522
18523 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
18524
18525         * docs/gtk_tut.sgml: New section on GtkCalendar
18526         * examples/calendar: Update example code
18527
18528 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
18529
18530         * docs/gtkfaq.sgml: FAQ Update
18531
18532 2000-02-19  Anders Carlsson  <andersca@gnu.org>
18533
18534         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
18535         to prevent the scroll event to be propagated upwards.
18536
18537 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
18538
18539         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
18540         OwnerGrabButtonMask from button entries for
18541         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
18542
18543         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
18544         to the event mask (which will result in button/press release
18545         being added to the event mask on Unix) so scrolling works
18546         for layouts in scroll windows.
18547
18548         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
18549
18550         Patch from Anders Carlsson  <andersca@gnu.org> to add
18551         a scroll event.
18552
18553         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
18554         scrolling to the "Test Scrolling" part of testgtk.
18555  
18556         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
18557  
18558         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
18559         it against GDK_SCROLL.
18560  
18561         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
18562         way of mouse wheel scrolling.
18563  
18564         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
18565  
18566         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
18567  
18568         * gtk/gtkmain.c: Removed previous mouse wheel hack.
18569  
18570         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
18571         gdk_event_mask_table.
18572  
18573         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
18574         GdkEventScroll handler.
18575  
18576         * gdk/gdkevents.h: Added GdkEventScroll structure.
18577  
18578 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
18579
18580         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
18581         and Anders Carlsson to change the Paned widgets so that they
18582         can be dragged from anywhere along the length. Also change
18583         the way that this is drawn to make this apparent.
18584
18585         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
18586         from George Lebl to check that option_menu->menu is present
18587         before getting history.
18588
18589 2000-02-14  Tor Lillqvist  <tml@iki.fi>
18590
18591         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
18592         before the assertion for non-NULL segment list.
18593
18594         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
18595         Seems that pattern brushes *must* be 8x8 pixels! At least on my
18596         machine, but it might be display driver dependent. Sigh, so make
18597         sure the stipple is that size. Does Windows suck or what?
18598
18599         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
18600         places.
18601
18602 2000-02-13  Havoc Pennington  <hp@pobox.com>
18603
18604         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
18605         refcount to 1
18606         (gdk_cursor_new): init refcount to 1
18607
18608         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
18609
18610 2000-02-13  Tor Lillqvist  <tml@iki.fi>
18611
18612         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
18613         so that we don't have to do unnecessary settings to the HDC.
18614
18615         * gdk/win32/gdkdrawable-win32.c
18616         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
18617         gdk_gc_predraw.
18618
18619         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
18620         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
18621         GDI paths, call WidenPath to get the outline of the stroken path,
18622         and then fill the outline (with the brush that was built from the
18623         stipple).
18624
18625         * gdk/win32/gdkgc-win32.c: Factor out common code from
18626         _gdk_win32_gc_new and gdk_win32_gc_set_values into
18627         gdk_win32_gc_values_to_win32values. Use correct colour for
18628         SetBkColor() (Until now the code actually used a random colour in
18629         the call to SetBkColor()... but that didn't show up as not many
18630         GDI APIs use the background colour. Pattern (opaque stippled)
18631         brushes do.)
18632
18633         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
18634         gdk_win32_api_failed): New functions for error logging.
18635
18636         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
18637         WIN32_API_FAILED to call them, passing function or file name and
18638         line number.
18639
18640         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
18641
18642         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
18643         GdkColor for foreground and background in GdkGCWin32Data.
18644
18645         * gdk/makefile.cygwin: Link in the resource object separately.
18646
18647         * gdk/win32/rc/gdk.rc
18648         * gtk/gtk.rc (New file)
18649         * gdk/win32/makefile.cygwin
18650         * gtk/makefile.cygwin: Update build number in DLLs automatically,
18651         as in GLib.
18652
18653 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
18654
18655         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
18656         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
18657         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
18658         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
18659         parameters given and cursor->ref_count. coding style fixups.
18660
18661         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
18662         not GtkWidget.
18663         
18664         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
18665         fix up widget macros and add _GET_CLASS() variant.
18666         
18667         * gtk/*.c: some GtkType fixups.
18668
18669 2000-02-09  Tor Lillqvist  <tml@iki.fi>
18670
18671         * gdk/win32/gdkproperty-win32.c
18672         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
18673         were reversed.
18674
18675 2000-02-04  Tor Lillqvist  <tml@iki.fi>
18676
18677         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
18678         g_filename_to_utf8 to convert the font names Windows gives us from
18679         whatever is the default codepage to UTF-8.
18680         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
18681         in the other direction.
18682
18683         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
18684         error in debugging output.
18685
18686 2000-02-02  Tor Lillqvist  <tml@iki.fi>
18687
18688         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
18689         and height parameters to gdk_window_clear_area(). Not minus one.
18690
18691 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
18692
18693         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
18694         checks if the widget passed to gtk_drag_get_data() was not the
18695         dest widget.
18696
18697 2000-02-01  Tor Lillqvist  <tml@iki.fi>
18698
18699         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
18700         g_filename_from_utf8 functions (which were added a moment ago to
18701         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
18702         size buffers.
18703
18704         gtk_file_selection_get_filename returns the filename in the C
18705         runtime encoding. It calls g_filename_from_utf8, but copies the
18706         returned string to a static buffer, which is returned. I think
18707         this is better than returning the result from g_filename_from_utf8
18708         directly, which would mean all apps that use it would have to free
18709         the return value. Or should this function care about this issue at
18710         all? Maybe a new function with clearly defined semantics.
18711
18712         * gtk/gtkfilesel.h: Add comment about
18713         gtk_file_selection_get_filename returning the filename in the C
18714         runtime's encoding.
18715
18716         * README.win32
18717         * gdk/gdk.def
18718         * gdk/makefile.{cygwin,msc}
18719         * gtk/gtk.def: Updates.
18720
18721         * gdk/gdkcursor-win32.c: Initialise refcount.
18722
18723 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
18724
18725         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
18726
18727 2000-01-30  Havoc Pennington  <hp@pobox.com>
18728
18729         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
18730         destroy
18731
18732         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
18733
18734         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
18735         implemented in platform-specific code
18736
18737         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
18738
18739         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
18740         underscore in front
18741
18742         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
18743         put an underscore in front
18744
18745         * gdk/gdkcursor.c: new file, implements
18746         gdk_cursor_ref/gdk_cursor_unref
18747
18748         * gdk/gdkcursor.h: Refcount GdkCursor
18749
18750         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
18751
18752 2000-01-29  Tor Lillqvist  <tml@iki.fi>
18753
18754         * gdk/gdkwindow.h
18755         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
18756
18757 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
18758
18759         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
18760         structures to properly inherit from GtkWidget not GtkBin.
18761
18762 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
18763
18764         * gtk+.spec.in: Added lib/gtk+/include/* to %files
18765         (bug #5178 - Peter Wainright)
18766         
18767         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
18768         so that it will be installed.
18769         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
18770
18771 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
18772
18773         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
18774         for the GtkStyleClass vtable const.
18775
18776         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
18777         take a const string argument like GtkTranslateFunc. This will
18778         require changes in use code.
18779
18780 2000-01-19  Tor Lillqvist  <tml@iki.fi>
18781
18782         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
18783         semantics (to mimic the X11 backend, which just calls XClearArea)
18784         is to check for zero width (and height), and in that case use the
18785         window's width minus x (height minus y). This fixes for instance
18786         some redraw problems with gtkclist, which were easily noticeable
18787         in the gtk file selection widget.
18788
18789         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
18790         windows.
18791
18792 2000-01-13  Tor Lillqvist  <tml@iki.fi>
18793
18794         * configure.in
18795         * gdk/Makefile.am
18796         * gdk/x11/Makefile.am
18797         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
18798         (bug #5177).
18799         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
18800         out later.
18801
18802 2000-01-09  Tor Lillqvist  <tml@iki.fi>
18803
18804         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
18805         WM_MOVE for iconified or invisible windows. This fixes various
18806         problems when minimising windows. Thanks to Bernd Herd.
18807
18808 2000-01-05  Tor Lillqvist  <tml@iki.fi>
18809
18810         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
18811         backend's draw_lines method, not draw_points.
18812
18813 2000-01-02  Tor Lillqvist  <tml@iki.fi>
18814
18815         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
18816         before Owen's reorganisation: Don't have queued_events and
18817         queued_tail statics in this file, but use gdk_queued_events and
18818         gdk_queued_tail. This makes exposure event compression work again.
18819
18820         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
18821         seem to be needed?
18822
18823 1999-12-30  Tor Lillqvist  <tml@iki.fi>
18824
18825         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
18826         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
18827         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
18828         doesn't do anything.
18829
18830         * gdk/gdk.def: Add gdk_xid_table_insert.
18831
18832         * gdk/win32/gdkprivate-win32.h
18833         * gdk/win32/gdkevents-win32.c
18834         * gdk/win32/gdkinput-win32.c
18835         
18836         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
18837         extension_events field in the GdkWindowWin32Data struct. Use only
18838         the extension_events field in GdkWindowPrivate. Previously one was
18839         set, and the other one tested, which broke tablet
18840         functionality. Thanks to Keishi Suenaga for pointing this out.
18841
18842 1999-12-18  Tor Lillqvist  <tml@iki.fi>
18843
18844         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
18845         When handling a single character (text length == 1), don't handle
18846         it as if it was UTF-8.
18847
18848 1999-12-11  Tor Lillqvist  <tml@iki.fi>
18849
18850         * Makefile.am: Distribute README.win32.
18851         
18852         * gdk/Makefile.am
18853         * gdk/win32/Makefile.am: Distribute Win32 files.
18854
18855         * gdk/makefile.msc: New file.
18856
18857         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
18858         after label).
18859
18860         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
18861         gdk_error_code as GDKVAR, as they are referred outside GDK.
18862
18863         * gdk/win32/makefile.msc: Update.
18864
18865         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
18866         tweaks. Check only if at least one of those Unicode subrange bits
18867         we care for is set. If no code page bits are set, guess (wildly)
18868         based on the charset.
18869
18870         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
18871
18872         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
18873         non-NULL.
18874
18875         * gtk/gtkdnd.c
18876         * gtk/gtklayout.c
18877         * gtk/gtkplug.c
18878         * gtk/gtkselection.c
18879         * gtk/gtksocket.c
18880         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
18881         appropriate. There must be a cleaner way to handle this?
18882
18883         * gtk/gtkrc.c: Must include windows.h on Win32.
18884
18885         * gtk/testgtk.c: No need to include gdkx.h.
18886
18887         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
18888
18889 1999-12-07  Tor Lillqvist  <tml@iki.fi>
18890
18891         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
18892         the rbearing is set to the same as the width, but this should be
18893         fixed.
18894
18895 1999-12-06  Tor Lillqvist  <tml@iki.fi>
18896
18897         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
18898         function. If Windows doesn't tell us what Unicode subranges a font
18899         covers, guesstimate based on the codepages it covers. This will
18900         hopefully help those Windows versions or fonts that don't give us
18901         any useful Unicode subrange information with GetTextCharsetInfo.
18902         Call this function in gdk_font_load_internal.
18903
18904         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
18905         minor changes.
18906
18907 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
18908
18909         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
18910         New function, long needed.
18911
18912 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
18913
18914         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
18915         only_if_exists argument of gdk_atom_intern to
18916         bool.
18917
18918 1999-11-25  Tor Lillqvist  <tml@iki.fi>
18919
18920         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
18921         Fix two copy&paste errors.
18922
18923         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
18924         win32 has changed.
18925
18926         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
18927         GdkWin32SingleFont struct.
18928
18929         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
18930         subranges of loaded fonts. Clear font signature first, in case
18931         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
18932         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
18933
18934         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
18935         Unoffset clip region.
18936
18937 1999-11-23  Tor Lillqvist  <tml@iki.fi>
18938
18939         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
18940         event->any.window before calling filter functions.
18941
18942 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
18943
18944         * gtk/gtkgamma.h: Adapt cast macros to standard.
18945
18946 [ Merges from 1.2 ]
18947
18948 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
18949
18950         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
18951         If translation does not include a '/', use entire
18952         translation instead of crashing.
18953
18954 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
18955
18956         * docs/gtk_tut.sgml:
18957         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
18958
18959 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
18960
18961         * gtk/gtkselection.c (gtk_target_list_remove): Use
18962         g_list_remove_link, not g_list_remove.
18963
18964         [ From Geert Bevin <gbevin@thunderstorms.org> ]
18965         
18966 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
18967
18968         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
18969         statement upon unselection (how the heck did that slip in?).
18970
18971 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
18972
18973         * gtk/gtktext.c (gtk_text_freeze): 
18974         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
18975         in frozen state (and aparently crashes). patch provided by Anders
18976         Melchiorsen <and@kampsax.dtu.dk>.
18977
18978 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
18979
18980         * fix insensitive default/focus widget activation,
18981         reported by Matt Goodall <mgg@isotek.co.uk>.
18982
18983         * gtk/gtkwindow.c (gtk_window_key_press_event): 
18984         (gtk_window_activate_default):
18985         (gtk_window_activate_focus):
18986         return handled=FALSE for actiavtion of insensitive default
18987         widgets. return handled=TRUE for activation of insensitive
18988         focus widgets. don't activate in either case.
18989
18990 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
18991
18992         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
18993         and $glib_cflags to match library order and in the
18994         theory that an old version of GLib is more likely to
18995         be in the include directory for X then vice-versa.
18996         (Bug #2776)
18997
18998 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
18999
19000         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
19001         to determine the locale for fontsets, not LC_MESSAGES;
19002         the user may want English messages with a handling
19003         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
19004         will still be broken) (Bug #2891)
19005
19006 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
19007
19008         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
19009
19010 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
19011
19012         * gtk/gtkrc.ko: Changed the Korean default fontset.
19013
19014 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
19015
19016         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
19017         where when scrolling to the left or top double exposes
19018         were done, causing major slowdowns.
19019
19020 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
19021
19022         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
19023         names to lowercase and alphanumeric, before looking
19024         them up.
19025
19026         * gtk/Makefile.am: Install codeset variant gtkrc files
19027         with normalized names.
19028
19029 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
19030
19031         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
19032         popup menus when the menu is already visible, but its parent
19033         is still hidden, (happens after tornoff window got hidden).
19034
19035 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
19036
19037         * gtk/Makefile.am (install-data-local): Fix
19038         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
19039         deleted, causing error messages on install.
19040
19041 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
19042
19043         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
19044         the handle as well, since we now sometimes ignore
19045         exposes on the handle while resizing.
19046
19047 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
19048
19049         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
19050         extra g_free introduced in one of the last one or two 
19051         commits.
19052
19053 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
19054
19055         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
19056         consistent, put each style that a gtkrc.* file creates
19057         in a unique namespace, remove old files before installing.
19058
19059 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
19060
19061         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
19062         gtk_rc_init is called multiple times. (Yes, people who
19063         do that have bugs in their code.)
19064
19065 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
19066
19067         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
19068         Remove it since it's generated by the Makefile anyway
19069
19070 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
19071
19072         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
19073         device->info.axes for core pointer.
19074
19075 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
19076
19077         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
19078         idle_id, to deal with obsolete, broken C libraries.
19079
19080 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
19081
19082         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
19083         allocation->x/y twice!
19084
19085         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
19086         consistent with gtk_vscale_pos_trough().
19087
19088 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
19089
19090         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
19091         be queueing a resize on a toplevel container between
19092         the time we show it and when we map it. So, we need
19093         to test GTK_WIDGET_VISIBLE() for toplevels, and only
19094         use GTK_WIDGET_DRAWABLE() for child windows.
19095
19096 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
19097
19098         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
19099         (fixes bug #2144)
19100
19101 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
19102
19103         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
19104         container DRAWABLE (instead of VISIBLE), so we don't queue
19105         resizes on non-toplevel containers.
19106
19107 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
19108
19109         * gtk/gtkselection.[ch]: Make the data argument
19110         const guchar *.
19111
19112 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
19113
19114         * gtk/gtkwindow.c: Try to behave sensibly if 
19115         the focus widget is the window itself. (Should
19116         we allow this at all?)
19117
19118 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
19119
19120         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
19121         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
19122         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
19123         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
19124         in prototypes and implementations consistent (Tomas Ogren).
19125
19126         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
19127         before the widget is unparented (reported by damon).
19128
19129         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
19130         since we provide unsigned data anyways.
19131
19132 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
19133
19134         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
19135         the call to gtk_tooltips_layout_text() until later.
19136
19137         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
19138         Call gtk_widget_ensure_style() before using the style.
19139
19140 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
19141
19142         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
19143         for old widgets that don't propagate draws to all
19144         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
19145
19146 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
19147
19148         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
19149         for a redraw but just the widget that requested the resize.
19150
19151 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
19152
19153         * gtk/gtkcontainer.c: added new widget level method
19154         gtk_container_set_reallocate_redraws() and a GtkContainer flag
19155         reallocate_redraws : 1 to reflect the setting, exported this through
19156         the argument system as a boolean ::reallocate_redraws.
19157
19158         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
19159         on the widget because the allocation changes, do so as well for
19160         widget->parent if the parent has reallocate_redraws set to TRUE.
19161         with that containers requesting reallocation redraws get automatically
19162         redrawn if their children changed allocation (this unfortunately
19163         affects also other children that didn't change allocation, but we
19164         cannot work around that before 1.3).
19165
19166 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
19167
19168         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
19169         _and_ height are >0 (not _or_).
19170
19171         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
19172         instead of gtk_container_queue_resize(), which is a core gtk internal
19173         function (must have been on crack when i queued that).
19174
19175         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
19176         we can check more reliably if we want to discard expose events.
19177         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
19178         flag.
19179         
19180         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
19181         we simply trust these events. for deciding whether to discard exposes,
19182         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
19183         
19184 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
19185
19186         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
19187         queues of areas that are completely off screen.
19188
19189         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
19190         logic for handleboxes.
19191
19192         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
19193         check on width/height.
19194
19195 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
19196
19197         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
19198         we are fine with using $@ the way we do (if we actually encounter
19199         brokeness with $@ in VPATH builds because of additional path prefixes,
19200         we need to use $(@F) actually).
19201
19202 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
19203
19204         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
19205         short lived bugs, that would allow language bindings to do surgeries
19206         to our guts.
19207
19208 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
19209
19210         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
19211         where comparison was being done against an uninitialized
19212         value causing intermittant results depending on
19213         compiler flags. Also make it clearer that we aren't
19214         ever initializing the child as 0x0 (though this will
19215         be caught in gtk_widget_size_allocate())
19216
19217 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
19218
19219         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
19220         gtk_window_unset_transient_for() call after we do checks
19221         involving the old transient parent.
19222         [ From Lance Capser <lmc@cyberhighway.net> ]
19223
19224 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
19225
19226         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
19227         an empty file.
19228
19229 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
19230
19231         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
19232         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
19233
19234 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
19235
19236         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
19237         `$@' is valid only in the build dir, not after we've done 
19238         `cd $srcdir'.  Also use `test -f' instead of less portable
19239         `test -e'.
19240
19241 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
19242
19243         * gtk/gtktext.c (correct_cache_insert): Rewrite
19244          for simplicity, and hopefully correctness.
19245          (Fixes bug #1322, which was a segfault when
19246           on some insertions with the properties around
19247           the insertion set up just wrong.)
19248
19249         * gtk/gtktext.c (gtk_text_adjustment): When we receive
19250          a "changed" signal, clamp the new value to the adjustment
19251          bounds to avoid segfaulting if someone tries to change
19252          the adjustment to a bogus value. (Bug #1795)
19253
19254 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
19255
19256         * gtk/gtkmain.c: Ignore unexpected destroy notifies
19257         for children, for toplevel windows handle them
19258         like delete_event.
19259
19260         * gtk/gtkplug.c: Add an unrealize handler so that
19261         we unref plug->socket_window when we are done
19262         with it.
19263
19264 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
19265
19266         * gtk/gtktext.c (clear_area): Fix stupid signedness
19267          problem that was causing background to sometimes
19268          be misaligned.
19269
19270 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
19271
19272         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
19273         
19274         * gtk/gtkmenu.c (gtk_menu_position): Make
19275          sure we never position menus with negative x, y,
19276          since gtk_widget_set_uposition() can't handle that.
19277
19278         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
19279          Modify the positioning code a bit so that we always
19280          put the top-left corner onscreen. (This is for
19281          UI reasons, gtk_menu_position() now takes care of
19282          gtk_widet_set_uposition() brokeness.)
19283
19284 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
19285
19286         * gtk/Makefile.am: fixed up things for -jx, x > 1.
19287
19288 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
19289
19290         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
19291           RC style that is passed in. The lack of the ref
19292           before was a bug. If people worked around this
19293           bug, this will introduce a slight memory leak
19294           in their code. The code should typically look like:
19295
19296             rc_style = gtk_rc_style_new ();
19297             [...]
19298             gtk_widget_modify_style (widget, rc_style);
19299             gtk_rc_style_unref (rc_style);
19300
19301         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
19302           the style if it was already set.
19303
19304         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
19305           style if it was set before.
19306
19307 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
19308
19309         * gtk/testgtk.c (main): Add a check to see if we
19310           are being run from the correct directory and
19311           to quit nicely if we are not.
19312
19313         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
19314           static.
19315
19316 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
19317
19318         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
19319
19320         * gtk/gtkwindow.c:
19321         queue resizes unconditionally (gtk_widget_queue_resize will figure
19322         what to do if the window is not realized).
19323         (gtk_window_move_resize): only recenter the window
19324         for GTK_WIN_POS_CENTER_ALWAYS.
19325         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
19326         the same way as GTK_WIN_POS_CENTER.
19327
19328 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
19329
19330         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
19331         with (!(info->last_flags & GDK_HINT_POS)) instead of
19332         (!info->last_flags & GDK_HINT_POS).
19333
19334         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
19335         new_height unconditionally, because we use these values even if
19336         !default_size_changed && !hints_changed.
19337         comented the (default_size_changed || hints_changed) case with
19338         respect to resize rejects from the window manager.
19339
19340         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
19341         in the zvt condition hack, since this includes the window hints, set
19342         the hints after the handling_resize case.
19343
19344         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
19345         window is initially shown with to the geometry.
19346
19347 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
19348
19349         * gtk/gtkwindow.c (gtk_window_move_resize):
19350         s/size_changed/default_size_changed/g so i know what's
19351         really going on (frying brain on smaller flame now).
19352
19353 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
19354
19355         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
19356         we have size_changed upon handling_resize. this is a gross
19357         workaround for the broken zvt widget and should be removed in
19358         1.3 again (search for FIXME).
19359         Owen provided an accurate comment for this:
19360
19361         /* We could be here for two reasons
19362          *  1) We coincidentally got a resize while handling
19363          *     another resize.
19364          *  2) Our computation of size_changed was completely
19365          *     screwed up, probably because one of our children
19366          *     is broken. It's probably a zvt widget.
19367          *
19368          * For 1), we could just go ahead and ask for the
19369          * new size right now, but doing that for 2)
19370          * might well be fighting the user (and can even
19371          * trigger a loop). Since we really don't want to
19372          * do that, we requeue a resize in hopes that
19373          * by the time it gets handled, the child has seen
19374          * the light and is willing to go along with the
19375          * new size. (this happens for the zvt widget, since
19376          * the size_allocate() above will have stored the
19377          * requisition corresponding to the new size in the
19378          * zvt widget)
19379          *
19380          * This doesn't buy us anything for 1), but it shouldn't
19381          * hurt us too badly, since it is what would have
19382          * happened if we had gotten the configure event before
19383          * the new size had been set.
19384          */
19385
19386 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
19387
19388         * gtk/gtkrc.c: deal properly with the fact that RC
19389           style lists may include rc styles more than once.
19390
19391         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
19392           unused static function.
19393
19394         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
19395           stack of directories of RC files currently being
19396           parsed and implicitely add them to pixmap path.
19397           
19398           This fixes a bug where the directory would get
19399           appended then overwritten by pixmap_path declarations.
19400
19401           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
19402
19403         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
19404           theme's exit function. (Patch from Peter Wainwright,
19405           bug #1454)
19406
19407         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
19408           Add a destroy() handler to take care of removing
19409           group for menu item. (Fixes bug #1197)
19410
19411         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
19412           in warning message.
19413
19414 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
19415
19416         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
19417         roundtrip to figure window's width and height, since we know that
19418         anyways from widget->allocation.
19419
19420 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
19421
19422         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
19423           the hints after we request the new size.
19424
19425 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
19426
19427         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
19428           GTK_WIDGET_REALIZED() assertion - we can compute the
19429           hints before we are realized.
19430
19431         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
19432           hint changing so that we have a value of hints_changed
19433           when we decide whether to constrain the window size.
19434
19435         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
19436
19437         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
19438         change back to G_MAXINT.
19439
19440 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
19441
19442         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
19443         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
19444         contain uncluttered values.
19445         (gtk_window_compute_hints): simply assert that window is realized
19446         and that geometry_info is valid, since we rely on this anyways.
19447         (gtk_window_constrain_size): major cleanups to the code.
19448         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
19449         for the base size, instead of the minimums. use 32767 as max width
19450         and height (like in gtkwindow.c) instead of G_MAXINT.
19451
19452 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
19453
19454         * cleaned up the GtkContainer.need_resize flag handling mess, we
19455         only need to force resize requests when we were prematurely
19456         realized, or our widget tree was modified when we were temporarily
19457         hidden. handling these cases directly upon showing the window (i.e.
19458         while the GdkWindow is still unmapped) avoids the need to wait for
19459         a configure event response and therefore makes the GUI more snappier
19460         and avoids blank windows during the roundtrip.
19461
19462         * gtk/gtkwidget.c:
19463         (gtk_widget_hide): 
19464         (gtk_widget_show): don't queue resizes on toplevels, they know how
19465         to deal with matters.
19466
19467         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
19468         flag directly for not visible resize containers and spare us unecessary
19469         signal emissions.
19470
19471         * gtk/gtkwindow.c:
19472         (gtk_window_realize): if we need to enforce premature size allocation,
19473         queue a container resize so we are correctly resized later on.
19474         (gtk_window_init):
19475         (gtk_window_size_request):
19476         don't freak around with the ->need_resize flag,
19477         gtk_container_queue_resize() will care about that.
19478         (gtk_window_show):
19479         handle initial resizing issues here, we can handle matters better in
19480         this place, especially since we know that our GdkWindow is still
19481         unmapped.
19482         (gtk_window_move_resize):
19483         don't care about ->need_resize at all.
19484         handle size changes properly that occoured while we waited for a
19485         configure event.
19486
19487 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
19488
19489         * gtk/gtkwidget.c (gtk_widget_set_uposition):
19490         * gtk/gtkwindow.[hc] (gtk_window_reposition):
19491         Move the hint setting code from gtk_widget_set_uposition
19492         to here; set the hints so that we respect any previously
19493         set geometry hints.
19494
19495         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
19496         change the window hints here or move the window here,
19497         let that happen in gtk_window_move_resize().
19498
19499 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
19500
19501         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
19502         to already queued resizes (and therefore redraws) on a widget, check
19503         its anchestry as well.
19504
19505         * gtk/gtkcontainer.c:
19506         (gtk_container_queue_resize): clear resize widgets for resize
19507         containers before aborting prematurely. this is especially important
19508         for toplevels which may need imemdiate processing or their resize
19509         handler to be queued.
19510         (gtk_container_dequeue_resize_handler): added new internal function for
19511         gtkwindow.c.
19512
19513         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
19514         configure event, take possible changes in window position into account
19515         as well.
19516         if we request a new window size, queue up a resize handler that will
19517         last until the configure event response arrives.
19518         combined the ->need_resize case (initial show) with the general size
19519         (hints) changed case and added even more comments.
19520         if !auto_shrink, only revert to the old allocation if the new size
19521         is smaller than the current allocation.
19522
19523 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
19524
19525         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
19526                            gtk_window_set_geometry_hints
19527                            gtk_window_set_default_size):
19528         When hints are set, queue a resize so that the hints will
19529         be eventually reset on the toplevel.
19530
19531         * gtk/gtkwindow.c (gtk_window_show): Use
19532         gtk_window_compute_default_size(). Clear the need_resize flag
19533         on the initail map so that we don't unnecessarily trigger the
19534         resize code.
19535
19536         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
19537         into separate functions. Compare the hints we are setting
19538         with what we set last time so that we can accurately
19539         tell when we need to reset the hints.
19540
19541         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
19542         function to figure out the size from requisition
19543         and default_size.
19544
19545         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
19546         from fvwm to constrain a size to the geometry hints.
19547
19548         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
19549         to compare two sets of geometry hints.
19550
19551         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
19552         from gtk_window_set_hints(), just compute the hints,
19553         don't set them.
19554
19555         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
19556         code from gtk_window_move_resize() to separate function,
19557         rationalize a bit.
19558
19559 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
19560
19561         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
19562         structure into a new private structure.
19563
19564         * gtkrc.c: Split GtkRcStyle into public/private.
19565         In the private part, add a list of pointers to the
19566         RcStyle lists this RcStyle participates in.
19567
19568         * gtkrc.c: When a RcStyle is free, remove all
19569         lists referencing it from the 
19570         realized_style_ht hash, and free those lists.
19571         
19572         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
19573         gtk_rc_init(), since that adds the default styles
19574         to the list of parsed RC files again.
19575
19576         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
19577         
19578 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
19579
19580         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
19581         checks that ensure that a widget's allocation is at least 1 in width
19582         and height. (GNOME note: this doesn't affect old panel code anymore,
19583         because GtkSocket will request width and height of at least 1 since
19584         Fri Jul 23).
19585
19586         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
19587         allocated yet (happens if the user realizes the window prematurely),
19588         size request and allocate it.
19589         (gtk_window_size_allocate): guard against guint underflows.
19590
19591 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
19592
19593         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
19594         in gtk_built_sources, so gtk.defs gets built prior to all other
19595         sources.
19596
19597 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
19598
19599         * gtk/Makefile.am:
19600         invoke indent on gtkmarshal.*. 
19601         rewrote source generation rules, use COPYING as oldest source tag for
19602         a piggyback rule to generate all sources from (don't touch it ;).
19603         major cleanups, strip spaces on build rules for GNU Make.
19604
19605         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
19606         source and target files from commandline arguments. don't invoke indent.
19607
19608 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
19609
19610         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
19611         notebook after switch to avoid drawing problems.
19612         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
19613         
19614         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
19615         show them instead. 
19616         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
19617
19618 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
19619
19620         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
19621         notebook after switch to avoid drawing problems.
19622         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
19623         
19624         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
19625         show them instead. 
19626         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
19627
19628 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
19629
19630         * gtk/gtkwindow.c:
19631         we use window->need_resize from configure_event now, to indicate that
19632         the gtkwindow should keep its allocation (e.g. because the user resized
19633         the window through window manager handles). resize_count is now reliably
19634         used to figure whether we got the allocation we requested from the
19635         window manager.
19636         configure events get queued as resizes now, the real stuff (size
19637         computation and allocation) now only goes on in gtk_window_move_resize().
19638         GtkWindow's requisition now contains its *real* requisition (like all
19639         other widgets), *not* taking usize into account.
19640         geometry_info->last_{width|height} is now updated from set_hints() only
19641         so it always contains the last hints we set for the window manager.
19642         made some event handlers return TRUE instead of FALSE.
19643         the overall code should be much more straight forward now, and the
19644         significant code portions are accompanied by comments now.
19645         (gtk_window_set_hints):
19646         removed requisition argument and made it
19647         fetch the requisition through gtk_widget_get_child_requisition.
19648         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
19649         does that now.
19650         (gtk_window_show):
19651         ensure that the widget is realized before calling 
19652         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
19653         ensure that we got properly size requested and allocated before
19654         realization.
19655         (gtk_window_configure_event):
19656         ignore plain window moves, or reallocate the widget tree through the
19657         resize queue otherwise.
19658         (gtk_window_move_resize):
19659         mostly rewrote this function to figure window manager hints more
19660         reliably, coalesce window moves and resizes to reduce configure events
19661         and do actuall size allocations.
19662
19663 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
19664
19665         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
19666         that have a resize pending, because a redraw is already queued for them.
19667
19668         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
19669         hack to clear resize_widgets.
19670
19671         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
19672         for resize containers prior to size allocation. (this is also a bit
19673         ugly, but avoids side effects for stopped emissions and is thus more
19674         reliable).
19675         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
19676
19677         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
19678         function from gtk_tooltips_expose, as we connect to ::expose_event
19679         *and* ::draw now.
19680
19681 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
19682
19683         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
19684         checks.
19685         (gtk_target_list_unref): Likewise.
19686
19687         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
19688
19689 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
19690
19691         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
19692         guard against division by zero. (Fixes bug #1339)
19693
19694 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
19695
19696         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
19697         Prevent the trivial leak of information of allowing
19698         word motion when the entry is not visible.
19699
19700 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
19701
19702         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
19703         modality to error dialog as well as confirmation dialogs.
19704         (Bug #1803, reported by Rosanna Wing Sze Yuen)
19705
19706 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
19707
19708         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
19709         tree->view_lines.
19710         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
19711
19712         * gtk/Makefile.am (install-data-local): Solaris apparently
19713         has various troubles with ln -f; use rm first instead.
19714         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
19715
19716 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
19717
19718         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
19719         use `cp' followed by `rm' (the `rm' was already there).
19720
19721 July 30, 1999 Elliot Lee <sopwith@redhat.com>
19722         
19723         * configure.in: Fix autoconf warnings about cross compilation by
19724         trying to provide sane defaults for AC_TRY_RUN.
19725         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
19726         put them into $(srcdir) when generated. Also add a dependency of
19727         gtksignal.h on gtkmarshal.h for -j builds. 
19728         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
19729
19730 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
19731
19732         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
19733         GDK_THREADS_{LEAVE,ENTER} pair.
19734         (From Paul Fisher <pnfisher@redhat.com>)
19735
19736 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
19737
19738         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
19739         width and height are always >0 (owen).
19740
19741 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
19742
19743         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
19744         change that assured that a widget's allocated with and height are
19745         always >1, since this breaks *buggy* panel code. unfortunately this
19746         back-breaks the gimp's color selector.
19747
19748         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
19749         allocation is always >0 in width and height, before sending the
19750         configure event; this is a *gross* hack to get the gimp back to work.
19751         
19752         * marked both cases with TODO-1.3
19753
19754 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
19755
19756         * gtk/gtktext.c: Don't display wrap indicators when
19757         text is not editable and word wrap is on.
19758
19759 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
19760
19761         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
19762         option menus here as they are not derived from menu shell, assure that
19763         the option menu has a menu we can add items to.
19764
19765 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
19766
19767         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
19768         width/height to (gint) before calculations and check against < 0 to
19769         avoid guint wraparounds.
19770
19771 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
19772
19773         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
19774         width and height is never zero. sanity check both dimensions against
19775         32767 and issue a warning if the allocation is greater than that.
19776
19777 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
19778
19779         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
19780         to g_main_pending() as well.
19781
19782 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
19783
19784         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
19785         call to g_main_iteration() - since that will regrab
19786         GTK+ lock to process events.
19787
19788 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
19789
19790         * gtk/gtkwindow.c
19791         - Regularize with the rest of GTK+ by making widget->requisition
19792           not reflect the set_usize()
19793         - Always recompute geometry hints, then check if they
19794           changed before sending them to the X server. The
19795           previous checks for changes would fail in a number
19796           of circumstances. 
19797
19798 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
19799
19800         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
19801
19802 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
19803
19804         * gtk/gtkdnd.c:
19805         - Code cleanups
19806         - Instantaneously update on modifier key presses
19807         - Allow cancellation of the drag with Escape.
19808
19809 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
19810
19811         * gtk/testgtk.c (create_handle_box): Set the policy
19812         to auto_shrink - otherwise the appearance is rather
19813         strange when flipping between horizontal and vertical.
19814
19815 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
19816
19817         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
19818         (gtk_window_set_default_size): don't change a value if it's < 0.
19819         queue a resize.
19820
19821 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
19822
19823         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
19824
19825 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
19826
19827         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
19828         add an extra "/" when concating "/" + filename.
19829         (From Matt Grossman <mattg@oz.net>)
19830
19831 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
19832
19833         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
19834         for fg_gc if we set it for drawing pixmap.
19835
19836 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
19837
19838         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
19839         
19840         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
19841         already set, call old engine's destroy function and
19842         unref the old engine.
19843
19844 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
19845
19846         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
19847
19848 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
19849
19850         * gtk/gtkaccelgroup.h: mark certain functions as internal.
19851
19852 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
19853
19854         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
19855         expand behaviour changed.
19856
19857         * gtk/gtklabel.c (gtk_label_set_pattern):
19858         (gtk_label_set_justify):
19859         (gtk_label_set_line_wrap):
19860         don't bother invoking queue_clear, the reallocation does
19861         that for us, always free_words so the upcoming resize will
19862         relayout the label's contents.
19863
19864 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
19865
19866         * applied argument implementation patches from Elena Devdariani
19867         <elena@cogent.ca>.
19868
19869         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
19870         ::space_style, ::relief
19871         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
19872         * gtk/gtkpreview.c: ::expand
19873         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
19874         * gtk/gtknotebook.c: ::homogeneous
19875         * gtk/gtklabel.c: ::wrap
19876         * gtk/gtklist.c: ::selection_mode
19877         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
19878         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
19879         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
19880         * gtk/gtkclist.c: ::sort_type
19881         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
19882         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
19883
19884 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
19885
19886         * gtk/gtkstyle.c: Removed ill-thought-out part of last
19887         comment.
19888
19889 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
19890
19891         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
19892         counting right when we have to attach a new style
19893         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
19894
19895         * gtk/gtkstyle.c: Documented the refcounting
19896         peculularities of gtk_style_attach.
19897
19898 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
19899
19900         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
19901         window types.
19902
19903         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
19904         of GTK_TOPLEVEL for creating the window.
19905
19906 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
19907
19908         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
19909         the last argument (reported by Per Winkvist).
19910         
19911 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
19912
19913         Fixes for invisible XOR lines (Frank Loemker
19914         <floemker@TechFak.Uni-Bielefeld.DE>)
19915         
19916         * gtk/gtkclist.c (gtk_clist_realize): Always use
19917         a non-zero pixel for GDK_XOR.
19918
19919         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
19920         Use GDK_INVERT instead of GDK_XOR.
19921
19922 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
19923
19924         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
19925         signals if h/voffsets differ from adjustment values.
19926         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
19927
19928 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
19929
19930         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
19931         ::selection-done emissions up to the topmost menu shell.
19932
19933 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
19934
19935         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
19936         the user data on the window before destroying it.
19937
19938         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
19939         unrealize handler to take care of destroying 
19940         notebook->panel properly. 
19941         (Bug #1198 - Morten Welinder <terra@diku.dk>)
19942
19943         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
19944         of g_new and g_realloc to stop memory leak. (Actually,
19945         we could just use g_realloc(), but I'm not 100% sure
19946         that is portable).
19947         (Bug #1196 - Morten Welinder <terra@diku.dk>)
19948
19949 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
19950
19951         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
19952
19953         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
19954         for fontsets.
19955
19956         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
19957         with bin/button confusion.
19958
19959 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
19960
19961         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
19962         and show how preselection of radio items is done.
19963
19964 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
19965
19966         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
19967         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
19968         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
19969         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
19970         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
19971         * gtk/gtktable.c (gtk_table_attach): 
19972         * gtk/gtklist.c (gtk_list_insert_items): 
19973         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
19974         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
19975         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
19976         * gtk/gtkbin.c (gtk_bin_add): 
19977         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
19978         * gtk/gtkfixed.c (gtk_fixed_put): 
19979         * gtk/gtklayout.c (gtk_layout_put):
19980         general fixups to container_add logic. always realize child if
19981         child->parent is realized, only map the child and queue a resize
19982         if child and child->parent are both visible.
19983
19984 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
19985
19986         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
19987         instead of gtk_container_foreach to walk and unrealize children, so
19988         composite children get also unrealized.
19989         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
19990         (gtk_widget_map): assert that the widget is visible (basic constrain).
19991         (gtk_widget_real_map): assert that the widget is realized (basic
19992         constrain).
19993
19994 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
19995
19996         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
19997
19998 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
19999
20000         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
20001         file for iso-8859-2 locales.
20002
20003         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
20004
20005 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
20006
20007         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
20008          (Pointed out by andy@rz.uni-karlsruhe.de and others).
20009          Remove some suspicious and useless lines. 
20010
20011 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
20012
20013         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
20014         width,height = 0, 0 to mean - here to edge of window,
20015         instead of -1, -1, since the former is all we support.
20016
20017 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
20018
20019         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
20020         when removing from quit_functions list.
20021
20022 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
20023
20024         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
20025
20026 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
20027
20028         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
20029          When redrawing characters on non-visible entry, use appropriate
20030          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
20031
20032 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
20033
20034         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
20035         from drag coordinates.
20036         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
20037         use drag_dest_cell.
20038
20039         * gtk/gtktree (drag_dest_cell)
20040         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
20041         (Bug #1129)
20042
20043 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
20044
20045         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
20046         translate_* fields.
20047         (gtk_item_factory_finalize): invoke translate_notify independant from
20048         translate_data.
20049         (gtk_item_factory_set_translate_func): likewise.
20050         (gtk_item_factory_destroy): only remove ifactory pointer from those
20051         widgets that belong to us (stupid me).
20052
20053 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
20054
20055         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
20056         rc_style list when lookup succeeeds.
20057
20058 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
20059
20060         * gtk/gtkctree.c (resync_selection): 
20061         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
20062         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
20063         bug.
20064
20065 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
20066
20067         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
20068         Add some missing GDK_THREADS_ENTER()/LEAVE around
20069         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
20070
20071 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
20072
20073         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
20074         rather than emit_by_name.
20075
20076         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
20077         on the widget across multiple signal emissions.
20078         (gtk_editable_delete_text): same here.
20079         (gtk_editable_class_init): set widget_class->activate_signal after
20080         editable_signals[ACTIVATE] has been created.
20081
20082 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
20083
20084         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
20085         position here prematurely -- we might not have the
20086         right ->min_position and ->max_position yet.
20087
20088 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
20089
20090         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
20091         Add error traps so if the other end of the connection
20092         dies, we survive.
20093
20094         * gtk/gtkselection.c (gtk_selection_notify): Clean
20095         up properly when selection property retrieval fails.
20096         
20097         * gtk/gtkselection.c (gtk_selection_request): Correctly
20098         reject SelectionRequest notifies where the handler
20099         returns no data.
20100
20101 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
20102
20103         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
20104         when we've previously highlighted.
20105
20106         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
20107         emit two "drag_leave" signals for Motif drops.
20108
20109         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
20110         back the correct status messages when dropping from
20111         Motif onto a proxy window that is rejecting the
20112         drop.
20113
20114 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
20115
20116         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
20117         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
20118         to compare two argument values. added gtk_arg_to_valueloc() to set a
20119         variable from an arg through its location (pointer).
20120
20121         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
20122         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
20123         as gfloat*, uchars are collected as guchar*, ints are collected as
20124         gint*, etc...
20125
20126 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
20127
20128         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
20129         Include <string.h> instead of <strings.h>.
20130
20131         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
20132         (actually, a lot more duplicate includes occur if
20133          you trace through the sequence of #include's)
20134         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
20135         
20136 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
20137
20138         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
20139         gtk-a-higuti-990322-[0-3]
20140
20141         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
20142         that was causing -DX_LOCALE not to work.
20143
20144         * gtk/gtkrc.c (gtk_rc_init):
20145         X_LOCALE will never have LC_MESSAGES defined
20146
20147 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
20148
20149         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
20150         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
20151
20152         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
20153         left/right as well (gtk-michael-980726-0.patch.gz).
20154
20155         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
20156         for pointer values, use gchar instead of char. fixed uline allocation
20157         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
20158         chunks instead of G_ALLOC_ONLY.
20159         (gtk_label_size_request): always alter requisition as passed and leave
20160         widget->requisition alone.
20161         (gtk_label_set_text): allow NULL strings.
20162         (gtk_label_new): likewise.
20163
20164 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
20165
20166         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
20167
20168 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
20169
20170         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
20171         *and* mapped (i.e. drawable).
20172         (gtk_bin_expose): only send exposes to drawable children.
20173
20174         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
20175         (gtk_box_expose): only send exposes to drawable children.
20176
20177         * gtk/gtkhscale.c (gtk_hscale_draw): 
20178         * gtk/gtkvscale.c (gtk_vscale_draw):
20179         hm, this is an ugly one. we first compute the size of our trough area
20180         here (window relative) and then check intersection with the draw_area
20181         which is parent relative because we're a NO_WINDOW widget, so we need
20182         to offset the trough area by allocation.x and allocation.y before the
20183         check. (this must not be done for the background area though, since
20184         that's already computed parent relative).
20185
20186 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
20187
20188         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
20189         unrealize title buttons.
20190
20191 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
20192
20193         * gtk/gtkclist.c (gtk_clist_column_title_passive)
20194         (gtk_clist_column_title_active): 
20195         only connect/disconnect to GtkWidgetClass::event to block mouse events.
20196
20197         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
20198         zero initialize event, removed superfluous gdk_window_get_pointer call
20199
20200         * gtk/gtklist.c (gtk_list_vertical_timeout)
20201         (gtk_list_horizontal_timeout): removed superfluous
20202         gdk_window_get_pointer call
20203
20204 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
20205
20206         * plugging problems reported by "Bruce Mitchener, Jr."
20207         <bruce@puremagic.com> due to a purify session.
20208
20209         * gtk/gtkstyle.c:
20210         (gtk_style_ref): 
20211         (gtk_style_unref): assert ref_count to be > 0.
20212
20213         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
20214         the requisition.
20215         (gtk_clist_set_shift): likewise.
20216
20217         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
20218         adjustments.
20219
20220         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
20221         event before sending it and set send_event to TRUE (which needs to
20222         be done for *all* synthesized events).
20223         (gtk_list_vertical_timeout): likewise.
20224
20225         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
20226         leaks.
20227
20228         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
20229         to TRUE when synthesizing events.
20230
20231 [ *** end of merges from 1.2 *** ]      
20232         
20233 1999-11-21  Tor Lillqvist  <tml@iki.fi>
20234
20235         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
20236         (or copied from gdkconfig.h.win32 on Win32, sigh).
20237
20238         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
20239
20240         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
20241
20242         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
20243
20244         * gdk/gdkconfig.h.win32: New file.
20245
20246         * gdk/win32/makefile.cygwin: Build just a static archive here.
20247
20248         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
20249         for the DLL from the static archive built above.
20250
20251         * gdk/gdk.def: Moved here from the win32 subdirectory.
20252
20253         * gdk/win32/*: Adapt for the changed private struct organisation.
20254
20255         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
20256
20257 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
20258
20259         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
20260         for wheel mice (buttons 4 and 5).
20261
20262 1999-11-18  Tor Lillqvist  <tml@iki.fi>
20263
20264         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
20265         drawables use just the pixel field in the foreground and
20266         background GdkColor of the GdkGC.
20267
20268         gdk_gc_set_{fore,back}ground() are called in the GIMP with
20269         GdkColors containing uninitialized (red,green,blue) fields, and
20270         just the pixel field filled in, and furthermore in the
20271         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
20272         It thus turns out that we really don't need to have the full
20273         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
20274         it later to have just the pixel values.
20275
20276 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
20277
20278         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
20279
20280 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
20281
20282         * docs/gtkfaq.sgml: threads example from Erik Mouw.
20283         New question on GtkLabel background colors.
20284
20285         * docs/gtk_tut.sgml:
20286           - Correct the example code callback
20287             function definitions.
20288           - Update the gtkdial example code, from Frans van Schaik.
20289           - Update setselection.c to current API.
20290
20291         * examples/Makefile examples/*/*.c: Update to code
20292         listed in tutorial.
20293
20294 1999-11-10  Tor Lillqvist  <tml@iki.fi>
20295
20296         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
20297         subrange table (from the "Developing International Software for
20298         WIndows 95 and Windows NT" book) was missing the Hangul syllable
20299         block... Get the loaded font's charset correctly.
20300
20301         (Note that this, and the other *-win32.c files, still really are
20302         the old ones, the win32 subdirectory is not ready for compilation
20303         yet after the reorg.)
20304
20305 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
20306
20307         * gtk/gtkclist.c: Fix off-by-one bug in parameter
20308         check.
20309
20310 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
20311
20312         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
20313         on results of XQueryDeviceState().
20314
20315 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
20316
20317         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
20318         we need to accesss only ->children. We need an accessor
20319         for the children.
20320
20321         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
20322         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
20323         to get rid of gdkx.h include.
20324         
20325         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
20326         and random references to 'None'.
20327
20328         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
20329         Get rid of unused #include <gdk/gdkx.h>
20330
20331         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
20332         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
20333         gdkconfig.h.
20334
20335 1999-11-08  Tor Lillqvist  <tml@iki.fi>
20336
20337         * gdk/win32/gdkdraw.c
20338         * gdk/win32/gdkfont.c
20339         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
20340         following yesterday's changes. (Unrelated to Owen's reorg.)
20341
20342 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
20343
20344         * gdk/x11/gdkinput-gxi.c: Add missing include,
20345           fix GdkWindowPrivate => GdkDrawablePrivate.
20346
20347         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
20348
20349         * gdk/x11/Makefile.am (xinput_sources): Add missing
20350         backslash to fix building with --with-xinput=none
20351
20352 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
20353
20354         Move all X specific code into the x11/ directory.
20355         Aside from shuffling things around, did the following:
20356
20357        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
20358          gdk_arg_context_* - a simple argument parsing system
20359          in the style of popt.
20360
20361        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
20362          gdk/x11/gdkprivate-x11.h:
20363          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
20364          add ->klass and ->klass_data fields. The klass_data
20365          field points to an auxilliary structure that is
20366          windowing system dependent.
20367
20368        * gdk/gdkfont.c: Make most of the measurement functions
20369          simply wrappers around gdk_text_extents().
20370
20371        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
20372          _gdk_font_strlen() function that hides the weird
20373          behavior in gtk+-1.[02] where a string is interpreted
20374          differently for 8-bit and 16-bit fonts.
20375
20376        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
20377          to store common code for synthesizing double/triple
20378          press events.
20379         
20380        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
20381          Make all the function that modify an existing GC
20382          simply wrappers around gdk_gc_set_values().
20383          
20384        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
20385          for throwing out later.
20386
20387        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
20388          GdkImagePrivate and GdkColormapPrivate to have a
20389          windowing system dependent part (GdkFontPrivateX etc.)
20390          that "derives" from the system-independent part.
20391
20392        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
20393          Got rid of the included-source-files for XInput in
20394          favor of automake conditionals. (Which didn't exist
20395          when XInput support was originally added.)
20396
20397        * gdk/gdkrgb.c: Remove the visual id from the debugging
20398          statements since that is X11 specific; print out
20399          type/depth info instead.
20400          
20401
20402 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
20403
20404         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
20405         loading duplicates of hashed fonts.
20406
20407         * gdk/gdk.c (gdk_keysym_convert_case): rename
20408         gdk_XConvertCase to gdk_keysym_convert_case, allow
20409         results to be NULL in the GTK+ style.
20410
20411         * gdk/gdkcompat.h: Started compatibility header
20412         for renames.
20413
20414 1999-11-07  Tor Lillqvist  <tml@iki.fi>
20415
20416         * gdk/win32/gdkprivate.h: New font private structures, related to
20417         fontsets.
20418
20419         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
20420         gdk_font_list_free(). On X11, will just be wrappers to
20421         XListFonts() and XFreeFontNames(). On Win32, the code previously
20422         in gtkfontsel.c is now here.
20423
20424         New function gdk_font_xlfd_create(). On X11 will get the FONT
20425         property of the font (for GDK_FONT_FONTs), or call
20426         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
20427         builds a XLFD style name from the font information in the LOGFONT
20428         struct(s).
20429
20430         New function gdk_font_xlfd_free(), which correspondingly frees the
20431         string returned by gdk_font_xlfd_create().
20432
20433         Implement fontsets on Win32. Add a function that iterates over a
20434         wide char string and calls a callback function for each substring
20435         of wide chars from the same Unicode subrange (and thus probably
20436         available in the same real font).
20437
20438         Improve the XLFD emulation a bit.
20439
20440         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
20441
20442         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
20443         Beta3, WM_IME_CHAR messages don't seem to contain the composed
20444         multi-byte char as with the Active IMM on Win9x. Oh well, handle
20445         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
20446         ImmGetCompositionStringW() to get the composed Unicode chars.
20447
20448         * gdk/win32/gdkgc.c
20449         * gdk/win32/gdkdraw.c: Changes needed because of the font private
20450         struct changes.
20451
20452         * gdk/win32/gdk.def: Add the new functions.
20453
20454 1999-11-04  Tor Lillqvist  <tml@iki.fi>
20455
20456         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
20457         get the Platform SDK to get <dimm.h>.
20458
20459         * gdk/win32/gdkevents.c: More event handling fixes and
20460         simplification. Never generate motion events with is_hint true. We
20461         used to do that on bogus grounds earlier. Windows sends
20462         WM_MOUSEMOVE messages on button events even if the mouse hasn't
20463         moved, ignore these.
20464
20465         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
20466
20467         * gdk/win32/gdkglobals.c
20468         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
20469         the TrackMouseEvent function, and use it.
20470
20471         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
20472         char before calling WideCharToMultiByte in order to get a string
20473         for the window title.
20474
20475         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
20476
20477         * gdk/win32/gdk.def: Remove obsolete functions.
20478
20479         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
20480         /nodefaultlib and /defaultlib switches.
20481
20482         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
20483
20484 1999-10-31  Tor Lillqvist  <tml@iki.fi>
20485
20486         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
20487         EuroSign).
20488
20489         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
20490         same type as GdkWChar, especially on Win32.
20491
20492         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
20493
20494         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
20495         before passing to Windows GDI for drawing etc. Convert to the
20496         system default codepage before passing to Windows as window
20497         titles.
20498
20499         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
20500         support changing input locale on the fly.
20501
20502         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
20503         on-the-fly changes. Convert incoming characters from the current
20504         codepage to Unicode (and then to a UTF-8 multi-byte string) based
20505         on the current input language. Use keysym<->Unicode mapping tables
20506         and functions borrowed from xterm sources.
20507
20508         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
20509         editions of Win9x, use the ActiveX-based Active IMM (Input Method
20510         Manager) if available. IMEs and the Active IMM are available under
20511         the disguise of Chinese, Korean and Japanese support for IE and
20512         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
20513         support is present in all editions (as long as you install it).
20514
20515         Call DispatchMessage from gdk_events_queue() (and thus
20516         gdk_WindowProc()), instead of duplicating the code in
20517         gdk_WindowProc().
20518
20519         Reworked the grab handling and propagation code, factored out
20520         duplicated code snippets into separate functions. Other cleanups,
20521         too.
20522
20523         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
20524         the <dimm.h> header describing the Active IMM.
20525
20526         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
20527         just do the same as for "single" fonts.
20528
20529         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
20530         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
20531         the new keysyms from gdkkeysyms.h.
20532
20533         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
20534         fontset, so that gtkentry uses wide characters.
20535
20536         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
20537         GTk+'s system directory "gtk+", not "gtk".
20538
20539 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
20540
20541         * docs/gtkfaq.sgml: FAQ update
20542
20543 1999-10-21  Tor Lillqvist  <tml@iki.fi>
20544
20545         * gdk/win32/gdkprivate.h: Add more font private data.
20546
20547         * gdk/win32/gdkfont.c
20548         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
20549         fonts and strings. Now works much better. You still have to
20550         have a correct font selected, though. No fontset emulation yet.
20551
20552 1999-10-19  Tor Lillqvist  <tml@iki.fi>
20553
20554         * gtk/maketypes.awk: Use G_OS_WIN32.
20555
20556         * gtk/gtk.def: Add some missing entry points. Also some non-public
20557         ones, but PyGTK porter claims to need them.
20558
20559         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
20560         built-in type generation.
20561
20562 1999-10-14  Tor Lillqvist  <tml@iki.fi>
20563
20564         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
20565         GDK_FONT_FONT fonts (which is all we have for now, we don't
20566         emulate fontsets). The X11 version uses plain XDrawString in that
20567         case, too. The string passed to gdk_draw_text_wc seems to be in
20568         fact (at least, when used by gtkentry and gtktext) either in a
20569         single-byte charset, or a DBCS. Not Unicode.
20570
20571         This fixes the problem in gtkfontsel, where even if you had
20572         selected a font with a non-Latin1 charset (windows-greek, for
20573         instance), the preview still used Latin-1 glyphs.
20574
20575         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
20576         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
20577         (gdk_font_load): Recognize the demibold etc weights, even if we
20578         don't have the corresponding constants in the headers.
20579         (gdk_font_hash_insert): Use same hash mechanism as in the X11
20580         version. Should save font resources a bit, when we don't have
20581         multiple HFONTs for the same font.
20582
20583         * gdk/win32/gdkprivate.h: Add the names field as in the X11
20584         version.
20585
20586 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
20587
20588         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
20589         X values
20590
20591 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
20592
20593         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
20594         layout support (as mentioned on
20595         http://www.jcinteractive.com/gnome-ui/software/widgets/)
20596
20597 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
20598
20599         * gtk/fnmatch.c
20600         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
20601
20602 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
20603
20604         * configure.in (ALL_LINGUAS): Added Galician (gl)
20605
20606 1999-10-05  Tor Lillqvist  <tml@iki.fi>
20607
20608         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
20609
20610         * gdk/win32/gdkcompat.c: New file, actually provide an
20611         implementation for the deprecated functions. (Just temporarily.)
20612
20613         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
20614
20615         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
20616
20617         * gdk/win32/gdk.def gtk/gtk.def: Updates.
20618
20619 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
20620
20621         * configure.in: Added "uk" to ALL_LINGUAS.
20622         
20623 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
20624
20625         * configure.in: correct checking for BeOS check
20626
20627         * gdk/gdktypes.h
20628         * gtk/fnmatch.c
20629         * gtk/gtkfilesel.c
20630         * gtk/gtkitemfactory.c
20631         * gtk/gtkmain.[ch]
20632         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
20633
20634 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
20635
20636         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
20637         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
20638         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
20639         by Bulgarian). 
20640
20641 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
20642
20643         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
20644         Fix a reference to window_private->destroyed.   
20645
20646         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
20647         (ugly) setting of an internal GdkWindow member to use
20648         a _slightly_ cleaner macro.
20649
20650         * gdk/gdkprivate.h: Split GdkWindowPrivate into
20651         GdkDrawablePrivate and GdkWindowPrivate.
20652         Add extra macros for accessing GDK_DRAWABLE_ components.
20653
20654         * *.[ch]: Massive adjustments for the above, use the
20655         new macros in a lot of places.
20656
20657 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
20658
20659         * gdk/gdktypes.h: Make GdkDrawable the base type,
20660         not GdkWindow.
20661
20662 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
20663
20664         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
20665
20666 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
20667
20668         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
20669
20670 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
20671
20672         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
20673         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
20674
20675         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
20676
20677         * docs/gtk-config.1: Now autogenerated.
20678         * docs/Changes-1.4.txt: started
20679         
20680 1999-10-03  Tor Lillqvist  <tml@iki.fi>
20681
20682         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
20683         to #ifdef also here.
20684
20685         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
20686         Owen did to the X11 backend.
20687
20688         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
20689         ScrollWindowEx when blitting inside a window, it can't be correct
20690         in the general case.
20691
20692         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
20693         WM_GETMINMAXINFO is easier.
20694
20695         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
20696         depth equal to the bitspixel value, not the visual's depth.
20697
20698         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
20699         to 24 even if the bitspixel value is 32.
20700
20701         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
20702         need to check for depth==32 when bpp==32, depth will always be 24.
20703
20704 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
20705
20706         * docs/Changes-1.4.txt: Started
20707         
20708         * gtk/Makefile.am (gdk_headers): Include all the new headers.
20709
20710         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
20711         
20712         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
20713         into C file.
20714         
20715         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
20716         header to gdkinputprivate.h.
20717
20718         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
20719         unused since before 1.2.
20720
20721 1999-09-30  Tor Lillqvist  <tml@iki.fi>
20722
20723         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
20724         expand possible hex escapes in the font family (put there by
20725         logfont_to_xlfd if the font name isn't a legal XLFD font family,
20726         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
20727         On Win32, add hex escapes here, too.
20728
20729 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
20730
20731         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
20732         to #ifdef GDK_WINDOWING_X11.
20733
20734 [ Merges from gtk-1-2 ]
20735
20736 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
20737
20738         * configure.in: fixed "GNU Make" check to pass with new make version
20739         3.77.95.
20740
20741 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
20742
20743         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
20744         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
20745         AM_PATH_GTK() macros don't get confused by the -pre1.
20746
20747 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
20748
20749         * configure.in (REBUILD): Change check for perl5
20750           to check explicitely for v >= 5.002. (5.001
20751           does not work with our scripts.)
20752
20753 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
20754
20755         * configure.in: evaluate $PERL for the perl version check. added
20756         --disable-rebuilds to give the user an option to completely disable
20757         any source autogeneration rules.
20758
20759 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
20760
20761         * configure.in: evaluate $ac_make when checking for GNU Make.
20762
20763 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
20764
20765         * docs/Makefile.am: added generation.txt.
20766
20767         * Makefile.am: require automake 1.4, build README from README.in and
20768         INSTALL from INSTALL.in in dist-hook.
20769         
20770         * README.in:
20771         * INSTALL.in: new files to autogenerate README and INSTALL from.
20772
20773         * configure.in: figure whether we have GNU Make
20774
20775         * docs/generation.txt: minor additions/corrections.
20776
20777 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
20778
20779         * docs/gtkfaq.sgml: FAQ Update
20780
20781 July 30, 1999 Elliot Lee <sopwith@redhat.com>
20782         
20783         * configure.in: Fix autoconf warnings about cross compilation by
20784         trying to provide sane defaults for AC_TRY_RUN.
20785
20786 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
20787
20788         * ltconfig
20789         * ltmain.sh: upgrade to libtool 1.3.3
20790
20791 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
20792
20793         * INSTALL: Indicate that the --with-glib= configure
20794         time flag is unsupported.
20795
20796 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
20797
20798         * docs/generation.txt: Added a file that gives
20799         documenation about the autogeneration process for
20800         various autogenerated files.
20801         
20802 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
20803
20804         * configure.in (LIBS): Look for libgmodule in the
20805         right location.
20806
20807 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
20808
20809         * docs/gtk_tut.sgml: Removed references to
20810         code examples in my directory on gtk.org as
20811         they should all be in the tutorial now.
20812
20813         * docs/gtk_tut.sgml: Added sources for dial-test
20814         and scribble-xinput programs that were previously
20815         missing.
20816
20817 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
20818
20819         * TODO: Added entry about menu keyboard navigation, removed
20820         some finished items.
20821
20822 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
20823
20824         * acinclude.m4: Standardize on func_dgettext
20825         not func_gettext, so that the checks for dgettext
20826         actually are paid attention to.
20827
20828 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
20829
20830         * configure.in (LIBS): Add $INTLLIBS into $LIBS
20831         directly, rather than repeating the checks for
20832         gettext.
20833
20834         * INSTALL: Added information about gettext and
20835         NLS support.
20836
20837         * acinclude.m4 (LIBM): Check for dgettext, not
20838         just gettext. This should hopefully fix things wrt
20839         systems with old versions of GNU gettext installed.
20840
20841 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
20842
20843         * configure.in (LIBS): Look for libgmodule in the
20844         right location.
20845
20846 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
20847
20848         * autogen.sh: add --enable-maintainer-mode
20849
20850         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
20851
20852 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
20853
20854         * docs/gtk-config.1.in:
20855           docs/Makefile.am:
20856           configure.in: gtk-config is now generated.
20857
20858         * docs/gtk-config.1: Removed, now generated.
20859
20860 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
20861
20862         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
20863         handle CreateNotify itself, still put out a debuging message for
20864         --gdk-debug=events. made the ReparentNotify debugging message more
20865         verbose.
20866         wrap xcoords translation for ConfigureEvents into an error trap,
20867         a destroy event may already be pending, and in that case, the
20868         actuall coordinate values are not at all critical.
20869
20870 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
20871
20872         * gdk/gdkcc.c: Stop leaking the color_hash all over
20873         the place. Simplify and improve the logic.
20874
20875 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
20876
20877         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
20878         for prototypes and function implementations consistent (reported
20879         by Tomas Ogren).
20880
20881 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
20882
20883         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
20884         send_event set in debugging output.
20885         (gdk_compress_exposures): default initialize the event so we don't
20886         operate on bogus values (namely send_event).
20887
20888 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
20889
20890         * gdk/gdkwindow.c: When we receive an unexpected
20891         destroy notify on one of our windows, don't just
20892         warn about it, also mark our windows as destroyed.
20893
20894 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
20895
20896         * gdk/gdkfont.c (gdk_font_hash_insert): Add
20897           name => font and name => fontset hashes. The 
20898           name => fontset hash is a _big_ win since we
20899           weren't previously caching fontsets at all and loading
20900           fontsets is expensive. The name => font hash
20901           is less of a win, but it does save us from doing
20902           repeated XQueryFont calls on the same font.
20903
20904         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
20905           list so we can remove font/fontset from hash.
20906
20907 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
20908
20909         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
20910           and slightly confusing test. [ XInternAtom (,,TRUE)
20911           will never return None ].
20912
20913 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
20914
20915         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
20916           gdk/gdkwindow.c (gdk_window_set_hints):
20917
20918         Don't omit setting the properties if flags == 0 -
20919         there may be an existing set of properties there
20920         already. (Very old bug. Would it be better to
20921         delete the property instead?)
20922
20923         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
20924           spelling error in comment.
20925
20926 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
20927
20928         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
20929           to avoid stomping over gdk_error_warnings.
20930
20931         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
20932           as (bits_per_pixel + 7) / 8. This gives the same
20933           result as before for multiples of 8, but actually
20934           a "reasonable" value for 1bit or 4bit displays.
20935
20936 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
20937
20938         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
20939         GNU Make.
20940
20941 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
20942
20943         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
20944         discarding configure events.
20945
20946 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
20947
20948         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
20949         refcount is greater than zero.
20950
20951         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
20952
20953         * gdk/gdkfont.c (gdk_font_unref): Likewise.
20954
20955         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
20956
20957         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
20958
20959 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
20960
20961         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
20962         that format 32 => sizeof(item) == 4. It really is
20963         sizeof(long).
20964
20965 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
20966
20967         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
20968         core dump at all on X IO errors, only core dump
20969         if --enable-debug for X errors.
20970
20971 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
20972
20973         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
20974         unknown window:" message. disabled ConfigureNotify discarding code,
20975         because it led to events being processed out of order.
20976
20977 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
20978
20979         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
20980
20981         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
20982         we export this function, supress error warnings and don't reset the
20983         error code in the first half of this function.
20984
20985         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
20986         code (instead of just -1) so gdk_error_trap_pop() reveals something
20987         actually informative about the error that happened.
20988
20989         * gdk/*.c:
20990         don't rely on gdk_error_code being -1 if an error occoured, but just
20991         gdk_error_code != 0.
20992
20993 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
20994
20995         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
20996         pointer *before* invoking the filter function, so we at least don't
20997         crash if a filter is removed that is currently executed. window filters
20998         *really* need to be made truely reentrant at some point.
20999
21000 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
21001
21002         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
21003         PropertyNotify debug messages.
21004
21005 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
21006         
21007         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
21008         
21009         * gdk/gdkim.c: Fix cut-and-paste errors for 
21010         x/y and PreeditAttributes/StatusAttributes.
21011
21012 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
21013
21014         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
21015         G_MAXINT to 2^16 to alleviate overflow problems in
21016         various window managers.
21017
21018 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
21019
21020         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
21021         for fontsets.
21022
21023 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
21024
21025         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
21026         Initialize size_hints.x and size_hints.y because kwm
21027         brokenly pays attention to them.
21028         (Bug #1181 -  Lars Heete <hel@admin.de>)
21029
21030 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
21031
21032         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
21033         return value of gdk_list_visuals(). 
21034         (Bug #1193 - Morten Welinder <terra@diku.dk>)
21035
21036 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
21037
21038         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
21039         XSetIMValues to (void *) when comparing to NULL, to workaround
21040         the problem of some compilers barfing since older X headers don't
21041         have the prototype for it.
21042
21043 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
21044
21045         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
21046         for pseudocolor where colormap->colors was double
21047         allocated.
21048
21049         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
21050         color value in the hash table with the pixel filled
21051         in so when we do later hash table lookups, the color
21052         value is correct.
21053         
21054 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
21055
21056         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
21057         making the call
21058
21059 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
21060
21061         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
21062         pointed out by Morten Welinder <terra@diku.dk>.
21063
21064 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
21065
21066         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
21067           default filter from the list
21068
21069 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
21070
21071         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
21072           default filter from the list
21073
21074 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
21075
21076         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
21077
21078         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
21079         g_strdup_printf instead of calcing the length separately
21080
21081 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
21082
21083         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
21084         that we don't do in many other places. (Fixing duplicate 
21085         #include of config.h)
21086
21087         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
21088         Otherwise, #ifndef XINPUT_NONE check in the latter
21089         doesn't work. (Bug #546)
21090
21091 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
21092
21093         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
21094         "None" case insensitive.
21095
21096 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
21097
21098         * gdk/gdkselection.c: 
21099         Add error traps so if the other end of the connection
21100         dies, we survive.
21101
21102 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
21103
21104         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
21105         dest_xid field into two fields - one for the window
21106         to send in messages, one to indicate the last looked
21107         up window for caching purposes. This is needed, so
21108         that Leave messages get the correct window.
21109
21110 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
21111
21112         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
21113         Fix warning created by people mucking around
21114         with the gsource API.
21115
21116         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
21117         Change mapping between GIOCondition and GdkInputCondition
21118         to match the way the Linux kernel does it. This should
21119         fix problems where closed pipes were no longer signalling
21120         GDK_INPUT_READ on systems with a native poll().
21121
21122 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
21123
21124         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
21125         explicitly for the string "None" - it is in the XPM
21126         spec and some servers treat unknown colors in odd ways
21127         (like asking the user!)
21128
21129 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
21130
21131         * gdk/gdkevents.c: made "->" into a "." of previous change so
21132         it compiles
21133
21134 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
21135
21136         * gdk/gdkevents.c (gdk_compress_exposures): Set the
21137         window field of the event structure before calling
21138         user filters.
21139
21140 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
21141
21142         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
21143         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
21144
21145 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
21146
21147         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
21148         intermediate text property - prevents major memory
21149         leak when gdk_use_mb.
21150         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
21151
21152 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
21153
21154         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
21155         gtk-a-higuti-990322-[0-3]
21156
21157         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
21158         sizeof(wchar_t) != sizeof (GdkWChar)
21159
21160         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
21161         that was causing -DX_LOCALE not to work.
21162
21163         * gtk/gtkrc.c (gtk_rc_init):
21164         X_LOCALE will never have LC_MESSAGES defined
21165
21166         * gdk/gdk.c (gdk_init_check):
21167         Remove --xim-preedit and --xim-status from argv properly.
21168
21169         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
21170         that the client window is present on the X server
21171         before we pass it to the input method.
21172
21173 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
21174
21175         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
21176         if --display is specified on the command line, than
21177         the drag window will not be created on that display.
21178         
21179 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
21180
21181         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
21182         lookups with only_if_exists == TRUE were inserting
21183         bogus values into the atom cache.
21184
21185 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
21186
21187         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
21188         then reset it to NULL.
21189
21190         * gdk/gdkcolor.c:
21191         (gdk_colors_free): 
21192         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
21193         key for g_hash_table_remove() in both functions, this prevents us
21194         from accessing possibly uninitialized portions of a GdkColor structure
21195         where we are only interested in its pixel value.
21196
21197 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
21198
21199         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
21200         font hash table, if we have a GdkFontPrivate entry for this font
21201         already, simply increment its reference count, provided by Olaf Dietsche
21202         <olaf.dietsche+list.gtk@netcologne.de>.
21203
21204 1999-09-21  Tor Lillqvist  <tml@iki.fi>
21205
21206         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
21207         just to be sure.
21208
21209         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
21210         unused variables, leftovers from the X11 version.
21211
21212         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
21213
21214         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
21215         downcase fields on X11.
21216
21217 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
21218         
21219         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
21220         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
21221
21222 1999-09-17  Tor Lillqvist  <tml@iki.fi>
21223
21224         * gdk/win32/gdk.def: Add gdk_threads_mutex.
21225
21226         * gtk/makefile.msc: Correct path to libintl.
21227
21228         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
21229         use of gint vs. int, and gint vs. gboolean in headers and
21230         definitions. Use GtkType for the *_get_type functions. Note that
21231         these changes preserve binary compatibility.
21232
21233         * gdk/gdk.c
21234         * gdk/win32/gdk.c
21235         * gdk/gdk.h: Fix inconsistencies: gint vs int.
21236
21237         * gtk/gtkmain.c
21238         * gtk/gtkclist.c
21239         * gtk/gtkmenufactory.c
21240         * gtk/gtknotebook.c
21241         * gtk/gtkwidget.c: Fix inconsistencies, also gint
21242         vs. gboolean.
21243
21244         * gtk/gtkcolorsel.[ch]
21245         * gtk/gtkcombo.[ch]
21246         * gtk/gtkdrawingarea.[ch]
21247         * gtk/gtkgamma.[ch]
21248         * gtk/gtkhandlebox.[ch]
21249         * gtk/gtkhpaned.[ch]
21250         * gtk/gtkhruler.[ch]
21251         * gtk/gtkplug.[ch]
21252         * gtk/gtkpreview.[ch]
21253         * gtk/gtkruler.[ch]
21254         * gtk/gtksocket.[ch]
21255         * gtk/gtkstatusbar.[ch]
21256         * gtk/gtktoolbar.[ch]
21257         * gtk/gtkvbbox.[ch]
21258         * gtk/gtkvpaned.[ch]
21259         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
21260         functions.
21261
21262         * gtk/gtkgamma.h: Fix bug, missing () in call of
21263         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
21264
21265 1999-09-14  Tor Lillqvist  <tml@iki.fi>
21266
21267         * gdk/gdkcolor.c (gdk_colormap_new)
21268         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
21269         colormap->colors was allocated twice.
21270
21271         * gdk/win32/gdk.c: Remove some unused stuff.
21272
21273         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
21274         colormap.
21275
21276         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
21277         * gtk/gtklabel.h (gtk_label_get_type)
21278         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
21279         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
21280         in a couple of places, not guint.
21281
21282 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
21283
21284         * configure.in,po/et.po: added Estonian language file
21285
21286 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
21287
21288         * configure.in,po/da.po: added Danish file
21289
21290 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
21291
21292         * docs/gtkfaq.sgml: Minor FAQ Update
21293
21294 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
21295
21296         * docs/gtkfaq.sgml: FAQ update
21297
21298 1999-08-27  Tor Lillqvist  <tml@iki.fi>
21299
21300         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
21301         way to get window contents continually refreshed while resizing. I
21302         didn't like the effects myself, so it's not on by default.
21303
21304         * gdk/win32/gdkprivate.h: New flag variable
21305         gdk_event_func_from_window_proc, FALSE by default.
21306
21307         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
21308         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
21309         are passed --gdk-event-func-from-window-proc.
21310
21311         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
21312         and we have am event_func, call it instead of enqueing the event.
21313
21314 1999-08-23  Tor Lillqvist  <tml@iki.fi>
21315
21316         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
21317         Kelley: Set expose_count in GdkEventExposes correctly.
21318
21319         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
21320         MULTIPLE_WINDOW_CLASSES).
21321
21322         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
21323         for bug in NT, apparently NT *does* draw the end pixel, too, in
21324         LineTo with a one-pixel pen, so we don't have to do it ourselves.
21325
21326 1999-08-21  Tor Lillqvist  <tml@iki.fi>
21327
21328         Improvements by Hans Breuer: 
21329
21330         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
21331
21332         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
21333         CS_?REDRAW flags as they cause lots of (late) redraws when "show
21334         window contents while dragging" is turned on. Allocate at least
21335         one unique class for every GdkWindowType. If support for single
21336         window-specific icons is ever needed (eg. Dialog specific), every
21337         such window should get its own class.
21338
21339 1999-08-19  Tor Lillqvist  <tml@iki.fi>
21340
21341         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
21342         error that caused crashes.
21343
21344 1999-08-17  Tor Lillqvist  <tml@iki.fi>
21345
21346         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
21347         window, use ScrollWindowEx, and call UpdateWindow. This prevents
21348         bugs when for instance part of the window was outside the
21349         display. Thanks to Philippe Colantoni for finding and fixing this.
21350
21351 1999-08-16  Tor Lillqvist  <tml@iki.fi>
21352
21353         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
21354         endpoint calculations which were totally wrong. (A little RTFMing
21355         helps a lot ;-)
21356
21357         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
21358         from a separate directory, not from gettext, because of licensing
21359         issues (we want to use the LGPL version).
21360
21361         * README.win32: Mention the intl from glibc vs from gettext issue.
21362
21363 1999-08-13  Tor Lillqvist  <tml@iki.fi>
21364
21365         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
21366         in the key event handling: Now AltGr chars work again. Also,
21367         now Alt-digits are passed up as well as Control-digits.
21368         Pass keypad plus and minus as normal plus and minus.
21369
21370 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
21371
21372         * docs/gtkfaq.sgml: FAQ Update
21373
21374 1999-07-25  Tor Lillqvist  <tml@iki.fi>
21375
21376         * README.win32
21377         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
21378         the Wintab SDK.
21379
21380         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
21381         OK, but getting closer. Guard against bogus tilt data from Wacom
21382         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
21383         enable easier building without Wintab.
21384
21385         * gdk/win32/gdkinput.h
21386         * gdk/win32/gdkevents.c 
21387         * gdk/win32/gdkwindow.c: Minor changes related related to above.
21388         
21389         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
21390         code. As we have just one visual on Win32, no sense to have it in a
21391         table, and no need for the hash table.
21392
21393         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
21394         better on white background.
21395
21396 1999-07-21  Tor Lillqvist  <tml@iki.fi>
21397
21398         * README.win32: Update gcc build instructions. Mention gettext is
21399         GPL.
21400
21401         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
21402         supported cursor size with GetSystemMetrics.
21403
21404         * gdk/win32/gdkfont.c
21405         * gtk/gtkfontsel.c: Guard against some font weight and charset
21406         symbols being undefined (in mingw32 headers).
21407
21408         * gdk/win32/makefile.cygwin
21409         * gtk/makefile.cygwin
21410         * gtk/gtkthemes.c: No longer need to have differently named
21411         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
21412
21413 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
21414
21415         * docs/gtkfaq.sgml: Long awaited FAQ update.
21416
21417 1999-07-15  Tor Lillqvist  <tml@iki.fi>
21418
21419         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
21420         it. Obscure bit manipulation needed.
21421
21422         * gdk/win32/gdkevents.c: Logging.
21423         
21424         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
21425         style (file name include compiler name) for theme engines.
21426
21427 1999-07-13  Tor Lillqvist  <tml@iki.fi>
21428
21429         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
21430
21431         * gdk/win32/gdkevents.c: Fix long-standing bug in key
21432         events. The key.string wasn't zero-terminated, still we strdup'ed
21433         it in gdk_event_copy(). Synthesize crossing events for button
21434         events before possible propagation.
21435
21436         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
21437
21438         * gdk/win32/makefile.cygwin
21439         * gtk/makefile.cygwin: Use new DLL naming style for the
21440         GCC-compiled ones.
21441
21442         * gdk/win32/makefile.msc
21443         * gtk/makefile.msc: Cosmetics mostly.
21444
21445         * gtk/gtk.def: Add missing entry points.
21446
21447         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
21448
21449 1999-07-09  Tor Lillqvist  <tml@iki.fi>
21450
21451         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
21452         or height is zero. Don't print a warning if Pie or Arc fails, they
21453         always fail (?) for very narrow ellipses.
21454
21455         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
21456         the part or the destination window corresponding to source area
21457         outside of the source drawable's boundary.
21458
21459         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
21460         anything if less than two points.
21461
21462         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
21463         return NULL. Gtk cut-and-paste inside a single program works
21464         better this way. (It always gets the clipboard contents from
21465         Windows, not from its own copy, which is cleared anyway. I can't
21466         say I fully understand what happens... Emulating the X selection
21467         and property stuff is a bit of a mess.)
21468
21469         * gdk/win32/gdkevents.c
21470         * gdk/win32/gdkproperty.c: A bit more verbose logging.
21471
21472         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
21473         that never got deleted). Revamp gdk_region_shrink.
21474
21475         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
21476         after use.
21477
21478         * gtk/gtk.def: Add some missing entry points.
21479
21480         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
21481         component.
21482
21483 1999-07-04  Tor Lillqvist  <tml@iki.fi>
21484
21485         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
21486         Control-digits specially.
21487
21488 1999-07-03  Tor Lillqvist  <tml@iki.fi>
21489
21490         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
21491
21492 1999-06-28  Tor Lillqvist  <tml@iki.fi>
21493
21494         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
21495         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
21496         finding this.)
21497
21498 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
21499
21500         * gtk+.spec.in: Corrected some typos in files section.
21501         
21502 1999-06-15  Tor Lillqvist  <tml@iki.fi>
21503
21504         * README.win32: Mention using GNU gettext.
21505         * config.h.win32: Enable NLS stuff.
21506         * gtk/makefile.msc: Use GNU gettext.
21507         * gdk/win32/gdkdnd.c: Minor header reorg.
21508         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
21509         cosmetics.
21510         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
21511         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
21512
21513 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
21514
21515         * acinclude.m4
21516         * config.guess
21517         * config.status
21518         * ltconfig
21519         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
21520
21521 1999-05-30  Tor Lillqvist  <tml@iki.fi>
21522
21523         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
21524         SafeAdjustWindowRectEx. Don't override all calls to
21525         AdjustWindowRectEx by it, but use it only in two places: When
21526         creating a new top-level window and when moving a top-level
21527         window.
21528
21529         Use screen coordinate rectangle, not client rectangle, in
21530         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
21531         when we try to place a window so that the decoration (mainly,
21532         title bar) isn't visible.
21533
21534         These changes fix the bug that showed up for instance as the
21535         GIMP's saved top-level windows moving right and down (by an amount
21536         equal to the window decoration) for each session. This bug showed
21537         up also in testgtk's "Saved Position".
21538
21539         gdk_window_resize also redone a bit.
21540
21541 1999-05-25  Tor Lillqvist  <tml@iki.fi>
21542
21543         * gtk/testgtkrc: Add (commented out) Windows-style theme
21544         include line.
21545
21546         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
21547
21548 1999-05-18  Tor Lillqvist  <tml@iki.fi>
21549
21550         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
21551         gdkx.h to a gdk subdirectory, so that applications can include
21552         these with <gdk/*.h> without trouble.
21553
21554         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
21555         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
21556         have their bitmap destroyed.
21557
21558         * gdk/win32/gdk.def: Add gdk_root_parent.
21559
21560 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
21561
21562         * configure.in
21563           gtk-config.in
21564           ltconfig
21565           ltmain.sh     
21566           gtk/Makefile.am: changes to compile nicely (with xlib) 
21567           on BeOS
21568
21569 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
21570
21571         * acinclude.m4
21572         * config.guess
21573         * config.sub
21574         * ltconfig
21575         * ltmain.sh: upgrade to libtool 1.3
21576
21577 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
21578
21579         * gtk/gtkclist.c:
21580         * gtk/gtkctree.c: merges from gtk-1-2
21581
21582 1999-04-25  Tor Lillqvist  <tml@iki.fi>
21583
21584         Support added for building using a GNU toolchain on Win32,
21585         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
21586
21587         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
21588         * config.h.win32: Changes for gcc.
21589         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
21590         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
21591         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
21592         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
21593         Protect shl stuff unavaiilable with mingw32 headers.
21594         * gdk/win32/gdkevents.c: Fix typo.
21595         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
21596         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
21597         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
21598         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
21599         the mingw32 headers.
21600         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
21601         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
21602         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
21603         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
21604         Test for NATIVE_WIN32, not _MSC_VER.
21605         * gtk/gtkmain.c: No use warning about developer version on Win32,
21606         there aren't any non-developer versions anyhow.
21607         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
21608         * gtk/makefile.msc: Use pthread from another directory. Minor other
21609         changes. 
21610
21611 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
21612
21613         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
21614           default filter from the list
21615
21616 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
21617
21618         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
21619          when gtk_widget_grab_default() is called for a widget that
21620          is not within a GtkWindow.
21621
21622 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
21623
21624         * docs/gtk_tut.sgml, examples/clist.c: use a
21625           scrolled window in the clist example. Minor
21626           tutorial fixes.
21627
21628 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
21629
21630         * docs/gtk_tut.sgml: Style check from David King
21631           <dking@youvegotmail.net>
21632
21633 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
21634
21635         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
21636         compile with unknown value of GDK_WINDOWING
21637
21638 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
21639
21640         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
21641         after the rule is fired.
21642         (install-exec-local): Install gdkconfig.h only if the contents are
21643         different from the currently installed gdkconfig.h.
21644
21645 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
21646
21647         * gdk/Makefile.am (configexecincludedir): Rename from 
21648         configincludedir so that gdkconfig.h will be installed 
21649         as part of `make install-exec'. 
21650
21651 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
21652
21653         * acinclude.m4
21654         * config.guess
21655         * config.sub
21656         * ltconfig
21657         * ltmain.sh: upgrade to libtool 1.2f
21658
21659         * autogen.sh: libtool is not required to autogen gtk+
21660
21661         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
21662         needed)
21663
21664 1999-03-18  Tor Lillqvist  <tml@iki.fi>
21665
21666         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
21667         declaring gdk variables exported/imported from the DLL. New image
21668         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
21669         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
21670         GDK_DRAG_PROTO_OLE2.
21671
21672         * gdk/gdk.h: Merge in Win32 version: Two new functions,
21673         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
21674         declared only for the Win32 version, but could be in the X11
21675         version as well. (Needed for a Xlib-less gdk_imlib.)
21676         gdk_color_hash should have only one parameter. Declare
21677         gdk_threads_mutex with GDKVAR.
21678         
21679         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
21680         just one parameter.
21681
21682         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
21683         per pixel, not bits.
21684
21685         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
21686         Fetch bpp (which means bits-per-pixel here) from another place on
21687         Win32. Accept also depth==32 (which we might get on Win32) with
21688         bpp==32.
21689
21690         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
21691         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
21692         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
21693         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
21694         in the backend-dependent directory, not in the common gdk
21695         directory.
21696
21697         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
21698         headers.
21699
21700 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
21701
21702         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
21703         want to use the Gtk+ devel version (which is true, and yes - even i am
21704         currently working with the 1.2.x branch). so everyone reading this, you
21705         probably want to issue
21706         cvs checkout -r glib-1-2 glib
21707         and
21708         cvs checkout -r gtk-1-2 gtk+
21709         as your next two comands.
21710
21711 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
21712
21713         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
21714         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
21715
21716         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
21717         file. strongly deprecated the GTK_HAVE_* macros, we provide
21718         GTK_CHECK_VERSION() for people that need to check for certain
21719         Gtk+ versions.
21720
21721         * gtk/gtkcompat.h: removed this from CVS.
21722         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
21723         idea right from the start, it just didn't seem like that back then.
21724
21725 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
21726
21727         * merges from gtk-1-2:
21728
21729 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
21730
21731         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
21732         item factory class has been created.
21733         (gtk_item_factory_parse_rc): likewise.
21734
21735         * gtk/gtkmenu.c:
21736         keep proper references for old_active_menu_item.
21737         (gtk_menu_reparent): unset the usize of the new parent,
21738         so the menu can sanely be size requested and we don't get nasty screen
21739         artefacts upon next reparentation.
21740         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
21741         enter notify. only synthesize enter notifies if the pointer really is
21742         inside the event window.
21743         (gtk_menu_popdown): use gtk_menu_shell_deselect().
21744         (gtk_menu_popup): move the background setting stuff into
21745         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
21746
21747         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
21748         gtk_menu_shell_select_item() to select the new item.
21749         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
21750         do the right thing for deselection as well.
21751
21752 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
21753
21754         * gtk/gtkwidget.[hc]:
21755         (gtk_widget_accelerators_locked): return whether a widget's accelerators
21756         are locked.
21757
21758         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
21759         existing accelerators if the widget's accelerators are locked.
21760
21761 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
21762
21763         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
21764
21765         * gtk/gtkmenu.c: truely forward key press and key release events to
21766         the menu widget from the toplevel or tearoff window. we can't simply
21767         connect to that, we need to stop further processing of the events as
21768         well.
21769
21770 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
21771
21772         * gtk/gtkmenu.c:
21773         (gtk_menu_key_press): pass event->keyval, event->state to
21774         gtk_accelerator_valid, instead of event->keyval twice.
21775         refuse to install single letter accelerators for menus that use
21776         single letter shortcuts.
21777
21778         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
21779         gtk_menu_ensure_uline_accel_group().
21780
21781         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
21782         which will always return an uline accel group, made
21783         gtk_menu_get_uline_accel_group() return NULL if the group isn't
21784         yet created.
21785
21786 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
21787
21788         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
21789
21790         * gtk/gtkclist.c (gtk_clist_column_title_passive):
21791         Leave button sensitive, trap  button_press, button_release,
21792         motion_notify, enter_notify and leave_notify events instead.
21793         (gtk_clist_column_title_active): disconnect event handler.
21794         (gtk_clist_drag_data_get): fixed memory leak. Reported by
21795         Guillaume Laurent <glaurent@worldnet.fr>
21796
21797 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
21798
21799         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
21800         width/height mixups.
21801
21802         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
21803         if needed.
21804
21805 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
21806
21807         * gtk/testgtk.c (create_item_factory): unref the item factory after
21808         window's destruction.
21809
21810         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
21811         count on the menu shell around the menu item's activation, since the
21812         signal emission may cause menu shell destruction.
21813
21814         * gtk/gtkitemfactory.c:
21815         the previous code leaked one accel group per menu. we use
21816         gtk_menu_get_uline_accel_group() now to fix that, and with that
21817         also create the underline accelerator group of the menus only if
21818         required (i.e. an underline accelerator has been specified).
21819         (gtk_item_factory_construct):
21820         (gtk_item_factory_create_item): removed code that would create an
21821         extra accel group for the menu (and leak references).
21822         (gtk_item_factory_create_item): adapted the underline accelerator
21823         installation code to properly feature gtk_menu_get_uline_accel_group().
21824
21825         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
21826         menu->accel_group, this may return NULL if the accelerator group
21827         hasn't been set yet.
21828         added gtk_menu_get_uline_accel_group() to retrive the underline
21829         accelerator group of the menu, this will be created on demand
21830         and proper care is taken about its reference count.
21831
21832         * gtk/gtkitemfactory.h:
21833         * gtk/gtkitemfactory.c:
21834         dumped the approach of keeping a widgets by action list on the
21835         factory since the factory<->widget destroy negotiation didn't work
21836         and would be hard to get going at all. instead we keep a list of
21837         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
21838         persistant throughout a program's life time).
21839         also, i removed the static const gchar *key_* variables, and made
21840         them inline strings (they weren't actually used anyways).
21841         (gtk_item_factory_add_item): update ifactory->items.
21842         (gtk_item_factory_destroy): destroy ifactory->items (and remove
21843         the item factory pointer from the remaining ifactory widgets).
21844         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
21845         list to find the widget.
21846         (gtk_item_factory_get_item): new function that works around
21847         gtk_item_factory_get_widget() limitations, this function will only
21848         return menu items, even for <Branch> entries.
21849
21850 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
21851
21852         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
21853         font hash table, if we have a GdkFontPrivate entry for this font
21854         already, simply increment its reference count, provided by Olaf Dietsche
21855         <olaf.dietsche+list.gtk@netcologne.de>.
21856
21857         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
21858         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
21859
21860 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
21861
21862         * gtk/gtkcontainer.c:
21863         (gtk_container_add_with_args):
21864         (gtk_container_addv):
21865         (gtk_container_add): before adding a child to a conatiner, make sure
21866         it is (default) constructed, this is neccessary because under certain
21867         circumstances the child will get relized and mapped immediatedly, in
21868         which case it has to be constructed already.
21869
21870 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
21871
21872         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
21873         values > 1 as TRUE also.
21874
21875 1999-03-16  Tor Lillqvist  <tml@iki.fi>
21876
21877         * README.win32: New file.
21878                 
21879         * configure.in: Check for lstat.
21880
21881         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
21882         completeness.
21883
21884         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
21885
21886         * gtk/gtk.def: Removed CRs.
21887
21888         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
21889         ..\gdk\win32).
21890
21891         * gdk/win32/makefile.msc: Correct upwards relative paths.
21892         
21893 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
21894
21895         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
21896           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
21897           it was connecting a void function to expose_event and the int
21898           returning function to the draw signal
21899
21900 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
21901
21902         * configure.in:
21903         Use correct path to libgmodule.la when ref'ing uninstalled copy
21904         of glib.  (Already in stable branch, Bug #417)
21905
21906 1999-03-15  Tor Lillqvist  <tml@iki.fi>
21907
21908         Win32 merge and general portability stuff:
21909                 
21910         * acconfig.h,configure.in: Check for <sys/time.h>.
21911
21912         * gdk/win32: New directory (actually, been there for a while).
21913         
21914         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
21915         NATIVE_WIN32, and use these. Always case fold on Win32. No
21916         backslashed escapes on native Win32.
21917
21918         * gtk/{gtk.def,makefile.msc}: New files.
21919
21920         * gtk/Makefile.am: Add above new files.
21921         
21922         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
21923         instead of <strings.h>.
21924
21925         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
21926         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
21927         <unistd.h> appropriately.
21928
21929         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
21930         Use ABS() (from <glib.h>) instead of abs().
21931         
21932         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
21933         of gtk (and thus glib) headers, so that WIN32 will be
21934         defined. With MS C, include <direct.h> for mkdir prototype.
21935
21936         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
21937         some casts, needed by MS C.
21938
21939         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
21940         implemented).
21941
21942         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
21943         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
21944         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
21945
21946         * gtk/gtkmain.h: Mark variables for export/import on Win32.
21947                 
21948         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
21949         the event is not a hint, or its window is not the slider. Needed
21950         on Win32, at least.
21951
21952         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
21953         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
21954         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
21955         a subdirectory of the Windows directory as gtk system
21956         configuration directory.
21957
21958         * gtk/gtkselection.c: No chunks on Win32.
21959
21960         * gtk/gtksocket.c: Not implemented on Win32.
21961
21962         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
21963
21964         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
21965
21966         * gtk/maketypes.awk: Declare variables with a macro that expands to
21967         necessary export/import magic in the case of Win32.
21968                 
21969         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
21970
21971 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
21972
21973         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
21974         since those were meant only for gdki18n.h.  
21975         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
21976         for widechar tests.
21977         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
21978
21979 1999-03-13  Tor Lillqvist  <tml@iki.fi>
21980
21981         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
21982         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
21983
21984         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
21985         installed) to CFLAGS.
21986
21987         * gdk/Makefile.am: Add rules for gdkconfig.h.
21988
21989         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
21990         APIs.
21991
21992         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
21993         gdkx.h anyway when compiling for X11.
21994         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
21995         general): Merge in Win32 version.
21996         
21997         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
21998         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
21999         expansion (if we don't have HAVE_PWD_H), allow for drive
22000         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
22001         included code from Craig Setera's port to Win32 (the one that uses
22002         X11, and the cygwin dll), even if it probably will be abandoned.
22003
22004         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
22005         the user entered one herself.  This way one can complete *.h and
22006         don't get matches on any .help files, for instance.
22007         
22008 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
22009
22010         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
22011         font hash table, if we have a GdkFontPrivate entry for this font
22012         already, simply increment its reference count, provided by Olaf Dietsche
22013         <olaf.dietsche+list.gtk@netcologne.de>.
22014
22015         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
22016         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
22017
22018 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
22019
22020         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
22021         the number of calls to gdk_draw_point() (and thus to X) by
22022         clipping the points by hand.
22023
22024         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
22025         the clip parameter.
22026         (gtk_handle_box_paint): Only paint the handle if the expose area
22027         intersects it.
22028
22029 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
22030
22031         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
22032
22033 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
22034
22035         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
22036         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
22037
22038 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
22039
22040         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
22041          textmode (O_TEXT) for OS/2 version.
22042
22043 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
22044
22045         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
22046         GtkSpinButton, "input" and "output", to make the output more flexible.
22047         The user has to provide a mapping between adjustment->value and the
22048         output string (and vice versa, if the spin button is editable). 
22049         See testgtk for examples.
22050
22051 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
22052
22053         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
22054         new one.
22055         
22056         * configure.in: set gtk+ version to 1.3.0.