From: Maxim.Mossienko Date: Sat, 13 Mar 2010 14:09:51 +0000 (+0300) Subject: faster reformat for javascript when document == psifile content X-Git-Tag: 94.557~1 X-Git-Url: https://git.jetbrains.org/?p=idea%2Fcommunity.git;a=commitdiff_plain;h=137cbc661e52bc4bb9a06d06b4d74428341be863 faster reformat for javascript when document == psifile content --- diff --git a/platform/lang-impl/src/com/intellij/psi/formatter/FormattingDocumentModelImpl.java b/platform/lang-impl/src/com/intellij/psi/formatter/FormattingDocumentModelImpl.java index 84d0cf06351e..2afe6c2464ee 100644 --- a/platform/lang-impl/src/com/intellij/psi/formatter/FormattingDocumentModelImpl.java +++ b/platform/lang-impl/src/com/intellij/psi/formatter/FormattingDocumentModelImpl.java @@ -26,6 +26,7 @@ import com.intellij.psi.PsiDocumentManager; import com.intellij.psi.PsiFile; import com.intellij.psi.impl.PsiDocumentManagerImpl; import com.intellij.psi.impl.PsiToDocumentSynchronizer; +import org.jetbrains.annotations.NotNull; public class FormattingDocumentModelImpl implements FormattingDocumentModel{ @@ -56,7 +57,7 @@ public class FormattingDocumentModelImpl implements FormattingDocumentModel{ } - private static Document getDocumentToBeUsedFor(final PsiFile file) { + public static Document getDocumentToBeUsedFor(final PsiFile file) { final Project project = file.getProject(); final Document document = PsiDocumentManager.getInstance(project).getDocument(file); if (document == null) return null; @@ -91,4 +92,11 @@ public class FormattingDocumentModelImpl implements FormattingDocumentModel{ public PsiFile getFile() { return myFile; } + + public static boolean canUseDocumentModel(@NotNull Document document,@NotNull PsiFile file) { + PsiDocumentManager psiDocumentManager = PsiDocumentManager.getInstance(file.getProject()); + return !psiDocumentManager.isUncommited(document) && + !psiDocumentManager.isDocumentBlockedByPsi(document) && + file.getText().equals(document.getText()); + } }