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