From 5f15f18d1409ec77ea894d90edfff03f5aea6bb3 Mon Sep 17 00:00:00 2001 From: Dmitry Batkovich Date: Wed, 16 Mar 2016 13:12:47 +0300 Subject: [PATCH] resource bundle editor: allow to delete xml properties from ResourceBundlePropertiesUpdateManager (IDEA-153044) --- .../editor/ResourceBundlePropertiesUpdateManager.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/plugins/properties/src/com/intellij/lang/properties/editor/ResourceBundlePropertiesUpdateManager.java b/plugins/properties/src/com/intellij/lang/properties/editor/ResourceBundlePropertiesUpdateManager.java index d216128cc619..86f1d5a5c907 100644 --- a/plugins/properties/src/com/intellij/lang/properties/editor/ResourceBundlePropertiesUpdateManager.java +++ b/plugins/properties/src/com/intellij/lang/properties/editor/ResourceBundlePropertiesUpdateManager.java @@ -19,10 +19,13 @@ import com.intellij.lang.properties.IProperty; import com.intellij.lang.properties.ResourceBundle; import com.intellij.lang.properties.psi.PropertiesFile; import com.intellij.lang.properties.psi.Property; +import com.intellij.lang.properties.xml.XmlProperty; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.util.Comparing; import com.intellij.openapi.util.Pair; +import com.intellij.pom.PomTarget; +import com.intellij.pom.PomTargetPsiElement; import com.intellij.psi.PsiComment; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiWhiteSpace; @@ -110,7 +113,13 @@ public class ResourceBundlePropertiesUpdateManager { } } if (property != null) { - property.getPsiElement().delete(); + PsiElement anElement = property.getPsiElement(); + if (anElement instanceof PomTargetPsiElement) { + final PomTarget xmlProperty = ((PomTargetPsiElement)anElement).getTarget(); + LOG.assertTrue(xmlProperty instanceof XmlProperty); + anElement = ((XmlProperty)xmlProperty).getNavigationElement(); + } + anElement.delete(); } }