Bug 70278 [Navigator] Adding a nature with associated natureImage does not refresh folder overlay.
I have a nature with my own natureImage associated with it. I wrote a Wizard to "convert" exisiting projects to contain my nature. Everything works fine, but the overlay icon does not show on the project folder until I do one of the following: 1) restart the workbench 2) "Go into" and back out of the project folder 3) Close and re-open the project Refreshing the project folder does not help, nor does refreshing the workspace. I can see of no way to cause this hard repaint of the folder icon to happen within the API but I could be missing something. If there is a way to do it I would be happy to hear it. ;o)
bundles/org.eclipse.ui.ide/extensions/org/eclipse/ui/model/WorkbenchContentProvider.java
viewer.getControl().setRedraw(false);
                
            
            if (addedChildren.length > 0) {
                Object[] affected = new Object[addedChildren.length];
                for (int i = 0; i < addedChildren.length; i++)
                    affected[i] = addedChildren[i].getResource();
                if (viewer instanceof AbstractTreeViewer) {
                    ((AbstractTreeViewer) viewer).add(resource, affected);
                } else {
                    ((StructuredViewer) viewer).refresh(resource);
                }
            }
            
            if (removedChildren.length > 0) {
                Object[] affected = new Object[removedChildren.length];
                for (int i = 0; i < removedChildren.length; i++)
                    affected[i] = removedChildren[i].getResource();
                if (viewer instanceof AbstractTreeViewer) {
                    ((AbstractTreeViewer) viewer).remove(affected);
                } else {
                    ((StructuredViewer) viewer).refresh(resource);
                }
            }
        } finally {
            if (addedAndRemoved)
                viewer.getControl().setRedraw(true);
        }
    }
}