public void TwoViews_NoScroll() { // Reported in #2673. Create(Enumerable.Range(0, 26).Select(x => ((char)('a' + x)).ToString()).ToArray()); VimHost.FocusedTextView = _textView; _vimBuffer.ProcessNotation("1G"); Assert.Equal(0, _textView.GetFirstVisibleLineNumber()); var visibleLines = _textView.TextViewLines.Count; var altTextView = TextEditorFactoryService.CreateTextView(_textBuffer); var altVimBuffer = CreateVimBuffer(CreateVimBufferData(altTextView)); try { VimHost.FocusedTextView = altTextView; altVimBuffer.ProcessNotation("13G"); Assert.True(altTextView.GetFirstVisibleLineNumber() > visibleLines); var visualSpan = VimUtil.CreateVisualSpanCharacter(_textBuffer.GetLineSpan(13, 1)); var visualSelection = VisualSelection.CreateForward(visualSpan); _vimBuffer.VimTextBuffer.SwitchMode( ModeKind.VisualCharacter, ModeArgument.NewInitialVisualSelection(visualSelection, FSharpOption <SnapshotPoint> .None)); Assert.Equal(0, _textView.GetFirstVisibleLineNumber()); } finally { altVimBuffer.Close(); } }
public void InitialVisualSelection_Character() { Create("dogs", "cats"); var visualSpan = VimUtil.CreateVisualSpanCharacter(_textBuffer.GetSpan(1, 2)); var visualSelection = VisualSelection.CreateForVisualSpan(visualSpan); _buffer.SwitchMode(ModeKind.VisualCharacter, ModeArgument.NewInitialVisualSelection(visualSelection)); _context.RunAll(); Assert.AreEqual(visualSelection, VisualSelection.CreateForSelection(_textView, VisualKind.Character)); }