From 3e6562272e7f92d528ddbfadbd8caf15eb637682 Mon Sep 17 00:00:00 2001 From: Nikolay Korolev Date: Mon, 21 Jan 2019 14:04:35 +0300 Subject: [PATCH] RUBY-22991 hintsInRootElementArea checks if a root element is a document --- .../codeInsight/hints/ParameterHintsPass.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/platform/lang-impl/src/com/intellij/codeInsight/hints/ParameterHintsPass.java b/platform/lang-impl/src/com/intellij/codeInsight/hints/ParameterHintsPass.java index f68bffb99cc7..782d11cec295 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/hints/ParameterHintsPass.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/hints/ParameterHintsPass.java @@ -150,14 +150,21 @@ public class ParameterHintsPass extends EditorBoundHighlightingPass { int elementStart = range.getStartOffset(); int elementEnd = range.getEndOffset(); - return manager.getParameterHintsInRange(myEditor, elementStart + 1, elementEnd - 1); + // Adding hints on the borders is allowed only in case root element is a document + // See: canShowHintsAtOffset + if (myDocument.getTextLength() != range.getLength()) { + ++elementStart; + --elementEnd; + } + + return manager.getParameterHintsInRange(myEditor, elementStart, elementEnd); } /** * Adding hints on the borders of root element (at startOffset or endOffset) * is allowed only in the case when root element is a document * - * @return true iff a given offset can be used for hint rendering + * @return true if a given offset can be used for hint rendering */ private boolean canShowHintsAtOffset(int offset) { TextRange rootRange = myRootElement.getTextRange();