]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-0
Fix problem with installation directory for gdkx.h
[~andy/gtk] / ChangeLog.pre-2-0
1 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
2
3         * gdk/x11/Makefile.am: Fix problem with installation directory for
4         gdkx.h
5
6         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
7         <mrcooger@cyberverse.com> so that when selecting menus with the
8         mouse, the first item will not be selected, but when selecting
9         with an accelerator, or navigating left-right on a menubar with
10         the menus popped up, the first item will be selected.
11
12 2000-04-05  Dan Damian  <dand@dnttm.ro>
13
14         * configure.in: Added "ro" to ALL_LINGUAS.
15
16 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
17
18         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
19         indentation.
20
21         * Makefile.am (EXTRA_DIST): Fix typo.
22
23         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
24         to catch gdkconfig.h
25
26         * gtk/gtkitemfactory.c: Added FIXME.
27
28 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
29
30         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
31         s/return_if_fail/return_val_if_fail/g and add a return value.
32
33 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
34
35         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
36         merge slipup.
37
38         * gdk/gdkinput.h: Fix missing line from merge.
39
40 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
41
42         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
43         instead of gdkprivate.h.
44
45 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
46
47         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
48         parent class to correctly be GtkDialogClass.
49
50 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
51
52         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
53         toplevel windows and their immediate children by their parents,
54         since the size of toplevel windows is out of our immediate
55         control and we don't get any real benefit from trying to track
56         this size for clipping.
57
58         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
59         for input_only windows.
60
61         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
62         to fix some hacks and make sure that we don't try to set the
63         background of input only windows.
64
65 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
66
67         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
68         the _really_ internal stuff, and leave gdkprivate.h for the fake private
69         stuff that we've traditionally exposed.
70
71         * gdk/**.c: Use gdkinternals.h where appropriate.
72
73         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
74         not include gdkprivate-x11.h, move all stuff of conceivable public
75         interest into gdkx.h; keep all really private stuff in
76         uninstalled header gdkprivate-x11.h.
77
78         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
79         image->image_put on windows through a new function _gdk_window_draw_image()
80         to allow us to do backing store for images. (Sort of ugly)
81
82         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
83         contexts locally so that we can offset them properly when drawing 
84         onto backing pixmaps.
85
86         * gdk/gdkinput.h: Reindented
87
88         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
89         pixmap or color for the window, so we can properly initialize
90         our double-buffer pixmaps, and also so that we temporarily set
91         a background of None while scrolling.
92
93         * gdk/gdkregion.h: Revise region boolean operators to have an
94         interface that is actually convenient - switch from creating new
95         regions on every op, to "methods" that modify existing regions
96         (A = A OP B). 3 argument forms which allow dest == src, would also
97         be possible, but the current interfaces seem to map nicely
98         onto what needs to be done. (There is quite a lot of region
99         code in GDK now.)
100
101         * gdk/gdkregion.h: Add constructor from rectangle and a copy
102         operator.
103
104         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
105         gdkpoly-generic.h: Copy region code from Xlib, switch it over
106         to 32 bit coordinates, modify it to be mostly GTK+ style
107         and to have interfaces that match gdkregion.h.
108
109         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
110         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
111         create a backing pixmap and redirect all drawing to
112         that backing pixmap until a matching gdk_window_end_paint().
113
114         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
115         Create a special drawable class for GtkWindow's that 
116         redirects the drawing to the backing pixmap as necessary
117         and then calls the real operations in _gdk_windowing_window_class.
118
119         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
120         Store invalid region for each window. Generate expose events for invalid
121         region in an idle. This replaces both the expose compression
122         and the redrawing queuing in GTK+. It is both more efficient and
123         simpler than either one individually and far more so then the
124         combination.
125
126         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
127         Emulate 32 bit coordinates for windows with 16 bit coordinates
128         by offsetting drawing, guffaw scrolling techniques and
129         mapping/unmapping child windows as necessary.
130
131         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
132         where, when invalid regions are processed, the region is stored,
133         and if expose events come in that are detectably duplicate
134         the processed exposes (by comparison of event serial numbers),
135         the stored region is subtracted out of those exposes.
136
137         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
138         regions newly exposed when scrolling or resizing windows.
139         This, combined with forcing processesing of queued invalidated
140         regions, gives nice flicker-free scrolling.
141
142         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
143         invalidated regions after every scroll.
144
145         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
146         emulation in GDK. Its, for all practical purposes just a
147         GtkViewport/GtkFixed hybrid now.
148
149         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
150         (16-bit) structures as necessary instead of just casting.
151
152         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
153         in terms of the structures from gdkregion-generic.c, using appropriate
154         offsets from GDK to X11 coordinates. Cache clip mask and
155         origin and ts origin locally and only flush to the server
156         when drawing, to avoid constantly setting and resetting these
157         values when offsetting GC's for scrolling and backing pixmaps.
158
159         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
160
161         * gtk/gtkcontainer.c: Call process_all_updates at end
162         of resizing to reduce flicker. (Avoids having redraw
163         lag arbitrarily behind resize under some circumstances)
164
165         * gtk/gtkentry.c: Remove old backing store code, and simply take
166         advantage of the new backing store capabilities of GDK.
167
168         * gtk/gtkmain.c: Simple implementation of widget backing
169         store - simply push a paint while handling each expose.
170         (Should really be configurable widget for widget.)
171         
172         * gtk/gtkwidget.c: Remove all the old complicated redraw
173         code, and simply invalidate the GDK windows from
174         gdk_window_queue_clear(), etc. (Sigh, so much carefully
175         debugged complexity ... gone to the winds.)
176
177         Remove all the code for suppressing expose events while
178         resizes are pending; this isn't needed since the invalid
179         areas won't be processed until after the resizes are
180         processed, since they are in a lower priority idle.
181
182 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
183
184         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
185         and height of dest rectangle for non-intersecting rectangles.
186
187 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
188
189         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
190         for GdkRectangle.
191
192 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
193
194         * gdk/gdk{events,image,private,types,window}.h
195          gdk/x11/gdkinputprivate.h: Change all coordinates
196          from int16 to int. Also, Change width and height from
197          unsigned to signed to avoid all the stupid C 
198          signedness bugs.
199
200 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
201
202         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
203         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
204         Add some more detailed checking.
205
206         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
207         New function to retrieve the depth of a drawable.
208
209         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
210         field, reorder fields to save memory. 
211
212 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
213
214         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
215         of the background image instead of scaling the background down to
216         a line.
217
218         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
219         which temporarily set slider to wrong size.
220
221         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
222         queue_clear().
223
224 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
225
226 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
227
228         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
229
230 2000-03-17  Tor Lillqvist  <tml@iki.fi>
231
232         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
233         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
234
235         * gdk/win32/gdkfont-win32.c
236         * gdk/win32/gdkproperty-win32.c
237         * gdk/win32/gdkselection-win32.c
238         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
239         now declared such.
240
241 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
242
243         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
244
245 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
246
247         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
248         is called without trapping X errors.
249
250 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
251
252         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
253         way into the fontset lists.
254
255 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
256
257         * gtk/gtkthemes.h: add extern "C" scope.
258
259 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
260
261         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
262         to make appends to the list constant. (gtk-guy-990901-0.patch)
263
264 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
265
266         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
267         for the typename hash table.
268
269 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
270
271         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
272         to make sure we never divide by zero. 
273         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
274
275 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
276
277         * gtk/gtkfontsel.c: Apply patch from
278         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
279         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
280
281         Also, some cleanups in atom handling.
282
283 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
284
285         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
286         not GtkWidget.
287
288 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
289
290         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
291         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
292         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
293         more guint wrap-around bugs before going to bed.
294
295 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
296
297         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
298         guint wrap arounds in allocation.width.
299
300         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
301         process untill we fit the allocation given.
302
303 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
304
305         * gtk/gtkwidget.c:
306         (gtk_widget_unrealize): guard widget access with ref/unref
307         around signal emission.
308         (gtk_widget_hide): same here, but also check its destroyed
309         state before queueing a resize.
310
311 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
312
313         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
314         of gtk_default_insensitive_bg as insensitive base color.
315
316         * gtk/gtktext.c (gtk_text_style_set): set the background color according
317         to the widget's state.
318         (gtk_text_realize): same here.
319         (gtk_text_state_changed): same here.
320         (draw_bg_rect): compare background color against base[] from
321         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
322
323 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
324
325         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
326         grabs are active, unless a delete event is send to the toplevel
327         of the currently grab holding widget.
328
329 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
330
331         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
332         debugging g_print's.
333
334 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
335
336         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
337         ever make the scrolled-window requisition ever depend on the 
338         visibility state of the scrollbars for the AUTOMATIC policy. 
339         This breaks the GTK+ requisition model, and causes loops.
340
341 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
342
343         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
344         the default font to avoid problems with XFree86-4.0 where the
345         default charset is iso10646-1, not iso8859-1.
346
347 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
348
349         * acinclude.m4
350         * config.guess
351         * config.sub
352         * ltconfig
353         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
354
355         * gtk/Makefile.am: minor cosmetic consistency tweak
356
357 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
358
359         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
360         the activate_time to 0, so that we handle a quick
361         press/release press/release properly and don't suppress
362         the second release. (Red Hat bug #7545)
363
364 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
365
366         * gtk/gtkctree.c (row_delete):
367         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
368         bugs with destruction notifier, *always* update internal
369         structures *before* calling user code.
370
371 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
372
373         A few more fixes for bug #5487, #2051, #2677.
374         * gtk/gtkclist.c : 
375         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
376         not GDK_BUTTON_PRESS.
377         (resync_selection): resync only if selection_mode is
378         GTK_SELECTION_EXTENDED
379         * gtk/gtkctree.c (resync_selection): same here
380
381 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
382
383         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
384         gdk_drag_get_selection() and gtk_menu_detach().
385
386         [ From Jeroen Ruigrok/Asmodai ]
387
388 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
389
390         * gtk/gtknotebook.c (gtk_notebook_size_request): 
391         page->tab_label can be NULL.
392
393 2000-01-25  Havoc Pennington  <hp@pobox.com>
394         
395         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
396         arg is boolean
397
398         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
399
400         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
401
402         * gdk/gdkproperty.c (gdk_property_get): return boolean
403
404         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
405
406         * gdk/gdkim.c (gdk_im_ready): return boolean
407
408         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
409
410         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
411         glib clash, should fix glib)
412
413         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
414         (gdk_get_show_events): return gboolean, and canonicalize 
415         to TRUE/FALSE
416
417         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
418         colormap is private
419         (gdk_colors_alloc): gboolean whether to be contiguous
420         (gdk_color_equal): return gboolean since we are a predicate
421         and not a qsort() (this looks semi-wrong due to glib breakage,
422         IMO glib should be fixed)
423         
424         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
425         (gdk_get_use_xshm): return gboolean
426         (gdk_pointer_is_grabbed): return gboolean
427
428         * gdk/gdk.h: Change prototypes to match all the above changes,
429         and re-run egtk-format-protos as required.
430
431 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
432
433         * gtk/gtkctree.c (resync_selection): 
434         * gtk/gtkclist.c (resync_selection):
435
436         Return immediately if clist->drag_pos < 0. This is a workaround
437         for the corrupt state that the clist gets into when a
438         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
439
440         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
441         
442         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
443         variable from recent commit.
444
445 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
446
447         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
448
449 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
450
451         * gtk/Makefile.am: prefix all autogenerated source that get build in
452         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
453         in builddir. since we subsequently cd into srcdir for autogeneration,
454         the paths have to be stripped from the target file names, thusly we
455         use $(@F) as target names now.
456         put a comment about configure.in's --disable-rebuilds option,
457         which can be used for non-writable source directories, for development
458         setups though, srcdir has to be *writable*.
459
460 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
461
462         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
463           Finish the job of allowing event to be NULL.
464           (Fixes bug #4283, reported by Chris Blizzard)
465
466         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
467           things so that the cursor appears on screen, properly
468           take into account INNER_BORDER.
469           (Fixes bug #4754, reported by Antonio Campos)
470
471 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
472
473         * gtk/gtknotebook.c (gtk_notebook_map): Don't
474           show the tab_label unless it itself is visible.
475
476           gtk/gtknotebook.c (gtk_notebook_size_request):
477           Do a better job of making sure that the visibility
478           of the tab label corresponds to whether it should
479           be mapped or not.
480
481 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
482
483         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
484           Use the requisition, not the allocation, since the
485           allocation has not necessarily been computed yet.
486           (Pointed out by Eugene Osintsev)
487
488 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
489
490         * gtk/gtkstyle.c (gtk_style_new): Dont' set
491           style/base[GTK_STATE_INSENSITIVE] both to
492           gtk_default_insensitive_bg!
493           (Bug #2187, reported by Jonathan Blandford)
494
495         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
496           Add Alt_L, Alt_R to list of invalid accelerators.
497           (Bug #3736, reported by Vlad Harchev)
498
499 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
500
501         * gtk/gtkfilesel.c (open_ref_dir): Fix several
502         bugs which occured after an attempt to open 
503         invalid home directory left cmpl_state->reference_dir == NULL.
504
505          - completion on files in home directory didn't work
506          - completion on an empty string caused  segfault
507
508          (Bug #3768, reported by Steve Ratcliffe)
509
510         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
511         cut and paste error that was causing scales to
512         be incorrectly positioned.
513         (Bug #2956,
514          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
515
516 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
517
518         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
519         when checking for dcgettext, if we've found we needed
520         it for dgettext.
521 +
522 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
523
524         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
525         queue_clear on NO_WINDOW widgets during a reparent,
526         since at that point the window and widget heirarchies
527         are out of sync. This stops crashing in some cases
528         (the scrolled window reparent test, for instance), and
529         _probably_ won't cause drawing errors.
530
531         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
532         test do what it was supposed to do and be robust against
533         window closings, etc. (Bug #2443)
534
535 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
536
537         * gtk/gtkentry.c: Fix return values on mouse events.
538         (Bug #2686, Sky <seb_sky@yahoo.com>)
539
540         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
541         (pointed out by George Lebl)
542
543         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
544         (From Ettore Perazzoli  <ettore@helixcode.com>)
545  
546 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
547
548         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
549         clicks between rows or outside calender area correctly.
550         (Patch from Damon Chaplin)
551
552         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
553         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
554           Call destroy function when overwriting existing data. 
555           (Pointed out by Damon Chaplin)
556
557 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
558
559         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
560           which was causing problems on various systems with Xmu.
561           This hasn't been needed for a very long time.
562           (Fixes #1185 3167)
563
564 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
565
566         * gdk/gdki18n.h: Include <ctype.h> when defining
567           gdk_isw* in terms of is* as a fallback.
568           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
569
570 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
571
572         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
573           realize the widget when it is size allocated!
574           (old, old bug)
575
576         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
577           Removed unused call to gdk_window_get_size() that
578           showed up when the above was fixed.
579
580 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
581
582         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
583           fix up widget->window when the widget is a
584           NO_WINDOW container widget.
585
586 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
587
588         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
589           to account for the fact that feof() does _not_ 
590           return TRUE on errors, and thus avoid infinite loops
591           when trying to use gdk_pixmap_create_from_xpm()
592           on unreadable values.
593
594 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
595
596         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
597
598 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
599
600         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
601           gdk_gc_set_dashes to take gint8 instead of gchar to
602           make it clearer that it is _not_ a NULL terminated string.
603
604         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
605           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
606           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
607           arguments.
608
609 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
610
611         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
612         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
613         background size relative to our allocation, guard against small
614         allocations, we may have not yet been size allocated.
615
616 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
617
618         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
619         not just version == 3. We implement all 3 + most of 4 - 
620         (we don't support matching text/plain;charset=iso-8859-1
621         to a dest that expects text/plain). We'll still advertise
622         3 to be safe, but any client implementing version >= 3
623         must interoperate with 3.
624         
625 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
626
627         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
628         background and gc members, add a warning in gtk_tooltips_set_color()
629         indicating that this function is deprecated.
630
631 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
632
633         * docs/gtkfaq.sgml: FAQ Update:
634           - Minor cleanups (Emmanuel, me)
635           - New questions:
636                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
637                 How can I retrieve the text from a GtkMenuItem? (timj)
638                 How do I validate/limit/filter the input to a GtkEntry? (me)
639                 Memory does not seem to be released when I free the list
640                         nodes I've allocated (timj)
641
642 2000-03-07  Tor Lillqvist  <tml@iki.fi>
643
644         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
645         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
646         for which it is no use to call GetLastError onWin9x.
647         (gdk_other_api_failed) New function, for general error
648         reporting without calling GetLastError.
649         (gdk_win32_api_failed) OTOH, this function always calls
650         GetLastError. (gdk_win32_last_error_string) Remove this function,
651         GLib has the equivalent now.
652
653         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
654         call them with function name, file name and line number in the
655         arguments.
656
657         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
658         functions.
659         
660         * gtk/gtk.def: Add some missing entry points.
661
662         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
663         gtk_paned_set_gutter_size, which don't exist any longer, as void.
664         
665         Fixes by Hans Breuer:
666
667         * gdk/makefile.msc: Update for debugging.
668
669         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
670         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
671         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
672         in the dash_list.
673
674         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
675         the x11 backend.
676
677         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
678
679         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
680
681 2000-03-04  Tor Lillqvist  <tml@iki.fi>
682
683         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
684         just pixel value of background colour.
685
686         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
687         containing code snippet previously duplicated in a couple of
688         places.
689         
690         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
691         gdk_colormap_color.
692
693         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
694         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
695         events for autorepeated Shift, Control and Alt keys. Use
696         gdk_colormap_color.
697
698         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
699         pointer is inside the window the cursor of which we are setting,
700         call SetCursor immediately.
701
702         * gdk/win32/makefile.cygwin
703         * gtk/makefile.cygwin: If we don't have the build number stamp
704         file, use zero.
705
706         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
707         gtk_paned_set_gutter_size as empty.
708
709         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
710         
711 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
712
713         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
714           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
715           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
716           docs/gtk_tut.sgml docs/gtk.texi TODO:
717
718           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
719
720 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
721
722         * gtk/gtkcalendar.c: Implement num_marked_dates,
723           and don't emit mutiple day_selected signals on
724           month_prev.
725
726 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
727
728         * docs/make-todo (lineno): let title and logo be configurable so
729         that GNOME can use this script too.
730
731         * TODO.xml: added logourl and a title
732
733 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
734
735         * TODO.xml: Added some UI items, and an explanatory
736         comment at the top of the file.
737
738 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
739
740         * TODO.xml: some updates, added abunch of new entries.
741         a note for those fiddeling with this file, when done
742         with it, invoke:
743         $ ./docs/make-todo TODO.xml >/dev/null
744         and correct output errors before comitting changes.
745
746 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
747
748         * TODO.xml: Added XML-structured TODO file.
749         * docs/make-todo: python script to turn TODO.xml into
750           pretty XML output. 
751
752 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
753
754         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
755         the function to let it draw the seven dots, instead of the old,
756         much maligned, method.
757         (draw_dot): New function to draw a dot.
758
759         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
760         to draw the handle inside the border width as opposed to outside.
761         Use paint function instead of gdk_draw_point.
762
763         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
764         to draw the handle inside the border width as opposed to outside.
765         Use paint function instead of gdk_draw_point.
766
767         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
768         Change indenting to be more GTK like.
769
770 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
771
772         * docs/gtk_tut.sgml: New section on GtkCalendar
773         * examples/calendar: Update example code
774
775 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
776
777         * docs/gtkfaq.sgml: FAQ Update
778
779 2000-02-19  Anders Carlsson  <andersca@gnu.org>
780
781         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
782         to prevent the scroll event to be propagated upwards.
783
784 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
785
786         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
787         OwnerGrabButtonMask from button entries for
788         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
789
790         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
791         to the event mask (which will result in button/press release
792         being added to the event mask on Unix) so scrolling works
793         for layouts in scroll windows.
794
795         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
796
797         Patch from Anders Carlsson  <andersca@gnu.org> to add
798         a scroll event.
799
800         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
801         scrolling to the "Test Scrolling" part of testgtk.
802  
803         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
804  
805         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
806         it against GDK_SCROLL.
807  
808         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
809         way of mouse wheel scrolling.
810  
811         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
812  
813         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
814  
815         * gtk/gtkmain.c: Removed previous mouse wheel hack.
816  
817         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
818         gdk_event_mask_table.
819  
820         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
821         GdkEventScroll handler.
822  
823         * gdk/gdkevents.h: Added GdkEventScroll structure.
824  
825 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
826
827         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
828         and Anders Carlsson to change the Paned widgets so that they
829         can be dragged from anywhere along the length. Also change
830         the way that this is drawn to make this apparent.
831
832         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
833         from George Lebl to check that option_menu->menu is present
834         before getting history.
835
836 2000-02-14  Tor Lillqvist  <tml@iki.fi>
837
838         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
839         before the assertion for non-NULL segment list.
840
841         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
842         Seems that pattern brushes *must* be 8x8 pixels! At least on my
843         machine, but it might be display driver dependent. Sigh, so make
844         sure the stipple is that size. Does Windows suck or what?
845
846         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
847         places.
848
849 2000-02-13  Havoc Pennington  <hp@pobox.com>
850
851         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
852         refcount to 1
853         (gdk_cursor_new): init refcount to 1
854
855         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
856
857 2000-02-13  Tor Lillqvist  <tml@iki.fi>
858
859         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
860         so that we don't have to do unnecessary settings to the HDC.
861
862         * gdk/win32/gdkdrawable-win32.c
863         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
864         gdk_gc_predraw.
865
866         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
867         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
868         GDI paths, call WidenPath to get the outline of the stroken path,
869         and then fill the outline (with the brush that was built from the
870         stipple).
871
872         * gdk/win32/gdkgc-win32.c: Factor out common code from
873         _gdk_win32_gc_new and gdk_win32_gc_set_values into
874         gdk_win32_gc_values_to_win32values. Use correct colour for
875         SetBkColor() (Until now the code actually used a random colour in
876         the call to SetBkColor()... but that didn't show up as not many
877         GDI APIs use the background colour. Pattern (opaque stippled)
878         brushes do.)
879
880         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
881         gdk_win32_api_failed): New functions for error logging.
882
883         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
884         WIN32_API_FAILED to call them, passing function or file name and
885         line number.
886
887         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
888
889         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
890         GdkColor for foreground and background in GdkGCWin32Data.
891
892         * gdk/makefile.cygwin: Link in the resource object separately.
893
894         * gdk/win32/rc/gdk.rc
895         * gtk/gtk.rc (New file)
896         * gdk/win32/makefile.cygwin
897         * gtk/makefile.cygwin: Update build number in DLLs automatically,
898         as in GLib.
899
900 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
901
902         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
903         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
904         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
905         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
906         parameters given and cursor->ref_count. coding style fixups.
907
908         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
909         not GtkWidget.
910         
911         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
912         fix up widget macros and add _GET_CLASS() variant.
913         
914         * gtk/*.c: some GtkType fixups.
915
916 2000-02-09  Tor Lillqvist  <tml@iki.fi>
917
918         * gdk/win32/gdkproperty-win32.c
919         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
920         were reversed.
921
922 2000-02-04  Tor Lillqvist  <tml@iki.fi>
923
924         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
925         g_filename_to_utf8 to convert the font names Windows gives us from
926         whatever is the default codepage to UTF-8.
927         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
928         in the other direction.
929
930         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
931         error in debugging output.
932
933 2000-02-02  Tor Lillqvist  <tml@iki.fi>
934
935         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
936         and height parameters to gdk_window_clear_area(). Not minus one.
937
938 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
939
940         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
941         checks if the widget passed to gtk_drag_get_data() was not the
942         dest widget.
943
944 2000-02-01  Tor Lillqvist  <tml@iki.fi>
945
946         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
947         g_filename_from_utf8 functions (which were added a moment ago to
948         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
949         size buffers.
950
951         gtk_file_selection_get_filename returns the filename in the C
952         runtime encoding. It calls g_filename_from_utf8, but copies the
953         returned string to a static buffer, which is returned. I think
954         this is better than returning the result from g_filename_from_utf8
955         directly, which would mean all apps that use it would have to free
956         the return value. Or should this function care about this issue at
957         all? Maybe a new function with clearly defined semantics.
958
959         * gtk/gtkfilesel.h: Add comment about
960         gtk_file_selection_get_filename returning the filename in the C
961         runtime's encoding.
962
963         * README.win32
964         * gdk/gdk.def
965         * gdk/makefile.{cygwin,msc}
966         * gtk/gtk.def: Updates.
967
968         * gdk/gdkcursor-win32.c: Initialise refcount.
969
970 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
971
972         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
973
974 2000-01-30  Havoc Pennington  <hp@pobox.com>
975
976         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
977         destroy
978
979         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
980
981         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
982         implemented in platform-specific code
983
984         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
985
986         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
987         underscore in front
988
989         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
990         put an underscore in front
991
992         * gdk/gdkcursor.c: new file, implements
993         gdk_cursor_ref/gdk_cursor_unref
994
995         * gdk/gdkcursor.h: Refcount GdkCursor
996
997         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
998
999 2000-01-29  Tor Lillqvist  <tml@iki.fi>
1000
1001         * gdk/gdkwindow.h
1002         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
1003
1004 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
1005
1006         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
1007         structures to properly inherit from GtkWidget not GtkBin.
1008
1009 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
1010
1011         * gtk+.spec.in: Added lib/gtk+/include/* to %files
1012         (bug #5178 - Peter Wainright)
1013         
1014         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
1015         so that it will be installed.
1016         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
1017
1018 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
1019
1020         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
1021         for the GtkStyleClass vtable const.
1022
1023         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
1024         take a const string argument like GtkTranslateFunc. This will
1025         require changes in use code.
1026
1027 2000-01-19  Tor Lillqvist  <tml@iki.fi>
1028
1029         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
1030         semantics (to mimic the X11 backend, which just calls XClearArea)
1031         is to check for zero width (and height), and in that case use the
1032         window's width minus x (height minus y). This fixes for instance
1033         some redraw problems with gtkclist, which were easily noticeable
1034         in the gtk file selection widget.
1035
1036         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
1037         windows.
1038
1039 2000-01-13  Tor Lillqvist  <tml@iki.fi>
1040
1041         * configure.in
1042         * gdk/Makefile.am
1043         * gdk/x11/Makefile.am
1044         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
1045         (bug #5177).
1046         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
1047         out later.
1048
1049 2000-01-09  Tor Lillqvist  <tml@iki.fi>
1050
1051         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
1052         WM_MOVE for iconified or invisible windows. This fixes various
1053         problems when minimising windows. Thanks to Bernd Herd.
1054
1055 2000-01-05  Tor Lillqvist  <tml@iki.fi>
1056
1057         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
1058         backend's draw_lines method, not draw_points.
1059
1060 2000-01-02  Tor Lillqvist  <tml@iki.fi>
1061
1062         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
1063         before Owen's reorganisation: Don't have queued_events and
1064         queued_tail statics in this file, but use gdk_queued_events and
1065         gdk_queued_tail. This makes exposure event compression work again.
1066
1067         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
1068         seem to be needed?
1069
1070 1999-12-30  Tor Lillqvist  <tml@iki.fi>
1071
1072         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
1073         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
1074         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
1075         doesn't do anything.
1076
1077         * gdk/gdk.def: Add gdk_xid_table_insert.
1078
1079         * gdk/win32/gdkprivate-win32.h
1080         * gdk/win32/gdkevents-win32.c
1081         * gdk/win32/gdkinput-win32.c
1082         
1083         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
1084         extension_events field in the GdkWindowWin32Data struct. Use only
1085         the extension_events field in GdkWindowPrivate. Previously one was
1086         set, and the other one tested, which broke tablet
1087         functionality. Thanks to Keishi Suenaga for pointing this out.
1088
1089 1999-12-18  Tor Lillqvist  <tml@iki.fi>
1090
1091         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
1092         When handling a single character (text length == 1), don't handle
1093         it as if it was UTF-8.
1094
1095 1999-12-11  Tor Lillqvist  <tml@iki.fi>
1096
1097         * Makefile.am: Distribute README.win32.
1098         
1099         * gdk/Makefile.am
1100         * gdk/win32/Makefile.am: Distribute Win32 files.
1101
1102         * gdk/makefile.msc: New file.
1103
1104         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
1105         after label).
1106
1107         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
1108         gdk_error_code as GDKVAR, as they are referred outside GDK.
1109
1110         * gdk/win32/makefile.msc: Update.
1111
1112         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
1113         tweaks. Check only if at least one of those Unicode subrange bits
1114         we care for is set. If no code page bits are set, guess (wildly)
1115         based on the charset.
1116
1117         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
1118
1119         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
1120         non-NULL.
1121
1122         * gtk/gtkdnd.c
1123         * gtk/gtklayout.c
1124         * gtk/gtkplug.c
1125         * gtk/gtkselection.c
1126         * gtk/gtksocket.c
1127         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
1128         appropriate. There must be a cleaner way to handle this?
1129
1130         * gtk/gtkrc.c: Must include windows.h on Win32.
1131
1132         * gtk/testgtk.c: No need to include gdkx.h.
1133
1134         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
1135
1136 1999-12-07  Tor Lillqvist  <tml@iki.fi>
1137
1138         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
1139         the rbearing is set to the same as the width, but this should be
1140         fixed.
1141
1142 1999-12-06  Tor Lillqvist  <tml@iki.fi>
1143
1144         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
1145         function. If Windows doesn't tell us what Unicode subranges a font
1146         covers, guesstimate based on the codepages it covers. This will
1147         hopefully help those Windows versions or fonts that don't give us
1148         any useful Unicode subrange information with GetTextCharsetInfo.
1149         Call this function in gdk_font_load_internal.
1150
1151         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
1152         minor changes.
1153
1154 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
1155
1156         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
1157         New function, long needed.
1158
1159 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
1160
1161         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
1162         only_if_exists argument of gdk_atom_intern to
1163         bool.
1164
1165 1999-11-25  Tor Lillqvist  <tml@iki.fi>
1166
1167         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
1168         Fix two copy&paste errors.
1169
1170         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
1171         win32 has changed.
1172
1173         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
1174         GdkWin32SingleFont struct.
1175
1176         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
1177         subranges of loaded fonts. Clear font signature first, in case
1178         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
1179         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
1180
1181         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
1182         Unoffset clip region.
1183
1184 1999-11-23  Tor Lillqvist  <tml@iki.fi>
1185
1186         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
1187         event->any.window before calling filter functions.
1188
1189 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
1190
1191         * gtk/gtkgamma.h: Adapt cast macros to standard.
1192
1193 [ Merges from 1.2 ]
1194
1195 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
1196
1197         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
1198         If translation does not include a '/', use entire
1199         translation instead of crashing.
1200
1201 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
1202
1203         * docs/gtk_tut.sgml:
1204         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
1205
1206 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
1207
1208         * gtk/gtkselection.c (gtk_target_list_remove): Use
1209         g_list_remove_link, not g_list_remove.
1210
1211         [ From Geert Bevin <gbevin@thunderstorms.org> ]
1212         
1213 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
1214
1215         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
1216         statement upon unselection (how the heck did that slip in?).
1217
1218 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
1219
1220         * gtk/gtktext.c (gtk_text_freeze): 
1221         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
1222         in frozen state (and aparently crashes). patch provided by Anders
1223         Melchiorsen <and@kampsax.dtu.dk>.
1224
1225 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
1226
1227         * fix insensitive default/focus widget activation,
1228         reported by Matt Goodall <mgg@isotek.co.uk>.
1229
1230         * gtk/gtkwindow.c (gtk_window_key_press_event): 
1231         (gtk_window_activate_default):
1232         (gtk_window_activate_focus):
1233         return handled=FALSE for actiavtion of insensitive default
1234         widgets. return handled=TRUE for activation of insensitive
1235         focus widgets. don't activate in either case.
1236
1237 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
1238
1239         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
1240         and $glib_cflags to match library order and in the
1241         theory that an old version of GLib is more likely to
1242         be in the include directory for X then vice-versa.
1243         (Bug #2776)
1244
1245 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
1246
1247         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
1248         to determine the locale for fontsets, not LC_MESSAGES;
1249         the user may want English messages with a handling
1250         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
1251         will still be broken) (Bug #2891)
1252
1253 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
1254
1255         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
1256
1257 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
1258
1259         * gtk/gtkrc.ko: Changed the Korean default fontset.
1260
1261 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
1262
1263         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
1264         where when scrolling to the left or top double exposes
1265         were done, causing major slowdowns.
1266
1267 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
1268
1269         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
1270         names to lowercase and alphanumeric, before looking
1271         them up.
1272
1273         * gtk/Makefile.am: Install codeset variant gtkrc files
1274         with normalized names.
1275
1276 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
1277
1278         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
1279         popup menus when the menu is already visible, but its parent
1280         is still hidden, (happens after tornoff window got hidden).
1281
1282 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
1283
1284         * gtk/Makefile.am (install-data-local): Fix
1285         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
1286         deleted, causing error messages on install.
1287
1288 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
1289
1290         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
1291         the handle as well, since we now sometimes ignore
1292         exposes on the handle while resizing.
1293
1294 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
1295
1296         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
1297         extra g_free introduced in one of the last one or two 
1298         commits.
1299
1300 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
1301
1302         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
1303         consistent, put each style that a gtkrc.* file creates
1304         in a unique namespace, remove old files before installing.
1305
1306 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
1307
1308         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
1309         gtk_rc_init is called multiple times. (Yes, people who
1310         do that have bugs in their code.)
1311
1312 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
1313
1314         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
1315         Remove it since it's generated by the Makefile anyway
1316
1317 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
1318
1319         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
1320         device->info.axes for core pointer.
1321
1322 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
1323
1324         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
1325         idle_id, to deal with obsolete, broken C libraries.
1326
1327 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
1328
1329         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
1330         allocation->x/y twice!
1331
1332         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
1333         consistent with gtk_vscale_pos_trough().
1334
1335 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
1336
1337         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
1338         be queueing a resize on a toplevel container between
1339         the time we show it and when we map it. So, we need
1340         to test GTK_WIDGET_VISIBLE() for toplevels, and only
1341         use GTK_WIDGET_DRAWABLE() for child windows.
1342
1343 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
1344
1345         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
1346         (fixes bug #2144)
1347
1348 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
1349
1350         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
1351         container DRAWABLE (instead of VISIBLE), so we don't queue
1352         resizes on non-toplevel containers.
1353
1354 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
1355
1356         * gtk/gtkselection.[ch]: Make the data argument
1357         const guchar *.
1358
1359 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
1360
1361         * gtk/gtkwindow.c: Try to behave sensibly if 
1362         the focus widget is the window itself. (Should
1363         we allow this at all?)
1364
1365 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
1366
1367         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
1368         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
1369         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
1370         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
1371         in prototypes and implementations consistent (Tomas Ogren).
1372
1373         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
1374         before the widget is unparented (reported by damon).
1375
1376         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
1377         since we provide unsigned data anyways.
1378
1379 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
1380
1381         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
1382         the call to gtk_tooltips_layout_text() until later.
1383
1384         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
1385         Call gtk_widget_ensure_style() before using the style.
1386
1387 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
1388
1389         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
1390         for old widgets that don't propagate draws to all
1391         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
1392
1393 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
1394
1395         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
1396         for a redraw but just the widget that requested the resize.
1397
1398 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
1399
1400         * gtk/gtkcontainer.c: added new widget level method
1401         gtk_container_set_reallocate_redraws() and a GtkContainer flag
1402         reallocate_redraws : 1 to reflect the setting, exported this through
1403         the argument system as a boolean ::reallocate_redraws.
1404
1405         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
1406         on the widget because the allocation changes, do so as well for
1407         widget->parent if the parent has reallocate_redraws set to TRUE.
1408         with that containers requesting reallocation redraws get automatically
1409         redrawn if their children changed allocation (this unfortunately
1410         affects also other children that didn't change allocation, but we
1411         cannot work around that before 1.3).
1412
1413 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
1414
1415         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
1416         _and_ height are >0 (not _or_).
1417
1418         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
1419         instead of gtk_container_queue_resize(), which is a core gtk internal
1420         function (must have been on crack when i queued that).
1421
1422         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
1423         we can check more reliably if we want to discard expose events.
1424         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
1425         flag.
1426         
1427         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
1428         we simply trust these events. for deciding whether to discard exposes,
1429         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
1430         
1431 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
1432
1433         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
1434         queues of areas that are completely off screen.
1435
1436         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
1437         logic for handleboxes.
1438
1439         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
1440         check on width/height.
1441
1442 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
1443
1444         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
1445         we are fine with using $@ the way we do (if we actually encounter
1446         brokeness with $@ in VPATH builds because of additional path prefixes,
1447         we need to use $(@F) actually).
1448
1449 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
1450
1451         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
1452         short lived bugs, that would allow language bindings to do surgeries
1453         to our guts.
1454
1455 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
1456
1457         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
1458         where comparison was being done against an uninitialized
1459         value causing intermittant results depending on
1460         compiler flags. Also make it clearer that we aren't
1461         ever initializing the child as 0x0 (though this will
1462         be caught in gtk_widget_size_allocate())
1463
1464 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
1465
1466         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
1467         gtk_window_unset_transient_for() call after we do checks
1468         involving the old transient parent.
1469         [ From Lance Capser <lmc@cyberhighway.net> ]
1470
1471 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
1472
1473         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
1474         an empty file.
1475
1476 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
1477
1478         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
1479         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
1480
1481 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
1482
1483         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
1484         `$@' is valid only in the build dir, not after we've done 
1485         `cd $srcdir'.  Also use `test -f' instead of less portable
1486         `test -e'.
1487
1488 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
1489
1490         * gtk/gtktext.c (correct_cache_insert): Rewrite
1491          for simplicity, and hopefully correctness.
1492          (Fixes bug #1322, which was a segfault when
1493           on some insertions with the properties around
1494           the insertion set up just wrong.)
1495
1496         * gtk/gtktext.c (gtk_text_adjustment): When we receive
1497          a "changed" signal, clamp the new value to the adjustment
1498          bounds to avoid segfaulting if someone tries to change
1499          the adjustment to a bogus value. (Bug #1795)
1500
1501 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
1502
1503         * gtk/gtkmain.c: Ignore unexpected destroy notifies
1504         for children, for toplevel windows handle them
1505         like delete_event.
1506
1507         * gtk/gtkplug.c: Add an unrealize handler so that
1508         we unref plug->socket_window when we are done
1509         with it.
1510
1511 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
1512
1513         * gtk/gtktext.c (clear_area): Fix stupid signedness
1514          problem that was causing background to sometimes
1515          be misaligned.
1516
1517 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
1518
1519         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
1520         
1521         * gtk/gtkmenu.c (gtk_menu_position): Make
1522          sure we never position menus with negative x, y,
1523          since gtk_widget_set_uposition() can't handle that.
1524
1525         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
1526          Modify the positioning code a bit so that we always
1527          put the top-left corner onscreen. (This is for
1528          UI reasons, gtk_menu_position() now takes care of
1529          gtk_widet_set_uposition() brokeness.)
1530
1531 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
1532
1533         * gtk/Makefile.am: fixed up things for -jx, x > 1.
1534
1535 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
1536
1537         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
1538           RC style that is passed in. The lack of the ref
1539           before was a bug. If people worked around this
1540           bug, this will introduce a slight memory leak
1541           in their code. The code should typically look like:
1542
1543             rc_style = gtk_rc_style_new ();
1544             [...]
1545             gtk_widget_modify_style (widget, rc_style);
1546             gtk_rc_style_unref (rc_style);
1547
1548         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
1549           the style if it was already set.
1550
1551         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
1552           style if it was set before.
1553
1554 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
1555
1556         * gtk/testgtk.c (main): Add a check to see if we
1557           are being run from the correct directory and
1558           to quit nicely if we are not.
1559
1560         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
1561           static.
1562
1563 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
1564
1565         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
1566
1567         * gtk/gtkwindow.c:
1568         queue resizes unconditionally (gtk_widget_queue_resize will figure
1569         what to do if the window is not realized).
1570         (gtk_window_move_resize): only recenter the window
1571         for GTK_WIN_POS_CENTER_ALWAYS.
1572         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
1573         the same way as GTK_WIN_POS_CENTER.
1574
1575 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
1576
1577         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
1578         with (!(info->last_flags & GDK_HINT_POS)) instead of
1579         (!info->last_flags & GDK_HINT_POS).
1580
1581         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
1582         new_height unconditionally, because we use these values even if
1583         !default_size_changed && !hints_changed.
1584         comented the (default_size_changed || hints_changed) case with
1585         respect to resize rejects from the window manager.
1586
1587         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
1588         in the zvt condition hack, since this includes the window hints, set
1589         the hints after the handling_resize case.
1590
1591         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
1592         window is initially shown with to the geometry.
1593
1594 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
1595
1596         * gtk/gtkwindow.c (gtk_window_move_resize):
1597         s/size_changed/default_size_changed/g so i know what's
1598         really going on (frying brain on smaller flame now).
1599
1600 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
1601
1602         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
1603         we have size_changed upon handling_resize. this is a gross
1604         workaround for the broken zvt widget and should be removed in
1605         1.3 again (search for FIXME).
1606         Owen provided an accurate comment for this:
1607
1608         /* We could be here for two reasons
1609          *  1) We coincidentally got a resize while handling
1610          *     another resize.
1611          *  2) Our computation of size_changed was completely
1612          *     screwed up, probably because one of our children
1613          *     is broken. It's probably a zvt widget.
1614          *
1615          * For 1), we could just go ahead and ask for the
1616          * new size right now, but doing that for 2)
1617          * might well be fighting the user (and can even
1618          * trigger a loop). Since we really don't want to
1619          * do that, we requeue a resize in hopes that
1620          * by the time it gets handled, the child has seen
1621          * the light and is willing to go along with the
1622          * new size. (this happens for the zvt widget, since
1623          * the size_allocate() above will have stored the
1624          * requisition corresponding to the new size in the
1625          * zvt widget)
1626          *
1627          * This doesn't buy us anything for 1), but it shouldn't
1628          * hurt us too badly, since it is what would have
1629          * happened if we had gotten the configure event before
1630          * the new size had been set.
1631          */
1632
1633 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
1634
1635         * gtk/gtkrc.c: deal properly with the fact that RC
1636           style lists may include rc styles more than once.
1637
1638         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
1639           unused static function.
1640
1641         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
1642           stack of directories of RC files currently being
1643           parsed and implicitely add them to pixmap path.
1644           
1645           This fixes a bug where the directory would get
1646           appended then overwritten by pixmap_path declarations.
1647
1648           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
1649
1650         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
1651           theme's exit function. (Patch from Peter Wainwright,
1652           bug #1454)
1653
1654         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
1655           Add a destroy() handler to take care of removing
1656           group for menu item. (Fixes bug #1197)
1657
1658         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
1659           in warning message.
1660
1661 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
1662
1663         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
1664         roundtrip to figure window's width and height, since we know that
1665         anyways from widget->allocation.
1666
1667 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
1668
1669         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
1670           the hints after we request the new size.
1671
1672 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
1673
1674         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
1675           GTK_WIDGET_REALIZED() assertion - we can compute the
1676           hints before we are realized.
1677
1678         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
1679           hint changing so that we have a value of hints_changed
1680           when we decide whether to constrain the window size.
1681
1682         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
1683
1684         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
1685         change back to G_MAXINT.
1686
1687 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
1688
1689         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
1690         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
1691         contain uncluttered values.
1692         (gtk_window_compute_hints): simply assert that window is realized
1693         and that geometry_info is valid, since we rely on this anyways.
1694         (gtk_window_constrain_size): major cleanups to the code.
1695         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
1696         for the base size, instead of the minimums. use 32767 as max width
1697         and height (like in gtkwindow.c) instead of G_MAXINT.
1698
1699 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
1700
1701         * cleaned up the GtkContainer.need_resize flag handling mess, we
1702         only need to force resize requests when we were prematurely
1703         realized, or our widget tree was modified when we were temporarily
1704         hidden. handling these cases directly upon showing the window (i.e.
1705         while the GdkWindow is still unmapped) avoids the need to wait for
1706         a configure event response and therefore makes the GUI more snappier
1707         and avoids blank windows during the roundtrip.
1708
1709         * gtk/gtkwidget.c:
1710         (gtk_widget_hide): 
1711         (gtk_widget_show): don't queue resizes on toplevels, they know how
1712         to deal with matters.
1713
1714         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
1715         flag directly for not visible resize containers and spare us unecessary
1716         signal emissions.
1717
1718         * gtk/gtkwindow.c:
1719         (gtk_window_realize): if we need to enforce premature size allocation,
1720         queue a container resize so we are correctly resized later on.
1721         (gtk_window_init):
1722         (gtk_window_size_request):
1723         don't freak around with the ->need_resize flag,
1724         gtk_container_queue_resize() will care about that.
1725         (gtk_window_show):
1726         handle initial resizing issues here, we can handle matters better in
1727         this place, especially since we know that our GdkWindow is still
1728         unmapped.
1729         (gtk_window_move_resize):
1730         don't care about ->need_resize at all.
1731         handle size changes properly that occoured while we waited for a
1732         configure event.
1733
1734 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
1735
1736         * gtk/gtkwidget.c (gtk_widget_set_uposition):
1737         * gtk/gtkwindow.[hc] (gtk_window_reposition):
1738         Move the hint setting code from gtk_widget_set_uposition
1739         to here; set the hints so that we respect any previously
1740         set geometry hints.
1741
1742         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
1743         change the window hints here or move the window here,
1744         let that happen in gtk_window_move_resize().
1745
1746 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
1747
1748         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
1749         to already queued resizes (and therefore redraws) on a widget, check
1750         its anchestry as well.
1751
1752         * gtk/gtkcontainer.c:
1753         (gtk_container_queue_resize): clear resize widgets for resize
1754         containers before aborting prematurely. this is especially important
1755         for toplevels which may need imemdiate processing or their resize
1756         handler to be queued.
1757         (gtk_container_dequeue_resize_handler): added new internal function for
1758         gtkwindow.c.
1759
1760         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
1761         configure event, take possible changes in window position into account
1762         as well.
1763         if we request a new window size, queue up a resize handler that will
1764         last until the configure event response arrives.
1765         combined the ->need_resize case (initial show) with the general size
1766         (hints) changed case and added even more comments.
1767         if !auto_shrink, only revert to the old allocation if the new size
1768         is smaller than the current allocation.
1769
1770 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
1771
1772         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
1773                            gtk_window_set_geometry_hints
1774                            gtk_window_set_default_size):
1775         When hints are set, queue a resize so that the hints will
1776         be eventually reset on the toplevel.
1777
1778         * gtk/gtkwindow.c (gtk_window_show): Use
1779         gtk_window_compute_default_size(). Clear the need_resize flag
1780         on the initail map so that we don't unnecessarily trigger the
1781         resize code.
1782
1783         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
1784         into separate functions. Compare the hints we are setting
1785         with what we set last time so that we can accurately
1786         tell when we need to reset the hints.
1787
1788         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
1789         function to figure out the size from requisition
1790         and default_size.
1791
1792         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
1793         from fvwm to constrain a size to the geometry hints.
1794
1795         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
1796         to compare two sets of geometry hints.
1797
1798         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
1799         from gtk_window_set_hints(), just compute the hints,
1800         don't set them.
1801
1802         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
1803         code from gtk_window_move_resize() to separate function,
1804         rationalize a bit.
1805
1806 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
1807
1808         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
1809         structure into a new private structure.
1810
1811         * gtkrc.c: Split GtkRcStyle into public/private.
1812         In the private part, add a list of pointers to the
1813         RcStyle lists this RcStyle participates in.
1814
1815         * gtkrc.c: When a RcStyle is free, remove all
1816         lists referencing it from the 
1817         realized_style_ht hash, and free those lists.
1818         
1819         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
1820         gtk_rc_init(), since that adds the default styles
1821         to the list of parsed RC files again.
1822
1823         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
1824         
1825 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
1826
1827         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
1828         checks that ensure that a widget's allocation is at least 1 in width
1829         and height. (GNOME note: this doesn't affect old panel code anymore,
1830         because GtkSocket will request width and height of at least 1 since
1831         Fri Jul 23).
1832
1833         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
1834         allocated yet (happens if the user realizes the window prematurely),
1835         size request and allocate it.
1836         (gtk_window_size_allocate): guard against guint underflows.
1837
1838 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
1839
1840         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
1841         in gtk_built_sources, so gtk.defs gets built prior to all other
1842         sources.
1843
1844 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
1845
1846         * gtk/Makefile.am:
1847         invoke indent on gtkmarshal.*. 
1848         rewrote source generation rules, use COPYING as oldest source tag for
1849         a piggyback rule to generate all sources from (don't touch it ;).
1850         major cleanups, strip spaces on build rules for GNU Make.
1851
1852         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
1853         source and target files from commandline arguments. don't invoke indent.
1854
1855 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
1856
1857         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
1858         notebook after switch to avoid drawing problems.
1859         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
1860         
1861         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
1862         show them instead. 
1863         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
1864
1865 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
1866
1867         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
1868         notebook after switch to avoid drawing problems.
1869         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
1870         
1871         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
1872         show them instead. 
1873         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
1874
1875 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
1876
1877         * gtk/gtkwindow.c:
1878         we use window->need_resize from configure_event now, to indicate that
1879         the gtkwindow should keep its allocation (e.g. because the user resized
1880         the window through window manager handles). resize_count is now reliably
1881         used to figure whether we got the allocation we requested from the
1882         window manager.
1883         configure events get queued as resizes now, the real stuff (size
1884         computation and allocation) now only goes on in gtk_window_move_resize().
1885         GtkWindow's requisition now contains its *real* requisition (like all
1886         other widgets), *not* taking usize into account.
1887         geometry_info->last_{width|height} is now updated from set_hints() only
1888         so it always contains the last hints we set for the window manager.
1889         made some event handlers return TRUE instead of FALSE.
1890         the overall code should be much more straight forward now, and the
1891         significant code portions are accompanied by comments now.
1892         (gtk_window_set_hints):
1893         removed requisition argument and made it
1894         fetch the requisition through gtk_widget_get_child_requisition.
1895         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
1896         does that now.
1897         (gtk_window_show):
1898         ensure that the widget is realized before calling 
1899         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
1900         ensure that we got properly size requested and allocated before
1901         realization.
1902         (gtk_window_configure_event):
1903         ignore plain window moves, or reallocate the widget tree through the
1904         resize queue otherwise.
1905         (gtk_window_move_resize):
1906         mostly rewrote this function to figure window manager hints more
1907         reliably, coalesce window moves and resizes to reduce configure events
1908         and do actuall size allocations.
1909
1910 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
1911
1912         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
1913         that have a resize pending, because a redraw is already queued for them.
1914
1915         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
1916         hack to clear resize_widgets.
1917
1918         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
1919         for resize containers prior to size allocation. (this is also a bit
1920         ugly, but avoids side effects for stopped emissions and is thus more
1921         reliable).
1922         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
1923
1924         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
1925         function from gtk_tooltips_expose, as we connect to ::expose_event
1926         *and* ::draw now.
1927
1928 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
1929
1930         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
1931         checks.
1932         (gtk_target_list_unref): Likewise.
1933
1934         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
1935
1936 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
1937
1938         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
1939         guard against division by zero. (Fixes bug #1339)
1940
1941 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
1942
1943         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
1944         Prevent the trivial leak of information of allowing
1945         word motion when the entry is not visible.
1946
1947 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
1948
1949         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
1950         modality to error dialog as well as confirmation dialogs.
1951         (Bug #1803, reported by Rosanna Wing Sze Yuen)
1952
1953 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
1954
1955         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
1956         tree->view_lines.
1957         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
1958
1959         * gtk/Makefile.am (install-data-local): Solaris apparently
1960         has various troubles with ln -f; use rm first instead.
1961         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
1962
1963 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
1964
1965         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
1966         use `cp' followed by `rm' (the `rm' was already there).
1967
1968 July 30, 1999 Elliot Lee <sopwith@redhat.com>
1969         
1970         * configure.in: Fix autoconf warnings about cross compilation by
1971         trying to provide sane defaults for AC_TRY_RUN.
1972         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
1973         put them into $(srcdir) when generated. Also add a dependency of
1974         gtksignal.h on gtkmarshal.h for -j builds. 
1975         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
1976
1977 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
1978
1979         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
1980         GDK_THREADS_{LEAVE,ENTER} pair.
1981         (From Paul Fisher <pnfisher@redhat.com>)
1982
1983 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
1984
1985         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
1986         width and height are always >0 (owen).
1987
1988 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
1989
1990         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
1991         change that assured that a widget's allocated with and height are
1992         always >1, since this breaks *buggy* panel code. unfortunately this
1993         back-breaks the gimp's color selector.
1994
1995         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
1996         allocation is always >0 in width and height, before sending the
1997         configure event; this is a *gross* hack to get the gimp back to work.
1998         
1999         * marked both cases with TODO-1.3
2000
2001 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
2002
2003         * gtk/gtktext.c: Don't display wrap indicators when
2004         text is not editable and word wrap is on.
2005
2006 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
2007
2008         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
2009         option menus here as they are not derived from menu shell, assure that
2010         the option menu has a menu we can add items to.
2011
2012 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
2013
2014         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
2015         width/height to (gint) before calculations and check against < 0 to
2016         avoid guint wraparounds.
2017
2018 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
2019
2020         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
2021         width and height is never zero. sanity check both dimensions against
2022         32767 and issue a warning if the allocation is greater than that.
2023
2024 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
2025
2026         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
2027         to g_main_pending() as well.
2028
2029 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
2030
2031         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
2032         call to g_main_iteration() - since that will regrab
2033         GTK+ lock to process events.
2034
2035 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
2036
2037         * gtk/gtkwindow.c
2038         - Regularize with the rest of GTK+ by making widget->requisition
2039           not reflect the set_usize()
2040         - Always recompute geometry hints, then check if they
2041           changed before sending them to the X server. The
2042           previous checks for changes would fail in a number
2043           of circumstances. 
2044
2045 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
2046
2047         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
2048
2049 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
2050
2051         * gtk/gtkdnd.c:
2052         - Code cleanups
2053         - Instantaneously update on modifier key presses
2054         - Allow cancellation of the drag with Escape.
2055
2056 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
2057
2058         * gtk/testgtk.c (create_handle_box): Set the policy
2059         to auto_shrink - otherwise the appearance is rather
2060         strange when flipping between horizontal and vertical.
2061
2062 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
2063
2064         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
2065         (gtk_window_set_default_size): don't change a value if it's < 0.
2066         queue a resize.
2067
2068 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
2069
2070         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
2071
2072 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
2073
2074         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
2075         add an extra "/" when concating "/" + filename.
2076         (From Matt Grossman <mattg@oz.net>)
2077
2078 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
2079
2080         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
2081         for fg_gc if we set it for drawing pixmap.
2082
2083 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
2084
2085         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
2086         
2087         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
2088         already set, call old engine's destroy function and
2089         unref the old engine.
2090
2091 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
2092
2093         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
2094
2095 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
2096
2097         * gtk/gtkaccelgroup.h: mark certain functions as internal.
2098
2099 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
2100
2101         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
2102         expand behaviour changed.
2103
2104         * gtk/gtklabel.c (gtk_label_set_pattern):
2105         (gtk_label_set_justify):
2106         (gtk_label_set_line_wrap):
2107         don't bother invoking queue_clear, the reallocation does
2108         that for us, always free_words so the upcoming resize will
2109         relayout the label's contents.
2110
2111 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
2112
2113         * applied argument implementation patches from Elena Devdariani
2114         <elena@cogent.ca>.
2115
2116         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
2117         ::space_style, ::relief
2118         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
2119         * gtk/gtkpreview.c: ::expand
2120         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
2121         * gtk/gtknotebook.c: ::homogeneous
2122         * gtk/gtklabel.c: ::wrap
2123         * gtk/gtklist.c: ::selection_mode
2124         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
2125         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
2126         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
2127         * gtk/gtkclist.c: ::sort_type
2128         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
2129         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
2130
2131 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
2132
2133         * gtk/gtkstyle.c: Removed ill-thought-out part of last
2134         comment.
2135
2136 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
2137
2138         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
2139         counting right when we have to attach a new style
2140         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
2141
2142         * gtk/gtkstyle.c: Documented the refcounting
2143         peculularities of gtk_style_attach.
2144
2145 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
2146
2147         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
2148         window types.
2149
2150         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
2151         of GTK_TOPLEVEL for creating the window.
2152
2153 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
2154
2155         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
2156         the last argument (reported by Per Winkvist).
2157         
2158 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
2159
2160         Fixes for invisible XOR lines (Frank Loemker
2161         <floemker@TechFak.Uni-Bielefeld.DE>)
2162         
2163         * gtk/gtkclist.c (gtk_clist_realize): Always use
2164         a non-zero pixel for GDK_XOR.
2165
2166         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
2167         Use GDK_INVERT instead of GDK_XOR.
2168
2169 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
2170
2171         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
2172         signals if h/voffsets differ from adjustment values.
2173         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
2174
2175 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
2176
2177         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
2178         ::selection-done emissions up to the topmost menu shell.
2179
2180 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
2181
2182         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
2183         the user data on the window before destroying it.
2184
2185         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
2186         unrealize handler to take care of destroying 
2187         notebook->panel properly. 
2188         (Bug #1198 - Morten Welinder <terra@diku.dk>)
2189
2190         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
2191         of g_new and g_realloc to stop memory leak. (Actually,
2192         we could just use g_realloc(), but I'm not 100% sure
2193         that is portable).
2194         (Bug #1196 - Morten Welinder <terra@diku.dk>)
2195
2196 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
2197
2198         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
2199
2200         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
2201         for fontsets.
2202
2203         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
2204         with bin/button confusion.
2205
2206 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
2207
2208         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
2209         and show how preselection of radio items is done.
2210
2211 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
2212
2213         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
2214         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
2215         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
2216         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
2217         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
2218         * gtk/gtktable.c (gtk_table_attach): 
2219         * gtk/gtklist.c (gtk_list_insert_items): 
2220         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
2221         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
2222         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
2223         * gtk/gtkbin.c (gtk_bin_add): 
2224         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
2225         * gtk/gtkfixed.c (gtk_fixed_put): 
2226         * gtk/gtklayout.c (gtk_layout_put):
2227         general fixups to container_add logic. always realize child if
2228         child->parent is realized, only map the child and queue a resize
2229         if child and child->parent are both visible.
2230
2231 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
2232
2233         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
2234         instead of gtk_container_foreach to walk and unrealize children, so
2235         composite children get also unrealized.
2236         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
2237         (gtk_widget_map): assert that the widget is visible (basic constrain).
2238         (gtk_widget_real_map): assert that the widget is realized (basic
2239         constrain).
2240
2241 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
2242
2243         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
2244
2245 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
2246
2247         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
2248         file for iso-8859-2 locales.
2249
2250         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
2251
2252 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
2253
2254         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
2255          (Pointed out by andy@rz.uni-karlsruhe.de and others).
2256          Remove some suspicious and useless lines. 
2257
2258 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
2259
2260         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
2261         width,height = 0, 0 to mean - here to edge of window,
2262         instead of -1, -1, since the former is all we support.
2263
2264 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
2265
2266         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
2267         when removing from quit_functions list.
2268
2269 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
2270
2271         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
2272
2273 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
2274
2275         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
2276          When redrawing characters on non-visible entry, use appropriate
2277          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
2278
2279 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
2280
2281         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
2282         from drag coordinates.
2283         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
2284         use drag_dest_cell.
2285
2286         * gtk/gtktree (drag_dest_cell)
2287         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
2288         (Bug #1129)
2289
2290 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
2291
2292         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
2293         translate_* fields.
2294         (gtk_item_factory_finalize): invoke translate_notify independant from
2295         translate_data.
2296         (gtk_item_factory_set_translate_func): likewise.
2297         (gtk_item_factory_destroy): only remove ifactory pointer from those
2298         widgets that belong to us (stupid me).
2299
2300 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
2301
2302         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
2303         rc_style list when lookup succeeeds.
2304
2305 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
2306
2307         * gtk/gtkctree.c (resync_selection): 
2308         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
2309         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
2310         bug.
2311
2312 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
2313
2314         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
2315         Add some missing GDK_THREADS_ENTER()/LEAVE around
2316         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
2317
2318 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
2319
2320         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
2321         rather than emit_by_name.
2322
2323         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
2324         on the widget across multiple signal emissions.
2325         (gtk_editable_delete_text): same here.
2326         (gtk_editable_class_init): set widget_class->activate_signal after
2327         editable_signals[ACTIVATE] has been created.
2328
2329 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
2330
2331         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
2332         position here prematurely -- we might not have the
2333         right ->min_position and ->max_position yet.
2334
2335 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
2336
2337         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
2338         Add error traps so if the other end of the connection
2339         dies, we survive.
2340
2341         * gtk/gtkselection.c (gtk_selection_notify): Clean
2342         up properly when selection property retrieval fails.
2343         
2344         * gtk/gtkselection.c (gtk_selection_request): Correctly
2345         reject SelectionRequest notifies where the handler
2346         returns no data.
2347
2348 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
2349
2350         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
2351         when we've previously highlighted.
2352
2353         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
2354         emit two "drag_leave" signals for Motif drops.
2355
2356         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
2357         back the correct status messages when dropping from
2358         Motif onto a proxy window that is rejecting the
2359         drop.
2360
2361 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
2362
2363         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
2364         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
2365         to compare two argument values. added gtk_arg_to_valueloc() to set a
2366         variable from an arg through its location (pointer).
2367
2368         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
2369         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
2370         as gfloat*, uchars are collected as guchar*, ints are collected as
2371         gint*, etc...
2372
2373 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
2374
2375         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
2376         Include <string.h> instead of <strings.h>.
2377
2378         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
2379         (actually, a lot more duplicate includes occur if
2380          you trace through the sequence of #include's)
2381         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
2382         
2383 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
2384
2385         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
2386         gtk-a-higuti-990322-[0-3]
2387
2388         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
2389         that was causing -DX_LOCALE not to work.
2390
2391         * gtk/gtkrc.c (gtk_rc_init):
2392         X_LOCALE will never have LC_MESSAGES defined
2393
2394 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
2395
2396         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
2397         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
2398
2399         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
2400         left/right as well (gtk-michael-980726-0.patch.gz).
2401
2402         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
2403         for pointer values, use gchar instead of char. fixed uline allocation
2404         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
2405         chunks instead of G_ALLOC_ONLY.
2406         (gtk_label_size_request): always alter requisition as passed and leave
2407         widget->requisition alone.
2408         (gtk_label_set_text): allow NULL strings.
2409         (gtk_label_new): likewise.
2410
2411 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
2412
2413         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
2414
2415 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
2416
2417         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
2418         *and* mapped (i.e. drawable).
2419         (gtk_bin_expose): only send exposes to drawable children.
2420
2421         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
2422         (gtk_box_expose): only send exposes to drawable children.
2423
2424         * gtk/gtkhscale.c (gtk_hscale_draw): 
2425         * gtk/gtkvscale.c (gtk_vscale_draw):
2426         hm, this is an ugly one. we first compute the size of our trough area
2427         here (window relative) and then check intersection with the draw_area
2428         which is parent relative because we're a NO_WINDOW widget, so we need
2429         to offset the trough area by allocation.x and allocation.y before the
2430         check. (this must not be done for the background area though, since
2431         that's already computed parent relative).
2432
2433 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
2434
2435         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
2436         unrealize title buttons.
2437
2438 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
2439
2440         * gtk/gtkclist.c (gtk_clist_column_title_passive)
2441         (gtk_clist_column_title_active): 
2442         only connect/disconnect to GtkWidgetClass::event to block mouse events.
2443
2444         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
2445         zero initialize event, removed superfluous gdk_window_get_pointer call
2446
2447         * gtk/gtklist.c (gtk_list_vertical_timeout)
2448         (gtk_list_horizontal_timeout): removed superfluous
2449         gdk_window_get_pointer call
2450
2451 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
2452
2453         * plugging problems reported by "Bruce Mitchener, Jr."
2454         <bruce@puremagic.com> due to a purify session.
2455
2456         * gtk/gtkstyle.c:
2457         (gtk_style_ref): 
2458         (gtk_style_unref): assert ref_count to be > 0.
2459
2460         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
2461         the requisition.
2462         (gtk_clist_set_shift): likewise.
2463
2464         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
2465         adjustments.
2466
2467         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
2468         event before sending it and set send_event to TRUE (which needs to
2469         be done for *all* synthesized events).
2470         (gtk_list_vertical_timeout): likewise.
2471
2472         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
2473         leaks.
2474
2475         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
2476         to TRUE when synthesizing events.
2477
2478 [ *** end of merges from 1.2 *** ]      
2479         
2480 1999-11-21  Tor Lillqvist  <tml@iki.fi>
2481
2482         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
2483         (or copied from gdkconfig.h.win32 on Win32, sigh).
2484
2485         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
2486
2487         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
2488
2489         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
2490
2491         * gdk/gdkconfig.h.win32: New file.
2492
2493         * gdk/win32/makefile.cygwin: Build just a static archive here.
2494
2495         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
2496         for the DLL from the static archive built above.
2497
2498         * gdk/gdk.def: Moved here from the win32 subdirectory.
2499
2500         * gdk/win32/*: Adapt for the changed private struct organisation.
2501
2502         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
2503
2504 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
2505
2506         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
2507         for wheel mice (buttons 4 and 5).
2508
2509 1999-11-18  Tor Lillqvist  <tml@iki.fi>
2510
2511         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
2512         drawables use just the pixel field in the foreground and
2513         background GdkColor of the GdkGC.
2514
2515         gdk_gc_set_{fore,back}ground() are called in the GIMP with
2516         GdkColors containing uninitialized (red,green,blue) fields, and
2517         just the pixel field filled in, and furthermore in the
2518         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
2519         It thus turns out that we really don't need to have the full
2520         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
2521         it later to have just the pixel values.
2522
2523 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
2524
2525         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
2526
2527 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
2528
2529         * docs/gtkfaq.sgml: threads example from Erik Mouw.
2530         New question on GtkLabel background colors.
2531
2532         * docs/gtk_tut.sgml:
2533           - Correct the example code callback
2534             function definitions.
2535           - Update the gtkdial example code, from Frans van Schaik.
2536           - Update setselection.c to current API.
2537
2538         * examples/Makefile examples/*/*.c: Update to code
2539         listed in tutorial.
2540
2541 1999-11-10  Tor Lillqvist  <tml@iki.fi>
2542
2543         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
2544         subrange table (from the "Developing International Software for
2545         WIndows 95 and Windows NT" book) was missing the Hangul syllable
2546         block... Get the loaded font's charset correctly.
2547
2548         (Note that this, and the other *-win32.c files, still really are
2549         the old ones, the win32 subdirectory is not ready for compilation
2550         yet after the reorg.)
2551
2552 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
2553
2554         * gtk/gtkclist.c: Fix off-by-one bug in parameter
2555         check.
2556
2557 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
2558
2559         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
2560         on results of XQueryDeviceState().
2561
2562 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
2563
2564         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
2565         we need to accesss only ->children. We need an accessor
2566         for the children.
2567
2568         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
2569         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
2570         to get rid of gdkx.h include.
2571         
2572         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
2573         and random references to 'None'.
2574
2575         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
2576         Get rid of unused #include <gdk/gdkx.h>
2577
2578         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
2579         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
2580         gdkconfig.h.
2581
2582 1999-11-08  Tor Lillqvist  <tml@iki.fi>
2583
2584         * gdk/win32/gdkdraw.c
2585         * gdk/win32/gdkfont.c
2586         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
2587         following yesterday's changes. (Unrelated to Owen's reorg.)
2588
2589 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
2590
2591         * gdk/x11/gdkinput-gxi.c: Add missing include,
2592           fix GdkWindowPrivate => GdkDrawablePrivate.
2593
2594         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
2595
2596         * gdk/x11/Makefile.am (xinput_sources): Add missing
2597         backslash to fix building with --with-xinput=none
2598
2599 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
2600
2601         Move all X specific code into the x11/ directory.
2602         Aside from shuffling things around, did the following:
2603
2604        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
2605          gdk_arg_context_* - a simple argument parsing system
2606          in the style of popt.
2607
2608        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
2609          gdk/x11/gdkprivate-x11.h:
2610          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
2611          add ->klass and ->klass_data fields. The klass_data
2612          field points to an auxilliary structure that is
2613          windowing system dependent.
2614
2615        * gdk/gdkfont.c: Make most of the measurement functions
2616          simply wrappers around gdk_text_extents().
2617
2618        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
2619          _gdk_font_strlen() function that hides the weird
2620          behavior in gtk+-1.[02] where a string is interpreted
2621          differently for 8-bit and 16-bit fonts.
2622
2623        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
2624          to store common code for synthesizing double/triple
2625          press events.
2626         
2627        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
2628          Make all the function that modify an existing GC
2629          simply wrappers around gdk_gc_set_values().
2630          
2631        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
2632          for throwing out later.
2633
2634        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
2635          GdkImagePrivate and GdkColormapPrivate to have a
2636          windowing system dependent part (GdkFontPrivateX etc.)
2637          that "derives" from the system-independent part.
2638
2639        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
2640          Got rid of the included-source-files for XInput in
2641          favor of automake conditionals. (Which didn't exist
2642          when XInput support was originally added.)
2643
2644        * gdk/gdkrgb.c: Remove the visual id from the debugging
2645          statements since that is X11 specific; print out
2646          type/depth info instead.
2647          
2648
2649 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
2650
2651         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
2652         loading duplicates of hashed fonts.
2653
2654         * gdk/gdk.c (gdk_keysym_convert_case): rename
2655         gdk_XConvertCase to gdk_keysym_convert_case, allow
2656         results to be NULL in the GTK+ style.
2657
2658         * gdk/gdkcompat.h: Started compatibility header
2659         for renames.
2660
2661 1999-11-07  Tor Lillqvist  <tml@iki.fi>
2662
2663         * gdk/win32/gdkprivate.h: New font private structures, related to
2664         fontsets.
2665
2666         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
2667         gdk_font_list_free(). On X11, will just be wrappers to
2668         XListFonts() and XFreeFontNames(). On Win32, the code previously
2669         in gtkfontsel.c is now here.
2670
2671         New function gdk_font_xlfd_create(). On X11 will get the FONT
2672         property of the font (for GDK_FONT_FONTs), or call
2673         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
2674         builds a XLFD style name from the font information in the LOGFONT
2675         struct(s).
2676
2677         New function gdk_font_xlfd_free(), which correspondingly frees the
2678         string returned by gdk_font_xlfd_create().
2679
2680         Implement fontsets on Win32. Add a function that iterates over a
2681         wide char string and calls a callback function for each substring
2682         of wide chars from the same Unicode subrange (and thus probably
2683         available in the same real font).
2684
2685         Improve the XLFD emulation a bit.
2686
2687         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
2688
2689         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
2690         Beta3, WM_IME_CHAR messages don't seem to contain the composed
2691         multi-byte char as with the Active IMM on Win9x. Oh well, handle
2692         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
2693         ImmGetCompositionStringW() to get the composed Unicode chars.
2694
2695         * gdk/win32/gdkgc.c
2696         * gdk/win32/gdkdraw.c: Changes needed because of the font private
2697         struct changes.
2698
2699         * gdk/win32/gdk.def: Add the new functions.
2700
2701 1999-11-04  Tor Lillqvist  <tml@iki.fi>
2702
2703         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
2704         get the Platform SDK to get <dimm.h>.
2705
2706         * gdk/win32/gdkevents.c: More event handling fixes and
2707         simplification. Never generate motion events with is_hint true. We
2708         used to do that on bogus grounds earlier. Windows sends
2709         WM_MOUSEMOVE messages on button events even if the mouse hasn't
2710         moved, ignore these.
2711
2712         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
2713
2714         * gdk/win32/gdkglobals.c
2715         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
2716         the TrackMouseEvent function, and use it.
2717
2718         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
2719         char before calling WideCharToMultiByte in order to get a string
2720         for the window title.
2721
2722         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
2723
2724         * gdk/win32/gdk.def: Remove obsolete functions.
2725
2726         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
2727         /nodefaultlib and /defaultlib switches.
2728
2729         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
2730
2731 1999-10-31  Tor Lillqvist  <tml@iki.fi>
2732
2733         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
2734         EuroSign).
2735
2736         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
2737         same type as GdkWChar, especially on Win32.
2738
2739         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
2740
2741         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
2742         before passing to Windows GDI for drawing etc. Convert to the
2743         system default codepage before passing to Windows as window
2744         titles.
2745
2746         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
2747         support changing input locale on the fly.
2748
2749         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
2750         on-the-fly changes. Convert incoming characters from the current
2751         codepage to Unicode (and then to a UTF-8 multi-byte string) based
2752         on the current input language. Use keysym<->Unicode mapping tables
2753         and functions borrowed from xterm sources.
2754
2755         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
2756         editions of Win9x, use the ActiveX-based Active IMM (Input Method
2757         Manager) if available. IMEs and the Active IMM are available under
2758         the disguise of Chinese, Korean and Japanese support for IE and
2759         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
2760         support is present in all editions (as long as you install it).
2761
2762         Call DispatchMessage from gdk_events_queue() (and thus
2763         gdk_WindowProc()), instead of duplicating the code in
2764         gdk_WindowProc().
2765
2766         Reworked the grab handling and propagation code, factored out
2767         duplicated code snippets into separate functions. Other cleanups,
2768         too.
2769
2770         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
2771         the <dimm.h> header describing the Active IMM.
2772
2773         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
2774         just do the same as for "single" fonts.
2775
2776         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
2777         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
2778         the new keysyms from gdkkeysyms.h.
2779
2780         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
2781         fontset, so that gtkentry uses wide characters.
2782
2783         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
2784         GTk+'s system directory "gtk+", not "gtk".
2785
2786 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
2787
2788         * docs/gtkfaq.sgml: FAQ update
2789
2790 1999-10-21  Tor Lillqvist  <tml@iki.fi>
2791
2792         * gdk/win32/gdkprivate.h: Add more font private data.
2793
2794         * gdk/win32/gdkfont.c
2795         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
2796         fonts and strings. Now works much better. You still have to
2797         have a correct font selected, though. No fontset emulation yet.
2798
2799 1999-10-19  Tor Lillqvist  <tml@iki.fi>
2800
2801         * gtk/maketypes.awk: Use G_OS_WIN32.
2802
2803         * gtk/gtk.def: Add some missing entry points. Also some non-public
2804         ones, but PyGTK porter claims to need them.
2805
2806         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
2807         built-in type generation.
2808
2809 1999-10-14  Tor Lillqvist  <tml@iki.fi>
2810
2811         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
2812         GDK_FONT_FONT fonts (which is all we have for now, we don't
2813         emulate fontsets). The X11 version uses plain XDrawString in that
2814         case, too. The string passed to gdk_draw_text_wc seems to be in
2815         fact (at least, when used by gtkentry and gtktext) either in a
2816         single-byte charset, or a DBCS. Not Unicode.
2817
2818         This fixes the problem in gtkfontsel, where even if you had
2819         selected a font with a non-Latin1 charset (windows-greek, for
2820         instance), the preview still used Latin-1 glyphs.
2821
2822         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
2823         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
2824         (gdk_font_load): Recognize the demibold etc weights, even if we
2825         don't have the corresponding constants in the headers.
2826         (gdk_font_hash_insert): Use same hash mechanism as in the X11
2827         version. Should save font resources a bit, when we don't have
2828         multiple HFONTs for the same font.
2829
2830         * gdk/win32/gdkprivate.h: Add the names field as in the X11
2831         version.
2832
2833 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
2834
2835         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
2836         X values
2837
2838 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
2839
2840         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
2841         layout support (as mentioned on
2842         http://www.jcinteractive.com/gnome-ui/software/widgets/)
2843
2844 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
2845
2846         * gtk/fnmatch.c
2847         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
2848
2849 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
2850
2851         * configure.in (ALL_LINGUAS): Added Galician (gl)
2852
2853 1999-10-05  Tor Lillqvist  <tml@iki.fi>
2854
2855         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
2856
2857         * gdk/win32/gdkcompat.c: New file, actually provide an
2858         implementation for the deprecated functions. (Just temporarily.)
2859
2860         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
2861
2862         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
2863
2864         * gdk/win32/gdk.def gtk/gtk.def: Updates.
2865
2866 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
2867
2868         * configure.in: Added "uk" to ALL_LINGUAS.
2869         
2870 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
2871
2872         * configure.in: correct checking for BeOS check
2873
2874         * gdk/gdktypes.h
2875         * gtk/fnmatch.c
2876         * gtk/gtkfilesel.c
2877         * gtk/gtkitemfactory.c
2878         * gtk/gtkmain.[ch]
2879         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
2880
2881 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
2882
2883         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
2884         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
2885         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
2886         by Bulgarian). 
2887
2888 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
2889
2890         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
2891         Fix a reference to window_private->destroyed.   
2892
2893         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
2894         (ugly) setting of an internal GdkWindow member to use
2895         a _slightly_ cleaner macro.
2896
2897         * gdk/gdkprivate.h: Split GdkWindowPrivate into
2898         GdkDrawablePrivate and GdkWindowPrivate.
2899         Add extra macros for accessing GDK_DRAWABLE_ components.
2900
2901         * *.[ch]: Massive adjustments for the above, use the
2902         new macros in a lot of places.
2903
2904 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
2905
2906         * gdk/gdktypes.h: Make GdkDrawable the base type,
2907         not GdkWindow.
2908
2909 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
2910
2911         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
2912
2913 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
2914
2915         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
2916
2917 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
2918
2919         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
2920         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
2921
2922         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
2923
2924         * docs/gtk-config.1: Now autogenerated.
2925         * docs/Changes-1.4.txt: started
2926         
2927 1999-10-03  Tor Lillqvist  <tml@iki.fi>
2928
2929         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
2930         to #ifdef also here.
2931
2932         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
2933         Owen did to the X11 backend.
2934
2935         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
2936         ScrollWindowEx when blitting inside a window, it can't be correct
2937         in the general case.
2938
2939         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
2940         WM_GETMINMAXINFO is easier.
2941
2942         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
2943         depth equal to the bitspixel value, not the visual's depth.
2944
2945         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
2946         to 24 even if the bitspixel value is 32.
2947
2948         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
2949         need to check for depth==32 when bpp==32, depth will always be 24.
2950
2951 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
2952
2953         * docs/Changes-1.4.txt: Started
2954         
2955         * gtk/Makefile.am (gdk_headers): Include all the new headers.
2956
2957         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
2958         
2959         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
2960         into C file.
2961         
2962         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
2963         header to gdkinputprivate.h.
2964
2965         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
2966         unused since before 1.2.
2967
2968 1999-09-30  Tor Lillqvist  <tml@iki.fi>
2969
2970         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
2971         expand possible hex escapes in the font family (put there by
2972         logfont_to_xlfd if the font name isn't a legal XLFD font family,
2973         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
2974         On Win32, add hex escapes here, too.
2975
2976 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
2977
2978         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
2979         to #ifdef GDK_WINDOWING_X11.
2980
2981 [ Merges from gtk-1-2 ]
2982
2983 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
2984
2985         * configure.in: fixed "GNU Make" check to pass with new make version
2986         3.77.95.
2987
2988 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
2989
2990         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
2991         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
2992         AM_PATH_GTK() macros don't get confused by the -pre1.
2993
2994 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
2995
2996         * configure.in (REBUILD): Change check for perl5
2997           to check explicitely for v >= 5.002. (5.001
2998           does not work with our scripts.)
2999
3000 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
3001
3002         * configure.in: evaluate $PERL for the perl version check. added
3003         --disable-rebuilds to give the user an option to completely disable
3004         any source autogeneration rules.
3005
3006 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
3007
3008         * configure.in: evaluate $ac_make when checking for GNU Make.
3009
3010 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
3011
3012         * docs/Makefile.am: added generation.txt.
3013
3014         * Makefile.am: require automake 1.4, build README from README.in and
3015         INSTALL from INSTALL.in in dist-hook.
3016         
3017         * README.in:
3018         * INSTALL.in: new files to autogenerate README and INSTALL from.
3019
3020         * configure.in: figure whether we have GNU Make
3021
3022         * docs/generation.txt: minor additions/corrections.
3023
3024 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
3025
3026         * docs/gtkfaq.sgml: FAQ Update
3027
3028 July 30, 1999 Elliot Lee <sopwith@redhat.com>
3029         
3030         * configure.in: Fix autoconf warnings about cross compilation by
3031         trying to provide sane defaults for AC_TRY_RUN.
3032
3033 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
3034
3035         * ltconfig
3036         * ltmain.sh: upgrade to libtool 1.3.3
3037
3038 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
3039
3040         * INSTALL: Indicate that the --with-glib= configure
3041         time flag is unsupported.
3042
3043 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
3044
3045         * docs/generation.txt: Added a file that gives
3046         documenation about the autogeneration process for
3047         various autogenerated files.
3048         
3049 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
3050
3051         * configure.in (LIBS): Look for libgmodule in the
3052         right location.
3053
3054 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
3055
3056         * docs/gtk_tut.sgml: Removed references to
3057         code examples in my directory on gtk.org as
3058         they should all be in the tutorial now.
3059
3060         * docs/gtk_tut.sgml: Added sources for dial-test
3061         and scribble-xinput programs that were previously
3062         missing.
3063
3064 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
3065
3066         * TODO: Added entry about menu keyboard navigation, removed
3067         some finished items.
3068
3069 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
3070
3071         * acinclude.m4: Standardize on func_dgettext
3072         not func_gettext, so that the checks for dgettext
3073         actually are paid attention to.
3074
3075 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
3076
3077         * configure.in (LIBS): Add $INTLLIBS into $LIBS
3078         directly, rather than repeating the checks for
3079         gettext.
3080
3081         * INSTALL: Added information about gettext and
3082         NLS support.
3083
3084         * acinclude.m4 (LIBM): Check for dgettext, not
3085         just gettext. This should hopefully fix things wrt
3086         systems with old versions of GNU gettext installed.
3087
3088 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
3089
3090         * configure.in (LIBS): Look for libgmodule in the
3091         right location.
3092
3093 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
3094
3095         * autogen.sh: add --enable-maintainer-mode
3096
3097         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
3098
3099 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
3100
3101         * docs/gtk-config.1.in:
3102           docs/Makefile.am:
3103           configure.in: gtk-config is now generated.
3104
3105         * docs/gtk-config.1: Removed, now generated.
3106
3107 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
3108
3109         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
3110         handle CreateNotify itself, still put out a debuging message for
3111         --gdk-debug=events. made the ReparentNotify debugging message more
3112         verbose.
3113         wrap xcoords translation for ConfigureEvents into an error trap,
3114         a destroy event may already be pending, and in that case, the
3115         actuall coordinate values are not at all critical.
3116
3117 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
3118
3119         * gdk/gdkcc.c: Stop leaking the color_hash all over
3120         the place. Simplify and improve the logic.
3121
3122 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
3123
3124         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
3125         for prototypes and function implementations consistent (reported
3126         by Tomas Ogren).
3127
3128 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
3129
3130         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
3131         send_event set in debugging output.
3132         (gdk_compress_exposures): default initialize the event so we don't
3133         operate on bogus values (namely send_event).
3134
3135 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
3136
3137         * gdk/gdkwindow.c: When we receive an unexpected
3138         destroy notify on one of our windows, don't just
3139         warn about it, also mark our windows as destroyed.
3140
3141 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
3142
3143         * gdk/gdkfont.c (gdk_font_hash_insert): Add
3144           name => font and name => fontset hashes. The 
3145           name => fontset hash is a _big_ win since we
3146           weren't previously caching fontsets at all and loading
3147           fontsets is expensive. The name => font hash
3148           is less of a win, but it does save us from doing
3149           repeated XQueryFont calls on the same font.
3150
3151         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
3152           list so we can remove font/fontset from hash.
3153
3154 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
3155
3156         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
3157           and slightly confusing test. [ XInternAtom (,,TRUE)
3158           will never return None ].
3159
3160 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
3161
3162         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
3163           gdk/gdkwindow.c (gdk_window_set_hints):
3164
3165         Don't omit setting the properties if flags == 0 -
3166         there may be an existing set of properties there
3167         already. (Very old bug. Would it be better to
3168         delete the property instead?)
3169
3170         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
3171           spelling error in comment.
3172
3173 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
3174
3175         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
3176           to avoid stomping over gdk_error_warnings.
3177
3178         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
3179           as (bits_per_pixel + 7) / 8. This gives the same
3180           result as before for multiples of 8, but actually
3181           a "reasonable" value for 1bit or 4bit displays.
3182
3183 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
3184
3185         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
3186         GNU Make.
3187
3188 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
3189
3190         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
3191         discarding configure events.
3192
3193 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
3194
3195         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
3196         refcount is greater than zero.
3197
3198         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
3199
3200         * gdk/gdkfont.c (gdk_font_unref): Likewise.
3201
3202         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
3203
3204         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
3205
3206 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
3207
3208         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
3209         that format 32 => sizeof(item) == 4. It really is
3210         sizeof(long).
3211
3212 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
3213
3214         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
3215         core dump at all on X IO errors, only core dump
3216         if --enable-debug for X errors.
3217
3218 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
3219
3220         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
3221         unknown window:" message. disabled ConfigureNotify discarding code,
3222         because it led to events being processed out of order.
3223
3224 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
3225
3226         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
3227
3228         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
3229         we export this function, supress error warnings and don't reset the
3230         error code in the first half of this function.
3231
3232         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
3233         code (instead of just -1) so gdk_error_trap_pop() reveals something
3234         actually informative about the error that happened.
3235
3236         * gdk/*.c:
3237         don't rely on gdk_error_code being -1 if an error occoured, but just
3238         gdk_error_code != 0.
3239
3240 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
3241
3242         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
3243         pointer *before* invoking the filter function, so we at least don't
3244         crash if a filter is removed that is currently executed. window filters
3245         *really* need to be made truely reentrant at some point.
3246
3247 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
3248
3249         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
3250         PropertyNotify debug messages.
3251
3252 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
3253         
3254         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
3255         
3256         * gdk/gdkim.c: Fix cut-and-paste errors for 
3257         x/y and PreeditAttributes/StatusAttributes.
3258
3259 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
3260
3261         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
3262         G_MAXINT to 2^16 to alleviate overflow problems in
3263         various window managers.
3264
3265 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
3266
3267         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
3268         for fontsets.
3269
3270 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
3271
3272         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
3273         Initialize size_hints.x and size_hints.y because kwm
3274         brokenly pays attention to them.
3275         (Bug #1181 -  Lars Heete <hel@admin.de>)
3276
3277 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
3278
3279         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
3280         return value of gdk_list_visuals(). 
3281         (Bug #1193 - Morten Welinder <terra@diku.dk>)
3282
3283 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
3284
3285         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
3286         XSetIMValues to (void *) when comparing to NULL, to workaround
3287         the problem of some compilers barfing since older X headers don't
3288         have the prototype for it.
3289
3290 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
3291
3292         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
3293         for pseudocolor where colormap->colors was double
3294         allocated.
3295
3296         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
3297         color value in the hash table with the pixel filled
3298         in so when we do later hash table lookups, the color
3299         value is correct.
3300         
3301 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
3302
3303         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
3304         making the call
3305
3306 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
3307
3308         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
3309         pointed out by Morten Welinder <terra@diku.dk>.
3310
3311 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
3312
3313         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
3314           default filter from the list
3315
3316 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
3317
3318         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
3319           default filter from the list
3320
3321 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
3322
3323         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
3324
3325         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
3326         g_strdup_printf instead of calcing the length separately
3327
3328 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
3329
3330         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
3331         that we don't do in many other places. (Fixing duplicate 
3332         #include of config.h)
3333
3334         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
3335         Otherwise, #ifndef XINPUT_NONE check in the latter
3336         doesn't work. (Bug #546)
3337
3338 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
3339
3340         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
3341         "None" case insensitive.
3342
3343 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
3344
3345         * gdk/gdkselection.c: 
3346         Add error traps so if the other end of the connection
3347         dies, we survive.
3348
3349 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
3350
3351         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
3352         dest_xid field into two fields - one for the window
3353         to send in messages, one to indicate the last looked
3354         up window for caching purposes. This is needed, so
3355         that Leave messages get the correct window.
3356
3357 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
3358
3359         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
3360         Fix warning created by people mucking around
3361         with the gsource API.
3362
3363         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
3364         Change mapping between GIOCondition and GdkInputCondition
3365         to match the way the Linux kernel does it. This should
3366         fix problems where closed pipes were no longer signalling
3367         GDK_INPUT_READ on systems with a native poll().
3368
3369 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
3370
3371         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
3372         explicitly for the string "None" - it is in the XPM
3373         spec and some servers treat unknown colors in odd ways
3374         (like asking the user!)
3375
3376 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
3377
3378         * gdk/gdkevents.c: made "->" into a "." of previous change so
3379         it compiles
3380
3381 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
3382
3383         * gdk/gdkevents.c (gdk_compress_exposures): Set the
3384         window field of the event structure before calling
3385         user filters.
3386
3387 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3388
3389         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
3390         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
3391
3392 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
3393
3394         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
3395         intermediate text property - prevents major memory
3396         leak when gdk_use_mb.
3397         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
3398
3399 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
3400
3401         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
3402         gtk-a-higuti-990322-[0-3]
3403
3404         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
3405         sizeof(wchar_t) != sizeof (GdkWChar)
3406
3407         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
3408         that was causing -DX_LOCALE not to work.
3409
3410         * gtk/gtkrc.c (gtk_rc_init):
3411         X_LOCALE will never have LC_MESSAGES defined
3412
3413         * gdk/gdk.c (gdk_init_check):
3414         Remove --xim-preedit and --xim-status from argv properly.
3415
3416         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
3417         that the client window is present on the X server
3418         before we pass it to the input method.
3419
3420 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
3421
3422         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
3423         if --display is specified on the command line, than
3424         the drag window will not be created on that display.
3425         
3426 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
3427
3428         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
3429         lookups with only_if_exists == TRUE were inserting
3430         bogus values into the atom cache.
3431
3432 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
3433
3434         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
3435         then reset it to NULL.
3436
3437         * gdk/gdkcolor.c:
3438         (gdk_colors_free): 
3439         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
3440         key for g_hash_table_remove() in both functions, this prevents us
3441         from accessing possibly uninitialized portions of a GdkColor structure
3442         where we are only interested in its pixel value.
3443
3444 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
3445
3446         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
3447         font hash table, if we have a GdkFontPrivate entry for this font
3448         already, simply increment its reference count, provided by Olaf Dietsche
3449         <olaf.dietsche+list.gtk@netcologne.de>.
3450
3451 1999-09-21  Tor Lillqvist  <tml@iki.fi>
3452
3453         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
3454         just to be sure.
3455
3456         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
3457         unused variables, leftovers from the X11 version.
3458
3459         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
3460
3461         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
3462         downcase fields on X11.
3463
3464 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
3465         
3466         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
3467         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
3468
3469 1999-09-17  Tor Lillqvist  <tml@iki.fi>
3470
3471         * gdk/win32/gdk.def: Add gdk_threads_mutex.
3472
3473         * gtk/makefile.msc: Correct path to libintl.
3474
3475         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
3476         use of gint vs. int, and gint vs. gboolean in headers and
3477         definitions. Use GtkType for the *_get_type functions. Note that
3478         these changes preserve binary compatibility.
3479
3480         * gdk/gdk.c
3481         * gdk/win32/gdk.c
3482         * gdk/gdk.h: Fix inconsistencies: gint vs int.
3483
3484         * gtk/gtkmain.c
3485         * gtk/gtkclist.c
3486         * gtk/gtkmenufactory.c
3487         * gtk/gtknotebook.c
3488         * gtk/gtkwidget.c: Fix inconsistencies, also gint
3489         vs. gboolean.
3490
3491         * gtk/gtkcolorsel.[ch]
3492         * gtk/gtkcombo.[ch]
3493         * gtk/gtkdrawingarea.[ch]
3494         * gtk/gtkgamma.[ch]
3495         * gtk/gtkhandlebox.[ch]
3496         * gtk/gtkhpaned.[ch]
3497         * gtk/gtkhruler.[ch]
3498         * gtk/gtkplug.[ch]
3499         * gtk/gtkpreview.[ch]
3500         * gtk/gtkruler.[ch]
3501         * gtk/gtksocket.[ch]
3502         * gtk/gtkstatusbar.[ch]
3503         * gtk/gtktoolbar.[ch]
3504         * gtk/gtkvbbox.[ch]
3505         * gtk/gtkvpaned.[ch]
3506         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
3507         functions.
3508
3509         * gtk/gtkgamma.h: Fix bug, missing () in call of
3510         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
3511
3512 1999-09-14  Tor Lillqvist  <tml@iki.fi>
3513
3514         * gdk/gdkcolor.c (gdk_colormap_new)
3515         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
3516         colormap->colors was allocated twice.
3517
3518         * gdk/win32/gdk.c: Remove some unused stuff.
3519
3520         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
3521         colormap.
3522
3523         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
3524         * gtk/gtklabel.h (gtk_label_get_type)
3525         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
3526         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
3527         in a couple of places, not guint.
3528
3529 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
3530
3531         * configure.in,po/et.po: added Estonian language file
3532
3533 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
3534
3535         * configure.in,po/da.po: added Danish file
3536
3537 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
3538
3539         * docs/gtkfaq.sgml: Minor FAQ Update
3540
3541 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
3542
3543         * docs/gtkfaq.sgml: FAQ update
3544
3545 1999-08-27  Tor Lillqvist  <tml@iki.fi>
3546
3547         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
3548         way to get window contents continually refreshed while resizing. I
3549         didn't like the effects myself, so it's not on by default.
3550
3551         * gdk/win32/gdkprivate.h: New flag variable
3552         gdk_event_func_from_window_proc, FALSE by default.
3553
3554         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
3555         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
3556         are passed --gdk-event-func-from-window-proc.
3557
3558         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
3559         and we have am event_func, call it instead of enqueing the event.
3560
3561 1999-08-23  Tor Lillqvist  <tml@iki.fi>
3562
3563         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
3564         Kelley: Set expose_count in GdkEventExposes correctly.
3565
3566         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
3567         MULTIPLE_WINDOW_CLASSES).
3568
3569         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
3570         for bug in NT, apparently NT *does* draw the end pixel, too, in
3571         LineTo with a one-pixel pen, so we don't have to do it ourselves.
3572
3573 1999-08-21  Tor Lillqvist  <tml@iki.fi>
3574
3575         Improvements by Hans Breuer: 
3576
3577         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
3578
3579         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
3580         CS_?REDRAW flags as they cause lots of (late) redraws when "show
3581         window contents while dragging" is turned on. Allocate at least
3582         one unique class for every GdkWindowType. If support for single
3583         window-specific icons is ever needed (eg. Dialog specific), every
3584         such window should get its own class.
3585
3586 1999-08-19  Tor Lillqvist  <tml@iki.fi>
3587
3588         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
3589         error that caused crashes.
3590
3591 1999-08-17  Tor Lillqvist  <tml@iki.fi>
3592
3593         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
3594         window, use ScrollWindowEx, and call UpdateWindow. This prevents
3595         bugs when for instance part of the window was outside the
3596         display. Thanks to Philippe Colantoni for finding and fixing this.
3597
3598 1999-08-16  Tor Lillqvist  <tml@iki.fi>
3599
3600         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
3601         endpoint calculations which were totally wrong. (A little RTFMing
3602         helps a lot ;-)
3603
3604         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
3605         from a separate directory, not from gettext, because of licensing
3606         issues (we want to use the LGPL version).
3607
3608         * README.win32: Mention the intl from glibc vs from gettext issue.
3609
3610 1999-08-13  Tor Lillqvist  <tml@iki.fi>
3611
3612         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
3613         in the key event handling: Now AltGr chars work again. Also,
3614         now Alt-digits are passed up as well as Control-digits.
3615         Pass keypad plus and minus as normal plus and minus.
3616
3617 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
3618
3619         * docs/gtkfaq.sgml: FAQ Update
3620
3621 1999-07-25  Tor Lillqvist  <tml@iki.fi>
3622
3623         * README.win32
3624         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
3625         the Wintab SDK.
3626
3627         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
3628         OK, but getting closer. Guard against bogus tilt data from Wacom
3629         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
3630         enable easier building without Wintab.
3631
3632         * gdk/win32/gdkinput.h
3633         * gdk/win32/gdkevents.c 
3634         * gdk/win32/gdkwindow.c: Minor changes related related to above.
3635         
3636         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
3637         code. As we have just one visual on Win32, no sense to have it in a
3638         table, and no need for the hash table.
3639
3640         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
3641         better on white background.
3642
3643 1999-07-21  Tor Lillqvist  <tml@iki.fi>
3644
3645         * README.win32: Update gcc build instructions. Mention gettext is
3646         GPL.
3647
3648         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
3649         supported cursor size with GetSystemMetrics.
3650
3651         * gdk/win32/gdkfont.c
3652         * gtk/gtkfontsel.c: Guard against some font weight and charset
3653         symbols being undefined (in mingw32 headers).
3654
3655         * gdk/win32/makefile.cygwin
3656         * gtk/makefile.cygwin
3657         * gtk/gtkthemes.c: No longer need to have differently named
3658         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
3659
3660 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
3661
3662         * docs/gtkfaq.sgml: Long awaited FAQ update.
3663
3664 1999-07-15  Tor Lillqvist  <tml@iki.fi>
3665
3666         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
3667         it. Obscure bit manipulation needed.
3668
3669         * gdk/win32/gdkevents.c: Logging.
3670         
3671         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
3672         style (file name include compiler name) for theme engines.
3673
3674 1999-07-13  Tor Lillqvist  <tml@iki.fi>
3675
3676         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
3677
3678         * gdk/win32/gdkevents.c: Fix long-standing bug in key
3679         events. The key.string wasn't zero-terminated, still we strdup'ed
3680         it in gdk_event_copy(). Synthesize crossing events for button
3681         events before possible propagation.
3682
3683         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
3684
3685         * gdk/win32/makefile.cygwin
3686         * gtk/makefile.cygwin: Use new DLL naming style for the
3687         GCC-compiled ones.
3688
3689         * gdk/win32/makefile.msc
3690         * gtk/makefile.msc: Cosmetics mostly.
3691
3692         * gtk/gtk.def: Add missing entry points.
3693
3694         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
3695
3696 1999-07-09  Tor Lillqvist  <tml@iki.fi>
3697
3698         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
3699         or height is zero. Don't print a warning if Pie or Arc fails, they
3700         always fail (?) for very narrow ellipses.
3701
3702         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
3703         the part or the destination window corresponding to source area
3704         outside of the source drawable's boundary.
3705
3706         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
3707         anything if less than two points.
3708
3709         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
3710         return NULL. Gtk cut-and-paste inside a single program works
3711         better this way. (It always gets the clipboard contents from
3712         Windows, not from its own copy, which is cleared anyway. I can't
3713         say I fully understand what happens... Emulating the X selection
3714         and property stuff is a bit of a mess.)
3715
3716         * gdk/win32/gdkevents.c
3717         * gdk/win32/gdkproperty.c: A bit more verbose logging.
3718
3719         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
3720         that never got deleted). Revamp gdk_region_shrink.
3721
3722         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
3723         after use.
3724
3725         * gtk/gtk.def: Add some missing entry points.
3726
3727         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
3728         component.
3729
3730 1999-07-04  Tor Lillqvist  <tml@iki.fi>
3731
3732         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
3733         Control-digits specially.
3734
3735 1999-07-03  Tor Lillqvist  <tml@iki.fi>
3736
3737         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
3738
3739 1999-06-28  Tor Lillqvist  <tml@iki.fi>
3740
3741         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
3742         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
3743         finding this.)
3744
3745 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
3746
3747         * gtk+.spec.in: Corrected some typos in files section.
3748         
3749 1999-06-15  Tor Lillqvist  <tml@iki.fi>
3750
3751         * README.win32: Mention using GNU gettext.
3752         * config.h.win32: Enable NLS stuff.
3753         * gtk/makefile.msc: Use GNU gettext.
3754         * gdk/win32/gdkdnd.c: Minor header reorg.
3755         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
3756         cosmetics.
3757         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
3758         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
3759
3760 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
3761
3762         * acinclude.m4
3763         * config.guess
3764         * config.status
3765         * ltconfig
3766         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
3767
3768 1999-05-30  Tor Lillqvist  <tml@iki.fi>
3769
3770         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
3771         SafeAdjustWindowRectEx. Don't override all calls to
3772         AdjustWindowRectEx by it, but use it only in two places: When
3773         creating a new top-level window and when moving a top-level
3774         window.
3775
3776         Use screen coordinate rectangle, not client rectangle, in
3777         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
3778         when we try to place a window so that the decoration (mainly,
3779         title bar) isn't visible.
3780
3781         These changes fix the bug that showed up for instance as the
3782         GIMP's saved top-level windows moving right and down (by an amount
3783         equal to the window decoration) for each session. This bug showed
3784         up also in testgtk's "Saved Position".
3785
3786         gdk_window_resize also redone a bit.
3787
3788 1999-05-25  Tor Lillqvist  <tml@iki.fi>
3789
3790         * gtk/testgtkrc: Add (commented out) Windows-style theme
3791         include line.
3792
3793         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
3794
3795 1999-05-18  Tor Lillqvist  <tml@iki.fi>
3796
3797         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
3798         gdkx.h to a gdk subdirectory, so that applications can include
3799         these with <gdk/*.h> without trouble.
3800
3801         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
3802         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
3803         have their bitmap destroyed.
3804
3805         * gdk/win32/gdk.def: Add gdk_root_parent.
3806
3807 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
3808
3809         * configure.in
3810           gtk-config.in
3811           ltconfig
3812           ltmain.sh     
3813           gtk/Makefile.am: changes to compile nicely (with xlib) 
3814           on BeOS
3815
3816 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
3817
3818         * acinclude.m4
3819         * config.guess
3820         * config.sub
3821         * ltconfig
3822         * ltmain.sh: upgrade to libtool 1.3
3823
3824 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
3825
3826         * gtk/gtkclist.c:
3827         * gtk/gtkctree.c: merges from gtk-1-2
3828
3829 1999-04-25  Tor Lillqvist  <tml@iki.fi>
3830
3831         Support added for building using a GNU toolchain on Win32,
3832         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
3833
3834         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
3835         * config.h.win32: Changes for gcc.
3836         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
3837         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
3838         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
3839         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
3840         Protect shl stuff unavaiilable with mingw32 headers.
3841         * gdk/win32/gdkevents.c: Fix typo.
3842         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
3843         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
3844         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
3845         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
3846         the mingw32 headers.
3847         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
3848         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
3849         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
3850         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
3851         Test for NATIVE_WIN32, not _MSC_VER.
3852         * gtk/gtkmain.c: No use warning about developer version on Win32,
3853         there aren't any non-developer versions anyhow.
3854         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
3855         * gtk/makefile.msc: Use pthread from another directory. Minor other
3856         changes. 
3857
3858 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
3859
3860         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
3861           default filter from the list
3862
3863 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
3864
3865         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
3866          when gtk_widget_grab_default() is called for a widget that
3867          is not within a GtkWindow.
3868
3869 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
3870
3871         * docs/gtk_tut.sgml, examples/clist.c: use a
3872           scrolled window in the clist example. Minor
3873           tutorial fixes.
3874
3875 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
3876
3877         * docs/gtk_tut.sgml: Style check from David King
3878           <dking@youvegotmail.net>
3879
3880 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
3881
3882         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
3883         compile with unknown value of GDK_WINDOWING
3884
3885 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
3886
3887         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
3888         after the rule is fired.
3889         (install-exec-local): Install gdkconfig.h only if the contents are
3890         different from the currently installed gdkconfig.h.
3891
3892 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
3893
3894         * gdk/Makefile.am (configexecincludedir): Rename from 
3895         configincludedir so that gdkconfig.h will be installed 
3896         as part of `make install-exec'. 
3897
3898 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
3899
3900         * acinclude.m4
3901         * config.guess
3902         * config.sub
3903         * ltconfig
3904         * ltmain.sh: upgrade to libtool 1.2f
3905
3906         * autogen.sh: libtool is not required to autogen gtk+
3907
3908         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
3909         needed)
3910
3911 1999-03-18  Tor Lillqvist  <tml@iki.fi>
3912
3913         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
3914         declaring gdk variables exported/imported from the DLL. New image
3915         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
3916         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
3917         GDK_DRAG_PROTO_OLE2.
3918
3919         * gdk/gdk.h: Merge in Win32 version: Two new functions,
3920         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
3921         declared only for the Win32 version, but could be in the X11
3922         version as well. (Needed for a Xlib-less gdk_imlib.)
3923         gdk_color_hash should have only one parameter. Declare
3924         gdk_threads_mutex with GDKVAR.
3925         
3926         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
3927         just one parameter.
3928
3929         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
3930         per pixel, not bits.
3931
3932         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
3933         Fetch bpp (which means bits-per-pixel here) from another place on
3934         Win32. Accept also depth==32 (which we might get on Win32) with
3935         bpp==32.
3936
3937         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
3938         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
3939         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
3940         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
3941         in the backend-dependent directory, not in the common gdk
3942         directory.
3943
3944         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
3945         headers.
3946
3947 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
3948
3949         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
3950         want to use the Gtk+ devel version (which is true, and yes - even i am
3951         currently working with the 1.2.x branch). so everyone reading this, you
3952         probably want to issue
3953         cvs checkout -r glib-1-2 glib
3954         and
3955         cvs checkout -r gtk-1-2 gtk+
3956         as your next two comands.
3957
3958 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
3959
3960         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
3961         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
3962
3963         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
3964         file. strongly deprecated the GTK_HAVE_* macros, we provide
3965         GTK_CHECK_VERSION() for people that need to check for certain
3966         Gtk+ versions.
3967
3968         * gtk/gtkcompat.h: removed this from CVS.
3969         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
3970         idea right from the start, it just didn't seem like that back then.
3971
3972 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
3973
3974         * merges from gtk-1-2:
3975
3976 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
3977
3978         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
3979         item factory class has been created.
3980         (gtk_item_factory_parse_rc): likewise.
3981
3982         * gtk/gtkmenu.c:
3983         keep proper references for old_active_menu_item.
3984         (gtk_menu_reparent): unset the usize of the new parent,
3985         so the menu can sanely be size requested and we don't get nasty screen
3986         artefacts upon next reparentation.
3987         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
3988         enter notify. only synthesize enter notifies if the pointer really is
3989         inside the event window.
3990         (gtk_menu_popdown): use gtk_menu_shell_deselect().
3991         (gtk_menu_popup): move the background setting stuff into
3992         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
3993
3994         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
3995         gtk_menu_shell_select_item() to select the new item.
3996         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
3997         do the right thing for deselection as well.
3998
3999 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
4000
4001         * gtk/gtkwidget.[hc]:
4002         (gtk_widget_accelerators_locked): return whether a widget's accelerators
4003         are locked.
4004
4005         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
4006         existing accelerators if the widget's accelerators are locked.
4007
4008 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
4009
4010         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
4011
4012         * gtk/gtkmenu.c: truely forward key press and key release events to
4013         the menu widget from the toplevel or tearoff window. we can't simply
4014         connect to that, we need to stop further processing of the events as
4015         well.
4016
4017 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
4018
4019         * gtk/gtkmenu.c:
4020         (gtk_menu_key_press): pass event->keyval, event->state to
4021         gtk_accelerator_valid, instead of event->keyval twice.
4022         refuse to install single letter accelerators for menus that use
4023         single letter shortcuts.
4024
4025         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
4026         gtk_menu_ensure_uline_accel_group().
4027
4028         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
4029         which will always return an uline accel group, made
4030         gtk_menu_get_uline_accel_group() return NULL if the group isn't
4031         yet created.
4032
4033 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
4034
4035         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
4036
4037         * gtk/gtkclist.c (gtk_clist_column_title_passive):
4038         Leave button sensitive, trap  button_press, button_release,
4039         motion_notify, enter_notify and leave_notify events instead.
4040         (gtk_clist_column_title_active): disconnect event handler.
4041         (gtk_clist_drag_data_get): fixed memory leak. Reported by
4042         Guillaume Laurent <glaurent@worldnet.fr>
4043
4044 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
4045
4046         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
4047         width/height mixups.
4048
4049         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
4050         if needed.
4051
4052 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
4053
4054         * gtk/testgtk.c (create_item_factory): unref the item factory after
4055         window's destruction.
4056
4057         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
4058         count on the menu shell around the menu item's activation, since the
4059         signal emission may cause menu shell destruction.
4060
4061         * gtk/gtkitemfactory.c:
4062         the previous code leaked one accel group per menu. we use
4063         gtk_menu_get_uline_accel_group() now to fix that, and with that
4064         also create the underline accelerator group of the menus only if
4065         required (i.e. an underline accelerator has been specified).
4066         (gtk_item_factory_construct):
4067         (gtk_item_factory_create_item): removed code that would create an
4068         extra accel group for the menu (and leak references).
4069         (gtk_item_factory_create_item): adapted the underline accelerator
4070         installation code to properly feature gtk_menu_get_uline_accel_group().
4071
4072         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
4073         menu->accel_group, this may return NULL if the accelerator group
4074         hasn't been set yet.
4075         added gtk_menu_get_uline_accel_group() to retrive the underline
4076         accelerator group of the menu, this will be created on demand
4077         and proper care is taken about its reference count.
4078
4079         * gtk/gtkitemfactory.h:
4080         * gtk/gtkitemfactory.c:
4081         dumped the approach of keeping a widgets by action list on the
4082         factory since the factory<->widget destroy negotiation didn't work
4083         and would be hard to get going at all. instead we keep a list of
4084         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
4085         persistant throughout a program's life time).
4086         also, i removed the static const gchar *key_* variables, and made
4087         them inline strings (they weren't actually used anyways).
4088         (gtk_item_factory_add_item): update ifactory->items.
4089         (gtk_item_factory_destroy): destroy ifactory->items (and remove
4090         the item factory pointer from the remaining ifactory widgets).
4091         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
4092         list to find the widget.
4093         (gtk_item_factory_get_item): new function that works around
4094         gtk_item_factory_get_widget() limitations, this function will only
4095         return menu items, even for <Branch> entries.
4096
4097 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
4098
4099         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
4100         font hash table, if we have a GdkFontPrivate entry for this font
4101         already, simply increment its reference count, provided by Olaf Dietsche
4102         <olaf.dietsche+list.gtk@netcologne.de>.
4103
4104         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
4105         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
4106
4107 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
4108
4109         * gtk/gtkcontainer.c:
4110         (gtk_container_add_with_args):
4111         (gtk_container_addv):
4112         (gtk_container_add): before adding a child to a conatiner, make sure
4113         it is (default) constructed, this is neccessary because under certain
4114         circumstances the child will get relized and mapped immediatedly, in
4115         which case it has to be constructed already.
4116
4117 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
4118
4119         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
4120         values > 1 as TRUE also.
4121
4122 1999-03-16  Tor Lillqvist  <tml@iki.fi>
4123
4124         * README.win32: New file.
4125                 
4126         * configure.in: Check for lstat.
4127
4128         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
4129         completeness.
4130
4131         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
4132
4133         * gtk/gtk.def: Removed CRs.
4134
4135         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
4136         ..\gdk\win32).
4137
4138         * gdk/win32/makefile.msc: Correct upwards relative paths.
4139         
4140 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
4141
4142         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
4143           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
4144           it was connecting a void function to expose_event and the int
4145           returning function to the draw signal
4146
4147 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
4148
4149         * configure.in:
4150         Use correct path to libgmodule.la when ref'ing uninstalled copy
4151         of glib.  (Already in stable branch, Bug #417)
4152
4153 1999-03-15  Tor Lillqvist  <tml@iki.fi>
4154
4155         Win32 merge and general portability stuff:
4156                 
4157         * acconfig.h,configure.in: Check for <sys/time.h>.
4158
4159         * gdk/win32: New directory (actually, been there for a while).
4160         
4161         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
4162         NATIVE_WIN32, and use these. Always case fold on Win32. No
4163         backslashed escapes on native Win32.
4164
4165         * gtk/{gtk.def,makefile.msc}: New files.
4166
4167         * gtk/Makefile.am: Add above new files.
4168         
4169         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
4170         instead of <strings.h>.
4171
4172         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
4173         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
4174         <unistd.h> appropriately.
4175
4176         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
4177         Use ABS() (from <glib.h>) instead of abs().
4178         
4179         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
4180         of gtk (and thus glib) headers, so that WIN32 will be
4181         defined. With MS C, include <direct.h> for mkdir prototype.
4182
4183         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
4184         some casts, needed by MS C.
4185
4186         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
4187         implemented).
4188
4189         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
4190         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
4191         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
4192
4193         * gtk/gtkmain.h: Mark variables for export/import on Win32.
4194                 
4195         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
4196         the event is not a hint, or its window is not the slider. Needed
4197         on Win32, at least.
4198
4199         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
4200         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
4201         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
4202         a subdirectory of the Windows directory as gtk system
4203         configuration directory.
4204
4205         * gtk/gtkselection.c: No chunks on Win32.
4206
4207         * gtk/gtksocket.c: Not implemented on Win32.
4208
4209         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
4210
4211         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
4212
4213         * gtk/maketypes.awk: Declare variables with a macro that expands to
4214         necessary export/import magic in the case of Win32.
4215                 
4216         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
4217
4218 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
4219
4220         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
4221         since those were meant only for gdki18n.h.  
4222         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
4223         for widechar tests.
4224         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
4225
4226 1999-03-13  Tor Lillqvist  <tml@iki.fi>
4227
4228         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
4229         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
4230
4231         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
4232         installed) to CFLAGS.
4233
4234         * gdk/Makefile.am: Add rules for gdkconfig.h.
4235
4236         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
4237         APIs.
4238
4239         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
4240         gdkx.h anyway when compiling for X11.
4241         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
4242         general): Merge in Win32 version.
4243         
4244         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
4245         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
4246         expansion (if we don't have HAVE_PWD_H), allow for drive
4247         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
4248         included code from Craig Setera's port to Win32 (the one that uses
4249         X11, and the cygwin dll), even if it probably will be abandoned.
4250
4251         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
4252         the user entered one herself.  This way one can complete *.h and
4253         don't get matches on any .help files, for instance.
4254         
4255 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
4256
4257         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
4258         font hash table, if we have a GdkFontPrivate entry for this font
4259         already, simply increment its reference count, provided by Olaf Dietsche
4260         <olaf.dietsche+list.gtk@netcologne.de>.
4261
4262         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
4263         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
4264
4265 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
4266
4267         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
4268         the number of calls to gdk_draw_point() (and thus to X) by
4269         clipping the points by hand.
4270
4271         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
4272         the clip parameter.
4273         (gtk_handle_box_paint): Only paint the handle if the expose area
4274         intersects it.
4275
4276 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
4277
4278         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
4279
4280 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
4281
4282         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
4283         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
4284
4285 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
4286
4287         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
4288          textmode (O_TEXT) for OS/2 version.
4289
4290 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
4291
4292         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
4293         GtkSpinButton, "input" and "output", to make the output more flexible.
4294         The user has to provide a mapping between adjustment->value and the
4295         output string (and vice versa, if the spin button is editable). 
4296         See testgtk for examples.
4297
4298 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
4299
4300         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
4301         new one.
4302         
4303         * configure.in: set gtk+ version to 1.3.0.