From 387ecdf8dd08d52d48962e95d0b4b65748878bf5 Mon Sep 17 00:00:00 2001 From: Konstantin Bulenkov Date: Fri, 20 May 2011 19:11:45 +0400 Subject: [PATCH] copy/paste problems fix WI-6376, IDEA-68278, IDEA-68956, IDEA-66122, IDEA-62935, IDEA-67697 --- .../openapi/diff/impl/util/DiffPanelOutterComponent.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/platform/platform-impl/src/com/intellij/openapi/diff/impl/util/DiffPanelOutterComponent.java b/platform/platform-impl/src/com/intellij/openapi/diff/impl/util/DiffPanelOutterComponent.java index 44b18108c4a5..4fa5a8cb78ed 100644 --- a/platform/platform-impl/src/com/intellij/openapi/diff/impl/util/DiffPanelOutterComponent.java +++ b/platform/platform-impl/src/com/intellij/openapi/diff/impl/util/DiffPanelOutterComponent.java @@ -21,6 +21,7 @@ import com.intellij.openapi.diff.DiffRequest; import com.intellij.openapi.diff.DiffToolbar; import com.intellij.openapi.diff.ex.DiffStatusBar; import com.intellij.openapi.diff.impl.DiffToolbarComponent; +import com.intellij.openapi.editor.Editor; import com.intellij.openapi.editor.colors.EditorColorsScheme; import javax.swing.*; @@ -104,8 +105,11 @@ public class DiffPanelOutterComponent extends JPanel implements DataProvider { return null; } } - FocusDiffSide side = (FocusDiffSide)myDataProvider.getData(FocusDiffSide.DATA_KEY.getName()); - if (side != null) return side.getEditor(); + final FocusDiffSide side = (FocusDiffSide)myDataProvider.getData(FocusDiffSide.DATA_KEY.getName()); + if (side != null) { + final Editor editor = side.getEditor(); + return editor != null && editor.getComponent().hasFocus() ? editor : null; + } } return myDataProvider.getData(dataId); }