From 67f1289e181d05dc3e160b3661d91d2c528e130a Mon Sep 17 00:00:00 2001 From: "Egor.Ushakov" Date: Tue, 14 Oct 2014 19:19:55 +0400 Subject: [PATCH] do not set breakpoints if clicked to the right of the gutter separator line --- .../impl/breakpoints/XLineBreakpointManager.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/breakpoints/XLineBreakpointManager.java b/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/breakpoints/XLineBreakpointManager.java index 0c49b9c8035d..acf896a8d357 100644 --- a/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/breakpoints/XLineBreakpointManager.java +++ b/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/breakpoints/XLineBreakpointManager.java @@ -276,7 +276,7 @@ public class XLineBreakpointManager { || mouseEvent.isMetaDown() || mouseEvent.isControlDown() || mouseEvent.getButton() != MouseEvent.BUTTON1 || MarkupEditorFilterFactory.createIsDiffFilter().avaliableIn(editor) - || (e.getArea() != EditorMouseEventArea.LINE_MARKERS_AREA && e.getArea() != EditorMouseEventArea.FOLDING_OUTLINE_AREA) + || !isInsideGutter(e, editor) || ConsoleViewUtil.isConsoleViewEditor(editor) || !isFromMyProject(editor) || (editor.getSelectionModel().hasSelection() && myDragDetected) @@ -318,6 +318,13 @@ public class XLineBreakpointManager { } }); } + + private boolean isInsideGutter(EditorMouseEvent e, Editor editor) { + if (e.getArea() != EditorMouseEventArea.LINE_MARKERS_AREA && e.getArea() != EditorMouseEventArea.FOLDING_OUTLINE_AREA) { + return false; + } + return e.getMouseEvent().getX() <= ((EditorEx)editor).getGutterComponentEx().getWhitespaceSeparatorOffset(); + } } private boolean isFromMyProject(@NotNull Editor editor) {