From e5ef821bd0bec57bb5bb264a44e6e76b4cb3523d Mon Sep 17 00:00:00 2001 From: Kirill Kalishev Date: Mon, 21 Jun 2010 14:04:58 +0400 Subject: [PATCH] extra repainting fixed --- .../openapi/wm/impl/ToolWindowsPane.java | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/platform/platform-impl/src/com/intellij/openapi/wm/impl/ToolWindowsPane.java b/platform/platform-impl/src/com/intellij/openapi/wm/impl/ToolWindowsPane.java index da646455f814..b67c4d38e43f 100644 --- a/platform/platform-impl/src/com/intellij/openapi/wm/impl/ToolWindowsPane.java +++ b/platform/platform-impl/src/com/intellij/openapi/wm/impl/ToolWindowsPane.java @@ -396,11 +396,14 @@ final class ToolWindowsPane extends JLayeredPane { } private void updateToolStripesVisibility(){ + boolean oldVisible = myLeftStripe.isVisible(); + final boolean showButtons = !UISettings.getInstance().HIDE_TOOL_STRIPES; - myLeftStripe.setVisible(showButtons || myStripesOverlayed); - myRightStripe.setVisible(showButtons || myStripesOverlayed); - myTopStripe.setVisible(showButtons || myStripesOverlayed); - myBottomStripe.setVisible(showButtons || myStripesOverlayed); + boolean visible = showButtons || myStripesOverlayed; + myLeftStripe.setVisible(visible); + myRightStripe.setVisible(visible); + myTopStripe.setVisible(visible); + myBottomStripe.setVisible(visible); boolean overlayed = !showButtons && myStripesOverlayed; @@ -409,8 +412,11 @@ final class ToolWindowsPane extends JLayeredPane { myTopStripe.setOverlayed(overlayed); myBottomStripe.setOverlayed(overlayed); - revalidate(); - repaint(); + + if (oldVisible != visible) { + revalidate(); + repaint(); + } } Stripe getStripeFor(String id) {