public FrameListener(VisualStudioActiveDocumentTracker service, IVsWindowFrame frame) { _documentTracker = service; _documentTracker.AssertIsForeground(); this.Frame = frame; ((IVsWindowFrame2)frame).Advise(this, out _frameEventsCookie); if ( ErrorHandler.Succeeded( frame.GetProperty((int)__VSFPROPID.VSFPROPID_DocData, out var docData) ) ) { if (docData is IVsTextBuffer bufferAdapter) { _textBuffer = _documentTracker._editorAdaptersFactoryService.GetDocumentBuffer( bufferAdapter ); if ( _textBuffer != null && !_textBuffer.ContentType.IsOfType(ContentTypeNames.RoslynContentType) ) { _textBuffer.Changed += NonRoslynTextBuffer_Changed; } } } }
public VisualStudioDocumentTrackingServiceFactory(VisualStudioActiveDocumentTracker activeDocumentTracker) => _activeDocumentTracker = activeDocumentTracker;
public VisualStudioDocumentTrackingService(VisualStudioActiveDocumentTracker activeDocumentTracker, Workspace workspace) { _activeDocumentTracker = activeDocumentTracker; _workspace = workspace; }