Bug 28623 Widget is Disposed
Eclipse 20021217 Started new eclipse. Updated existing workspace with both source and binary projects. Changed preferences on Window>Preferences>Workspace>Editors (turned editor pop-down on, and tab compression to low). The following exception was captured in the log !SESSION Dec 18, 2002 09:53:48.72 ---------------------------------------------- java.fullversion=J2RE 1.3.1 IBM build cxia32131-20020410 (JIT enabled: jitc) BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=en_US Command-line arguments: -os linux -ws gtk -arch x86 - data /home/airvine/ide/workspace_gtk_R2.1 -showlocation -install file:/home/airvine/ide/eclipse_gtk_R2.1/ !ENTRY org.eclipse.ui 4 4 Dec 18, 2002 09:53:48.73 !MESSAGE Unhandled exception caught in event loop. !ENTRY org.eclipse.ui 4 0 Dec 18, 2002 09:53:48.95 !MESSAGE Widget is disposed !STACK 0 org.eclipse.swt.SWTException: Widget is disposed at org.eclipse.swt.SWT.error(SWT.java:2180) at org.eclipse.swt.widgets.Control.getDisplay(Control.java(Compiled Code)) at org.eclipse.swt.widgets.Control.getDisplay(Control.java(Compiled Code)) at org.eclipse.swt.widgets.Control.getDisplay(Control.java(Compiled Code)) at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java(Compiled Code)) at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java(Compiled Code)) at org.eclipse.swt.widgets.Tree.getSelectionCount(Tree.java:511) at org.eclipse.jface.preference.PreferenceDialog.setSelectedNode (PreferenceDialog.java:728) at org.eclipse.jface.preference.PreferenceDialog.close (PreferenceDialog.java:223) at org.eclipse.ui.internal.dialogs.WorkbenchPreferenceDialog.savePressed (WorkbenchPreferenceDialog.java:257) at org.eclipse.ui.internal.dialogs.WorkbenchPreferenceDialog.buttonPressed (WorkbenchPreferenceDialog.java:99) at org.eclipse.jface.dialogs.Dialog$1.widgetSelected(Dialog.java:398) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java (Compiled Code)) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java (Compiled Code)) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java (Compiled Code)) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java (Compiled Code)) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java (Compiled Code)) at org.eclipse.jface.window.Window.runEventLoop(Window.java(Compiled Code)) at org.eclipse.jface.window.Window.open(Window.java:541) at org.eclipse.ui.internal.OpenPreferencesAction.run (OpenPreferencesAction.java:47) at org.eclipse.jface.action.Action.runWithEvent(Action.java:769) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection (ActionContributionItem.java:411) at org.eclipse.jface.action.ActionContributionItem.handleWidgetEvent (ActionContributionItem.java:365) at org.eclipse.jface.action.ActionContributionItem.access$0 (ActionContributionItem.java:356) at org.eclipse.jface.action.ActionContributionItem$ActionListener.handleEvent (ActionContributionItem.java:48) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java (Compiled Code)) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java (Compiled Code)) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java (Compiled Code)) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java (Compiled Code)) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java (Compiled Code)) at org.eclipse.ui.internal.Workbench.run(Workbench.java:1429) at org.eclipse.core.internal.boot.InternalBootLoader.run (InternalBootLoader.java:845) at org.eclipse.core.boot.BootLoader.run(BootLoader.java:462) at java.lang.reflect.Method.invoke(Native Method) at org.eclipse.core.launcher.Main.basicRun(Main.java:247) at org.eclipse.core.launcher.Main.run(Main.java:703) at org.eclipse.core.launcher.Main.main(Main.java:539)
bundles/org.eclipse.jface/src/org/eclipse/jface/preference/PreferenceDialog.java
public void layout(Composite composite, boolean force) {
			Rectangle rect = composite.getClientArea();
			Control[] children = composite.getChildren();
			for (int i = 0; i < children.length; i++) {
				children[i].setSize(rect.width, rect.height);
			}
		}
		public Point computeSize(
			Composite composite,
			int wHint,
			int hHint,
			boolean force) {
			if (wHint != SWT.DEFAULT && hHint != SWT.DEFAULT)
				return new Point(wHint, hHint);
			int x = minimumPageSize.x;
			int y = minimumPageSize.y;
			Control[] children = composite.getChildren();
			for (int i = 0; i < children.length; i++) {
				Point size =
					children[i].computeSize(SWT.DEFAULT, SWT.DEFAULT, force);
				x = Math.max(x, size.x);
				y = Math.max(y, size.y);