From 84582a99bfa38c249d131cd16daf1e62429c50e8 Mon Sep 17 00:00:00 2001 From: Dmitry Avdeev Date: Tue, 6 Aug 2013 16:18:16 +0400 Subject: [PATCH] showing hint on temporary injection --- .../src/com/intellij/codeInsight/hint/HintManagerImpl.java | 3 +++ .../plugins/intelliLang/inject/InjectLanguageAction.java | 6 +++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/platform/platform-impl/src/com/intellij/codeInsight/hint/HintManagerImpl.java b/platform/platform-impl/src/com/intellij/codeInsight/hint/HintManagerImpl.java index 52ad3df3abb5..c3be5108c4ae 100644 --- a/platform/platform-impl/src/com/intellij/codeInsight/hint/HintManagerImpl.java +++ b/platform/platform-impl/src/com/intellij/codeInsight/hint/HintManagerImpl.java @@ -684,6 +684,9 @@ public class HintManagerImpl extends HintManager implements Disposable { } public void showInformationHint(@NotNull Editor editor, @NotNull JComponent component, boolean showByBalloon) { + if (ApplicationManager.getApplication().isUnitTestMode()) { + return; + } LightweightHint hint = new LightweightHint(component); Point p = getHintPosition(hint, editor, ABOVE); showEditorHint(hint, editor, p, HIDE_BY_ANY_KEY | HIDE_BY_TEXT_CHANGE | HIDE_BY_SCROLLING, 0, false); diff --git a/plugins/IntelliLang/src/org/intellij/plugins/intelliLang/inject/InjectLanguageAction.java b/plugins/IntelliLang/src/org/intellij/plugins/intelliLang/inject/InjectLanguageAction.java index ea12ada745ee..3ab993cd5de0 100644 --- a/plugins/IntelliLang/src/org/intellij/plugins/intelliLang/inject/InjectLanguageAction.java +++ b/plugins/IntelliLang/src/org/intellij/plugins/intelliLang/inject/InjectLanguageAction.java @@ -16,6 +16,7 @@ package org.intellij.plugins.intelliLang.inject; import com.intellij.codeInsight.daemon.DaemonCodeAnalyzer; +import com.intellij.codeInsight.hint.HintManager; import com.intellij.codeInsight.intention.IntentionAction; import com.intellij.injected.editor.EditorWindow; import com.intellij.lang.Language; @@ -27,6 +28,7 @@ import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.popup.PopupChooserBuilder; import com.intellij.openapi.util.Pair; import com.intellij.openapi.util.TextRange; +import com.intellij.openapi.util.text.StringUtil; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; @@ -111,7 +113,9 @@ public class InjectLanguageAction implements IntentionAction { return; } } - TemporaryPlacesRegistry.getInstance(project).getLanguageInjectionSupport().addInjectionInPlace(language, host); + if (TemporaryPlacesRegistry.getInstance(project).getLanguageInjectionSupport().addInjectionInPlace(language, host)) { + HintManager.getInstance().showInformationHint(editor, StringUtil.escapeXml(language.getDisplayName()) + " was temporarily injected"); + } } finally { if (injectable.getLanguage() != null) { // no need for reference injection