From 82dd4120c0be6712cb8d4d4e1a6895cdb0139442 Mon Sep 17 00:00:00 2001 From: Kirill Likhodedov Date: Tue, 21 Feb 2017 21:56:21 +0000 Subject: [PATCH] cleanup, lambdify, use proper invokeLater --- .../src/git4idea/vfs/GitVFSListener.java | 41 +++++++------------ 1 file changed, 15 insertions(+), 26 deletions(-) diff --git a/plugins/git4idea/src/git4idea/vfs/GitVFSListener.java b/plugins/git4idea/src/git4idea/vfs/GitVFSListener.java index 43496c312fd6..779d40be7f83 100644 --- a/plugins/git4idea/src/git4idea/vfs/GitVFSListener.java +++ b/plugins/git4idea/src/git4idea/vfs/GitVFSListener.java @@ -15,12 +15,14 @@ */ package git4idea.vfs; +import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.progress.ProgressIndicator; import com.intellij.openapi.progress.ProgressManager; import com.intellij.openapi.progress.Task; import com.intellij.openapi.project.Project; import com.intellij.openapi.util.Pair; import com.intellij.openapi.util.SystemInfo; +import com.intellij.openapi.util.io.FileUtil; import com.intellij.openapi.vcs.FilePath; import com.intellij.openapi.vcs.ObjectsConvertor; import com.intellij.openapi.vcs.VcsException; @@ -30,7 +32,6 @@ import com.intellij.openapi.vfs.VirtualFile; import com.intellij.openapi.vfs.VirtualFileEvent; import com.intellij.ui.AppUIUtil; import com.intellij.util.containers.ContainerUtil; -import com.intellij.util.ui.UIUtil; import com.intellij.vcsUtil.VcsFileUtil; import com.intellij.vcsUtil.VcsUtil; import git4idea.GitUtil; @@ -97,7 +98,7 @@ public class GitVFSListener extends VcsVFSListener { @Override protected void executeAdd(final List addedFiles, final Map copiedFiles) { // Filter added files before further processing - final Map> sortedFiles; + Map> sortedFiles; try { sortedFiles = GitUtil.sortFilesByGitRoot(addedFiles, true); } @@ -111,27 +112,18 @@ public class GitVFSListener extends VcsVFSListener { public void run(@NotNull ProgressIndicator pi) { for (Map.Entry> e : sortedFiles.entrySet()) { VirtualFile root = e.getKey(); - final List files = e.getValue(); + List files = e.getValue(); pi.setText(root.getPresentableUrl()); try { retainedFiles.addAll(myGit.untrackedFiles(myProject, root, files)); } - catch (final VcsException ex) { - UIUtil.invokeLaterIfNeeded(new Runnable() { - public void run() { - gitVcs().showMessages(ex.getMessage()); - } - }); + catch (VcsException ex) { + ApplicationManager.getApplication().invokeLater(() -> gitVcs().showMessages(ex.getMessage())); } } addedFiles.retainAll(retainedFiles); - AppUIUtil.invokeLaterIfProjectAlive(myProject, new Runnable() { - @Override - public void run() { - originalExecuteAdd(addedFiles, copiedFiles); - } - }); + AppUIUtil.invokeLaterIfProjectAlive(myProject, () -> originalExecuteAdd(addedFiles, copiedFiles)); } }); } @@ -188,13 +180,13 @@ public class GitVFSListener extends VcsVFSListener { HashSet filesToRefresh = new HashSet<>(); public void execute(@NotNull VirtualFile root, @NotNull List files) throws VcsException { - final File rootFile = new File(root.getPath()); GitFileUtils.delete(myProject, root, files, "--ignore-unmatch"); - if (myProject != null && !myProject.isDisposed()) { + if (!myProject.isDisposed()) { VcsFileUtil.markFilesDirty(myProject, files); } + File rootFile = new File(root.getPath()); for (FilePath p : files) { - for (File f = p.getIOFile(); f != null && !f.equals(rootFile); f = f.getParentFile()) { + for (File f = p.getIOFile(); f != null && !FileUtil.filesEqual(f, rootFile); f = f.getParentFile()) { filesToRefresh.add(f); } } @@ -259,9 +251,10 @@ public class GitVFSListener extends VcsVFSListener { return deletedFiles; } - private void performBackgroundOperation(@NotNull Collection files, @NotNull String operationTitle, - @NotNull final LongOperationPerRootExecutor executor) { - final Map> sortedFiles; + private void performBackgroundOperation(@NotNull Collection files, + @NotNull String operationTitle, + @NotNull LongOperationPerRootExecutor executor) { + Map> sortedFiles; try { sortedFiles = GitUtil.sortFilePathsByGitRoot(files, true); } @@ -277,11 +270,7 @@ public class GitVFSListener extends VcsVFSListener { executor.execute(e.getKey(), e.getValue()); } catch (final VcsException ex) { - UIUtil.invokeLaterIfNeeded(new Runnable() { - public void run() { - gitVcs().showMessages(ex.getMessage()); - } - }); + ApplicationManager.getApplication().invokeLater(() -> gitVcs().showMessages(ex.getMessage())); } } RefreshVFsSynchronously.refreshFiles(executor.getFilesToRefresh());