Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimeon Andreev2017-12-14 14:51:27 +0000
committerSimeon Andreev2017-12-14 15:02:32 +0000
commitf04cfac91455c1a1d708851c5b29861ddfb54625 (patch)
tree9834298978f29ce432a733d5585b9210f703554a
parent03aaf5d2ff623dec5f790a09d9538a6ce2b1ac85 (diff)
downloadeclipse.platform.ui-f04cfac91455c1a1d708851c5b29861ddfb54625.tar.gz
eclipse.platform.ui-f04cfac91455c1a1d708851c5b29861ddfb54625.tar.xz
eclipse.platform.ui-f04cfac91455c1a1d708851c5b29861ddfb54625.zip
Bug 528720 - View toolbar painted over view when switching from editorI20171215-0215I20171215-0120I20171214-2000
When an editor tab and a view tab are in the same part stack, switching from the editor to the view can result in a toolbar painting artifact. Namely, the view toolbar is painted over the view client area. This can be observed if the part stack tab area is not long enough to hold the view toolbar. This is the case, since the toolbar is drawn within the view area, on top of the view. The view does not receive a layout update notification, due to switching from the editor. When switching from another view, StackRenderer.adjustTopRight will hide the toolbar of the view. This results in a layout update of the newly opened view. Since the editor has no toolbar, nothing is hidden and no layout update is queued. This change improves on the fix for Bug 461573. Instead of triggering a direct layout update, we request one later on. This later on includes the adjustment of the toolbar location, resulting in a correctly sized view. The view toolbar is then no longer painted over the view. Change-Id: If23c1ed2ab1fe8edc052d647dd89ebed1ed00a0a Signed-off-by: Simeon Andreev <simeon.danailov.andreev@gmail.com>
-rw-r--r--bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/StackRenderer.java4
1 files changed, 2 insertions, 2 deletions
diff --git a/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/StackRenderer.java b/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/StackRenderer.java
index 2f5f56f8080..209cdd3dc11 100644
--- a/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/StackRenderer.java
+++ b/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/StackRenderer.java
@@ -1298,9 +1298,9 @@ public class StackRenderer extends LazyStackRenderer implements IPreferenceChang
// Ensure that the newly selected control is correctly sized
if (tabItem.getControl() instanceof Composite) {
Composite ctiComp = (Composite) tabItem.getControl();
- // see bug 461573: call below is still needed to make view
+ // see bug 461573, 528720: call below is still needed to make view
// descriptions visible after unhiding the view with changed bounds
- ctiComp.layout(false, true);
+ ctiComp.requestLayout();
}
tabFolder.setSelection(tabItem);
ignoreTabSelChanges = false;

Back to the top