Bug 38782 TreeViewer add calls a refresh
Our implementation of TreeViewer.add is naive and can all a refresh of the entire tree. It should be more like TableViewer.
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/AbstractTreeViewer.java
safeUpdateItem.item = item;
			safeUpdateItem.element = element;
			try {
				Platform.run(safeUpdateItem);
			} finally {
				safeUpdateItem.item = null;
				safeUpdateItem.element = null;
			}
		}
	}
	/**
	 * Expands all nodes of the viewer's tree, starting with the root.
	 * This method is equivalent to <code>expandToLevel(ALL_LEVELS)</code>.
	 */
	public void expandAll() {
		expandToLevel(ALL_LEVELS);
	}
	/**
	 * Expands the root of the viewer's tree to the given level.
	 *
	 * @param level non-negative level, or <code>ALL_LEVELS</code> to expand
	 *  all levels of the tree
	 */
	public void expandToLevel(int level) {
		expandToLevel(getRoot(), level);
	}
	/**
	 * Expands all ancestors of the given element so that the given element
	 * becomes visible in this viewer's tree control, and then expands the