Project: Eclipse_Platform_UI
Bug 49274 [Activities] Cannot open preference dialog if previous selected node not in fitlered list
Reported: 2003-12-22 11:07:08 | Status: closed fixed

M6 You cannot open the preference dialog if the previously selected preference is in the filtered list due to a walkback STEPS 1) Open the preference dialog 2) Select a raw entry that is not in the filtered list 3) Cancel 4) Attempt to reopen - it will try to select a non-esistant node. It should just drop the selection if it isn't there (or not save a selection from the raw list to start with). org.eclipse.jface.util.Assert$AssertionFailedException: Assertion failed: at org.eclipse.jface.util.Assert.isTrue(Assert.java:168) at org.eclipse.jface.util.Assert.isTrue(Assert.java:154) at org.eclipse.jface.preference.PreferenceNode.findSubNode (PreferenceNode.java:177) at org.eclipse.jface.preference.PreferenceContentProvider.findParent (PreferenceContentProvider.java:42) at org.eclipse.jface.preference.PreferenceContentProvider.getParent (PreferenceContentProvider.java:80) at org.eclipse.jface.viewers.AbstractTreeViewer.internalExpand (AbstractTreeViewer.java:893) at org.eclipse.jface.viewers.AbstractTreeViewer.internalExpand (AbstractTreeViewer.java:895) at org.eclipse.jface.viewers.AbstractTreeViewer.internalExpand (AbstractTreeViewer.java:895) at org.eclipse.jface.viewers.AbstractTreeViewer.setSelectionToWidget (AbstractTreeViewer.java:1370) at org.eclipse.jface.viewers.StructuredViewer.setSelectionToWidget (StructuredViewer.java:1066) at org.eclipse.jface.viewers.StructuredViewer.setSelection (StructuredViewer.java:1031) at org.eclipse.jface.preference.PreferenceDialog.selectSavedItem (PreferenceDialog.java:818) at org.eclipse.jface.preference.PreferenceDialog$3.run (PreferenceDialog.java:332) at org.eclipse.swt.custom.BusyIndicator.showWhile (BusyIndicator.java:84) at org.eclipse.jface.preference.PreferenceDialog.createContents (PreferenceDialog.java:327) at org.eclipse.jface.window.Window.create(Window.java:305) at org.eclipse.jface.dialogs.Dialog.create(Dialog.java:883) at org.eclipse.ui.internal.OpenPreferencesAction.run (OpenPreferencesAction.java:70) at org.eclipse.jface.action.Action.runWithEvent(Action.java:842) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection (ActionContributionItem.java:509) at org.eclipse.jface.action.ActionContributionItem.access$2 (ActionContributionItem.java:461) at org.eclipse.jface.action.ActionContributionItem$5.handleEvent (ActionContributionItem.java:408) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:82) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:847) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:2311) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1992) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1506) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1482) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench (Workbench.java:246) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:139) at org.eclipse.ui.internal.ide.IDEApplication.run (IDEApplication.java:47) at org.eclipse.core.internal.runtime.PlatformActivator$1.run (PlatformActivator.java:226) at org.eclipse.core.runtime.adaptor.EclipseStarter.run (EclipseStarter.java:85) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.eclipse.core.launcher.Main.basicRun(Main.java:279) at org.eclipse.core.launcher.Main.run(Main.java:742) at org.eclipse.core.launcher.Main.main(Main.java:581)

Files changed in fix:
bundles/org.eclipse.jface/src/org/eclipse/jface/preference/PreferenceContentProvider.java bundles/org.eclipse.jface/src/org/eclipse/jface/preference/PreferenceDialog.java bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/FilteredPreferenceContentProvider.java bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/FilteredPreferenceDialog.java