public void AugmentPeekSession(IPeekSession session, IList <IPeekableItem> peekableItems) { if (session == null) { throw new ArgumentNullException("session"); } if (peekableItems == null) { throw new ArgumentNullException("peekableItems"); } if (session.RelationshipName == PredefinedPeekRelationships.Definitions.Name) { ITextDocument document; SnapshotPoint?triggerPoint = session.GetTriggerPoint(this._buffer.CurrentSnapshot); if (triggerPoint.HasValue && this.TryGetTextDocument(_buffer, out document)) { if (!session.TextView.TextBuffer.Properties.ContainsProperty(typeof(ITextDocument))) { session.TextView.TextBuffer.Properties.AddProperty(typeof(ITextDocument), document); } peekableItems.Add(new PeekableItem(EditFilter.GetLocations(session.TextView, EditFilter.GetLocationOptions.Definitions), _factory)); } } }