diff options
Diffstat (limited to 'platform/lang-impl/src/com/intellij/injected/editor/InjectedCaret.java')
-rw-r--r-- | platform/lang-impl/src/com/intellij/injected/editor/InjectedCaret.java | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/platform/lang-impl/src/com/intellij/injected/editor/InjectedCaret.java b/platform/lang-impl/src/com/intellij/injected/editor/InjectedCaret.java index e52fa66ccefc..ec958fdc557a 100644 --- a/platform/lang-impl/src/com/intellij/injected/editor/InjectedCaret.java +++ b/platform/lang-impl/src/com/intellij/injected/editor/InjectedCaret.java @@ -165,6 +165,12 @@ public class InjectedCaret implements Caret { } @Override + public void setSelection(int startOffset, int endOffset, boolean updateSystemSelection) { + TextRange hostRange = myEditorWindow.getDocument().injectedToHost(new ProperTextRange(startOffset, endOffset)); + myDelegate.setSelection(hostRange.getStartOffset(), hostRange.getEndOffset(), updateSystemSelection); + } + + @Override public void setSelection(int startOffset, @Nullable VisualPosition endPosition, int endOffset) { TextRange hostRange = myEditorWindow.getDocument().injectedToHost(new ProperTextRange(startOffset, endOffset)); myDelegate.setSelection(hostRange.getStartOffset(), endPosition, hostRange.getEndOffset()); @@ -177,6 +183,12 @@ public class InjectedCaret implements Caret { } @Override + public void setSelection(@Nullable VisualPosition startPosition, int startOffset, @Nullable VisualPosition endPosition, int endOffset, boolean updateSystemSelection) { + TextRange hostRange = myEditorWindow.getDocument().injectedToHost(new ProperTextRange(startOffset, endOffset)); + myDelegate.setSelection(startPosition, hostRange.getStartOffset(), endPosition, hostRange.getEndOffset(), updateSystemSelection); + } + + @Override public void removeSelection() { myDelegate.removeSelection(); } |