From 6194fa7849a7c26195a12f52ec97b68596af617d Mon Sep 17 00:00:00 2001 From: "Vitaliy.Bibaev" Date: Tue, 4 Jul 2017 13:12:01 +0300 Subject: [PATCH] IDEA-158467 Do not get selected text if selection is not changed --- .../intellij/xdebugger/impl/frame/XVariablesViewBase.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/frame/XVariablesViewBase.java b/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/frame/XVariablesViewBase.java index f8bb0e8abf53..e7199db67600 100644 --- a/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/frame/XVariablesViewBase.java +++ b/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/frame/XVariablesViewBase.java @@ -205,13 +205,15 @@ public abstract class XVariablesViewBase extends XDebugView { @Override public void selectionChanged(final SelectionEvent e) { - if (!Registry.is("debugger.valueTooltipAutoShowOnSelection") || myEditor.getCaretModel().getCaretCount() > 1) { + if (!Registry.is("debugger.valueTooltipAutoShowOnSelection") || + myEditor.getCaretModel().getCaretCount() > 1 || + e.getNewRanges().length != 1 || + !Objects.equals(e.getNewRange(), e.getOldRange())) { return; } final String text = myEditor.getDocument().getText(e.getNewRange()).trim(); - final boolean isSelectionChanged = e.getNewRanges().length == 1 && !Objects.equals(e.getNewRange(), e.getOldRange()); - if (isSelectionChanged && !IGNORED_TEXTS.contains(text) && SIDE_EFFECT_PRODUCERS.stream().noneMatch(text::contains)) { + if (IGNORED_TEXTS.contains(text) && SIDE_EFFECT_PRODUCERS.stream().noneMatch(text::contains)) { final XDebugSession session = getSession(myTreePanel.getTree()); if (session == null) return; XDebuggerEvaluator evaluator = myStackFrame.getEvaluator();