]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-10
Only ref the window if it isn't NULL.
[~andy/gtk] / ChangeLog.pre-2-10
1 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
2
3         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
4         it isn't NULL.
5
6 2000-11-01  Havoc Pennington  <hp@pobox.com>
7
8         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
9         on a label
10         (gtk_label_finalize): unref the attr list if any.
11
12         * gtk/testgtk.c (create_get_image): close test on second click
13         (make_message_dialog): close dialog if it exists
14
15         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
16
17         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
18         gdk-pixbuf
19
20         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
21         from Pango markup format
22         (gtk_label_set_markup_with_accel): ditto but with accelerator
23         parsing
24
25         * gtk/gtkimage.c (gtk_image_expose): reformatting.
26
27         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
28         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
29         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
30         call gdk_window_get_origin().
31
32         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
33         implement GDK_PIXBUF_ALPHA_FULL
34         
35 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
36
37         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
38         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
39         g_signal_handlers_disconnect_matched to block/unblock and disconnect
40         multiple handlers respectively, instead of only treating the
41         first handler found (bug reported by owen).
42
43 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
44
45         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
46
47         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
48
49         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
50         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
51         gtk/gtktreeviewcolumn.h: Fixed inline docs.
52
53         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
54         widget.  Needs writing someday.
55
56         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
57         the docs.
58
59 2000-10-30  Havoc Pennington  <hp@redhat.com>
60
61         * gtk/gtktextview.h, gtk/gtktextview.c:
62         Rename delete_at_cursor delete_from_cursor, and 
63         move to move_cursor.
64
65 2000-10-30  Havoc Pennington  <hp@redhat.com>
66
67         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
68         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
69         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
70         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
71         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
72         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
73         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
74         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
75         gtktexttypes.h, gtktextview.c, gtktextview.h:
76
77         Massive reindentation and reformatting. Arg alignment and comments
78         still need fixing in various places.
79
80 2000-10-30  Havoc Pennington  <hp@redhat.com>
81
82         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
83         to be named insert_at_cursor and delete_at_cursor so C++ can
84         handle them.
85
86 2000-10-28  Tor Lillqvist  <tml@iki.fi>
87
88         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
89         to get a double directory separator in case the home directory
90         ends with one. This would cause trouble especially on Windows,
91         where the path will be confused with the syntax for an an UNC
92         (network share) path \\server\share\path.
93         (gtk_rc_add_initial_default_files): Ditto.
94
95 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
96
97         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
98
99         * gtk/gtktextview.c: Use correct marshallers.
100
101 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
102
103         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
104         use new iter stuff, and added all the appropriate signals et al.
105
106         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
107         code is internal to gtk only.
108
109 2000-10-28  Tor Lillqvist  <tml@iki.fi>
110
111         * gtk/gtk.def
112         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
113         glib-genmarshal etc.
114
115 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
116
117         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
118         parallel builds.
119
120 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
121
122         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
123
124 2000-10-27  Robert Brady  <robert@suse.co.uk>
125
126         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
127         en_GB (British), ia (Interlingua).
128
129 2000-10-26  Havoc Pennington  <hp@redhat.com>
130
131         * gtk/gtktextiter.c (my_strrstr): fix constness warning
132
133         Fixed output of:
134         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
135         
136         * gtk/gtktextsegment.c (char_segment_new): rename
137         (_char_segment_new_from_two_strings): rename
138         (_toggle_segment_new): rename
139         
140         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
141         (make_clipboard_widget): make it static
142         (text_get_func): static
143         (text_clear_func): static
144
145         * gtk/gtkcolorsel.c (adjustment_changed): make this function
146         static
147         (hex_changed): make it static
148         (hsv_changed): make it static
149         (opacity_entry_changed): make it static
150
151         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
152         (toggle_segment_check_func): rename with _gtk
153
154         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
155         (_widget_segment_new): rename
156         (_widget_segment_add): rename
157         (_widget_segment_remove): rename
158         (_widget_segment_ref): rename
159         (_widget_segment_unref): rename
160
161         * gtk/gtktextmark.c (_mark_segment_new): Rename
162         _gtk_mark_segment_new   
163
164 2000-10-26  Havoc Pennington  <hp@redhat.com>
165
166         * gtk/gtkmarshal.list: add new marshallers used by the text widget
167         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
168         types
169
170         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
171         marshaller types
172
173         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
174         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
175         license on these files.
176
177         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
178         work.
179
180         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
181         runtime random number different for each tree, instead of 
182         a constant I made up.
183
184 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
185
186         * gtk/Makefile.am: buncha cleanups, kludged build sources
187         dependencies with a Makefile: oldest-source-stamp dependancy
188         for the moment. automake is really fighting us here, with
189         intentionally not allowing user-defined rules or dependancies
190         prior to it's -include $(DEP_FILES) statement. sucks rocks!
191
192         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
193         to public headers. tehy have a comment stating that they are
194         "semi-public" aren't included by gtk.h and if enums popup there,
195         they can be /*< skip >*/-ed.
196
197         * gtk/gtktextlayout.h: 
198         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
199         added LGPL... <SIGH>
200
201 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
202
203         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
204         GtkTreeIter.  Added iterators everywhere.
205
206         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
207
208         * gtk/gtktreeviewselection.c: Changed to use the iterators.
209
210         * gtk/gtktreestore.c: Changed to use the iterators.
211
212         * gtk/gtkliststore.c: Commented out the code.  Will convert to
213         iterators tomorrow.
214
215         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
216         iterators tomorrow.
217
218         * gtk/treestoretest.c: Changed to use iterators.
219
220         * demos/testgtk/main.c: Moved to use the new iterator system.
221
222 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
223
224         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
225         localization misbehaviour.
226
227         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
228         a useless type without copy/free.
229
230         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
231         of GTK_TYPE_CTREE_NODE.
232
233 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
234
235         * gtk/gtksignal.c:
236         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
237         applicable.
238
239         * gtk/gtk-boxed.defs (GtkSelectionData): specify
240         gtk_selection_data_copy and gtk_selection_data_free
241         do GtkSelectionData work as params in signals.
242
243 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
244
245         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
246         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
247         couldn't they at least give it a non-standard name?
248         
249         * gtk/gtktextlayout.c: arg! yet another implementation of
250         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
251
252         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
253         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
254         home. now i know this _is_ a conspiracy.
255
256         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
257         ::state-changed.
258
259         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
260         (gtk_accel_group_create_add): marshaller signature fixups.
261
262         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
263         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
264
265         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
266         anymore.
267
268 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
269
270         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
271         due to the signal system changes, it wouldn't build currently. to
272         be fixed soon.
273
274         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
275
276         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
277         so it needs gtk_marshal_VOID__ENUM() instead of
278         gtk_marshal_NONE__UINT().
279
280         * gdk/gdk*.c: adapted type registration functions.
281
282         * gtk/gtkbindings.c:
283         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
284         gone.
285
286         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
287
288         * gtk/gtkobject.c:
289         (gtk_object_destroy):
290         (gtk_object_shutdown): fixed recursion guards. basically we have to
291         catch the case where any of GObject.shutdown() or gtk_object_destroy()
292         is called during ::destroy, and avoid recursion there.
293
294         * gtk/gtktypeutils.c:
295         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
296         boxed_copy/boxed_free. this needs a more general solution based on a
297         publically installed code-generator utility.
298
299         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
300         glib's gobject has support for that now.
301         define GtkSignalMarshaller in terms of GSignalCMarshaller.
302
303 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
304
305         * gtk/gtksignal.[hc]:
306         * gtk/gtkmarshal.[hc]:
307         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
308         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
309         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
310         care of that.
311
312         * *.c: marshaller name fixups.
313
314         * gtk/gtkmarshal.list: added a comment briefing the format.
315
316 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
317
318         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
319         compatibility macros here now. more specifically, most of
320         the API is preserved (yes, _most_, nonwithstanding the
321         following exceptions listed, the API is stil lHUGE ;)
322         things that got removed completely:
323         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
324         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
325         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
326         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
327         gtk_signal_remove_emission_hook().
328         non-functional functions variants:
329         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
330         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
331         not supported anymore.
332         (gtk_signal_compat_matched): new internal function to aid
333         implementation of the compatibility macros, it  provides
334         functionality to block/unblock/disconnect handlers based
335         on func/data.
336
337         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
338
339         * *.c: adaptions to new type registration API signatures.
340
341 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
342
343         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
344
345 2000-10-25  Robert Brady  <robert@suse.co.uk>
346
347         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
348         gdk_property_delete): If window == NULL, assume the root window.
349         (restoring the behaviour that was in 1.2).
350         
351         * gtk/testtext.c (save_buffer): Allow creation of new files when
352         saving.
353
354         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
355         calls to read().
356
357 2000-10-25  Tor Lillqvist  <tml@iki.fi>
358
359         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
360
361         * gdk/win32/gdkdrawable-win32.c
362         * gdk/win32/gdkimage-win32.c
363         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
364         X11 backend.
365
366         * gdk/win32/gdkcc-win32.c
367         * gdk/win32/gdkcolor-win32.c
368         * gdk/win32/gdkfont-win32.c
369         * gdk/win32/gdkinput-win32.c
370         * gdk/win32/gdkmain-win32.c
371         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
372
373 2000-10-24  Havoc Pennington  <hp@redhat.com>
374
375         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
376         it a static function
377
378         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
379         redraw text when a tag is applied to it.
380
381         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
382         (gtk_text_tag_affects_nonsize_appearance): private functions to
383         see if a tag requires various kinds of redraw/layout to be queued
384         up.
385
386         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
387
388         * gtk/testtext.c (fill_example_buffer): Put the cursor 
389         at the start of the buffer, so search works by default
390
391         * gtk/gtktextiter.c (lines_match): init match_start always
392
393         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
394         function, get iter at a line + a byte index
395
396         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
397         to set byte position within a line
398         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
399
400 2000-10-23  Havoc Pennington  <hp@redhat.com>
401
402         * gtk/testtext.c: Re-enable the "find" dialog
403
404         * gtk/testgtk.c: Add test for gdk_drawable_get_image
405         
406         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
407         the arguments to gdk_draw_drawable were in the wrong order
408         (gdk_window_paint_init_bg): This function was ignoring the
409         init_region, instead of clipping to it, so the entire backing
410         pixmap was cleared on every begin_paint()
411         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
412         was in here again, the loop kept using the same GtkWindowPaint
413         over and over.
414         (gdk_window_begin_paint_region): Fix a bug where we had two
415         x_offset instead of x_offset and y_offset
416
417         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
418         before we get the image.
419         (gdk_draw_drawable): get the composite before we draw the drawable.
420         (gdk_drawable_real_get_composite_drawable): default
421         get_composite_drawable implementation that returns the drawable 
422         itself
423
424         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
425         get_composite_drawable virtual function
426
427         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
428         list-walking bug
429
430         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
431         make this work if the source drawable is a GdkDrawableImplX11
432         instead of a public drawable type. This is really broken; the
433         problem is that GdkDrawable needs a virtual method get_xid(), but
434         of course that doesn't work in practice. Enter RTTI.
435
436         Also, improve mismatched depth message.
437
438         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
439         GdkPixmap
440
441         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
442         install _gdk_x11_get_image as our implementation of get_image
443         
444         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
445         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
446
447         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
448         gdk_drawable_get_image
449
450         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
451
452         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
453         get_image
454
455         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
456         trailing semicolon after for loop
457
458 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
459
460         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
461         where font_desc for widget's context lagged widget's font_desc by
462         one step.
463
464 2000-10-22  Tor Lillqvist  <tml@iki.fi>
465
466         * gdk/win32/gdkgc-win32.c
467         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
468
469         * gtk/makefile.mingw.in
470         * gtk/gtk.def: Updates.
471
472         * gtk/testgtk.c: sleep() is called _sleep in MS's C
473         library.
474
475         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
476
477         * gtk/makefile.msc: Remove
478
479         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
480
481         * gtk/Makefile.am: Add it.
482
483         * configure.in: Generate it.
484
485         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
486         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
487         something even if not implemented, to satisfy picky MSVC.
488
489         Patches by Hans Breuer:
490         
491         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
492         SetBkMode() and SetTextAlign() before calling
493         pango_win32_render().
494
495         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
496         Set hcliprgn to NULL after destroying it.
497         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
498
499         * gdk/win32/gdkgeometry-win32.c
500         (_gdk_windowing_window_queue_antiexpose): More effective
501         implementation.
502
503         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
504         depth as default, not the visual's.
505
506         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
507         against empty title.
508
509         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
510         IMAGE_PRIVATE_DATA.
511
512         * gdk/win32/gdkimage-win32.c: Use it.
513
514 2000-10-22  Robert Brady  <robert@suse.co.uk>
515
516         * configure.in: Check for bind_textdomain_codeset
517
518         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
519         present, make use of it.
520
521         Add a translatable string "default:LTR" which, if translated
522         to "default:RTL", will cause the default direction to be
523         Right-to-Left.
524
525         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
526         direction if marked as flippable.
527
528         * gtk/gtkhscale.c: Mark widget as flippable.
529         
530 2000-10-04  Havoc Pennington  <hp@redhat.com>
531
532         * gtk/testgtk.c (create_buttons): create some stock buttons
533         with the default accel group
534         (create_image): test some new GtkImage features
535         (make_message_dialog): test GtkMessageDialog
536         (create_modal_window): fix someone's bizzarro indentation
537
538         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
539         GTK_WIN_POS_CENTER_ON_PARENT. 
540         Add "destroy with parent" setting, which means the window goes
541         away with its transient parent.
542         (gtk_window_get_default_accel_group): get the default accel group
543         for the window.
544         (gtk_window_set_destroy_with_parent): set/unset destroy with
545         parent flag
546         (gtk_window_read_rcfiles): invalidate icon set caches
547         after reloading rcfiles 
548
549         * gtk/gtkenums.h (GtkWindowPosition): add
550         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
551         on its parent window when the dialog is mapped for the first time.
552
553         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
554         a simple message dialog class
555         
556         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
557         handler to emit response signal, and maybe later it would
558         honor a hide_on_delete flag - though that isn't there yet.
559         Set border width on the vbox to 2, so we get some padding.      
560         Use a button box for the action area.
561         (gtk_dialog_key_press): synthesize a delete event if Esc
562         is pressed and the GtkWidget key press handler didn't 
563         handle the escape key.
564         (gtk_dialog_new_with_buttons): new function creates a dialog
565         with some default buttons in it.
566         (gtk_dialog_add_action_widget): add an activatable widget
567         as a button in the dialog - you can also add a non-activatable
568         widget by accessing the action area directly.
569         (gtk_dialog_add_button): add a simple button - stock ID or 
570         label - to the action area
571         (gtk_dialog_response): emit response signal
572         (gtk_dialog_run): block waiting for the dialog, return 
573         the response. Override normal delete_event behavior, so that 
574         delete_event does nothing inside gtk_dialog_run().
575
576         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
577         emitted when an action widget is clicked or the dialog gets
578         delete_event
579
580         * gtk/gtk.h: add gtkmessagedialog.h
581
582         * gtk/Makefile.am: add gtkmessagedialog.[hc]
583
584 2000-10-18  Havoc Pennington  <hp@redhat.com>
585
586         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
587         where any number of empty lines would get skipped
588
589         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
590         edge.
591
592         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
593         warning about invalid iterators (explain more thoroughly)
594         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
595
596         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
597         big
598
599         * demos/*.c: Add error handling
600
601         * gtk/gtktextbuffer.c: don't modify const iterators
602
603         * gtk/gdk-pixbuf-loader.c: Add full error handling here
604
605         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
606         on file load
607
608         * gtk/gtkiconfactory.c: Update to reflect addition of error
609         handling to gdk-pixbuf loaders
610
611 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
612
613         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
614         move to new modularized testgtk.
615
616 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
617
618         * gtk/gtktreeview.c: Draw the arrows correctly.
619
620         * gtk/gtktreemodel.c: Added user docs.
621
622         * gtk/gtk.h: remove gtktreedatalist.h.
623
624         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
625         parent when generating my type.
626
627         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
628         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
629
630 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
631
632         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
633         GtkTreeModel from object to interface.
634
635 2000-10-16  Havoc Pennington  <hp@redhat.com>
636
637         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
638         compilation
639
640 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
641
642         * gtk/gtktreeselection.c: Add API documentation to all public
643         functions.
644
645         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
646         functions.
647
648 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
649
650         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
651         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
652         docs to all public functions.
653
654         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
655         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
656         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
657         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
658         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
659         issue.
660
661 2000-10-14  Robert Brady  <robert@suse.co.uk>
662
663         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
664
665 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
666
667         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
668         values other then G_TYPE_STRING.
669         * gtk/gtktreeselection.c: Minor commenting updates.
670         * gtk/gtktreeview.c: Format updates.
671
672 2000-10-09  Tor Lillqvist  <tml@iki.fi>
673
674         * README.win32: Update.
675
676         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
677         lines that had been deleted by mistake (?).
678
679         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
680         also the case fg==white and bg==black (but still not randomly
681         coloured cursors). Thanks to Wolfgang Sourdeau.
682
683         * gdk/win32/*.c: Silence gcc -Wall.
684
685         * gtk/gtk.def: Add missing entry points.
686
687         Fixes by Hans Breuer:
688
689         * gdk/makefile.msc
690         * gdk/win32/makefile.msc: Update.
691
692         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
693         some MSVC thing, presumably), cause breakpoint on failures. Add
694         GDK_NOR case. Call g_log_set_always_fatal.
695
696         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
697         should be pased by reference.
698         
699         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
700         
701         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
702
703         * gdk/win32/gdkevents-win32.c
704         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
705
706         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
707         implementation object.
708
709         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
710         not just windows.
711         
712         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
713         Use the wrapper object.
714         
715 2000-10-06  Havoc Pennington  <hp@redhat.com>
716
717         * Makefile.am (SRC_SUBDIRS): contrib subdir
718
719         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
720         so it can be used in Xlib version
721
722         * demos/testpixbuf.c (update_timeout): error checking from 1.0
723         tree
724
725         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
726         change from 1.0 tree that returns first frame of animation
727         if the loaded file is an animation.
728
729         * contrib: add new directory to hold stuff that comes with GTK+
730         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
731         
732         * configure.in: add contrib/*
733
734 2000-10-05  Havoc Pennington  <hp@redhat.com>
735
736         * demos/testpixbuf-save.c: add pixbuf save test
737
738         * demos/Makefile.am: add testpixbuf-save.c
739
740 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
741
742         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
743         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
744         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
745         * gtk/gtktreeselection.[ch]: Replaced
746         "node_selected"/"node_unselected" signal with "selection_changed"
747         signal.
748
749 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
750
751         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
752         tree widget.
753
754 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
755
756         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
757         drawing.
758
759 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
760
761         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
762         Move list pointer forwards before removing item from
763         list. (Crash reported by Salmaso Raffaele)
764
765         * gdk/gdkwindow.h: Remove spurious trailing ,
766
767         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
768         dependencies on uninstalled libraries, sorry folks.
769
770 2000-10-04  Havoc Pennington  <hp@redhat.com>
771
772         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
773         gtk/gtkiconfactory.c: Fix copyrights    
774
775         * demos/testpixbuf.c: add inline pixbuf test
776         
777 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
778
779         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
780         Add gdk_window_iconify.
781
782         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
783         (gdk_window_set_geometry_hints): Add win_gravity
784         to geometry structure.
785
786         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
787         Implement _NET_WM_PING.
788
789         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
790         Set _NET_WM_PID on the client leader.
791
792         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
793         Handle UTF-8 better.
794
795         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
796         UTF-8 better, set _NET_WM_NAME as well. Only set
797         icon name if it hasn't previously been explicitely 
798         set.
799
800 2000-10-03  Havoc Pennington  <hp@redhat.com>
801
802         * gtk/testtextbuffer.c: clean up trailing whitespace,
803         add extensive tests for tag toggle iteration.
804         
805         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
806         distance
807
808         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
809         optimize case where the tag root is on level 1
810         (gtk_text_line_previous_could_contain_tag): attempt to implement
811         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
812         functionality
813
814         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
815         Implement this, though not very efficiently.
816
817         * gtk/gtktextiterprivate.h: reformat
818
819         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
820         iterator
821
822         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
823         this to properly revalidate the iterators.
824
825         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
826         properly at the end of the line (and therefore on empty lines)
827
828         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
829         maybe we should return a value...
830
831 2000-10-03  Tor Lillqvist  <tml@iki.fi>
832
833         * config.h.win32: Guard definition of alloca(). glib.h now handles
834         that.
835
836         * gdk/gdk.def
837         * gtk/gtk.def: Add new entry points.
838
839         Changes just to make GTK+ build without errors on Win32. No hope
840         of it working in its current state, though...:
841         
842         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
843         some functions from the X11 backend, just to make GTK+ build.
844
845         * gdk/makefile.mingw.in
846         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
847         number. Add new object files.
848
849         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
850         GetMessageTime to get timestamp (where on X11 uses
851         gdk_x11_get_server_time()).
852
853 2000-10-02  Havoc Pennington  <hp@pobox.com>
854
855         * gtk/gtktextview.c: text_window_* weren't static and should have
856         been.
857         Start work on child widgets; not yet complete, syncing to 
858         office computer.
859
860         * gtk/gtktextchild.h: change this to contain a public interface,
861         starting work on child interfaces.
862         * gtk/gtktextchildprivate.h: move private interfaces here
863
864         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
865
866         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
867         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
868         gtk/gtktextmark.c: copyright notices
869
870         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
871         internal functions      
872
873         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
874         internal function
875
876         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
877         Reformatting    
878
879 2000-09-30  Havoc Pennington  <hp@pobox.com>
880
881         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
882         NULL start/end pointers
883
884         * gtk/gtktextbuffer.c: Write some docs
885         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
886         NULL, so you can just check whether there's a selection.        
887
888         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
889         cleanup_line or segments_changed ourselves, it gets done 
890         in unlink_segment
891
892         * gtk/gtktextmark.h:
893         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
894         
895         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
896
897         * gtk/gtktextmark.c: delete some more old Tk cruft
898
899         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
900         mark before removing it, so we can emit MARK_DELETED with a valid
901         pointer.
902         (gtk_text_buffer_mark_set): hold ref across signal emission
903
904         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
905         whining about attempts to delete special marks
906
907         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
908         underscore, since it's internal.
909
910         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
911         now implemented in terms of iterators in gtktextiter.h
912
913         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
914         New function, destructively sets contents of buffer. Also 
915         a convenient way to clear the buffer by setting text to ""
916
917         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
918         multiline string literal
919
920         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
921         text changes.
922
923         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
924         is not dereferenceable
925         (gtk_text_iter_forward_lines): fix return value
926
927 2000-09-29  Havoc Pennington  <hp@redhat.com>
928
929         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
930
931         * gtk/gtktextview.c: Implement drag thresholding; change functions 
932         that set border window size to have nicer name
933         (gtk_text_view_mark_set_handler):  Fix this to have the 
934         right signature.
935
936         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
937
938         * gtk/testtext.c: Update with API changes, put line numbers on 
939         both sides.
940         
941         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
942         with this
943
944         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
945         pixbuf; delete a big block of #if 0 Tk code
946
947         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
948         insert_pixmap with insert_pixbuf
949
950 2000-09-29  Martin Baulig  <baulig@suse.de>
951
952         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
953         confusion with the GdkPixbuf of the GNOME 1.x platform.
954
955 2000-09-29  Havoc Pennington  <hp@pobox.com>
956
957         * gtk/gtktextview.c: Implement the side windows.
958
959         * gtk/testtext.c: Implement simple line numbering in the 
960         left side window; seems to make scrolling sloooow. Oops.
961         Also, cursor blink is for some reason causing redraws
962         of the line numbers. Should investigate...
963
964 2000-09-28  Havoc Pennington  <hp@redhat.com>
965
966         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
967         scrolling child windows, and draw focus rectangle properly.
968         
969         (gtk_text_view_buffer_to_window_coords):
970         Coordinate transformation to deal with all these freaking windows
971         and offsets
972         (gtk_text_view_window_to_buffer_coords): transform the other way
973
974         * gtk/testtext.c (create_buffer): Update to match Pango API change
975
976         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
977         anonymous tags
978         (foreach_unref): don't emit remove signal from finalize, just
979         set tag's parent to NULL
980
981 2000-09-26  Havoc Pennington  <hp@redhat.com>
982
983         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
984         Fix some warnings       
985
986 2000-09-26  Havoc Pennington  <hp@redhat.com>
987
988         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
989         headers into the private header list
990
991         * Makefile.am (pkgconfig_DATA): install pkg-config files
992
993         * configure.in: add pkg-config files
994
995         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
996
997         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
998         outstanding icon caches on theme change.
999
1000         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
1001         important types:
1002
1003         (GtkIconSource): Specification for creating a pixbuf 
1004         appropriate for a direction/state/size triplet from 
1005         a source pixbuf or filename
1006
1007         (GtkIconSet): List of GtkIconSource objects that are used to
1008         create the "same" icon (e.g. an OK button icon), and cache for
1009         rendered icons
1010
1011         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
1012         up the icon set for a given stock ID.  GTK maintains a stack of
1013         GtkIconFactory to search, and applications or libraries can add
1014         additional icon factories on top of the stack
1015         
1016         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
1017         the set of GtkIconSource specified for a given stock ID into 
1018         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
1019         RcStyle, under the specified stock ID.
1020
1021         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
1022         render_icon used to derive a GdkPixbuf from a GtkIconSource.
1023         This allows people to theme how prelight, insensitive, etc. are
1024         done.
1025
1026         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
1027         icon factories for a style, and return the resulting 
1028         icon set if any.
1029
1030         (gtk_style_render_icon): Render an icon using the render_icon 
1031         method in the GtkStyleClass.
1032
1033         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
1034         Use the style for a given widget to look up a stock ID, get the
1035         icon set, and render an icon using the render_icon method 
1036         of the style
1037
1038         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
1039         (contains information about a stock item), the built-in stock item
1040         IDs, and functions to add/lookup stock items.
1041
1042         * gtk/stock-icons/*: Stock icons that come with GTK
1043
1044         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
1045         a button based on a GtkStockItem
1046         (gtk_button_new_accel): Takes a uline string and accel group, and
1047         installs the accelerator.
1048
1049         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
1050         image-display widget.
1051
1052 2000-09-25  Havoc Pennington  <hp@redhat.com>
1053
1054         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
1055
1056         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
1057         Fix a bug when removing node data, we didn't properly 
1058         re-splice the linked list after removing the data.
1059
1060         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
1061         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
1062
1063         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
1064
1065         * gtk/gtktextlayout.c (set_para_values): Set tab array 
1066         for the layout from the GtkTextTag.
1067
1068         * gtk/gtktexttypes.h: delete tab and search cruft, 
1069         remove g_convert() in favor of GLib version
1070
1071         * gtk/gtktexttypes.c: remove tab implementation from here,
1072         move to Pango
1073
1074         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
1075         tab stuff using new PangoTabArray from Pango
1076
1077         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
1078         unused border_width stuff
1079
1080 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
1081
1082         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
1083         glib) and now useless utf_to_latin1() latin1_to_utf()
1084
1085         * gtk/gtktextview.[ch]: Change ::move_insert and
1086         ::delete_text action signals to ::move and ::delete;
1087         create the signals with the right enumeration type,
1088         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
1089         C-v bindings, change Home, End to move to beginning/end
1090         of line, Add C-Home C-End to move to beginning/end
1091         of buffer. Change ::cut_text to ::cut_clipboard, etc;
1092         combine ::scroll_text into ::move; use new GtkSelectionData
1093         functions to simplify DND text handling.
1094         
1095         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
1096         deletion enumerations here, rename enumeration values to 
1097         be consistently plural.
1098
1099         * gtk/gtktextbuffer.c: Use new clipboard interfaces
1100         for cut/copy/paste and primary selection.
1101
1102         * gtk/gtktextbuffer.[ch]: Remove excess time and
1103         'interactive' arguments from cut/copy/paste;
1104         rename cut to cut_clipboard, etc; remove
1105         gtk_text_buffer_get_clipboard_contents().
1106
1107         * gtk/gtktextlayout.[ch]: Add 
1108         gtk_text_layout_move_iter_to_line_end() to move the iter to 
1109         line ends.
1110
1111         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
1112         Functions to set or get a UTF-8 string on the selection
1113         data.
1114
1115         * gtk/gtkclipboard.[ch]: New, simplified selection handling
1116         interfaces.
1117
1118         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
1119         created widgets - one of these is useless if we don't.
1120
1121         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
1122         a public function clear all targets registered for the
1123         widget.
1124
1125         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
1126         Never call gtk_widget_realize() - that was just asking
1127         for bizarre side-effects.
1128
1129         * gtk/gtkselection.c (gtk_selection_owner_set): Call
1130         gdk_selection_owner_set even if the widget is the
1131         same so that we reliably update the timestamp on
1132         the server.
1133
1134         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
1135         gdk_x11_get_server_time() function.
1136         
1137         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
1138         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
1139         Add some tricky filtering on serial numbers for
1140         selection clear events to fix up long-standard
1141         race condition FIXME's in gtkselection.c.
1142
1143         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
1144         routines to convert from utf8 to compound text or
1145         STRING and from a text property to UTF-8.
1146
1147         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
1148         a convenience function gdk_get_current_event_time().
1149
1150         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
1151         and free selection_data->data properly
1152
1153 Sat Sep  9 17:15:45 2000  Owen Taylor  <otaylor@redhat.com>
1154
1155         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
1156         extra config options "im_module_file" (cache file for
1157         input method modules), and "im_module_path" - path
1158         to look for modules when generating cache file.
1159
1160         This doesn't scale.
1161
1162 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
1163
1164         * gtk/gtkthemes.c: Remove some unecessary includes.
1165
1166 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
1167
1168         * gtk/gtktextdisplay.c
1169         * gtk/gtktextlayout.c
1170         * gtk/gtktexttag.c
1171         * gtk/gtktexttag.h
1172         * gtk/testtext.c: Change the overstrike property to strikethrough,
1173         to closer match pango.
1174
1175 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
1176
1177         * gtk/gtktextview.c: Fix up visibility so that focus,
1178         cursor_visible and blink interact properly.  Reenable cursor blink
1179         which had been roughly disabled. Make blink and focus
1180         properly per-view.
1181
1182         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
1183         Add a flag for whether to display insertion cursor and
1184         a function to set the flag.
1185
1186         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
1187         get_line_y() to get_line_yrange(), to be a bit more generally
1188         useful.
1189
1190 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
1191
1192         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
1193           do stop_navigating_submenu, to clear last timeout properly.
1194           Also in gtk_menu_motion_notify move ignore_enter above
1195           the conditional to make it always happen as suggested by Owen
1196
1197 2000-09-07  Tor Lillqvist  <tml@iki.fi>
1198
1199         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
1200
1201         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
1202         w32api headers.
1203
1204         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
1205         declarations.
1206
1207         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
1208         (gdk_win32_get_colormap): A line had been deleted by mistake.
1209
1210         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
1211         (gdk_event_translate): Handle more virtual keycodes to be able to
1212         generate GDK events for Control-comma, Control-period, etc.
1213
1214         * gtk/gtk.def: Add some missing entry points.
1215
1216 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
1217
1218         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
1219         Doc comment fixing. (Mostly non-matching parameter names.)
1220
1221         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
1222         comments a little to avoid looking like a doc comment.
1223
1224         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
1225         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
1226         conversions be changed to GError?)
1227
1228         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
1229         Move private #defines into .c file.
1230
1231         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
1232         order of argument addition, remove duplicates.
1233
1234         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
1235         parent class is FrameClass, not BinClass.
1236
1237         * gtk/gtk.h: Add gtkinvisible, which was missing.
1238         (It's occasionalyl useful for client apps, if seldom.)
1239
1240         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
1241         #define.
1242
1243 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
1244
1245         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
1246         coordinates when creating window, instead of GDK-space
1247         coordinates. (Avoid BadValue on too large windows.)
1248
1249 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1250
1251         * configure.in (use_mmx_asm): Remove conftest* after use along the
1252         lines of AC_TRY_COMPILE.        
1253         
1254         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
1255         of g_dirname, which is deprecated.
1256         (gtk_rc_parse_any): Removed calls to
1257         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
1258
1259         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
1260         Removed calls to g_hash_table_{freeze,thaw}, as they are
1261         deprecated now.
1262
1263         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
1264         instead of g_basename.
1265         
1266 2000-09-04 Elliot Lee <sopwith@redhat.com>
1267         
1268         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
1269         ANSI warning.
1270
1271 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
1272
1273         * gtk/gtkwidget.h:  Add some documenting comments about 
1274           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
1275           just as owen said on irc.
1276
1277         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
1278           set HAS_DEFAULT.  Only set it if there isn't another window
1279           holding it (a focus window which RECEIVES_DEFAULT) and only unset
1280           it if the widget is not the focused window with RECEIVES_DEFAULT.
1281           This fixes weird double default bugs in dialogs which has things
1282           call gtk_window_set_default at times.
1283
1284 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
1285
1286         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
1287         Nils Barth and David Santiago to improve submenu
1288         navigation. The patch does this by creating a triangular
1289         region from the point where the pointer leaves the
1290         menu to the submenu.  While the pointer is in
1291         that region and a timeout has not expired, events 
1292         that would cause the active submenu to change are
1293         ignored.
1294
1295 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
1296
1297         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
1298         moving a toplevel window immediately after sizing it would
1299         result in it being sized back to the old size since 
1300         impl->width, impl->height aren't updated until we hear
1301         back from the server. There is still a (longstanding) bug
1302         here that gdk_window_get_size() will give the wrong size
1303         until we do hear back.
1304
1305 2000-08-31  Havoc Pennington  <hp@redhat.com>
1306
1307         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
1308         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
1309         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
1310         Rename GtkTextStyleValues to GtkTextAttributes
1311
1312 2000-08-31  Havoc Pennington  <hp@pobox.com>
1313
1314         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
1315         for rapid testing whether an iterator is the end iterator
1316         (gtk_text_btree_new): init end line cache
1317         (gtk_text_line_is_last): use fast cached line to 
1318         see if we're the last line.
1319         (get_last_line): use cached line here too, should 
1320         speed up some random unrelated code.
1321         
1322 2000-08-30  Havoc Pennington  <hp@pobox.com>
1323
1324         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
1325         signals.
1326
1327         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
1328         delete_text signals. This allows the signals to be used for
1329         implementing undo.
1330
1331         * gtk/gtktextbuffer.c: Change signal handler signatures; 
1332         provide "interactive" argument when emitting insert_text or
1333         delete_text signal.
1334         
1335 2000-08-30  Havoc Pennington  <hp@pobox.com>
1336
1337         * gtk/gtktextbuffer.c: Docs
1338
1339 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
1340
1341         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
1342         from switch statements, since Tor removed the enumeration
1343         value.
1344         
1345         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
1346         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
1347
1348 2000-08-29 Elliot Lee <sopwith@redhat.com>
1349         * */*.h: Use G_GNUC_CONST.
1350
1351 2000-08-27  Havoc Pennington  <hp@pobox.com>
1352
1353         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
1354         minor indentation fixes, inserted some FIXME about stuff I
1355         realized was broken while documenting it.
1356         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
1357         GTK convention  
1358
1359 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
1360
1361         * gtk/testgtk.c (create_styles): Fix double free of
1362         font desc.
1363
1364 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
1365
1366         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
1367         
1368         * gtk/testgtk.c (create_styles): Add a test for modifying
1369         the style through gtk_widget_modify_*.
1370
1371         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
1372         a function to get the current modifier style.
1373
1374         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
1375         of the passed in GtkRcStyle instead of ref'ing it.
1376
1377         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
1378
1379 2000-08-20  Tor Lillqvist  <tml@iki.fi>
1380
1381         * gdk/gdkimage.h
1382         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
1383         shared memory image+pixmap GdkImage type, or
1384         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
1385         I am dropping that.
1386
1387         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
1388         actually call gtk_init_abi_check(), passing also
1389         sizeof(GtkWindow). Ditto for gtk_init_check(). 
1390
1391         * gtk/gtk.def
1392         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
1393         New functions, used to check that the GTK+-using code has been
1394         compiled using the correct compiler and switches. In particular,
1395         with gcc one has to use the -fnative-struct switch as GTK+ is
1396         compiled with that.
1397
1398 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
1399
1400         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
1401         ->prev fields when merging lists. (Found simultaneously
1402         by Pawel Salek and Jakub Jelinek)
1403
1404 2000-08-12  Tor Lillqvist  <tml@iki.fi>
1405
1406         * gdk/gdk.def
1407         * gtk/gtk.def: Add missing entries.
1408
1409         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
1410         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
1411
1412         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
1413         function. Dummy implementation at this point.
1414
1415         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
1416         rules. Undefine GTK_COMPILATION when compiling the test programs.
1417         
1418         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
1419
1420 2000-08-11  Tor Lillqvist  <tml@iki.fi>
1421
1422         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
1423         to convert back and forth from UTF-8 and the "system" (or "current
1424         locale") charset when necessary. Indentation/spacing cleanup.
1425
1426 2000-08-10  Havoc Pennington  <hp@redhat.com>
1427
1428         * Makefile.am (snapshot): Change the format of the snapshot
1429         version to match glib
1430
1431         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
1432         from EXTRA_DIST since it doesn't seem to exist
1433
1434 2000-08-10  Tor Lillqvist  <tml@iki.fi>
1435
1436         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
1437         version of the directory name (not the UTF-8 one) when building
1438         the path name to stat().
1439
1440 2000-08-03  Elliot Lee  <sopwith@redhat.com>
1441
1442         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
1443         PANGO_ATTR_SHAPE set.
1444
1445 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
1446
1447         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
1448         Peter Osterlund to simplify the code while keeping the
1449         functionality the same.
1450
1451 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
1452
1453         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
1454         is_viewable() test further inside the function, since removing the 
1455         window from the redraw list without clearing ->update_area
1456         was also very broken.
1457
1458 2000-08-02  Tor Lillqvist  <tml@iki.fi>
1459
1460         * configure.in: Check for <unistd.h>.
1461
1462 2000-08-01  Martin Baulig  <baulig@suse.de>
1463
1464         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
1465         to display the message that this is a development version of GTK+.
1466
1467 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
1468
1469         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
1470         was depending on widget->allocation instead of the width of text_area,
1471         which was incorrect for subclasses like GtkSpinButton.
1472
1473         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
1474         with width == 1 tests that should be width == -1.
1475
1476 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
1477
1478         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
1479         (broken, Elliot, every single window blank on X) custom code with call
1480         to gdk_window_is_viewable() which a) prevents code duplicate and
1481         b) works. 
1482
1483 2000-07-31  Elliot Lee  <sopwith@redhat.com>
1484
1485         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order to get the GDK_PARENT_ROOT() macro to work.
1486         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
1487         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces of, windows that aren't shown.
1488         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of pointer grab stuff.
1489
1490 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
1491
1492         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
1493           s/gtk_main_iteration/g_main_iteration/
1494
1495           Did this already in change:
1496                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
1497           don't know how it got reverted.
1498
1499 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
1500
1501         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
1502         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
1503
1504         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
1505         not gdk_pixbuf.
1506
1507 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
1508
1509         * configure.in,po/{sp,sr}.po: Added Serbian files
1510
1511 2000-07-30  Tor Lillqvist  <tml@iki.fi>
1512
1513         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
1514
1515         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
1516         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
1517         GIOChannel implementation.
1518
1519         * gdk/win32/gdkinput.c
1520         * gdk/win32/gdkpango-win32.c: Update license name here, too.
1521
1522         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
1523         definition to match prototype.
1524
1525         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
1526
1527 2000-07-27  Elliot Lee  <sopwith@redhat.com>
1528
1529         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
1530         function, to allow handling image formats that cannot be detected
1531         by looking at content alone.
1532
1533 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
1534
1535         * docs/tutorial/*.gif *.jpg *.eps
1536           Update these to the same look-n-feel.
1537           Why does including images in DocBook suck so badly?
1538
1539 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
1540
1541         * gtk/gtktable.c: applied patch from Phil Thompson
1542         <phil@river-bank.demon.co.uk> that enables space settings for
1543         the last row/columns as well.
1544
1545 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
1546
1547         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
1548         updates the license headers to the GNU Lesser General Public License,
1549         as well as updating the copyright year to 2000.
1550
1551 2000-07-26  Robert Brady  <rwb197@zepler.org>
1552
1553         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
1554           and po/Makefile, was installing and looking for them under gtk20
1555           and gtk2 respectively.
1556
1557 2000-07-25  Havoc Pennington  <hp@redhat.com>
1558
1559         * gtk/testtext.c: Comment out some stuff that depends on the rest
1560         of my patches.
1561
1562 2000-07-25  Havoc Pennington  <hp@redhat.com>
1563
1564         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
1565         buffer
1566
1567 2000-07-25  Havoc Pennington  <hp@redhat.com>
1568
1569         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
1570         widget changes.
1571
1572         * gtk/gtktextview.h: To be consistent with usage of "line"
1573         throughout the API to mean "newline-terminated thingy", change
1574         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
1575         to MOVEMENT_LINE.
1576
1577         (GtkTextView): Add flags for default editability, and whether to
1578         show the cursor. Add functions to get/set that. Add 
1579
1580         (gtk_text_view_get_iter_location): new function
1581
1582         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
1583         gtktextlayout.h
1584         (g_convert): Add g_convert temporarily, will go in glib in a bit
1585         
1586         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
1587         GtkTextTagTableForeach instead of brokenly using GHFunc.
1588         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
1589
1590         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
1591         moved to public header.
1592
1593         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
1594         "invisible", since "elide" was a bad name.
1595         (gtk_text_tag_get_priority): Added
1596
1597         (GtkTextStyleValues): put this in public header, along with
1598         functions to use it.
1599
1600         * gtk/gtktextmarkprivate.h: Include more headers, since we no
1601         longer include gtktextbtree.h.
1602
1603         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
1604         gtk_text_mark_deleted
1605
1606         * gtk/gtktextlayout.h: Don't include the "really private" headers,
1607         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
1608         to make this possible. Now we only need to install
1609         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
1610         (However the Makefile.am isn't changed yet because of the
1611         logistics of merging gtk-hp-patches piecemeal)
1612
1613         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
1614         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
1615         gtk_text_iter_get_line is now used in the public API for a
1616         different purpose.
1617
1618         * gtk/gtktextiter.h: Clean up function names to be more
1619         consistent. Always call char offset "offset" and byte index
1620         "index". A "line" is always a line number. 
1621
1622         (gtk_text_iter_is_last): new function, more efficient than 
1623         the existing way to check
1624         (gtk_text_iter_is_first): new function, also more efficient
1625
1626         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
1627
1628         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
1629         gtk_text_iter_forward_char, etc.
1630
1631         (gtk_text_iter_forward_to_tag_toggle): Renamed from
1632         forward_find_tag_toggle, since this isn't a linear search
1633
1634         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
1635
1636         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
1637         New functions, search for a buffer substring.
1638
1639         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
1640         interactive and default editable (since we need to store that info
1641         until we receive the selection data).
1642
1643         Remove all the _at_char and at_line etc. versions of functions;
1644         only have iterator versions.
1645
1646         Add _interactive() versions of functions, that consider the
1647         editability of text. (FIXME add interactive flag to the 
1648         insert/delete signals per Darin's suggestion)
1649
1650         (gtk_text_buffer_get_tag_table): new function, demand-creates the
1651         tag table if necessary
1652
1653         Remove declaration of gtk_text_buffer_get_iter_from_string
1654
1655         (_gtk_text_buffer_get_btree): private/internal function, added.
1656         
1657
1658         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
1659         (gtk_text_line_is_last): new function
1660
1661 2000-07-25  Havoc Pennington  <hp@redhat.com>
1662
1663         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
1664         using GtkProgressBar. See Changes-2.0.txt for details.
1665
1666         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
1667         "pulse_step" which are the equivalent of
1668         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
1669         Implement new API.
1670         
1671         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
1672         (use_text_format) to mark whether text set on the progress bar is
1673         a format string. Deprecate entire GtkProgress interface.
1674
1675         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
1676         (gtk_progress_build_string): make this a no-op if use_text_format
1677         is FALSE
1678
1679         * docs/Changes-2.0.txt: Describe progress bar changes.
1680
1681 2000-07-25  Tor Lillqvist  <tml@iki.fi>
1682
1683         * Makefile.am: Include the build directory.
1684
1685         * configure.in: Generate build/Makefile, build/win32/Makefile,
1686         gdk/, gdk/win32/, and gtk/makefile.mingw.
1687
1688         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
1689         Add GETTEXT_PACKAGE.
1690         
1691         * gdk/gdk.def
1692         * gtk/gtk.def: Updates.
1693
1694         * gdk/gdkfont.h
1695         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
1696         need them any longer.
1697
1698         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
1699
1700         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
1701         PANGOWIN32_LIBS and gdk_pixbuf.
1702
1703         * gdk/win32: Compiles, but no doubt doesn't work at all.
1704
1705         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
1706
1707         * gdk/win32/gdkinput.c: New file, temporarily.
1708         
1709         * gdk/win32/gdkinput-win32.h: New file
1710
1711         * gdk/win32/gdkinputprivate.h: Remove.
1712
1713         * gdk/win32/gdkpango-win32.c: New file.
1714
1715         * gtk/makefile.mingw.in: New file
1716
1717         * gtk/makefile.cygwin: Removed
1718         
1719         * gtk/Makefile.am: Update accordingly.
1720
1721         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
1722         made externally visible.
1723
1724         * gtk/gtkmain.c: Use it.
1725         
1726         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
1727         is enough.
1728
1729         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
1730
1731 2000-07-24 Elliot Lee <sopwith@redhat.com>
1732         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
1733         individual backends already.
1734         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
1735         again. Yes, there really is a good reason for this, if you are using the gdkregion
1736         internals, and if you're not, why do you care?
1737         * gdk/gdkwindow.c: Fix inverted condition
1738         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
1739         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
1740         * gtk/gtkrange.c: Redraw trough when moving.
1741         * gtk/gtktypeutils.c: Fix warning by adding const cast.
1742         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
1743
1744 2000-07-23  Tor Lillqvist  <tml@iki.fi>
1745
1746         * configure.in: Check for mkstemp and sigsetjmp. Output
1747         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
1748
1749         More work on GDK for Win32. Still in an intermediate state.
1750
1751         * gdk/makefile.cygwin
1752         * gdk/win32/makefile.cygwin: Removed.
1753         
1754         * gdk/makefile.mingw.in
1755         * gdk/win32/makefile.mingw.in: New files.
1756
1757         * gdk/Makefile.am
1758         * gdk/win32/Makefile.am: Generate and distribute them.
1759
1760         * gdk/win32/gdkwindow-win32.h
1761         * gdk/win32/gdkdrawable-win32.h
1762         * gdk/win32/gdkpixmap-win32.h: New files.
1763
1764         * gdk/win32/gdkcolor-win32.c
1765         * gdk/win32/gdkcursor-win32.c
1766         * gdk/win32/gdkdrawable-win32.c
1767         * gdk/win32/gdkgc-win32.c
1768         * gdk/win32/gdkimage-win32.c
1769         * gdk/win32/gdkprivate-win32.h
1770         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
1771         Rename fields and variables called xcursor, xid, etc (these names
1772         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
1773
1774 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
1775
1776         * gtk/gtkentry.[ch]: Fix some problems with vertical
1777         alignment.
1778
1779         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
1780         char/byte confusion.
1781
1782 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
1783
1784         * gtk/gtktextview.c (changed_handler): Fix bug where
1785         redraw wasn't being done properly when height of
1786         dirty region changed.
1787
1788         * demos/Makefile.am: Remove various references to
1789         -lgmodule
1790
1791 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
1792
1793         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
1794         PangoAttrShape to reserve space for pixmaps, add 
1795         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
1796         in the display functions.
1797         
1798         * gtk/testgtk.c (create_layout): Set some more exotic
1799         scrolled window options
1800
1801         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
1802         Add function to set the shadow type of a window, to allow
1803         putting a shadow around widgets such as GtkLayout or GnomeCanvas
1804         which don't draw their own frame.
1805
1806 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
1807
1808         * docs/tutorial/package-db-tutorial.sh: New file for
1809           packaging DocBook format tutorial
1810
1811 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
1812
1813         * docs/tutorial/gtk-tut.sgml: Minor updates
1814
1815         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
1816
1817 2000-07-19  Tor Lillqvist  <tml@iki.fi>
1818
1819         * gtk/gtksignal.c: Fix C++ comment.
1820
1821         * gtk/gtkimmulticontext.c
1822         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
1823         don't return value from void functions.
1824
1825         * gtk/gtk.def: Add gtk_rc_style_unref.
1826
1827 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1828
1829         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
1830         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
1831         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
1832         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
1833         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
1834         gtk/gtktypeutils.h: Include files outside of the extern "C"
1835         block. Makes some C++ compiler happy. Reported by Denis Vakatov
1836         <vakatov@peony.nlm.nih.gov>.
1837
1838 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
1839
1840         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
1841           Completes first pass. Hurrah!
1842
1843 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
1844
1845         * docs/tutorial/gtk-tut.sgml: More clean ups.
1846
1847 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
1848
1849         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
1850         paint the background of the text area which was accidentally
1851         removed at some point.
1852
1853         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
1854           
1855          - Move most of the functionality from the theme vtable
1856            into GtkRcStyleClass and GtkStyleClass. The moved
1857            vtable functions were changed a bit in the move to
1858            work better in their new home.
1859
1860          - Get rid of the engine and engine_data fields from
1861            GtkRcStyle and GtkStyle; instead the theme
1862            engine derives theme-specific subclasses of GtkRcStyle
1863            and GtkStyle
1864
1865          - Add extra dlsym() found entry point to themes,
1866            theme_create_rc_style().
1867
1868         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
1869         in gtk_style_real_copy.
1870
1871         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
1872         to register a type associated with an engine. (The engine
1873         won't be unloaded as there is an instance of the type.)
1874
1875
1876 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
1877
1878         * docs/tutorial/gtk-tut.sgml: Clean ups.
1879
1880 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
1881
1882         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
1883           of cleaning up to do.
1884
1885 2000-07-15  Tor Lillqvist  <tml@iki.fi>
1886
1887         * gdk/testgdk.c: New file, quick hack to test backends for
1888         pixel-by-pixel correctness of the most simple graphic operations.
1889
1890 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
1891
1892         * Really release 1.3.1
1893         
1894         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
1895         include structure.
1896
1897 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
1898
1899         * Released 1.3.1
1900
1901 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
1902
1903         * gtk/gtktextlayout.c: use FALSE for size_only most
1904         of the time when calling gtk_text_layout_get_line_display()
1905         to avoid causing double reshapes when a redraw follows
1906         immediately after.
1907
1908 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
1909
1910         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
1911         appropriate region and gdk_window_process_updates() so trough
1912         updating doesn't lag behind the window being scrolled.
1913
1914         * gdk/gdkgc.c: Make parent_class pointer static.
1915          
1916 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
1917
1918         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
1919         include <string.h>.
1920          
1921         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
1922         cut-and-paste error in computing memory offset for 4 channels.
1923
1924 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
1925
1926         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
1927         gtk_rc_append_default_pixmap_path(), since it wasn't
1928         adding an interesting path and we don't have a meaningful
1929         default for this value.
1930
1931 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
1932
1933         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
1934         gtk-config to gtk-config-2.0 move gtk_.m4 to
1935         gtk-2.0.m4
1936
1937         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
1938         gdk/Makefile.am demos/Makefile.am: Change 
1939         library names to libgtk-1.3.la, etc, so that we
1940         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
1941
1942         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
1943         gdk/Makefile.am gdk/x11/Makfile.am
1944         Move include files into /usr/include/gtk-2.0, 
1945         /usr/lib/gtk-2.0/include/
1946          
1947         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
1948         gtk/gtkintl.h: Change package for gettext from 
1949         gtk+ to gtk20. Put hack in autogen.sh to modify
1950         po/Makefile.in.in after gettextize to make this
1951         possible.
1952
1953         * gtk+.spec: Some updates, not tested.
1954
1955         * gdk-pixbuf/Makefile.am: Move loaders into
1956         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
1957
1958         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
1959         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
1960         to THEMENAME/gtk-2.0/. Move engine directory  to
1961         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
1962         
1963 2000-07-12  Tor Lillqvist  <tml@iki.fi>
1964
1965         Win32 changes, still doesn't build though.
1966
1967         * gdk/makefile.cygwin
1968         * gdk/win32/makefile.cygwin
1969         * gtk/makefile.cygwin: Updates.
1970
1971         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
1972         default values for fg and bg pixel as X11 does (0 and 1), not
1973         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
1974         Use 0 for pen width by default (treated as 1 anyway later, but for
1975         apps that might check the value in the GdkGC).
1976         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
1977         interface to gdk_gc_predraw and _postdraw.
1978
1979         * gdk/win32/gdkwin32.h
1980         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
1981
1982         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
1983         extraneous semicolon.
1984
1985         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
1986
1987         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
1988         not the Win32 bitspixel value.
1989
1990         * gdk/win32/gdkcc-win32.c:
1991         * gdk/win32/gdkcolor-win32.c 
1992         * gdk/win32/gdkprivate-win32.h
1993         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
1994         GDK object structure.
1995
1996 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
1997
1998         * docs/tutorial/gtk_tut_12.es.sgml (name): 
1999         * docs/tutorial/gtk_tut_it.sgml (name): 
2000         * docs/tutorial/gtk_tut_fr.sgml (name): 
2001         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
2002         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
2003
2004 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
2005
2006         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
2007           small changes.
2008
2009 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
2010
2011         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
2012         a bug here, never been here and never fixed anything ;(
2013         (don't segfault if tree->root_tree is NULL, which happens prior
2014         to widget realization, but puke instead).
2015
2016 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
2017
2018         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
2019         add the necessary tokens.
2020
2021         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
2022         (gtk_rc_style_to_style): copy thicknesses.
2023         (gtk_rc_init_style): apply thicknesses.
2024         (gtk_rc_parse_style): parse xthickness and ythickness.
2025
2026         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
2027
2028         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
2029         (gdk_window_new): 
2030         (_gdk_windowing_window_init): 
2031         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
2032         (gdk_pixmap_create_from_data): 
2033         (gdk_bitmap_create_from_data): 
2034         (gdk_pixmap_new): 
2035         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
2036         (gdk_image_new): 
2037         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
2038         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
2039         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
2040         (gdk_colormap_get_system): 
2041         (gdk_colormap_new): 
2042         * gdk/gdkwindow.c (gdk_window_init): 
2043         * gtk/gtkstyle.c (gtk_style_new):
2044         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
2045         * gdk/gdkpixmap.c (gdk_pixmap_init): 
2046         * gtk/gtkrc.c (gtk_rc_style_new):
2047         use g_object_new() instead of g_type_create_instance() which
2048         is a private function for fundamental type implementations.
2049
2050 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
2051
2052         * configure.in: Add check for db2html
2053
2054 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
2055
2056         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
2057         hack to set glib_debug_objects based on gtk_debug_flags.
2058
2059 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
2060
2061         * INSTALL.in: Update the Prerequisites section.
2062
2063         * Makefile.am demos/Makefile.am docs/Makefile.am
2064         docs/tutorial/Makefile.am gdk/x11/Makefile.am
2065         gdk/linux-fb/Makefile.am: Dist fixes
2066
2067 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
2068
2069         * NEWS: 10,000 foot view of 1.3.1 changes.
2070
2071 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
2072
2073         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
2074         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
2075         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
2076         gdk/x11/gdkmain-x11.c: 
2077
2078         Patch from George Lebl to add a GdkGrabStatus enumeration to use
2079         as a return value of gdk_*_grab(). Previously, we just
2080         returned the X11 values directly.
2081
2082 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
2083
2084         * gdk/x11/Makefile.am: Patch from George Lebl to 
2085         install all the headers in the right place.
2086
2087 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
2088
2089         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
2090           initial conversion to DocBook.
2091
2092 2000-07-04  Tor Lillqvist  <tml@iki.fi>
2093
2094         * README.win32: Improve a bit.
2095
2096         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
2097         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
2098         Alt+0nnn on the numpad (used to enter characters by numeric code
2099         from current DOS or ANSI codepage) working correctly, as in other
2100         Windows apps.
2101
2102         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
2103         same argument validity tests as in X11 version.
2104         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
2105
2106         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
2107         definitions in case missing from headers.
2108
2109         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
2110         destroy the window-specific cursor.
2111         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
2112         calling GetModuleHandle(NULL).
2113         (gdk_window_set_cursor): Reworked to always copy the passed cursor
2114         with CopyCursor before setting it as the window-specific
2115         cursor. It is OK for the caller to destroy the GdkCursor (and thus
2116         also its Windows cursor) after calling this function. Destroy any
2117         previous window-specific cursor.
2118
2119 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
2120
2121         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
2122         font charset is iso8859-1, not iso-8859-1.
2123
2124 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
2125
2126         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
2127         Use g_get_charset() instead of g_get_codeset().
2128
2129         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
2130         Comment out some strdup'ing functions to keep timj
2131         happy until we finish fighting this out.
2132
2133 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
2134
2135         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
2136         <= width or height.
2137
2138         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
2139         from 1.2 for parent/child states.
2140
2141         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
2142         of typos.
2143
2144         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
2145         event structures, replace with a generic axes field. Replace 
2146         deviceid/sourec with GdkDevice *device.
2147
2148         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
2149         to extract particular axis use value from event. (Also
2150         can be used for normal X/Y.)
2151
2152         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
2153         allow for arbitrary number of axes, namespace everything
2154         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
2155         everywhere.
2156
2157         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
2158         Get rid of the gdk_input_vtable setup if favor of simply
2159         defining the functions in gdkinput-none/gxi/xfree.c in
2160         a similar fashion to the way that the port structure is 
2161         done.
2162
2163         * gtk/gtkdnd.c: Fix fields of synthesized button press event
2164         for new event structures. 
2165
2166         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
2167         new device interfaces.
2168
2169 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
2170
2171         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
2172         set the initial text.
2173
2174         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
2175         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
2176         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
2177         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
2178
2179         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
2180         pango_layout_set_font_description to simplify.
2181
2182 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
2183
2184         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
2185         pango_layout_set_font_description to simplify.
2186
2187 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
2188
2189         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
2190         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
2191         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
2192
2193         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
2194         PANGO_PIXELS() macro.
2195
2196 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
2197
2198         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
2199         that returns a PangoContext owned by the widget and updated to
2200         match future changes in the widget. Also, make 
2201         gtk_widget_create_pango_layout() use this context. If we ever
2202         add a ::changed signal to PangoContext, this will make things
2203         much more convenient. 
2204
2205         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
2206         in the appropriate places instead of destroying the layouts and
2207         creating new ones.
2208
2209         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
2210         in a few strategic places.
2211
2212 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
2213
2214         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
2215         gtk_widget_size_request() on reparented child, if one. Otherwise,
2216         queue_resize() on the child never results in it getting size-requested
2217         at all.
2218
2219         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
2220         in option menus, so that (with luck) people won't copy it into
2221         their apps in the future.
2222
2223         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
2224         to gtk_option_menu_calc_size. This isn't perfect, but should fix
2225         a lot of problems with changing the size of the menu's menu
2226         items after adding it to the option menu.
2227
2228         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
2229
2230         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
2231         the text direction for a widget changes.
2232
2233         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
2234         ::direction_changed to get rid of various hacks.
2235
2236 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
2237
2238         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
2239         name.
2240
2241 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
2242
2243         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
2244         flag to the structure. Do not call XFreePixmap on pixmaps created
2245         by gdk_pixmap_foreign_new().
2246
2247 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
2248
2249         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
2250         value using GdkRGB functionality given GdkColormap and GdkColor.
2251         (name not final, waiting for inspiration.)
2252         
2253         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
2254         set the foreground/background of a GC using the GC's colormap
2255         and GdkRGB. (name not final, waiting for inspiration.)
2256
2257         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
2258         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
2259
2260         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
2261         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
2262         purely a function of the corresponding colormap. Make
2263         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
2264
2265         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
2266         gdk_pixbuf_*create_from_xpm_* in terms of
2267         gdk_pixbuf_new_from_xpm_data(), move into platform independent
2268         code.
2269
2270         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
2271         advantage of the new draw_rgb_32_image_dithalign.
2272
2273         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
2274
2275         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
2276         on each created GC.
2277
2278         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
2279
2280         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
2281         which we initialize from the drawable when the GC is created,
2282         if the drawable has a colormap.
2283
2284         * gdk/x11/gdkgc-x11.c: include string.h for memset.
2285
2286         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
2287
2288         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
2289
2290 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
2291
2292         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
2293         actually returning expose events, make sure to set
2294         the count field properly.
2295
2296         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
2297         accidentally reintroced bug which always cleared
2298         the graphics_exposures value. 
2299
2300 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
2301
2302         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
2303
2304 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
2305
2306         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
2307
2308 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
2309
2310         * docs/faq/gtk-faq.sgml: Start of Section 6.
2311
2312 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
2313
2314         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
2315         
2316         (Fixes problem with drawing childless frames. Pointed out
2317         by and a first patch from Anders)
2318         
2319         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
2320         compute a child_allocation, even if we don't have a child.
2321
2322         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
2323         Always chain to the parent's impl, even if we don't have a child.
2324
2325 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
2326
2327         * gdk/gdkrgb.c: If possible, create only a single shm segment and
2328         use multiple parts of it instead of creating a bunch of separate
2329         segments, since the maximum number of segments per system is not
2330         large. (This might be worth backporting to GTK+-1.2.x if we make a
2331         new release )
2332
2333         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
2334         structure in preparation for per-colormap GdkRGB.
2335
2336         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
2337         to False when we get EINVAL from shmget so that the caller of
2338         gdk_image_new can retry with a smaller segment size.
2339
2340 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
2341
2342         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
2343
2344 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
2345
2346         * configure.in: make the current version number 1.3.1 (binary age 0,
2347         interface age 0).
2348         
2349         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
2350         gtkcompat.h is all we want.
2351
2352         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
2353         GLib primitive types. fixed g_type_register_fundamental() argument
2354         ordering.
2355
2356         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
2357         compiles.
2358
2359         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
2360         object code cleanup, comment trigraph fixes, etc...
2361
2362 2000-06-23  Havoc Pennington  <hp@redhat.com>
2363
2364         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
2365         instead of making up a bogus name for first_para_mark
2366
2367         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
2368         0 as a context ID
2369
2370 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
2371
2372         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
2373
2374 2000-06-21  Havoc Pennington  <hp@pobox.com>
2375
2376         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
2377         we didn't check window->bg_pixmap != GDK_NO_BG.
2378
2379         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
2380         gdk-pixbuf
2381
2382 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
2383
2384         * docs/faq/gtk-faq.sgm: Move file to here.
2385           TODO: Update Makfile.am 
2386
2387 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
2388
2389         * docs/gtk-faq.sgm: Add Section 2
2390
2391 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
2392
2393         * docs/gtk-faq.sgm: New file. Start of DocBook
2394           version of the FAQ.
2395
2396 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
2397
2398         * configure.in (GDK_PIXBUF_MAJOR): Define version
2399         numbers for GDK_PIXBUF_*, as they get substituted
2400         into a header file. Need to consider versioning
2401         for gdk-pixbuf more carefully later.
2402
2403 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
2404
2405         Work with srcdir != builddir.   
2406         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
2407         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
2408         * demos/testpixbuf.c: Likewise.
2409         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
2410         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
2411         <gdk/x11/gdkx.h>.
2412         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
2413         "gdk-pixbuf.h".
2414         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
2415
2416 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
2417
2418         * TODO.xml: Change 1.4 version numbers to 2.0.
2419
2420 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
2421
2422         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
2423         fixups to GTK+ standard.
2424
2425 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
2426
2427         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
2428         gdk-pixbuf.
2429
2430         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
2431         fixups for GObject.
2432
2433         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
2434         gdk-pixbuf with GDK dependencies moved into GDK.
2435         
2436         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
2437         move gdk-pixbuf-loader here until GObject has signals.
2438
2439         * demos/: New directory of demos. Move demos from
2440         gdk-pixbuf here.
2441
2442         * demos/pixbuf-init.c: Small bit of code to check for
2443         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
2444         set GDK_PIXBUF_MODULEDIR appropriately.
2445
2446         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
2447         define which no longer makes sense.
2448
2449 2000-06-21  Havoc Pennington  <hp@redhat.com>
2450
2451         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
2452         gtk_get_default_language
2453
2454         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
2455         new function to get the default language
2456
2457         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
2458         s/gtk_text_view_style_values/gtk_text_style_values/
2459
2460         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
2461         Add a "language" field to tags.
2462
2463         (gtk_text_tag_set_arg): Fix bug in setting
2464         "bg_full_height_set" tag.
2465
2466 2000-06-21  Havoc Pennington  <hp@redhat.com>
2467
2468         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
2469         in the interfaces
2470
2471         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
2472         stuff instead when possible.
2473
2474         * gtk/gtktexttypes.h: Delete some unused constants
2475
2476         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
2477         testtextbuffer.c: use glib instead of custom unicode routines
2478
2479 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
2480
2481         * docs/es/: Removed mistakenly added generated sgml
2482
2483         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
2484         Remove outdated info files.
2485
2486         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
2487         Moved tutorial files into subdir
2488
2489         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
2490         subdir.
2491
2492         * docs/man/gtk_button.pod: Remove. (contents will be
2493         integrated into gtk-reference button page.)
2494
2495         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
2496         docs/faq/Makefile.am: Adjust for new organization
2497
2498 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
2499
2500         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
2501         not $(MKINSTALLDIRS)
2502
2503 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
2504
2505         * gtk/testgtk.c (create_text): Finish the job Elliot started
2506         of removing font setting test for text widget. (Since text widget
2507         and GdkFont are not deprecated, and cause portability problems.)
2508
2509 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
2510
2511         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
2512         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
2513         Remove use of libunicode in favor of new GLib functions.
2514
2515         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
2516         nano-x, framebuffer. The X11 include is just a hack until we get
2517         the necessary functions in gdkcolor.h, so there is no reason to
2518         add other includes of platforms.
2519
2520         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
2521         window bigger than the screen change.
2522
2523         * gtk/testgtk.c: Revert some random changes from Elliot
2524         that had no particular point and were causing testgtkrc
2525         not to function correctly.
2526         
2527         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
2528         because GdkSegment and GdkRegionBox have the same fields,
2529         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
2530         results in clearer code.
2531
2532         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
2533         gdk_input_translate_coordinates): Fix missed GdkObjectification
2534
2535 2000-06-18  Elliot Lee  <sopwith@redhat.com>
2536
2537         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
2538         * gtk/gtk{plug,socket}.h: Missed commits from previous.
2539
2540 2000-06-20  Havoc Pennington  <hp@redhat.com>
2541
2542         * modules/linux-fb/Makefile.am: Make this compile
2543         without framebuffer enabled
2544
2545         * gdk/linux-fb/Makefile.am: Add conditional to not build
2546         framebuffer unless specified in configure
2547
2548         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
2549         the size of the target instead of source if -1 was passed for
2550         width/height
2551
2552         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
2553         width/height confusion.
2554
2555 2000-06-19  Havoc Pennington  <hp@redhat.com>
2556
2557         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
2558         GDK_DRAWABLE_XID. In the future, we probably want to make it
2559         faster with G_DISABLE_CHECKS turned on.
2560
2561 2000-06-14  Havoc Pennington  <hp@redhat.com>
2562
2563         * gdk/Makefile.am: add gdkpixmap.c
2564
2565         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
2566         s/gdk_image_init/_gdk_windowing_image_init
2567
2568         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
2569         ref/unref
2570
2571         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
2572
2573         * gdk/gdkcompat.h: remove GdkWindowType compat, since
2574         GdkWindowType is now non-deprecated; 
2575         change gdk_window_get_type() compat to be
2576         gdk_window_get_window_type().
2577
2578         * gdk/gdkdnd.h: make GdkDragContext a GObject.
2579
2580         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
2581         virtual GObject. Make all functions call into the vtable.
2582         Move gdk_image_put() guts in here. Remove GdkDrawableType
2583         and gdk_drawable_get_type(), these are now GdkWindow-specific.
2584         draw_image, get_depth, get_size, set_colormap, get_colormap,
2585         get_visual added to the vtable.
2586         
2587         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
2588         GObject. Virtualize everything. 
2589         (gdk_gc_new_with_values): remove check for destroyed window,
2590         because now GdkWindow::create_gc will check this.
2591         (gdk_gc_set_values): New function to set GC values, this 
2592         was already implemented but wasn't in the header
2593
2594         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
2595
2596         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
2597         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
2598         remove _gdk_window_class; add _gdk_window_impl_get_type() and
2599         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
2600         _gdk_windowing_window_init, rename gdk_image_init to
2601         _gdk_windowing_image_init.
2602         
2603         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
2604         (gdk_draw_layout): Remove check for destroyed window, 
2605         because all the drawable methods already check it.
2606         
2607         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
2608         Add gdkpixmap.c which contains implementation of GdkDrawable
2609         virtual table (by chaining to a platform-specific implementation
2610         object).
2611         
2612         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
2613         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
2614         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
2615         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
2616         GdkColormapPrivate. 
2617
2618         * gdk/gdktypes.h: #include <glib-object.h>
2619
2620         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
2621         Move most functionality to platform-specific implementation
2622         object. GdkWindow itself now handles the backing store, then
2623         chains to the platform-specific implementation.
2624         (gdk_window_get_window_type): return GdkWindowType of the window.
2625         (gdk_window_peek_children): New routine, returns the children of 
2626         a GdkWindow
2627         (gdk_window_get_children): Was in X11-specific code and did 
2628         XQueryTree. Changed to simply return a copy of window->children; 
2629         so it can go in cross-platform code.
2630         
2631         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
2632
2633         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
2634         GdkColormap; just changed to use the new private data instead
2635         of casting to GdkColormapPrivate.
2636
2637         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
2638         gdk_cursor_new().
2639
2640         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
2641         (private data member in the GObject). 
2642         (xdnd_manager_source_filter): Function had broken 
2643         error handling, fix it (use gdk_error_trap_push).
2644
2645         * gdk/x11/gdkdrawable-x11.c: This file now implements
2646         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
2647         base class is purely for the convenience of the X port,
2648         and not part of the interface to cross-platform GDK.
2649
2650         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
2651         
2652         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
2653         specific to X, and returned by the create_gc virtual method
2654         of GdkDrawableImplX11. 
2655         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
2656         rather than gchar, this was also changed in the GdkGC vtable.
2657         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
2658         mask is 0, return immediately, instead of checking every flag.
2659         This is faster, and keeps us from segfaulting if values is NULL
2660         and the mask contains some nonzero flags.
2661
2662         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
2663         GdkWindow.
2664
2665         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
2666         GdkWindowPrivate is gone.
2667
2668         * gdk/x11/gdkim-x11.c: rename things that got renamed.
2669
2670         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
2671         remove the image_put stuff that got transferred to GdkDrawable.
2672         
2673         * gdk/x11/gdkinput.c: renamings
2674
2675         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
2676
2677         * gdk/x11/gdkpixmap-x11.c: GObject conversion
2678
2679         * gdk/x11/gdkprivate-x11.h: indentation fixes
2680
2681         * gdk/x11/gdkproperty-x11.c: renamings
2682
2683         * gdk/x11/gdkselection-x11.c: renamings
2684
2685         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
2686         implements the platform-specific "impl" object.
2687         Moved gdk_window_get_children to gdk/gdkwindow.c
2688
2689         * gdk/x11/gdkx.h: Remove all the private structs and private datas
2690         that no longer exist. Add declaration of GdkGCX11 object here.
2691         Fix all the macros to still work. 
2692
2693         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
2694         GdkDragContext from the boxed types since they are now GObjects.
2695
2696         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
2697         moved xthickness/ythickness into the instance. GtkStyleClass
2698         functions are now in the standard vtable for GtkStyle, so you have
2699         to create a GObject subclass to write a theme engine.
2700         (gtk_style_copy): fixed a leaked PangoFontDescription
2701         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
2702         can be the standard GObject function.
2703         
2704         * Throughout GTK:
2705         s/style->klass->[xy]thickness/style->[xy]thickness
2706         s/pango_layout_unref/g_object_unref/
2707
2708         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
2709         
2710         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
2711         accessing GDK internals.
2712
2713         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
2714         accessing GDK internals.
2715
2716 2000-06-18  Elliot Lee  <sopwith@redhat.com>
2717
2718         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
2719
2720         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
2721         problem by calculating event position relative to the trough
2722         rather than the slider.
2723         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
2724
2725         * gdk/gdkgc.h: Add GDK_NOR.
2726
2727         * configure.in, Makefile.am: Add modules top level dir
2728         * configure.in: Only use pangox library if building x11 target.
2729         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
2730
2731 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
2732
2733         * gtk/gtkcolorsel.c: Change private class member to be named
2734         private_data throughout the file.
2735
2736         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
2737         private_data to avoid clashing with keyword.
2738
2739 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
2740
2741         * gdk/gdkdnd.h: Add comment to remove warning.
2742
2743 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
2744
2745         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
2746         Byelorussian language; changed the Makefile and file names 
2747         to reflect that.
2748
2749 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
2750
2751         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
2752         rather than gdk_window_hide; this makes things work
2753         correctly if the window is programmatically hidden while
2754         iconified.
2755
2756 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
2757
2758         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
2759         cut and paste typo where wrong pixmap was being
2760         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
2761
2762 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
2763
2764         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
2765         Add helper function to compute format / bytes 
2766         relationship. Use in a couple places to fix up
2767         errors which assume 8 * format.
2768
2769         * gtk/gtkselection.c (gtk_selection_request): Use 32
2770         rather than 8 * sizeof (GdkAtom), to work correctly
2771         on Alpha.
2772
2773 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
2774
2775         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
2776         libgtk.la
2777         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
2778         versions
2779
2780         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
2781         checking macros return NULL since the function has a return value.
2782
2783 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
2784
2785         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
2786         GTK+ from building at all.
2787
2788         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
2789
2790 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
2791
2792         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
2793         gtk/Makefile.am: make it possible to configure gtk for different
2794         targets on the same platform. The library name is now 
2795         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
2796         flag. Only the x11 target compiles right now.
2797         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
2798         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
2799         * gdk/nanox/gdk*generic*: delete generic region code.
2800         * gdk/linux-fb/gdk*generic*: delete generic region code.
2801         * README.nanox: update information.
2802         
2803 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
2804
2805         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
2806         prepend not append. (Pointed out by Brett Hall.)
2807
2808 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
2809
2810         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
2811
2812 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
2813
2814         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
2815         need this later, and this makes sure that the atexit for
2816         glib gets called after that for GDK, so atexits are
2817         properly ordered for object leak checking.
2818
2819         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
2820
2821         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
2822         pango_x_shutdown_display()
2823
2824         * gtk/simple.c (main): Close window on destroy.
2825
2826 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
2827
2828         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
2829         to treat initial creation different from setting with 
2830         regards to the graphics-exposures parameter, so add a parameter
2831         indicating whether this is initial or not.
2832
2833 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
2834
2835         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
2836         to sort of work by adding an extra return_exposes arg
2837         to gdk_event_translate() - it might be better to simply
2838         deprecate the function altogether and force people to rewrite
2839         without it. gdk_window_scroll() handles most of it, and where
2840         gdk_window_scroll() doesn't work, simply redrawing more does.
2841
2842         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
2843         assertion.
2844
2845         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
2846
2847         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
2848         bunch of pretty much useless /* Print debugging info */ comments 
2849         which had drifted away from the code they were commenting.
2850
2851 2000-06-02  Havoc Pennington  <hp@pobox.com>
2852
2853         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
2854         is in working order.
2855         
2856         * gtk/testtext.c: Change to reflect anonymous mark API
2857
2858         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
2859
2860         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
2861         field, which was unused.
2862
2863         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
2864         saves some typing.
2865
2866         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
2867
2868         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
2869         flag on the insertion point and selection bound
2870
2871         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
2872         make mark-manipulation functions take a GtkTextMark* instead of a
2873         mark name.
2874         
2875         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
2876         GtkTextMarkBody; will be used to detect attempts to delete
2877         the permanent marks (insert and selection bound)
2878
2879         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
2880
2881 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
2882
2883         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
2884         flag to on.
2885
2886         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
2887         Honor DOUBLE_BUFFRED_FLAG
2888
2889         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
2890         function to set the DOUBLE_BUFFERED flag.
2891
2892         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
2893         or not exposes done on the widget should be double-buffered.
2894
2895         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
2896         to be what would be expected. (Fixes problem with a
2897         g_return_if_fail() validating a TextDirection enumeration)
2898
2899 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
2900
2901         * gtk/gtkwidget.c: Remove all references to 
2902         offscreen flag which was no longer used.
2903
2904         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
2905
2906         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
2907         for non-null label_widget->parent.
2908
2909         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
2910         which no longer was used.
2911
2912         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
2913
2914         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
2915         for null arguments.
2916
2917         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
2918         check for destroyed windows.
2919
2920 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
2921
2922         * gtk/gtkimmulticontext.c: Add a finalize method and unref
2923         the slave context there.
2924
2925         * gtk/gtkinvisible.[ch]: Make reference counting behavior
2926         identical to GtkWindow.
2927
2928 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
2929
2930         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
2931         pangox to here, so we can write them independent of rendering
2932         system, using GDK primitives.
2933
2934         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
2935         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
2936         since we have a rendering-system independent implementation in
2937         terms of draw_glyphs().
2938         
2939         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
2940         function to render a single line.
2941
2942         * gdk/x11/gdkpango.c: Move the guts of this file mostly
2943         into ../gdkpango.c, which simplifies things, since we
2944         don't have to deal with raw X gc's.
2945
2946 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
2947
2948         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
2949         get the logical attributes for a given GtkTextLine.
2950
2951 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
2952
2953         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
2954         g_locale_get_codeset() to g_get_codeset() change.
2955
2956 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
2957
2958         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
2959         descriptions.
2960
2961         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
2962         the entry.
2963
2964         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
2965         redoing (vastly simplifying) for Pango. Still needs quite
2966         a bit of work. (Size selection is currently poor. List of 
2967         predefined sizes is not a good idea, since all of these
2968         sizes won't necessarily be distinct.)
2969
2970 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
2971
2972         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
2973         CODESET results for LANG=C.
2974
2975 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
2976
2977         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
2978         which takes a stringized pango font description;
2979         ignore the older 'font' and 'fontset' declarations.
2980
2981         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
2982         field with a GdkFont derived via gdk_font_from_description(),
2983         for compatibility. (Should we just remove it entirely?
2984         Probably too much compatibility breakage, but people
2985         should be migrating to the new Pango stuff as quickly
2986         as possible.)
2987
2988 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
2989
2990         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
2991
2992 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
2993
2994         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
2995         redoing; there are some bugs in size allocation right
2996         now, the semi-existant distinction between header / day
2997         fonts was removed, but, with Pango, could actually
2998         be made functional in a nice way.
2999         
3000         * gtk/testcalender: Move calender from examples into this
3001         directory as a test program. (We really need to restrcture
3002         testgtk into a whole directory full of tests for every
3003         widget or functionality group, separated into multiple .c
3004         files.)
3005
3006 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
3007
3008         * gtk/testgtk.c (file_exists): Fix stupid typo that
3009         was keeping RC file from being loaded.
3010
3011         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
3012         RC file font code.
3013
3014 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
3015
3016         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
3017         Add function to load a GdkFont from a PangoFontDescription.
3018
3019 2000-05-29  Tor Lillqvist  <tml@iki.fi>
3020
3021         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
3022         variable should be of type GdkEventPrivate.
3023
3024 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
3025
3026         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
3027         to have any widget for the label, use a GtkLabel widget
3028         to display the text. (Based partially on a patch from
3029         Anders Carlson.)
3030
3031         (Quite a bit of code reorganization - strip 90% of the
3032         guts out of gtkaspectframe and add a single virtual
3033         func to GtkFrameClass - compute_child_allocation.)
3034
3035 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
3036
3037         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
3038         (Removed clist->row_center_offset field because caching
3039         it wasn't saving time or code, added private function
3040         _gtk_clist_create_cell_layout()).
3041
3042 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
3043
3044         * gtk/gtkaccellabel.c: Pangoized.
3045
3046         * gtk/[hv]ruler.c: Pangoized
3047
3048 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
3049
3050         * gtk/gtkfilesel.c (gtk_file_selection_init):
3051         Use gtk_clist_set_column_auto_resize() to remove need
3052         need for manual column width computations.
3053
3054 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
3055
3056         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
3057         ensuring Pango correctness, and considerably simplifying the
3058         code.
3059         
3060         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
3061
3062         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
3063         getting of numbers of lines.
3064
3065         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
3066         to the actual requested width of the lable, not to the wrap
3067         width we set.
3068
3069         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
3070
3071         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
3072           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
3073
3074         * gtk/gtktextview.c: Fix structure inheritance.
3075
3076         * gtk/gtkprogressbar.c: Pangoize.
3077
3078 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
3079
3080         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
3081         in a function.
3082
3083         * gtk/gtktextlayout.c (find_display_line_above): Fixed
3084         bug with computing line tops.
3085
3086         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
3087
3088 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
3089
3090         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
3091         and y_offset coordinates to do what we need now. (The offset between
3092         buffer and layout coordinates has been reintroduced, but is a 
3093         bit different than before.)
3094
3095         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
3096         handle the adjustments ourselves, and scroll as necessary using
3097         the new gdk_window_scroll().
3098         
3099         The advantage of this is that when we are incrementally revalidating,
3100         we are essentially rearranging things around the visible portion
3101         of the screen. With the old setup, the visible portion of the
3102         screen was moved around in the layout, so scrolling and redrawing
3103         to track that caused jumping of the display. Since we now
3104         control the scrolling ourselves, we can suppress this and
3105         only redraw when things actually change.
3106
3107 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
3108
3109         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
3110         the region not just redisplay it after-all, since we store the
3111         cursors in the LineDisplay. (Ugly interactions here between
3112         GtkLayout and GtkTextBTree here.)
3113         
3114         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
3115
3116 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
3117
3118         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
3119         Added function to scroll contents of a window while keeping the
3120         window constant. Works by XCopyArea or guffaw-scrolling depending
3121         on the details of how the window is set up. (guffaw-scrolling
3122         still needs to be filled in.)
3123
3124 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
3125
3126         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
3127         move the debugging that was tied to a global variable
3128         to that.
3129
3130         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
3131
3132         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
3133         validated flag, in line data instead of setting height/width to
3134         -1. This allows us to perform operations with partially invalid
3135         buffer (using the old size for invalid lines) and thus to do
3136         incremental vaidation. Keep height/width aggregates up to date
3137         when deleting text and rebalancing the tree.
3138
3139         * gtk/gtktextbtree.[ch]: Add functions validate a line
3140         (gtk_text_btree_validate_line), and to validate up
3141         to a number of pixels (gtk_text_btree_validate).
3142
3143         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
3144         that indicates that something is changed and a revalidation
3145         pass is needed. Change ::need_repaint to ::changed, and
3146         make it take old and new yranges instead of a rectangle.
3147
3148         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
3149         the line_data_destroy() function from 
3150         gtk_text_btree_add_view() to a virtual function in 
3151         GtkTextLayout
3152
3153         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
3154         since we are handling partial repaints in a different fashion
3155         now.
3156
3157         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
3158         of the selection instead of queueing a repaint on the
3159         entire widget.
3160
3161         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
3162         get_selection_bounds() down to btree, make the function
3163         in buffer a wrapper around the btree function.
3164
3165         * gtk/gtktextlayout.[ch]: Add functions to check if the
3166         layout is valid and to recompute either a range of pixels
3167         aroudn a line or a certain total number of pixels.
3168
3169         * gtk/gtktextlayout.[ch]: Cache a single line display;
3170         now that we only redraw the needed portions, the hit rate
3171         for this cache is quite high.
3172         
3173         * gtk/gtktextview.[ch]: Keep track of the first paragraph
3174         on the screen so that when re-laying-out the buffer, we can
3175         keep the same place. This requires connecting to ::value_changed
3176         on the adjustments
3177
3178         * gtk/gtktextview.[ch]: Add idle functions to revalidate
3179         the buffer after we receive an ::invalidated signal.
3180         
3181 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
3182
3183         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
3184         to max of allocation and layout size, not just to the
3185         layout size.
3186
3187         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
3188         Invalidate window so it gets redrawn properly.
3189
3190         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
3191         to mean the entire window.
3192
3193         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
3194         into public header.
3195
3196 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
3197
3198         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
3199         to get the name of a mark.
3200
3201         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
3202         to find the paragraph from a y position.
3203
3204 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
3205
3206         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
3207         nodes have width/height >= 0, not > 0.
3208
3209 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
3210
3211         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
3212         Add a size_only flag, so when we only need the size, we don't create
3213         useless appearance attributes.
3214
3215         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
3216         duplicate setting of font description.
3217
3218         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
3219
3220 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
3221
3222         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
3223         EXTRA_DIST. It does not work well when the file that
3224         everything depends on is not in the tarball.
3225
3226 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
3227
3228         * gtk/testgtk.c: Some hacks and fixes so that it basically
3229         works when not sitting in the GTK+ build tree.
3230
3231 2000-05-03  Havoc Pennington  <hp@redhat.com>
3232
3233         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
3234         Properly determine the ordering of the tag root and the current
3235         line within the tree. Previous algorithm only worked if the tag
3236         root's immediate parent was the common root of both the current
3237         line and the tag root.
3238
3239 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
3240
3241         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
3242         alignment.
3243
3244         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
3245         the widget text directional dynamically.
3246
3247         * gtk/gtktextview.[ch]: Added functions to get and set default
3248         wrap mode.
3249
3250 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
3251
3252         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
3253         in cursor location computation.
3254
3255 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
3256
3257         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
3258         vadjusment values properly when layout gets smaller.
3259
3260         * gtk/gtktextview.c (need_repaint_handler): Areas being
3261         passed in are far completely inaccurate, and sometimes
3262         too small, so, for now, just queue a redraw on the
3263         whole visible region.
3264
3265 2000-04-25  Havoc Pennington  <hp@redhat.com>
3266
3267         * gtk/gtktextbtree.c (summary_destroy): new function to 
3268         destroy tag summary nodes
3269         (gtk_text_line_next_could_contain_tag): this function was 
3270         totally broken if the line passed in wasn't below the tag
3271         root. Fix it.
3272         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
3273         "wildcard" case, we have to do a linear scan. Blah.
3274         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
3275         we have to do the linear scan
3276         (tag_removed_cb): When a tag is removed from the tag table, 
3277         remove the GtkTextTagInfo node from the btree.
3278         (gtk_text_btree_spew): Implement the spew function, for 
3279         our debugging pleasure.
3280
3281 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
3282
3283         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
3284         a problem with referring to the wrong buffer.
3285
3286         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
3287
3288         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
3289         font description to gtk_style_new() - otherwise things
3290         don't work without a .gtkrc file.
3291
3292         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
3293         tags table if we create it ourself, too.
3294
3295         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
3296         it was conflicting with XKB modifiers.
3297
3298         * gtk/gtktextview.[ch]: Add simple support for 
3299         GtkIMContext.
3300
3301 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
3302
3303         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
3304         with deletion from last commit.
3305
3306 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
3307
3308         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
3309         in the context from the current locale.
3310         
3311         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
3312         context, not hardcoded value.
3313
3314         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
3315         not logical.
3316
3317 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
3318
3319         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
3320         attributes - that doesn't handle partial-glyph selection
3321         properly. Instead use new pango_layout_line_get_x_ranges()
3322         functionality to draw the selection.
3323
3324         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
3325         now properly handles out-of-range coordinates.
3326
3327         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
3328
3329         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
3330         public.
3331
3332         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
3333         for paragraphs opposite to the base direction of the widget.
3334
3335         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
3336
3337         * gtk/gtktextlayout.c: Don't split segments on marks, since that
3338         causes Arabic words to reshape as you cursor through.
3339
3340         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
3341         cursor position when moving vertically with the arrow keys and
3342         scrolling with page-up/page-down. (Arrow keys save only the X,
3343         scrolling saves both X and Y.)
3344
3345         This means you can line-up / line-down or page-up / page-down
3346         without losing your place, and also that moving vertically
3347         with the cursor keys keeps the same X position, not the same
3348         character count:
3349
3350         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
3351         arrow keys move by display lines, not paragraphs.
3352
3353 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
3354
3355         * gtk/gtklayout.c: Make sure that the bin window is at least
3356         as big as the allocation. (Should we also make sure that the
3357         bin window is big enough to completely cover widget->window?)
3358
3359         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
3360         function to get the onscreen rectangle.
3361
3362         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
3363         for offsets in window coordinates.
3364
3365 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
3366
3367         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
3368         confusion.
3369
3370         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
3371         from the widget direction.
3372
3373         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
3374         Add a "direction" attribute.
3375
3376         * gtk/gtktextview.c: global s/tkxt/text_view/.
3377
3378         * gtk/testtext.c: Added long block of text in Arabic, to test out
3379         the direction attributes. (Some problems with the shaping system
3380         for arabic become obvious - like the fact the cursor splits words
3381         into unjoined pieces.)
3382
3383 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
3384
3385         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
3386
3387         * gtk/gtktextlayout.c: Fix up alignment.
3388
3389         * gtk/testtext.c: Add some tests for centering, wrapping.
3390
3391 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
3392
3393         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
3394         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
3395         If we wrote GTK+-specific layout-render function this could just replace
3396         the draw_layout() operation in the vtable.
3397
3398         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
3399         pango_layout_get_cursor_pos() and use that function.
3400
3401         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
3402         is a non-static symbol.
3403
3404         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
3405         with gtk_text_btree_find_line_by_y()
3406
3407         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
3408         renderer that handles GtkTextAppearance attributes.
3409
3410         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
3411
3412           - Move the values in the style that don't affect geometry into a
3413             GtkTextAppearance structure.
3414           - Change underline to take a PangoUnderline and "font" a string
3415             representation of a font description
3416           - Add a "font_desc" attribute which takes a FontDescription structure.
3417
3418         * gtk/gtktextlayout.[ch]:
3419
3420           - Get rid of the display-line list per each line. Instead, we
3421             generate, on demand, a GtkTextLineDisplay structure which]
3422             contains a PangoLayout * and other necesary information
3423             (offsets, cursor locations) for displaying a paragraph.
3424           - Get rid of the code to wrap lines, create display chunks,
3425             etc. Instead, we just go through a paragraph and convert
3426             it into the necessary inputs to a PangoLayout.
3427           - Implement a new attribute type, GtkTextAttrAppearance. This
3428             holds a GtkTextAppearance, and is used to pass colors, 
3429             stipple, etc, through from the layout to the display without
3430             having to use lots and lots of individual attributes.
3431           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
3432             in terms of PangoLayout functions.
3433         
3434         * gtk/gtktextview.c: 
3435          
3436           - Handle passing the necessary PangoContext to the layout
3437           - Some fixups in painting to deal with the automatic backing store
3438             and offsetting of GTK+-1.4
3439           - Add a style_set handler so that the default style reacts
3440             properly to theme changes.
3441         
3442         * gtk/gtktext?*.[ch]: Random code-style fixes.
3443
3444         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
3445
3446 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
3447
3448         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
3449         in original form preparatory to Pango-ization and gdkimcontext-ization.
3450
3451 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
3452
3453         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
3454         so that we can derive from gtkimcontext in language bindings properly.
3455
3456 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
3457
3458         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
3459         Add a compose table including (almost) all the compose combinations
3460         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
3461         data in the XIM implementation.
3462
3463         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
3464         Moved functions to convert keyvalues from and to unicode here from
3465         the win32 port and made them public.
3466
3467 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
3468
3469         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
3470
3471 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
3472
3473         * gtk/gtkimcontext.[ch]: Base class for new input context system
3474
3475         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
3476         the real input context implementation to be loaded from modules
3477         and switched on the fly.
3478
3479         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
3480         context that just does direct keysymbol => unicode translation.
3481
3482         * gtk/gtkentry.[ch]: Start switching editing over to using
3483         GtkInputContext. (No handling of preedit yet.)
3484
3485 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
3486
3487         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
3488         many substitutions. (klass should not be subsituted.)
3489
3490 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
3491
3492         * configure.in: Add checks for Pango
3493
3494         * configure.in docs/Makefile.am: Add test for sgml2html
3495         and allow 'make dist' without building html, but print out
3496         warnings in that case. (For making snapshots)
3497
3498         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
3499         Add Pango libraries and C flags
3500
3501         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
3502         Add function (gdk_draw_layout) to draw a pango layout.
3503
3504         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
3505         for getting Pango contexts for GDK.
3506
3507         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
3508
3509         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
3510         editing.
3511
3512         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
3513         keysym => unicode translations. More languages can be added
3514         here, but real input-method support is needed.
3515
3516         * docs/Changes-1.4.txt: Added note about entry behavior.
3517         
3518         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
3519         to set the reading direction for a widget and the global direction.
3520         Add test which allows toggling the global direction. Two private
3521         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
3522
3523         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
3524           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
3525
3526         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
3527
3528         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
3529         underlining now handled by Pango.
3530
3531         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
3532         to RCStyle and Style. (Having both this and the old font name and GdkFont 
3533         is temporary.)
3534
3535         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
3536         convenience functions for creating contexts and layouts for widgets.
3537
3538         * gtk/testgtk.c: Enhance label tests with multilingual labels.
3539
3540 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
3541
3542         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
3543         titles to be active, even if they aren't visible.
3544         (gtk_clist_column_titles_passive):  Ditto.
3545
3546 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
3547
3548         * gtkmenu.c:
3549         * gtkmenu.h:
3550         * gtktypeutils.h: Spelling/grammar fixes in comments.
3551
3552 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
3553
3554         * gdk/nanox/*.h: add missing header files.
3555
3556 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
3557
3558         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
3559         send_event to TRUE.
3560         (gtk_drawing_area_size): queue a resize.
3561
3562 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
3563
3564         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
3565         the handlers, also invalidate them. bug nailed down by Karl Nelson
3566         <kenelson@ece.ucdavis.edu>.
3567
3568 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
3569
3570         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
3571         "(nil)" foundries, patch from Grigorios Magklis.
3572
3573         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
3574         on non-available fonts, based on a patch by Grigorios Magklis
3575         <maglis@cs.rochester.edu>.
3576
3577 2000-05-18  Elliot Lee  <sopwith@redhat.com>
3578
3579         * gdk/x11/gdkregion-generic.c: If a region does not have any
3580         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
3581         instead of GDK_OVERLAP_RECTANGLE_IN.
3582
3583 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
3584
3585         * gtk/gtklayout.c (gtk_layout_map): Remove references to
3586         OFFSCREEN, as it is no longer necessary.
3587
3588 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
3589
3590         * gtk/gtkcolorsel.c: Patch from David Santiago
3591         <mrcooger@cyberverse.com> to change things so that the 
3592         indicator of the active palette entry is done independently,
3593         not via the focus, since it should always be visible.
3594
3595 2000-05-17  Tor Lillqvist  <tml@iki.fi>
3596
3597         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
3598         refcount leaks as in the X11 backend.
3599
3600         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
3601         cosmetics.
3602
3603         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
3604         backend. Add _gdk_windowing_window_destroy().
3605
3606         * gtk/gtkcolorsel.c: Include correct backend-specific header.
3607         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
3608         either, but these probably do exist on nanox?)
3609         
3610         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
3611         which isn't necessarily defined by <math.h>.
3612
3613         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
3614         ancestry past GtkObject.
3615
3616         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
3617         from DLL on Win32.
3618
3619         * gtk/gtk.def: Update corresponding to recent changes.
3620
3621         * gtk/makefile.{cygwin,msc}: Updates.
3622
3623 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
3624
3625         * docs/Changes-1.4.txt: A bit of editing.
3626
3627         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
3628         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
3629         to clear the update area for the window, and clear it
3630         when hiding a window.
3631
3632         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
3633         if window destroyed.
3634
3635         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
3636
3637         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
3638         gdk_window_destroy() to the generic code, since there was a lot of 
3639         window-system-independent logic it in. Add a function:
3640         
3641          _gdk_window_destroy() 
3642
3643         to the internal API to destroy a window without unreferencing it.
3644         Add a function:
3645
3646          _gdk_windowing_window_destroy()
3647
3648         That does the windowing-system-dependent part of destroying 
3649         the window.
3650
3651 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
3652
3653         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
3654
3655 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
3656
3657         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
3658         Make gtk_widget_shape_combine_mask() keep a reference count on
3659         the pixmap since it keeps it around.
3660
3661 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
3662
3663         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
3664         leak.
3665
3666         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
3667         leak with event filters.
3668
3669 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
3670
3671         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
3672         signal handlers with the right data arguments. (Fixes
3673         some warnings when a widget was repeatedly set as a drag
3674         destination.)
3675
3676         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
3677         window so we can avoid avoid setting the DND properties on the
3678         toplevel window repeatedly.
3679
3680 2000-05-13  Tor Lillqvist  <tml@iki.fi>
3681
3682         * gdk/win32/gdkwin32.h: Define more message types missing from
3683         mingw headers.
3684
3685         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
3686         call gdk_window_destroy_notify(). It was never called. This
3687         probably meant that the GdkWindow was never freed. Thanks Owen for
3688         noticing (!).
3689
3690         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
3691         window as destroyed before calling DestroyWindow(). DestroyWindow()
3692         causes a call to the window procedure (gdk_WindowProc), which
3693         calls gdk_event_translate(), which calls
3694         gdk_window_destroy_notify(), which gets confused unless the window
3695         is set as destroyed.
3696
3697         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
3698         this function to indicate it's win32 only. Put inside #ifdef
3699         G_ENABLE_DEBUG.
3700
3701         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
3702         debugging function. (gdk_event_translate:) Add a default branch
3703         that uses the above function to print debug messages with all
3704         Windows messages symbolically.
3705
3706         * gdk/win32/gdkprivate-win32.h: Declare it, and
3707         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
3708
3709 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
3710
3711         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
3712         public header file.
3713
3714 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
3715
3716         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
3717
3718         * gtk/gtktext.c: made the adjustments no-construct args, simply
3719         provide default adjustments.
3720         (gtk_text_destroy): release adjustments.
3721
3722         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
3723         adjustment argument non-construct.
3724
3725         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
3726         instead of in finalize.
3727         (gtk_progress_get_text_from_value): 
3728         (gtk_progress_get_current_text): 
3729         (gtk_progress_set_value): 
3730         (gtk_progress_get_percentage_from_value): 
3731         (gtk_progress_get_current_percentage): 
3732         (gtk_progress_set_percentage): 
3733         (gtk_progress_configure): ensure an adjustment is present.
3734
3735 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
3736
3737         * gtk/gtkcolorsel.[hc]:
3738         * gtk/gtkcolorseldialog.[hc]:
3739         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
3740         their parent implementation, use bit fields for boolean values, don't
3741         create unused widgets, usage of glib types, braces go on their own
3742         lines, function argument alignment, #include directives etc. etc. etc..
3743
3744         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
3745
3746 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
3747
3748         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
3749
3750         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
3751         of NULL.
3752
3753         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
3754         to freed data.
3755         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
3756
3757         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
3758         to NULL when the toplevel is getting destroyed.
3759         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
3760         (gtk_menu_destroy): 
3761         (gtk_menu_init): store the information of whether we have to
3762         readd the initial child ref_count during destruction in a new
3763         GtkMenu field needs_destruction_ref_count.
3764
3765         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
3766         here, those reading: learn from my mistake! ;)
3767         in order for set_?adjustment to support a default adjustemnt if
3768         invoked with an adjustment pointer of NULL, the code read (pseudo):
3769         if (v->adjustment) unref (v->adjustment);
3770         if (!adjustment) adjustment = adjustment_new ();
3771         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
3772         now imagine the first unref to actually free the old adjustment and
3773         adjustment_new() creating a new adjustment from the very same memory
3774         portion. here, the latter comparision will unintendedly fail, and
3775         all hell breaks loose.
3776         (gtk_viewport_set_hadjustment):
3777         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
3778         after unreferencing it.
3779
3780         * gtk/gtkcontainer.[hc]: removed toplevel registration
3781         functions: gtk_container_register_toplevel(),
3782         gtk_container_unregister_toplevel() and
3783         gtk_container_get_toplevels() which had wrong semantics
3784         anyways: it didn't reference and copy the list.
3785
3786         * gtk/gtkwindow.c: we take over the container toplevel registration
3787         bussiness now. windows are registered across multiple destructions,
3788         untill they are finalized. the initial implicit reference count
3789         users are holding on windows is removed with the first destruction
3790         though.
3791         (gtk_window_init): ref & sink and set has_user_ref_count, got
3792         rid of gtk_container_register_toplevel() call. add window to
3793         toplevel_list.
3794         (gtk_window_destroy): unref the window if has_user_ref_count
3795         is still set, got rid of call to
3796         gtk_container_unregister_toplevel().
3797         (gtk_window_finalize): remove window from toplevel list.
3798         (gtk_window_list_toplevels): new function to return a newly
3799         created list with referenced toplevels.
3800         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
3801
3802         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
3803         adjustment a non-construct arg.
3804         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
3805         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
3806         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
3807
3808         * gtk/gtkrange.c: added some realized checks.
3809         (gtk_range_destroy): get rid of the h/v adjustments in the
3810         destroy handler instead of finalize. remove timer.
3811         (gtk_range_get_adjustment): demand create adjustment.
3812
3813         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
3814         we simply create them on demand now and get rid of them in
3815         the destroy handler.
3816         (gtk_viewport_destroy): get rid of the h/v adjustments in the
3817         destroy handler instead of finalize.
3818         (gtk_viewport_get_hadjustment): 
3819         (gtk_viewport_get_vadjustment): 
3820         (gtk_viewport_size_allocate): demand create h/v adjustment
3821         if required.
3822
3823         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
3824         gtk_widget_real_destroy () functionality.
3825         (gtk_widget_real_destroy): reinitialize with a new style, instead
3826         of setting widget->style to NULL.
3827
3828 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
3829
3830         * gtk/gtkcalendar.c:
3831         * gtk/gtkbutton.c: ported _get_type() implementation over to
3832         GType, either to preserve memchunks allocation facilities,
3833         or because Gtk+ 1.0 GtkTypeInfo was still being used.
3834
3835         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
3836         over. prepare for ::destroy to be emitted multiple times.
3837         removed reference tracer magic. chain into GObjectClass.shutdown()
3838         to emit ::destroy signal.
3839
3840         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
3841         fundamental.
3842
3843         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
3844         cludge.
3845
3846         * gtk/gtksocket.c:
3847         * gtk/gtkplug.c:
3848         * gtk/gtklayout.c:
3849         * gtk/gtklabel.c:
3850         * gtk/gtkargcollector.c:
3851         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
3852         not being a fundamental anymore, and to work with the new
3853         type system (nuked fundamental type varargs clutter).
3854
3855         * gtk/*.c: install finalize handlers in the GObjectClass
3856         part of the class structure.
3857         changed direct GTK_OBJECT()->klass accesses to
3858         GTK_*_GET_CLASS().
3859         changed direct object_class->type accesses to GTK_CLASS_TYPE().
3860
3861         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
3862         GType. made most of the GTK_*() type macros and Gtk* typedefs
3863         simple wrappers around macros and types provided by GType.
3864         most notably, a significant portion of the old API vanished:
3865         GTK_TYPE_MAKE(),
3866         GTK_TYPE_SEQNO(),
3867         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
3868         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
3869         GTK_TYPE_ARGS,
3870         GTK_TYPE_CALLBACK,
3871         GTK_TYPE_C_CALLBACK,
3872         GTK_TYPE_FOREIGN,
3873         GtkTypeQuery,
3874         gtk_type_query(),
3875         gtk_type_set_varargs_type(),
3876         gtk_type_get_varargs_type(),
3877         gtk_type_check_object_cast(),
3878         gtk_type_check_class_cast(),
3879         gtk_type_describe_tree(),
3880         gtk_type_describe_heritage(),
3881         gtk_type_free(),
3882         gtk_type_children_types(),
3883         gtk_type_set_chunk_alloc(),
3884         gtk_type_register_enum(),
3885         gtk_type_register_flags(),
3886         gtk_type_parent_class().
3887         replacements, where available are described in ../docs/Changes-1.4.txt.
3888         implemented compatibility functions for the remaining API.
3889
3890         * configure.in: depend on glib 1.3.1, use gobject module.
3891
3892 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
3893
3894         * TODO.xml: Various updates to current status.
3895
3896 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
3897
3898         * gtk.m4: Print out version when test succeeds.
3899
3900 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
3901
3902         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
3903         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
3904         
3905         (Original triangle color selector from Simon Budig
3906         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
3907         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
3908         Santiago <mrcooger@cyberverse.com>)
3909
3910         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
3911         out into a separate widget.
3912
3913         * gtk/testgtk.c: Add some checkbuttons for toggling palette
3914         and opacity controls.
3915
3916 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
3917
3918         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
3919         snuck in prematurely.
3920
3921 2000-05-07  Tor Lillqvist  <tml@iki.fi>
3922
3923         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
3924         had deleted a ! operator by mistake, which caused
3925         GDK_SELECTION_CLEAR events never to be generated, which caused
3926         only the first copy to the clipboard from an gtkeditable to
3927         actually cause a copy to the Windows clipboard.
3928
3929 2000-05-06  Tor Lillqvist  <tml@iki.fi>
3930
3931         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
3932         compilation, too. Current mingw gcc distributions include the
3933         necessary headers. Also the necessary IIDs are now in mingw
3934         headers/libraries, and own definitions unnecessary.
3935
3936         More hacking on OLE2 DND, still doesn't work though, and thus
3937         ifdeffed out.
3938
3939         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
3940         here, too.
3941
3942 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
3943
3944         * gdk/nanox/*: nano-X port work in progress.
3945         * gdk/simple.c: simple test for Gdk.
3946         * README.nanox: notes about the port: read this first!
3947         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
3948         with nano-X.
3949
3950 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
3951
3952         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
3953         gdk_window_clear() into common code, implement in terms of
3954         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
3955         not redirected to the backing rectangle.
3956
3957 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
3958
3959         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
3960         EXTRA_DIST. It does not work well when the file that
3961         everything depends on is not in the tarball.
3962
3963 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
3964
3965         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
3966         with recursion where process_updates() is called from
3967         an expose handler. (GtkTextView is highly broken in
3968         doing this, but it should work, so it is a nice test
3969         case.)
3970
3971 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
3972
3973         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
3974         handle the case where updates are queued during processing of
3975         updates.
3976
3977 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
3978
3979         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
3980         window is on gdk_display - use that instead of segfaulting.
3981
3982 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
3983
3984         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
3985         broken and require an empty arg, give it to them.
3986
3987 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
3988
3989         * gtk/gtklabel.h: indentation fixes.
3990
3991 2000-05-02  Tor Lillqvist  <tml@iki.fi>
3992
3993         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
3994         draw too narrow or too low arcs, they seem to fail, at least with
3995         some display drivers.
3996
3997         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
3998
3999         Large changes to the Win32 backend, partially made necessary by
4000         the changes to the backend-independent internal
4001         structures. Attempts to implement similar backing store stuff as
4002         on X11. The current (CVS) version of the Win32 backend is *not* as
4003         stable as it was before the no-flicker branch was merged. A
4004         zipfile with that version is available from
4005         http://www.gimp.org/win32/. That should be use by "production"
4006         code until this CVS version is usable. (But note, the Win32
4007         backend has never been claimed to be "production quality".)
4008
4009         * README.win32: Add the above comment about versions.
4010
4011         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
4012
4013         * gdk/gdk.def: Update.
4014
4015         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
4016         presumably be replaced by some more better mechanism as 1.4 gets
4017         closer to release shape.
4018
4019         * gdk/makefile.{cygwin,msc}: Update.
4020
4021         * gdk/win32/*.c: Correct inclusions of the backend-specific and
4022         internal headers. Change code according to changes in these. Use
4023         gdk_drawable_*, not gdk_window_* where necessary.
4024
4025         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
4026         our old DND.
4027
4028         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
4029         to interpret single characters as UTF-8. Thanks to Hans Breuer.
4030         Use correct function name in warning messages.
4031
4032         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
4033         GSourceFuncs gdk_event_prepare and gdk_event_check.
4034         (gdk_event_get_graphics_expose): Do implement, use
4035         PeekMessage. Thanks to Hans Breuer.
4036         (event_mask_string): Debugging function to print an GdkEventMask.
4037         (gdk_pointer_grab): Use it.
4038
4039         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
4040         (old) book I used claimed was Hangul actually is CJK Unified
4041         Ideographs Extension A. Also, Hangul Syllables were missing.
4042         Improve logging.
4043
4044         * gdk/win32/gdkgc-win32.c: Largish changes.
4045
4046         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
4047         g_win32_getlocale() from GLib, and not setlocale() to get current
4048         locale name.
4049
4050         * gdk/win32/gdkprivate-win32.h
4051         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
4052         gdkwin32.h, similarily as in the X11 backend.
4053
4054         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
4055         assignment was used instead of equals in if test. Thanks to Hans
4056         Breuer.
4057
4058         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
4059         the X11 version.
4060
4061         * gdk/win32/makefile.{cygwin,msc}
4062         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
4063         path to the Win32 headers that works also with the mingw compiler.
4064
4065         * gtk/gtkstyle.c: Include <string.h>.
4066
4067 2000-04-26  Havoc Pennington  <hp@redhat.com>
4068
4069         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
4070         replacing the broken gtk_label_get ()
4071
4072 2000-04-15  Havoc Pennington  <hp@pobox.com>
4073
4074         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
4075         this keeps scanner scripts from getting confused.
4076
4077         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
4078         data, rather than void
4079
4080 2000-04-15  Tor Lillqvist  <tml@iki.fi>
4081
4082         * gtk/gtkclist.c (gtk_clist_motion)
4083         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
4084         with is_hint FALSE, get x and y from the event. They used to be
4085         used uninitialised. The Win32 backend never sends motion events
4086         marked as hints. This for instance fixes the annoying file and
4087         font selector behaviour in the Win32 version.
4088
4089 2000-04-14  Tor Lillqvist  <tml@iki.fi>
4090
4091         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
4092         gtk_private_n_signals variables, they are used by some software,
4093         sigh.
4094
4095         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
4096         installation directory from the Registry, where the installer
4097         should have put it.
4098
4099 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
4100
4101         * gdk/x11/Makefile.am: Fix problem with installation directory for
4102         gdkx.h
4103
4104         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
4105         <mrcooger@cyberverse.com> so that when selecting menus with the
4106         mouse, the first item will not be selected, but when selecting
4107         with an accelerator, or navigating left-right on a menubar with
4108         the menus popped up, the first item will be selected.
4109
4110 2000-04-05  Dan Damian  <dand@dnttm.ro>
4111
4112         * configure.in: Added "ro" to ALL_LINGUAS.
4113
4114 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
4115
4116         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
4117         indentation.
4118
4119         * Makefile.am (EXTRA_DIST): Fix typo.
4120
4121         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
4122         to catch gdkconfig.h
4123
4124         * gtk/gtkitemfactory.c: Added FIXME.
4125
4126 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
4127
4128         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
4129         s/return_if_fail/return_val_if_fail/g and add a return value.
4130
4131 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
4132
4133         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
4134         merge slipup.
4135
4136         * gdk/gdkinput.h: Fix missing line from merge.
4137
4138 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
4139
4140         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
4141         instead of gdkprivate.h.
4142
4143 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
4144
4145         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
4146         parent class to correctly be GtkDialogClass.
4147
4148 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
4149
4150         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
4151         toplevel windows and their immediate children by their parents,
4152         since the size of toplevel windows is out of our immediate
4153         control and we don't get any real benefit from trying to track
4154         this size for clipping.
4155
4156         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
4157         for input_only windows.
4158
4159         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
4160         to fix some hacks and make sure that we don't try to set the
4161         background of input only windows.
4162
4163 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
4164
4165         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
4166         the _really_ internal stuff, and leave gdkprivate.h for the fake private
4167         stuff that we've traditionally exposed.
4168
4169         * gdk/**.c: Use gdkinternals.h where appropriate.
4170
4171         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
4172         not include gdkprivate-x11.h, move all stuff of conceivable public
4173         interest into gdkx.h; keep all really private stuff in
4174         uninstalled header gdkprivate-x11.h.
4175
4176         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
4177         image->image_put on windows through a new function _gdk_window_draw_image()
4178         to allow us to do backing store for images. (Sort of ugly)
4179
4180         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
4181         contexts locally so that we can offset them properly when drawing 
4182         onto backing pixmaps.
4183
4184         * gdk/gdkinput.h: Reindented
4185
4186         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
4187         pixmap or color for the window, so we can properly initialize
4188         our double-buffer pixmaps, and also so that we temporarily set
4189         a background of None while scrolling.
4190
4191         * gdk/gdkregion.h: Revise region boolean operators to have an
4192         interface that is actually convenient - switch from creating new
4193         regions on every op, to "methods" that modify existing regions
4194         (A = A OP B). 3 argument forms which allow dest == src, would also
4195         be possible, but the current interfaces seem to map nicely
4196         onto what needs to be done. (There is quite a lot of region
4197         code in GDK now.)
4198
4199         * gdk/gdkregion.h: Add constructor from rectangle and a copy
4200         operator.
4201
4202         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
4203         gdkpoly-generic.h: Copy region code from Xlib, switch it over
4204         to 32 bit coordinates, modify it to be mostly GTK+ style
4205         and to have interfaces that match gdkregion.h.
4206
4207         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
4208         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
4209         create a backing pixmap and redirect all drawing to
4210         that backing pixmap until a matching gdk_window_end_paint().
4211
4212         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
4213         Create a special drawable class for GtkWindow's that 
4214         redirects the drawing to the backing pixmap as necessary
4215         and then calls the real operations in _gdk_windowing_window_class.
4216
4217         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
4218         Store invalid region for each window. Generate expose events for invalid
4219         region in an idle. This replaces both the expose compression
4220         and the redrawing queuing in GTK+. It is both more efficient and
4221         simpler than either one individually and far more so then the
4222         combination.
4223
4224         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
4225         Emulate 32 bit coordinates for windows with 16 bit coordinates
4226         by offsetting drawing, guffaw scrolling techniques and
4227         mapping/unmapping child windows as necessary.
4228
4229         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
4230         where, when invalid regions are processed, the region is stored,
4231         and if expose events come in that are detectably duplicate
4232         the processed exposes (by comparison of event serial numbers),
4233         the stored region is subtracted out of those exposes.
4234
4235         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
4236         regions newly exposed when scrolling or resizing windows.
4237         This, combined with forcing processesing of queued invalidated
4238         regions, gives nice flicker-free scrolling.
4239
4240         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
4241         invalidated regions after every scroll.
4242
4243         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
4244         emulation in GDK. Its, for all practical purposes just a
4245         GtkViewport/GtkFixed hybrid now.
4246
4247         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
4248         (16-bit) structures as necessary instead of just casting.
4249
4250         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
4251         in terms of the structures from gdkregion-generic.c, using appropriate
4252         offsets from GDK to X11 coordinates. Cache clip mask and
4253         origin and ts origin locally and only flush to the server
4254         when drawing, to avoid constantly setting and resetting these
4255         values when offsetting GC's for scrolling and backing pixmaps.
4256
4257         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
4258
4259         * gtk/gtkcontainer.c: Call process_all_updates at end
4260         of resizing to reduce flicker. (Avoids having redraw
4261         lag arbitrarily behind resize under some circumstances)
4262
4263         * gtk/gtkentry.c: Remove old backing store code, and simply take
4264         advantage of the new backing store capabilities of GDK.
4265
4266         * gtk/gtkmain.c: Simple implementation of widget backing
4267         store - simply push a paint while handling each expose.
4268         (Should really be configurable widget for widget.)
4269         
4270         * gtk/gtkwidget.c: Remove all the old complicated redraw
4271         code, and simply invalidate the GDK windows from
4272         gdk_window_queue_clear(), etc. (Sigh, so much carefully
4273         debugged complexity ... gone to the winds.)
4274
4275         Remove all the code for suppressing expose events while
4276         resizes are pending; this isn't needed since the invalid
4277         areas won't be processed until after the resizes are
4278         processed, since they are in a lower priority idle.
4279
4280 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
4281
4282         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
4283         and height of dest rectangle for non-intersecting rectangles.
4284
4285 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
4286
4287         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
4288         for GdkRectangle.
4289
4290 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
4291
4292         * gdk/gdk{events,image,private,types,window}.h
4293          gdk/x11/gdkinputprivate.h: Change all coordinates
4294          from int16 to int. Also, Change width and height from
4295          unsigned to signed to avoid all the stupid C 
4296          signedness bugs.
4297
4298 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
4299
4300         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
4301         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
4302         Add some more detailed checking.
4303
4304         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
4305         New function to retrieve the depth of a drawable.
4306
4307         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
4308         field, reorder fields to save memory. 
4309
4310 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
4311
4312         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
4313         of the background image instead of scaling the background down to
4314         a line.
4315
4316         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
4317         which temporarily set slider to wrong size.
4318
4319         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
4320         queue_clear().
4321
4322 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
4323
4324 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
4325
4326         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
4327
4328 2000-03-17  Tor Lillqvist  <tml@iki.fi>
4329
4330         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
4331         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
4332
4333         * gdk/win32/gdkfont-win32.c
4334         * gdk/win32/gdkproperty-win32.c
4335         * gdk/win32/gdkselection-win32.c
4336         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
4337         now declared such.
4338
4339 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
4340
4341         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
4342
4343 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
4344
4345         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
4346         is called without trapping X errors.
4347
4348 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
4349
4350         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
4351         way into the fontset lists.
4352
4353 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
4354
4355         * gtk/gtkthemes.h: add extern "C" scope.
4356
4357 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
4358
4359         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
4360         to make appends to the list constant. (gtk-guy-990901-0.patch)
4361
4362 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
4363
4364         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
4365         for the typename hash table.
4366
4367 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
4368
4369         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
4370         to make sure we never divide by zero. 
4371         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
4372
4373 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
4374
4375         * gtk/gtkfontsel.c: Apply patch from
4376         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
4377         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
4378
4379         Also, some cleanups in atom handling.
4380
4381 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
4382
4383         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
4384         not GtkWidget.
4385
4386 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
4387
4388         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
4389         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
4390         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
4391         more guint wrap-around bugs before going to bed.
4392
4393 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
4394
4395         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
4396         guint wrap arounds in allocation.width.
4397
4398         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
4399         process untill we fit the allocation given.
4400
4401 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
4402
4403         * gtk/gtkwidget.c:
4404         (gtk_widget_unrealize): guard widget access with ref/unref
4405         around signal emission.
4406         (gtk_widget_hide): same here, but also check its destroyed
4407         state before queueing a resize.
4408
4409 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
4410
4411         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
4412         of gtk_default_insensitive_bg as insensitive base color.
4413
4414         * gtk/gtktext.c (gtk_text_style_set): set the background color according
4415         to the widget's state.
4416         (gtk_text_realize): same here.
4417         (gtk_text_state_changed): same here.
4418         (draw_bg_rect): compare background color against base[] from
4419         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
4420
4421 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
4422
4423         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
4424         grabs are active, unless a delete event is send to the toplevel
4425         of the currently grab holding widget.
4426
4427 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
4428
4429         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
4430         debugging g_print's.
4431
4432 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
4433
4434         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
4435         ever make the scrolled-window requisition ever depend on the 
4436         visibility state of the scrollbars for the AUTOMATIC policy. 
4437         This breaks the GTK+ requisition model, and causes loops.
4438
4439 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
4440
4441         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
4442         the default font to avoid problems with XFree86-4.0 where the
4443         default charset is iso10646-1, not iso8859-1.
4444
4445 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
4446
4447         * acinclude.m4
4448         * config.guess
4449         * config.sub
4450         * ltconfig
4451         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
4452
4453         * gtk/Makefile.am: minor cosmetic consistency tweak
4454
4455 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
4456
4457         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
4458         the activate_time to 0, so that we handle a quick
4459         press/release press/release properly and don't suppress
4460         the second release. (Red Hat bug #7545)
4461
4462 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
4463
4464         * gtk/gtkctree.c (row_delete):
4465         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
4466         bugs with destruction notifier, *always* update internal
4467         structures *before* calling user code.
4468
4469 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
4470
4471         A few more fixes for bug #5487, #2051, #2677.
4472         * gtk/gtkclist.c : 
4473         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
4474         not GDK_BUTTON_PRESS.
4475         (resync_selection): resync only if selection_mode is
4476         GTK_SELECTION_EXTENDED
4477         * gtk/gtkctree.c (resync_selection): same here
4478
4479 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
4480
4481         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
4482         gdk_drag_get_selection() and gtk_menu_detach().
4483
4484         [ From Jeroen Ruigrok/Asmodai ]
4485
4486 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
4487
4488         * gtk/gtknotebook.c (gtk_notebook_size_request): 
4489         page->tab_label can be NULL.
4490
4491 2000-01-25  Havoc Pennington  <hp@pobox.com>
4492         
4493         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
4494         arg is boolean
4495
4496         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
4497
4498         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
4499
4500         * gdk/gdkproperty.c (gdk_property_get): return boolean
4501
4502         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
4503
4504         * gdk/gdkim.c (gdk_im_ready): return boolean
4505
4506         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
4507
4508         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
4509         glib clash, should fix glib)
4510
4511         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
4512         (gdk_get_show_events): return gboolean, and canonicalize 
4513         to TRUE/FALSE
4514
4515         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
4516         colormap is private
4517         (gdk_colors_alloc): gboolean whether to be contiguous
4518         (gdk_color_equal): return gboolean since we are a predicate
4519         and not a qsort() (this looks semi-wrong due to glib breakage,
4520         IMO glib should be fixed)
4521         
4522         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
4523         (gdk_get_use_xshm): return gboolean
4524         (gdk_pointer_is_grabbed): return gboolean
4525
4526         * gdk/gdk.h: Change prototypes to match all the above changes,
4527         and re-run egtk-format-protos as required.
4528
4529 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
4530
4531         * gtk/gtkctree.c (resync_selection): 
4532         * gtk/gtkclist.c (resync_selection):
4533
4534         Return immediately if clist->drag_pos < 0. This is a workaround
4535         for the corrupt state that the clist gets into when a
4536         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
4537
4538         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
4539         
4540         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
4541         variable from recent commit.
4542
4543 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
4544
4545         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
4546
4547 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
4548
4549         * gtk/Makefile.am: prefix all autogenerated source that get build in
4550         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
4551         in builddir. since we subsequently cd into srcdir for autogeneration,
4552         the paths have to be stripped from the target file names, thusly we
4553         use $(@F) as target names now.
4554         put a comment about configure.in's --disable-rebuilds option,
4555         which can be used for non-writable source directories, for development
4556         setups though, srcdir has to be *writable*.
4557
4558 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
4559
4560         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
4561           Finish the job of allowing event to be NULL.
4562           (Fixes bug #4283, reported by Chris Blizzard)
4563
4564         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
4565           things so that the cursor appears on screen, properly
4566           take into account INNER_BORDER.
4567           (Fixes bug #4754, reported by Antonio Campos)
4568
4569 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
4570
4571         * gtk/gtknotebook.c (gtk_notebook_map): Don't
4572           show the tab_label unless it itself is visible.
4573
4574           gtk/gtknotebook.c (gtk_notebook_size_request):
4575           Do a better job of making sure that the visibility
4576           of the tab label corresponds to whether it should
4577           be mapped or not.
4578
4579 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
4580
4581         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
4582           Use the requisition, not the allocation, since the
4583           allocation has not necessarily been computed yet.
4584           (Pointed out by Eugene Osintsev)
4585
4586 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
4587
4588         * gtk/gtkstyle.c (gtk_style_new): Dont' set
4589           style/base[GTK_STATE_INSENSITIVE] both to
4590           gtk_default_insensitive_bg!
4591           (Bug #2187, reported by Jonathan Blandford)
4592
4593         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
4594           Add Alt_L, Alt_R to list of invalid accelerators.
4595           (Bug #3736, reported by Vlad Harchev)
4596
4597 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
4598
4599         * gtk/gtkfilesel.c (open_ref_dir): Fix several
4600         bugs which occured after an attempt to open 
4601         invalid home directory left cmpl_state->reference_dir == NULL.
4602
4603          - completion on files in home directory didn't work
4604          - completion on an empty string caused  segfault
4605
4606          (Bug #3768, reported by Steve Ratcliffe)
4607
4608         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
4609         cut and paste error that was causing scales to
4610         be incorrectly positioned.
4611         (Bug #2956,
4612          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
4613
4614 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
4615
4616         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
4617         when checking for dcgettext, if we've found we needed
4618         it for dgettext.
4619 +
4620 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
4621
4622         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
4623         queue_clear on NO_WINDOW widgets during a reparent,
4624         since at that point the window and widget heirarchies
4625         are out of sync. This stops crashing in some cases
4626         (the scrolled window reparent test, for instance), and
4627         _probably_ won't cause drawing errors.
4628
4629         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
4630         test do what it was supposed to do and be robust against
4631         window closings, etc. (Bug #2443)
4632
4633 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
4634
4635         * gtk/gtkentry.c: Fix return values on mouse events.
4636         (Bug #2686, Sky <seb_sky@yahoo.com>)
4637
4638         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
4639         (pointed out by George Lebl)
4640
4641         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
4642         (From Ettore Perazzoli  <ettore@helixcode.com>)
4643  
4644 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
4645
4646         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
4647         clicks between rows or outside calender area correctly.
4648         (Patch from Damon Chaplin)
4649
4650         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
4651         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
4652           Call destroy function when overwriting existing data. 
4653           (Pointed out by Damon Chaplin)
4654
4655 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
4656
4657         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
4658           which was causing problems on various systems with Xmu.
4659           This hasn't been needed for a very long time.
4660           (Fixes #1185 3167)
4661
4662 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
4663
4664         * gdk/gdki18n.h: Include <ctype.h> when defining
4665           gdk_isw* in terms of is* as a fallback.
4666           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
4667
4668 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
4669
4670         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
4671           realize the widget when it is size allocated!
4672           (old, old bug)
4673
4674         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
4675           Removed unused call to gdk_window_get_size() that
4676           showed up when the above was fixed.
4677
4678 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
4679
4680         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
4681           fix up widget->window when the widget is a
4682           NO_WINDOW container widget.
4683
4684 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
4685
4686         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
4687           to account for the fact that feof() does _not_ 
4688           return TRUE on errors, and thus avoid infinite loops
4689           when trying to use gdk_pixmap_create_from_xpm()
4690           on unreadable values.
4691
4692 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
4693
4694         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
4695
4696 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
4697
4698         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
4699           gdk_gc_set_dashes to take gint8 instead of gchar to
4700           make it clearer that it is _not_ a NULL terminated string.
4701
4702         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
4703           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
4704           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
4705           arguments.
4706
4707 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
4708
4709         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
4710         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
4711         background size relative to our allocation, guard against small
4712         allocations, we may have not yet been size allocated.
4713
4714 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
4715
4716         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
4717         not just version == 3. We implement all 3 + most of 4 - 
4718         (we don't support matching text/plain;charset=iso-8859-1
4719         to a dest that expects text/plain). We'll still advertise
4720         3 to be safe, but any client implementing version >= 3
4721         must interoperate with 3.
4722         
4723 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
4724
4725         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
4726         background and gc members, add a warning in gtk_tooltips_set_color()
4727         indicating that this function is deprecated.
4728
4729 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
4730
4731         * docs/gtkfaq.sgml: FAQ Update:
4732           - Minor cleanups (Emmanuel, me)
4733           - New questions:
4734                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
4735                 How can I retrieve the text from a GtkMenuItem? (timj)
4736                 How do I validate/limit/filter the input to a GtkEntry? (me)
4737                 Memory does not seem to be released when I free the list
4738                         nodes I've allocated (timj)
4739
4740 2000-03-07  Tor Lillqvist  <tml@iki.fi>
4741
4742         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
4743         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
4744         for which it is no use to call GetLastError onWin9x.
4745         (gdk_other_api_failed) New function, for general error
4746         reporting without calling GetLastError.
4747         (gdk_win32_api_failed) OTOH, this function always calls
4748         GetLastError. (gdk_win32_last_error_string) Remove this function,
4749         GLib has the equivalent now.
4750
4751         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
4752         call them with function name, file name and line number in the
4753         arguments.
4754
4755         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
4756         functions.
4757         
4758         * gtk/gtk.def: Add some missing entry points.
4759
4760         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
4761         gtk_paned_set_gutter_size, which don't exist any longer, as void.
4762         
4763         Fixes by Hans Breuer:
4764
4765         * gdk/makefile.msc: Update for debugging.
4766
4767         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
4768         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
4769         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
4770         in the dash_list.
4771
4772         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
4773         the x11 backend.
4774
4775         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
4776
4777         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
4778
4779 2000-03-04  Tor Lillqvist  <tml@iki.fi>
4780
4781         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
4782         just pixel value of background colour.
4783
4784         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
4785         containing code snippet previously duplicated in a couple of
4786         places.
4787         
4788         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
4789         gdk_colormap_color.
4790
4791         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
4792         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
4793         events for autorepeated Shift, Control and Alt keys. Use
4794         gdk_colormap_color.
4795
4796         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
4797         pointer is inside the window the cursor of which we are setting,
4798         call SetCursor immediately.
4799
4800         * gdk/win32/makefile.cygwin
4801         * gtk/makefile.cygwin: If we don't have the build number stamp
4802         file, use zero.
4803
4804         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
4805         gtk_paned_set_gutter_size as empty.
4806
4807         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
4808         
4809 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
4810
4811         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
4812           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
4813           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
4814           docs/gtk_tut.sgml docs/gtk.texi TODO:
4815
4816           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
4817
4818 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
4819
4820         * gtk/gtkcalendar.c: Implement num_marked_dates,
4821           and don't emit mutiple day_selected signals on
4822           month_prev.
4823
4824 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
4825
4826         * docs/make-todo (lineno): let title and logo be configurable so
4827         that GNOME can use this script too.
4828
4829         * TODO.xml: added logourl and a title
4830
4831 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
4832
4833         * TODO.xml: Added some UI items, and an explanatory
4834         comment at the top of the file.
4835
4836 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
4837
4838         * TODO.xml: some updates, added abunch of new entries.
4839         a note for those fiddeling with this file, when done
4840         with it, invoke:
4841         $ ./docs/make-todo TODO.xml >/dev/null
4842         and correct output errors before comitting changes.
4843
4844 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
4845
4846         * TODO.xml: Added XML-structured TODO file.
4847         * docs/make-todo: python script to turn TODO.xml into
4848           pretty XML output. 
4849
4850 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
4851
4852         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
4853         the function to let it draw the seven dots, instead of the old,
4854         much maligned, method.
4855         (draw_dot): New function to draw a dot.
4856
4857         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
4858         to draw the handle inside the border width as opposed to outside.
4859         Use paint function instead of gdk_draw_point.
4860
4861         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
4862         to draw the handle inside the border width as opposed to outside.
4863         Use paint function instead of gdk_draw_point.
4864
4865         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
4866         Change indenting to be more GTK like.
4867
4868 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
4869
4870         * docs/gtk_tut.sgml: New section on GtkCalendar
4871         * examples/calendar: Update example code
4872
4873 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
4874
4875         * docs/gtkfaq.sgml: FAQ Update
4876
4877 2000-02-19  Anders Carlsson  <andersca@gnu.org>
4878
4879         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
4880         to prevent the scroll event to be propagated upwards.
4881
4882 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
4883
4884         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
4885         OwnerGrabButtonMask from button entries for
4886         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
4887
4888         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
4889         to the event mask (which will result in button/press release
4890         being added to the event mask on Unix) so scrolling works
4891         for layouts in scroll windows.
4892
4893         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
4894
4895         Patch from Anders Carlsson  <andersca@gnu.org> to add
4896         a scroll event.
4897
4898         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
4899         scrolling to the "Test Scrolling" part of testgtk.
4900  
4901         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
4902  
4903         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
4904         it against GDK_SCROLL.
4905  
4906         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
4907         way of mouse wheel scrolling.
4908  
4909         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
4910  
4911         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
4912  
4913         * gtk/gtkmain.c: Removed previous mouse wheel hack.
4914  
4915         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
4916         gdk_event_mask_table.
4917  
4918         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
4919         GdkEventScroll handler.
4920  
4921         * gdk/gdkevents.h: Added GdkEventScroll structure.
4922  
4923 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
4924
4925         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
4926         and Anders Carlsson to change the Paned widgets so that they
4927         can be dragged from anywhere along the length. Also change
4928         the way that this is drawn to make this apparent.
4929
4930         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
4931         from George Lebl to check that option_menu->menu is present
4932         before getting history.
4933
4934 2000-02-14  Tor Lillqvist  <tml@iki.fi>
4935
4936         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
4937         before the assertion for non-NULL segment list.
4938
4939         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
4940         Seems that pattern brushes *must* be 8x8 pixels! At least on my
4941         machine, but it might be display driver dependent. Sigh, so make
4942         sure the stipple is that size. Does Windows suck or what?
4943
4944         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
4945         places.
4946
4947 2000-02-13  Havoc Pennington  <hp@pobox.com>
4948
4949         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
4950         refcount to 1
4951         (gdk_cursor_new): init refcount to 1
4952
4953         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
4954
4955 2000-02-13  Tor Lillqvist  <tml@iki.fi>
4956
4957         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
4958         so that we don't have to do unnecessary settings to the HDC.
4959
4960         * gdk/win32/gdkdrawable-win32.c
4961         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
4962         gdk_gc_predraw.
4963
4964         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
4965         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
4966         GDI paths, call WidenPath to get the outline of the stroken path,
4967         and then fill the outline (with the brush that was built from the
4968         stipple).
4969
4970         * gdk/win32/gdkgc-win32.c: Factor out common code from
4971         _gdk_win32_gc_new and gdk_win32_gc_set_values into
4972         gdk_win32_gc_values_to_win32values. Use correct colour for
4973         SetBkColor() (Until now the code actually used a random colour in
4974         the call to SetBkColor()... but that didn't show up as not many
4975         GDI APIs use the background colour. Pattern (opaque stippled)
4976         brushes do.)
4977
4978         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
4979         gdk_win32_api_failed): New functions for error logging.
4980
4981         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
4982         WIN32_API_FAILED to call them, passing function or file name and
4983         line number.
4984
4985         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
4986
4987         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
4988         GdkColor for foreground and background in GdkGCWin32Data.
4989
4990         * gdk/makefile.cygwin: Link in the resource object separately.
4991
4992         * gdk/win32/rc/gdk.rc
4993         * gtk/gtk.rc (New file)
4994         * gdk/win32/makefile.cygwin
4995         * gtk/makefile.cygwin: Update build number in DLLs automatically,
4996         as in GLib.
4997
4998 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
4999
5000         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
5001         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
5002         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
5003         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
5004         parameters given and cursor->ref_count. coding style fixups.
5005
5006         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
5007         not GtkWidget.
5008         
5009         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
5010         fix up widget macros and add _GET_CLASS() variant.
5011         
5012         * gtk/*.c: some GtkType fixups.
5013
5014 2000-02-09  Tor Lillqvist  <tml@iki.fi>
5015
5016         * gdk/win32/gdkproperty-win32.c
5017         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
5018         were reversed.
5019
5020 2000-02-04  Tor Lillqvist  <tml@iki.fi>
5021
5022         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
5023         g_filename_to_utf8 to convert the font names Windows gives us from
5024         whatever is the default codepage to UTF-8.
5025         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
5026         in the other direction.
5027
5028         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
5029         error in debugging output.
5030
5031 2000-02-02  Tor Lillqvist  <tml@iki.fi>
5032
5033         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
5034         and height parameters to gdk_window_clear_area(). Not minus one.
5035
5036 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
5037
5038         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
5039         checks if the widget passed to gtk_drag_get_data() was not the
5040         dest widget.
5041
5042 2000-02-01  Tor Lillqvist  <tml@iki.fi>
5043
5044         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
5045         g_filename_from_utf8 functions (which were added a moment ago to
5046         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
5047         size buffers.
5048
5049         gtk_file_selection_get_filename returns the filename in the C
5050         runtime encoding. It calls g_filename_from_utf8, but copies the
5051         returned string to a static buffer, which is returned. I think
5052         this is better than returning the result from g_filename_from_utf8
5053         directly, which would mean all apps that use it would have to free
5054         the return value. Or should this function care about this issue at
5055         all? Maybe a new function with clearly defined semantics.
5056
5057         * gtk/gtkfilesel.h: Add comment about
5058         gtk_file_selection_get_filename returning the filename in the C
5059         runtime's encoding.
5060
5061         * README.win32
5062         * gdk/gdk.def
5063         * gdk/makefile.{cygwin,msc}
5064         * gtk/gtk.def: Updates.
5065
5066         * gdk/gdkcursor-win32.c: Initialise refcount.
5067
5068 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
5069
5070         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
5071
5072 2000-01-30  Havoc Pennington  <hp@pobox.com>
5073
5074         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
5075         destroy
5076
5077         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
5078
5079         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
5080         implemented in platform-specific code
5081
5082         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
5083
5084         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
5085         underscore in front
5086
5087         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
5088         put an underscore in front
5089
5090         * gdk/gdkcursor.c: new file, implements
5091         gdk_cursor_ref/gdk_cursor_unref
5092
5093         * gdk/gdkcursor.h: Refcount GdkCursor
5094
5095         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
5096
5097 2000-01-29  Tor Lillqvist  <tml@iki.fi>
5098
5099         * gdk/gdkwindow.h
5100         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
5101
5102 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
5103
5104         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
5105         structures to properly inherit from GtkWidget not GtkBin.
5106
5107 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
5108
5109         * gtk+.spec.in: Added lib/gtk+/include/* to %files
5110         (bug #5178 - Peter Wainright)
5111         
5112         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
5113         so that it will be installed.
5114         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
5115
5116 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
5117
5118         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
5119         for the GtkStyleClass vtable const.
5120
5121         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
5122         take a const string argument like GtkTranslateFunc. This will
5123         require changes in use code.
5124
5125 2000-01-19  Tor Lillqvist  <tml@iki.fi>
5126
5127         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
5128         semantics (to mimic the X11 backend, which just calls XClearArea)
5129         is to check for zero width (and height), and in that case use the
5130         window's width minus x (height minus y). This fixes for instance
5131         some redraw problems with gtkclist, which were easily noticeable
5132         in the gtk file selection widget.
5133
5134         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
5135         windows.
5136
5137 2000-01-13  Tor Lillqvist  <tml@iki.fi>
5138
5139         * configure.in
5140         * gdk/Makefile.am
5141         * gdk/x11/Makefile.am
5142         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
5143         (bug #5177).
5144         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
5145         out later.
5146
5147 2000-01-09  Tor Lillqvist  <tml@iki.fi>
5148
5149         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
5150         WM_MOVE for iconified or invisible windows. This fixes various
5151         problems when minimising windows. Thanks to Bernd Herd.
5152
5153 2000-01-05  Tor Lillqvist  <tml@iki.fi>
5154
5155         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
5156         backend's draw_lines method, not draw_points.
5157
5158 2000-01-02  Tor Lillqvist  <tml@iki.fi>
5159
5160         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
5161         before Owen's reorganisation: Don't have queued_events and
5162         queued_tail statics in this file, but use gdk_queued_events and
5163         gdk_queued_tail. This makes exposure event compression work again.
5164
5165         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
5166         seem to be needed?
5167
5168 1999-12-30  Tor Lillqvist  <tml@iki.fi>
5169
5170         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
5171         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
5172         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
5173         doesn't do anything.
5174
5175         * gdk/gdk.def: Add gdk_xid_table_insert.
5176
5177         * gdk/win32/gdkprivate-win32.h
5178         * gdk/win32/gdkevents-win32.c
5179         * gdk/win32/gdkinput-win32.c
5180         
5181         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
5182         extension_events field in the GdkWindowWin32Data struct. Use only
5183         the extension_events field in GdkWindowPrivate. Previously one was
5184         set, and the other one tested, which broke tablet
5185         functionality. Thanks to Keishi Suenaga for pointing this out.
5186
5187 1999-12-18  Tor Lillqvist  <tml@iki.fi>
5188
5189         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
5190         When handling a single character (text length == 1), don't handle
5191         it as if it was UTF-8.
5192
5193 1999-12-11  Tor Lillqvist  <tml@iki.fi>
5194
5195         * Makefile.am: Distribute README.win32.
5196         
5197         * gdk/Makefile.am
5198         * gdk/win32/Makefile.am: Distribute Win32 files.
5199
5200         * gdk/makefile.msc: New file.
5201
5202         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
5203         after label).
5204
5205         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
5206         gdk_error_code as GDKVAR, as they are referred outside GDK.
5207
5208         * gdk/win32/makefile.msc: Update.
5209
5210         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
5211         tweaks. Check only if at least one of those Unicode subrange bits
5212         we care for is set. If no code page bits are set, guess (wildly)
5213         based on the charset.
5214
5215         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
5216
5217         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
5218         non-NULL.
5219
5220         * gtk/gtkdnd.c
5221         * gtk/gtklayout.c
5222         * gtk/gtkplug.c
5223         * gtk/gtkselection.c
5224         * gtk/gtksocket.c
5225         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
5226         appropriate. There must be a cleaner way to handle this?
5227
5228         * gtk/gtkrc.c: Must include windows.h on Win32.
5229
5230         * gtk/testgtk.c: No need to include gdkx.h.
5231
5232         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
5233
5234 1999-12-07  Tor Lillqvist  <tml@iki.fi>
5235
5236         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
5237         the rbearing is set to the same as the width, but this should be
5238         fixed.
5239
5240 1999-12-06  Tor Lillqvist  <tml@iki.fi>
5241
5242         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
5243         function. If Windows doesn't tell us what Unicode subranges a font
5244         covers, guesstimate based on the codepages it covers. This will
5245         hopefully help those Windows versions or fonts that don't give us
5246         any useful Unicode subrange information with GetTextCharsetInfo.
5247         Call this function in gdk_font_load_internal.
5248
5249         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
5250         minor changes.
5251
5252 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
5253
5254         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
5255         New function, long needed.
5256
5257 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
5258
5259         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
5260         only_if_exists argument of gdk_atom_intern to
5261         bool.
5262
5263 1999-11-25  Tor Lillqvist  <tml@iki.fi>
5264
5265         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
5266         Fix two copy&paste errors.
5267
5268         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
5269         win32 has changed.
5270
5271         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
5272         GdkWin32SingleFont struct.
5273
5274         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
5275         subranges of loaded fonts. Clear font signature first, in case
5276         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
5277         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
5278
5279         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
5280         Unoffset clip region.
5281
5282 1999-11-23  Tor Lillqvist  <tml@iki.fi>
5283
5284         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
5285         event->any.window before calling filter functions.
5286
5287 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
5288
5289         * gtk/gtkgamma.h: Adapt cast macros to standard.
5290
5291 [ Merges from 1.2 ]
5292
5293 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
5294
5295         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
5296         If translation does not include a '/', use entire
5297         translation instead of crashing.
5298
5299 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
5300
5301         * docs/gtk_tut.sgml:
5302         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
5303
5304 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
5305
5306         * gtk/gtkselection.c (gtk_target_list_remove): Use
5307         g_list_remove_link, not g_list_remove.
5308
5309         [ From Geert Bevin <gbevin@thunderstorms.org> ]
5310         
5311 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
5312
5313         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
5314         statement upon unselection (how the heck did that slip in?).
5315
5316 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
5317
5318         * gtk/gtktext.c (gtk_text_freeze): 
5319         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
5320         in frozen state (and aparently crashes). patch provided by Anders
5321         Melchiorsen <and@kampsax.dtu.dk>.
5322
5323 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
5324
5325         * fix insensitive default/focus widget activation,
5326         reported by Matt Goodall <mgg@isotek.co.uk>.
5327
5328         * gtk/gtkwindow.c (gtk_window_key_press_event): 
5329         (gtk_window_activate_default):
5330         (gtk_window_activate_focus):
5331         return handled=FALSE for actiavtion of insensitive default
5332         widgets. return handled=TRUE for activation of insensitive
5333         focus widgets. don't activate in either case.
5334
5335 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
5336
5337         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
5338         and $glib_cflags to match library order and in the
5339         theory that an old version of GLib is more likely to
5340         be in the include directory for X then vice-versa.
5341         (Bug #2776)
5342
5343 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
5344
5345         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
5346         to determine the locale for fontsets, not LC_MESSAGES;
5347         the user may want English messages with a handling
5348         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
5349         will still be broken) (Bug #2891)
5350
5351 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
5352
5353         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
5354
5355 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
5356
5357         * gtk/gtkrc.ko: Changed the Korean default fontset.
5358
5359 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
5360
5361         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
5362         where when scrolling to the left or top double exposes
5363         were done, causing major slowdowns.
5364
5365 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
5366
5367         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
5368         names to lowercase and alphanumeric, before looking
5369         them up.
5370
5371         * gtk/Makefile.am: Install codeset variant gtkrc files
5372         with normalized names.
5373
5374 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
5375
5376         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
5377         popup menus when the menu is already visible, but its parent
5378         is still hidden, (happens after tornoff window got hidden).
5379
5380 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
5381
5382         * gtk/Makefile.am (install-data-local): Fix
5383         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
5384         deleted, causing error messages on install.
5385
5386 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
5387
5388         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
5389         the handle as well, since we now sometimes ignore
5390         exposes on the handle while resizing.
5391
5392 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
5393
5394         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
5395         extra g_free introduced in one of the last one or two 
5396         commits.
5397
5398 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
5399
5400         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
5401         consistent, put each style that a gtkrc.* file creates
5402         in a unique namespace, remove old files before installing.
5403
5404 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
5405
5406         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
5407         gtk_rc_init is called multiple times. (Yes, people who
5408         do that have bugs in their code.)
5409
5410 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
5411
5412         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
5413         Remove it since it's generated by the Makefile anyway
5414
5415 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
5416
5417         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
5418         device->info.axes for core pointer.
5419
5420 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
5421
5422         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
5423         idle_id, to deal with obsolete, broken C libraries.
5424
5425 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
5426
5427         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
5428         allocation->x/y twice!
5429
5430         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
5431         consistent with gtk_vscale_pos_trough().
5432
5433 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
5434
5435         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
5436         be queueing a resize on a toplevel container between
5437         the time we show it and when we map it. So, we need
5438         to test GTK_WIDGET_VISIBLE() for toplevels, and only
5439         use GTK_WIDGET_DRAWABLE() for child windows.
5440
5441 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
5442
5443         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
5444         (fixes bug #2144)
5445
5446 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
5447
5448         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
5449         container DRAWABLE (instead of VISIBLE), so we don't queue
5450         resizes on non-toplevel containers.
5451
5452 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
5453
5454         * gtk/gtkselection.[ch]: Make the data argument
5455         const guchar *.
5456
5457 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
5458
5459         * gtk/gtkwindow.c: Try to behave sensibly if 
5460         the focus widget is the window itself. (Should
5461         we allow this at all?)
5462
5463 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
5464
5465         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
5466         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
5467         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
5468         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
5469         in prototypes and implementations consistent (Tomas Ogren).
5470
5471         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
5472         before the widget is unparented (reported by damon).
5473
5474         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
5475         since we provide unsigned data anyways.
5476
5477 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
5478
5479         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
5480         the call to gtk_tooltips_layout_text() until later.
5481
5482         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
5483         Call gtk_widget_ensure_style() before using the style.
5484
5485 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
5486
5487         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
5488         for old widgets that don't propagate draws to all
5489         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
5490
5491 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
5492
5493         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
5494         for a redraw but just the widget that requested the resize.
5495
5496 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
5497
5498         * gtk/gtkcontainer.c: added new widget level method
5499         gtk_container_set_reallocate_redraws() and a GtkContainer flag
5500         reallocate_redraws : 1 to reflect the setting, exported this through
5501         the argument system as a boolean ::reallocate_redraws.
5502
5503         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
5504         on the widget because the allocation changes, do so as well for
5505         widget->parent if the parent has reallocate_redraws set to TRUE.
5506         with that containers requesting reallocation redraws get automatically
5507         redrawn if their children changed allocation (this unfortunately
5508         affects also other children that didn't change allocation, but we
5509         cannot work around that before 1.3).
5510
5511 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
5512
5513         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
5514         _and_ height are >0 (not _or_).
5515
5516         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
5517         instead of gtk_container_queue_resize(), which is a core gtk internal
5518         function (must have been on crack when i queued that).
5519
5520         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
5521         we can check more reliably if we want to discard expose events.
5522         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
5523         flag.
5524         
5525         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
5526         we simply trust these events. for deciding whether to discard exposes,
5527         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
5528         
5529 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
5530
5531         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
5532         queues of areas that are completely off screen.
5533
5534         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
5535         logic for handleboxes.
5536
5537         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
5538         check on width/height.
5539
5540 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
5541
5542         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
5543         we are fine with using $@ the way we do (if we actually encounter
5544         brokeness with $@ in VPATH builds because of additional path prefixes,
5545         we need to use $(@F) actually).
5546
5547 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
5548
5549         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
5550         short lived bugs, that would allow language bindings to do surgeries
5551         to our guts.
5552
5553 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
5554
5555         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
5556         where comparison was being done against an uninitialized
5557         value causing intermittant results depending on
5558         compiler flags. Also make it clearer that we aren't
5559         ever initializing the child as 0x0 (though this will
5560         be caught in gtk_widget_size_allocate())
5561
5562 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
5563
5564         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
5565         gtk_window_unset_transient_for() call after we do checks
5566         involving the old transient parent.
5567         [ From Lance Capser <lmc@cyberhighway.net> ]
5568
5569 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
5570
5571         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
5572         an empty file.
5573
5574 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
5575
5576         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
5577         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
5578
5579 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
5580
5581         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
5582         `$@' is valid only in the build dir, not after we've done 
5583         `cd $srcdir'.  Also use `test -f' instead of less portable
5584         `test -e'.
5585
5586 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
5587
5588         * gtk/gtktext.c (correct_cache_insert): Rewrite
5589          for simplicity, and hopefully correctness.
5590          (Fixes bug #1322, which was a segfault when
5591           on some insertions with the properties around
5592           the insertion set up just wrong.)
5593
5594         * gtk/gtktext.c (gtk_text_adjustment): When we receive
5595          a "changed" signal, clamp the new value to the adjustment
5596          bounds to avoid segfaulting if someone tries to change
5597          the adjustment to a bogus value. (Bug #1795)
5598
5599 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
5600
5601         * gtk/gtkmain.c: Ignore unexpected destroy notifies
5602         for children, for toplevel windows handle them
5603         like delete_event.
5604
5605         * gtk/gtkplug.c: Add an unrealize handler so that
5606         we unref plug->socket_window when we are done
5607         with it.
5608
5609 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
5610
5611         * gtk/gtktext.c (clear_area): Fix stupid signedness
5612          problem that was causing background to sometimes
5613          be misaligned.
5614
5615 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
5616
5617         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
5618         
5619         * gtk/gtkmenu.c (gtk_menu_position): Make
5620          sure we never position menus with negative x, y,
5621          since gtk_widget_set_uposition() can't handle that.
5622
5623         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
5624          Modify the positioning code a bit so that we always
5625          put the top-left corner onscreen. (This is for
5626          UI reasons, gtk_menu_position() now takes care of
5627          gtk_widet_set_uposition() brokeness.)
5628
5629 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
5630
5631         * gtk/Makefile.am: fixed up things for -jx, x > 1.
5632
5633 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
5634
5635         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
5636           RC style that is passed in. The lack of the ref
5637           before was a bug. If people worked around this
5638           bug, this will introduce a slight memory leak
5639           in their code. The code should typically look like:
5640
5641             rc_style = gtk_rc_style_new ();
5642             [...]
5643             gtk_widget_modify_style (widget, rc_style);
5644             gtk_rc_style_unref (rc_style);
5645
5646         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
5647           the style if it was already set.
5648
5649         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
5650           style if it was set before.
5651
5652 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
5653
5654         * gtk/testgtk.c (main): Add a check to see if we
5655           are being run from the correct directory and
5656           to quit nicely if we are not.
5657
5658         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
5659           static.
5660
5661 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
5662
5663         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
5664
5665         * gtk/gtkwindow.c:
5666         queue resizes unconditionally (gtk_widget_queue_resize will figure
5667         what to do if the window is not realized).
5668         (gtk_window_move_resize): only recenter the window
5669         for GTK_WIN_POS_CENTER_ALWAYS.
5670         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
5671         the same way as GTK_WIN_POS_CENTER.
5672
5673 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
5674
5675         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
5676         with (!(info->last_flags & GDK_HINT_POS)) instead of
5677         (!info->last_flags & GDK_HINT_POS).
5678
5679         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
5680         new_height unconditionally, because we use these values even if
5681         !default_size_changed && !hints_changed.
5682         comented the (default_size_changed || hints_changed) case with
5683         respect to resize rejects from the window manager.
5684
5685         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
5686         in the zvt condition hack, since this includes the window hints, set
5687         the hints after the handling_resize case.
5688
5689         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
5690         window is initially shown with to the geometry.
5691
5692 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
5693
5694         * gtk/gtkwindow.c (gtk_window_move_resize):
5695         s/size_changed/default_size_changed/g so i know what's
5696         really going on (frying brain on smaller flame now).
5697
5698 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
5699
5700         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
5701         we have size_changed upon handling_resize. this is a gross
5702         workaround for the broken zvt widget and should be removed in
5703         1.3 again (search for FIXME).
5704         Owen provided an accurate comment for this:
5705
5706         /* We could be here for two reasons
5707          *  1) We coincidentally got a resize while handling
5708          *     another resize.
5709          *  2) Our computation of size_changed was completely
5710          *     screwed up, probably because one of our children
5711          *     is broken. It's probably a zvt widget.
5712          *
5713          * For 1), we could just go ahead and ask for the
5714          * new size right now, but doing that for 2)
5715          * might well be fighting the user (and can even
5716          * trigger a loop). Since we really don't want to
5717          * do that, we requeue a resize in hopes that
5718          * by the time it gets handled, the child has seen
5719          * the light and is willing to go along with the
5720          * new size. (this happens for the zvt widget, since
5721          * the size_allocate() above will have stored the
5722          * requisition corresponding to the new size in the
5723          * zvt widget)
5724          *
5725          * This doesn't buy us anything for 1), but it shouldn't
5726          * hurt us too badly, since it is what would have
5727          * happened if we had gotten the configure event before
5728          * the new size had been set.
5729          */
5730
5731 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
5732
5733         * gtk/gtkrc.c: deal properly with the fact that RC
5734           style lists may include rc styles more than once.
5735
5736         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
5737           unused static function.
5738
5739         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
5740           stack of directories of RC files currently being
5741           parsed and implicitely add them to pixmap path.
5742           
5743           This fixes a bug where the directory would get
5744           appended then overwritten by pixmap_path declarations.
5745
5746           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
5747
5748         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
5749           theme's exit function. (Patch from Peter Wainwright,
5750           bug #1454)
5751
5752         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
5753           Add a destroy() handler to take care of removing
5754           group for menu item. (Fixes bug #1197)
5755
5756         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
5757           in warning message.
5758
5759 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
5760
5761         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
5762         roundtrip to figure window's width and height, since we know that
5763         anyways from widget->allocation.
5764
5765 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
5766
5767         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
5768           the hints after we request the new size.
5769
5770 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
5771
5772         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
5773           GTK_WIDGET_REALIZED() assertion - we can compute the
5774           hints before we are realized.
5775
5776         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
5777           hint changing so that we have a value of hints_changed
5778           when we decide whether to constrain the window size.
5779
5780         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
5781
5782         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
5783         change back to G_MAXINT.
5784
5785 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
5786
5787         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
5788         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
5789         contain uncluttered values.
5790         (gtk_window_compute_hints): simply assert that window is realized
5791         and that geometry_info is valid, since we rely on this anyways.
5792         (gtk_window_constrain_size): major cleanups to the code.
5793         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
5794         for the base size, instead of the minimums. use 32767 as max width
5795         and height (like in gtkwindow.c) instead of G_MAXINT.
5796
5797 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
5798
5799         * cleaned up the GtkContainer.need_resize flag handling mess, we
5800         only need to force resize requests when we were prematurely
5801         realized, or our widget tree was modified when we were temporarily
5802         hidden. handling these cases directly upon showing the window (i.e.
5803         while the GdkWindow is still unmapped) avoids the need to wait for
5804         a configure event response and therefore makes the GUI more snappier
5805         and avoids blank windows during the roundtrip.
5806
5807         * gtk/gtkwidget.c:
5808         (gtk_widget_hide): 
5809         (gtk_widget_show): don't queue resizes on toplevels, they know how
5810         to deal with matters.
5811
5812         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
5813         flag directly for not visible resize containers and spare us unecessary
5814         signal emissions.
5815
5816         * gtk/gtkwindow.c:
5817         (gtk_window_realize): if we need to enforce premature size allocation,
5818         queue a container resize so we are correctly resized later on.
5819         (gtk_window_init):
5820         (gtk_window_size_request):
5821         don't freak around with the ->need_resize flag,
5822         gtk_container_queue_resize() will care about that.
5823         (gtk_window_show):
5824         handle initial resizing issues here, we can handle matters better in
5825         this place, especially since we know that our GdkWindow is still
5826         unmapped.
5827         (gtk_window_move_resize):
5828         don't care about ->need_resize at all.
5829         handle size changes properly that occoured while we waited for a
5830         configure event.
5831
5832 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
5833
5834         * gtk/gtkwidget.c (gtk_widget_set_uposition):
5835         * gtk/gtkwindow.[hc] (gtk_window_reposition):
5836         Move the hint setting code from gtk_widget_set_uposition
5837         to here; set the hints so that we respect any previously
5838         set geometry hints.
5839
5840         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
5841         change the window hints here or move the window here,
5842         let that happen in gtk_window_move_resize().
5843
5844 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
5845
5846         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
5847         to already queued resizes (and therefore redraws) on a widget, check
5848         its anchestry as well.
5849
5850         * gtk/gtkcontainer.c:
5851         (gtk_container_queue_resize): clear resize widgets for resize
5852         containers before aborting prematurely. this is especially important
5853         for toplevels which may need imemdiate processing or their resize
5854         handler to be queued.
5855         (gtk_container_dequeue_resize_handler): added new internal function for
5856         gtkwindow.c.
5857
5858         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
5859         configure event, take possible changes in window position into account
5860         as well.
5861         if we request a new window size, queue up a resize handler that will
5862         last until the configure event response arrives.
5863         combined the ->need_resize case (initial show) with the general size
5864         (hints) changed case and added even more comments.
5865         if !auto_shrink, only revert to the old allocation if the new size
5866         is smaller than the current allocation.
5867
5868 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
5869
5870         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
5871                            gtk_window_set_geometry_hints
5872                            gtk_window_set_default_size):
5873         When hints are set, queue a resize so that the hints will
5874         be eventually reset on the toplevel.
5875
5876         * gtk/gtkwindow.c (gtk_window_show): Use
5877         gtk_window_compute_default_size(). Clear the need_resize flag
5878         on the initail map so that we don't unnecessarily trigger the
5879         resize code.
5880
5881         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
5882         into separate functions. Compare the hints we are setting
5883         with what we set last time so that we can accurately
5884         tell when we need to reset the hints.
5885
5886         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
5887         function to figure out the size from requisition
5888         and default_size.
5889
5890         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
5891         from fvwm to constrain a size to the geometry hints.
5892
5893         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
5894         to compare two sets of geometry hints.
5895
5896         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
5897         from gtk_window_set_hints(), just compute the hints,
5898         don't set them.
5899
5900         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
5901         code from gtk_window_move_resize() to separate function,
5902         rationalize a bit.
5903
5904 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
5905
5906         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
5907         structure into a new private structure.
5908
5909         * gtkrc.c: Split GtkRcStyle into public/private.
5910         In the private part, add a list of pointers to the
5911         RcStyle lists this RcStyle participates in.
5912
5913         * gtkrc.c: When a RcStyle is free, remove all
5914         lists referencing it from the 
5915         realized_style_ht hash, and free those lists.
5916         
5917         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
5918         gtk_rc_init(), since that adds the default styles
5919         to the list of parsed RC files again.
5920
5921         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
5922         
5923 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
5924
5925         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
5926         checks that ensure that a widget's allocation is at least 1 in width
5927         and height. (GNOME note: this doesn't affect old panel code anymore,
5928         because GtkSocket will request width and height of at least 1 since
5929         Fri Jul 23).
5930
5931         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
5932         allocated yet (happens if the user realizes the window prematurely),
5933         size request and allocate it.
5934         (gtk_window_size_allocate): guard against guint underflows.
5935
5936 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
5937
5938         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
5939         in gtk_built_sources, so gtk.defs gets built prior to all other
5940         sources.
5941
5942 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
5943
5944         * gtk/Makefile.am:
5945         invoke indent on gtkmarshal.*. 
5946         rewrote source generation rules, use COPYING as oldest source tag for
5947         a piggyback rule to generate all sources from (don't touch it ;).
5948         major cleanups, strip spaces on build rules for GNU Make.
5949
5950         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
5951         source and target files from commandline arguments. don't invoke indent.
5952
5953 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
5954
5955         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
5956         notebook after switch to avoid drawing problems.
5957         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
5958         
5959         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
5960         show them instead. 
5961         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
5962
5963 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
5964
5965         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
5966         notebook after switch to avoid drawing problems.
5967         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
5968         
5969         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
5970         show them instead. 
5971         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
5972
5973 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
5974
5975         * gtk/gtkwindow.c:
5976         we use window->need_resize from configure_event now, to indicate that
5977         the gtkwindow should keep its allocation (e.g. because the user resized
5978         the window through window manager handles). resize_count is now reliably
5979         used to figure whether we got the allocation we requested from the
5980         window manager.
5981         configure events get queued as resizes now, the real stuff (size
5982         computation and allocation) now only goes on in gtk_window_move_resize().
5983         GtkWindow's requisition now contains its *real* requisition (like all
5984         other widgets), *not* taking usize into account.
5985         geometry_info->last_{width|height} is now updated from set_hints() only
5986         so it always contains the last hints we set for the window manager.
5987         made some event handlers return TRUE instead of FALSE.
5988         the overall code should be much more straight forward now, and the
5989         significant code portions are accompanied by comments now.
5990         (gtk_window_set_hints):
5991         removed requisition argument and made it
5992         fetch the requisition through gtk_widget_get_child_requisition.
5993         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
5994         does that now.
5995         (gtk_window_show):
5996         ensure that the widget is realized before calling 
5997         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
5998         ensure that we got properly size requested and allocated before
5999         realization.
6000         (gtk_window_configure_event):
6001         ignore plain window moves, or reallocate the widget tree through the
6002         resize queue otherwise.
6003         (gtk_window_move_resize):
6004         mostly rewrote this function to figure window manager hints more
6005         reliably, coalesce window moves and resizes to reduce configure events
6006         and do actuall size allocations.
6007
6008 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
6009
6010         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
6011         that have a resize pending, because a redraw is already queued for them.
6012
6013         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
6014         hack to clear resize_widgets.
6015
6016         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
6017         for resize containers prior to size allocation. (this is also a bit
6018         ugly, but avoids side effects for stopped emissions and is thus more
6019         reliable).
6020         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
6021
6022         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
6023         function from gtk_tooltips_expose, as we connect to ::expose_event
6024         *and* ::draw now.
6025
6026 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
6027
6028         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
6029         checks.
6030         (gtk_target_list_unref): Likewise.
6031
6032         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
6033
6034 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
6035
6036         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
6037         guard against division by zero. (Fixes bug #1339)
6038
6039 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
6040
6041         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
6042         Prevent the trivial leak of information of allowing
6043         word motion when the entry is not visible.
6044
6045 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
6046
6047         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
6048         modality to error dialog as well as confirmation dialogs.
6049         (Bug #1803, reported by Rosanna Wing Sze Yuen)
6050
6051 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
6052
6053         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
6054         tree->view_lines.
6055         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
6056
6057         * gtk/Makefile.am (install-data-local): Solaris apparently
6058         has various troubles with ln -f; use rm first instead.
6059         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
6060
6061 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
6062
6063         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
6064         use `cp' followed by `rm' (the `rm' was already there).
6065
6066 July 30, 1999 Elliot Lee <sopwith@redhat.com>
6067         
6068         * configure.in: Fix autoconf warnings about cross compilation by
6069         trying to provide sane defaults for AC_TRY_RUN.
6070         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
6071         put them into $(srcdir) when generated. Also add a dependency of
6072         gtksignal.h on gtkmarshal.h for -j builds. 
6073         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
6074
6075 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
6076
6077         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
6078         GDK_THREADS_{LEAVE,ENTER} pair.
6079         (From Paul Fisher <pnfisher@redhat.com>)
6080
6081 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
6082
6083         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
6084         width and height are always >0 (owen).
6085
6086 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
6087
6088         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
6089         change that assured that a widget's allocated with and height are
6090         always >1, since this breaks *buggy* panel code. unfortunately this
6091         back-breaks the gimp's color selector.
6092
6093         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
6094         allocation is always >0 in width and height, before sending the
6095         configure event; this is a *gross* hack to get the gimp back to work.
6096         
6097         * marked both cases with TODO-1.3
6098
6099 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
6100
6101         * gtk/gtktext.c: Don't display wrap indicators when
6102         text is not editable and word wrap is on.
6103
6104 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
6105
6106         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
6107         option menus here as they are not derived from menu shell, assure that
6108         the option menu has a menu we can add items to.
6109
6110 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
6111
6112         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
6113         width/height to (gint) before calculations and check against < 0 to
6114         avoid guint wraparounds.
6115
6116 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
6117
6118         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
6119         width and height is never zero. sanity check both dimensions against
6120         32767 and issue a warning if the allocation is greater than that.
6121
6122 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
6123
6124         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
6125         to g_main_pending() as well.
6126
6127 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
6128
6129         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
6130         call to g_main_iteration() - since that will regrab
6131         GTK+ lock to process events.
6132
6133 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
6134
6135         * gtk/gtkwindow.c
6136         - Regularize with the rest of GTK+ by making widget->requisition
6137           not reflect the set_usize()
6138         - Always recompute geometry hints, then check if they
6139           changed before sending them to the X server. The
6140           previous checks for changes would fail in a number
6141           of circumstances. 
6142
6143 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
6144
6145         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
6146
6147 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
6148
6149         * gtk/gtkdnd.c:
6150         - Code cleanups
6151         - Instantaneously update on modifier key presses
6152         - Allow cancellation of the drag with Escape.
6153
6154 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
6155
6156         * gtk/testgtk.c (create_handle_box): Set the policy
6157         to auto_shrink - otherwise the appearance is rather
6158         strange when flipping between horizontal and vertical.
6159
6160 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
6161
6162         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
6163         (gtk_window_set_default_size): don't change a value if it's < 0.
6164         queue a resize.
6165
6166 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
6167
6168         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
6169
6170 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
6171
6172         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
6173         add an extra "/" when concating "/" + filename.
6174         (From Matt Grossman <mattg@oz.net>)
6175
6176 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
6177
6178         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
6179         for fg_gc if we set it for drawing pixmap.
6180
6181 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
6182
6183         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
6184         
6185         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
6186         already set, call old engine's destroy function and
6187         unref the old engine.
6188
6189 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
6190
6191         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
6192
6193 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
6194
6195         * gtk/gtkaccelgroup.h: mark certain functions as internal.
6196
6197 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
6198
6199         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
6200         expand behaviour changed.
6201
6202         * gtk/gtklabel.c (gtk_label_set_pattern):
6203         (gtk_label_set_justify):
6204         (gtk_label_set_line_wrap):
6205         don't bother invoking queue_clear, the reallocation does
6206         that for us, always free_words so the upcoming resize will
6207         relayout the label's contents.
6208
6209 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
6210
6211         * applied argument implementation patches from Elena Devdariani
6212         <elena@cogent.ca>.
6213
6214         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
6215         ::space_style, ::relief
6216         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
6217         * gtk/gtkpreview.c: ::expand
6218         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
6219         * gtk/gtknotebook.c: ::homogeneous
6220         * gtk/gtklabel.c: ::wrap
6221         * gtk/gtklist.c: ::selection_mode
6222         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
6223         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
6224         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
6225         * gtk/gtkclist.c: ::sort_type
6226         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
6227         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
6228
6229 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
6230
6231         * gtk/gtkstyle.c: Removed ill-thought-out part of last
6232         comment.
6233
6234 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
6235
6236         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
6237         counting right when we have to attach a new style
6238         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
6239
6240         * gtk/gtkstyle.c: Documented the refcounting
6241         peculularities of gtk_style_attach.
6242
6243 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
6244
6245         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
6246         window types.
6247
6248         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
6249         of GTK_TOPLEVEL for creating the window.
6250
6251 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
6252
6253         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
6254         the last argument (reported by Per Winkvist).
6255         
6256 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
6257
6258         Fixes for invisible XOR lines (Frank Loemker
6259         <floemker@TechFak.Uni-Bielefeld.DE>)
6260         
6261         * gtk/gtkclist.c (gtk_clist_realize): Always use
6262         a non-zero pixel for GDK_XOR.
6263
6264         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
6265         Use GDK_INVERT instead of GDK_XOR.
6266
6267 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
6268
6269         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
6270         signals if h/voffsets differ from adjustment values.
6271         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
6272
6273 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
6274
6275         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
6276         ::selection-done emissions up to the topmost menu shell.
6277
6278 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
6279
6280         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
6281         the user data on the window before destroying it.
6282
6283         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
6284         unrealize handler to take care of destroying 
6285         notebook->panel properly. 
6286         (Bug #1198 - Morten Welinder <terra@diku.dk>)
6287
6288         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
6289         of g_new and g_realloc to stop memory leak. (Actually,
6290         we could just use g_realloc(), but I'm not 100% sure
6291         that is portable).
6292         (Bug #1196 - Morten Welinder <terra@diku.dk>)
6293
6294 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
6295
6296         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
6297
6298         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
6299         for fontsets.
6300
6301         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
6302         with bin/button confusion.
6303
6304 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
6305
6306         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
6307         and show how preselection of radio items is done.
6308
6309 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
6310
6311         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
6312         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
6313         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
6314         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
6315         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
6316         * gtk/gtktable.c (gtk_table_attach): 
6317         * gtk/gtklist.c (gtk_list_insert_items): 
6318         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
6319         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
6320         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
6321         * gtk/gtkbin.c (gtk_bin_add): 
6322         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
6323         * gtk/gtkfixed.c (gtk_fixed_put): 
6324         * gtk/gtklayout.c (gtk_layout_put):
6325         general fixups to container_add logic. always realize child if
6326         child->parent is realized, only map the child and queue a resize
6327         if child and child->parent are both visible.
6328
6329 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
6330
6331         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
6332         instead of gtk_container_foreach to walk and unrealize children, so
6333         composite children get also unrealized.
6334         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
6335         (gtk_widget_map): assert that the widget is visible (basic constrain).
6336         (gtk_widget_real_map): assert that the widget is realized (basic
6337         constrain).
6338
6339 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
6340
6341         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
6342
6343 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
6344
6345         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
6346         file for iso-8859-2 locales.
6347
6348         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
6349
6350 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
6351
6352         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
6353          (Pointed out by andy@rz.uni-karlsruhe.de and others).
6354          Remove some suspicious and useless lines. 
6355
6356 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
6357
6358         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
6359         width,height = 0, 0 to mean - here to edge of window,
6360         instead of -1, -1, since the former is all we support.
6361
6362 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
6363
6364         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
6365         when removing from quit_functions list.
6366
6367 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
6368
6369         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
6370
6371 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
6372
6373         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
6374          When redrawing characters on non-visible entry, use appropriate
6375          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
6376
6377 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
6378
6379         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
6380         from drag coordinates.
6381         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
6382         use drag_dest_cell.
6383
6384         * gtk/gtktree (drag_dest_cell)
6385         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
6386         (Bug #1129)
6387
6388 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
6389
6390         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
6391         translate_* fields.
6392         (gtk_item_factory_finalize): invoke translate_notify independant from
6393         translate_data.
6394         (gtk_item_factory_set_translate_func): likewise.
6395         (gtk_item_factory_destroy): only remove ifactory pointer from those
6396         widgets that belong to us (stupid me).
6397
6398 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
6399
6400         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
6401         rc_style list when lookup succeeeds.
6402
6403 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
6404
6405         * gtk/gtkctree.c (resync_selection): 
6406         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
6407         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
6408         bug.
6409
6410 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
6411
6412         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
6413         Add some missing GDK_THREADS_ENTER()/LEAVE around
6414         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
6415
6416 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
6417
6418         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
6419         rather than emit_by_name.
6420
6421         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
6422         on the widget across multiple signal emissions.
6423         (gtk_editable_delete_text): same here.
6424         (gtk_editable_class_init): set widget_class->activate_signal after
6425         editable_signals[ACTIVATE] has been created.
6426
6427 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
6428
6429         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
6430         position here prematurely -- we might not have the
6431         right ->min_position and ->max_position yet.
6432
6433 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
6434
6435         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
6436         Add error traps so if the other end of the connection
6437         dies, we survive.
6438
6439         * gtk/gtkselection.c (gtk_selection_notify): Clean
6440         up properly when selection property retrieval fails.
6441         
6442         * gtk/gtkselection.c (gtk_selection_request): Correctly
6443         reject SelectionRequest notifies where the handler
6444         returns no data.
6445
6446 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
6447
6448         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
6449         when we've previously highlighted.
6450
6451         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
6452         emit two "drag_leave" signals for Motif drops.
6453
6454         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
6455         back the correct status messages when dropping from
6456         Motif onto a proxy window that is rejecting the
6457         drop.
6458
6459 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
6460
6461         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
6462         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
6463         to compare two argument values. added gtk_arg_to_valueloc() to set a
6464         variable from an arg through its location (pointer).
6465
6466         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
6467         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
6468         as gfloat*, uchars are collected as guchar*, ints are collected as
6469         gint*, etc...
6470
6471 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
6472
6473         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
6474         Include <string.h> instead of <strings.h>.
6475
6476         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
6477         (actually, a lot more duplicate includes occur if
6478          you trace through the sequence of #include's)
6479         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
6480         
6481 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
6482
6483         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
6484         gtk-a-higuti-990322-[0-3]
6485
6486         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
6487         that was causing -DX_LOCALE not to work.
6488
6489         * gtk/gtkrc.c (gtk_rc_init):
6490         X_LOCALE will never have LC_MESSAGES defined
6491
6492 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
6493
6494         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
6495         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
6496
6497         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
6498         left/right as well (gtk-michael-980726-0.patch.gz).
6499
6500         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
6501         for pointer values, use gchar instead of char. fixed uline allocation
6502         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
6503         chunks instead of G_ALLOC_ONLY.
6504         (gtk_label_size_request): always alter requisition as passed and leave
6505         widget->requisition alone.
6506         (gtk_label_set_text): allow NULL strings.
6507         (gtk_label_new): likewise.
6508
6509 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
6510
6511         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
6512
6513 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
6514
6515         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
6516         *and* mapped (i.e. drawable).
6517         (gtk_bin_expose): only send exposes to drawable children.
6518
6519         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
6520         (gtk_box_expose): only send exposes to drawable children.
6521
6522         * gtk/gtkhscale.c (gtk_hscale_draw): 
6523         * gtk/gtkvscale.c (gtk_vscale_draw):
6524         hm, this is an ugly one. we first compute the size of our trough area
6525         here (window relative) and then check intersection with the draw_area
6526         which is parent relative because we're a NO_WINDOW widget, so we need
6527         to offset the trough area by allocation.x and allocation.y before the
6528         check. (this must not be done for the background area though, since
6529         that's already computed parent relative).
6530
6531 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
6532
6533         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
6534         unrealize title buttons.
6535
6536 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
6537
6538         * gtk/gtkclist.c (gtk_clist_column_title_passive)
6539         (gtk_clist_column_title_active): 
6540         only connect/disconnect to GtkWidgetClass::event to block mouse events.
6541
6542         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
6543         zero initialize event, removed superfluous gdk_window_get_pointer call
6544
6545         * gtk/gtklist.c (gtk_list_vertical_timeout)
6546         (gtk_list_horizontal_timeout): removed superfluous
6547         gdk_window_get_pointer call
6548
6549 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
6550
6551         * plugging problems reported by "Bruce Mitchener, Jr."
6552         <bruce@puremagic.com> due to a purify session.
6553
6554         * gtk/gtkstyle.c:
6555         (gtk_style_ref): 
6556         (gtk_style_unref): assert ref_count to be > 0.
6557
6558         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
6559         the requisition.
6560         (gtk_clist_set_shift): likewise.
6561
6562         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
6563         adjustments.
6564
6565         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
6566         event before sending it and set send_event to TRUE (which needs to
6567         be done for *all* synthesized events).
6568         (gtk_list_vertical_timeout): likewise.
6569
6570         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
6571         leaks.
6572
6573         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
6574         to TRUE when synthesizing events.
6575
6576 [ *** end of merges from 1.2 *** ]      
6577         
6578 1999-11-21  Tor Lillqvist  <tml@iki.fi>
6579
6580         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
6581         (or copied from gdkconfig.h.win32 on Win32, sigh).
6582
6583         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
6584
6585         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
6586
6587         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
6588
6589         * gdk/gdkconfig.h.win32: New file.
6590
6591         * gdk/win32/makefile.cygwin: Build just a static archive here.
6592
6593         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
6594         for the DLL from the static archive built above.
6595
6596         * gdk/gdk.def: Moved here from the win32 subdirectory.
6597
6598         * gdk/win32/*: Adapt for the changed private struct organisation.
6599
6600         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
6601
6602 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
6603
6604         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
6605         for wheel mice (buttons 4 and 5).
6606
6607 1999-11-18  Tor Lillqvist  <tml@iki.fi>
6608
6609         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
6610         drawables use just the pixel field in the foreground and
6611         background GdkColor of the GdkGC.
6612
6613         gdk_gc_set_{fore,back}ground() are called in the GIMP with
6614         GdkColors containing uninitialized (red,green,blue) fields, and
6615         just the pixel field filled in, and furthermore in the
6616         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
6617         It thus turns out that we really don't need to have the full
6618         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
6619         it later to have just the pixel values.
6620
6621 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
6622
6623         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
6624
6625 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
6626
6627         * docs/gtkfaq.sgml: threads example from Erik Mouw.
6628         New question on GtkLabel background colors.
6629
6630         * docs/gtk_tut.sgml:
6631           - Correct the example code callback
6632             function definitions.
6633           - Update the gtkdial example code, from Frans van Schaik.
6634           - Update setselection.c to current API.
6635
6636         * examples/Makefile examples/*/*.c: Update to code
6637         listed in tutorial.
6638
6639 1999-11-10  Tor Lillqvist  <tml@iki.fi>
6640
6641         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
6642         subrange table (from the "Developing International Software for
6643         WIndows 95 and Windows NT" book) was missing the Hangul syllable
6644         block... Get the loaded font's charset correctly.
6645
6646         (Note that this, and the other *-win32.c files, still really are
6647         the old ones, the win32 subdirectory is not ready for compilation
6648         yet after the reorg.)
6649
6650 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
6651
6652         * gtk/gtkclist.c: Fix off-by-one bug in parameter
6653         check.
6654
6655 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
6656
6657         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
6658         on results of XQueryDeviceState().
6659
6660 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
6661
6662         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
6663         we need to accesss only ->children. We need an accessor
6664         for the children.
6665
6666         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
6667         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
6668         to get rid of gdkx.h include.
6669         
6670         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
6671         and random references to 'None'.
6672
6673         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
6674         Get rid of unused #include <gdk/gdkx.h>
6675
6676         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
6677         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
6678         gdkconfig.h.
6679
6680 1999-11-08  Tor Lillqvist  <tml@iki.fi>
6681
6682         * gdk/win32/gdkdraw.c
6683         * gdk/win32/gdkfont.c
6684         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
6685         following yesterday's changes. (Unrelated to Owen's reorg.)
6686
6687 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
6688
6689         * gdk/x11/gdkinput-gxi.c: Add missing include,
6690           fix GdkWindowPrivate => GdkDrawablePrivate.
6691
6692         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
6693
6694         * gdk/x11/Makefile.am (xinput_sources): Add missing
6695         backslash to fix building with --with-xinput=none
6696
6697 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
6698
6699         Move all X specific code into the x11/ directory.
6700         Aside from shuffling things around, did the following:
6701
6702        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
6703          gdk_arg_context_* - a simple argument parsing system
6704          in the style of popt.
6705
6706        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
6707          gdk/x11/gdkprivate-x11.h:
6708          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
6709          add ->klass and ->klass_data fields. The klass_data
6710          field points to an auxilliary structure that is
6711          windowing system dependent.
6712
6713        * gdk/gdkfont.c: Make most of the measurement functions
6714          simply wrappers around gdk_text_extents().
6715
6716        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
6717          _gdk_font_strlen() function that hides the weird
6718          behavior in gtk+-1.[02] where a string is interpreted
6719          differently for 8-bit and 16-bit fonts.
6720
6721        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
6722          to store common code for synthesizing double/triple
6723          press events.
6724         
6725        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
6726          Make all the function that modify an existing GC
6727          simply wrappers around gdk_gc_set_values().
6728          
6729        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
6730          for throwing out later.
6731
6732        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
6733          GdkImagePrivate and GdkColormapPrivate to have a
6734          windowing system dependent part (GdkFontPrivateX etc.)
6735          that "derives" from the system-independent part.
6736
6737        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
6738          Got rid of the included-source-files for XInput in
6739          favor of automake conditionals. (Which didn't exist
6740          when XInput support was originally added.)
6741
6742        * gdk/gdkrgb.c: Remove the visual id from the debugging
6743          statements since that is X11 specific; print out
6744          type/depth info instead.
6745          
6746
6747 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
6748
6749         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
6750         loading duplicates of hashed fonts.
6751
6752         * gdk/gdk.c (gdk_keysym_convert_case): rename
6753         gdk_XConvertCase to gdk_keysym_convert_case, allow
6754         results to be NULL in the GTK+ style.
6755
6756         * gdk/gdkcompat.h: Started compatibility header
6757         for renames.
6758
6759 1999-11-07  Tor Lillqvist  <tml@iki.fi>
6760
6761         * gdk/win32/gdkprivate.h: New font private structures, related to
6762         fontsets.
6763
6764         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
6765         gdk_font_list_free(). On X11, will just be wrappers to
6766         XListFonts() and XFreeFontNames(). On Win32, the code previously
6767         in gtkfontsel.c is now here.
6768
6769         New function gdk_font_xlfd_create(). On X11 will get the FONT
6770         property of the font (for GDK_FONT_FONTs), or call
6771         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
6772         builds a XLFD style name from the font information in the LOGFONT
6773         struct(s).
6774
6775         New function gdk_font_xlfd_free(), which correspondingly frees the
6776         string returned by gdk_font_xlfd_create().
6777
6778         Implement fontsets on Win32. Add a function that iterates over a
6779         wide char string and calls a callback function for each substring
6780         of wide chars from the same Unicode subrange (and thus probably
6781         available in the same real font).
6782
6783         Improve the XLFD emulation a bit.
6784
6785         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
6786
6787         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
6788         Beta3, WM_IME_CHAR messages don't seem to contain the composed
6789         multi-byte char as with the Active IMM on Win9x. Oh well, handle
6790         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
6791         ImmGetCompositionStringW() to get the composed Unicode chars.
6792
6793         * gdk/win32/gdkgc.c
6794         * gdk/win32/gdkdraw.c: Changes needed because of the font private
6795         struct changes.
6796
6797         * gdk/win32/gdk.def: Add the new functions.
6798
6799 1999-11-04  Tor Lillqvist  <tml@iki.fi>
6800
6801         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
6802         get the Platform SDK to get <dimm.h>.
6803
6804         * gdk/win32/gdkevents.c: More event handling fixes and
6805         simplification. Never generate motion events with is_hint true. We
6806         used to do that on bogus grounds earlier. Windows sends
6807         WM_MOUSEMOVE messages on button events even if the mouse hasn't
6808         moved, ignore these.
6809
6810         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
6811
6812         * gdk/win32/gdkglobals.c
6813         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
6814         the TrackMouseEvent function, and use it.
6815
6816         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
6817         char before calling WideCharToMultiByte in order to get a string
6818         for the window title.
6819
6820         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
6821
6822         * gdk/win32/gdk.def: Remove obsolete functions.
6823
6824         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
6825         /nodefaultlib and /defaultlib switches.
6826
6827         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
6828
6829 1999-10-31  Tor Lillqvist  <tml@iki.fi>
6830
6831         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
6832         EuroSign).
6833
6834         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
6835         same type as GdkWChar, especially on Win32.
6836
6837         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
6838
6839         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
6840         before passing to Windows GDI for drawing etc. Convert to the
6841         system default codepage before passing to Windows as window
6842         titles.
6843
6844         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
6845         support changing input locale on the fly.
6846
6847         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
6848         on-the-fly changes. Convert incoming characters from the current
6849         codepage to Unicode (and then to a UTF-8 multi-byte string) based
6850         on the current input language. Use keysym<->Unicode mapping tables
6851         and functions borrowed from xterm sources.
6852
6853         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
6854         editions of Win9x, use the ActiveX-based Active IMM (Input Method
6855         Manager) if available. IMEs and the Active IMM are available under
6856         the disguise of Chinese, Korean and Japanese support for IE and
6857         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
6858         support is present in all editions (as long as you install it).
6859
6860         Call DispatchMessage from gdk_events_queue() (and thus
6861         gdk_WindowProc()), instead of duplicating the code in
6862         gdk_WindowProc().
6863
6864         Reworked the grab handling and propagation code, factored out
6865         duplicated code snippets into separate functions. Other cleanups,
6866         too.
6867
6868         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
6869         the <dimm.h> header describing the Active IMM.
6870
6871         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
6872         just do the same as for "single" fonts.
6873
6874         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
6875         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
6876         the new keysyms from gdkkeysyms.h.
6877
6878         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
6879         fontset, so that gtkentry uses wide characters.
6880
6881         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
6882         GTk+'s system directory "gtk+", not "gtk".
6883
6884 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
6885
6886         * docs/gtkfaq.sgml: FAQ update
6887
6888 1999-10-21  Tor Lillqvist  <tml@iki.fi>
6889
6890         * gdk/win32/gdkprivate.h: Add more font private data.
6891
6892         * gdk/win32/gdkfont.c
6893         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
6894         fonts and strings. Now works much better. You still have to
6895         have a correct font selected, though. No fontset emulation yet.
6896
6897 1999-10-19  Tor Lillqvist  <tml@iki.fi>
6898
6899         * gtk/maketypes.awk: Use G_OS_WIN32.
6900
6901         * gtk/gtk.def: Add some missing entry points. Also some non-public
6902         ones, but PyGTK porter claims to need them.
6903
6904         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
6905         built-in type generation.
6906
6907 1999-10-14  Tor Lillqvist  <tml@iki.fi>
6908
6909         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
6910         GDK_FONT_FONT fonts (which is all we have for now, we don't
6911         emulate fontsets). The X11 version uses plain XDrawString in that
6912         case, too. The string passed to gdk_draw_text_wc seems to be in
6913         fact (at least, when used by gtkentry and gtktext) either in a
6914         single-byte charset, or a DBCS. Not Unicode.
6915
6916         This fixes the problem in gtkfontsel, where even if you had
6917         selected a font with a non-Latin1 charset (windows-greek, for
6918         instance), the preview still used Latin-1 glyphs.
6919
6920         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
6921         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
6922         (gdk_font_load): Recognize the demibold etc weights, even if we
6923         don't have the corresponding constants in the headers.
6924         (gdk_font_hash_insert): Use same hash mechanism as in the X11
6925         version. Should save font resources a bit, when we don't have
6926         multiple HFONTs for the same font.
6927
6928         * gdk/win32/gdkprivate.h: Add the names field as in the X11
6929         version.
6930
6931 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
6932
6933         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
6934         X values
6935
6936 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
6937
6938         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
6939         layout support (as mentioned on
6940         http://www.jcinteractive.com/gnome-ui/software/widgets/)
6941
6942 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
6943
6944         * gtk/fnmatch.c
6945         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
6946
6947 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
6948
6949         * configure.in (ALL_LINGUAS): Added Galician (gl)
6950
6951 1999-10-05  Tor Lillqvist  <tml@iki.fi>
6952
6953         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
6954
6955         * gdk/win32/gdkcompat.c: New file, actually provide an
6956         implementation for the deprecated functions. (Just temporarily.)
6957
6958         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
6959
6960         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
6961
6962         * gdk/win32/gdk.def gtk/gtk.def: Updates.
6963
6964 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
6965
6966         * configure.in: Added "uk" to ALL_LINGUAS.
6967         
6968 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
6969
6970         * configure.in: correct checking for BeOS check
6971
6972         * gdk/gdktypes.h
6973         * gtk/fnmatch.c
6974         * gtk/gtkfilesel.c
6975         * gtk/gtkitemfactory.c
6976         * gtk/gtkmain.[ch]
6977         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
6978
6979 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
6980
6981         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
6982         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
6983         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
6984         by Bulgarian). 
6985
6986 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
6987
6988         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
6989         Fix a reference to window_private->destroyed.   
6990
6991         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
6992         (ugly) setting of an internal GdkWindow member to use
6993         a _slightly_ cleaner macro.
6994
6995         * gdk/gdkprivate.h: Split GdkWindowPrivate into
6996         GdkDrawablePrivate and GdkWindowPrivate.
6997         Add extra macros for accessing GDK_DRAWABLE_ components.
6998
6999         * *.[ch]: Massive adjustments for the above, use the
7000         new macros in a lot of places.
7001
7002 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
7003
7004         * gdk/gdktypes.h: Make GdkDrawable the base type,
7005         not GdkWindow.
7006
7007 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
7008
7009         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
7010
7011 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
7012
7013         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
7014
7015 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
7016
7017         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
7018         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
7019
7020         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
7021
7022         * docs/gtk-config.1: Now autogenerated.
7023         * docs/Changes-1.4.txt: started
7024         
7025 1999-10-03  Tor Lillqvist  <tml@iki.fi>
7026
7027         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
7028         to #ifdef also here.
7029
7030         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
7031         Owen did to the X11 backend.
7032
7033         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
7034         ScrollWindowEx when blitting inside a window, it can't be correct
7035         in the general case.
7036
7037         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
7038         WM_GETMINMAXINFO is easier.
7039
7040         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
7041         depth equal to the bitspixel value, not the visual's depth.
7042
7043         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
7044         to 24 even if the bitspixel value is 32.
7045
7046         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
7047         need to check for depth==32 when bpp==32, depth will always be 24.
7048
7049 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
7050
7051         * docs/Changes-1.4.txt: Started
7052         
7053         * gtk/Makefile.am (gdk_headers): Include all the new headers.
7054
7055         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
7056         
7057         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
7058         into C file.
7059         
7060         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
7061         header to gdkinputprivate.h.
7062
7063         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
7064         unused since before 1.2.
7065
7066 1999-09-30  Tor Lillqvist  <tml@iki.fi>
7067
7068         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
7069         expand possible hex escapes in the font family (put there by
7070         logfont_to_xlfd if the font name isn't a legal XLFD font family,
7071         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
7072         On Win32, add hex escapes here, too.
7073
7074 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
7075
7076         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
7077         to #ifdef GDK_WINDOWING_X11.
7078
7079 [ Merges from gtk-1-2 ]
7080
7081 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
7082
7083         * configure.in: fixed "GNU Make" check to pass with new make version
7084         3.77.95.
7085
7086 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
7087
7088         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
7089         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
7090         AM_PATH_GTK() macros don't get confused by the -pre1.
7091
7092 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
7093
7094         * configure.in (REBUILD): Change check for perl5
7095           to check explicitely for v >= 5.002. (5.001
7096           does not work with our scripts.)
7097
7098 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
7099
7100         * configure.in: evaluate $PERL for the perl version check. added
7101         --disable-rebuilds to give the user an option to completely disable
7102         any source autogeneration rules.
7103
7104 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
7105
7106         * configure.in: evaluate $ac_make when checking for GNU Make.
7107
7108 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
7109
7110         * docs/Makefile.am: added generation.txt.
7111
7112         * Makefile.am: require automake 1.4, build README from README.in and
7113         INSTALL from INSTALL.in in dist-hook.
7114         
7115         * README.in:
7116         * INSTALL.in: new files to autogenerate README and INSTALL from.
7117
7118         * configure.in: figure whether we have GNU Make
7119
7120         * docs/generation.txt: minor additions/corrections.
7121
7122 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
7123
7124         * docs/gtkfaq.sgml: FAQ Update
7125
7126 July 30, 1999 Elliot Lee <sopwith@redhat.com>
7127         
7128         * configure.in: Fix autoconf warnings about cross compilation by
7129         trying to provide sane defaults for AC_TRY_RUN.
7130
7131 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
7132
7133         * ltconfig
7134         * ltmain.sh: upgrade to libtool 1.3.3
7135
7136 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
7137
7138         * INSTALL: Indicate that the --with-glib= configure
7139         time flag is unsupported.
7140
7141 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
7142
7143         * docs/generation.txt: Added a file that gives
7144         documenation about the autogeneration process for
7145         various autogenerated files.
7146         
7147 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
7148
7149         * configure.in (LIBS): Look for libgmodule in the
7150         right location.
7151
7152 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
7153
7154         * docs/gtk_tut.sgml: Removed references to
7155         code examples in my directory on gtk.org as
7156         they should all be in the tutorial now.
7157
7158         * docs/gtk_tut.sgml: Added sources for dial-test
7159         and scribble-xinput programs that were previously
7160         missing.
7161
7162 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
7163
7164         * TODO: Added entry about menu keyboard navigation, removed
7165         some finished items.
7166
7167 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
7168
7169         * acinclude.m4: Standardize on func_dgettext
7170         not func_gettext, so that the checks for dgettext
7171         actually are paid attention to.
7172
7173 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
7174
7175         * configure.in (LIBS): Add $INTLLIBS into $LIBS
7176         directly, rather than repeating the checks for
7177         gettext.
7178
7179         * INSTALL: Added information about gettext and
7180         NLS support.
7181
7182         * acinclude.m4 (LIBM): Check for dgettext, not
7183         just gettext. This should hopefully fix things wrt
7184         systems with old versions of GNU gettext installed.
7185
7186 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
7187
7188         * configure.in (LIBS): Look for libgmodule in the
7189         right location.
7190
7191 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
7192
7193         * autogen.sh: add --enable-maintainer-mode
7194
7195         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
7196
7197 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
7198
7199         * docs/gtk-config.1.in:
7200           docs/Makefile.am:
7201           configure.in: gtk-config is now generated.
7202
7203         * docs/gtk-config.1: Removed, now generated.
7204
7205 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
7206
7207         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
7208         handle CreateNotify itself, still put out a debuging message for
7209         --gdk-debug=events. made the ReparentNotify debugging message more
7210         verbose.
7211         wrap xcoords translation for ConfigureEvents into an error trap,
7212         a destroy event may already be pending, and in that case, the
7213         actuall coordinate values are not at all critical.
7214
7215 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
7216
7217         * gdk/gdkcc.c: Stop leaking the color_hash all over
7218         the place. Simplify and improve the logic.
7219
7220 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
7221
7222         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
7223         for prototypes and function implementations consistent (reported
7224         by Tomas Ogren).
7225
7226 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
7227
7228         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
7229         send_event set in debugging output.
7230         (gdk_compress_exposures): default initialize the event so we don't
7231         operate on bogus values (namely send_event).
7232
7233 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
7234
7235         * gdk/gdkwindow.c: When we receive an unexpected
7236         destroy notify on one of our windows, don't just
7237         warn about it, also mark our windows as destroyed.
7238
7239 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
7240
7241         * gdk/gdkfont.c (gdk_font_hash_insert): Add
7242           name => font and name => fontset hashes. The 
7243           name => fontset hash is a _big_ win since we
7244           weren't previously caching fontsets at all and loading
7245           fontsets is expensive. The name => font hash
7246           is less of a win, but it does save us from doing
7247           repeated XQueryFont calls on the same font.
7248
7249         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
7250           list so we can remove font/fontset from hash.
7251
7252 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
7253
7254         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
7255           and slightly confusing test. [ XInternAtom (,,TRUE)
7256           will never return None ].
7257
7258 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
7259
7260         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
7261           gdk/gdkwindow.c (gdk_window_set_hints):
7262
7263         Don't omit setting the properties if flags == 0 -
7264         there may be an existing set of properties there
7265         already. (Very old bug. Would it be better to
7266         delete the property instead?)
7267
7268         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
7269           spelling error in comment.
7270
7271 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
7272
7273         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
7274           to avoid stomping over gdk_error_warnings.
7275
7276         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
7277           as (bits_per_pixel + 7) / 8. This gives the same
7278           result as before for multiples of 8, but actually
7279           a "reasonable" value for 1bit or 4bit displays.
7280
7281 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
7282
7283         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
7284         GNU Make.
7285
7286 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
7287
7288         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
7289         discarding configure events.
7290
7291 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
7292
7293         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
7294         refcount is greater than zero.
7295
7296         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
7297
7298         * gdk/gdkfont.c (gdk_font_unref): Likewise.
7299
7300         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
7301
7302         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
7303
7304 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
7305
7306         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
7307         that format 32 => sizeof(item) == 4. It really is
7308         sizeof(long).
7309
7310 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
7311
7312         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
7313         core dump at all on X IO errors, only core dump
7314         if --enable-debug for X errors.
7315
7316 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
7317
7318         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
7319         unknown window:" message. disabled ConfigureNotify discarding code,
7320         because it led to events being processed out of order.
7321
7322 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
7323
7324         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
7325
7326         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
7327         we export this function, supress error warnings and don't reset the
7328         error code in the first half of this function.
7329
7330         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
7331         code (instead of just -1) so gdk_error_trap_pop() reveals something
7332         actually informative about the error that happened.
7333
7334         * gdk/*.c:
7335         don't rely on gdk_error_code being -1 if an error occoured, but just
7336         gdk_error_code != 0.
7337
7338 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
7339
7340         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
7341         pointer *before* invoking the filter function, so we at least don't
7342         crash if a filter is removed that is currently executed. window filters
7343         *really* need to be made truely reentrant at some point.
7344
7345 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
7346
7347         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
7348         PropertyNotify debug messages.
7349
7350 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
7351         
7352         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
7353         
7354         * gdk/gdkim.c: Fix cut-and-paste errors for 
7355         x/y and PreeditAttributes/StatusAttributes.
7356
7357 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
7358
7359         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
7360         G_MAXINT to 2^16 to alleviate overflow problems in
7361         various window managers.
7362
7363 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
7364
7365         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
7366         for fontsets.
7367
7368 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
7369
7370         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
7371         Initialize size_hints.x and size_hints.y because kwm
7372         brokenly pays attention to them.
7373         (Bug #1181 -  Lars Heete <hel@admin.de>)
7374
7375 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
7376
7377         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
7378         return value of gdk_list_visuals(). 
7379         (Bug #1193 - Morten Welinder <terra@diku.dk>)
7380
7381 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
7382
7383         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
7384         XSetIMValues to (void *) when comparing to NULL, to workaround
7385         the problem of some compilers barfing since older X headers don't
7386         have the prototype for it.
7387
7388 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
7389
7390         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
7391         for pseudocolor where colormap->colors was double
7392         allocated.
7393
7394         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
7395         color value in the hash table with the pixel filled
7396         in so when we do later hash table lookups, the color
7397         value is correct.
7398         
7399 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
7400
7401         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
7402         making the call
7403
7404 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
7405
7406         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
7407         pointed out by Morten Welinder <terra@diku.dk>.
7408
7409 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
7410
7411         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
7412           default filter from the list
7413
7414 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
7415
7416         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
7417           default filter from the list
7418
7419 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
7420
7421         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
7422
7423         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
7424         g_strdup_printf instead of calcing the length separately
7425
7426 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
7427
7428         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
7429         that we don't do in many other places. (Fixing duplicate 
7430         #include of config.h)
7431
7432         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
7433         Otherwise, #ifndef XINPUT_NONE check in the latter
7434         doesn't work. (Bug #546)
7435
7436 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
7437
7438         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
7439         "None" case insensitive.
7440
7441 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
7442
7443         * gdk/gdkselection.c: 
7444         Add error traps so if the other end of the connection
7445         dies, we survive.
7446
7447 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
7448
7449         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
7450         dest_xid field into two fields - one for the window
7451         to send in messages, one to indicate the last looked
7452         up window for caching purposes. This is needed, so
7453         that Leave messages get the correct window.
7454
7455 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
7456
7457         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
7458         Fix warning created by people mucking around
7459         with the gsource API.
7460
7461         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
7462         Change mapping between GIOCondition and GdkInputCondition
7463         to match the way the Linux kernel does it. This should
7464         fix problems where closed pipes were no longer signalling
7465         GDK_INPUT_READ on systems with a native poll().
7466
7467 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
7468
7469         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
7470         explicitly for the string "None" - it is in the XPM
7471         spec and some servers treat unknown colors in odd ways
7472         (like asking the user!)
7473
7474 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
7475
7476         * gdk/gdkevents.c: made "->" into a "." of previous change so
7477         it compiles
7478
7479 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
7480
7481         * gdk/gdkevents.c (gdk_compress_exposures): Set the
7482         window field of the event structure before calling
7483         user filters.
7484
7485 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
7486
7487         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
7488         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
7489
7490 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
7491
7492         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
7493         intermediate text property - prevents major memory
7494         leak when gdk_use_mb.
7495         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
7496
7497 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
7498
7499         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
7500         gtk-a-higuti-990322-[0-3]
7501
7502         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
7503         sizeof(wchar_t) != sizeof (GdkWChar)
7504
7505         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
7506         that was causing -DX_LOCALE not to work.
7507
7508         * gtk/gtkrc.c (gtk_rc_init):
7509         X_LOCALE will never have LC_MESSAGES defined
7510
7511         * gdk/gdk.c (gdk_init_check):
7512         Remove --xim-preedit and --xim-status from argv properly.
7513
7514         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
7515         that the client window is present on the X server
7516         before we pass it to the input method.
7517
7518 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
7519
7520         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
7521         if --display is specified on the command line, than
7522         the drag window will not be created on that display.
7523         
7524 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
7525
7526         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
7527         lookups with only_if_exists == TRUE were inserting
7528         bogus values into the atom cache.
7529
7530 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
7531
7532         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
7533         then reset it to NULL.
7534
7535         * gdk/gdkcolor.c:
7536         (gdk_colors_free): 
7537         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
7538         key for g_hash_table_remove() in both functions, this prevents us
7539         from accessing possibly uninitialized portions of a GdkColor structure
7540         where we are only interested in its pixel value.
7541
7542 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
7543
7544         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
7545         font hash table, if we have a GdkFontPrivate entry for this font
7546         already, simply increment its reference count, provided by Olaf Dietsche
7547         <olaf.dietsche+list.gtk@netcologne.de>.
7548
7549 1999-09-21  Tor Lillqvist  <tml@iki.fi>
7550
7551         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
7552         just to be sure.
7553
7554         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
7555         unused variables, leftovers from the X11 version.
7556
7557         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
7558
7559         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
7560         downcase fields on X11.
7561
7562 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
7563         
7564         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
7565         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
7566
7567 1999-09-17  Tor Lillqvist  <tml@iki.fi>
7568
7569         * gdk/win32/gdk.def: Add gdk_threads_mutex.
7570
7571         * gtk/makefile.msc: Correct path to libintl.
7572
7573         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
7574         use of gint vs. int, and gint vs. gboolean in headers and
7575         definitions. Use GtkType for the *_get_type functions. Note that
7576         these changes preserve binary compatibility.
7577
7578         * gdk/gdk.c
7579         * gdk/win32/gdk.c
7580         * gdk/gdk.h: Fix inconsistencies: gint vs int.
7581
7582         * gtk/gtkmain.c
7583         * gtk/gtkclist.c
7584         * gtk/gtkmenufactory.c
7585         * gtk/gtknotebook.c
7586         * gtk/gtkwidget.c: Fix inconsistencies, also gint
7587         vs. gboolean.
7588
7589         * gtk/gtkcolorsel.[ch]
7590         * gtk/gtkcombo.[ch]
7591         * gtk/gtkdrawingarea.[ch]
7592         * gtk/gtkgamma.[ch]
7593         * gtk/gtkhandlebox.[ch]
7594         * gtk/gtkhpaned.[ch]
7595         * gtk/gtkhruler.[ch]
7596         * gtk/gtkplug.[ch]
7597         * gtk/gtkpreview.[ch]
7598         * gtk/gtkruler.[ch]
7599         * gtk/gtksocket.[ch]
7600         * gtk/gtkstatusbar.[ch]
7601         * gtk/gtktoolbar.[ch]
7602         * gtk/gtkvbbox.[ch]
7603         * gtk/gtkvpaned.[ch]
7604         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
7605         functions.
7606
7607         * gtk/gtkgamma.h: Fix bug, missing () in call of
7608         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
7609
7610 1999-09-14  Tor Lillqvist  <tml@iki.fi>
7611
7612         * gdk/gdkcolor.c (gdk_colormap_new)
7613         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
7614         colormap->colors was allocated twice.
7615
7616         * gdk/win32/gdk.c: Remove some unused stuff.
7617
7618         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
7619         colormap.
7620
7621         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
7622         * gtk/gtklabel.h (gtk_label_get_type)
7623         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
7624         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
7625         in a couple of places, not guint.
7626
7627 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
7628
7629         * configure.in,po/et.po: added Estonian language file
7630
7631 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
7632
7633         * configure.in,po/da.po: added Danish file
7634
7635 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
7636
7637         * docs/gtkfaq.sgml: Minor FAQ Update
7638
7639 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
7640
7641         * docs/gtkfaq.sgml: FAQ update
7642
7643 1999-08-27  Tor Lillqvist  <tml@iki.fi>
7644
7645         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
7646         way to get window contents continually refreshed while resizing. I
7647         didn't like the effects myself, so it's not on by default.
7648
7649         * gdk/win32/gdkprivate.h: New flag variable
7650         gdk_event_func_from_window_proc, FALSE by default.
7651
7652         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
7653         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
7654         are passed --gdk-event-func-from-window-proc.
7655
7656         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
7657         and we have am event_func, call it instead of enqueing the event.
7658
7659 1999-08-23  Tor Lillqvist  <tml@iki.fi>
7660
7661         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
7662         Kelley: Set expose_count in GdkEventExposes correctly.
7663
7664         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
7665         MULTIPLE_WINDOW_CLASSES).
7666
7667         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
7668         for bug in NT, apparently NT *does* draw the end pixel, too, in
7669         LineTo with a one-pixel pen, so we don't have to do it ourselves.
7670
7671 1999-08-21  Tor Lillqvist  <tml@iki.fi>
7672
7673         Improvements by Hans Breuer: 
7674
7675         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
7676
7677         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
7678         CS_?REDRAW flags as they cause lots of (late) redraws when "show
7679         window contents while dragging" is turned on. Allocate at least
7680         one unique class for every GdkWindowType. If support for single
7681         window-specific icons is ever needed (eg. Dialog specific), every
7682         such window should get its own class.
7683
7684 1999-08-19  Tor Lillqvist  <tml@iki.fi>
7685
7686         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
7687         error that caused crashes.
7688
7689 1999-08-17  Tor Lillqvist  <tml@iki.fi>
7690
7691         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
7692         window, use ScrollWindowEx, and call UpdateWindow. This prevents
7693         bugs when for instance part of the window was outside the
7694         display. Thanks to Philippe Colantoni for finding and fixing this.
7695
7696 1999-08-16  Tor Lillqvist  <tml@iki.fi>
7697
7698         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
7699         endpoint calculations which were totally wrong. (A little RTFMing
7700         helps a lot ;-)
7701
7702         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
7703         from a separate directory, not from gettext, because of licensing
7704         issues (we want to use the LGPL version).
7705
7706         * README.win32: Mention the intl from glibc vs from gettext issue.
7707
7708 1999-08-13  Tor Lillqvist  <tml@iki.fi>
7709
7710         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
7711         in the key event handling: Now AltGr chars work again. Also,
7712         now Alt-digits are passed up as well as Control-digits.
7713         Pass keypad plus and minus as normal plus and minus.
7714
7715 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
7716
7717         * docs/gtkfaq.sgml: FAQ Update
7718
7719 1999-07-25  Tor Lillqvist  <tml@iki.fi>
7720
7721         * README.win32
7722         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
7723         the Wintab SDK.
7724
7725         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
7726         OK, but getting closer. Guard against bogus tilt data from Wacom
7727         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
7728         enable easier building without Wintab.
7729
7730         * gdk/win32/gdkinput.h
7731         * gdk/win32/gdkevents.c 
7732         * gdk/win32/gdkwindow.c: Minor changes related related to above.
7733         
7734         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
7735         code. As we have just one visual on Win32, no sense to have it in a
7736         table, and no need for the hash table.
7737
7738         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
7739         better on white background.
7740
7741 1999-07-21  Tor Lillqvist  <tml@iki.fi>
7742
7743         * README.win32: Update gcc build instructions. Mention gettext is
7744         GPL.
7745
7746         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
7747         supported cursor size with GetSystemMetrics.
7748
7749         * gdk/win32/gdkfont.c
7750         * gtk/gtkfontsel.c: Guard against some font weight and charset
7751         symbols being undefined (in mingw32 headers).
7752
7753         * gdk/win32/makefile.cygwin
7754         * gtk/makefile.cygwin
7755         * gtk/gtkthemes.c: No longer need to have differently named
7756         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
7757
7758 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
7759
7760         * docs/gtkfaq.sgml: Long awaited FAQ update.
7761
7762 1999-07-15  Tor Lillqvist  <tml@iki.fi>
7763
7764         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
7765         it. Obscure bit manipulation needed.
7766
7767         * gdk/win32/gdkevents.c: Logging.
7768         
7769         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
7770         style (file name include compiler name) for theme engines.
7771
7772 1999-07-13  Tor Lillqvist  <tml@iki.fi>
7773
7774         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
7775
7776         * gdk/win32/gdkevents.c: Fix long-standing bug in key
7777         events. The key.string wasn't zero-terminated, still we strdup'ed
7778         it in gdk_event_copy(). Synthesize crossing events for button
7779         events before possible propagation.
7780
7781         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
7782
7783         * gdk/win32/makefile.cygwin
7784         * gtk/makefile.cygwin: Use new DLL naming style for the
7785         GCC-compiled ones.
7786
7787         * gdk/win32/makefile.msc
7788         * gtk/makefile.msc: Cosmetics mostly.
7789
7790         * gtk/gtk.def: Add missing entry points.
7791
7792         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
7793
7794 1999-07-09  Tor Lillqvist  <tml@iki.fi>
7795
7796         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
7797         or height is zero. Don't print a warning if Pie or Arc fails, they
7798         always fail (?) for very narrow ellipses.
7799
7800         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
7801         the part or the destination window corresponding to source area
7802         outside of the source drawable's boundary.
7803
7804         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
7805         anything if less than two points.
7806
7807         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
7808         return NULL. Gtk cut-and-paste inside a single program works
7809         better this way. (It always gets the clipboard contents from
7810         Windows, not from its own copy, which is cleared anyway. I can't
7811         say I fully understand what happens... Emulating the X selection
7812         and property stuff is a bit of a mess.)
7813
7814         * gdk/win32/gdkevents.c
7815         * gdk/win32/gdkproperty.c: A bit more verbose logging.
7816
7817         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
7818         that never got deleted). Revamp gdk_region_shrink.
7819
7820         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
7821         after use.
7822
7823         * gtk/gtk.def: Add some missing entry points.
7824
7825         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
7826         component.
7827
7828 1999-07-04  Tor Lillqvist  <tml@iki.fi>
7829
7830         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
7831         Control-digits specially.
7832
7833 1999-07-03  Tor Lillqvist  <tml@iki.fi>
7834
7835         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
7836
7837 1999-06-28  Tor Lillqvist  <tml@iki.fi>
7838
7839         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
7840         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
7841         finding this.)
7842
7843 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
7844
7845         * gtk+.spec.in: Corrected some typos in files section.
7846         
7847 1999-06-15  Tor Lillqvist  <tml@iki.fi>
7848
7849         * README.win32: Mention using GNU gettext.
7850         * config.h.win32: Enable NLS stuff.
7851         * gtk/makefile.msc: Use GNU gettext.
7852         * gdk/win32/gdkdnd.c: Minor header reorg.
7853         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
7854         cosmetics.
7855         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
7856         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
7857
7858 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
7859
7860         * acinclude.m4
7861         * config.guess
7862         * config.status
7863         * ltconfig
7864         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
7865
7866 1999-05-30  Tor Lillqvist  <tml@iki.fi>
7867
7868         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
7869         SafeAdjustWindowRectEx. Don't override all calls to
7870         AdjustWindowRectEx by it, but use it only in two places: When
7871         creating a new top-level window and when moving a top-level
7872         window.
7873
7874         Use screen coordinate rectangle, not client rectangle, in
7875         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
7876         when we try to place a window so that the decoration (mainly,
7877         title bar) isn't visible.
7878
7879         These changes fix the bug that showed up for instance as the
7880         GIMP's saved top-level windows moving right and down (by an amount
7881         equal to the window decoration) for each session. This bug showed
7882         up also in testgtk's "Saved Position".
7883
7884         gdk_window_resize also redone a bit.
7885
7886 1999-05-25  Tor Lillqvist  <tml@iki.fi>
7887
7888         * gtk/testgtkrc: Add (commented out) Windows-style theme
7889         include line.
7890
7891         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
7892
7893 1999-05-18  Tor Lillqvist  <tml@iki.fi>
7894
7895         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
7896         gdkx.h to a gdk subdirectory, so that applications can include
7897         these with <gdk/*.h> without trouble.
7898
7899         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
7900         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
7901         have their bitmap destroyed.
7902
7903         * gdk/win32/gdk.def: Add gdk_root_parent.
7904
7905 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
7906
7907         * configure.in
7908           gtk-config.in
7909           ltconfig
7910           ltmain.sh     
7911           gtk/Makefile.am: changes to compile nicely (with xlib) 
7912           on BeOS
7913
7914 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
7915
7916         * acinclude.m4
7917         * config.guess
7918         * config.sub
7919         * ltconfig
7920         * ltmain.sh: upgrade to libtool 1.3
7921
7922 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
7923
7924         * gtk/gtkclist.c:
7925         * gtk/gtkctree.c: merges from gtk-1-2
7926
7927 1999-04-25  Tor Lillqvist  <tml@iki.fi>
7928
7929         Support added for building using a GNU toolchain on Win32,
7930         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
7931
7932         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
7933         * config.h.win32: Changes for gcc.
7934         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
7935         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
7936         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
7937         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
7938         Protect shl stuff unavaiilable with mingw32 headers.
7939         * gdk/win32/gdkevents.c: Fix typo.
7940         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
7941         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
7942         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
7943         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
7944         the mingw32 headers.
7945         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
7946         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
7947         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
7948         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
7949         Test for NATIVE_WIN32, not _MSC_VER.
7950         * gtk/gtkmain.c: No use warning about developer version on Win32,
7951         there aren't any non-developer versions anyhow.
7952         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
7953         * gtk/makefile.msc: Use pthread from another directory. Minor other
7954         changes. 
7955
7956 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
7957
7958         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
7959           default filter from the list
7960
7961 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
7962
7963         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
7964          when gtk_widget_grab_default() is called for a widget that
7965          is not within a GtkWindow.
7966
7967 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
7968
7969         * docs/gtk_tut.sgml, examples/clist.c: use a
7970           scrolled window in the clist example. Minor
7971           tutorial fixes.
7972
7973 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
7974
7975         * docs/gtk_tut.sgml: Style check from David King
7976           <dking@youvegotmail.net>
7977
7978 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
7979
7980         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
7981         compile with unknown value of GDK_WINDOWING
7982
7983 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
7984
7985         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
7986         after the rule is fired.
7987         (install-exec-local): Install gdkconfig.h only if the contents are
7988         different from the currently installed gdkconfig.h.
7989
7990 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
7991
7992         * gdk/Makefile.am (configexecincludedir): Rename from 
7993         configincludedir so that gdkconfig.h will be installed 
7994         as part of `make install-exec'. 
7995
7996 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
7997
7998         * acinclude.m4
7999         * config.guess
8000         * config.sub
8001         * ltconfig
8002         * ltmain.sh: upgrade to libtool 1.2f
8003
8004         * autogen.sh: libtool is not required to autogen gtk+
8005
8006         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
8007         needed)
8008
8009 1999-03-18  Tor Lillqvist  <tml@iki.fi>
8010
8011         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
8012         declaring gdk variables exported/imported from the DLL. New image
8013         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
8014         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
8015         GDK_DRAG_PROTO_OLE2.
8016
8017         * gdk/gdk.h: Merge in Win32 version: Two new functions,
8018         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
8019         declared only for the Win32 version, but could be in the X11
8020         version as well. (Needed for a Xlib-less gdk_imlib.)
8021         gdk_color_hash should have only one parameter. Declare
8022         gdk_threads_mutex with GDKVAR.
8023         
8024         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
8025         just one parameter.
8026
8027         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
8028         per pixel, not bits.
8029
8030         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
8031         Fetch bpp (which means bits-per-pixel here) from another place on
8032         Win32. Accept also depth==32 (which we might get on Win32) with
8033         bpp==32.
8034
8035         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
8036         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
8037         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
8038         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
8039         in the backend-dependent directory, not in the common gdk
8040         directory.
8041
8042         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
8043         headers.
8044
8045 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
8046
8047         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
8048         want to use the Gtk+ devel version (which is true, and yes - even i am
8049         currently working with the 1.2.x branch). so everyone reading this, you
8050         probably want to issue
8051         cvs checkout -r glib-1-2 glib
8052         and
8053         cvs checkout -r gtk-1-2 gtk+
8054         as your next two comands.
8055
8056 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
8057
8058         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
8059         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
8060
8061         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
8062         file. strongly deprecated the GTK_HAVE_* macros, we provide
8063         GTK_CHECK_VERSION() for people that need to check for certain
8064         Gtk+ versions.
8065
8066         * gtk/gtkcompat.h: removed this from CVS.
8067         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
8068         idea right from the start, it just didn't seem like that back then.
8069
8070 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
8071
8072         * merges from gtk-1-2:
8073
8074 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
8075
8076         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
8077         item factory class has been created.
8078         (gtk_item_factory_parse_rc): likewise.
8079
8080         * gtk/gtkmenu.c:
8081         keep proper references for old_active_menu_item.
8082         (gtk_menu_reparent): unset the usize of the new parent,
8083         so the menu can sanely be size requested and we don't get nasty screen
8084         artefacts upon next reparentation.
8085         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
8086         enter notify. only synthesize enter notifies if the pointer really is
8087         inside the event window.
8088         (gtk_menu_popdown): use gtk_menu_shell_deselect().
8089         (gtk_menu_popup): move the background setting stuff into
8090         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
8091
8092         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
8093         gtk_menu_shell_select_item() to select the new item.
8094         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
8095         do the right thing for deselection as well.
8096
8097 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
8098
8099         * gtk/gtkwidget.[hc]:
8100         (gtk_widget_accelerators_locked): return whether a widget's accelerators
8101         are locked.
8102
8103         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
8104         existing accelerators if the widget's accelerators are locked.
8105
8106 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
8107
8108         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
8109
8110         * gtk/gtkmenu.c: truely forward key press and key release events to
8111         the menu widget from the toplevel or tearoff window. we can't simply
8112         connect to that, we need to stop further processing of the events as
8113         well.
8114
8115 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
8116
8117         * gtk/gtkmenu.c:
8118         (gtk_menu_key_press): pass event->keyval, event->state to
8119         gtk_accelerator_valid, instead of event->keyval twice.
8120         refuse to install single letter accelerators for menus that use
8121         single letter shortcuts.
8122
8123         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
8124         gtk_menu_ensure_uline_accel_group().
8125
8126         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
8127         which will always return an uline accel group, made
8128         gtk_menu_get_uline_accel_group() return NULL if the group isn't
8129         yet created.
8130
8131 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
8132
8133         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
8134
8135         * gtk/gtkclist.c (gtk_clist_column_title_passive):
8136         Leave button sensitive, trap  button_press, button_release,
8137         motion_notify, enter_notify and leave_notify events instead.
8138         (gtk_clist_column_title_active): disconnect event handler.
8139         (gtk_clist_drag_data_get): fixed memory leak. Reported by
8140         Guillaume Laurent <glaurent@worldnet.fr>
8141
8142 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
8143
8144         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
8145         width/height mixups.
8146
8147         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
8148         if needed.
8149
8150 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
8151
8152         * gtk/testgtk.c (create_item_factory): unref the item factory after
8153         window's destruction.
8154
8155         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
8156         count on the menu shell around the menu item's activation, since the
8157         signal emission may cause menu shell destruction.
8158
8159         * gtk/gtkitemfactory.c:
8160         the previous code leaked one accel group per menu. we use
8161         gtk_menu_get_uline_accel_group() now to fix that, and with that
8162         also create the underline accelerator group of the menus only if
8163         required (i.e. an underline accelerator has been specified).
8164         (gtk_item_factory_construct):
8165         (gtk_item_factory_create_item): removed code that would create an
8166         extra accel group for the menu (and leak references).
8167         (gtk_item_factory_create_item): adapted the underline accelerator
8168         installation code to properly feature gtk_menu_get_uline_accel_group().
8169
8170         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
8171         menu->accel_group, this may return NULL if the accelerator group
8172         hasn't been set yet.
8173         added gtk_menu_get_uline_accel_group() to retrive the underline
8174         accelerator group of the menu, this will be created on demand
8175         and proper care is taken about its reference count.
8176
8177         * gtk/gtkitemfactory.h:
8178         * gtk/gtkitemfactory.c:
8179         dumped the approach of keeping a widgets by action list on the
8180         factory since the factory<->widget destroy negotiation didn't work
8181         and would be hard to get going at all. instead we keep a list of
8182         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
8183         persistant throughout a program's life time).
8184         also, i removed the static const gchar *key_* variables, and made
8185         them inline strings (they weren't actually used anyways).
8186         (gtk_item_factory_add_item): update ifactory->items.
8187         (gtk_item_factory_destroy): destroy ifactory->items (and remove
8188         the item factory pointer from the remaining ifactory widgets).
8189         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
8190         list to find the widget.
8191         (gtk_item_factory_get_item): new function that works around
8192         gtk_item_factory_get_widget() limitations, this function will only
8193         return menu items, even for <Branch> entries.
8194
8195 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
8196
8197         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
8198         font hash table, if we have a GdkFontPrivate entry for this font
8199         already, simply increment its reference count, provided by Olaf Dietsche
8200         <olaf.dietsche+list.gtk@netcologne.de>.
8201
8202         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
8203         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
8204
8205 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
8206
8207         * gtk/gtkcontainer.c:
8208         (gtk_container_add_with_args):
8209         (gtk_container_addv):
8210         (gtk_container_add): before adding a child to a conatiner, make sure
8211         it is (default) constructed, this is neccessary because under certain
8212         circumstances the child will get relized and mapped immediatedly, in
8213         which case it has to be constructed already.
8214
8215 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
8216
8217         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
8218         values > 1 as TRUE also.
8219
8220 1999-03-16  Tor Lillqvist  <tml@iki.fi>
8221
8222         * README.win32: New file.
8223                 
8224         * configure.in: Check for lstat.
8225
8226         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
8227         completeness.
8228
8229         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
8230
8231         * gtk/gtk.def: Removed CRs.
8232
8233         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
8234         ..\gdk\win32).
8235
8236         * gdk/win32/makefile.msc: Correct upwards relative paths.
8237         
8238 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
8239
8240         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
8241           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
8242           it was connecting a void function to expose_event and the int
8243           returning function to the draw signal
8244
8245 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
8246
8247         * configure.in:
8248         Use correct path to libgmodule.la when ref'ing uninstalled copy
8249         of glib.  (Already in stable branch, Bug #417)
8250
8251 1999-03-15  Tor Lillqvist  <tml@iki.fi>
8252
8253         Win32 merge and general portability stuff:
8254                 
8255         * acconfig.h,configure.in: Check for <sys/time.h>.
8256
8257         * gdk/win32: New directory (actually, been there for a while).
8258         
8259         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
8260         NATIVE_WIN32, and use these. Always case fold on Win32. No
8261         backslashed escapes on native Win32.
8262
8263         * gtk/{gtk.def,makefile.msc}: New files.
8264
8265         * gtk/Makefile.am: Add above new files.
8266         
8267         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
8268         instead of <strings.h>.
8269
8270         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
8271         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
8272         <unistd.h> appropriately.
8273
8274         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
8275         Use ABS() (from <glib.h>) instead of abs().
8276         
8277         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
8278         of gtk (and thus glib) headers, so that WIN32 will be
8279         defined. With MS C, include <direct.h> for mkdir prototype.
8280
8281         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
8282         some casts, needed by MS C.
8283
8284         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
8285         implemented).
8286
8287         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
8288         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
8289         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
8290
8291         * gtk/gtkmain.h: Mark variables for export/import on Win32.
8292                 
8293         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
8294         the event is not a hint, or its window is not the slider. Needed
8295         on Win32, at least.
8296
8297         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
8298         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
8299         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
8300         a subdirectory of the Windows directory as gtk system
8301         configuration directory.
8302
8303         * gtk/gtkselection.c: No chunks on Win32.
8304
8305         * gtk/gtksocket.c: Not implemented on Win32.
8306
8307         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
8308
8309         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
8310
8311         * gtk/maketypes.awk: Declare variables with a macro that expands to
8312         necessary export/import magic in the case of Win32.
8313                 
8314         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
8315
8316 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
8317
8318         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
8319         since those were meant only for gdki18n.h.  
8320         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
8321         for widechar tests.
8322         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
8323
8324 1999-03-13  Tor Lillqvist  <tml@iki.fi>
8325
8326         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
8327         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
8328
8329         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
8330         installed) to CFLAGS.
8331
8332         * gdk/Makefile.am: Add rules for gdkconfig.h.
8333
8334         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
8335         APIs.
8336
8337         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
8338         gdkx.h anyway when compiling for X11.
8339         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
8340         general): Merge in Win32 version.
8341         
8342         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
8343         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
8344         expansion (if we don't have HAVE_PWD_H), allow for drive
8345         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
8346         included code from Craig Setera's port to Win32 (the one that uses
8347         X11, and the cygwin dll), even if it probably will be abandoned.
8348
8349         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
8350         the user entered one herself.  This way one can complete *.h and
8351         don't get matches on any .help files, for instance.
8352         
8353 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
8354
8355         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
8356         font hash table, if we have a GdkFontPrivate entry for this font
8357         already, simply increment its reference count, provided by Olaf Dietsche
8358         <olaf.dietsche+list.gtk@netcologne.de>.
8359
8360         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
8361         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
8362
8363 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
8364
8365         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
8366         the number of calls to gdk_draw_point() (and thus to X) by
8367         clipping the points by hand.
8368
8369         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
8370         the clip parameter.
8371         (gtk_handle_box_paint): Only paint the handle if the expose area
8372         intersects it.
8373
8374 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
8375
8376         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
8377
8378 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
8379
8380         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
8381         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
8382
8383 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
8384
8385         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
8386          textmode (O_TEXT) for OS/2 version.
8387
8388 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
8389
8390         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
8391         GtkSpinButton, "input" and "output", to make the output more flexible.
8392         The user has to provide a mapping between adjustment->value and the
8393         output string (and vice versa, if the spin button is editable). 
8394         See testgtk for examples.
8395
8396 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
8397
8398         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
8399         new one.
8400         
8401         * configure.in: set gtk+ version to 1.3.0.