diff options
Diffstat (limited to 'platform/testFramework/src/com/intellij/testFramework/TestDataProvider.java')
-rw-r--r-- | platform/testFramework/src/com/intellij/testFramework/TestDataProvider.java | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/platform/testFramework/src/com/intellij/testFramework/TestDataProvider.java b/platform/testFramework/src/com/intellij/testFramework/TestDataProvider.java index cc8376832e36..1ed87bbcb0fa 100644 --- a/platform/testFramework/src/com/intellij/testFramework/TestDataProvider.java +++ b/platform/testFramework/src/com/intellij/testFramework/TestDataProvider.java @@ -20,7 +20,6 @@ import com.intellij.openapi.actionSystem.DataProvider; import com.intellij.openapi.actionSystem.PlatformDataKeys; import com.intellij.openapi.editor.Editor; import com.intellij.openapi.editor.impl.EditorComponentImpl; -import com.intellij.openapi.fileEditor.FileEditorManager; import com.intellij.openapi.fileEditor.OpenFileDescriptor; import com.intellij.openapi.fileEditor.ex.FileEditorManagerEx; import com.intellij.openapi.fileEditor.impl.text.TextEditorProvider; @@ -50,18 +49,21 @@ public class TestDataProvider implements DataProvider { if (CommonDataKeys.PROJECT.is(dataId)) { return myProject; } - else if (CommonDataKeys.EDITOR.is(dataId) || OpenFileDescriptor.NAVIGATE_IN_EDITOR.is(dataId)) { - return FileEditorManager.getInstance(myProject).getSelectedTextEditor(); + FileEditorManagerEx manager = FileEditorManagerEx.getInstanceEx(myProject); + if (manager == null) { + return null; + } + if (CommonDataKeys.EDITOR.is(dataId) || OpenFileDescriptor.NAVIGATE_IN_EDITOR.is(dataId)) { + return manager.getSelectedTextEditor(); } else if (PlatformDataKeys.FILE_EDITOR.is(dataId)) { - Editor editor = FileEditorManager.getInstance(myProject).getSelectedTextEditor(); + Editor editor = manager.getSelectedTextEditor(); return editor == null ? null : TextEditorProvider.getInstance().getTextEditor(editor); } else { Editor editor = (Editor)getData(CommonDataKeys.EDITOR.getName()); if (editor != null) { - FileEditorManagerEx manager = FileEditorManagerEx.getInstanceEx(myProject); - Object managerData = manager.getData(dataId, editor, manager.getSelectedFiles()[0]); + Object managerData = manager.getData(dataId, editor, editor.getCaretModel().getCurrentCaret()); if (managerData != null) { return managerData; } |