don't track last unchanged content for non-perforce vcs now
authorpeter <peter@jetbrains.com>
Tue, 24 Jan 2012 13:29:26 +0000 (14:29 +0100)
committerpeter <peter@jetbrains.com>
Tue, 24 Jan 2012 13:30:29 +0000 (14:30 +0100)
platform/vcs-api/src/com/intellij/openapi/vcs/AbstractVcs.java
platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ChangeListManagerImpl.java

index f982d78ad00a4dd8dda76eef01645da8fc5d3848..6419660c4b535b1b035f749e9ba97dfecff59f78 100644 (file)
@@ -243,6 +243,10 @@ public abstract class AbstractVcs<ComList extends CommittedChangeList> extends S
     return true;
   }
 
+  public boolean needsLastUnchangedContent() {
+    return false;
+  }
+
   public static boolean fileInVcsByFileStatus(final Project project, final FilePath path) {
     final VirtualFile virtualFile = path.getVirtualFile();
     if (virtualFile != null) {
index 6d2c63326af61599d38ae017c81b902888f23e2a..a1e02e7995769bcb3baf9a31aec2cc4811b5f817 100644 (file)
@@ -450,7 +450,9 @@ public class ChangeListManagerImpl extends ChangeListManagerEx implements Projec
       });
 
       for (VcsDirtyScope scope : scopes) {
-        updateLastUnchangedContents(scope);
+        if (scope.getVcs().needsLastUnchangedContent()) {
+          updateLastUnchangedContents(scope);
+        }
       }
 
       myChangesViewManager.scheduleRefresh();
@@ -644,7 +646,7 @@ public class ChangeListManagerImpl extends ChangeListManagerEx implements Projec
     for (VcsDirectoryMapping mapping : vcsManager.getDirectoryMappings()) {
       final AbstractVcs vcs = vcsManager.findVcsByName(mapping.getVcs());
       final VirtualFile file = LocalFileSystem.getInstance().findFileByPath(mapping.getDirectory());
-      if (vcs != null && file != null) {
+      if (vcs != null && file != null && vcs.needsLastUnchangedContent()) {
         if (indicator != null) {
           indicator.setText(mapping.getDirectory());
         }