From dfa80366c4061562896af3d9b5d2d6af0e542b78 Mon Sep 17 00:00:00 2001 From: Julia Beliaeva Date: Thu, 25 Feb 2016 21:26:56 +0300 Subject: [PATCH] [vcs-log] refresh is enabled only if there is data manager and log ui in context --- .../vcs/log/ui/actions/RefreshLogAction.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/platform/vcs-log/impl/src/com/intellij/vcs/log/ui/actions/RefreshLogAction.java b/platform/vcs-log/impl/src/com/intellij/vcs/log/ui/actions/RefreshLogAction.java index 6dfd213cd633..90d27af5f2ea 100644 --- a/platform/vcs-log/impl/src/com/intellij/vcs/log/ui/actions/RefreshLogAction.java +++ b/platform/vcs-log/impl/src/com/intellij/vcs/log/ui/actions/RefreshLogAction.java @@ -20,11 +20,13 @@ import com.intellij.ide.actions.RefreshAction; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.actionSystem.CommonDataKeys; import com.intellij.openapi.project.Project; +import com.intellij.vcs.log.VcsLogDataKeys; +import com.intellij.vcs.log.data.VcsLogDataManager; import com.intellij.vcs.log.impl.VcsLogManager; public class RefreshLogAction extends RefreshAction { public RefreshLogAction() { - super("Refresh", "Refresh", AllIcons.Actions.Refresh); + super("Refresh", "Re-read Commits From Disk for All VCS Roots and Rebuild Log", AllIcons.Actions.Refresh); } @Override @@ -35,6 +37,12 @@ public class RefreshLogAction extends RefreshAction { @Override public void update(AnActionEvent e) { - e.getPresentation().setEnabledAndVisible(e.getProject() != null); + Project project = e.getProject(); + if (project == null) { + e.getPresentation().setEnabledAndVisible(false); + } else { + VcsLogDataManager dataManager = VcsLogManager.getInstance(project).getDataManager(); + e.getPresentation().setEnabledAndVisible(dataManager != null && e.getData(VcsLogDataKeys.VCS_LOG_UI) != null); + } } }