Wed Aug 25 16:14:34 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_search_activate): activate the
typeahead entry on enter.
Tue Aug 24 02:06:37 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtktreeview.c
(gtk_tree_view_real_expand_collapse_cursor_row): Don't handle the
event if we have no children.
* gtk/gtkfilechooserdefault.c (trap_activate_cb):
(tree_view_keybinding_cb):Since GtkTreeView has a keybinding
attached to '/', we need to catch keypresses before the TreeView
gets them.
(gtk_file_chooser_default_class_init): add '/' to be a keybinding
to the C-l dialog.
(location_entry_create): Clear the text to "" when loading a file.
This has a much better feel than putting the currently selected
in.
* #include <errno.h>
Wed Aug 18 16:18:00 2004 Manish Singh <yosh@gimp.org>
* gtk/gtktreeview.c (gtk_tree_view_row_inserted): Initialize height
from fixed_height before we do anything, so it always has a valid
value.
* gtk/gtkfilechooserdefault.c (shortcuts_reload_icons): Fix call
to gtk_tree_model_get (missing "," in param list).
Wed Aug 11 19:20:34 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row):
Don't start a drag if the treeview is only a
drag destination. (#149836, Pawel Salek)
Mon Aug 9 12:48:04 2004 Matthias Clasen <maclas@gmx.de>
Add hidden aliases for exported symbols which are
used internally in order to get rid of many PLT
entries. (#145519, Arjan van de Ven)
* gtk/Makefile.am: Add rules to generate gtk.def and
from gtk.symbols, and make make check check the abi
with abicheck.sh.
(gtk_private_h_sources): Add gtkinternals.h
(gtk_built_private_headers): Add gtkalias.h
(gtk_extra_sources): Add gtk.symbols
(EXTRA_DIST): Add makegtkalias.pl and abicheck.sh
* gtk/gtk.symbols: New file. Definition of the GTK+ ABI.
The file can be processed by cpp to filter out certain
subsets of symbols.
* gtk/abicheck.sh: New file. Script to check the actually
symbols exported from libgtk-x11.2.0.so against the symbols
found in gtk.symbols.
* gtk/makegtkalias.pl: New file. Perl script to generate the
header containing the alias definitions for internally used
exported symbols from a list of symbols.
* gtk/gtkinternals.h: New file. An uninstalled header listing
symbols which must be exported for some reason and do not appear
in any other header.
* gtk/*.c: Include gtkalias.h
Sat Aug 7 01:26:08 2004 Matthias Clasen <maclas@gmx.de>
Make the column drag code a bit more robust (still scary,
though). (#106992, Christian Biere)
* gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): Assert
that cur_reorder is NULL here.
* gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
Reset cur_reorder to NULL, and only hide drag_highlight_window
if it exists.
2004-08-02 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.h:
* gtk/gtktreeview.c:
* gtk/gtktreeprivate.h: Add a new boolean property
::hover-expand and make the treeview expand/collapse rows
on mouseover if it is set.
Thu Jul 29 16:36:42 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeprivate.h: New arguments
* gtk/gtktreeview.c:
(gtk_tree_view_class_init): Add key_release callback
(gtk_tree_view_init): Initialize timeout handler
(gtk_tree_view_unrealize): clear timeout if needed
(gtk_tree_view_key_press): Typeahead support
(gtk_tree_view_key_release): Not used yet -- will be needed for
typeahead.
(gtk_tree_view_search_entry_flush_timeout): Remove typeahead entry
in a timeout.
(gtk_tree_view_ensure_interactive_directory):
(gtk_tree_view_real_start_interactive_search):
(gtk_tree_view_search_init):
(gtk_tree_view_start_interactive_search): Typeahead support added.
(gtk_tree_view_search_dialog_hide): Clear timeout and text when we
hide.
2004-07-27 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_ensure_interactive_directory):
Add a frame around the C-f popup to stop it from merging visually
in whatever is underneath.
Tue Jul 20 00:45:38 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreeview.c (gtk_tree_view_button_press): Set drag_pos
before grabbing the focus, since we may reenter into
gtk_tree_view_motion_resize_column() which requires drag_pos
to be set. (#147913, Guilherme Salgado, patch by John Finlay)
2004-07-15 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_class_init):
* gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init):
Correct the declared default values of several properties
to be in sync with the actual initial values.
2004-07-14 Federico Mena Quintero <federico@ximian.com>
Fix#126295:
* gtk/gtktreeview.c (gtk_tree_view_bin_expose): Draw a focus
indicator along the edge of the bin_window when the tree is empty.
(grab_focus_and_unset_draw_keyfocus): New helper function.
(gtk_tree_view_button_press): Remove a bit of superfluous code.
Use the helper function to save on duplicated code.
(gtk_tree_view_button_press): Grab the focus if the tree is empty.
(gtk_tree_view_focus): Allow focusing into an empty tree.
2004-07-13 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_adjustment_changed):
Prepare to handle composite implementations of
GtkCellEditable, but recursively poking at
allocation->y (hack stolen from GtkCList).
Thu Jul 8 00:33:15 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreeview.c (gtk_tree_view_set_model): Stop editing
when a new model is set. (#145566, Dmitry M. Shatrov)
2004-07-07 Matthias Clasen <mclasen@redhat.com>
Support separators in combo boxes and more generally in tree
views (#135873):
* gtk/gtkcombobox.h:
* gtk/gtkcombobox.c (gtk_combo_box_get_row_separator_column):
* gtk/gtkcombobox.c (gtk_combo_box_set_row_separator_column):
Add a ::row-separator-column property with getter and setter,
which can indicate a boolean model column to determine which
rows are separators.
* gtk/gtkcombobox.c: Display separator rows as separator menu
items in menu mode, and by using the new treeview separator
functionality in list mode.
* gtk/gtktreeview.h:
* gtk/gtktreeview.c (gtk_tree_view_get_row_separator_func):
* gtk/gtktreeview.c (gtk_tree_view_set_row_separator_func):
Add a callback to determine whether a row is a separator.
* gtk/gtktreeview.c (gtk_tree_view_bin_expose):
* gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon):
* gtk/gtktreeview.c (validate_row): Use the new callback
to determine whether a row is a separator, and draw it
as a separator then. Since separators should take up less
vertical space than regular rows, this requires removing
the redundant MAX(...,expander_size) calls which appear in
many places. Instead, the MAX() is now only done in
validate_row(), and only if the row is not a separator.
To catch possible side effects of this intrusive change,
I have left EXPANDER_MAX() calls in place of the MAX() calls
which will emit a warning if something breaks. They should
be removed before 2.6.
* gtk/gtktreeselection.c (row_is_selectable): Don't let
separator rows be selected.
* tests/testcombo.c (create_blaat): Add a separator column.
Tue Jul 6 10:00:22 2004 Jonathan Blandford <jrb@redhat.com>
Fix for #136496, Pawel Salek:
* gtk/gtktreeview.c (gtk_tree_view_row_changed): Queue a redraw on
a node when it changes in fixed_height mode.
(gtk_tree_view_node_queue_redraw): new function to queue a redraw
on a node.
2004-06-30 Anders Carlsson <andersca@gnome.org>
* gtk/gtktreeview.c (gtk_tree_view_set_model): Use
g_return_if_fail to make sure that the model is a GtkTreeModel.
2004-06-07 Federico Mena Quintero <federico@ximian.com>
* gtk/gtktreeview.c (gtk_tree_view_button_press): Revert the patch
from 2003/Sep/12. This kept DnD in tree views within modal
dialogs from working, which is especially bad for the file
chooser. Fixes#135168.
2004-05-14 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_tree_window_to_tree_coords):
New function to go from tree window to tree coordinates, kept
static for now until we figure out the multiple coordinate
system mess in GtkTreeView API-wise.
(gtk_tree_view_scroll_to_cell): Transform the coordinates
from tree window to tree coordinates, using the new function.
Previously, the x coordinate was wrongly transformed. (#142494)
2004-05-11 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcombobox.c (gtk_combo_box_list_setup): Use
GTK_SELECTION_BROWSE.
* gtk/gtktreeview.c: Make hover selection work for
GTK_SELECTION_BROWSE as well.
2004-05-10 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkentrycompletion.c (gtk_entry_completion_init):
* gtk/gtkcombobox.c (gtk_combo_box_list_setup): Use hover selection
mode. (#127648, Dave Bordoley)
* gtk/gtktreeview.h:
* gtk/gtktreeview.c: Add a new property "hover_selection", which
when TRUE makes the selection follow the mouse. Also add setter
and getter for the fixed_height property.
Tue Apr 13 12:24:49 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_destroy): remove unused
variable.
(gtk_tree_view_button_press): If we activated the row we don't
want to grab focus back, as moving focus to another widget is
pretty common, #138458
2004-04-12 Matthias Clasen <mclasen@dhcp64-228.boston.redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Typo fix.
* gtk/gtkentrycompletion.c (gtk_entry_completion_init): Don't add
a shadow inside the scrolled window, add it around the vbox.
* gtk/gtkentryprivate.h:
* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
Return a boolean indicating whether the popup is positioned above
or below. Scroll the completions to the beginning or the end,
depending on the positioning.
* gtk/gtkentry.c (gtk_entry_completion_key_press): Make keynav
wrap around in the entry completion popup, and allow GDK_UP to
enter the popup. (#137440)
2004-04-12 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkentry.c (gtk_entry_size_request): Make sure the style is
there before using it.
Fri Apr 2 17:57:33 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_row_inserted): set the height
correctly for fixed height when inserting a node, #138082
Sun Mar 14 22:32:36 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_set_search_equal_func): Mention
GtkTreeViewSearchEqualFunc return value oddity here as well.
* gtk/gtktreeview.c (gtk_tree_view_search_equal_func): On failure
to get a string to compare to, return TRUE (no match), not
FALSE (match). Handle %NULL string values gracefully.
Remove unused variable. (#135962, Mark McLoughlin)
2004-03-05 Federico Mena Quintero <federico@ximian.com>
Fixes#136082 and #135265, patch by Morten Welinder.
* configure.in: Use AC_SYS_LARGEFILE.
* */*.c: #include <config.h>
Fri Mar 5 18:00:36 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkfilechooserdefault.c (new_folder_button_clicked): scroll
to the new path.
* gtk/gtktreeview.c (gtk_tree_view_adjustment_changed): Update the
allocation when scrolling instead of cancelling editing.
Tue Feb 24 14:43:07 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtktreeview.c (gtk_tree_view_bin_expose): only draw the sort
column as different if there are 3 or more visible columns.
Thu Feb 12 01:17:01 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreeview.c (gtk_tree_view_enable_model_drag_source): Call
gtk_drag_source_set(), so that things like gtk_drag_set_icon_*() work
for automatic DND. (#133485, Tommi Komulainen)
Tue Feb 3 00:15:17 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
init_hadjust_value and prev_width.
* gtk/gtktreeview.c (gtk_tree_view_init): Initialize
them here.
* gtk/gtktreeview.c (gtk_tree_view_update_size): ...and here.
* gtk/gtktreeview.c (gtk_tree_view_size_allocate): Use them
here to properly handle the initial position of rtl-oriented
tree views. (#127581, chinen@jp.ibm.com)
2004-01-20 Federico Mena Quintero <federico@ximian.com>
Fix#130846, reported by R. McFarland <rwmcfa1@neces.com>.
* gtk/gtktreeview.c (gtk_tree_view_button_press): Return TRUE when
we handle an event in the colums, and FALSE at the end if the
event is not handled at all.
2004-01-30 Not Zed <NotZed@Ximian.com>
Fixes#132929.
* gtk/gtktreeview.c (cancel_arrow_animation): remove the timeout
handler when we clear the timeout id.
Fri Jan 23 14:56:18 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtktreeview.c (gtk_tree_view_get_path_at_pos): Don't crash
when there are no columns, or all columns are hidden, #131402
Fri Jan 16 23:59:01 2004 Matthias Clasen <maclas@gmx.de>
The first part of the fix for #114351 (see also
gdk-pixbuf/ChangeLog and po/ChangeLog):
* gtk/gtkintl.h:
* gdk-pixbuf/gdk-pixbuf-i18n.h:
* gdk/gdkintl.h: Define P_() for property blurbs and nicks.
* gdk/gdkdisplaymanager.c:
* gdk-pixbuf/gdk-pixbuf.c:
* modules/input/gtkimcontextxim.c:
* gtk/*.c: Mark property blurbs and nicks with P_().
* po/Makefile.in.in: Add --keyword=P_ to the xgettext
invocation, since property blurbs and nicks are
now marked with P_().
Wed Jan 14 18:01:52 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtktreeview.c (gtk_tree_view_button_press): move grab_focus
to after handling the button presses in the TreeView to avoid
getting multiple selection_changes()
Sun Dec 21 23:17:01 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkuimanager.c (update_node):
(update_smart_separators):
(_gtk_menu_is_empty):
(find_menu_position):
* gtk/gtktreeview.c (gtk_tree_view_search_dialog_destroy):
* gtk/gtkcombobox.c (gtk_combo_box_relayout_item):
(gtk_combo_box_relayout): Fix memory leaks caused by the
failure to free the result of gtk_container_get_children().
(#127576, Yao Zhang)
Sat Dec 20 22:06:03 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_size_allocate): do not invalidate
all of treeview when resizing (#110074, patch from Soeren Sandmann).
Fri Dec 19 22:18:19 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_search_equal_func): use strstr
instead of strcmp (#117127, suggestion from Soeren Sandmann).
Thu Dec 18 18:01:01 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_class_init): add key bindings
for "*" and "/" (expand/collapse all). (#110195, reported by
Calum Benson).
Thu Dec 18 01:21:59 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_class_init): Jonathan got
the logical flag backwards in the expand_collapse_cursor_row
bindings, fixing.
(gtk_tree_view_real_expand_collapse_cursor_row): invert expand
flag when !logical and in RTL. (Fixes#107527, reported by
Noah Levitt).
Thu Dec 18 01:10:16 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_button_press): only start
editing when activated by the left mouse button. (#106869,
patch from Evan Martin).
Wed Dec 17 23:31:19 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_search_equal_func): only
try to strcmp or strlen if we managed to normalize and casefold
the string correctly. Fixes crashes with non-UTF8 strings.
(#121617, Patch from Tim-Philipp Müller).
Sat Dec 13 16:13:27 2003 Kristian Rietveld <kris@gtk.org>
A trick for a faster treeview, step 1. Patch to short circuit
_build_tree(), inspired by Jonathan (#80868).
* gtk/gtktreeview.c (gtk_tree_view_init): don't put _IS_LIST in
flags by default,
(gtk_tree_view_build_tree): don't even try to recurse when the
model says that it is a list, remove flag unsetter,
(gtk_tree_view_set_model): change flag setting logic.
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_flags):
propagate whether or not the child model has _IS_LIST set.
* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_get_flags):
ditto.
Sat Nov 29 00:55:28 2003 Jonathan Blandford <jrb@gnome.org>
* gtk/gtktreeview.c (gtk_tree_view_new_column_width):
* gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
Patch from <chinen@jp.ibm.com> to handle RTL support for column
resizers, #127874
Tue Oct 21 22:07:12 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_real_move_cursor): set
ctrl_pressed and shift_pressed according to the current event
state (if there is one). (Fixes#125063, reported by Sebastien Bacher).
2003-10-13 Federico Mena Quintero <federico@ximian.com>
* gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Don't do
operations on windows if the tree view is not mapped.
(gtk_tree_view_button_press): Compare equal types of pointers, not
GtkWidget* vs. GtkTreeView*.
Fri Sep 12 16:32:53 2003 Jonathan Blandford <jrb@redhat.com>
Merge from stable.
* gtk/gtktreeview.c (gtk_tree_view_button_press): only save the
pressed button (used to determine if we want to initiate a drag later
on) if the current grab widget is either NULL or tree_view (Reported
by Jeroen Zwartepoorte).
Wed Sep 10 01:06:44 2003 Kristian Rietveld <kris@gtk.org>
Big TreeView DnD fixage, makes drops on empty models work, makes
TreeStore DnD work and gets rid of gtk-tree-model-drop-append.
Related bugs #95362 and #113314. I don't want to touch this code
ever again.
* gtk/gtktreeprivate.h (GtkTreePrivate): add empty_view_drop field.
* gtk/gtktreednd.c (gtk_tree_get_row_drag_data): add check
for selection_data->length.
* gtk/gtktreeview.c (struct DestRow), (dest_row_free),
(set_dest_row), (get_dest_row): we don't store just the row ref
anymore, but a struct with the row ref and additional info,
(set_destination_row): handle drops on empty space and some
style fixes,
(get_logical_dest_row): also return path_down_mode/drop_append_mode
flags, handle dropping childs on their new parents, rewrite
drop append handling into something saner,
(gtk_tree_view_drag_motion): show a "drop possible arrow" on empty
spaces,
(gtk_tree_view_drag_drop): updates for updated backend,
(gtk_tree_view_drag_data_received): updates for updated backend,
path down mode (treestore DnD) handling,
(gtk_tree_view_set_drag_dest_row): set empty_view_drop flag,
when we are trying to drop a row on an empty model,
(gtk_tree_view_get_drag_dest_row): handle empty_view_drop flag.
* gtk/gtkliststore.c (gtk_list_store_drag_data_received),
(gtk_list_store_row_drop_possible): style and drop-append fixes.
* gtk/gtktreestore.c (gtk_tree_store_drag_data_received): ditto.
Tue Sep 2 21:01:19 2003 Kristian Rietveld <kris@gtk.org>
Merge from stable.
* gtk/gtktreeview.c (gtk_tree_view_button_press): revert the change
to only select when button 1 is pressed introduced in the fix of
bug #120187.
Mon Aug 25 23:21:43 2003 Kristian Rietveld <kris@gtk.org>
Merge from stable.
Fixes#115871, reported by Michael Natterer.
* gtk/gtktreeprivate.h: added GtkTreeSelectMode enum,
added ctrl_pressed and shift_pressed bitfields,
(_gtk_tree_selection_internal_select_node): replace GdkModifierType
arg with GtkTreeSelectMode.
* gtk/gtktreeselection.c (gtk_tree_selection_set_mode),
(gtk_tree_selection_select_path), (gtk_tree_selection_unselect_path),
(_gtk_tree_selection_internal_select_node): all updated for
GdkModifierType -> GtkTreeSelectMode move.
* gtk/gtktreeview.c (gtk_tree_view_button_press): set ctrl_pressed
and shift_pressed around selection handling block,
(gtk_tree_view_real_select_cursor_row),
(gtk_tree_view_real_toggle_cursor_row),
(gtk_tree_view_real_selection_cursor_parent),
(gtk_tree_view_real_set_cursor): use ctrl_pressed and shift_pressed,
instead of checking the event state. And also updates for the
GdkModifierType -> GtkTreeSelectMode move.
Thu Aug 21 20:53:46 2003 Kristian Rietveld <kris@gtk.org>
Slightly modified patch from Yann Rouillard to improve selection
behavior with the mouse. Fixes#120187.
* gtk/gtktreeview.c (gtk_tree_view_button_press): only
select/deselect items on the first button press of button 1,
expand checks for row_activated to include triple clicks.
Fri Aug 15 21:57:34 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_view_adjustment_changed): stop editing
on vertical scrolling. (#108035, reported by Tim Janik).
Fri Aug 15 19:43:14 2003 Kristian Rietveld <kris@gtk.org>
(Note: This is not exactly the same as the patch which went in
gtk-2-2).
* gtk/gtktreeview.c (gtk_tree_view_class_init),
(gtk_tree_view_key_press), (gtk_tree_view_search_key_press_event):
Also support the up, down, left, right, home, end, page up and
page down keys on the numpad. (#119419, reported by Alex Larsson).
Thu Jul 17 19:24:51 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
Fixes issues pointed out by Morten Welinder in #115140.
* gtk/gtktreeview.c (gtk_tree_view_size_request): fix comment,
(do_validate_rows): update validated_area with a logic OR instead
of a bitwise OR,
(validate_rows_handler): make the if statement match the one in
validate_rows(), so we don't leak the timeout.
Thu Jul 17 19:12:02 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_view_remove_widget): the treeview
should only grab focus back if the "cell_editable" widget still
has focus. (Fixes#110104, testcase provided by Marco Pesenti
Gritti).
Thu Jul 17 16:11:21 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_view_rows_reordered): stop editing
if needed. (Fixes#115869, reported by Michael Natterer).
Sat Jul 12 16:16:04 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_view_drag_data_received): special
case drags to "0", scroll to the top after dropping. (Fixes#94968,
reported by Alp Toker).
Sat Jul 12 15:51:33 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
Fixes#113904, testcase provided by Rene Seindal.
* gtk/gtktreeview.c (gtk_tree_view_button_press): set
pressed_button to -1 when a row has been activated,
(gtk_tree_view_motion_bin_window): only start a drag if there's
a button being pressed.
Sat Jul 12 15:51:18 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): use
gdk_window_get_pointer instead of gdk_display_get_window_at_pointer
to avoid a roundtrip (#110272, Owen Taylor).
Sat Jul 12 15:28:26 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
This patch really really fixes scrolling. Related bugs: #81627,
testcase provided by Timo Sirainen, #111500, testcase provided by
manu, #113241, reported by Pedro Gimeno/Michael Natterer.
* gtk/gtktreeview.c (validate_visible_area): scrolling to a dy
which is equal to the lower border of the window means scrolling
to an invisible row, always update the dy when scrolling to an
invisible row, corrected area_above/below calculations for
invisible rows, when walking the tree correct the size
subtracted for invalidated rows, fix wrong logic in comment.
Fri Jun 6 23:38:23 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (do_expand_collapse),
(expand_collapse_timeout), (cancel_arrow_animation): made
expand_collapse_timeout a wrapper with locks around
do_expand_collapse, made cancel_arrow_animation use
do_expand_collapse. Fixes threadlock. (Fixes#111286, patch from
Peter Bloomfield).
Wed Jun 4 21:25:35 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_view_drag_begin): use a silent
assert for get_info. (reported by Michael Natterer),
(gtk_tree_view_expand_all_emission_helper),
(gtk_tree_view_expand_all_helper): emit row_expanded for all
expanded rows during an _expand_all operation. (Fixes#111280,
reported by Benjamin Bayart).
Thu May 29 18:23:01 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_view_button_press): put the focus
grab separate, the user might clear the tree in the focus-in
callback. (Fixes#113086, testcase from Felipe Heidrich).
Thu May 29 18:06:26 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_model_set_model): reset a bunch
of row reference when we unset the model. Also reset
dy and top_row_dy. (Fixes#109289, patch from Owen Taylor).
Thu May 29 17:12:19 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_view_set_cursor_on_cell): cancel
the current editing, if it exists. (Fixes#108956, reported by
Michael Natterer).
Thu May 29 17:06:09 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (check_selection_helper): new function,
(gtk_tree_view_row_deleted): traverse the tree from the
deleted node to see whether the selection changed, instead of
just checking this node. (Fixes#107400, reported by 'Duncan').
Thu May 29 16:31:34 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row),
(gtk_tree_view_drag_begin): set the DnD icon in _drag_begin
instead of _maybe_begin_dragging_row, so the icon can be
overridden by apps. (Fixes#104374, patch from Daniel Elstner).
Thu May 29 16:14:04 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_view_start_editing): correct
cell_area x/width for the expander if needed. (Fixes#101748,
reported by Dave Cook and Mariano Suarez-Alvarez).
Thu May 29 16:01:38 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_real_set_cursor): check
if tree/node are still the same after _internal_select_node.
(Fixes#92256, reported by edscott).
Thu May 29 15:38:30 2003 Kristian Rietveld <kris@gtk.org>
Fixes#75745, reported by Richard Hult. Merged from stable.
* gtk/gtktreeview.c (gtk_tree_view_bin_expose): set/unset
GTK_CELL_RENDERER_FOCUSED flag whether the current node is the
cursor or not.
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
if we are rendering a cursor row, and the cell the be
processed has focus, then set the GTK_CELL_RENDERER_FOCUSED
flag (else we unset it).
Thu Apr 17 09:57:44 2003 Jonathan Blandford <jrb@gnome.org>
* gtk/gtktreeview.c (validate_visible_area): remove infinite loop
caused by not clearing the scroll_to_path.
2003-03-26 Sven Neumann <sven@gimp.org>
* gtk/gtktreeview.c: rewrote the function that does node and arrow
prelighting, queue all redraws from here (Fixes bug #108792).