From b125ab24df6180284b86e61ea258fcb808670a17 Mon Sep 17 00:00:00 2001 From: "Egor.Ushakov" Date: Thu, 25 Jun 2015 16:20:45 +0300 Subject: [PATCH] IDEA-141464 Debugger popup dissappears when trying to hover mouse on "+" --- .../quick/common/AbstractValueHint.java | 24 +++++++++++++++++++ .../quick/common/ValueLookupManager.java | 3 --- 2 files changed, 24 insertions(+), 3 deletions(-) diff --git a/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/evaluate/quick/common/AbstractValueHint.java b/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/evaluate/quick/common/AbstractValueHint.java index 06b675f9615e..b0cd2ea0acfb 100644 --- a/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/evaluate/quick/common/AbstractValueHint.java +++ b/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/evaluate/quick/common/AbstractValueHint.java @@ -301,4 +301,28 @@ public abstract class AbstractValueHint { protected void showTreePopup(@NotNull DebuggerTreeCreator creator, @NotNull D descriptor) { DebuggerTreeWithHistoryPopup.showTreePopup(creator, descriptor, getEditor(), myPoint, getProject()); } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + + AbstractValueHint hint = (AbstractValueHint)o; + + if (!myProject.equals(hint.myProject)) return false; + if (!myEditor.equals(hint.myEditor)) return false; + if (myType != hint.myType) return false; + if (myCurrentRange != null ? !myCurrentRange.equals(hint.myCurrentRange) : hint.myCurrentRange != null) return false; + + return true; + } + + @Override + public int hashCode() { + int result = myProject.hashCode(); + result = 31 * result + myEditor.hashCode(); + result = 31 * result + myType.hashCode(); + result = 31 * result + (myCurrentRange != null ? myCurrentRange.hashCode() : 0); + return result; + } } diff --git a/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/evaluate/quick/common/ValueLookupManager.java b/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/evaluate/quick/common/ValueLookupManager.java index 2bde90428dd2..770295d4f0cc 100644 --- a/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/evaluate/quick/common/ValueLookupManager.java +++ b/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/evaluate/quick/common/ValueLookupManager.java @@ -94,9 +94,6 @@ public class ValueLookupManager extends EditorMouseAdapter implements EditorMous if (myRequest != null && !myRequest.isKeepHint(editor, point)) { hideHint(); } - else if (type == ValueHintType.MOUSE_OVER_HINT && myRequest != null && !myRequest.isHintHidden() && myRequest.isInsideCurrentRange(editor, point)) { - return; - } for (DebuggerSupport support : mySupports) { QuickEvaluateHandler handler = support.getQuickEvaluateHandler();