From b148283a67991b44abb84d8c935e269307bd0fce Mon Sep 17 00:00:00 2001 From: Alexander Zolotov Date: Tue, 15 Oct 2013 20:14:59 +0400 Subject: [PATCH] Emmet: fix tests --- .../template/emmet/nodes/GenerationNode.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/xml/impl/src/com/intellij/codeInsight/template/emmet/nodes/GenerationNode.java b/xml/impl/src/com/intellij/codeInsight/template/emmet/nodes/GenerationNode.java index d48f9e263a03..3c8d40eb9e5b 100644 --- a/xml/impl/src/com/intellij/codeInsight/template/emmet/nodes/GenerationNode.java +++ b/xml/impl/src/com/intellij/codeInsight/template/emmet/nodes/GenerationNode.java @@ -28,6 +28,7 @@ import com.intellij.codeInsight.template.emmet.tokens.TemplateToken; import com.intellij.codeInsight.template.impl.TemplateImpl; import com.intellij.injected.editor.DocumentWindowImpl; import com.intellij.lang.xml.XMLLanguage; +import com.intellij.openapi.command.undo.UndoConstants; import com.intellij.openapi.editor.Document; import com.intellij.openapi.editor.Editor; import com.intellij.openapi.fileTypes.StdFileTypes; @@ -35,6 +36,7 @@ import com.intellij.openapi.project.Project; import com.intellij.openapi.util.Pair; import com.intellij.openapi.util.UserDataHolderBase; import com.intellij.openapi.util.text.StringUtil; +import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; import com.intellij.psi.PsiFileFactory; @@ -273,7 +275,6 @@ public class GenerationNode extends UserDataHolderBase { final XmlFile xmlFile = token.getFile(); PsiFileFactory fileFactory = PsiFileFactory.getInstance(xmlFile.getProject()); XmlFile dummyFile = (XmlFile)fileFactory.createFileFromText("dummy.xml", StdFileTypes.XML, xmlFile.getText()); - final XmlTag tag = dummyFile.getRootTag(); if (tag != null) { for (Pair pair : attr2value) { @@ -283,7 +284,13 @@ public class GenerationNode extends UserDataHolderBase { } XmlTag tag1 = hasChildren ? expandEmptyTagIfNeccessary(tag) : tag; setAttributeValues(tag1, attr2value); - token.setFile((XmlFile)tag1.getContainingFile()); + XmlFile physicalFile = (XmlFile)fileFactory.createFileFromText("dummy.xml", StdFileTypes.XML, tag1.getContainingFile().getText(), + LocalTimeCounter.currentTime(), true); + VirtualFile vFile = physicalFile.getVirtualFile(); + if (vFile != null) { + vFile.putUserData(UndoConstants.DONT_RECORD_UNDO, Boolean.TRUE); + } + token.setFile(physicalFile); } ZenCodingGenerator zenCodingGenerator = generator != null ? generator : XmlZenCodingGeneratorImpl.INSTANCE; template = zenCodingGenerator.generateTemplate(token, hasChildren, callback.getContext());