fix ant completion tests

This commit is contained in:
Eugene Zhuravlev
2016-06-22 12:25:56 +02:00
parent 69149ec5d3
commit 55807652ca
2 changed files with 13 additions and 2 deletions
@@ -23,6 +23,7 @@ import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
import com.intellij.openapi.ui.FixedSizeButton;
import com.intellij.openapi.ui.Splitter;
import com.intellij.openapi.ui.TextFieldWithBrowseButton;
import com.intellij.openapi.util.Condition;
import com.intellij.openapi.util.io.FileUtil;
import com.intellij.openapi.util.text.CharFilter;
import com.intellij.openapi.util.text.StringUtil;
@@ -370,6 +371,14 @@ public class GuiUtils {
}
}
public static void invokeLaterIfNeeded(@NotNull Runnable runnable, @NotNull ModalityState modalityState, @NotNull Condition expired) {
if (ApplicationManager.getApplication().isDispatchThread()) {
runnable.run();
} else {
ApplicationManager.getApplication().invokeLater(runnable, modalityState, expired);
}
}
public static JTextField createUndoableTextField() {
return new JBTextField();
}
@@ -20,6 +20,7 @@ import com.intellij.lang.ant.dom.AntDomAntlib;
import com.intellij.lang.ant.dom.AntDomElement;
import com.intellij.lang.ant.dom.AntDomProject;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.application.ModalityState;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.PsiFile;
@@ -27,6 +28,7 @@ import com.intellij.psi.PsiManager;
import com.intellij.psi.impl.PsiModificationTrackerImpl;
import com.intellij.psi.xml.XmlFile;
import com.intellij.psi.xml.XmlTag;
import com.intellij.ui.GuiUtils;
import com.intellij.util.xml.ConvertContext;
import com.intellij.util.xml.DomElement;
import com.intellij.util.xml.DomFileElement;
@@ -40,10 +42,10 @@ public class AntSupport {
public static void markFileAsAntFile(final VirtualFile file, final Project project, final boolean value) {
if (file.isValid() && ForcedAntFileAttribute.isAntFile(file) != value) {
ForcedAntFileAttribute.forceAntFile(file, value);
ApplicationManager.getApplication().invokeLater(() -> {
GuiUtils.invokeLaterIfNeeded(() -> {
((PsiModificationTrackerImpl)PsiManager.getInstance(project).getModificationTracker()).incCounter();
restartDaemon(project);
}, project.getDisposed());
}, ModalityState.defaultModalityState(), project.getDisposed());
}
}