From c018d0c9ad09f21fff6fc6a69ec725df7fd9bc3d Mon Sep 17 00:00:00 2001 From: "Denis.Zhdanov" Date: Thu, 31 Jan 2013 11:58:07 +0400 Subject: [PATCH] IDEA-99848 Gradle: Make JetGradle tool window correctly represent 'gradle project is not linked' state --- .../gradle/config/GradleToolWindowPanel.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/plugins/gradle/src/org/jetbrains/plugins/gradle/config/GradleToolWindowPanel.java b/plugins/gradle/src/org/jetbrains/plugins/gradle/config/GradleToolWindowPanel.java index eea42d9fadd4..7703d1adce96 100644 --- a/plugins/gradle/src/org/jetbrains/plugins/gradle/config/GradleToolWindowPanel.java +++ b/plugins/gradle/src/org/jetbrains/plugins/gradle/config/GradleToolWindowPanel.java @@ -6,6 +6,7 @@ import com.intellij.openapi.actionSystem.ActionToolbar; import com.intellij.openapi.components.ServiceManager; import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.SimpleToolWindowPanel; +import com.intellij.openapi.util.text.StringUtil; import com.intellij.ui.IdeBorderFactory; import com.intellij.ui.ScrollPaneFactory; import com.intellij.ui.SideBorder; @@ -80,7 +81,17 @@ public abstract class GradleToolWindowPanel extends SimpleToolWindowPanel { } } - @Override public void onLinkedProjectPathChange(@Nullable String oldPath, @Nullable String newPath) { refreshAll(); } + @Override public void onLinkedProjectPathChange(@Nullable String oldPath, @Nullable String newPath) { + if (StringUtil.isEmpty(newPath)) { + myLayout.show(myContent, NON_LINKED_CARD_NAME); + return; + } + if (StringUtil.isEmpty(oldPath) && !StringUtil.isEmpty(newPath)) { + myLayout.show(myContent, CONTENT_CARD_NAME); + } + refreshAll(); + } + @Override public void onPreferLocalGradleDistributionToWrapperChange(boolean preferLocalToWrapper) { refreshAll(); } @Override public void onGradleHomeChange(@Nullable String oldPath, @Nullable String newPath) { refreshAll(); } @Override public void onServiceDirectoryPathChange(@Nullable String oldPath, @Nullable String newPath) { refreshAll(); }