diff --git a/java/java-impl/src/com/intellij/refactoring/introduceVariable/IntroduceVariableBase.java b/java/java-impl/src/com/intellij/refactoring/introduceVariable/IntroduceVariableBase.java index 5889d901bc4f..b1ec6f8ba8bf 100644 --- a/java/java-impl/src/com/intellij/refactoring/introduceVariable/IntroduceVariableBase.java +++ b/java/java-impl/src/com/intellij/refactoring/introduceVariable/IntroduceVariableBase.java @@ -866,7 +866,16 @@ public abstract class IntroduceVariableBase extends IntroduceHandlerBase { String title = occurrencesInfo.myChainMethodName != null && occurrences.length == 1 ? JavaRefactoringBundle.message("replace.lambda.chain.detected") : RefactoringBundle.message("replace.multiple.occurrences.found"); - OccurrencesChooser.simpleChooser(editor).showChooser(callback, occurrencesMap, title); + new OccurrencesChooser(editor) { + @Override + protected TextRange getOccurrenceRange(PsiExpression occurrence) { + RangeMarker rangeMarker = occurrence.getUserData(ElementToWorkOn.TEXT_RANGE); + if (rangeMarker != null) { + return new TextRange(rangeMarker.getStartOffset(), rangeMarker.getEndOffset()); + } + return occurrence.getTextRange(); + } + }.showChooser(callback, occurrencesMap, title); } return callback.wasSucceed; }