Ignore set_expanded if the node is the root and root_visible is FALSE.

2001-07-12  Christopher James Lahey  <clahey@ximian.com>

	* e-tree-table-adapter.c (e_tree_table_adapter_node_set_expanded):
	Ignore set_expanded if the node is the root and root_visible is
	FALSE.

	* e-tree.c (item_key_press): Don't call set_expanded on NULL
	paths.

svn path=/trunk/; revision=11061
This commit is contained in:
Christopher James Lahey
2001-07-12 20:44:02 +00:00
committed by Chris Lahey
parent 160eb8c6e9
commit 4da3e76c2c
2 changed files with 13 additions and 4 deletions

View File

@ -928,6 +928,9 @@ void e_tree_table_adapter_node_set_expanded (ETreeTableAdapter *etta, ET
ETreeTableAdapterNode *node;
int row;
if (e_tree_model_node_is_root (etta->priv->source, path) && !etta->priv->root_visible)
return;
node = find_or_create_node(etta, path);
row = find_row_num(etta, path);

View File

@ -555,14 +555,20 @@ item_key_press (ETableItem *eti, int row, int col, GdkEvent *event, ETree *et)
break;
case '=':
case GDK_Right:
path = e_tree_table_adapter_node_at_row(et->priv->etta, row);
e_tree_table_adapter_node_set_expanded (et->priv->etta, path, TRUE);
if (row != -1) {
path = e_tree_table_adapter_node_at_row(et->priv->etta, row);
if (path)
e_tree_table_adapter_node_set_expanded (et->priv->etta, path, TRUE);
}
return_val = 1;
break;
case '-':
case GDK_Left:
path = e_tree_table_adapter_node_at_row(et->priv->etta, row);
e_tree_table_adapter_node_set_expanded (et->priv->etta, path, FALSE);
if (row != -1) {
path = e_tree_table_adapter_node_at_row(et->priv->etta, row);
if (path)
e_tree_table_adapter_node_set_expanded (et->priv->etta, path, FALSE);
}
return_val = 1;
break;
default: