Save source viewColumn for previews, fixes #74008

This commit is contained in:
masliu
2019-07-04 21:37:28 -04:00
parent 28988230cd
commit 47f9ed5d22
3 changed files with 20 additions and 3 deletions

View File

@@ -101,11 +101,13 @@ export class MarkdownPreview extends Disposable {
const resource = vscode.Uri.parse(state.resource);
const locked = state.locked;
const line = state.line;
const sourceViewColumn = state.sourceViewColumn;
const preview = new MarkdownPreview(
webview,
resource,
locked,
sourceViewColumn,
contentProvider,
previewConfigurations,
logger,
@@ -124,6 +126,7 @@ export class MarkdownPreview extends Disposable {
public static create(
resource: vscode.Uri,
previewColumn: vscode.ViewColumn,
resourceColumn: vscode.ViewColumn,
locked: boolean,
contentProvider: MarkdownContentProvider,
previewConfigurations: MarkdownPreviewConfigurationManager,
@@ -143,6 +146,7 @@ export class MarkdownPreview extends Disposable {
webview,
resource,
locked,
resourceColumn,
contentProvider,
previewConfigurations,
logger,
@@ -154,6 +158,7 @@ export class MarkdownPreview extends Disposable {
webview: vscode.WebviewPanel,
resource: vscode.Uri,
locked: boolean,
private readonly _sourceViewColumn: vscode.ViewColumn,
private readonly _contentProvider: MarkdownContentProvider,
private readonly _previewConfigurations: MarkdownPreviewConfigurationManager,
private readonly _logger: Logger,
@@ -248,11 +253,16 @@ export class MarkdownPreview extends Disposable {
return this._resource;
}
public get sourceViewColumn(): vscode.ViewColumn {
return this._sourceViewColumn;
}
public get state() {
return {
resource: this.resource.toString(),
locked: this._locked,
line: this.line,
sourceViewColumn: this.sourceViewColumn,
imageInfo: this.imageInfo
};
}

View File

@@ -65,6 +65,10 @@ export class MarkdownPreviewManager extends Disposable implements vscode.Webview
return this._activePreview && this._activePreview.resource;
}
public get activePreviewSourceViewColumn() {
return this._activePreview && this._activePreview.sourceViewColumn;
}
public toggleLock() {
const preview = this._activePreview;
if (preview) {
@@ -110,6 +114,7 @@ export class MarkdownPreviewManager extends Disposable implements vscode.Webview
const preview = MarkdownPreview.create(
resource,
previewSettings.previewColumn,
previewSettings.resourceColumn,
previewSettings.locked,
this._contentProvider,
this._previewConfigurations,