2002-05-27 Daniel Elstner <daniel.elstner@gmx.net>
[ merge from stable ]
Fixes for #83190
* gtk/gtktreedatalist.h (_GtkTreeDataList::data): Add missing fields to anonymous union: glong, gulong, gint64 and guint64. This is an internal header file, so it should not affect ABI or API compatibility.
* gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value): Implement missing support for glong, gulong, gint64 and guint64 fundamental types. Use data.v_uint instead of data.v_int for G_TYPE_FLAGS, as GValue does.
(_gtk_tree_data_list_value_to_node): ditto
(_gtk_tree_data_list_node_copy): Add case labels for missing fundamental types, and reorder them to match the other functions.
(gtk_tree_data_list_compare_func): Implement comparison for glong, gulong, gint64 and guint64. Use g_value_get_enum() for G_TYPE_ENUM and g_value_get_flags() for G_TYPE_FLAGS, rather than accessing them as gint/guint. The G_VALUE_HOLDS() check probably won't like this.
2002-05-24 Dave Camp <dave@ximian.com>
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted):
Built an iter directly instead of using
gtk_tree_model_sort_elt_get_path(), since that returns a path for
the child model.
2002-05-24 Dave Camp <dave@ximian.com>
* gtk/gtktreemodelsort.c: Use indices[i] >= level->array->len
rather than level->array->len > indices[i] in the bounds check.
Wed May 22 16:12:38 2002 Owen Taylor <otaylor@redhat.com>
* configure.in: Require autoconf-2.52 explicitely,
since otherwise Debian will process it with 2.13 (ugh!).
Wed May 22 12:29:20 2002 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): remove
GTK_RESIZE_QUEUE setting.
Mon May 20 12:59:14 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtktooltips.c: Set the private LEAVE_PENDING
flag to fix problem where with menu items with
submenus, tooltips were getting stuck. (Effectively
disables tooltips for menu items with submenus.)
(Bug #75961, Soeren Sandmann)
* tests/testgtk.c: Set a tooltip on a menu item
with a submenu.
Mon May 20 11:47:59 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkplug.c: Undo an accidental revert of
fixes of May 16. (Caught by Padraig O'Briain)
* gtk/gtkctree.c (cell_size_request): Fix bug where
size request for text cells was being overwritten.
(#82264, Graham Swallow.)
Fri May 17 14:40:24 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkimmulticontext.c (gtk_im_multicontext_set_slave):
Protect against reentrancy problems by emitting
::preedit_changed at the end, fixing input context
leak. (Yao Zhang)
* modules/input/gtkimcontextxim.c (status_window_free):
Patch from Federico Mena Quintero to fix problem where
references to IMContextXIM were kept around after
module was unloaded.
* gtk/gtkdnd.c (gtk_drag_dest_set): NULL initialize
proxy window.
Fri May 17 13:56:23 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkplug.c (gtk_plug_filter_func): Fix a missing
unref in the local/passive case. (#82067, Michael
Meeks)
* gtk/gtkplug.c (_gtk_plug_remove_from_socket): Fix
reference leak on the plug window.
* tests/testsocket.c (add_child): Fix memory leak.
* gtk/gtkdnd.c (gtk_drag_dest_site_destroy): Unref
the proxy window.
Thu May 16 19:49:24 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c (gtk_window_configure_event): Only
optimize out the full configure handling if we got
a gratuitous configure event(configure_request_count == 0)
and the size didn't change.
* gtk/gtkwindow.c (gtk_window_move_resize): Use
g_message(), not g_print() for debug spew.b
* gtk/gtkwindow.c (gtk_window_real_set_focus): Ref
the old and new focus widgets for the scope of
the function.
* gtk/gtksocket.c gtkplug.c: Remove various #if 0'd
bits of old code.
Thu May 16 23:59:56 2002 Kristian Rietveld <kris@gtk.org>
Merged from gtk-2-0.
* gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed): set the prev
of the next node correctly, so we don't corrupt the list and cause
bad things. (fixes#71374)
Thu May 16 14:51:14 2002 Owen Taylor <otaylor@redhat.com>
Fixes for #78258
* gtk/gtkrbtree.c demos/gtk-demo/editable-cells.c:
Fix some 64-bit warning problems. (Patch from Matthias
Clasen.)
* gtk/gtkrbtree.c (_gtk_rbtree_debug_spew_helper): Surround
a bunch of debug code with G_ENABLE_DEBUG.
* configure.in demos/gtk-demo/main.c: Replace
#ifndef G_OS_WIN32 with proper #ifdef HAVE_FLOCKFILE.
Thu May 16 12:56:38 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkrange.c (gtk_range_calc_layout): Fix a missed
check for division by zero. (#77820, Gareth Pearce)
* gtk/gtkmenu.c (gtk_menu_paint): If the menu is scrolled down or
up, and some of the widget area is empty, don't fill it in with
GTK_SHADOW_IN rectangles that make it looks strange. Fixes
#72695.
Wed May 15 18:15:45 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkdnd.c (_gtk_drag_source_handle_event): Don't
call gdk_pointer_grab() to change the cursor if we've
already ungrabbed on button release / escape.
(#80420, Dave Camp)
Wed May 15 17:12:50 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtktooltips.c: Special case menu items to
pop down on motion. (#75961)
* tests/testgtk.c (create_item_factory): Add tooltips
to the File menu.
* gtk/gtkentry.c (update_im_cursor_location): Fix
cursor locations passed to the IM context.
(#80027, Yao Zhang)
Wed May 15 11:13:19 2002 Owen Taylor <otaylor@redhat.com>
* configure.in gtk/stock-icons/Makefile.am: If not
building libpng, don't rebuild gtkstockpixbufs.h
(#81819, Bill Janssen)
Tue May 14 18:41:58 2002 Owen Taylor <otaylor@redhat.com>
* gtk/stock-icons/Makefile.am (gtkstockpixbufs.h):
Remove the result file on error. (#79929, David
Highley)
* gtk/gtkoptionmenu.c (gtk_option_menu_remove_menu):
If the menu is currently active, cancel it before
setting the new menu. (#79162, Jonathan Blandford.)
Tue May 14 18:13:10 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkdnd-x11.c (gdk_window_cache_filter): Fix
prepending at the start of the list. (#56349,
Thomas Leonard.)
* gtk/gtksignal.h (gtk_signal_disconnect_by_func): Add
explicit casts to GSignalMatchType for C++ compatibility.
(#77601)
Tue May 14 17:30:57 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkctree.c gtk/gtkclist.c: Fix format of
selection data to be 8 rather than GTK_TYPE_POINTER.
(#79751, James Henstridge)
* gtk/gtkmenu.c (gtk_menu_key_press): Call
gtk_accelerator_valid() with cleaned up
accel_key/accel_mods, not the raw values from
the event. (#80513, Havoc Pennington.)
* gtk/gtkmenu.c (gtk_menu_set_tearoff_state): Remove
some dead code that set the tearoff window not
resizable and removed decorations. (#80235)
Tue May 14 16:44:09 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtklabel.c (gtk_label_ensure_layout): Set
the width of the layout to the actual wrap width
(our requisition) not the width we set when calculating
the width. This results in the lines being justified
within the correct area. (#79157, Anders Carlsson)
* gtk/gtkaccelgroup.c gtk/gtkmarshelers.list: Corrected
registered parameter types of "accel_activate" and
"accel_changed" signals. (Patch from Murray Cumming, #78798)
* gtk/gtkrc.c (gtk_rc_make_default_dir): Switch
binary-version and type to correspond to the
current ordering in _gtk_get_module_path.
(#78746, Sergey Kuzminov)
* gtk/gtkrc.c (gtk_rc_get_module_dir): Add docs
pointing to the GTK_PATH documentation.
* gtk/Makefile.am (uninstall-local): Delete
key themes as well. (#81286, Kristian Rietveld.)
Tue May 14 15:09:33 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkkeys-x11.c: Try adding a #ifndef/#define
for XkbKeySymEntry to make up for OSF broken
XKB extension. (#77819, Gareth Pearce)
* gtk/gtklayout.c: Clamp the upper values in response
to ::size-allocate if necessary. (#81290, Christophe Saout)
* gtk/gtkcombo.c (gtk_combo_entry_focus_out): Handle
combo being destroyed before idle fires.
(#81396, Timo Sirainen)
Tue May 14 11:21:19 2002 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkevents-x11.c (gdk_event_translate):
Discard configure events from SubstructureNotify.
(#81760, Rich Burridge)
* gtk/gtkfontsel.c (cmp_families): Use g_utf8_strcoll(), not
strcmp().
* gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): Clamp
width of child allocation to >= 1. (Fixes warnings from
#77639, Martin Schulze)
* gtk/gtkcontainer.c (gtk_container_class_install_child_property):
(gtk_container_class_find_child_property):
(gtk_container_class_list_child_properties):
* gtk/gtkwidget.c (gtk_widget_class_find_style_property):
(gtk_widget_class_list_style_properties): Change parameter names
to match the header file and the documentation.
2002-05-10 Daniel Elstner <daniel.elstner@gmx.net>
[ merge from stable ]
* gtk/gtktreemodel.c: #define INITIALIZE_TREE_ITER(), which zeroes out all GtkTreeIter fields. (#81380)
(gtk_tree_model_get_iter): Use it.
(gtk_tree_model_iter_children): ditto
(gtk_tree_model_iter_nth_child): ditto
(gtk_tree_model_iter_parent): ditto
Wed May 8 16:14:49 2002 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktreeview.c
(gtk_tree_view_init): set_redraw_on_allocate (FALSE);
(gtk_tree_view_size_allocate): invalidate last column if width
changed.
(gtk_tree_view_bin_expose): skip over cells that aren't in
event->region
2002-05-07 Michael Natterer <mitch@gimp.org>
* configure.in: added a new conditional CROSS_COMPILING which
indicates ($build != $host). If it is set, look for
gdk-pixbuf-csource in PATH. Error out if it was not found.
* gtk/stock-icons/Makefile.am: use the gdk-pixbuf-csource found at
configure time if CROSS_COMPILING is set, use the one which was
just built otherwise.
Mon May 6 23:48:14 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_map_expanded_rows_helper): call
func on current node before the child nodes.
Mon May 6 23:17:42 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_motion_draw_column_motion_arrow):
unset user_data before destroying the window. (fixes#80065).
* configure.in: Bump version to 2.1.0, binary, interface age 0.
* gtk/gtkcontainer.c (gtk_container_class_list_child_properties):
(gtk_container_class_find_child_property): Document.
* gtk/gtkwidget.c:
* gtk/gtkwidget.h: New functions gtk_widget_class_list_child_properties
and gtk_widget_class_find_child_property. (#80652)
Sun May 5 16:42:32 2002 Kristian Rietveld <kris@gtk.org>
The "big treeview focus patch". Fixes several issues and adds some
goodies. Related bugs: #73676, #73734, #78660.
* gtk/gtktreeview.h: add gtk_tree_view_set_cursor_on_cell
* gtk/gtktreeview.c (gtk_tree_view_button_press): focus on a cell
if applicable,
(gtk_tree_view_bin_expose): set_cell_data before iterating columns,
add support for row-spanning focus rectangles,
(gtk_tree_view_has_special_cell): new function,
(gtk_tree_view_move_cursor_left_right): add support for multiple
focusable cells in one column,
(gtk_tree_view_set_cursor): call _set_cursor_on_cell now,
(gtk_tree_view_set_cursor_on_cell): copy of _set_cursor, extended
with focus_cell parameter,
(gtk_tree_view_search_iter): removed unused column variable,
(gtk_tree_view_start_editing): add neighbor size code to allow
for multiple editable cells in one column.
* gtk/gtktreeviewcolumn.c (_GtkTreeViewColumnCellInfo): add
in_editing_mode field,
(gtk_tree_view_column_get_edited_cell): new function, removed
_get_editable_cell,
(_gtk_tree_view_column_get_cell_at_pos): new function,
(gtk_tree_view_column_pack_end): s/g_new/g_new0/ ...,
(gtk_tree_view_column_cell_process_action): loads of changes to get
it right and to allow for multiple special cells, etc,
(gtk_tree_view_column_cell_first): new function,
(gtk_tree_view_column_cell_last): ditto,
(gtk_tree_view_column_cell_next): ditto,
(gtk_tree_view_column_cell_prev): ditto,
(gtk_tree_view_column_cell_focus): add left and right parameters,
allow for multiple special cells,
(gtk_tree_view_column_cell_is_visible): add assertion,
(gtk_tree_view_column_focus_cell): new function,
(gtk_tree_view_column_stop_editing): unset in_editing_mode flag,
(_gtk_tree_view_column_get_neighbor_sizes): iterate through cells
correctly
* gtk/gtktreeviewcolumn.h: add gtk_tree_view_column_focus_cell
* gtk/gtktreeprivate.h: s/_get_editable_cell/_get_edited_cell/, add
_gtk_tree_view_column_get_cell_at_pos, add new parameters to
_gtk_tree_view_column_cell_focus.
* tests/testtreeedit.c: add some cells in order to test new code.
Tue Apr 30 18:42:25 2002 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c (gtk_window_set_screen): Make it
work, even if the window is already realized or
mapped.
* tests/testgtk.c: Erwann's multihead changes, slightly
dumbed down. (Removed logic for pulling windows onto
the current screen, people can click twice on the demo
to destroy and create again.)
* tests/prop-editor.c: Set the screen on the property
editor if the edited object is a widget.
2002-04-30 Havoc Pennington <hp@redhat.com>
* gtk/gtktextlayout.c (gtk_text_layout_real_free_line_data): use
gtk_text_layout_invalidate_cache instead of cut-and-paste
(gtk_text_layout_real_invalidate): always invalidate cache, even
if the line has no stored line data. #78573
* gtk/gtktextview.c (gtk_text_view_get_iter_location): add call to
gtk_text_view_ensure_layout, #77388
(gtk_text_view_get_iter_at_location): ditto
(gtk_text_view_get_line_yrange): ditto
(gtk_text_view_get_line_at_y): ditto