internal static void CheckTab(IBraceCompletionSession session, bool allowTab = true) { session.PreTab(out var handled); if (!handled) { session.PostTab(); } var caret = session.TextView.GetCaretPoint(session.SubjectBuffer).Value; if (allowTab) { Assert.Equal( session.ClosingPoint.GetPosition(session.SubjectBuffer.CurrentSnapshot), caret.Position ); } else { Assert.True( caret.Position < session.ClosingPoint.GetPosition(session.SubjectBuffer.CurrentSnapshot) ); } }
public void PostTab() { if (_postSession != null) { _guardedOperations.CallExtensionPoint(() => { _postSession.PostTab(); }); _postSession = null; } }
internal void CheckTab(IBraceCompletionSession session, bool allowTab = true) { session.PreTab(out var handled); if (!handled) { session.PostTab(); } var caret = session.TextView.GetCaretPoint(session.SubjectBuffer).Value; if (allowTab) { Assert.Equal(session.ClosingPoint.GetPosition(session.SubjectBuffer.CurrentSnapshot), caret.Position); } else { Assert.True(caret.Position < session.ClosingPoint.GetPosition(session.SubjectBuffer.CurrentSnapshot)); } }