diff --git a/sdk/jme3-core/src/com/jme3/gde/core/scene/SceneApplication.java b/sdk/jme3-core/src/com/jme3/gde/core/scene/SceneApplication.java index 8d64705e2..373565342 100644 --- a/sdk/jme3-core/src/com/jme3/gde/core/scene/SceneApplication.java +++ b/sdk/jme3-core/src/com/jme3/gde/core/scene/SceneApplication.java @@ -161,17 +161,27 @@ public class SceneApplication extends Application implements LookupProvider, Loo public Component getMainPanel() { if (useCanvas) { - return ((JmeCanvasContext)getContext()).getCanvas(); + return ((JmeCanvasContext) getContext()).getCanvas(); } else { if (panel == null) { panel = ((AwtPanelsContext) getContext()).createPanel(PaintMode.Accelerated); - panel.attachTo(true, viewPort, overlayView, guiViewPort); ((AwtPanelsContext) getContext()).setInputSource(panel); + attachPanel(); } return panel; } } + private void attachPanel() { + enqueue(new Callable() { + + public Object call() throws Exception { + panel.attachTo(true, viewPort, overlayView, guiViewPort); + return null; + } + }); + } + public ViewPort getOverlayView() { return overlayView; }