Bug 174701 [Viewers] ViewerRow should be reused instead of connected to the Item
Currently we create a ViewerRow ver every Item we create this can degrade performance, we should cache the row and reuse it
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/TreeViewerRow.java
return (ViewerRow) findLastVisibleItem(nextTopItem).getData(ViewerRow.ROWPART_KEY);
			}
		} else {
			TreeItem parentItem = item.getParentItem();
			int previousIndex = parentItem.indexOf(item) - 1;
			
			TreeItem itemBefore;
			if( previousIndex >= 0 ) {
				if( sameLevel ) {
					itemBefore = parentItem.getItem(previousIndex);
				} else {
					itemBefore = findLowestLeaf(parentItem.getItem(previousIndex));
				}
			} else {
				itemBefore = parentItem;
			}
			
			if( itemBefore != null ) {
				return (ViewerRow) itemBefore.getData(ViewerRow.ROWPART_KEY);
			}
		}
		
		return null;
	}
	private TreeItem findLastVisibleItem(TreeItem parentItem) {
		TreeItem rv = parentItem;
		
		if( rv.getExpanded() && rv.getItemCount() > 0 ) {
			rv = findLastVisibleItem(rv.getItem(rv.getItemCount()-1));