]> Pileus Git - ~andy/gtk/blobdiff - ChangeLog.pre-2-8
gtk/gtkmain.c Use the new
[~andy/gtk] / ChangeLog.pre-2-8
index f8706bf8b41856346d5dc04d82904fd9073dd0f2..3ef0b0ec6315e5e0e9ebc96db622a52e75741498 100644 (file)
+2001-01-18  Tor Lillqvist  <tml@iki.fi>
+
+       * gtk/gtkmain.c
+       * gtk/gtkrc.c: (Win32) Use the new
+       g_win32_get_package_installation_(sub)directory() functions.
+
+       * config.h.win32.in: New file.
+       
+       * config.h.win32: Removed.
+
+       * configure.in: Output config.h.win32.
+
+       * Makefile.am: Add it to EXTRA_DIST.
+
+       * gtk/gtk.def: Update.
+
+Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtklabel.c (gtk_label_size_request): Set the
+       attributes onto the PangoLayout even if they are newly
+       created from label->pattern.
+
+Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gdk/x11/gdkdnd-x11.c: Remove unused variable.
+
+       * gtk/gtkdnd.c: Encapsulate storing and retrieving info
+       structures in functions. Fixes bug where gtk_dataset_*
+       was accidentally still being used in one place, causing
+        every dest side event to be treated independently.
+
+       * gtk/gtkdnd.c: Remove last vestages of handling
+       ::draw (fixes warning)
+       
+       * gtk/gtkentry.[ch]: Add drag and drop support.
+
+       * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
+       new function gtk_check_drag_threshhold() for checking
+       to check if (dx,dy) has exceeded the threshhold for starting
+       a drag and use it everywhere.
+
+Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
+       add -I{includedir}/gtk-2.0.
+
+       * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
+       gdk/gdk-pixbuf.h: Doc fixups.
+       
+       * gtk/gtkobject.h: Remove trailing , from enum
+
+2001-01-17    <alexl@redhat.com>
+
+       * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
+       Doh! Mixed up x and y.
+
+       * gdk/linux-fb/gdkglobals-fb.c:
+       Removed gdk_fb_pointer_grab_window_events,
+       added _gdk_fb_pointer_grab_owner_events and
+       _gdk_fb_keyboard_grab_owner_events.
+
+       * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
+       Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
+       crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
+       (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
+       Send crossing events after ungrab finished.
+       (gdk_keyboard_grab): Set ..._owner_events
+       (type_masks): Move out of function.
+       (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
+       gdk_fb_keyboard_event_window): New functions, return the
+       window an event should be targeted at. Handles grabs and
+       event propagation. Can return NULL.
+       (gdk_event_make): Remove event_mask checking. Now always
+       returns an event.
+               
+       * gdk/linux-fb/gdkkeyboard-fb.c:
+       * gdk/linux-fb/gdkproperty-fb.c:
+       * gdk/linux-fb/gdkselection-fb.c:
+       Use new event_window/gdk_event_make() behaviour.
+       
+       * gdk/linux-fb/gdkmouse-fb.c:
+       Use new event_window/gdk_event_make() behaviour.
+       Only send motion events if in the same window.
+       If grabbed, use cursor from window if sibling of grabbed
+       window, and cursor from grabbed window otherwise.
+
+       * gdk/linux-fb/gdkprivate-fb.h:
+       Update gdk_fb_window_send_crossing_events, gdk_event_make
+       and grab varaible declarations. Add gdk_fb_*_event_window().
+
+       * gdk/linux-fb/gdkwindow-fb.c:
+       Use new event_window/gdk_event_make() behaviour.
+       Keep correct track of focus window.
+       (gdk_window_set_events): Set all specific button motion masks
+       if GDK_BUTTON_MOTION_MASK set.
+
+       * gtk/gtkdnd.c (gtk_drag_update):
+       Free info->last_event if gdk_drag_motion returned FALSE.
+
+2001-01-16  Tor Lillqvist  <tml@iki.fi>
+
+       * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
+       Eliminate redraws when input-only windows are shown or
+       hidden. Thanks to jpe@archaeopteryx.com.
+
+Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
+
+       * docs/faq/gtk-faq.sgml: FAQ update:
+         - Update to bugzilla
+         - Add GTK+ and security/SUID/SGID
+         - Add DnD question
+
+2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
+
+       * gdk/linux-fb/gdkdnd-fb.c:
+       Some cleanups.
+       
+2001-01-15  Havoc Pennington  <hp@pobox.com>
+
+       * tests/testtreeview.c: add test stuff for CellRendererToggle
+
+       * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
+       accessor
+
+       * gtk/gtkcellrenderertoggle.c: distinguish different event types,
+       only toggle on button press (would do release like GtkButton, but
+       we'd need implicit grab code for treeview cells)
+
+2001-01-16  Tor Lillqvist  <tml@iki.fi>
+
+       * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
+
+       * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
+       GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
+
+       * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
+       to g_{locale,filename}_{to,from}_utf8 to match current API.
+
+       * gtk/makefile.msc.in (gtk_OBJECTS)
+       * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
+
+       * gtk/gtk.def: Update.
+
+2001-01-15  Tor Lillqvist  <tml@iki.fi>
+
+       * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
+       implementaion that more closely mimics the events that an X server
+       would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
+       GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
+       with nested preview widgets, for instance, more responsive when
+       you move the mouse quickly into them.
+       (find_window_for_pointer_event): Make it actually compile.
+       (gdk_event_translate): Set send_event to the value of
+       InSendMessage (). This doesn't really mean the same as X11's
+       send_event flag, but is close enough, says jpe@archaeopteryx.com
+
+2001-01-15  Alexander Larsson  <alexl@redhat.com>
+
+       * gdk/linux-fb/gdkdnd-fb.c:
+       Implemented drag and drop.
+       Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
+       when it tries to free and then copy the same event (info->last_event).
+       I am not sure about why this happens, but will continue looking.
+
+2001-01-15  Alexander Larsson  <alexl@redhat.com>
+
+       * gdk/linux-fb/gdkwindow-fb.c:
+       Use gdk_window_invalidate_rect instead of
+       gdk_window_invalidate_rect_clear to minimise flashing.
+       When hiding windows you need to clear the root window though.
+
+2001-01-15  Alexander Larsson  <alexl@redhat.com>
+
+       * gdk/linux-fb/gdkdrawable-fb2.c:
+       For optization, add an full_shapes argument to gdk_fb_clip_region.
+       If this is false, only the cliprects of the shapes are used.
+
+       * gdk/linux-fb/gdkprivate-fb.h:
+       Export gdk_fb_window_peek_shape.
+       Add full_shapes to gdk_fb_clip_region.
+
+       * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
+       When moving a window, don't clear everything under the it, just the
+       root window. Makes stuff faster and flash less.
+       (gdk_window_get_pointer): Correctly handle offseted shapes, due to
+       USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
+       offset of the shape.
+       
+
+2001-01-12  Havoc Pennington  <hp@redhat.com>
+
+       * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
+       current invalid region, fixes redraw bug while scrolling the 
+       text widget
+
+       * gtk/gtktextview.c, gtk/gtktextview.h:
+       Rearrange the scrolling/validation/etc. code in a major way, 
+       so it seems to make sense to me. Probably isn't genuinely that
+       much better, but...
+
+       * gtk/gtktexttag.c (set_fg_color): fix name of property used for
+       notifies
+
+       * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
+
+2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
+
+       * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
+       Hide mouse pointer while rotation. Show it afterwards.
+
+2001-01-12  Alexander Larsson  <alexl@redhat.com>
+
+       * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
+       windows in consideration when generating clip region.
+
+       * gdk/linux-fb/gdkfb.h:
+       Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
+
+       * gdk/linux-fb/gdkprivate-fb.h:
+       Add shape to GdkWindowFBDatat.
+       exported gdk_fb_window_get_abs_shape().
+       removed gdk_fb_draw_lines declaration.
+
+       * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
+       Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
+       send focus changes when there is a grabbed window.
+       (gdk_window_get_pointer): Handle shaped windows.
+       (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
+       (gdk_fb_window_peek_shape): Returns the shape for a window,
+       handles GDK_FB_USE_CHILD_SHAPE.
+       (gdk_fb_window_get_abs_shape): Returns the shape of the window,
+       offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
+       (gdk_window_shape_combine_mask): Implement.
+
+       * gtk/gtkwindow-decorate.c:
+       HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
+       setting the shape of a window makes the window transparent.
+
+2001-01-11  Havoc Pennington  <hp@redhat.com>
+
+       * gtk/gtktreemodelsimple.h: Oops, broke some macros
+
+2001-01-10  Havoc Pennington  <hp@redhat.com>
+
+       * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
+       add this function, bug 40251
+
+       * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
+       of type macro   
+
+2001-01-11  Alexander Larsson  <alexl@redhat.com>
+
+       * acconfig.h:
+       Added ENABLE_SHADOW_FB
+
+       * configure.in:
+       Added --disable-shadowfb
+
+       * gdk/linux-fb/gdkcursor-fb.c:
+       Update shadowfb when updating cursor
+
+       * gdk/linux-fb/gdkdrawable-fb2.c:
+       Added wrappers for shadowfb that calls  the normal drawable
+       methods, but calls gdk_shadow_fb_update(bounding box) when
+       GdkWindows are drawed to.
+       Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
+       which also returns the bounding box.
+
+       * gdk/linux-fb/gdkfb.h:
+       Added GdkFBAngle type and gdk_fb_set_rotation declaration.
+
+       * gdk/linux-fb/gdkgeometry-fb.c:
+       Update shadowfb when scrolling window.
+
+       * gdk/linux-fb/gdkglobals-fb.c:
+       Add _gdk_fb_screen_angle.
+       
+       * gdk/linux-fb/gdkkeyboard-fb.c:
+       Test code for screen rotation. Shift-F2 in the xlate driver
+       rotates the screen.
+
+       * gdk/linux-fb/gdkmain-fb.c:
+       Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
+
+       * gdk/linux-fb/gdkmouse-fb.c:
+       Use fb_width/height instead of modeinfo.xres/yres.
+
+       * gdk/linux-fb/gdkprivate-fb.h:
+       Added fb_men, fb_width, fb_height & fb_stride. When using
+       shadow fb these can differ from the framebuffer stuff.
+       Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
+       gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
+       _gdk_fb_screen_angle. Removed CM, RP.
+
+       * gdk/linux-fb/gdkrender-fb.c:
+       Added code for shadowfb handling and screen rotation using
+       shadowfb.
+
+       * gdk/linux-fb/gdkwindow-fb.c:
+       Use fb_mem, fb_stride, fb_width, fb_height.
+       Added recompute_rowstride to reset the rowstride of all windows.
+       Added gdk_fb_recompute_all() which recomputes rootwindow size,
+       window abs positions and window rowstrides. Usefull when the
+       rotation has changed.
+
+Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
+
+       * docs/faq/gtk-faq.sgml: update to make web site updating easier
+
+2001-01-10  Havoc Pennington  <hp@redhat.com>
+
+       * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
+       where sibling == iter
+       (gtk_tree_store_insert_after): handle sibling == iter
+       (gtk_tree_store_prepend): remove stamp checks
+       (gtk_tree_store_insert_before): ditto
+       (gtk_tree_store_append): ditto
+       (gtk_tree_store_get_path): ditto
+       (gtk_tree_store_get_value): ditto
+       (gtk_tree_store_iter_has_child): ditto
+       (gtk_tree_store_iter_n_children): ditto
+       (gtk_tree_store_iter_nth_child): ditto
+       (gtk_tree_store_insert_after): ditto
+       (gtk_tree_store_is_ancestor): ditto
+       (gtk_tree_store_iter_depth): ditto
+       (gtk_tree_store_insert_before): assert that sibling's parent is
+       the same as the passed-in parent
+       (gtk_tree_store_insert_after): assert that sibling's parent is
+       the same as the passed-in parent
+
+       
+       * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
+       function to get the first iterator in a model
+       
+       * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
+       conventionally the "root" in this sense is just NULL afaict.
+
+       * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
+       where sibling == iter
+       (gtk_list_store_insert_after): handle case where sibling == iter
+
+       * tests/testtreeview.c (run_automated_tests): fairly lame basic
+       automated tests for ListStore, TreeStore
+
+        * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
+       (gtk_list_store_insert): update tail pointer, and fix it to work
+       (gtk_list_store_insert_before): update tail pointer, and fix it to work
+       (gtk_list_store_append): use tail to be faster
+       (gtk_list_store_prepend): fix it, update tail pointer
+       (gtk_list_store_insert_after): fix it, update tail pointer
+
+       * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
+       the list
+
+2001-01-09  Havoc Pennington  <hp@redhat.com>
+
+       * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
+       is NULL due to a pending resize
+
+       * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
+       column width to values less than 1
+
+       * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
+       width to be between min/max width, and still set the width 
+       even if autosize is turned on, so the tree view can use this 
+       function in order to autosize.
+       (gtk_tree_view_column_init): set initial width to 1 not 0
+
+       * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
+       setter function to modify column width, so we get notification
+       (gtk_tree_view_insert_iter_height): ditto
+       (gtk_tree_view_calc_size): ditto
+       (gtk_tree_view_check_dirty): ditto
+
+       * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
+       properties to change all the interesting attributes of the tree
+       view column.
+       (gtk_tree_view_column_set_header_clickable): rename set_clickable
+       (gtk_tree_view_column_get_clickable): add
+       (gtk_tree_view_column_set_cell_renderer): don't unset the current
+       attributes; assume a cell renderer with equivalent object
+       properties has been swapped in. Do g_object_notify().
+       (gtk_tree_view_column_set_visible): g_object_notify
+       (gtk_tree_view_column_get_sizing): rename from get_col_type
+       (gtk_tree_view_column_set_sizing): g_object_notify
+       (gtk_tree_view_column_set_width): add g_object_notify
+       (gtk_tree_view_column_set_min_width): ditto
+       (gtk_tree_view_column_set_max_width): ditto
+       (gtk_tree_view_column_set_title): ditto
+       (gtk_tree_view_column_set_clickable): ditto
+       (gtk_tree_view_column_set_widget): ditto
+       (gtk_tree_view_column_set_justification): ditto
+
+2001-01-09  Havoc Pennington  <hp@redhat.com>
+
+       * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
+       there are no rows in the model
+
+       * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
+       NULL, then return the start of the list
+
+       * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
+       if we can't get any rows from an empty model 
+
+       * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
+       extraneous * after function pointer typedef usage
+
+       * Makefile.am: don't specify full path to cp and rm
+
+       * gtk/gtkcellrenderertextpixbuf.c
+       (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
+       NULL before dereferencing, fixes a segfault that happened from
+       time to time
+
+       * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
+       use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
+       and reindent the function
+       (gtk_cell_renderer_pixbuf_get_size): indentation
+
+       * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
+       we quit it
+       (gtk_dialog_add_buttons_valist): add g_return_if_fail
+       (gtk_dialog_set_default_response): New function, to set default
+       button
+       (gtk_dialog_set_response_sensitive): New function, to set 
+       sensitivity of buttons
+
+       * gtk/gtkcellrendererpixbuf.c
+       (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
+       (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
+
+       * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
+       handle any G_TYPE_OBJECT subclass, not just the base class, and 
+       also boxed types.
+       (_gtk_tree_data_list_value_to_node): ditto
+
+       * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
+       --gtk-debug=tree
+
+       * gtk/gtkmain.c: add GTK_DEBUG_TREE
+
+       * gtk/gtkdebug.h: add GTK_DEBUG_TREE
+
+2001-01-09  Tor Lillqvist  <tml@iki.fi>
+
+       * gdk/win32/gdkevents-win32.c: Implement better mouse
+       capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
+       (find_window_for_pointer_event): New function.
+       (gdk_event_translate): Use it when handling mouse events.
+
+2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
+
+       * configure.in:
+       Added --with-included-loaders option
+
+       * gdk-pixbuf/Makefile.am:
+       * gdk-pixbuf/gdk-pixbuf-io.c:
+       Add support for including selected gdk-pixbuf loaders only.
+
+       * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
+       gtk_window_set_has_frame):
+       Added inline documentation.
+
+       * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
+       * docs/reference/gdk/tmpl/windows.sgml:
+       Added inline documentation.
+
+Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
+
+       * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
+       realizing buttons that have already been realized.
+
+Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
+
+       * tests/testtreeview.c (main): Show menu items before adding to
+       option menu.
+
+       * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
+       around if we kill them.
+
+       * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
+       Return if we pass in a NULL model.
+
+2001-01-08  Havoc Pennington  <hp@redhat.com>
+
+       * tests/testtreeview.c: hack on this some
+
+       * gtk/gtktreestore.c (gtk_tree_store_setv): rename
+       gtk_tree_store_set_valist, v is for arrays, valist for varargs
+       list
+       (gtk_tree_store_getv): rename gtk_tree_store_get_valist
+
+       * gtk/gtkliststore.h: Add varargs set() and get() convenience
+       functions
+
+2001-01-08  Alexander Larsson  <alexl@redhat.com>
+
+       * gtk/gtkwindow-decorate.[hc]:
+       * gtk/Makefile.am:
+       New files. Contains an implementation of a minimal WM for
+       linux-fb.
+
+       * gtk/gtkwindow.h:
+       Add the possibility for GtkWindows to specify a frame. This
+       is used for the window decoration code, but could concievably
+       be used for X programs too (xmms style windows).
+       GtkWindow->frame is the toplevel window if the window is framed.
+       The signal frame_event gets all events that are targeted to
+       GtkWindow->frame.
+       (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
+       
+       * gtk/gtkwindow.c:
+       Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
+       Call out to gtkwindow-decorate.c for WM support in linx-fb.
+
+2001-01-08  Alexander Larsson  <alexl@redhat.com>
+
+       * docs/README.linux-fb:
+       Correct filename ~/.pangoft2_aliases
+
+       * gdk/gdkwindow.h:
+       Added new function gdk_window_get_decorations.
+
+       * gdk/linux-fb/gdkfb.h:
+       Removed _gdk_window_get_decorations declaration.
+       Renamed _gdk_window_set_child_handler to
+       gdk_fb_window_set_child_handler.
+
+       * gdk/linux-fb/gdkwindow-fb.c:
+       Renamed _gdk_window_set_child_handler to
+       gdk_fb_window_set_child_handler.
+
+       * gdk/x11/gdkwindow-x11.c:
+       New function gdk_window_get_mwm_hints().
+       Implemented gdk_window_get_decorations.
+
+       * docs/reference/gdk/tmpl/windows.sgml:
+       * docs/reference/gdk/gdk-sections.txt:
+       Added gdk_window_get_decorations docs.
+       
+2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
+
+       * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
+       gdk_fb_window_find_focus, gdk_fb_send_focus_change,
+       gdk_fb_window_send_crossing_events):
+       Possibly send focus events when the mouse moves from one
+       window to another.
+
+2001-01-07  Tor Lillqvist  <tml@iki.fi>
+
+       * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
+       gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
+       to match current API.
+
+       * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
+       environment variable is set, don't call g_error when on a
+       palettized (PseudoColor) display. Some people want to use GTK+ 
+       in 256-colour mode even though works only partially.
+
+       * gdk/gdk.def
+       * gtk/gtk.def
+       * gtk/makefile.mingw.in: Update.
+
+2001-01-05  Havoc Pennington  <hp@redhat.com>
+
+       * tests/testtreeview.c: hack on this a bit
+
+       * gtk/gtktextlayout.c (gtk_text_layout_class_init):
+       s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
+
+       * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
+       was spelled incorrectly
+       (GTK_IS_TREE_MODEL_SIMPLE): ditto
+
+       * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
+       from gtk_tree_view_set_headers_active   
+
+       * gtk/gtktexttag.c:
+       (gtk_text_tag_get_property): handle PROP_DIRECTION
+       (gtk_text_tag_set_property): g_object_notify when we toggle the _set
+       properties, bug 40235
+
+       * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
+       forward_to_line_end
+
+Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
+       modules/input/gtkimcontextxim.c: Adapt to new prototypes
+       for unicode,locale,filename conversion functions.
+
+2001-01-05  Havoc Pennington  <hp@redhat.com>
+
+       * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
+       broken if called on the first position in the buffer.
+
+       * gtk/gtktextlayout.c (line_display_index_to_iter): fix
+       forward_to_delimiters to be called only if we aren't already at
+       the delimiters.
+
+2001-01-05  Havoc Pennington  <hp@redhat.com>
+
+       * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
+
+2001-01-05  Alexander Larsson  <alexl@redhat.com>
+
+       * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
+       colormap in here. Sync from X port.
+       (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
+       Sync from X port.
+       (gdk_fb_clip_region): Comment out g_warning about empty clip region.
+       This happens now and then, and i don't think it is a bug.
+       (gdk_fb_draw_polygon): Correctly add extra point if startpoint
+       != endpoint.
+       (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
+       GDK_LINE_SOLID.
+
+       * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
+       some of the fields filled in at least.
+
+       * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
+       miLineArcD is no more, remove it from the function definition.
+
+2001-01-04  Havoc Pennington  <hp@redhat.com>
+
+       * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
+       this
+
+       * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
+       user_data instead of tree_node
+
+       * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
+       TREE_VIEW_COLUMN_SIZE
+
+       * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
+       "size" field to "width" finishes bug 40061
+
+       * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
+       for bitfields, bug 40268
+
+2001-01-04  Havoc Pennington  <hp@redhat.com>
+
+        Rename some stuff:
+       
+       s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
+
+       s/GtkModelSimple/GtkTreeModelSimple/g;
+       s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
+       s/gtk_model_simple/gtk_tree_model_simple/g;
+       s/gtkmodelsimple/gtktreemodelsimple/g;
+
+       s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
+
+       s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
+       s/column_set_col_type/column_set_sizing/g;
+
+       s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
+       s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
+
+       s/GtkCellRendererType/GtkCellRendererState/g;
+       
+       * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
+       (gtk_cell_renderer_toggle_class_init): change "state" property to
+       "active", to match GtkToggleButton
+       (gtk_cell_renderer_toggle_get_active): new function, bug
+       40269
+       (gtk_cell_renderer_toggle_set_active): new function
+       (gtk_cell_renderer_toggle_set_property): route changes to toggle
+       state through gtk_cell_renderer_set_active
+
+Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
+
+       * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
+       temporarily until they work again.  Brought up to date with
+       changes in the model.
+       * gtk/gtkmodelsimple.h: Brought up to date with changes in the
+       model.
+
+2001-01-04  Havoc Pennington  <hp@redhat.com>
+
+       * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
+       equal to the line length, then position iterator before paragraph 
+       separators. Fixes crash reported by Mikael Hermansson when
+       pressing left arrow from the start of a line.   
+
+       * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
+       about byte indexes off the end
+       (iter_set_from_char_offset): add g_error about char offsets
+       off the end
+
+2001-01-03  Havoc Pennington  <hp@redhat.com>
+
+       * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
+
+       * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
+       of private functions; remove inclusion of private headers.
+
+       * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
+       function, so we don't need private functions in gtktextdisplay.c
+
+       * gtk/gtktextiterprivate.h: underscore-ification
+
+       * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
+       to instead say "only useful to implement widgets"
+
+       * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
+       GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
+       GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
+
+       * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
+       This function was completely broken
+
+       * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
+
+       * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
+
+       * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
+
+       * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
+
+       * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
+
+       * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
+
+       * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
+       gtk_paint_layout
+
+       * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
+       gtk_paint_layout
+
+       * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
+       Progress on bug 40103. Add draw_layout to draw a PangoLayout.
+       (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
+       which were not implemented.     
+
+       * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
+       insert_pixbuf signal. Rename delete_text to delete_range since it
+       also deletes pixbufs and child anchors. This almost closes bug
+       40245 (still need to deal with child anchors)
+
+       * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
+       insert_pixbuf, change signal names as appropriate, change types of
+       signals taking marks/tags to have the specific type, not just
+       G_TYPE_OBJECT
+       
+       * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
+       closes bug 40051
+
+       * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
+       unnecessary remove_contents() call
+       (gtk_option_menu_class_init): add a "changed" signal, closes
+       bug 40039
+       (gtk_option_menu_update_contents): emit "changed" if the 
+       active menu item changes
+
+       * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
+       cast to GtkObject, reported by Jonas Borgstrom
+       (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
+       we can't do stuff with side effects in finalize. Instead, spew a
+       warning if the loader isn't closed.
+
+       * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
+       colormap in here, non-X ports probably need to sync to this change
+
+       * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
+       assertion that colormap != NULL, you can set the colormap to NULL
+       if you like.
+       
+       * Makefile.am: remove gtk-config-2.0
+
+       * configure.in: Use pkg-config to locate GLib. Remove
+       separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
+       and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
+       Use pkg-config to locate Pango. Output correct Pango libs to
+       gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
+
+       * Makefile.am (pkgconfig_DATA): install only target-specific pc
+       files
+       (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
+       X11 pc files
+
+       * gtk+-2.0.pc.in (Requires): require the GDK for the current target
+       unref from here
+
+2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
+
+       * configure.in:
+       Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
+
+Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtktextlayout.c
+       (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
+       variable when moving back onto a single line.
+
+2001-01-01  Havoc Pennington  <hp@redhat.com>
+
+       * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
+
+       * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
+
+       * configure.in (LIBTOOL_EXPORT_OPTIONS): define
+       LIBTOOL_EXPORT_OPTIONS with options to control symbol export
+
+2001-01-01  Havoc Pennington  <hp@redhat.com>
+
+       * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
+
+       * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
+       GtkTextAttributes
+
+       * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
+       #40246
+       (gtk_text_attributes_copy_values): rename from 
+       gtk_text_attributes_copy
+       (gtk_text_attributes_copy): a more standard GTK copy function, 
+       which returns a new object
+
+2001-01-01  Havoc Pennington  <hp@redhat.com>
+
+       * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
+       
+       * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
+       don't fill in tree_view->priv->selection, kind of an unexpected
+       side effect
+
+       * gtk/gtkcellrenderertext.c: Remove definition of _ and include
+       gtkintl.h
+       
+       * gtk/gtkcellrenderer.c: Remove definition of _ and include
+       gtkintl.h
+       (gtk_cell_renderer_get_property): remove calls to g_value_init
+
+       * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
+       gtkintl.h
+
+       * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
+       and include gtkintl.h
+       (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
+       property names
+
+       * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
+       GtkTreeSelection
+       (_gtk_tree_selection_new_from_with_view): rename, return
+       GtkTreeSelection
+       (_gtk_tree_selection_set_tree_view): rename with uscore
+       (gtk_tree_selection_get_selected): fill in the "model" out param
+       first, so it gets filled in even if we return at the top of the 
+       function
+       (gtk_tree_selection_real_select_all): add a comment and an else{}
+       to clarify this a bit
+       (gtk_tree_selection_real_unselect_all): add the same else{}
+
+       * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
+       set_tree_view to have underscore prefixes, move them to the
+       private header, fix return type of new_with_tree_view
+       (struct _GtkTreeSelection): mark struct
+       fields private  
+
+       * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
+       GtkTreeModelFlags, not a guint
+       (gtk_tree_path_prev): return gboolean not gint
+       (gtk_tree_path_up): return gboolean not gint
+
+       * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
+       return GtkTreeModelFlags, not a guint
+
+       * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
+       that child model is non-null before unrefing it
+       (g_value_int_compare_func): make this a qsort compare func, not 
+       a boolean predicate
+
+       * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
+       (add -umn to the end), and mark it unimplemented
+       (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
+       I don't see what it's for - doesn't the model always sort itself?
+       (gtk_tree_model_sort_set_compare): this had the wrong signature
+
+       * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
+       Fix the docs to say that it destructively replaces existing
+       attributes (previously said that it added attributes).
+       (gtk_tree_view_column_set_visible): canonicalize bool before
+       equality testing. Also, check for realization before
+       hiding/showing the tree_column->window; if this window could exist
+       before realization, then it's busted and needs fixing, we can't 
+       create GDK resources pre-realization. Also, remove
+       superfluous queue_resize(), since set_size() does that for us.
+       (gtk_tree_view_column_set_col_type): check realization before 
+       using tree_column->window
+
+       * gtk/gtktreedatalist.c: fix filename in copyright notice
+
+2000-12-31  Havoc Pennington  <hp@pobox.com>
+
+       * gtk/gtktextview.c: Rearrange all the
+       scroll-while-dragging-or-selecting code to be different, not
+       necessarily better. ;-)
+       (gtk_text_view_scroll_to_mark): Change this
+       function to take within_margin as a fraction instead of a pixel
+       value, and to take alignment arguments (indicating where to align 
+       the mark inside the visible area)
+       
+       * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
+       to GtkObject
+
+       * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
+       behavior so that offsets past the end of the line are not 
+       allowed, and an offset equal to the line length moves the iterator
+       to the next line
+       (gtk_text_iter_set_line_index): make parallel change
+       (gtk_text_iter_get_bytes_in_line): add this function
+       
+       * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
+       of byte indexes off the end of the line; byte index at the end of
+       the line now returns FALSE and doesn't fill in the requested
+       values, byte index past the end of the line is an error.  Also,
+       don't allow -1 offset anymore, since its meaning is unclear.
+
+       This change exposes some bug in visual cursor motion, where we
+       end up with a huge invalid byte index; needs fixing. Symptom of 
+       bug is a crash when you hit up arrow.
+       
+       (_gtk_text_line_char_locate): match the change to byte_locate
+
+       * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
+       from start of line properly. fixes bug reported by Mikael
+       Hermansson where backspace would delete all text before the
+       cursor.
+
+2000-12-30  Tor Lillqvist  <tml@iki.fi>
+
+       * gdk/win32/gdkwindow-win32.c
+       (gdk_window_impl_win32_get_visible_region): New function, as in
+       the X11 backend.
+       (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
+       instead of duplicating the same code here.
+
+       * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
+       GDK_COLORMAP macro.
+
+       * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
+       destroy function.
+       (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
+       access that.
+
+       * gtk/gtk.def: Update.
+
+       * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
+
+2000-12-30  Havoc Pennington  <hp@pobox.com>
+
+       * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
+       colormap on input only windows, to avoid special cases all over
+       the code for these windows.
+
+2000-12-26  Tor Lillqvist  <tml@iki.fi>
+
+       * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
+       we are on a palettized display ("PseudoColor" in X11), as the code
+       for that doesn't work anyway, and never has.
+
+2000-12-22  Alexander Larsson  <alexl@redhat.com>
+
+       * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
+       Don't use isprint() for chars > 255.
+
+2000-12-21  Havoc Pennington  <hp@redhat.com>
+
+       * tests/testtreeview.c: more work
+
+2000-12-21  Alexander Larsson  <alexl@redhat.com>
+
+       * docs/README.linux-fb:
+       Update the docs to the new pangoft2 way.
+
+2000-12-21  Alexander Larsson  <alexl@redhat.com>
+
+       * configure.in:
+       For linux-fb get the pangoft2 cflags and libs. This needs a recent
+       pango version.
+       Remove modules/linux-fb/Makefile.
+
+       * gdk/linux-fb/gdkdrawable-fb2.c:
+       Render glyphs using freetype.
+
+       * gdk/linux-fb/gdkfb.h:
+       Add new fb-specific functions needed for managing windows.
+
+       * gdk/linux-fb/gdkmain-fb.c:
+       Remove gdk_font_init/fini() calls.
+
+       * gdk/linux-fb/gdkpango-fb.c:
+       Remove old implementation. Use pangoft2 instead.
+
+       * gdk/linux-fb/gdkprivate-fb.h:
+       Remove PangoFBFont and related stuff.
+
+       * gdk/linux-fb/gdkwindow-fb.c:
+       Implement drawable->get_visible_region.
+       Implement support for _gdk_window_set_child_handler () and
+       _gdk_window_get_decorations().
+
+       * modules/Makefile.am:
+       Remove linux-fb subdir.
+
+       * modules/linux-fb/*:
+       Removed all.
+       
+2000-12-20  Jonathan Blandford  <jrb@redhat.com>
+
+       * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
+       calls, as they are no longer needed.
+
+       * gtk/gtktreemodelsort.c: Fix up the comparison code.
+       
+       * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
+       figure out how to emit a signal on an interface.
+
+2000-12-20  Havoc Pennington  <hp@redhat.com>
+
+       * tests: new directory to contain tests, gtk/test* should move
+       here sometime (with appropriate on-cvs-server hackery)
+
+       * tests/testtreeview.c, tests/Makefile.am: a test
+       
+       * configure.in (AC_OUTPUT): add tests/Makefile
+
+       * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
+       and "invisible_set" which were missing
+
+       * gtk/gtkrbtree.h: some cheesy indentation fix
+       
+2000-12-20  Alexander Larsson  <alexl@redhat.com>
+
+       * gtk/gtkinvisible.c (gtk_invisible_realize):
+       Attach the style to the window so that the style it is not
+       leaked when unrealizing the window.
+
+2000-12-18  Havoc Pennington  <hp@redhat.com>
+
+       * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
+       begin/end user action where appropriate
+       (gtk_text_view_commit_handler): add begin/end user action
+
+       * gtk/gtktextbuffer.c: add begin/end user action signals, and
+       bracket interactive operations with begin/end user action pair.
+       
+       * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
+       "interactive" arg from insert_text and delete_text signals.
+       Add begin_user_action, end_user_action signals
+       (gtk_text_buffer_begin_user_action): 
+       (gtk_text_buffer_end_user_action): New functions to delimit 
+       a user-visible action
+
+       * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
+       signals.
+       
+2000-12-18  Havoc Pennington  <hp@redhat.com>
+
+       * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
+       was pretty non-working.
+
+       * gtk/testtext.c (fill_file_buffer): make this a bit more robust
+       by passing the length to g_utf8_validate().
+
+2000-12-16  Havoc Pennington  <hp@pobox.com>
+
+       * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
+       Port to GObject, can go back in gdk-pixbuf after setting up 
+       a gdk-pixbuf-marshal.h header over there.
+
+       * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
+       (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
+       args
+       (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
+       set
+       (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
+       here, do it when we create the buttons later
+       (gtk_tree_view_realize_buttons): add some g_return_if_fail 
+       (gtk_tree_view_map): paranoia checks that column->button is shown 
+       and unmapped
+       (gtk_tree_view_size_request): only request visible children.
+       Move header size calculation in here, for cleanliness, and 
+       to maintain invariants for child widgets if we eventually 
+       let users set different children inside the buttons
+       (gtk_tree_view_map_buttons): factor out code to map buttons,
+       since it was being called several times
+       (gtk_tree_view_size_allocate_buttons): move_resize the drag
+       windows instead of just moving them; their height may change 
+       if we allow random widgets in there, or the theme changes.
+       (gtk_tree_view_size_allocate): move button size allocation 
+       above emitting the scroll signals, to ensure a sane state when we
+       hit user code
+       (gtk_tree_view_button_release): remove queue_resize after
+       tree_view_set_size(), set_size() will handle any resize queuing
+       that's needed
+       (gtk_tree_view_focus_in): just queue a draw, don't fool with
+       draw_focus goo
+       (gtk_tree_view_focus): use gtk_get_current_event() and
+       gdk_event_get_state()
+       (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
+       (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
+       semicolon
+       (gtk_tree_view_create_button): show the button here
+       (gtk_tree_view_button_clicked): actually emit the clicked signal
+       on the column
+       (_gtk_tree_view_set_size): return right away if the size is
+       unchanged, as a cheesy optimization
+       (gtk_tree_view_setup_model): rename set_model_realized to 
+       setup_model to match the flag that indicates whether we've 
+       called it
+       (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
+       exist, because set_scroll_adjustment does that and it shouldn't
+       matter what order you call these in
+       (gtk_tree_view_get_vadjustment): ditto
+       (gtk_tree_view_set_headers_visible): canonicalize the bool, 
+       for paranoia
+       (gtk_tree_view_set_headers_visible): call
+       gtk_tree_view_map_buttons() instead of using cut-and-paste code
+       (gtk_tree_view_append_column): clarify whether the return value
+       is the count of columns before or after, and do the increment 
+       separately from the return statement so you can tell from the code.
+       (gtk_tree_view_remove_column): ditto
+       (gtk_tree_view_insert_column): ditto
+       (gtk_tree_view_get_column): remove g_return_if_fail for columns
+       outside the existing range, the docs say that outside-range
+       columns are allowed, so we handle them as documented. (Presumably
+       this allows a nice loop with column != NULL as test.)
+       (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
+       mean (left/right/center etc.).
+       (gtk_tree_view_collapse_all): only queue a draw if we're mapped
+       (gtk_tree_view_expand_row): add docs
+       (gtk_tree_view_collapse_row): add docs
+
+       * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
+       function to emit the clicked signal on a column
+       
+       * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
+       state of an event
+       (gdk_event_get_time): don't treat GDK_SCROLL 
+       as a button event, remove default case from switch so gcc 
+       will whine if we don't explicitly handle all event types
+
+       * gtk/gtktreeselection.h: added some FIXME 
+       
+       * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
+       "columns" to "n_columns" and "column" to "columns" for clarity
+
+2000-12-16  Havoc Pennington  <hp@pobox.com>
+       
+       * gtk/gtktextiter.c: General cleanup of the log attr iteration
+       stuff. This should make e.g. the delete key work again in the
+       text widget...
+       (gtk_text_iter_forward_cursor_positions): handle negative count
+       (gtk_text_iter_backward_cursor_positions): handle negative count
+       (gtk_text_iter_forward_word_ends): handle negative count
+       (gtk_text_iter_backward_word_starts): handle negative count
+
+       * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
+       gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
+       gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
+       GObject. No doubt will cause breakage.
+
+       * demos/gtk-demo/textview.c: remove hacks around
+       non-GObject-ification of the text objects
+
+       * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
+       the text tag
+       
+2000-12-14  Havoc Pennington  <hp@pobox.com>
+
+       * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
+       that we have Xrender
+
+Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
+
+        * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
+       Add two virtualized functions gdk_drawable_get_clip_region - to
+       get the clip region when drawing.
+       
+       * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
+       use invalidate_region.
+
+       * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
+       region.
+
+       * acconfig.h configure.in: Check for Xft. For now, assume
+       that if Xft is found, Pango was compiled with Xft support
+       as well.
+
+       * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
+       gdk_colormap_query_color().
+       
+       * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
+       with Xft if appropriate.
+
+       * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
+       a pangoxft context if we have XFT and the environment
+       variable GD_USE_XFT is set.
+       
+       * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
+       and also possibly an XftDraw structure.
+
+        * gtk/gtkfontsel.c: Handle the case where the font from the
+       style doesn't match any of the fonts a bit better.
+       
+       * gtk/testgtk.c: Add tabs between directional segments for
+       hebrew/arabic test. (Not really necessary, just a little
+       prettier.)
+
+2000-12-14  Havoc Pennington  <hp@redhat.com>
+
+       * gtk/testtext.c (fill_file_buffer): fix unicode validation when
+       reading a file
+
+2000-12-14  Havoc Pennington  <hp@redhat.com>
+
+       * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
+       unused call to get_last_line()
+
+       * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
+       here until boxed is working (and maybe after that - we should
+       really not gratuitously break old code)
+
+       * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
+       specific types for font_desc and tabs args, move them to
+       GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
+       fixed. Move GdkColor args to GTK_TYPE_POINTER also.
+
+       * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
+       use GTK_TYPE_POINTER for signal signatures as a hack-around
+
+       * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
+       PangoTabArray
+
+       * gtk/gtktextlayout.c (line_display_iter_to_index): 
+       make static
+       (line_display_index_to_iter): make static
+
+       * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
+       to marshal a string not a boxed
+
+       * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
+
+       * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
+       since the UTF-8 isn't validated yet
+
+       * gtk/gtktextsegment.c (char_segment_check_func): don't require
+       lines to end in '\n'
+       
+       * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
+       forward_to_delimiters, and grapheme boundaries
+       (gtk_text_view_delete_from_cursor): properly handle non-newline
+       delimiters, and grapheme boundaries
+
+       * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
+       to gtk_text_iter_forward_to_delimiters, and make it work properly
+       if empty lines end with a character other than '\n'
+
+       * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
+       position
+
+2000-12-15  Tor Lillqvist  <tml@iki.fi>
+
+       * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
+
+       * gtk/gtk.def
+       * gdk/gdk.def: Update.
+
+       * gdk/win32/gdkmain-win32.c
+       * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
+       gdkmain-win32.c here.
+
+       * gdk/win32/makefile.mingw.in (all): No need to make
+       gdk-win32res.o here, the makefile one step up will call us to make
+       it.
+
+       * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
+       gdkkeys-win32.
+
+       * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
+
+       * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
+       call to g_source_add().
+
+       * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
+       leak. Thanks to Andreas Kemnade.
+
+2000-12-13  Havoc Pennington  <hp@pobox.com>
+
+       * gtk/gtktextbtree.h: Remove double _ in front of some functions
+
+       * gtk/gtktext*.[hc]: update accordingly
+       
+2000-12-13  Havoc Pennington  <hp@pobox.com>
+
+       * gtk/gtktextbtree.h: Put _ in front of every function in this 
+       header file
+
+       * gtk/gtktext*.[hc]: update to reflect renamed btree functions
+
+2000-12-13  Alex Larsson  <alexl@redhat.com>
+
+       * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
+       Add support for ps2 intellimouse.
+
+       * gdkkeyboard-fb.c:
+       Move shift-F1 repaint handling to xlate handler only.
+       
+       * docs/README.linux-fb:
+       Add imps2 to docs.
+       Document the new refresh keys.
+       
+Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
+
+       * gtk/gtkbox.c: change property types from (u)long to (u)int for
+       ::position and ::padding.
+
+       * gtk/gtkcontainer.c: make ::border_width an INT property.
+
+       * gtk/gtkpacker.c: make ::position an INT property.
+
+       * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
+       guard against NULL h/v scrollbars, since this is used at construction
+       time.
+
+       * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
+       internal gtk_clist_constructor().
+
+       * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
+       gtk_ctree_constructor().
+
+       * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
+       ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
+
+       * docs/reference/Makefile.am: fun stuff, disabled docs generation
+       again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
+
+       * gtk/gtkwidget.[hc]:
+       removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
+       and gtk_widget_get().
+       (gtk_widget_new): use g_object_new_valist().
+       (gtk_widget_set): use g_object_set_valist().
+
+       * gtk/gtkobject.[hc]:
+       removed gtk_object_arg_get_info(), gtk_object_getv(),
+       gtk_object_query_args(), gtk_object_newv(),
+       gtk_object_class_add_signals(),
+       gtk_object_class_user_signal_new(),
+       gtk_object_class_user_signal_newv(),
+       gtk_object_arg_set(), gtk_object_arg_get(),
+       gtk_object_args_collect(),
+       gtk_object_default_construct(),
+       gtk_object_constructed(),
+       GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
+       removed nsignals, signals and n_args members from GtkObjectClass.
+       (gtk_object_new): use g_object_new_valist().
+       (gtk_object_set): use g_object_set_valist().
+       (gtk_object_get): use g_object_get_valist().
+       
+       * gtk/gtkcompat.h: define gtk_object_default_construct().
+       
+       * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
+       g_object_new().
+
+       * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
+       fucntions, cleaned up method assignments (make sure your structures
+       are setup properly before calling out). removed all GTK_CONSTRUCTED
+       hacks ;)
+
+Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
+       off-by-one error in checks. (Dave Lambert)
+
+2000-12-12  Alexander Larsson  <alexl@redhat.com>
+
+       * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
+       Don't free gdk_fb_keyboard twice.
+
+Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/testgtk.c:
+       (create_tooltips): 
+       (create_statusbar): get rid of object_signal:: GtkObject argument uses,
+       use GObject swapped_signal:: properties instead.
+
+       * gtk/gtkcellrenderertoggle.c: 
+       * gtk/gtkcellrenderertextpixbuf.c: 
+       * gtk/gtkcellrenderertext.c: 
+       * gtk/gtkcellrendererpixbuf.c: 
+       * gtk/gtkcellrenderer.c:
+       * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
+       missing warnings for invalid property ids, install properties
+       with g_object_class_install_property() now.
+       
+       * gtk/gtksignal.c:
+       (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
+       
+Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
+       
+       * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
+       to determine if a window is the focus widget within
+       its toplevel.
+
+       * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
+       to be boolean.
+
+       * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
+       of the case where the container CAN_FOCUS to here instead
+       of having it in each individual move-the-focus place.
+
+       * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
+       focusing to be geometric in a much more obvious sense. Arrowing
+       around is still non-intuitive because it isn't perfect and
+       because entries, etc, grab the arrow keys, but it at least
+       usually will do what you expect now.
+       
+       * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
+       file.
+
+       * gtk/gtknotebook.c: Change tabs to be a single item in
+       the focus chain. Make movement of focus on tabs with arrow
+       keys wrap around.
+       
+       * gtk/gtknotebook.c (gtk_notebook_find_child): Add
+       CHECK_FIND_CHILD macro to give informative error messages
+       instead of silent returns.
+
+       * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
+       flag since we handle GdkReturn on the tabs.
+
+       * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
+       windows rather than sending expose events directly.
+
+       * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
+       definition for GtkNotebookPage into .c file, since it is private.
+
+       * gtk/testgtk.c (create_notebook): Add option for 
+       testing borderless notebook.
+
+       * gtk/testgtk.c (page_switch): Removed egregious poking
+       around in GTK+ internals.
+
+       * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
+
+       * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
+       properly through gtk_clist_focus. Make the title headers a
+       single item in the tab-focus chain, and make left-right wrap
+       around.
+
+       * gtk/gtkwindow.c (gtk_window_focus): Add a custom
+       focus method so that wrapping around works properly.
+
+       * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
+       that is handled for the widget now. 
+
+Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
+       widgets as TOPLEVEL.
+
+       * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
+       TOPLEVEL widgets are containers.
+
+       * gtk/gtkinvisible.h: Remove useless include.
+
+2000-12-11  Havoc Pennington  <hp@redhat.com>
+
+       * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
+       Handle chopping off \r\n and 0x2029 in addition to \n before
+       passing to PangoLayout
+
+       * gtk/gtkimcontextsimple.c
+       (gtk_im_context_simple_get_preedit_string): 
+       return an empty string if no match is pending
+
+       * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
+       assertion that the returned preedit string was sane
+
+       * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
+       s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
+       s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
+
+Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
+
+       * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
+       Fix up finalizer to chain to its parent.
+
+2000-12-11  Alexander Larsson  <alexl@redhat.com>
+
+       * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
+       Clearified the difference between the keyboard types. Wrote a note
+       about the magic sysrq key to get out of raw mode.
+
+2000-12-09  James Henstridge  <james@daa.com.au>
+
+       * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
+       member to hold masks for detecting the start of a protocol packet.
+       (mouse_devs): add packet start masks for ps2 and ms device types.
+       Left the mask for fidmour blank, as I have no idea what it should
+       be.
+       (handle_mouse_io): skip bytes until we get to the start of a
+       packet.  My Logitech mouse seems to be passing an extra NULL pad
+       byte, and GPM does a similar thing here.
+       (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
+       this is the ms mouse driver.
+       (gdk_fb_mouse_ms_packet): fix up button handling, which was
+       completely broken except for button1.  It was checking the wrong
+       bit in the packet for the status of the right mouse button, and
+       wrongly assuming right == button2 rather than 3.  I fixed that and
+       also added support for middle button (button2).
+
+2000-12-08  Havoc Pennington  <hp@redhat.com>
+
+       * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
+       that cause a segfault on text insertion
+
+       * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
+       warning
+
+       * gtk/gtktextiter.c (test_log_attrs): use
+       _gtk_text_buffer_get_line_log_attrs to speed things up a bit
+
+       * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
+       Get log attrs for a line, using a cache stored on the buffer
+       
+       * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
+       reported by Jeff Franks
+
+2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
+
+       * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
+       /dev/ttyS0 -> /dev/mouse
+
+2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
+
+       * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
+       Added dummy gdk_fontset_load.
+
+2000-12-08  Alexander Larsson  <alexl@redhat.com>
+
+       * docs/README.linux-fb:
+       * docs/Makefile.am:
+       Initial GtkFB docs.
+       
+       * gdk/linux-fb/Makefile.am:
+       Define GDK_DATA_PREFIX.
+
+       * gdk/linux-fb/gdkmain-fb.c:
+       Fix typo.
+       Change default display to /dev/fb0.
+
+       * gdk/linux-fb/gdkpango-fb.c:
+       Add $(prefix)/share/fonts/ to font path.
+       
+2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
+
+       * gdk/linux-fb/gdkkeyboard-fb.c:
+       New file containing the abstracted keyboard driver. Most code
+       taken from gdkinput-ps2.c
+
+       * gdk/linux-fb/gdkinput-ps2.c:
+       Removed file.
+       
+       * gdk/linux-fb/Makefile.am:
+       Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
+
+       * gdk/linux-fb/gdkcolor-fb.c:
+       display->fb was renamed to display->fb_fd.
+
+       * gdk/linux-fb/gdkcursor-fb.c:
+       gdk_mouse_get_info -> gdk_fb_mouse_get_info
+
+       * gdk/linux-fb/gdkinput.c:
+       Moved gdk_input_init here from gdkinput-ps2.c
+
+       * gdk/linux-fb/gdkmain-fb.c:
+       display->fb was renamed to display->fb_fd.
+       Now the tty and the console is opened here instead
+       of in the keyboard driver. Also check GDK_VT to see what
+       tty to open.
+       Move gdk_beep () here from gdkinput-ps2.c
+       gdk_mouse_get_info -> gdk_fb_mouse_get_info
+
+       * gdk/linux-fb/gdkmouse-fb.c:
+       Add header.
+       gdk_mouse_get_info -> gdk_fb_mouse_get_info
+       Return correct keyboard modifiers.
+       GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
+
+       * gdk/linux-fb/gdkprivate-fb.h:
+       Add tty and vt info to display.
+       Add orignal modeinfo storage to display
+       Update global functions
+
+       * gdk/linux-fb/gdkwindow-fb.c:
+       Added gdk_fb_window_find_focus().
+       gdk_mouse_get_info -> gdk_fb_mouse_get_info
+
 2000-12-07  Havoc Pennington  <hp@pobox.com>
 
        * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
        function, noticed by Alex
 
 2000-12-06  Elliot Lee  <sopwith@redhat.com>
+
        * configure.in: Detect freetype properly
-       * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of above.
+
+       * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
+       above.
 
 2000-12-06  Alexander Larsson  <alexl@redhat.com>
 
        (return bytes not chars)
 
 2000-12-05  Elliot Lee  <sopwith@redhat.com>
+
        * gdk/gdkcolor.h: Make GdkColor specify element sizes
        to avoid waste on 64-bit platforms.