diff --git a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/BMotionStartup.java b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/BMotionStartup.java index fcc948973435f320a304c913bb206ba522976350..7f0e168743ada0f39264ec252907e49d42f3610d 100644 --- a/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/BMotionStartup.java +++ b/de.bmotionstudio.gef.editor/src/de/bmotionstudio/gef/editor/BMotionStartup.java @@ -1,5 +1,6 @@ package de.bmotionstudio.gef.editor; +import org.eclipse.swt.widgets.Display; import org.eclipse.ui.IPerspectiveDescriptor; import org.eclipse.ui.IPerspectiveRegistry; import org.eclipse.ui.IStartup; @@ -11,17 +12,21 @@ public class BMotionStartup implements IStartup { @Override public void earlyStartup() { - - IPerspectiveRegistry perspectiveRegistry = PlatformUI.getWorkbench() - .getPerspectiveRegistry(); - IPerspectiveDescriptor[] perspectives = perspectiveRegistry - .getPerspectives(); - for (IPerspectiveDescriptor p : perspectives) { - if (p.getId().startsWith("BMS_")) - PerspectiveUtil.closePerspective(p); - PerspectiveUtil.deletePerspective(p); - } - + Display.getDefault().asyncExec(new Runnable() { + @Override + public void run() { + IPerspectiveRegistry perspectiveRegistry = PlatformUI + .getWorkbench().getPerspectiveRegistry(); + IPerspectiveDescriptor[] perspectives = perspectiveRegistry + .getPerspectives(); + for (IPerspectiveDescriptor p : perspectives) { + if (p.getId().startsWith("BMS_")) { + PerspectiveUtil.closePerspective(p); + PerspectiveUtil.deletePerspective(p); + } + } + } + }); } }