Bug 100565 [Viewers] Tree viewer selection not revealed if unchanged
[RC3] Steps: 1. Check out org.eclipse.ui.workbench 2. Open Workbench.java 3. Ctrl-O to open Quick Outline 4. Type "r", note that the field "runEventLoop" is the first match 5. Type "u", note that the field is not shown anymore 6. Type arrow-down key, note that you cannot see the selected entry
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/AbstractTreeViewer.java
* @param element the element to select
     * @return the widget to be selected, or <code>null</code> if not found
     * 
     * @since 3.1
     */
	protected Widget internalGetWidgetToSelect(Object element) {
		return findItem(element);
	}
    /**
     * Recursively expands the subtree rooted at the given widget to the given
     * level.
     * <p>
     * </p>
     * Note that the default implementation of this method does not call <code>setRedraw</code>.
     * 
     * @param widget
     *           the widget
     * @param level
     *           non-negative level, or <code>ALL_LEVELS</code> to collapse
     *           all levels of the tree
     */
    protected void internalExpandToLevel(Widget widget, int level) {
        if (level == ALL_LEVELS || level > 0) {
            createChildren(widget);
            if (widget instanceof Item)
                setExpanded((Item) widget, true);
            if (level == ALL_LEVELS || level > 1) {
                Item[] children = getChildren(widget);
                if (children != null) {
                    int newLevel = (level == ALL_LEVELS ? ALL_LEVELS