From e74b321e79f92074e4b0763c4546d5fc7b0d9efe Mon Sep 17 00:00:00 2001 From: Kirill Likhodedov Date: Sat, 9 Feb 2013 13:22:16 +0400 Subject: [PATCH] [diff] Stop "Go to source" on click on local version in the diff dialog. IDEA-100782 and maybe IDEA-99363. It just confuses users. --- .../openapi/diff/impl/DiffSideView.java | 75 ------------------- 1 file changed, 75 deletions(-) diff --git a/platform/platform-impl/src/com/intellij/openapi/diff/impl/DiffSideView.java b/platform/platform-impl/src/com/intellij/openapi/diff/impl/DiffSideView.java index 26ea37f5e798..8577f1a80543 100644 --- a/platform/platform-impl/src/com/intellij/openapi/diff/impl/DiffSideView.java +++ b/platform/platform-impl/src/com/intellij/openapi/diff/impl/DiffSideView.java @@ -25,10 +25,6 @@ import com.intellij.openapi.diff.impl.util.LabeledEditor; import com.intellij.openapi.diff.impl.util.SyncScrollSupport; import com.intellij.openapi.editor.Editor; import com.intellij.openapi.editor.colors.EditorColors; -import com.intellij.openapi.editor.event.EditorMouseAdapter; -import com.intellij.openapi.editor.event.EditorMouseEvent; -import com.intellij.openapi.editor.event.EditorMouseEventArea; -import com.intellij.openapi.editor.event.EditorMouseMotionAdapter; import com.intellij.openapi.editor.ex.EditorEx; import com.intellij.openapi.editor.highlighter.EditorHighlighter; import com.intellij.openapi.fileEditor.FileEditor; @@ -42,10 +38,8 @@ import org.jetbrains.annotations.Nullable; import javax.swing.*; import javax.swing.border.Border; -import java.awt.*; import java.awt.event.FocusAdapter; import java.awt.event.FocusEvent; -import java.awt.event.MouseEvent; public class DiffSideView { private final JComponent MOCK_COMPONENT = new JPanel(); @@ -100,7 +94,6 @@ public class DiffSideView { editor.getScrollingModel().scrollHorizontally(0); insertComponent(editor.getComponent()); applyHighlighter(); - setMouseListeners(source); MyEditorFocusListener.install(this); state.restore(); @@ -129,11 +122,6 @@ public class DiffSideView { myPanel.updateTitle(myTitle); } - private void setMouseListeners(EditorSource source) { - DiffContent content = source.getContent(); - MouseLineNumberListener.install(content, source, myContainer); - } - public void beSlave() { myIsMaster = false; myLineMarker.hide(); @@ -149,69 +137,6 @@ public class DiffSideView { return content.getOpenFileDescriptor(editor.getCaretModel().getOffset()); } - private static class MouseLineNumberListener { - private static final Cursor HAND__CURSOR = Cursor.getPredefinedCursor(Cursor.HAND_CURSOR); - private final Editor myEditor; - private final DiffSidesContainer myContainer; - private final DiffContent myContent; - private final Project myProject; - - private final EditorMouseAdapter myMouseListener = new EditorMouseAdapter() { - public void mouseReleased(EditorMouseEvent e) { - if (e.getMouseEvent().getButton() != MouseEvent.BUTTON1) { - return; - } - if (!isInMyArea(e)) return; - OpenFileDescriptor descriptor = getOpenFileDescriptor(e); - if (descriptor == null) return; - myContainer.showSource(descriptor); - } - }; - - private OpenFileDescriptor getOpenFileDescriptor(EditorMouseEvent e) { - int offset = myEditor.logicalPositionToOffset(myEditor.xyToLogicalPosition(e.getMouseEvent().getPoint())); - return myContent.getOpenFileDescriptor(offset); - } - - private boolean isInMyArea(EditorMouseEvent e) { - return e.getArea() == EditorMouseEventArea.LINE_NUMBERS_AREA; - } - - private final EditorMouseMotionAdapter myMouseMotionListener = new EditorMouseMotionAdapter() { - public void mouseMoved(EditorMouseEvent e) { - Editor editor = e.getEditor(); - if (editor.getProject() != null && editor.getProject() != myProject && myProject != null/*???*/) return; - if (!isInMyArea(e)) return; - Cursor cursor = getOpenFileDescriptor(e) != null ? HAND__CURSOR : Cursor.getDefaultCursor(); - e.getMouseEvent().getComponent().setCursor(cursor); - myEditor.getContentComponent().setCursor(cursor); - } - }; - - public MouseLineNumberListener(DiffContent content, Editor editor, DiffSidesContainer container, Project project) { - myEditor = editor; - myContainer = container; - myContent = content; - myProject = project; - } - - public static void install(DiffContent content, EditorSource source, DiffSidesContainer container) { - final Editor editor = source.getEditor(); - Project project = container.getProject(); - if (project == null) return; - final MouseLineNumberListener listener = new MouseLineNumberListener(content, editor, container, project); - editor.addEditorMouseListener(listener.myMouseListener); - editor.addEditorMouseMotionListener(listener.myMouseMotionListener); - source.addDisposable(new Disposable() { - public void dispose() { - editor.removeEditorMouseListener(listener.myMouseListener); - editor.removeEditorMouseMotionListener(listener.myMouseMotionListener); - } - }); - } - - } - private static class MyEditorFocusListener extends FocusAdapter { private final DiffSideView mySideView;