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