mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
- cyclic dependency - vcs-impl from lang-impl. sorry
This commit is contained in:
+7
@@ -17,12 +17,15 @@
|
||||
package com.intellij.openapi.vcs.changes.patch;
|
||||
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.psi.PsiDirectory;
|
||||
import com.intellij.psi.PsiFile;
|
||||
import com.intellij.psi.search.FilenameIndex;
|
||||
import com.intellij.psi.search.GlobalSearchScope;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* @author yole
|
||||
*/
|
||||
@@ -54,4 +57,8 @@ public class PsiPatchBaseDirectoryDetector extends PatchBaseDirectoryDetector {
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public Collection<VirtualFile> findFiles(final String fileName) {
|
||||
return FilenameIndex.getVirtualFilesByName(myProject, fileName, GlobalSearchScope.projectScope(myProject));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -155,7 +155,7 @@ public class VcsQuickListPopupAction extends QuickSwitchSchemeAction implements
|
||||
}
|
||||
|
||||
// by current file
|
||||
final VirtualFile file = dataContext != null ? LangDataKeys.VIRTUAL_FILE.getData(dataContext) : null;
|
||||
final VirtualFile file = dataContext != null ? PlatformDataKeys.VIRTUAL_FILE.getData(dataContext) : null;
|
||||
if (file != null) {
|
||||
final AbstractVcs vscForFile = ProjectLevelVcsManager.getInstance(project).getVcsFor(file);
|
||||
if (vscForFile != null) {
|
||||
|
||||
+2
-2
@@ -73,8 +73,8 @@ public class ScheduleForAdditionAction extends AnAction implements DumbAware {
|
||||
if (dataContext == null) {
|
||||
return null;
|
||||
}
|
||||
final Project project = LangDataKeys.PROJECT.getData(dataContext);
|
||||
final VirtualFile file = project == null ? null : LangDataKeys.VIRTUAL_FILE.getData(dataContext);
|
||||
final Project project = PlatformDataKeys.PROJECT.getData(dataContext);
|
||||
final VirtualFile file = project == null ? null : PlatformDataKeys.VIRTUAL_FILE.getData(dataContext);
|
||||
if (file != null && FileStatusManager.getInstance(project).getStatus(file) == FileStatus.UNKNOWN) {
|
||||
return file;
|
||||
}
|
||||
|
||||
+2
-10
@@ -17,8 +17,6 @@ package com.intellij.openapi.vcs.changes.patch;
|
||||
|
||||
import com.intellij.openapi.actionSystem.*;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.diff.DiffRequestFactory;
|
||||
import com.intellij.openapi.diff.MergeRequest;
|
||||
import com.intellij.openapi.diff.impl.patch.FilePatch;
|
||||
import com.intellij.openapi.diff.impl.patch.PatchReader;
|
||||
import com.intellij.openapi.diff.impl.patch.PatchSyntaxException;
|
||||
@@ -45,21 +43,15 @@ import com.intellij.openapi.vcs.ZipperUpdater;
|
||||
import com.intellij.openapi.vcs.changes.Change;
|
||||
import com.intellij.openapi.vcs.changes.ChangeListManager;
|
||||
import com.intellij.openapi.vcs.changes.LocalChangeList;
|
||||
import com.intellij.openapi.vcs.changes.actions.ChangeDiffRequestPresentable;
|
||||
import com.intellij.openapi.vcs.changes.actions.DiffPresentationReturnValue;
|
||||
import com.intellij.openapi.vcs.changes.actions.DiffRequestPresentable;
|
||||
import com.intellij.openapi.vcs.changes.actions.ShowDiffAction;
|
||||
import com.intellij.openapi.vcs.changes.ui.*;
|
||||
import com.intellij.openapi.vfs.LocalFileSystem;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.psi.search.FilenameIndex;
|
||||
import com.intellij.psi.search.GlobalSearchScope;
|
||||
import com.intellij.psi.search.ProjectScope;
|
||||
import com.intellij.ui.DocumentAdapter;
|
||||
import com.intellij.ui.SimpleColoredComponent;
|
||||
import com.intellij.ui.SimpleTextAttributes;
|
||||
import com.intellij.util.Consumer;
|
||||
import com.intellij.util.Icons;
|
||||
import com.intellij.util.containers.Convertor;
|
||||
import com.intellij.util.containers.MultiMap;
|
||||
import org.jetbrains.annotations.NonNls;
|
||||
@@ -205,7 +197,6 @@ public class ApplyPatchDifferentiatedDialog extends DialogWrapper {
|
||||
final VirtualFile baseDir = myProject.getBaseDir();
|
||||
|
||||
final List<FilePatchInProgress> result = new ArrayList<FilePatchInProgress>(list.size());
|
||||
final GlobalSearchScope scope = ProjectScope.getProjectScope(myProject);
|
||||
final List<TextFilePatch> creations = new LinkedList<TextFilePatch>();
|
||||
final MultiMap<String, VirtualFile> foldersDecisions = new MultiMap<String, VirtualFile>() {
|
||||
@Override
|
||||
@@ -218,6 +209,7 @@ public class ApplyPatchDifferentiatedDialog extends DialogWrapper {
|
||||
}
|
||||
};
|
||||
|
||||
final PatchBaseDirectoryDetector directoryDetector = PatchBaseDirectoryDetector.getInstance(myProject);
|
||||
for (TextFilePatch patch : list) {
|
||||
if (patch.isNewFile() || (patch.getBeforeName() == null)) {
|
||||
creations.add(patch);
|
||||
@@ -226,7 +218,7 @@ public class ApplyPatchDifferentiatedDialog extends DialogWrapper {
|
||||
final String fileName = patch.getBeforeFileName();
|
||||
final Collection<VirtualFile> files = ApplicationManager.getApplication().runReadAction(new Computable<Collection<VirtualFile>>() {
|
||||
public Collection<VirtualFile> compute() {
|
||||
return FilenameIndex.getVirtualFilesByName(myProject, fileName, scope);
|
||||
return directoryDetector.findFiles(fileName);
|
||||
}
|
||||
});
|
||||
final Collection<VirtualFile> variants = filterVariants(patch, files);
|
||||
|
||||
+5
@@ -17,8 +17,11 @@ package com.intellij.openapi.vcs.changes.patch;
|
||||
|
||||
import com.intellij.openapi.components.ServiceManager;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
/**
|
||||
* @author yole
|
||||
*/
|
||||
@@ -30,6 +33,8 @@ public abstract class PatchBaseDirectoryDetector {
|
||||
@Nullable
|
||||
public abstract Result detectBaseDirectory(String name);
|
||||
|
||||
public abstract Collection<VirtualFile> findFiles(String fileName);
|
||||
|
||||
public static class Result {
|
||||
public String baseDir;
|
||||
public int stripDirs;
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
<orderEntry type="module" module-name="vcs-api" />
|
||||
<orderEntry type="module" module-name="platform-api" />
|
||||
<orderEntry type="module" module-name="platform-impl" />
|
||||
<orderEntry type="module" module-name="lang-impl" />
|
||||
</component>
|
||||
</module>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user