From a09593f8d5a3dc12b9df326412898a218510cf7e Mon Sep 17 00:00:00 2001 From: Olesya Smirnova Date: Sat, 26 Feb 2005 21:18:53 +0300 Subject: [PATCH] http://www.jetbrains.net/jira/browse/IDEADEV-12 fixed --- .../openapi/vcs/actions/VcsContextWrapper.java | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/source/com/intellij/openapi/vcs/actions/VcsContextWrapper.java b/source/com/intellij/openapi/vcs/actions/VcsContextWrapper.java index 27f5a4036378..d171e141ccd6 100644 --- a/source/com/intellij/openapi/vcs/actions/VcsContextWrapper.java +++ b/source/com/intellij/openapi/vcs/actions/VcsContextWrapper.java @@ -39,11 +39,16 @@ import com.intellij.openapi.project.Project; import com.intellij.openapi.vcs.FilePath; import com.intellij.openapi.vcs.FilePathImpl; import com.intellij.openapi.vcs.VcsDataConstants; +import com.intellij.openapi.vcs.ProjectLevelVcsManager; +import com.intellij.openapi.vcs.fileView.impl.FileViewPanel; import com.intellij.openapi.vcs.ui.Refreshable; import com.intellij.openapi.vfs.LocalFileSystem; import com.intellij.openapi.vfs.VirtualFile; +import com.intellij.openapi.wm.ex.ToolWindowEx; +import com.intellij.openapi.wm.ToolWindowManager; import com.intellij.psi.PsiElement; +import javax.swing.*; import java.io.File; import java.util.ArrayList; import java.util.Arrays; @@ -142,7 +147,18 @@ public class VcsContextWrapper implements VcsContext { } public Refreshable getRefreshableDialog() { - return ((Refreshable)myContext.getData(Refreshable.PANEL)); + final Object dataFromContext = myContext.getData(Refreshable.PANEL); + if (dataFromContext != null) { + return ((Refreshable)dataFromContext); + } + final Project project = getProject(); + if (project == null) return null; + + ToolWindowManager toolWindowManager = ToolWindowManager.getInstance(project); + + ToolWindowEx fileViewToolWindow =(ToolWindowEx) toolWindowManager.getToolWindow(ProjectLevelVcsManager.FILE_VIEW_TOOL_WINDOW_ID); + final JComponent component = fileViewToolWindow.getComponent(); + return ((FileViewPanel) component); } public FilePath[] getSelectedFilePaths() {