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