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