]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-6
5069fdf062f5a886a2e2d13b236a5f31b9ba698f
[~andy/gtk] / ChangeLog.pre-2-6
1 Wed May 13 00:53:52 1998  Owen Taylor  <otaylor@gtk.org>
2
3         * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more 
4           GPOINTER_TO_UINT fixes.
5
6         * gtk/gtksignal.c: Include <string.h> for memset.
7
8 Tue May 12 23:10:53 1998  Owen Taylor  <otaylor@gtk.org>
9         (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
10
11         * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h: 
12         Cleanups, comments and the ability to have rulers with 
13         a reversed direction.
14
15 Tue May 12 19:37:55 1998  Owen Taylor  <otaylor@gtk.org>
16
17         * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
18         that Sopwith missed when changing stat => lstat.
19
20 Tue May 12 19:19:29 1998  Owen Taylor  <otaylor@gtk.org>
21
22         * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
23           gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
24         GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
25
26         * gdk/gdk.c: Print sizeof() results
27         as g_print("%ld", (glong)sizeof(foo)), to deal with
28         sizeof() being long on Alpha's.
29
30         * gtk/testgtk.c: include <string.h> for strlen
31
32 Tue May 12 16:56:35 1998  Owen Taylor  <otaylor@gtk.org>
33         (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
34         
35         * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
36         Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
37
38         * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
39
40 Tue May 12 15:16:10 1998  Owen Taylor  <otaylor@gtk.org>
41         (From: Christopher James Lahey <clahey@umich.edu>)
42         
43         * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
44           gtk/testgtk.c:
45
46         Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
47         (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
48         state. Added gtk_toolbar_{set,get}_button_relief, which set/get
49         the default relief for the toolbars buttons. Added an
50         toggle for the toolbar test in testgtk.c.
51
52 Tue May 12 00:24:59 1998  Owen Taylor  <otaylor@gtk.org>
53
54         * docs/gtk-config.1: Rewritten and hopefully improved.
55
56 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
57
58         * docs/Makefile.am
59         * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
60
61 1998-05-11  Federico Mena Quintero  <federico@nuclecu.unam.mx>
62
63         * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
64         GtkPreview's visual and colormap, otherwise things can BadMatch.
65
66         * gtk/testgtk.c (create_color_preview): 
67         (create_gray_preview): Removed pushing/popping of visual/colormap
68         now that GtkPreview does things correctly.
69
70         * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame): 
71         (gtk_color_selection_draw_wheel): Pick the style from the correct
72         place (the colorsel->wheel_area widget) so that the GCs will match
73         with where we are going to paint to.
74
75         * gtk/testgtk.c (create_color_selection): Removed pushing/popping
76         of visual/colormap now that GtkColorSelection does things the
77         right way.
78
79 Mon May 11 21:04:51 1998  Owen Taylor  <otaylor@gtk.org>
80
81         * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
82         previously unused window->need_resize flag to mark if a window's
83         descendents changed size while the window was not visible. In this
84         case, when the window becomes visible, we reallocate everything,
85         since we didn't keep track of what actually changed.
86
87         (Fixes bug where changing the popdown strings of a
88         combo to something of the same length caused them to
89         blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
90
91 Tue May 12 02:31:57 1998  Tim Janik  <timj@gtk.org>
92
93         [security audit by Alan Cox]
94
95         * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
96         exceed maximum assumed size.
97
98         * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
99         not exceed maximum assumed size.
100         (gtk_menu_factory_remove): likewise.
101         (gtk_menu_factory_find_recurse): likewise.
102
103 Mon May 11 23:53:38 1998  Tim Janik  <timj@gtk.org>
104
105         * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
106         GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
107         redrawn if that is still neccessary. don't allow queueing of already
108         destructed objects.
109         (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
110         widgets which are in the queue can be destroyed savely, handle
111         requeueing properly.
112         (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
113         widgets which are in the queue can be destroyed/unrealized savely.
114
115 Mon May 11 17:54:44 BST 1998 Tony Gale  <gale@gtk.org>
116
117         * gtkfaq.sgml: add question on multi-threading,
118           minor URL cleanups.
119
120 Mon May 11 09:56:45 1998  Tim Janik  <timj@gtk.org>
121
122         * configure.in (cflags_set): preserve automake CFLAGS.
123
124         * Makefile.am: fully rename the created libraries to libgtk-1.1.la
125         and libgdk-1.1.la. this means we need to change certain portions of
126         the Makefile.am on major/minor version bumps.
127
128         * ltmain.sh: the -release option is not required anymore.
129         
130         * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
131         of the first argument to be of type GtkObject. unconditionally compile
132         this function. removed __GNUC__ dependancy of the gtk_object_ref and
133         gtk_object_unref macro wrappers for this function.
134
135 Mon May 11 02:31:19 1998  Tim Janik  <timj@gtk.org>
136
137         * gtk/gtkobject.h:
138         * gtk/gtkobject.c:
139         (gtk_object_data_try_key):
140         (gtk_object_data_force_id): these are now macros substituting the old
141         functions. we just use the corresponding g_dataset_* functions for
142         key->id associations. (this is to assure unique key<->id associations).
143
144 1998-05-10  Stefan Jeske  <stefan@gtk.org>
145
146         * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
147         to gboolean.
148
149         * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
150
151 Sat May  9 20:11:20 1998  Owen Taylor  <otaylor@gtk.org>
152
153         * configure.in (LIBS): Try to figure out if this
154         is Digital Unix and we need -std1 to get the
155         right prototypes.
156
157 Sat May  9 16:30:33 BST 1998 Tony Gale  <gale@gtk.org>
158
159         * docs/gtk_tut_it.sgml: update of Italian tutorial
160           translation from Daniele Canazza <dcanazz@tin.it>
161
162 Sat May  9 02:34:41 1998  Tim Janik  <timj@gtk.org>
163
164         * gtk/gtkfeatures.h.in: new file used as template for
165         * gtk/gtkfeatures.h: new file to define macros indicating newly
166         introduced features, such as GTK_HAVE_SIGNAL_INIT.
167
168         * gtk/gtksignal.c:
169         (gtk_signal_emitv_by_name):
170         (gtk_signal_emitv):
171         new functions to emit signals with an already provided parameter set.
172         (provided by Kenneth Albanowski <kjahds@kjahds.com>).
173         (gtk_signal_real_emit): prototype changes, so this functions always
174         gets its parameters and signal structure as arguments.
175         (gtk_signal_emit): provide the signal structure and parameter list for
176         gtk_signal_real_emit.
177         (gtk_signal_emit_by_name): likewise.
178
179 Sat May  9 00:03:12 1998  Tim Janik  <timj@gtk.org>
180
181         * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
182         signal connections through unsetting GTK_CONNECTED.
183         (gtk_signal_handler_insert): reflect the presence of signal connections
184         through setting GTK_CONNECTED.
185         (gtk_signal_real_emit): only check for handler emissions if the object
186         has the GTK_CONNECTED flag set.
187         (gtk_signal_handler_pending): don't check for pending handlers if the
188         GTK_CONNECTED flag is not set for this object.
189
190         * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
191         a GtkObject has signal handler connections.
192
193         * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
194         set for this object call gtk_signal_handlers_destroy().
195         
196         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
197         multiple processing of macro args.
198
199         * gtk/gtktypeutils.c:
200         * gtk/gtkobject.c:
201         * gtk/gtkwidget.c:
202         * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
203
204 Fri May  8 21:31:50 1998  Owen Taylor  <otaylor@gtk.org>
205
206         * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
207         draw-queue when we are done. 
208
209         (gtk_widget_queue_draw/_queu_resize): Always return
210         FALSE and avoid having two idles at the same time.
211         
212 Fri May  8 21:04:00 1998  Owen Taylor  <otaylor@gtk.org>
213
214         * gtk/gtktext.c: Various fixes to make sure cache
215         lines are freed if line_start_cache doesn't point to the
216         beginning of the cache.
217
218 Thu May  7 09:44:22 1998  Owen Taylor  <otaylor@gtk.org>
219
220         * style_set improvements for GtkText and GtkEntry
221
222 Thu May  7 19:03:50 1998  Tim Janik  <timj@gtk.org>
223
224         * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
225         been initialized.
226
227 Thu May  7 12:52:45 1998  Tim Janik  <timj@gtk.org>
228
229         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
230         data chunks through a global object data structure list. unlink
231         object data before invoking its destroy function.
232         (gtk_object_finalize): slight modification to allow usage of object
233         data during object finalization.
234
235 Thu May  7 10:29:24 1998  Tim Janik  <timj@gtk.org>
236
237         * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
238         signal names, e.g. "signal-name" is now an alias for "signal_name".
239         (gtk_signal_handler_new): allocate handlers through a global handler
240         structure list, that's faster than memchunks.
241         (gtk_emission_new): allocate emissions through a global emission
242         structure list, that's faster than memchunks.
243
244 Thu May  7 05:14:19 1998  Tim Janik  <timj@gtk.org>
245
246         * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
247
248         * ltmain.sh: added a new commandline flag -postfix similar to -release,
249         but will immediately change the library name.
250
251         * gdk/Makefile.am:
252         * gtk/Makefile.am: specify -postfix and -version-info
253
254         * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
255         GTK_BINARY_AGE. calculate LT_* variables for libtool.
256
257 1998-05-06  Federico Mena Quintero  <federico@nuclecu.unam.mx>
258
259         * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
260         background (fg_set -> bg_set confusion).
261
262 1998-05-06  Stefan Jeske  <stefan@gtk.org>
263
264         * gtk/testgtk.c (unselect_all): Removed code that caused an
265         endless loop.
266
267 Wed May  6 02:16:34 1998  Tim Janik  <timj@gtk.org>
268
269         * gtk/gtksignal.c: reimplemented the signal storage system to use a
270         linear array rather than a hash table.
271         be carefull *not* to keep any GtkSignal pointers across invokations
272         of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
273         general code cleanups, made all allocations through memchunks.
274         (gtk_signal_lookup): we now do the lookup of signals through a key_id
275         for the signal names to avoid multiple hashing of the signal name on
276         lookups for the several hirarchy levels of an object.
277
278 Tue May  5 19:49:27 1998  Owen Taylor  <otaylor@gtk.org>
279
280         * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
281         to speed things up and remove code duplication.
282
283         Reintegrated buffer overflow patches, and added
284         some extra paranoia.
285         
286 Tue May  5 17:04:14 1998  Owen Taylor  <otaylor@gtk.org>
287
288         * gdk/gdk.c (gdk_event_translate): A guint * was
289         being passed where X expected a Keysym *, and
290         keysyms are long's on Alpha Linux. This was causing
291         segfaults in Xlib, apparently because of alignment.
292         (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
293         
294 Tue May  5 19:11:27 1998  Owen Taylor  <otaylor@gtk.org>
295
296         * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
297         set GDK_EXPOSURE_MASK for DrawingAreas
298
299 Tue May  5 14:32:37 1998  Owen Taylor  <otaylor@gtk.org>
300
301         * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
302         (superceded by RC file reparsing capabilities)
303
304         * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
305         events. (Shouldn't be sent to the InputOnly leader, which
306         it is now by gdk_event_send_clientmessage_toall
307
308         * gtk/testgtk.c: Added extra button to rcfiles test
309         to send out _GDK_READ_RCFILES events.
310         
311 Tue May  5 11:03:00 1998  Owen Taylor  <otaylor@gtk.org>
312
313         * gtk/gtkselection.c (gtk_selection_clear): Fixed
314         reversed conditionals that caused segfault on some
315         platforms.
316
317 Tue May  5 00:44:47 1998  Owen Taylor  <otaylor@gtk.org>
318
319         * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
320         cast to GTK_OBJECT for gtk_object_ref.
321
322 Tue May  5 15:33:27 1998  Tim Janik  <timj@gtk.org>
323
324         * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
325         checking for signal initialization in gtksignal.c.
326
327         * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
328         a long debugging period ;)
329
330 1998-05-05  Stefan Jeske  <stefan@gtk.org>
331
332         * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
333         New function to wrap XSetDashes; modified gtkctree.c to use it.
334
335 1998-05-04  Federico Mena Quintero  <federico@nuclecu.unam.mx>
336
337         * configure.in: Added $x_libs in the other_libraries field in the
338         check for XShapeCombineMask.
339
340 Mon May  4 00:30:11 1998  Tim Janik  <timj@gtk.org>
341
342         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
343         gtk_type_is_a().
344         * gtk/gtktypeutils.c: reimplemented the type storage system to use a
345         linear array rather than a hash table. it actually speeded up testgtk
346         for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
347         pointers across invokations of gtk_type_node_next_and_invalidate() and
348         therefore gtk_type_unique()!
349
350         * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
351         inheritance of a class pointer.
352         (GTK_OBJECT): modifications for speedups.
353         (GTK_IS_OBJECT): likewise.
354         (GTK_OBJECT_CLASS): likewise.
355         (suggested by owen).
356
357         * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
358
359         * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
360
361         * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
362         since its derivation changed 4 month ago ;(. showed up with the unique
363         type name checking code in gtk_type_unique().
364
365         * random guint->GtkType and macro fixups.
366
367 Sat May  2 23:14:34 1998  Owen Taylor  <otaylor@gtk.org>
368
369         * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
370         Configure events that would result in a negative
371         size.
372
373 Sun May  3 14:55:34 1998  Owen Taylor  <otaylor@gtk.org>
374
375         * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
376         "glibconfig.h" and another about writing another IRC
377         client.
378
379 Sat May  2 00:14:05 1998  Owen Taylor  <otaylor@gtk.org>
380
381         * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
382         parameters to log are doubles. Digital Unix apparently
383         is missing the argument in its prototype.
384
385 Sun May  3 19:04:46 1998  Owen Taylor  <otaylor@gtk.org>
386
387         * gtk/gtklabel.c (gtk_label_state_changed): Don't
388         force a clear until the widget is actually on
389         screen.
390
391 Sun May  3 21:32:35 1998  Owen Taylor  <otaylor@gtk.org>
392
393         * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
394         to make this consistent with the gtk-1-0 tree.
395
396 Sun May  3 13:38:22 1998  Owen Taylor  <otaylor@gtk.org>
397
398         * configure.in acheader.h gdk/gdkwindow.c 
399         Check for Shape extension both on the client and server
400         side. (And, more importantly, check for the shape extension
401         so we may include -lXext even when compiling with --disable-xshm)
402
403         Don't set override_redirect on all shaped windows. It isn't
404         necessary.
405
406         * gdk/gdkwindow.c: Set ->colormap to NULL for root 
407         and foreign windows. Use this to check if we
408         need to get the colormap from X.
409
410 Fri May  1 22:32:47 1998  Owen Taylor  <otaylor@gtk.org>
411
412         * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
413         between the default and the button always in GTK_STATE_NORMAL.
414
415         * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
416         callback.
417
418 Fri May  1 16:40:57 1998  Owen Taylor  <otaylor@gtk.org>
419
420         * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
421           Fix a buffer overflow on pixmaps that claim to have
422           more than 31 characters per pixel.
423
424           (gdk_pixmap_read_string): Don't wrap around strings longer
425           than half of address space ;-)
426
427         * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
428         that were used for printing integers.
429
430         * */* (almost):
431
432         Style: All 
433           int foo () { ... }
434         changed to
435           int foo (void) { ... }
436
437         Even where there were proper prototypes elsewhere.
438
439         * gdk/gxid.c (handle_claim_device): Some extra checks.
440         It isn't safe against being fed bad X id's, but at
441         least it should be safe against deleting all your
442         files.
443
444 Sun May  3 19:45:09 1998  Tim Janik  <timj@gtk.org>
445
446         * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
447         to set the adjustments value when there is no current emission.
448         [ Removed by mutual agreement owt 5/3/1998 ]
449
450         * gtk/gtksignal.c: added new functions to retrive the number of
451         existing emissions for a certain signal.
452         (gtk_signal_n_emissions): new function.
453         (gtk_signal_n_emissions_by_name): new function.
454
455 Sun May  3 16:55:43 1998  Tim Janik  <timj@gtk.org>
456
457         * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
458         set the current focus_child of a container, does proper referencing and
459         adjusts the vadjustment/hadjustment associated with the focus widget.
460
461         * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
462         containers via gtk_container_set_focus_child.
463
464         * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
465         where appropriate.
466
467         * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
468         child since not every child removal goes through this function (this
469         showed up after gtk_container_set_focus_child() started to reference the
470         focus_child of a container).
471
472         * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
473         of a container from gtk_container_remove into this place.
474
475 Sat May  2 22:33:45 1998  Tim Janik  <timj@gtk.org>
476
477         * gtk/gtksignal.c: added new functions to operate on intermediate
478         function pointers. implemented incremental blocking.
479         (gtk_signal_disconnect_by_func): new function.
480         (gtk_signal_handler_block_by_func): new function.
481         (gtk_signal_handler_unblock_by_func): new function
482
483 Fri May  1 22:45:55 1998  Owen Taylor  <otaylor@gtk.org>
484
485         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
486         Always show the scrollbars when the policy is
487         GTK_POLICY_ALWAYS...
488
489 Sat May  2 20:19:03 1998  Tim Janik  <timj@gtk.org>
490
491         * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
492         "value_changed" if we really passed a new value.
493         (gtk_adjustment_changed): new function to emit the "changed" signal.
494         (gtk_adjustment_set_value): new function to emit the "value_changed"
495         signal.
496
497 Fri May  1 12:28:35 1998  Owen Taylor  <otaylor@gtk.org>
498
499         * gtk/gtkcombo.c: Further changes to the way the window
500         is popped up so that it will be compatible with 
501         auto-scrolling in the future.
502
503 Fri May  1 20:25:29 1998  Tim Janik  <timj@gtk.org>
504
505         * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
506         the combo-list is empty since that will cause the combo to operate
507         on a non existing GtkList window.
508         (gtk_combo_get_pos): provide the combo list with a usfull default
509         height if empty.
510         (gtk_combo_popup_button_press): grab the focus.
511         (gtk_combo_activate): grab the focus.
512
513 Fri May  1 12:06:43 1998  Owen Taylor  <otaylor@gtk.org>
514
515         * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
516         function to reset the RC styles for a heirarchy
517
518         Clear the window background if necessary in
519         gtk_window_style_set.
520
521         * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
522         rereads all previously read RC files.
523
524         * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
525         (Should it just be called gdk_get_toplevels?)
526
527         * gtk/testgtk.c: New test to reload RC files.
528
529 Fri May  1 13:57:36 1998  Tim Janik  <timj@gtk.org>
530
531         * gtk/gtkclist.h:
532         * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
533         clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
534         GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
535         the GTK_ prefix (this solution involved less changes in the
536         gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
537         the mem_chunk==NULL test in gtk_clist_construct. merged in changes
538         from lars & stefan to support the derivation of GtkCtree.
539
540         * gtkctree.h:
541         * gtkctree.c:
542         initial import of a tree widget derived from gtkclist, courtesy
543         of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
544         it just damn rocks!
545
546 Fri May  1 10:05:44 1998  Tim Janik  <timj@gtk.org>
547
548         * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
549         for us.
550         (gtk_list_insert_items):
551         (gtk_list_remove_items_internal): 
552         (gtk_list_clear_items): 
553         remove a possible pointer grab, we might get thrown into a loop
554         otherwise.
555         (gtk_list_button_press): grab the pointer *before* selecting the child,
556         because selection of items may cause the lists children to change,
557         resulting in a grab release.
558         (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
559         children.
560         (gtk_list_shutdown): remove all children from the list.
561         (gtk_real_list_unselect_child): 
562         (gtk_real_list_select_child): *always* put our internal structures into
563         sane state *before* signal emisions (i.e. list->selection updates prior
564         to gtk_list_item_[de]select() calls).
565
566         * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
567         focused child walks out of the window.
568         removed CAN_FOCUS for the combo arrow's button since it doesn't react
569         to keyboard events ("clicked" connection is missing).
570
571 Fri May  1 00:42:25 1998  Owen Taylor  <otaylor@gtk.org>
572
573         * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
574         getting colormap for FOREIGN windows to go along with
575         Raster's fix for visuals.
576
577 Merges from gtk-1-0
578 ===================
579         
580 Thu Apr 30 23:32:51 1998  Owen Taylor  <otaylor@gtk.org>
581
582         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
583         Check to catch the case when the viewport fits in either
584         direction or both, instead of flip-flopping infinitely.
585
586         Only show/hide the scrollbars once at the end.
587
588 Thu Apr 30 21:56:07 1998  Owen Taylor  <otaylor@gtk.org>
589
590         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): 
591         Include the scrollbars in the foreach call.
592         (gtk-fortier-980405-0.patch; 
593          Patrice Fortier <Patrice.Fortier@aquarel.fr>). 
594
595         The notebook widget
596         really should also include its tabs, but that might cause
597         problems for programs if they
598
599 Thu Apr 30 21:51:52 1998  Owen Taylor  <otaylor@gtk.org>
600
601         * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
602         resize if the size actually changed. 
603         (gtk-johannes-980414-0.patch ;  
604          johannes@nada.kth.se (Johannes Keukelaar) )
605
606 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
607
608         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
609           ltmain.sh ltconfig config.sub config.guess:
610
611         Reverted back to libtool-1.2 (plus minor patches) so as not to
612         force the issue for everyone else.
613
614 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
615
616         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
617         Updated to libtool 1.2a.
618
619         * gtk/gtkclist.c: Draw the in-between lines with style->base
620         instead of style->white.
621         
622 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
623
624         * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c: 
625         Cache the colormap and children of a window locally
626         instead of fetching them from the server when needed.
627         Huge performance difference for creating/destroying
628         windows.
629
630         * gtk/gtkstyle.c: Find the depth from the cached
631         visual, instead of asking the server.
632
633         * gtk.m4: Distribute the new version which tries to
634         figure out what went wrong and give helpful error
635         messages.
636
637         * ltmain.sh ltconfig config.sub config.sh: 
638         Updated to libtool 1.2a
639
640         * gtk/gtktext.c: Fixed a bug where the drawn level
641         was being messed up when the text was scrolled
642         during a deletion.
643         
644 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
645
646         * gtk/gtkfilesel.c: don't die when naughty people remove parts of
647         the filesystem under you (fix from Josh)
648
649 Thu Apr 30 09:49:14 1998  Tim Janik  <timj@gtk.org>
650
651         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
652         if the viewport already exists before iterating over it, maybe we
653         haven't been constructed yet.
654
655 Thu Apr 30 01:51:00 1998  Tim Janik  <timj@gtk.org>
656
657         * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
658         the GtkBin widget already has a child.
659
660         * gtk/gtkbox.c (gtk_box_pack_{start|end}):
661         check that child->parent == NULL;
662
663 Tue Apr 28 22:13:54 1998  Owen Taylor  <otaylor@gtk.org>
664
665         * gtk/gtkselection.c (gtk_selection_clear): Only return
666         FALSE when the clear event is been rejected, not when
667         widget has already lost the selection. (Which should
668         only happen when we are setting the selection to another
669         widget ourself.)
670         
671 Fri Apr 24 19:07:32 1998  Owen Taylor  <otaylor@gtk.org>
672
673         * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
674
675         Removed the "check visibility after gtk_widget_unparent" bug 
676         in hopefully the last three places.
677
678 Tue Apr 28 15:46:41 1998  Tim Janik  <timj@gtk.org>
679
680         * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
681         rc-files.
682
683 Mon Apr 27 15:11:52 1998  Tim Janik  <timj@gtk.org>
684
685         * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
686         for CAN_FOCUS widgets.
687
688         * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
689         adjustments for the table.
690         (create_list): feature automatic adjustment of the scrolled window to
691         always contain the focused child.
692         (create_main_window): keep the focussed button always inside of the
693         scrolled windoww.
694
695         * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
696         adjustments, to contain the allocation of the currently focused child.
697         (gtk_container_set_focus_hadjustment): new functin to set the
698         horizontal focus adjustment.
699         (gtk_container_set_focus_vadjustment): new functin to set the vertical
700         focus adjustment.
701
702         * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
703         clamp the currents adjustment page into a specific range.
704
705         * random GtkType fixups for gtk_*_get_type() functions.
706
707 Fri Apr 24 18:37:16 1998  Owen Taylor  <otaylor@gtk.org>
708
709         * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree): 
710         Account for the fact that gtk_tree_item_remove_subtree
711         will be called recursively. 
712
713         Handle removing a collapsed subtree.
714
715         (From Andy Dustman <adustman@comstar.net>)
716         
717         * gtk/gtktree.c (gtk_tree_remove_items): Look for the
718         root tree when removing items from a non-previously
719         mapped tree.
720
721         * gtk/testgtk.c: Added a remove_subtree button.
722         
723 Thu Apr 23 23:44:17 1998  Owen Taylor  <otaylor@gtk.org>
724
725         * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
726         before object removing data. This change fixes a bug where 
727         removing the last weak references would cause it to be 
728         triggered.
729
730 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
731
732         * gdk/Makefile.am: Removed mostly useless dependency that
733         was causing problems for SGI's make, when used with
734         the 'make dist' form of GTK+. (Dependency caused dependencies
735         to be redone when BUILT_SOURCES changed)
736
737 Thu Apr 30 11:18:00 1998  Owen Taylor  <otaylor@gtk.org>
738
739         * gtk/gtkcombo.[ch]: Allow the user to use the popup list
740         like a menu.
741         
742         * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
743         to gtkitem.c so dragging can also work in lists.
744
745         * gtk/gtklist.[ch]: Track child enter events and use
746         those to allow dragging the selection. 
747
748 Thu Apr 30 11:16:06 1998  Owen Taylor  <otaylor@gtk.org>
749
750         * gtk/gtktext.c: Try enabling background pixmaps for editable text
751         widgets.  There is a bit of flashing, but not too bad. If you
752         don't want the flashing, you can always not set a background
753         pixmap.
754
755 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
756
757         * gtk/gtktext.c: Fixed a bug where the drawn level
758         was being messed up when the text was scrolled
759         during a deletion.
760         
761 1998-04-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>
762
763         * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
764         bug:  There is no need to set the ExposureMask in the XGrabPointer
765         (this caused DnD programs to crash).
766
767 Fri Apr 24 01:29:04 1998  Tim Janik  <timj@gtk.org>
768
769         * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
770         field to be of type guint.
771         * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
772         ref_count>0;
773         (gtk_accelerator_table_install): keep a per object list of accelerator
774         tables that refer to this object.
775         (gtk_accelerator_table_remove): remove the accelerator table from the
776         per object list.
777         (gtk_accelerator_table_clean): warn if there are any object references
778         left in an accelerator table upon destruction.
779         (gtk_accelerator_tables_delete): new function to delete object
780         references from the accelerator tables associated with this object.
781
782         * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
783         GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
784         of an accelerator can be prevented by gtk_signal_emit_stop().
785         (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
786         so there are no stale pointers in accelerator tables left.
787
788 1998-04-22  Federico Mena Quintero  <federico@nuclecu.unam.mx>
789
790         * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
791         visible before we unparent it.
792
793 Wed Apr 22 04:15:26 1998  Tim Janik  <timj@gtk.org>
794
795         * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
796         running_timeouts list with the tmp_list link itself, not with a new
797         GList structure pointing to our link. that would fill up memory and
798         causes the GList.data fields of the running_timeouts list to point to
799         GList structures and not GtkTimeoutFunction structures which is a
800         *really* bad thing.
801         (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
802         the above entry ;).
803
804 Sat Apr 18 22:18:12 1998  Tim Janik  <timj@gtk.org>
805
806         * gtk/gtkradiomenuitem.h: 
807         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
808         ala gtk_radio_button_set_group.
809         (gtk_radio_menu_item_init): assure that we always have at least a group
810         that points to self.
811
812         * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
813         added g_return_if_fail() statements.
814         (gtk_radio_button_init): assure that we always have at least a group
815         that points to self.
816
817 Fri Apr 17 03:05:05 1998  Tim Janik  <timj@gtk.org>
818
819         * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
820
821 Wed Apr 15 05:13:09 1998  Tim Janik  <timj@gtk.org>
822
823         * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
824         (Damon Chaplin), which i got wrong when applying Damon's patch the last
825         time.
826
827 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
828
829         * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
830         that when we are running with a non-installed colormap,
831         in 8-bit pseudo-color, we actually are using the system
832         visual. (Fixes *Bad Match* errors on Digital Unix machines
833         with multiple 8-bit pseudo-color visuals)
834
835 1998-04-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>
836
837         * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
838         by whoever thought that randomly changing ints to unsigned int
839         without reviewing the code was a good idea.  It is, btw not
840         mentioned in the ChangeLog as usual, but I know it was not Elliot
841         the culprit this time. 
842
843 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
844
845         * Released GTK+ 1.0.0