extensions/markdown-language-features/src/preview/preview.ts/DynamicMarkdownPreview/update
class DynamicMarkdownPreview:	public update(newResource: vscode.Uri, scrollLocation?: StartingScrollLocation) {
		if (this._preview.isPreviewOf(newResource)) {
			switch (scrollLocation?.type) {
				case 'line':
					this._preview.scrollTo(scrollLocation.line);
					return;

				case 'fragment':
					// Workaround. For fragments, just reload the entire preview
					break;

				default:
					return;
			}
		} else if (!scrollLocation) {
			scrollLocation = new StartingScrollLine(0);
		}

		this._preview.dispose();
		this._preview = this._createPreview(newResource, scrollLocation);
	}