Bug 292322 [Viewers] Tree view is removing + indicator when one of multiple children is removed.
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/TreeViewer.java
protected Item getChild(Widget widget, int index) {
		if (widget instanceof TreeItem) {
			return ((TreeItem) widget).getItem(index);
		}
		if (widget instanceof Tree) {
			return ((Tree) widget).getItem(index);
		}
		return null;
	}
	protected void assertContentProviderType(IContentProvider provider) {
		if (provider instanceof ILazyTreeContentProvider
				|| provider instanceof ILazyTreePathContentProvider) {
			return;
		}
		super.assertContentProviderType(provider);
	}
	protected Object[] getRawChildren(Object parent) {
		if (contentProviderIsLazy) {
			return new Object[0];
		}
		return super.getRawChildren(parent);
	}
	void preservingSelection(Runnable updateCode, boolean reveal) {
		if (insidePreservingSelection || !getPreserveSelection()){
			
			
			updateCode.run();
			return;
		}
		insidePreservingSelection = true;