--- a/src/hbwidgets/itemviews/hbtreeview.cpp Thu Jul 15 14:03:49 2010 +0100
+++ b/src/hbwidgets/itemviews/hbtreeview.cpp Thu Jul 22 16:36:53 2010 +0100
@@ -178,19 +178,16 @@
if (d->isParentValid(parent)) {
if (isExpanded(parent) || parent == d->mModelIterator->rootIndex()) {
- int lastStartPoint = 0;
for (int i = start; i <= end; ++i) {
- QModelIndex newParent = d->treeModelIterator()->index(i, parent);
+ HbAbstractItemView::rowsInserted(parent, i, i);
+ // if there is expanded parent under expanding parent, handle it recursively
+ QModelIndex newParent = d->treeModelIterator()->model()->index(i, 0, parent);
int childCount = d->treeModelIterator()->childCount(newParent);
if (childCount > 0 && isExpanded(newParent)) {
- HbAbstractItemView::rowsInserted(parent, lastStartPoint, i);
- lastStartPoint = i;
rowsInserted(newParent, 0, childCount - 1);
- }
+ }
}
- HbAbstractItemView::rowsInserted(parent, lastStartPoint, end);
-
if (d->animationEnabled(true)) {
if (d->mInSetExpanded) {
d->startAppearEffect("treeviewitem", "expand", parent, start, end);
@@ -537,7 +534,7 @@
/*!
Returns indentation of tree view items.
- The returned value is either default value or set by setIndentation().
+ The returned value is either default value or value set by setIndentation().
Default value is -1. In this case indentation from style sheet is used.