]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-2
Add $(srcdir) where needed (in the rule), and removed it where not needed
[~andy/gtk] / ChangeLog.pre-2-2
1 1998-06-09  Raja R Harinath  <harinath@cs.umn.edu>
2
3         * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
4         environment to genmarshal.pl.
5         (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
6         rule), and removed it where not needed (in the dependencies).
7
8         * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
9
10 Tue Jun  9 18:44:57 1998  Owen Taylor  <otaylor@gtk.org>
11
12         * gtk/gtkobject.c: Removed g_object_pointer_hash, which
13         was just g_direct_hash.
14
15 Mon May 25 19:54:20 1998  Owen Taylor  <otaylor@gtk.org>
16
17         * configure.in: x_libs=, not $x_libs=. Enough said.
18           (Case only hit for --disable-xshm)
19         
20 Mon May 25 12:08:14 1998  Owen Taylor  <otaylor@gtk.org>
21
22         * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
23           when testing for X libraries, don't replace them. Because
24           the user might have specified the path to the X libraries
25           themself before running configure.
26
27         * examples/**.c: Changed all gpointer * to gpointer
28         
29 1998-06-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
30
31         * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
32         fleur_cursor field.  Now the cursor is created/destroyed on demand
33         by the routines that need it.
34
35         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): 
36         (gtk_handle_box_motion): The fleur cursor is created and destroyed
37         only when needed.
38
39 Tue Jun  9 09:57:09 1998  Tim Janik  <timj@gtk.org>
40
41         * gtk/gtktypeutils.h: 
42         * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
43         gtk_enum_set_values to gtk_type_enum_get_values and
44         gtk_type_enum_set_values respectively, since they are actually type
45         system features.
46
47         * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
48         my last commit. ;)
49
50 Tue Jun  9 01:57:23 1998  Tim Janik  <timj@gtk.org>
51
52         * gtk/gtkselection.h: 
53         * gtk/gtkselection.c: new functions gtk_selection_data_copy and
54         gtk_selection_data_free.
55
56         * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
57         for "selection_received", which was completely bogus.
58         * other fixups to gtk_signal_new() calls all over the place.
59
60         * gtk/gtktypebuiltins.h: types as variables (formerly macros).
61         * gtk/gtktypebuiltins_vars.c: type variable implementations.
62         * gtk/gtktypebuiltins_ids.c: array entries for builtin type
63         declarations.
64         * gtk/gtktypebuiltins_evals.c: enum value arrays.
65         * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
66         gtk.defs.
67         * gtk/gtk.defs: generated file with scheme syntax for type definitions
68         of gtk and gdk structures and enums.
69         * gtk/gtktypeutils.h: 
70         * gtk/gtktypeutils.c: reworked type ids, so they are variables not
71         macros anymore (this fixes binary incompatibility with new enum
72         definitions).
73
74         * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
75         key bindings for this widget.
76         * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
77         handler.
78
79         * gtk/gtkobject.h:
80         * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
81         again. new functions gtk_object_class_user_signal_new () and
82         gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
83         flag on the signal creation.
84
85 Mon Jun  8 20:52:21 1998  Tim Janik  <timj@gtk.org>
86
87         * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
88
89 Mon Jun  8 02:52:37 1998  Tim Janik  <timj@gtk.org>
90
91         * gdk/gdkprivate.h: 
92         * gdk/gdktypes.h: 
93         * gtk/gtkprivate.h: 
94         * gtk/gtkwidget.h: 
95         * gtk/gtkobject.h: wrapped enum definitions with glib macros.
96
97         * reworked enum value array generation code. gtk.defs is a generated
98         file now.
99
100 Sun Jun  7 14:34:31 1998  Tim Janik  <timj@gtk.org>
101
102         * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
103         check menu items in the compatibility code (this required me to remove
104         the "<check>" part from the menu item name, grrr).
105
106 1998-06-07  Marius Vollmer  <mvo@zagadka.ping.de>
107
108         * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
109         * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
110         
111 Sun Jun  7 10:53:02 1998  Tim Janik  <timj@gtk.org>
112
113         * gtk/gtkitemfactory.h: 
114         * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
115         additions to the dumping code to feature GtkPatternSpec.
116         even found a bug to fix in the original code ;)
117         
118 Sun Jun  7 09:36:04 1998  Tim Janik  <timj@gtk.org>
119
120         * gtk/gtkitemfactory.c: support different types of callbacks, to
121         maintain existing code.
122
123 Sat Jun  6 06:01:24 1998  Tim Janik  <timj@gtk.org>
124
125         * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
126
127         * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
128         this should eventually be done by gentypeinfo.el somewhen.
129         * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
130
131         * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
132         enum values of an enum type.
133
134         * gtk/gtk.defs:
135         * gtk/gtkcurve.h: 
136         * gtk/gtkobject.h: 
137         * gtk/gtkprivate.h: 
138         * gtk/gtkwidget.h:
139         * gtk/gtkenums.h: 
140         brought enum/flags definitions in sync, added a few more enum
141         definitions for bindings and pattern matching.
142
143         * some more macro and GtkType fixups in various places.
144
145         * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
146         as a key-release modifier for the binding system.
147
148 Fri Jun  5 06:06:06 1998  Tim Janik  <timj@gtk.org>
149
150         * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
151         was a stale list pointer that is already present in GtkMenuShell.
152
153         * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
154         GtkMenuShell::selection_done which is emitted after the menu shell
155         poped down again and all possible menu items have been activated.
156
157 Thu Jun  4 02:20:42 1998  Tim Janik  <timj@gtk.org>
158
159         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
160         before activation of the menuitem, so the menu is actually taken off the
161         screen prior to any menu item activation.
162
163         * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
164         for NULL nodes.
165
166         * gtk/gtkwidget.h:
167         * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
168         the emission of the "add-accelerator" signal on a widget. this is
169         usefull to prevent accelerator installation on certain widgets.
170
171         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
172         labels left justified, by setting their alignment. stop accelerator
173         installation for the menu items, since we use dynamic menus.
174
175 Wed Jun  3 06:41:22 1998  Tim Janik  <timj@gtk.org>
176
177         * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
178         should *really* use GtkItemFactory. this is only for preserving source
179         compatibility where possible, use of GtkMenuFactory is deprecated as of
180         now.
181
182         * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
183         to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
184         missed this possibility when i added gtk_object_class_add_user_signal
185         in late january.
186
187         * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
188
189 Sun May 31 07:31:09 1998  Tim Janik  <timj@gtk.org>
190
191         * gtk/gtkaccelgroup.h: 
192         * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
193
194         * gtk/gtkaccellabel.h: 
195         * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
196         display of the accelerators associated with a certain widget.
197
198         * gtk/gtkitemfactory.h: 
199         * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
200         parsing and accelerator handling.
201
202         * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
203         positioning a menu.
204         (gtk_menu_map): removed the allocation code.
205         (gtk_menu_size_allocate): care for redrawing of children and resize
206         our widget->window correctly.
207         (gtk_menu_key_press): feature the new accelerator groups.
208
209         * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
210         submenu if neccessary.
211
212         * gtk/gtkmenuitem.c:
213         * gtk/gtkcheckmenuitem.c:
214         * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
215         function variants.
216
217         * gdk/gdk.c:
218         (gdk_keyval_from_name): 
219         (gdk_keyval_name): new functions for keyval<->key-name associations.
220         (gdk_keyval_to_upper): 
221         (gdk_keyval_to_lower): 
222         (gdk_keyval_is_upper): 
223         (gdk_keyval_is_lower): new functions to check/translate keyvalues with
224         regards to their cases.
225
226 Wed May 27 00:48:10 1998  Tim Janik  <timj@gtk.org>
227
228         * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
229         widget's class path.
230         (gtk_widget_path): new function to calculate a widget's name path.
231
232         * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
233         pattern matching, features reversed pattern matches.
234
235 Thu Jun  4 12:12:11 BST 1998  Tony Gale  <gale@gtk.org>
236
237         * examples/extract.sh, examples/extract.awk:
238           New files to automagically extract code examples from the
239           tutorial.
240
241 Tue Jun  2 20:04:45 1998  Lars Hamann  <lars@gtk.org>
242
243         * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
244         * gtk/gtkcontainer.c (gtk_container_focus_move):
245         reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
246
247 Tue Jun  2 13:04:06 BST 1998  Tony Gale  <gale@gtk.org>
248
249         * docs/gtk_tut.sgml: minor changes to support auto
250           extraction of example code
251
252 Mon Jun  1 12:47:56 BST 1998  Tony Gale  <gale@gtk.org>
253
254         * docs/gtk_tut_it.sgml: Update of Italian Tutorial
255           to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
256
257 Fri May 29 13:53:57 BST 1998  Tony Gale  <gale@gtk.org>
258
259         * docs/gtk_tut.sgml:
260           - new section on Events
261           - change all delete_event callbacks to include
262             a GdkEvent parameter
263           - clean up the formatting
264
265         * examples - helloworld.c, helloworld2.c, notebook.c,
266           packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
267           rulers.c, table.c, wheelbarrow.c: change all delete_event
268            callbacks to include a GdkEvent parameter.
269
270 1998-05-26  Federico Mena Quintero  <federico@nuclecu.unam.mx>
271
272         * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
273         field of crossing events.
274         (struct _GdkEventCrossing): Added the following fields: time, x,
275         y, x_root, y_root, mode, focus, state.
276
277         * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
278         crossing event structure.
279
280         * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
281         changes to the crossing event structure.
282
283 Tue May 26 15:51:28 1998  Radek Doulik  <gis@academy.cas.cz>
284
285         * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
286
287 Sun May 24 12:11:38 BST 1998  Tony Gale  <gale@gtk.org>
288
289         * docs/gtk_tut.sgml:
290            - GtkTooltips, update to current API
291            - change all 'gpointer *data' to 'gpointer data'
292            - other minor changes
293
294 Sat May 23 21:54:05 1998  Owen Taylor  <otaylor@gtk.org>
295
296         * configure.in (LDFLAGS): Bomb out with a moderately
297           helpful message if detection of X libraries fails.
298
299 Sat May 23 18:57:06 1998  Owen Taylor  <otaylor@gtk.org>
300
301   [ Combination of:
302      gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
303      gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
304
305         * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
306           gtk/gtksignal.c gtk/gtktext.c: 
307
308           Fixups for warnings from adding const to type of GHashFunc,
309           GCompareFunc
310         
311         * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
312           ansi-warnings fixups.
313
314 Sat May 23 17:48:58 1998  Owen Taylor  <otaylor@gtk.org>
315
316         * gtk/gtkeventbox.c (gtk_event_box_size_allocate): 
317         Locate child at (border_width,border_width), not
318         (2*border_width,2*border_width). [ The border is _outside_
319         widget->window ]
320         
321         * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
322           functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
323
324 1998-05-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
325
326         * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
327         used in gnome-libs
328
329 1998-05-22    <sopwith@redhat.com>
330
331         * gtk/gtkeventbox.c: Pass size_allocate on to the child
332         regardless of whether it is visible or not. Also
333         locate child at (border_width,border_width), not (0,0)
334
335 Fri May 22 03:02:40 1998  Owen Taylor  <otaylor@gtk.org>
336
337         * gtk/gtkhandlebox.c: Added style_set handler.
338
339 Fri May 22 02:55:57 1998  Owen Taylor  <otaylor@gtk.org>
340  [ From: Chris Lahey  <clahey@umich.edu> ]
341         
342         * gtk/gtkeditable.c, gtk/gtkeditable.h,
343           gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
344           and set_position functions to get and set the cursor position.
345
346         * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
347           signal status. Make GtkText do user-controlled insertion
348           and deletion through the Editable widget so that these
349           signals are properly emitted.
350
351         * gtk/gtkentry.c: Changed gtk_entry_set_visibility to 
352           display asterisks instead of empty space when visible = FALSE)
353
354 Fri May 22 08:51:10 CEST 1998  Paolo Molaro <lupus@debian.org>
355
356         * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
357         signal.
358
359 1998-05-21    <sopwith@redhat.com>
360
361         * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
362         custom routine for loading images specified in gtkrc's.
363
364 Tue May 19 23:41:04 1998  Owen Taylor  <otaylor@gtk.org>
365
366         * configure.in: Use pthread_attr_init() as a test function,
367         since most of the rest of -lpthread is macros on DU4.
368
369 Tue, 19 May 1998 09:03:03 +0200  Paolo Molaro <lupus@debian.org>
370
371         * gtk/gtkcombo.c: implemented completion in the entry.
372
373 1998-05-18    <sopwith@moebuis.labs.redhat.com>
374
375         * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
376
377 Mon May 18 04:01:41 1998  Tim Janik  <timj@gtk.org>
378
379         * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
380         "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
381         to be of runtype GTK_RUN_LAST.
382
383         * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
384         "need-resize".
385
386         * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
387         "widget-selected".
388
389 Sat May 16 09:04:32 1998  Tim Janik  <timj@gtk.org>
390
391         * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
392         text retrived from GtkEntry. only intercept the Tab key if there
393         was some text to complete.
394
395 Fri May 15 21:16:54 1998  Owen Taylor  <otaylor@gtk.org>
396
397         Basic thread-awareness:
398
399         * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
400
401         * gdk/Makefile.am gdk/gdkthreads.c: Added new functions 
402         gdk_threads_[init/enter/leave] for applications, plus
403         gdk_threads_wake to wake the mainloop thread out of
404         the select().
405
406         * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
407
408 Fri May 15 12:08:48 1998  Owen Taylor  <otaylor@gtk.org>
409
410         * gtk/testgtk.c (list_clear): Account for the fact
411         that gtk_list_clear_items is not inclusive. (Clears
412         [start, end))
413
414 Fri May 15 12:31:27 1998  rodo  <doulik@karlin.mff.cuni.cz>
415
416         * gdk/gdk.c: include gdkkeysyms.h always
417         
418
419 Fri May 15 09:44:10 1998  Tim Janik  <timj@gtk.org>
420
421         * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
422         the visibility_notify_event method and changed method order.
423
424 1998-05-14    <sopwith@moebuis.labs.redhat.com>
425
426         * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
427
428 Thu May 14 03:04:43 1998  Tim Janik  <timj@gtk.org>
429
430         * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
431         from Olli Helenius <ollhel@batman.jytol.fi>.
432
433         * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
434         freeing types.
435         (gtk_type_set_chunk_alloc): new function to allow allocation of new
436         types from a mem_chunk of certain size (n_chunks==0 indicates allocation
437         thorugh g_malloc).
438
439         * gtk/gtkobject.c (gtk_object_finalize): free an object through
440         gtk_type_free().
441
442         * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
443         GtkButtons to 16.
444         * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
445         * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
446
447 Wed May 13 00:53:52 1998  Owen Taylor  <otaylor@gtk.org>
448
449         * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more 
450           GPOINTER_TO_UINT fixes.
451
452         * gtk/gtksignal.c: Include <string.h> for memset.
453
454 Tue May 12 23:10:53 1998  Owen Taylor  <otaylor@gtk.org>
455         (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
456
457         * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h: 
458         Cleanups, comments and the ability to have rulers with 
459         a reversed direction.
460
461 Tue May 12 19:37:55 1998  Owen Taylor  <otaylor@gtk.org>
462
463         * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
464         that Sopwith missed when changing stat => lstat.
465
466 Tue May 12 19:19:29 1998  Owen Taylor  <otaylor@gtk.org>
467
468         * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
469           gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
470         GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
471
472         * gdk/gdk.c: Print sizeof() results
473         as g_print("%ld", (glong)sizeof(foo)), to deal with
474         sizeof() being long on Alpha's.
475
476         * gtk/testgtk.c: include <string.h> for strlen
477
478 Tue May 12 16:56:35 1998  Owen Taylor  <otaylor@gtk.org>
479         (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
480         
481         * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
482         Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
483
484         * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
485
486 Tue May 12 15:16:10 1998  Owen Taylor  <otaylor@gtk.org>
487         (From: Christopher James Lahey <clahey@umich.edu>)
488         
489         * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
490           gtk/testgtk.c:
491
492         Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
493         (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
494         state. Added gtk_toolbar_{set,get}_button_relief, which set/get
495         the default relief for the toolbars buttons. Added an
496         toggle for the toolbar test in testgtk.c.
497
498 Tue May 12 00:24:59 1998  Owen Taylor  <otaylor@gtk.org>
499
500         * docs/gtk-config.1: Rewritten and hopefully improved.
501
502 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
503
504         * docs/Makefile.am
505         * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
506
507 1998-05-11  Federico Mena Quintero  <federico@nuclecu.unam.mx>
508
509         * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
510         GtkPreview's visual and colormap, otherwise things can BadMatch.
511
512         * gtk/testgtk.c (create_color_preview): 
513         (create_gray_preview): Removed pushing/popping of visual/colormap
514         now that GtkPreview does things correctly.
515
516         * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame): 
517         (gtk_color_selection_draw_wheel): Pick the style from the correct
518         place (the colorsel->wheel_area widget) so that the GCs will match
519         with where we are going to paint to.
520
521         * gtk/testgtk.c (create_color_selection): Removed pushing/popping
522         of visual/colormap now that GtkColorSelection does things the
523         right way.
524
525 Mon May 11 21:04:51 1998  Owen Taylor  <otaylor@gtk.org>
526
527         * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
528         previously unused window->need_resize flag to mark if a window's
529         descendents changed size while the window was not visible. In this
530         case, when the window becomes visible, we reallocate everything,
531         since we didn't keep track of what actually changed.
532
533         (Fixes bug where changing the popdown strings of a
534         combo to something of the same length caused them to
535         blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
536
537 Tue May 12 02:31:57 1998  Tim Janik  <timj@gtk.org>
538
539         [security audit by Alan Cox]
540
541         * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
542         exceed maximum assumed size.
543
544         * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
545         not exceed maximum assumed size.
546         (gtk_menu_factory_remove): likewise.
547         (gtk_menu_factory_find_recurse): likewise.
548
549 Mon May 11 23:53:38 1998  Tim Janik  <timj@gtk.org>
550
551         * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
552         GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
553         redrawn if that is still neccessary. don't allow queueing of already
554         destructed objects.
555         (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
556         widgets which are in the queue can be destroyed safely, handle
557         requeueing properly.
558         (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
559         widgets which are in the queue can be destroyed/unrealized safely.
560
561 Mon May 11 17:54:44 BST 1998 Tony Gale  <gale@gtk.org>
562
563         * gtkfaq.sgml: add question on multi-threading,
564           minor URL cleanups.
565
566 Mon May 11 09:56:45 1998  Tim Janik  <timj@gtk.org>
567
568         * configure.in (cflags_set): preserve automake CFLAGS.
569
570         * Makefile.am: fully rename the created libraries to libgtk-1.1.la
571         and libgdk-1.1.la. this means we need to change certain portions of
572         the Makefile.am on major/minor version bumps.
573
574         * ltmain.sh: the -release option is not required anymore.
575         
576         * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
577         of the first argument to be of type GtkObject. unconditionally compile
578         this function. removed __GNUC__ dependancy of the gtk_object_ref and
579         gtk_object_unref macro wrappers for this function.
580
581 Mon May 11 02:31:19 1998  Tim Janik  <timj@gtk.org>
582
583         * gtk/gtkobject.h:
584         * gtk/gtkobject.c:
585         (gtk_object_data_try_key):
586         (gtk_object_data_force_id): these are now macros substituting the old
587         functions. we just use the corresponding g_dataset_* functions for
588         key->id associations. (this is to assure unique key<->id associations).
589
590 1998-05-10  Stefan Jeske  <stefan@gtk.org>
591
592         * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
593         to gboolean.
594
595         * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
596
597 Sat May  9 20:11:20 1998  Owen Taylor  <otaylor@gtk.org>
598
599         * configure.in (LIBS): Try to figure out if this
600         is Digital Unix and we need -std1 to get the
601         right prototypes.
602
603 Sat May  9 16:30:33 BST 1998 Tony Gale  <gale@gtk.org>
604
605         * docs/gtk_tut_it.sgml: update of Italian tutorial
606           translation from Daniele Canazza <dcanazz@tin.it>
607
608 Sat May  9 02:34:41 1998  Tim Janik  <timj@gtk.org>
609
610         * gtk/gtkfeatures.h.in: new file used as template for
611         * gtk/gtkfeatures.h: new file to define macros indicating newly
612         introduced features, such as GTK_HAVE_SIGNAL_INIT.
613
614         * gtk/gtksignal.c:
615         (gtk_signal_emitv_by_name):
616         (gtk_signal_emitv):
617         new functions to emit signals with an already provided parameter set.
618         (provided by Kenneth Albanowski <kjahds@kjahds.com>).
619         (gtk_signal_real_emit): prototype changes, so this functions always
620         gets its parameters and signal structure as arguments.
621         (gtk_signal_emit): provide the signal structure and parameter list for
622         gtk_signal_real_emit.
623         (gtk_signal_emit_by_name): likewise.
624
625 Sat May  9 00:03:12 1998  Tim Janik  <timj@gtk.org>
626
627         * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
628         signal connections through unsetting GTK_CONNECTED.
629         (gtk_signal_handler_insert): reflect the presence of signal connections
630         through setting GTK_CONNECTED.
631         (gtk_signal_real_emit): only check for handler emissions if the object
632         has the GTK_CONNECTED flag set.
633         (gtk_signal_handler_pending): don't check for pending handlers if the
634         GTK_CONNECTED flag is not set for this object.
635
636         * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
637         a GtkObject has signal handler connections.
638
639         * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
640         set for this object call gtk_signal_handlers_destroy().
641         
642         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
643         multiple processing of macro args.
644
645         * gtk/gtktypeutils.c:
646         * gtk/gtkobject.c:
647         * gtk/gtkwidget.c:
648         * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
649
650 Fri May  8 21:31:50 1998  Owen Taylor  <otaylor@gtk.org>
651
652         * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
653         draw-queue when we are done. 
654
655         (gtk_widget_queue_draw/_queu_resize): Always return
656         FALSE and avoid having two idles at the same time.
657         
658 Fri May  8 21:04:00 1998  Owen Taylor  <otaylor@gtk.org>
659
660         * gtk/gtktext.c: Various fixes to make sure cache
661         lines are freed if line_start_cache doesn't point to the
662         beginning of the cache.
663
664 Thu May  7 09:44:22 1998  Owen Taylor  <otaylor@gtk.org>
665
666         * style_set improvements for GtkText and GtkEntry
667
668 Thu May  7 19:03:50 1998  Tim Janik  <timj@gtk.org>
669
670         * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
671         been initialized.
672
673 Thu May  7 12:52:45 1998  Tim Janik  <timj@gtk.org>
674
675         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
676         data chunks through a global object data structure list. unlink
677         object data before invoking its destroy function.
678         (gtk_object_finalize): slight modification to allow usage of object
679         data during object finalization.
680
681 Thu May  7 10:29:24 1998  Tim Janik  <timj@gtk.org>
682
683         * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
684         signal names, e.g. "signal-name" is now an alias for "signal_name".
685         (gtk_signal_handler_new): allocate handlers through a global handler
686         structure list, that's faster than memchunks.
687         (gtk_emission_new): allocate emissions through a global emission
688         structure list, that's faster than memchunks.
689
690 Thu May  7 05:14:19 1998  Tim Janik  <timj@gtk.org>
691
692         * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
693
694         * ltmain.sh: added a new commandline flag -postfix similar to -release,
695         but will immediately change the library name.
696
697         * gdk/Makefile.am:
698         * gtk/Makefile.am: specify -postfix and -version-info
699
700         * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
701         GTK_BINARY_AGE. calculate LT_* variables for libtool.
702
703 1998-05-06  Federico Mena Quintero  <federico@nuclecu.unam.mx>
704
705         * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
706         background (fg_set -> bg_set confusion).
707
708 1998-05-06  Stefan Jeske  <stefan@gtk.org>
709
710         * gtk/testgtk.c (unselect_all): Removed code that caused an
711         endless loop.
712
713 Wed May  6 02:16:34 1998  Tim Janik  <timj@gtk.org>
714
715         * gtk/gtksignal.c: reimplemented the signal storage system to use a
716         linear array rather than a hash table.
717         be carefull *not* to keep any GtkSignal pointers across invokations
718         of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
719         general code cleanups, made all allocations through memchunks.
720         (gtk_signal_lookup): we now do the lookup of signals through a key_id
721         for the signal names to avoid multiple hashing of the signal name on
722         lookups for the several hirarchy levels of an object.
723
724 Tue May  5 19:49:27 1998  Owen Taylor  <otaylor@gtk.org>
725
726         * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
727         to speed things up and remove code duplication.
728
729         Reintegrated buffer overflow patches, and added
730         some extra paranoia.
731         
732 Tue May  5 17:04:14 1998  Owen Taylor  <otaylor@gtk.org>
733
734         * gdk/gdk.c (gdk_event_translate): A guint * was
735         being passed where X expected a Keysym *, and
736         keysyms are long's on Alpha Linux. This was causing
737         segfaults in Xlib, apparently because of alignment.
738         (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
739         
740 Tue May  5 19:11:27 1998  Owen Taylor  <otaylor@gtk.org>
741
742         * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
743         set GDK_EXPOSURE_MASK for DrawingAreas
744
745 Tue May  5 14:32:37 1998  Owen Taylor  <otaylor@gtk.org>
746
747         * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
748         (superceded by RC file reparsing capabilities)
749
750         * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
751         events. (Shouldn't be sent to the InputOnly leader, which
752         it is now by gdk_event_send_clientmessage_toall
753
754         * gtk/testgtk.c: Added extra button to rcfiles test
755         to send out _GDK_READ_RCFILES events.
756         
757 Tue May  5 11:03:00 1998  Owen Taylor  <otaylor@gtk.org>
758
759         * gtk/gtkselection.c (gtk_selection_clear): Fixed
760         reversed conditionals that caused segfault on some
761         platforms.
762
763 Tue May  5 00:44:47 1998  Owen Taylor  <otaylor@gtk.org>
764
765         * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
766         cast to GTK_OBJECT for gtk_object_ref.
767
768 Tue May  5 15:33:27 1998  Tim Janik  <timj@gtk.org>
769
770         * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
771         checking for signal initialization in gtksignal.c.
772
773         * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
774         a long debugging period ;)
775
776 1998-05-05  Stefan Jeske  <stefan@gtk.org>
777
778         * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
779         New function to wrap XSetDashes; modified gtkctree.c to use it.
780
781 1998-05-04  Federico Mena Quintero  <federico@nuclecu.unam.mx>
782
783         * configure.in: Added $x_libs in the other_libraries field in the
784         check for XShapeCombineMask.
785
786 Mon May  4 00:30:11 1998  Tim Janik  <timj@gtk.org>
787
788         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
789         gtk_type_is_a().
790         * gtk/gtktypeutils.c: reimplemented the type storage system to use a
791         linear array rather than a hash table. it actually speeded up testgtk
792         for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
793         pointers across invokations of gtk_type_node_next_and_invalidate() and
794         therefore gtk_type_unique()!
795
796         * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
797         inheritance of a class pointer.
798         (GTK_OBJECT): modifications for speedups.
799         (GTK_IS_OBJECT): likewise.
800         (GTK_OBJECT_CLASS): likewise.
801         (suggested by owen).
802
803         * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
804
805         * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
806
807         * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
808         since its derivation changed 4 month ago ;(. showed up with the unique
809         type name checking code in gtk_type_unique().
810
811         * random guint->GtkType and macro fixups.
812
813 Sat May  2 23:14:34 1998  Owen Taylor  <otaylor@gtk.org>
814
815         * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
816         Configure events that would result in a negative
817         size.
818
819 Sun May  3 14:55:34 1998  Owen Taylor  <otaylor@gtk.org>
820
821         * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
822         "glibconfig.h" and another about writing another IRC
823         client.
824
825 Sat May  2 00:14:05 1998  Owen Taylor  <otaylor@gtk.org>
826
827         * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
828         parameters to log are doubles. Digital Unix apparently
829         is missing the argument in its prototype.
830
831 Sun May  3 19:04:46 1998  Owen Taylor  <otaylor@gtk.org>
832
833         * gtk/gtklabel.c (gtk_label_state_changed): Don't
834         force a clear until the widget is actually on
835         screen.
836
837 Sun May  3 21:32:35 1998  Owen Taylor  <otaylor@gtk.org>
838
839         * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
840         to make this consistent with the gtk-1-0 tree.
841
842 Sun May  3 13:38:22 1998  Owen Taylor  <otaylor@gtk.org>
843
844         * configure.in acheader.h gdk/gdkwindow.c 
845         Check for Shape extension both on the client and server
846         side. (And, more importantly, check for the shape extension
847         so we may include -lXext even when compiling with --disable-xshm)
848
849         Don't set override_redirect on all shaped windows. It isn't
850         necessary.
851
852         * gdk/gdkwindow.c: Set ->colormap to NULL for root 
853         and foreign windows. Use this to check if we
854         need to get the colormap from X.
855
856 Fri May  1 22:32:47 1998  Owen Taylor  <otaylor@gtk.org>
857
858         * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
859         between the default and the button always in GTK_STATE_NORMAL.
860
861         * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
862         callback.
863
864 Fri May  1 16:40:57 1998  Owen Taylor  <otaylor@gtk.org>
865
866         * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
867           Fix a buffer overflow on pixmaps that claim to have
868           more than 31 characters per pixel.
869
870           (gdk_pixmap_read_string): Don't wrap around strings longer
871           than half of address space ;-)
872
873         * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
874         that were used for printing integers.
875
876         * */* (almost):
877
878         Style: All 
879           int foo () { ... }
880         changed to
881           int foo (void) { ... }
882
883         Even where there were proper prototypes elsewhere.
884
885         * gdk/gxid.c (handle_claim_device): Some extra checks.
886         It isn't safe against being fed bad X id's, but at
887         least it should be safe against deleting all your
888         files.
889
890 Sun May  3 19:45:09 1998  Tim Janik  <timj@gtk.org>
891
892         * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
893         to set the adjustments value when there is no current emission.
894         [ Removed by mutual agreement owt 5/3/1998 ]
895
896         * gtk/gtksignal.c: added new functions to retrive the number of
897         existing emissions for a certain signal.
898         (gtk_signal_n_emissions): new function.
899         (gtk_signal_n_emissions_by_name): new function.
900
901 Sun May  3 16:55:43 1998  Tim Janik  <timj@gtk.org>
902
903         * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
904         set the current focus_child of a container, does proper referencing and
905         adjusts the vadjustment/hadjustment associated with the focus widget.
906
907         * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
908         containers via gtk_container_set_focus_child.
909
910         * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
911         where appropriate.
912
913         * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
914         child since not every child removal goes through this function (this
915         showed up after gtk_container_set_focus_child() started to reference the
916         focus_child of a container).
917
918         * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
919         of a container from gtk_container_remove into this place.
920
921 Sat May  2 22:33:45 1998  Tim Janik  <timj@gtk.org>
922
923         * gtk/gtksignal.c: added new functions to operate on intermediate
924         function pointers. implemented incremental blocking.
925         (gtk_signal_disconnect_by_func): new function.
926         (gtk_signal_handler_block_by_func): new function.
927         (gtk_signal_handler_unblock_by_func): new function
928
929 Fri May  1 22:45:55 1998  Owen Taylor  <otaylor@gtk.org>
930
931         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
932         Always show the scrollbars when the policy is
933         GTK_POLICY_ALWAYS...
934
935 Sat May  2 20:19:03 1998  Tim Janik  <timj@gtk.org>
936
937         * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
938         "value_changed" if we really passed a new value.
939         (gtk_adjustment_changed): new function to emit the "changed" signal.
940         (gtk_adjustment_set_value): new function to emit the "value_changed"
941         signal.
942
943 Fri May  1 12:28:35 1998  Owen Taylor  <otaylor@gtk.org>
944
945         * gtk/gtkcombo.c: Further changes to the way the window
946         is popped up so that it will be compatible with 
947         auto-scrolling in the future.
948
949 Fri May  1 20:25:29 1998  Tim Janik  <timj@gtk.org>
950
951         * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
952         the combo-list is empty since that will cause the combo to operate
953         on a non existing GtkList window.
954         (gtk_combo_get_pos): provide the combo list with a usfull default
955         height if empty.
956         (gtk_combo_popup_button_press): grab the focus.
957         (gtk_combo_activate): grab the focus.
958
959 Fri May  1 12:06:43 1998  Owen Taylor  <otaylor@gtk.org>
960
961         * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
962         function to reset the RC styles for a heirarchy
963
964         Clear the window background if necessary in
965         gtk_window_style_set.
966
967         * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
968         rereads all previously read RC files.
969
970         * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
971         (Should it just be called gdk_get_toplevels?)
972
973         * gtk/testgtk.c: New test to reload RC files.
974
975 Fri May  1 13:57:36 1998  Tim Janik  <timj@gtk.org>
976
977         * gtk/gtkclist.h:
978         * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
979         clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
980         GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
981         the GTK_ prefix (this solution involved less changes in the
982         gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
983         the mem_chunk==NULL test in gtk_clist_construct. merged in changes
984         from lars & stefan to support the derivation of GtkCtree.
985
986         * gtkctree.h:
987         * gtkctree.c:
988         initial import of a tree widget derived from gtkclist, courtesy
989         of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
990         it just damn rocks!
991
992 Fri May  1 10:05:44 1998  Tim Janik  <timj@gtk.org>
993
994         * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
995         for us.
996         (gtk_list_insert_items):
997         (gtk_list_remove_items_internal): 
998         (gtk_list_clear_items): 
999         remove a possible pointer grab, we might get thrown into a loop
1000         otherwise.
1001         (gtk_list_button_press): grab the pointer *before* selecting the child,
1002         because selection of items may cause the lists children to change,
1003         resulting in a grab release.
1004         (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
1005         children.
1006         (gtk_list_shutdown): remove all children from the list.
1007         (gtk_real_list_unselect_child): 
1008         (gtk_real_list_select_child): *always* put our internal structures into
1009         sane state *before* signal emisions (i.e. list->selection updates prior
1010         to gtk_list_item_[de]select() calls).
1011
1012         * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
1013         focused child walks out of the window.
1014         removed CAN_FOCUS for the combo arrow's button since it doesn't react
1015         to keyboard events ("clicked" connection is missing).
1016
1017 Fri May  1 00:42:25 1998  Owen Taylor  <otaylor@gtk.org>
1018
1019         * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
1020         getting colormap for FOREIGN windows to go along with
1021         Raster's fix for visuals.
1022
1023 Merges from gtk-1-0
1024 ===================
1025         
1026 Thu Apr 30 23:32:51 1998  Owen Taylor  <otaylor@gtk.org>
1027
1028         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
1029         Check to catch the case when the viewport fits in either
1030         direction or both, instead of flip-flopping infinitely.
1031
1032         Only show/hide the scrollbars once at the end.
1033
1034 Thu Apr 30 21:56:07 1998  Owen Taylor  <otaylor@gtk.org>
1035
1036         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): 
1037         Include the scrollbars in the foreach call.
1038         (gtk-fortier-980405-0.patch; 
1039          Patrice Fortier <Patrice.Fortier@aquarel.fr>). 
1040
1041         The notebook widget
1042         really should also include its tabs, but that might cause
1043         problems for programs if they
1044
1045 Thu Apr 30 21:51:52 1998  Owen Taylor  <otaylor@gtk.org>
1046
1047         * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
1048         resize if the size actually changed. 
1049         (gtk-johannes-980414-0.patch ;  
1050          johannes@nada.kth.se (Johannes Keukelaar) )
1051
1052 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
1053
1054         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
1055           ltmain.sh ltconfig config.sub config.guess:
1056
1057         Reverted back to libtool-1.2 (plus minor patches) so as not to
1058         force the issue for everyone else.
1059
1060 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
1061
1062         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
1063         Updated to libtool 1.2a.
1064
1065         * gtk/gtkclist.c: Draw the in-between lines with style->base
1066         instead of style->white.
1067         
1068 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
1069
1070         * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c: 
1071         Cache the colormap and children of a window locally
1072         instead of fetching them from the server when needed.
1073         Huge performance difference for creating/destroying
1074         windows.
1075
1076         * gtk/gtkstyle.c: Find the depth from the cached
1077         visual, instead of asking the server.
1078
1079         * gtk.m4: Distribute the new version which tries to
1080         figure out what went wrong and give helpful error
1081         messages.
1082
1083         * ltmain.sh ltconfig config.sub config.sh: 
1084         Updated to libtool 1.2a
1085
1086         * gtk/gtktext.c: Fixed a bug where the drawn level
1087         was being messed up when the text was scrolled
1088         during a deletion.
1089         
1090 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
1091
1092         * gtk/gtkfilesel.c: don't die when naughty people remove parts of
1093         the filesystem under you (fix from Josh)
1094
1095 Thu Apr 30 09:49:14 1998  Tim Janik  <timj@gtk.org>
1096
1097         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
1098         if the viewport already exists before iterating over it, maybe we
1099         haven't been constructed yet.
1100
1101 Thu Apr 30 01:51:00 1998  Tim Janik  <timj@gtk.org>
1102
1103         * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
1104         the GtkBin widget already has a child.
1105
1106         * gtk/gtkbox.c (gtk_box_pack_{start|end}):
1107         check that child->parent == NULL;
1108
1109 Tue Apr 28 22:13:54 1998  Owen Taylor  <otaylor@gtk.org>
1110
1111         * gtk/gtkselection.c (gtk_selection_clear): Only return
1112         FALSE when the clear event is been rejected, not when
1113         widget has already lost the selection. (Which should
1114         only happen when we are setting the selection to another
1115         widget ourself.)
1116         
1117 Fri Apr 24 19:07:32 1998  Owen Taylor  <otaylor@gtk.org>
1118
1119         * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
1120
1121         Removed the "check visibility after gtk_widget_unparent" bug 
1122         in hopefully the last three places.
1123
1124 Tue Apr 28 15:46:41 1998  Tim Janik  <timj@gtk.org>
1125
1126         * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
1127         rc-files.
1128
1129 Mon Apr 27 15:11:52 1998  Tim Janik  <timj@gtk.org>
1130
1131         * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
1132         for CAN_FOCUS widgets.
1133
1134         * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
1135         adjustments for the table.
1136         (create_list): feature automatic adjustment of the scrolled window to
1137         always contain the focused child.
1138         (create_main_window): keep the focussed button always inside of the
1139         scrolled windoww.
1140
1141         * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
1142         adjustments, to contain the allocation of the currently focused child.
1143         (gtk_container_set_focus_hadjustment): new functin to set the
1144         horizontal focus adjustment.
1145         (gtk_container_set_focus_vadjustment): new functin to set the vertical
1146         focus adjustment.
1147
1148         * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
1149         clamp the currents adjustment page into a specific range.
1150
1151         * random GtkType fixups for gtk_*_get_type() functions.
1152
1153 Fri Apr 24 18:37:16 1998  Owen Taylor  <otaylor@gtk.org>
1154
1155         * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree): 
1156         Account for the fact that gtk_tree_item_remove_subtree
1157         will be called recursively. 
1158
1159         Handle removing a collapsed subtree.
1160
1161         (From Andy Dustman <adustman@comstar.net>)
1162         
1163         * gtk/gtktree.c (gtk_tree_remove_items): Look for the
1164         root tree when removing items from a non-previously
1165         mapped tree.
1166
1167         * gtk/testgtk.c: Added a remove_subtree button.
1168         
1169 Thu Apr 23 23:44:17 1998  Owen Taylor  <otaylor@gtk.org>
1170
1171         * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
1172         before object removing data. This change fixes a bug where 
1173         removing the last weak references would cause it to be 
1174         triggered.
1175
1176 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
1177
1178         * gdk/Makefile.am: Removed mostly useless dependency that
1179         was causing problems for SGI's make, when used with
1180         the 'make dist' form of GTK+. (Dependency caused dependencies
1181         to be redone when BUILT_SOURCES changed)
1182
1183 Thu Apr 30 11:18:00 1998  Owen Taylor  <otaylor@gtk.org>
1184
1185         * gtk/gtkcombo.[ch]: Allow the user to use the popup list
1186         like a menu.
1187         
1188         * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
1189         to gtkitem.c so dragging can also work in lists.
1190
1191         * gtk/gtklist.[ch]: Track child enter events and use
1192         those to allow dragging the selection. 
1193
1194 Thu Apr 30 11:16:06 1998  Owen Taylor  <otaylor@gtk.org>
1195
1196         * gtk/gtktext.c: Try enabling background pixmaps for editable text
1197         widgets.  There is a bit of flashing, but not too bad. If you
1198         don't want the flashing, you can always not set a background
1199         pixmap.
1200
1201 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
1202
1203         * gtk/gtktext.c: Fixed a bug where the drawn level
1204         was being messed up when the text was scrolled
1205         during a deletion.
1206         
1207 1998-04-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>
1208
1209         * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
1210         bug:  There is no need to set the ExposureMask in the XGrabPointer
1211         (this caused DnD programs to crash).
1212
1213 Fri Apr 24 01:29:04 1998  Tim Janik  <timj@gtk.org>
1214
1215         * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
1216         field to be of type guint.
1217         * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
1218         ref_count>0;
1219         (gtk_accelerator_table_install): keep a per object list of accelerator
1220         tables that refer to this object.
1221         (gtk_accelerator_table_remove): remove the accelerator table from the
1222         per object list.
1223         (gtk_accelerator_table_clean): warn if there are any object references
1224         left in an accelerator table upon destruction.
1225         (gtk_accelerator_tables_delete): new function to delete object
1226         references from the accelerator tables associated with this object.
1227
1228         * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
1229         GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
1230         of an accelerator can be prevented by gtk_signal_emit_stop().
1231         (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
1232         so there are no stale pointers in accelerator tables left.
1233
1234 1998-04-22  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1235
1236         * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
1237         visible before we unparent it.
1238
1239 Wed Apr 22 04:15:26 1998  Tim Janik  <timj@gtk.org>
1240
1241         * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
1242         running_timeouts list with the tmp_list link itself, not with a new
1243         GList structure pointing to our link. that would fill up memory and
1244         causes the GList.data fields of the running_timeouts list to point to
1245         GList structures and not GtkTimeoutFunction structures which is a
1246         *really* bad thing.
1247         (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
1248         the above entry ;).
1249
1250 Sat Apr 18 22:18:12 1998  Tim Janik  <timj@gtk.org>
1251
1252         * gtk/gtkradiomenuitem.h: 
1253         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
1254         ala gtk_radio_button_set_group.
1255         (gtk_radio_menu_item_init): assure that we always have at least a group
1256         that points to self.
1257
1258         * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
1259         added g_return_if_fail() statements.
1260         (gtk_radio_button_init): assure that we always have at least a group
1261         that points to self.
1262
1263 Fri Apr 17 03:05:05 1998  Tim Janik  <timj@gtk.org>
1264
1265         * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
1266
1267 Wed Apr 15 05:13:09 1998  Tim Janik  <timj@gtk.org>
1268
1269         * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
1270         (Damon Chaplin), which i got wrong when applying Damon's patch the last
1271         time.
1272
1273 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
1274
1275         * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
1276         that when we are running with a non-installed colormap,
1277         in 8-bit pseudo-color, we actually are using the system
1278         visual. (Fixes *Bad Match* errors on Digital Unix machines
1279         with multiple 8-bit pseudo-color visuals)
1280
1281 1998-04-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>
1282
1283         * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
1284         by whoever thought that randomly changing ints to unsigned int
1285         without reviewing the code was a good idea.  It is, btw not
1286         mentioned in the ChangeLog as usual, but I know it was not Elliot
1287         the culprit this time. 
1288
1289 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
1290
1291         * Released GTK+ 1.0.0