/// <inheritdoc/> public ITrackingPoint Show(ITextView textView, AddInlineCommentTag tag) { Guard.ArgumentNotNull(tag, nameof(tag)); var lineAndtrackingPoint = GetLineAndTrackingPoint(textView, tag); var line = lineAndtrackingPoint.Item1; var trackingPoint = lineAndtrackingPoint.Item2; var options = new PeekSessionCreationOptions( textView, InlineCommentPeekRelationship.Instance.Name, trackingPoint, defaultHeight: 0); ExpandCollapsedRegions(textView, line.Extent); var session = peekBroker.TriggerPeekSession(options); var item = session.PeekableItems.OfType <InlineCommentPeekableItem>().FirstOrDefault(); if (item != null) { var placeholder = item.ViewModel.Thread.Comments.Last(); placeholder.CancelEdit.Take(1).Subscribe(_ => session.Dismiss()); } return(trackingPoint); }
/// <inheritdoc/> public ITrackingPoint Show(ITextView textView, DiffSide side, int lineNumber) { var lineAndtrackingPoint = GetLineAndTrackingPoint(textView, side, lineNumber); var line = lineAndtrackingPoint.Item1; var trackingPoint = lineAndtrackingPoint.Item2; var options = new PeekSessionCreationOptions( textView, relationship, trackingPoint, defaultHeight: 0); ExpandCollapsedRegions(textView, line.Extent); var session = peekBroker.TriggerPeekSession(options); var item = session.PeekableItems.OfType <IClosable>().FirstOrDefault(); item?.Closed.Take(1).Subscribe(_ => session.Dismiss()); return(trackingPoint); }
/// <inheritdoc/> public ITrackingPoint Show(ITextView textView, ShowInlineCommentTag tag) { Guard.ArgumentNotNull(textView, nameof(textView)); Guard.ArgumentNotNull(tag, nameof(tag)); var lineAndtrackingPoint = GetLineAndTrackingPoint(textView, tag); var line = lineAndtrackingPoint.Item1; var trackingPoint = lineAndtrackingPoint.Item2; var options = new PeekSessionCreationOptions( textView, InlineCommentPeekRelationship.Instance.Name, trackingPoint, defaultHeight: 0); ExpandCollapsedRegions(textView, line.Extent); peekBroker.TriggerPeekSession(options); return(trackingPoint); }
/// <inheritdoc/> public ITrackingPoint Show(ITextView textView, ShowInlineCommentTag tag) { Guard.ArgumentNotNull(textView, nameof(textView)); Guard.ArgumentNotNull(tag, nameof(tag)); var lineAndtrackingPoint = GetLineAndTrackingPoint(textView, tag); var line = lineAndtrackingPoint.Item1; var trackingPoint = lineAndtrackingPoint.Item2; var options = new PeekSessionCreationOptions( textView, InlineCommentPeekRelationship.Instance.Name, trackingPoint, defaultHeight: 0); ExpandCollapsedRegions(textView, line.Extent); var session = peekBroker.TriggerPeekSession(options); var item = session.PeekableItems.OfType<InlineCommentPeekableItem>().FirstOrDefault(); item?.ViewModel.Close.Take(1).Subscribe(_ => session.Dismiss()); return trackingPoint; }
private void HandlePeekHelp() { PeekSessionCreationOptions options = new PeekSessionCreationOptions(_textView, PeekHelpRelationship.Instance.Name); if (_textView.Roles.Contains(PredefinedTextViewRoles.EmbeddedPeekTextView)) { ITextView containingTextView; if (_textView.Properties.TryGetProperty("PeekContainingTextView", out containingTextView) && containingTextView != null) { IPeekSession session = _peekBroker.GetPeekSession(containingTextView); if (session != null) { _peekBroker.TriggerNestedPeekSession(options, session); } } } else { _peekBroker.TriggerPeekSession(options); } _telemetrySession.PostEvent("VS/PPT-PeekHelp/PeekF1CommandInvoked"); }
public IPeekSession TriggerPeekSession(PeekSessionCreationOptions options) { throw new NotImplementedException(); }
public void TriggerNestedPeekSession(PeekSessionCreationOptions options, IPeekSession containingSession) { throw new NotImplementedException(); }
public bool CanTriggerPeekSession(PeekSessionCreationOptions options, Predicate <string> isStandaloneFilePredicate) { throw new NotImplementedException(); }