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