]> Pileus Git - ~andy/gtk/blobdiff - ChangeLog.pre-2-0
I forgot to *commit* these before. Note to self: commit after applying
[~andy/gtk] / ChangeLog.pre-2-0
index bf37a6147e5106ef2aa9598185f89c7d1488a78d..55879d6c36cdb1472dcc3634723e78bfc48c6c81 100644 (file)
+Sun Mar  1 15:08:13 CST 1998 Shawn T. Amundson <amundson@gimp.org>
+
+       * docs/*.texi changes from Greg Mclean.
+
+Sun Mar  1 18:41:07 1998  Tim Janik  <timj@gimp.org>
+
+       * gtk/gtkwidget.c (gtk_widget_restore_default_style): hm if we save the
+       default style, we should also provide a function to restore it ;).
+
+       * gtk/main.[hc]: small fixups to idle handlers, added support for quit
+       handlers.
+
+Sun Mar  1 05:18:11 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * gtk/gtkentry.c gtk/gtktext.c gtkeditable.[ch]
+
+       Changed interface to cut/copy/paste so it makes sense
+       when triggered by say, menu items.
+
+Sun Mar  1 03:20:39 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * gtk/gtkentry.[ch] gtk/gtktext.[ch] gtkeditable.[ch]
+
+       Turned off debugging in gtktext.c
+
+       Bug fixes for cutting, pasting, deleting, etc. 
+
+       Some of the bugs that were there before have definitely
+       been fixed. 
+       
+       * gtk/testgtk.c gtk/testgtkrc: Removed my ugly orange backgrounds,
+       to make things look nicer. 
+       
+Sat Feb 28 23:58:54 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * gtk/gtkentry.[ch] gtktext.[ch] gtkeditable.[ch]
+
+       Created a new base widget type Editable for the entry and
+       text widgets, which encapsulates most of the selection and
+       clipboard handling stuff, plus some common signals.
+
+       Changed the Entry widget extensively to support this, 
+       but the interface and appearance should be the same.
+
+       Changed the Text widget moderately to support this.
+
+       It now supports:
+
+       - Selection style cut and paste
+       - Clipboard style cut and paste
+       - Emacs style key bindings (~same as Entry)
+       - Word motion
+       - "changed" signal
+
+       There are definitely still some bugs in the new stuff.
+
+       Use style->base for the background and style->text for
+       the foreground.
+       
+       * gtkfilesel.c gtkspinbutton.c testgtk.c: small changes
+       to fit the new interface more exactly.
+       
+Sat Feb 28 19:29:09 1998  Tim Janik  <timj@gimp.org>
+
+       * gtk/gtkclist.c (gtk_clist_new_with_titles): retrive the clist widget
+       from gtk_type_new (gtk_clist_get_type ()), not gtk_clist_new(),
+       otherwise gtk_clist_construct() gets called twice.
+
+       * gtk/gtkhandlebox.h:
+       * gtk/gtkhandlebox.c: emit signals when the child is attached/detached.
+
+Sat Feb 28 15:18:36 1998  Tim Janik  <timj@gimp.org>
+
+       * gtk/gtkpreview.c: fix behavior of gtk_preview_put() with
+       srcx/srcy != 0, gtk-shige-980127-0.patch.gz by
+       AOSASA Shigeru <aozasa@sakuranet.or.jp>.
+
+       * gdk: applied gtk-roebling-980121-0.patch.gz, patch for region
+       support in Gdk, by Robert Roebling <roebling@ruf.uni-freiburg.de>.
+
+Fri Feb 27 15:31:55 1998  Tim Janik  <timj@gimp.org>
+
+       * gtk/gtktipsquery.c: we make an active server grab now, this way we
+       can change the cursor globally and don't need to tweak event masks
+       of other windows.
+
+       * gtk/gtkframe.c (gtk_frame_style_set): recompute label size.
+
+       * gtk/gtkwidget.h:
+       * gtk/gtkwidget.c:
+       New signal GtkWidget::style_set to be emitted when a widget's style
+       changed. New flag GTK_RC_STYLE to indicate whether an rc lookup has
+       been perfomed for the widget.
+       (gtk_widget_ensure_style): New function.
+       (gtk_widget_set_rc_style): New function.
+
+       * docs/styles.txt: new file.
+
+Fri Feb 27 01:11:55 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * gtk/gtktext.c
+
+       - gtk_text_delete and gtk_text_insert now update caches
+       and refresh screen correctly if the text widget isn't frozen.
+       
+       - Fixed bug where text->first_line_start_index wasn't
+       being updated correctly on insertion and deletion.
+       
+       - Added new public macro GTK_TEXT_INDEX (text, ind), and 
+       function gtk_text_get_chars(text, index, nchars);
+       
+Thu Feb 26 22:36:46 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * gdk/gdkwindow.c gdktypes.c gdk.h: 
+       new functions for setting WM hints
+
+        gdk_window_set_icon()
+        gdk_window_set_icon_name()
+        gdk_window_set_group()
+        gdk_window_set_decorations()
+        gdk_window_set_functions()
+
+       * gdk/MwmUtil.h: new uninstalled header file from lesstif 
+       distribution, used for setting MWM hints.
+
+       * gdk/gdkdnd.c Makefile.am: renamed from gdk/gdk_dnd.c
+       
+       * gtk/gtkhandlebox.c (gtk_handle_box_realize): Use MWM hints
+       to undecorate window.
+
+       * gtk/testgtk.c gtk/circles.xbm: new test for WM hints.
+
+Wed Feb 25 22:56:42 1998  Tim Janik  <timj@gimp.org>
+
+       * gtk/gtkspinbutton.h: 
+       * gtk/gtkspinbutton.c:
+       new widget from Lars Hamann <hamann@braunschweig.netsurf.de> and
+       Stefan Jeske <jeske@braunschweig.netsurf.de>.
+
+       * gtk/gtknotebook.c: fixups from lars and stefan.
+
+Wed Feb 25 13:18:53 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * gtk/gtkbbox.[ch] gtk/gtkhbox.[ch] gtk/gtkvbox.[ch] :
+
+       Move layout constants into an enumeration, split
+       GTK_BUTTONBOX_DEFAULT into GTK_BUTTONBOX_DEFAULT
+       and GTK_BUTTONBOX_DEFAULT_STYLE (enumeration member).
+       
+       * gtk/gtkclist.c:
+
+       Renamed gtk_clist_row_isvisable to .._is_visible
+
+       From: Maciej Stachowiak <mstachow@mit.edu>
+       
+Wed Feb 25 13:50:05 GMT 1998  Tony Gale <gale@gimp.org>
+
+       * docs/gtkfaq.sgml: added questions on:
+               - Why don't the contents of a button move when 
+                 the button is pressed?
+               - How do I catch a double click event in 
+                 a list widget?         
+               - When compiling GTK+ I get an error like: 
+                 make: file `Makefile' line 456: Syntax error 
+          Removed questions on menus which are covered in the
+         tutorial.
+
+         Added link to HTML versions of FAQ and Tutorial on my
+         web site.
+
+Tue Feb 24 22:47:01 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * gtk/gtktext.c: Added some support for i18n. The support 
+       for input methods, including preedit, is there, but input
+       is ignored unless it comes one byte at a time, so the
+       CJK locales won't really work. Fixing that would require
+       variable-width character support in the Text widget, which
+       is probably the wrong approach. Eventually we'll probably
+       want to go to UCS-4 internally.
+
+       Also, revised key press handling, which should improve
+       the forwarding of non-handled keypresses to the toplevel,
+       and make adding selection handling easier.
+
+       * gtk/gtkentry.c: Minor changes so that C-d, etc delete
+       the selection if there is one.
+
+       * gdk/gdk.c (gdk_ic_get_events): Check the result of
+       XGetICValues - it is failing for some reason, and 
+       causing some warnings to be printed.
+
+Mon Feb 23 15:41:13 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * gtk/gtkwidget.c gtk/gtkmenu.c: Don't process configure events
+       that just move the window, and don't resize it. Because we need
+       to make sure that a widget gets redrawn after a size_allocate -
+       and that only happens when the configure event changes the size
+       of the window. Plus, it's inefficient.
+       
+Mon Feb 23 15:45:37 1998  Marc Ewing <marc@redhat.com>
+
+       * gtk/gtktoolbar.h:
+       * gtk/gtktoolbar.c:
+       Added gtk_toolbar_*_element() functions.  Rewrote others
+       to simply call gtk_toolbar_insert_element() to do the
+       work.
+       Added two new GtkToolbarChildType options: TOGGLEBUTTON and
+       RADIOBUTTON, available through the gtk_toolbar_*_element() functions.
+       
+Mon Feb 23 13:44:10 1998  Tim Janik  <timj@gimp.org>
+
+       * gtk/gtkstatusbar.h:
+       * gtk/gtkstatusbar.c:
+       (re-)implemented the statusbar widget. my first intend was to fix the
+       code, but then there was nothing to fix.
+
+Sun Feb 22 20:42:04 1998  Marc Ewing <marc@redhat.com>
+
+       * gtk/gtkclist.c (gtk_clist_insert): Allow inserts
+       on empty clists.
+       
+Sun Feb 22 14:28:43 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * gtk/gtkmain.c (gtk_events_pending): Count idle handlers
+       at internal priority as pending events.
+
+Sun Feb 22 00:20:12 MET 1998  Eckehard Berns  <eb@berns.prima.de>
+
+       * gdk/gdkcc.c (gdk_color_context_query_colors): fixed a bug for mode
+       GDK_CC_MODE_TRUE, when on a 24-bit visual on a 32-bit mashine.
+
+Sat Feb 21 15:33:20 1998  Tim Janik  <timj@gimp.org>
+
+       * gtk/gtkwidget.h: 
+       * gtk/gtkwidget.c: renamed signal GtkWidget::set_parent to
+       GtkWidget::parent_set. since it's purpose is pure notification,
+       it should have been named this way in the first place.
+
+Sat Feb 21 12:06:11 1998  Scott Goehring  <scott@poverty.bloomington.in.us>
+
+       * gtk/gtkentry.c (gtk_entry_set_text): Added a test for passing a
+       NULL text pointer.
+
+Sat Feb 21 14:49:17 1998  Tim Janik  <timj@gimp.org>
+
+       * gtk/gtkobject.h:
+       * gtk/gtkobject.c: gtk_object_query_args takes an additional pointer
+       now which if supplied will point to an array holding the sequential
+       argument ids.
+
+       * gtk/gtktree.c: fix emission of selection_changed signal, supplied
+       by Bolliet Jerome.
+
+       * gtk/gtktreeitem.c: inline the plus and minus pixmaps, supplied by
+       Bolliet Jerome.
+
+       * gtk/gtknotebook.c: do a resize when a page is removed and don't
+       refer to the removed page on the switch signal, supplied by Lars Hamann
+       and Stefan Jeske.
+
+       * gtk/gtktoolbar.h:
+       * gtk/gtktoolbar.c:
+       gtk_toolbar_append_item, gtk_toolbar_prepend_item,
+       gtk_toolbar_insert_item, gtk_toolbar_append_widget,
+       gtk_toolbar_prepend_widget, gtk_toolbar_insert_widget: take an additional
+       gchar *tooltip_private_text as argument to fully support the underlying
+       call to gtk_tooltip_set_tip.
+
+Fri Feb 20 06:40:00 1998  Tim Janik  <timj@gimp.org>
+
+       * gtk/gtktipsquery.h: 
+       * gtk/gtktipsquery.c:
+       New widget GtkTipsQuery for letting the user query tooltips of widgets.
+
+       * gtk/testgtk.c: add example for GtkTipsQuery.
+
+       * gtk/gtk.h: include gtk/gtktipsquery.h.
+
+       * gtk/gtklabel.c: enable default constructing.
+       
+
+Thu Feb 19 18:53:51 1998  Larry Ewing  <lewing@discord.isc.tamu.edu>
+
+       * removed g_warnings from the common XShm failure cases in gdkimage.c
+
+1998-02-19  Federico Mena Quintero  <federico@nuclecu.unam.mx>
+
+       * gtk/gtkcombo.c (gtk_combo_entry_key_press): Added M-p and M-n
+       key equivalents for up and down keys.  Just for us Emacs weenies :-)
+
+Thu Feb 19 12:18:24 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * gtk/testgtk.c : Use POINTER_MOTION_HINT when dragging
+       shapes around. 
+       (gtk-wille-980203-0 
+        Stefan Wille  <1wille@vsys1.informatik.uni-hamburg.de>)
+
+       * gtk/gtktext.c : Fixes to inserting and deleting characters
+       on line breaks.
+       (gtk-magnus-980210-0 Magnus Hulthen <magnus@axiom.se>)
+
+       * glib/configure.in glib/glibconfig.h.in: the value of
+       ---enable_debug is written into glibconfig.h so everything
+       is recompiled when it changes. (HACK)
+
+       * gtk/gtkmain.c gdk/gdk.c docs/debugging.txt:
+       Added --gdk-no-debug and --gtk-no-debug switches. Effect
+       of switches is no cumulative.
+
+Thu Feb 19 06:56:52 1998  Tim Janik  <timj@gimp.org>
+
+        * gtkbox.c:
+        * gtkbutton.c:
+        * gtkcontainer.c:
+        * gtkframe.c:
+        * gtklabel.c:
+        * gtkobject.c:
+        * gtkwidget.c:
+        * gtkwindow.c:
+        present the argument access masks on their announcement.
+
+        * gtk/gtkobject.h:
+        * gtk/gtkobject.c:
+        (gtk_object_add_arg_type): take an additional argument describing
+        the access mask of the new arg. this can be of GTK_ARG_READABLE,
+        GTK_ARG_WRITABLE or GTK_ARG_READWRITE (the latter is an alias for
+        the two previous ones).
+        (gtk_object_query_args): provide an access_mask array if desired.
+
+        * gtk/gtkwidget.c (gtk_widget_real_realize):
+        realized the assumtion that widget is a NO_WINDOW widget
+        in actuall code.
+
+        * gtkwindow.c:
+        slight changes to gtk_window_configure_event that will make
+        the resizing behaviour a little less odd.
+        sigh, for some (buggy) reason, there are still container resizes
+        triggered by manual resizing to very small window sizes.
+        the cointainer resizes will cause gtk_real_window_move_resize to
+        be invoked, which makes the app look like it wants to fight the users
+        resizing action. ;(
+
+Thu Feb 19 01:11:48 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * configure.in         gdk/gdk.[ch]         gdk/gdkcc.c 
+         gdk/gdkglobals.c     gdk/gdkinputcommon.h gdk/gdkprivate.h 
+         gdk/gdkvisual.c      glib/configure.in    glib/glib.h
+         glib/gutils.c        gtk/Makefile.am      gtk/gtkmain.c
+         gtk/gtkobject.[ch]   gtk/gtkdebug.h       docs/debugging.txt   
+
+       New system for controlling debugging:
+
+       * --enable-debug=[no/yes/minimum]
+       * G_DISABLE_ASSERT and G_DISABLE_CHECKS for glib
+       * G_NO_CHECK_CASTS to control cast checking
+       * G_ENABLE_DEBUG enables run time checking which controls:
+           Object tracing
+           Showing events
+           Miscellaneous g_print's in GDK
+         And is controlled by --gdk-debug/GDK_DEBUG, --gtk-debug/GTK_DEBUG
+        * debug_level and show_events are gone from GTK
+
+       See docs/debugging.txt for details.
+       
+       And some fixups to the configure.in's so '-g' can be
+       overriden on the command line for --enable-debug
+       
+Thu Feb 19 05:40:51 1998  Tim Janik  <timj@gimp.org>
+
+       * gtk/gtknotebook.h:
+       * gtk/gtknotebook.c:
+       applied gtk-hamann_jeske-980218-0.patch.gz, a patch from
+       Lars Hamann and Stefan Jeske which introduces major
+       usability improvements.
+       fixed bugs are:
+       - container border_width>0 does now work correctly for show_tabs==TRUE
+         and for tab_pos=GTK_POS_BOTTOM/GTK_POS_RIGHT.
+       - toggleing visibility of the tab labels works now.
+       - emission of GtkNotebook:switch_page and all page changes
+       also the signature for the GtkNotebook:switch_page signal changed,
+       callbacks should now look like:
+       gint notebook_switch_page (GtkWidget *widget,   GtkNotebookPage *page,
+                                   gint       page_num, gpointer         data);
+
+Wed Feb 18 01:09:56 PST 1998  Jay Painter <jpaint@serv.net>
+       * gdk/gdk.c: fixed ambigous else compiler warning
+       * gtk/gtkgamma.c: fixed ambigous else compiler warning
+       * gtk/gtkclist.h:
+       * gtk/gtkclist.c: new signals which break everything! (yeah!)
+       * gtk/gtkfilesel.c: fixed to use new clist signals
+
+Wed Feb 18 04:38:24 1998  Tim Janik  <timj@gimp.org>
+
+       * gtk/gtkwidget.h:
+       * gtk/gtkwidget.c:
+         new signal GtkWidget::set_parent. this signal will be emitted once a
+         widget gets a new/no parent assigned (i.e. from gtk_widget_unparent
+         and gtk_widget_set_parent).
+
+Wed Feb 18 02:58:50 1998  Tim Janik  <timj@gimp.org>
+
+       * gtk/gtktooltips.h:
+         new functions gtk_tooltips_data_get and
+         gtk_tooltips_set_tip, gtk_tooltips_set_tips is discouraged now.
+       (_GtkTooltips): removed some fields that were never used.
+         changed boolean fields to one bit size, to pack together with
+         the delay field.
+       (_GtkTooltipsData): added tip_private, renamed tips_text to
+         tip_text.
+       * gtk/gtktooltips.c:
+         (gtk_tooltips_data_get): new function to retrive the
+         _GtkTooltipsData structure of a widget.
+       (gtk_tooltips_set_tip): new function for more extensible tooltips
+         settings than gtk_tooltips_set_tips which is discuraged now.
+         removed a bug that caused a stale object_data key to a
+         _GtkTooltipsData structure.
+         removed a bug that caused tips falsly to come up for a grab widget
+         on widgets where events were grabbed from.
+
+1998-02-17  Federico Mena Quintero  <federico@nuclecu.unam.mx>
+
+       * gdk/gdkcc.c: Added some missing newlines on debug messages.
+
+Tue Feb 17 05:41:31 1998  Tim Janik  <timj@gimp.org>
+
+       * gtk/gtkentry.c (gtk_entry_init): invoke gtk_entry_grow_text already
+         in this place, so the application will never see entry->text==NULL.
+         (see also ChangeLog entry from Tue Feb 11 1997 on this).
+
+        * gtk/gtkcheckbutton.c:
+        * gtk/gtkradiobutton.c:
+        * gtk/gtktogglebutton.c:
+          applied patch to fix draw_indicator behaviour from Lars Hamann
+          and Stefan Jeske.
+
+        * gtk/gtkmain.h:
+        * gtk/gtkmain.c (gtk_grab_get_current): new function
+          that returns the current grab widget or NULL.
+
+        * gdk/gdkwindow.c (gdk_window_shape_combine_mask): remove
+          shape mask if mask==NULL (provided by Stefan Wille).
+
+Tue Feb 17 00:06:26 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * gtk/gtkpaned.c, gtk/gtk[hv]paned.c: (gtk-fortier-980215-0)
+         From Patrice Fortier <Patrice.Fortier@aquarel.fr>
+
+         Add a widget->window for paned windows, so they
+         can be reparented properly.
+
+Mon Feb 16 23:47:09 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * gtk/gtkviewport.c: (gtk-fortier-980130-0)
+         From Patrice Fortier <Patrice.Fortier@aquarel.fr>
+       
+         Eliminate some extra expose events for viewports.
+         (To be conservative, I set the user's event mask for
+          both widget->window, and viewport->bin_window  -owt)
+
+Mon Feb 16 23:12:14 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * gtk/gtkmain.c: Make timeout and idle insertion code
+         use g_list_insert_sorted().
+
+Mon Feb 16 17:35:17 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * gtk/gtktreeitem.c: Use gtk_signal_default_marshaller,
+         for expand/collapse signals.
+
+Fri Feb 13 19:08:51 1998  Tim Janik  <timj@gimp.org>
+
+       * gtk/gtkclist.c (check_exposures): check for clist !REALIZED.
+       (draw_rows): bail out if the widget isn't drawable.
+       (hadjustment_value_changed): 
+       (vadjustment_value_changed): bail out if clist isn't drawable.
+
+       * gdk/gdk.c (graphics_expose_predicate): check for private != NULL.
+       (gdk_event_get_graphics_expose): check for window != NULL.
+
+Fri Feb 13 00:33:26 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * gtk/testgtk.c (shape_create_icon): Realize window before
+         creating xpm so it gets the right colormap/visual,
+         instead of the default one.
+
+Thu Feb 12 23:59:49 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * gtk/gtksignal.[ch] gtk/gtkmain.[ch] gtk/gtkcontainer.[ch]
+         gtk/gtkselection.[ch] gdk/gdk.[ch] gtktypeutils.h 
+         
+         Replaced all _interp functions with _full functions.
+         (_interp functions left in for compatibility until 0.99.5). 
+         Difference: _full functions take _both_ a C-language callback and a
+         marshaller, and simply ignore the C-language callback
+         if the marshaller is present. This allows the destroy notification
+         to be used without marshalling.
+
+         gtk_selection_add_handler[_full]() regularized to agree
+         with other callbacks.
+       
+         Also, added gtk_input_add_full() to the header file. 
+         (gtk_input_add_interp() was never there)
+
+       * gtk/gtkmain.[ch] gtk/gtkwidget.c: Idle functions are now prioritized.
+         Added new function gtk_idle_add_priority to create
+         an idle with a specified priority (default is zero)
+         constants #defined - GTK_PRIORITY_[HIGH/INTERNAL/DEFAULT/LOW]
+         (redraws, resizes run at GTK_PRIORITY_INTERNAL)
+       
+       * gtk/gtkentry.c gtk/testselection.c: changes to keep up with change
+         to gtkselection.c. 
+
+       * gtk/gtkentry.c gtk/gtkinputdialog.c gtk/gtklist.c
+         gtk/gtklistitem.c gtktree.c gtk/gtktreeitem.c testgtkrc:
+
+         Change style->white to style->base[] where appropriate.
+         Change the default style to make this apparent. (Yes, its
+         ugly... it can be removed later)
+       
+Tue Feb 10 15:01:44 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * gtk/gtkobject.c gtk/gtkobject.h: Add a DestroyNotify
+       field, and gtk_object_set_data_full() to match.
+
+       * gtk/gtkobject.c (gtk_object_finalize): ObjectData structures
+       were being added to a free list, then forgotten about. Just
+       rely on GMemChunk instead.
+
+2018-02-11  Federico Mena Quintero  <federico@nuclecu.unam.mx>
+
+       * gtk/gtkclist.c:
+       * gtk/gtkentry.c: 
+       * gtk/gtkfixed.c:
+       * gtk/gtkhandlebox.c:
+       * gtk/gtknotebook.c:
+       * gtk/gtkpaned.c:
+       * gtk/gtkpreview.c:
+       * gtk/gtkrange.c:
+       * gtk/gtkruler.c:
+       * gtk/gtktext.c:
+       * gtk/gtkviewport.c:
+       Fixed unrealize handler to comply with the
+       documentation (which mentions the right thing to do).
+
+Wed Feb 11 00:18:31 1998  Tim Janik  <timj@gimp.org>
+
+       * docs/refcounting.txt: backed out the section "Gnits to care about".
+       * docs/developers.txt: new file, kinda developers FAQ.
+
+       * 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_signal_get_handlers again. some handlers might have
+          been removed or added. not doing this would mess up the
+          memchunk allocation of signal handlers (this had been
+          triggered by multiple *_while_alive connections), bad, bad, bad!
+          (gtk_handlers_run): do the referencing on signal handlers
+          unconditionally, the invokation of AFTER handlers will now take
+          care of modified lists.
+
+        * gtk/gtksignal.h: added gtk_signal_connect_while_alive.
+
+Tue Feb  3 15:34:27 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * gdk/gdkcolor.c (gdk_colormap_get_system): Only query
+         the colormap for GRAYSCALE and PSEUDOCOLOR visuals,
+         and don't ask for more than 256 colors in any case.
+
+       * gdk/gdkwindow.c (gdk_window_internal_destroy): Remove
+         the input window information when we destroy the window,
+         not when we are notified of it.
+
+       * gdk/gdkinputcommon.h (gdk_input_device_new): Work around
+         bug in XFree86 3.3.1's handling of Wacom macro buttons.
+         by assumming no device will report exactly 25 buttons.
+
+       * gdk/gdkinputcommon.h (gdk_input_common_other_event): Fill
+         in string translation for generated key press events,
+         do sanity checking on received key codes.
+
+       * gdk/gdkcc.c (gdk_color_context_new): Allocate enough
+         room for a GdkColorContextPrivate, not just for a 
+         GdkColorContext.
+
+Tue Feb  3 15:09:55 1998  Tim Janik  <timj@gimp.org>
+
+       * gtk/testgtk.c: don't add the same menu to different menuitems/
+         optionmenus.
+
+       * gtk/gtkmenuitem.h:
+       * gtk/gtkmenuitem.c: new function gtk_menu_item_remove_submenu ro
+         be consistent with optionmenu. use gtk_menu_attach_to_widget/
+         gtk_menu_detach for setting/removing the submenu.
+         invoke gtk_widget_destroy(submenu) in destructor to be consistent
+         with other destructors.
+
+       * gtk/gtkoptionmenu.h: 
+       * gtk/gtkoptionmenu.c: attach/detach to menu widget via
+         gtk_menu_attach_to_widget/gtk_menu_detach.
+         invoke gtk_widget_destroy(menu) in destructor to be consistent
+         with other destructors.
+
+       * gtk/gtkmenu.h: 
+       * gtk/gtkmenu.c: new functions gtk_menu_attach_to_widget
+         and gtk_menu_detach that correspond to the action of
+         gtk_widget_set_parent and gtk_widget_unparent.
+
+       * gtk/widget.c: few fixups.
+
+Tue Feb  3 00:12:00 1998  Owen Taylor  <owt1@cornell.edu>
+       * gtk/gtktable.c 
+         Fixed problem with division by zero in row/column-spanned
+         tables. Also removed a bunch of conditionals by making
+         the observation that x/1 == x.
+
+Mon Feb  2 04:15:08 1998  Tim Janik  <timj@gimp.org>
+
+       * gtk/gtkwindow.c:
+       * gtk/gtkwidget.c:
+       * gtk/gtkmain.c:
+       * gtk/gtkwidget.c:
+       * gtk/gtkcontainer.c:
+       * gtk/gtkprivate.h (GTK_PRIVATE_UNSET_FLAG) (GTK_PRIVATE_UNSET_FLAGS): 
+         changed name to reflect that these macros in fact can't operate on
+         multiple flags.
+
+       * gtk/gtktoolbar.c: fixed destroy handler, so it doesn't
+         segfault with the new refcounting scheme anymore.
+
+       * gtk/gtkhandlebox.c:
+       * gtk/gtkclist.c:
+       * gtk/gtkentry.c:
+       * gtk/gtkrange.c:
+       * gtk/gtktext.c:
+       * gtk/gtkviewport.c:
+         enforced
+                 gdk_window_set_user_data (window, NULL);
+         gdk_window_destroy (window);
+         window = NULL;
+         throughout the code.
+
+       * gtk/gtkmain.c (gtk_propagate_event): fixed a bad, bad referencing
+         bug that could caused unreferencing of finalized objects.
+
+       * gtk/testgtk.c: destroy fileselection on "OK" (this triggered the
+         above mentioned bug).
+
+       * gtk/gtkwidget.h:
+       * gtk/gtkwidget.c:
+       * gtk/gtkobject.h:
+       * gtk/gtkobject.c:
+         implemented and object reference tracer (gtk_trace_referencing) which
+         is activated if GTK_TRACE_OBJECTS is defined (currently per default).
+         in gdb: set the static variable `gtk_trace_object' to point to the
+         object that you want to have reference traced.
+
+       * gtk/gtkfileselection.c: few cleanups.
+
+       * gtk/gtkcolorsel.c:
+       * gtk/gtkcombo.c:
+       * gtk/gtkobject.c:
+       * gtk/gtkselection.c:
+       * gtk/gtkwidget.c:
+       * gtk/gtkwindow.c:
+         cleanups with key name spaces.
+
+       * gtk/gtkcombo.c: fixed destruction bug with popwin.
+
+       * gtk/gtkcontainer.h: 
+       * gtk/gtkcontainer.c: GTK_RESIZE_NEEDED is a private flag now.
+         (gtk_container_register_toplevel): new function.
+         (gtk_container_unregister_toplevel): new function.
+
+       * gtk/gtkmain.c: GTK_LEAVE_PENDING is a private flag now.
+
+       * gtk/gtkmenu.c: call gtk_container_register_toplevel in
+         gtk_menu_class_init instead of this dirty gtk_widget_set_parent(,NULL)
+         hack. new default handler gtk_menu_destroy for calling
+         gtk_container_unregister_toplevel. removed GTK_ANCHORED, GTK_UNMAPPED.
+
+       * gtk/gtkobject.h: macro cleanups, added GTK_DESTROYED flag.
+
+       * gtk/gtkobject.c: only emit DESTROY signal if !GTK_OBJECT_DESTROYED
+         (object).
+
+       * gtk/gtkprivate.h: new file that will not be automatically included.
+         it holds the private flags for GtkWidget along with it's SET/UNSET
+         and examination macros.
+
+       * gtk/gtkwidget.c: private flags: GTK_RESIZE_NEEDED, GTK_REDRAW_PENDING,
+         GTK_RESIZE_PENDING, GTK_IN_REPARENT, GTK_USER_STYLE. GTK_ANCHORED is
+         replaced by GTK_TOPLEVEL. added missing UNSET for GTK_IN_REPARENT.
+         removed the gtk_widget_set_parent(, NULL) hack for toplevels.
+         upon destroy free memory for widgets with GTK_WIDGET_HAS_SHAPE_MASK.
+
+       * gtk/gtkwidget.h: split up the widget flags into a public and a private
+         portion. added an extra field private_flags to GtkWidget without making
+         it bigger by using an alignment gap of 16 bit. macro cleanups.
+
+       * gtk/gtkwindow.c: removed GTK_ANCHORED. new function gtk_window_destroy
+         for calling gtk_container_unregister_toplevel. removed the
+         gtk_widget_set_parent(,NULL), call gtk_container_register_toplevel
+         instead. remove GTK_UNMAPPED. GTK_RESIZE_NEEDED is private now.
+
+       * gtk/gtksignal.c (gtk_signal_disconnect): removed a bug on
+         removal that cut off the handler list -> living_objects == 0
+         with testgtk. made some warnings more descriptive.
+         new function gtk_signal_connect_object_while_alive, which
+         will automatically destroy the connection once one of the objects
+         is destroyed. didn't include this before removal of the above
+         mentioned bug.
+
+Sat Jan 31 23:55:03 1998  Tim Janik  <timj@gimp.org>
+
+       * ChangeLog entry for Friday (incorporation of Marius Vollmer's
+         reference counting revolution, plus various fixups and additions
+         from myself).
+
+       * gdk/gdk.h:
+       * gdk/gdkgc.c: new functions gdk_gc_ref/gdk_gc_unref.
+
+       * gdk/gdkprivate.h: cleanups on ref_count field sizes.
+
+       * gtk/gtkadjustment.c (gtk_adjustment_set_value): new function for
+         emission of GtkAdjustment::value_changed signal.
+
+       * gtk/gtkbin.c:
+       * gtk/gtkcolorsel.c:
+       * gtk/gtkcurve.c:
+       * gtk/gtkentry.c:
+       * gtk/gtkframe.c:
+       * gtk/gtkinputdialog.c:
+       * gtk/gtklabel.c:
+       * gtk/gtkpixmap.c:
+       * gtk/gtkpreview.c:
+       * gtk/gtkrange.c:
+       * gtk/gtktable.c:
+       * gtk/gtkwindow.c:
+         replaced functionality of gtk_*_destroy by gtk_*_finalize.
+
+       * gtk/gtkbox.c:
+       * gtk/gtkbutton.c:
+       * gtk/gtkfixed.c:
+       * gtk/gtkmenushell.c:
+       * gtk/gtknotebook.c:
+       * gtk/gtkpaned.c:
+       * gtk/gtkscale.c:
+         removed default destroy handler.
+
+       * in general: reference parent->window for NO_WINDOW widgets.
+         set user data of a GdkWindow to NULL before destruction.
+       
+       * gtk/gtkbutton.c: use gtk_widget_unparent instead of gtk_widget_destroy
+         in *_set_arg.
+
+       * gtk/gtkcontainer.c: provide other containers with a default destroy
+         handler that will destroy all children.
+         new function gtk_container_foreach_interp.
+         new field resize_widgets.
+
+       * gtk/gtklist.c: handle destruction of children in gtk_list_destroy.
+         replaced occourances of gtk_widget_destroy with gtk_widget_unparent.
+         reference children that are in the selection list.
+
+       * gtk/gtkmain.c: reference grab widgets.
+         (gtk_get_event_widget): check for event.window != NULL. Note: this
+         function may return NULL now!.
+         (gtk_propagate_event): much simplified by using proper reference
+         counting.
+
+       * gtk/gtkmenu.c: introduce GTK_TOPLEVEL, and gtk_widget_set_parent(,
+         NULL) hack.
+
+       * gtk/gtkmenuitem.c: gtk_widget_(un)ref the submenu.
+
+       * gtk/gtkmenushell.c: check for return value of gtk_get_event_widget.
+
+       * gtk/gtknotebook.c: proper gtk_widget_unparent()ing.
+
+       * gtk/gtkobject.c: new functions gtk_object_finalize,
+         gtk_object_notify_weaks, gtk_object_debug, gtk_object_sink,
+         gtk_object_weakref, gtk_object_weakunref. implementation of the new
+         reference counting scheme for gtkobjects (consult gtk+/REFCOUNTING).
+
+       * gtk/gtkoptionmenu.c: proper reference counting for option_menu->menu.
+
+       * gtk/gtkscrolledwindow.c: new finalize handler for proper referencing
+         of the subwidgets.
+
+       * gtk/gtksignal.c: internal representation of signal_type is now 16 bit
+         instead of 13 bits. this is needed because of user signals.
+         new functions gtk_signal_handler_ref and gtk_signal_handler_unref
+         (replacement for gtk_signal_handler_destroy).
+         gtk_signal_emit, gtk_signal_emit_by_name, gtk_signal_real_emit used
+         to return the existence of a GtkObject. this will always be TRUE now,
+         therefore the return value is now void.
+
+       * gtk/gtktooltips.h:
+       * gtk/gtktooltips.c: GtkTooltips is now a descendant of GtkData and
+         therefore a real GtkObject.
+
+       * gtk/gtktree.c: reference changes similar to thos in gtklist.c.
+
+       * gtk/gtktreeitem.c: reference th e pixmaps properly.
+
+       * gtk/gtktypeutils.h:
+       * gtk/gtktypeutils.c: new function gtk_arg_copy() to conform to
+         the requirements of gtk_object_get().
+
+       * gtk/gtkviewport.c: finalize handler for proper referencing of the
+         adjustments.
+
+       * gtk/gtkwidget.c: substituted VISIBILITY_NOTIFY_EVENT by NO_EXPOSE_EVENT.
+         added finalize handler. added gtk_widget_ref/gtk_widget_unref.
+         new functions gtk_widget_idle_draw and gtk_widget_idle_sizer, that
+         will handle all widgets that are currently in either queue.
+         referencing all over the place. changes because gtk_signal_emit
+         returns void now. moved queue removal into the destroy handler.
+         gtk_widget_real_unrealize propagates now down the tree. new flag
+         GTK_TOPLEVEL. new function gtk_widget_destroyed for connection to the
+         destroy signal of a widget. this function nullifies the widgets
+         structure pointer, look at gtkmain.c for an example on this.
+
+       * gtk/gtkwindow.c: new functions gtk_window_activate_focus,
+         gtk_window_activate_default. for activation of the appropriate
+         children. changes to the resizing code because there is a new
+         field resize_widgets in GtkContainer now.
+
+       * gtk/testgtk.c: some changes because of all the above ;)
+
+Sat Jan 31 21:26:27 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * gtk/gtkwidget.c: Added a new GTK_IN_REPARENT flag and revised
+         gtk_widget_reparent so that the child would not be unrealized
+         unnecessarily. Changed gtk_widget_unrealize () to recursively
+         unrealize the children (since the child windows will be 
+         destroyed too.)
+
+Sat Jan 31 00:05:34 PST 1998 Manish Singh <yosh@gimp.org>
+
+       * gtk/gtkcombo.c: changed to use g_strcasecmp
+       * gtk/gtkobject.c: #include <stdlib.h> for atexit
+
+Sat Jan 31 00:13:33 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * gtk/gtkstyle.c: Backed out change to close polygons
+         since it caused problems for the Notebook.
+
+Fri Jan 30 22:28:09 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * gtk/gtkclist.{c,h}:
+          - Conformity to new reference counting schemes
+          - Font and color information is no-longer taken from
+            the (possibly unitialized) style before the widget
+            is realized, but is obtained when needed. (Fixes
+            problems with non-default styles)
+          - white_gc => base_gc where appropriate
+          - Handle graphics expose events correctly (or as
+            correctly as anywhere else) so that scrolling when
+            overlapped works.
+
+Fri Jan 30 21:32:11 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * gtk/gtkwidget.c (gtk_widget_init): Don't replace the object
+       flags, augment them. (Otherwise we'll clear the FLOATING flag)
+
+Fri Jan 30 17:41:06 1998  George Lebl  <jirka@5z.com>
+
+       * gtk/gtktable.c: fixed round-off error in calculation
+         of tabels with a lot of cells
+
+Fri Jan 30 08:51:16 1998  Federico Mena  <federico@bananoid.nuclecu.unam.mx>
+
+       * gdk/gdkcc.c (gdk_color_context_get_pixel): red/green/blue
+       parameters are now expected to be in [0, 65535], to be consistent
+       with the rest of Gdk.
+       (gdk_color_context_get_pixels): Made it use 16-bit color values as
+       well.  Fixed mdist=1000000 buglet (it should start with at least
+       0x1000000).
+       (gdk_color_context_get_pixels_incremental): Same as
+       gdk_color_context_get_pixels().
+
+Thu Jan 29 22:57:39 1998  Owen Taylor  <owt1@cornell.edu>
+
+       * gtk/gtkstyle.c (gtk_default_draw_polygon): Close
+         the polygon if it isn't already. (To match gtk_draw_polygon)
+         Simplified logic. (Appearance could probably be
+         improved for objects with gradual curves by adding in
+         some intermediate edge coloration)
+
+Thu Jan 29 21:36:14 1998  Tim Janik  <timj@gimp.org>
+
+       * gtk/gtksignal.c (gtk_signal_query): new function to gather
+         information about a certain signal.
+
+       * gtk/gtksignal.c (gtk_signal_newv): new function similar to
+         gtk_signal_new().
+
+       * gtk/gtksignal.c (gtk_signal_real_emit): check for function_offset
+         == 0.
+
+       * gtk/gtksignal.c (gtk_signal_connect_by_type): perform a signal
+         id lookup on the parent as well.
+
+       * gtk/gtkobject.c (gtk_object_class_add_user_signal): new
+         function for implementation of user defined signals.
+       * gtk/gtkobject.c (gtk_object_class_add_signals): free old
+         signal id array.
+
+       * gtk/gtkobject.h: this holds the typedefs for GtkSignalFunc and
+         GtkSignalMarshaller now, because they are used for
+         gtk_object_class_add_user_signal.
+
+       * gtk/gtktypeutils.c (gtk_type_class_init): reset object_class->signals
+         and object_class->nsignals for new object classes.
+
+Tue Jan 27 15:52:48 1998  Federico Mena  <federico@bananoid.nuclecu.unam.mx>
+
+       * gtk/gtkhandlebox.c (gtk_handle_box_realize): The auto_shrink
+       policy of the floating window is now set to TRUE.  This fixes the
+       problem of the floating window being too big when the handlebox
+       child is small.
+       (gtk_handle_box_motion): Now we use GDK_POINTER_MOTION_HINT_MASK
+       to improve movement.
+
+Tue Jan 27 14:15:50 CST 1998 Shawn T. Amundson <amundson@gimp.org>
+
+        * docs/gtkfaq.sgml: more additions/changes Tony Gale.
+
+Mon Jan 26 17:12:12 CST 1998 Shawn T. Amundson <amundson@gimp.org>
+
+       * docs/gtkfaq.sgml: additions/changes from new FAQ maintainers
+          Nathan Froyd and Tony Gale.
+
+Mon Jan 26 16:54:02 CST 1998 Shawn T. Amundson <amundson@gimp.org>
+
+       * docs/gtk.texi: additions/changes from Gregory A. McLean
+
+Mon Jan 26 02:15:29 1998  Tim Janik  <timj@gimp.org>
+
+       * gdk/gdkdraw.c:
+       * gdk/gdkgc.c:
+       * gdk/gdkimage.c:
+       * gdk/gdkinput.c:
+       * gdk/gdkpixmap.c:
+       * gdk/gdkproperty.c:
+       * gdk/gdkselection.c:
+       * gdk/gdkwindow.c: added a bunch of checks for window != NULL and
+         private->destroyed.
+
+Sun Jan 25 19:15:32 1998  Tim Janik  <timj@gimp.org>
+
+       * gtk/gtkwidget.h (enum): added new widget flag GTK_LEAVE_PENDING.
+       * gtk/gtkmain.c (gtk_main_iteration_do): if a widget has
+         GTK_LEAVE_PENDING set, send it its LEAVE_NOTIFY event, regardless
+         of a grab or sensitivity.
+         changed the compression code for enter/leave notify events to
+         free *both* compressed event, and removed an unneccessary call
+         to g_list_remove.
+
+       * ChangeLog: finally catched up with the recent changes on my part.
+
+       * gtk/gtkobject.h: new element n_args in GtkObjectClass.
+       * gtk/gtkobject.c (gtk_object_query_args): this function now returns
+         the arguments in the correct order.
+
+        * gtk/gtkbox.c:
+       * gtk/gtkbutton.c:
+       * gtk/gtkcontainer.c:
+       * gtk/gtkframe.c:
+       * gtk/gtklabel.c:
+       * gtk/gtkobject.c:
+       * gtk/gtkwidget.c:
+       * gtk/gtkwindow.c: various fixes and additions to the gtk_*_set_arg
+         and gtk_*_get_arg() functions.
+
+       * gdk/gdk.h:
+       * gdk/gdk.c (gdk_pointer_is_grabbed): new function.
+
+       * gtk/gtkmain.h:
+       * gtk/gtkmain.c: implementations of gtk_invoke_key_snoopers(),
+         gtk_key_snooper_install() and gtk_key_snooper_remove(). this
+         mechanism allowes applications to track global hot keys that need
+         to bypass accelerator tables and else key processing stuff.
+
+Thu Jan 22 18:58:44 1998  Federico Mena  <federico@bananoid.nuclecu.unam.mx>
+
+       * gdk/gdkcc.c: Switched the file to GNU indentation, for consistency.
+
+       * gdk/gdktypes.h (struct _GdkColorContext): Picky, picky... fix
+       two lines with wrong indentation :-)
+
+Thu Jan 22 02:32:06 1998  Scott Goehring  <scott@poverty.bloomington.in.us>
+
+       * 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>
+
+       * Released 0.99.3
+
+Wed Jan 21 01:32:21 1998  Tim Janik  <timj@psynet.net>
+
+       * gtk/gtkwidget.h:
+       * gtk/gtkwidget.c: changed the state_changed signal to take an
+         extra argument `old_state'.
+         removed `gtk_widget_restore_state'.
+         changed `gtk_widget_set_state' and `gtk_widget_set_sensitive' to use
+         only one function `gtk_widget_propagate_state' to iterate down the
+         tree. this causes GtkWidget::state_changed to be invoked on state
+         changes and on sensitivity changes. some comment cleanups.
+
+Tue Jan 20 16:38:52 1998  Owen Taylor  <owt1@cornell.edu>
+       * gtk/gtkcombobox.{c,h}: removed
+         gtk/gtkcombo.{c,h}: added [Paolo Molaro's version]
+         gtk/testgtk.c: changed to use new version
+         gtk/Makefile.am gtk/gtk.h
+       
+Mon Jan 19 20:10:19 CST 1998 Shawn T. Amundson <amundson@gimp.org>
+
+       * gdk/gdk.h Fixed typo where strdup was used instead of g_strdup
+          (found by Frank Neumann)
+
+Mon Jan 19 16:21:00 1998  Federico Mena  <federico@bananoid.nuclecu.unam.mx>
+
+       * gtk/gtktoolbar.c (gtk_toolbar_class_init): Set
+       container_class->focus to NULL.  Widgets in the toolbar should not
+       get the focus via the normal key bindings (no toolkit does this,
+       and it makes sense).
+
+       * gtk/testgtk.c (create_toolbar): Removed the GTK_PIXMAP casts to
+       match Eckehard's new prototypes.
+
+       * gtk/gtktoolbar.h: Switched the order of the tooltip_text and
+       widget parameters to the gtk_toolbar_*_widget() functions, to be
+       friendlier to the C++ bindings.  This is per request of Guillaume
+       Laurent.
+
+Mon Jan 19 09:16:38 1998  Tim Janik  <timj@psynet.net>
+
+       * gtk/gtkmain.c (gtk_grab_add) (gtk_grab_remove): this is a stack
+         of grabbing widgets now, having unique entries. the GTK_HAS_GRAB
+         flag of a widget is set while it is on the stack (wasn't
+         implemented before).
+
+Mon Jan 19 00:46:18 1998 MET  Eckehard Berns  <eb@berns.prima.de>
+
+       * gtk/gtktoolbar.[ch]: changed
+         gtk_toolbar_{append,prepend,inser]_item to accept any GtkWidget
+         as icon to allow more flexibility
+
+Sun Jan 18 16:54:55 CST 1998 Shawn T. Amundson <amundson@gimp.org>
+       * gtk/gtkstatusbar.[ch] added new widget, the statusbar
+
 Sun Jan 18 09:57:00 1998  Owen Taylor  <owt1@cornell.edu>
 
        * gtk/gtkbutton.c gtk/gtkclist.c gtk/gtkdrawingarea.c