Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/WBWRenderer.java')
-rw-r--r--bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/WBWRenderer.java13
1 files changed, 13 insertions, 0 deletions
diff --git a/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/WBWRenderer.java b/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/WBWRenderer.java
index d5132ae8778..108b868c86d 100644
--- a/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/WBWRenderer.java
+++ b/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/WBWRenderer.java
@@ -746,6 +746,7 @@ public class WBWRenderer extends SWTPartRenderer {
shell.setMinimized(true);
shell.layout(true);
+ forceLayout(shell);
if (shellME.isVisible()) {
shell.open();
} else {
@@ -892,4 +893,16 @@ public class WBWRenderer extends SWTPartRenderer {
}
}
}
+
+ private static void forceLayout(Shell shell) {
+ int i = 0;
+ while(shell.isLayoutDeferred()) {
+ shell.setLayoutDeferred(false);
+ i++;
+ }
+ while(i > 0) {
+ shell.setLayoutDeferred(true);
+ i--;
+ }
+ }
}

Back to the top