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