+Wed Feb 11 00:18:31 1998 Tim Janik <timj@gimp.org>
+
+ * gtk/gtksignal.h:
+ * gtk/gtksignal.c: new function gtk_signal_handler_pending() returning
+ the id of the next handler pending for that signal or 0.
+ put struct GtkHandler back into gtksignal.c along with
+ gtk_signal_get_handlers.
+
+Tue Feb 10 07:12:07 1998 Tim Janik <timj@gimp.org>
+
+ * gtk/gtksignal.h:
+ * gtk/gtksignal.c:
+ ok, there have been several severe bugs in the signal handler
+ referencing and ->next connection stuff. these bugs caused
+ invokations of handlers that are disconnected and - worse -
+ destroyed already. invokation of *destroyd* handlers mean:
+ anything can be executed , because the handler structure can just
+ as well be realocated.
+ at the cost of an extra ->prev field per handler we should have a
+ reasonable stable system now, because of the various places that
+ can cause a handler to be disconnected (*any* handler invokation can
+ cause *any* or *all* handlers to be disconnected, there is no way
+ around a doubly linked list, actually handler disconnection has never
+ worked correctly because of this.
+ handlers are connected together via a *doubly* linked list now, and it
+ is *not* valid to remove a handler out of this list untill all its
+ references have been droped, i.e. handler->ref_count==0.
+ to prevent emissions of disconnected but still referenced handlers,
+ disconnected handlers are simply marked as blocked and get an id of 0
+ which is an invalid signal handler id.
+ the handler->id has been changed to have 28 significant bits (using
+ alignment gaps), since 65536 (old range: guint16) signal connections
+ (as a total) can easily be reached by complex applications.
+ this whole handler thingy is at least as tedious as writing doubly
+ linked list implementations ;)
+
+Mon Feb 9 23:08:16 1998 Owen Taylor <owt1@cornell.edu>
+
+ * gtk/gtkwidget.c (gtk_widget_unparent): Check for
+ the RESIZE_NEEDED flag and remove the widget from the list.
+ Remove the check from gtk_widget_destroy (no longer needed).
+
+ * Unrealize widget _before_ calling "destroy" signal, and
+ unset VISIBLE flag.
+
+ * Unrealize child widgets _after_ unrealizing parent to improve
+ visual appearance.
+
+Mon Feb 9 16:42:21 1998 Miguel de Icaza <miguel@nuclecu.unam.mx>
+
+ * gtk/gtksignal.c (gtk_signal_get_handlers): no longer a private
+ routine;
+ gtksignal.h: export gtk_signal_get_handlers and GtkHandlers type.
+
+Sun Feb 8 07:06:54 1998 Tim Janik <timj@gimp.org>
+
+ * gtk/gtkmenu.c (gtk_menu_get_attach_widget): new function to return
+ the widget that the menu is attached to.
+
+Sat Feb 7 11:33:08 1998 Owen Taylor <owt1@cornell.edu>
+
+ * gdk/gdkgc.c (gdk_gc_copy): use a mask of 0xffffffff
+ instead of 0xffff, since there are 22 flags currently
+ defined. (From: Jon Trowbridge <trow@emccta.com>)
+
+ Changed to something better. ~((~1) << GCLastBit)
+ (From: from Daniel Stephens <daniel@cheeseplant.org>)
+
+Sat Feb 7 02:29:01 1998 Tim Janik <timj@gimp.org>
+
+ * gdk/gdk.c (gdk_event_translate): don't wipe out window_private's x
+ and y coordinates if the configure notify is only about resizing,
+ query the correct origin instead.
+
+Wed Feb 4 23:05:28 1998 Scott Goehring <scott@poverty.bloomington.in.us>
+
+ * gtk/gtkmenufactory.c: menufactories now ref&sink the menus they
+ create
+
+Thu Feb 5 02:13:08 1998 Tim Janik <timj@gimp.org>
+
+ * gtk/gtklist.h:
+ * gtk/gtklist.c (gtk_list_remove_items_no_unref): new function
+ to perform the same actions as gtk_list_remove_items, but
+ supply the removed widgets with an additional reference count.
+
+ * gtk/gtkmain.c (gtk_main_iteration_do): ignore events
+ with event_widget == NULL, since they are bogus events
+ from destroyed GdkWindows, exept for the case where
+ event->type==GDK_PROPERTY_NOTIFY. Always handle expired
+ timeout functions when returning from this function.
+
+ * gtk/gtkwidget.c (gtk_widget_event): ignore GDK_EXPOSE events
+ if event->window == NULL. Also, if this function couldn't handle
+ the event for any reason (including failing assumptions), make
+ the return value to look as if the event had been handled to
+ avoid further processing (and warnings).
+
+ * gtk/gtkwidget.h:
+ * gtk/gtkwidget.c: remove gtk_widget_sink, because there is
+ no point in providing such a function.
+
+ * gdk/gdk.c (gdk_init): changed options `-name' and `-class'
+ to `--name' and `--class', because the old names would
+ confuse getopt(). these arguments have been introduced in the
+ changes from gtk+970916 to gtk+970925 without a ChangeLog entry,
+ changing argument names is painful, it would be nice if people
+ would care about compatibility and consistency in the first place!
+
Tue Feb 3 15:09:55 1998 Tim Janik <timj@gimp.org>
+
+ * docs/widget_system.txt: new file containing notes about
+ the inner workings of the widget system of GTK+, a widget
+ flag description and certain invariants about widget states.
+
+ * docs/refcounting.txt: moved file (previously REFCOUNTING)
+ introducing The Reference Counting Scheme of GDK an GTK+.
+ lots of additions/corrections.
* gtk/gtksignal.c (gtk_signal_real_emit): for the emission
of AFTER signals, fetch the objects signals via
* gtk/testgtk.c: some changes because of all the above ;)
->>>>>>> 1.103
Sat Jan 31 21:26:27 1998 Owen Taylor <owt1@cornell.edu>
* gtk/gtkwidget.c: Added a new GTK_IN_REPARENT flag and revised
Thu Jan 22 02:32:06 1998 Scott Goehring <scott@poverty.bloomington.in.us>
- * gtk/Makefile.am: Fixed the called to runelisp to use $(SHELL).
+ * gtk/Makefile.am: Fixed the call to runelisp to use $(SHELL).
(Cannot rely on the script having execute permissions.)
Wed Jan 21 17:29:54 CST 1998 Shawn T. Amundson <amundson@gimp.org>