Skip to content

Commit 17ef98d

Browse files
Fix null disposal bug in all samples (microsoft#124)
Description of changes Fixes a bug where all sample extensions (except for notepad and weather-webview) were failing to properly dispose of webview panel resources when closed.
1 parent 6e35a86 commit 17ef98d

File tree

12 files changed

+16
-16
lines changed

12 files changed

+16
-16
lines changed

default/component-gallery/src/panels/ComponentGalleryPanel.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ export class ComponentGalleryPanel {
3939

4040
// Set an event listener to listen for when the panel is disposed (i.e. when the user closes
4141
// the panel or when the panel is closed programmatically)
42-
this._panel.onDidDispose(this.dispose, null, this._disposables);
42+
this._panel.onDidDispose(() => this.dispose(), null, this._disposables);
4343

4444
// Set the HTML content for the webview panel
4545
this._panel.webview.html = this._getWebviewContent(this._panel.webview, extensionUri);

default/hello-world/src/panels/HelloWorldPanel.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ export class HelloWorldPanel {
2727

2828
// Set an event listener to listen for when the panel is disposed (i.e. when the user closes
2929
// the panel or when the panel is closed programmatically)
30-
this._panel.onDidDispose(this.dispose, null, this._disposables);
30+
this._panel.onDidDispose(() => this.dispose(), null, this._disposables);
3131

3232
// Set the HTML content for the webview panel
3333
this._panel.webview.html = this._getWebviewContent(this._panel.webview, extensionUri);

frameworks/hello-world-angular/package-lock.json

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

frameworks/hello-world-angular/src/panels/HelloWorldPanel.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ export class HelloWorldPanel {
2727

2828
// Set an event listener to listen for when the panel is disposed (i.e. when the user closes
2929
// the panel or when the panel is closed programmatically)
30-
this._panel.onDidDispose(this.dispose, null, this._disposables);
30+
this._panel.onDidDispose(() => this.dispose(), null, this._disposables);
3131

3232
// Set the HTML content for the webview panel
3333
this._panel.webview.html = this._getWebviewContent(this._panel.webview, extensionUri);

frameworks/hello-world-react-cra/package-lock.json

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

frameworks/hello-world-react-cra/src/panels/HelloWorldPanel.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ export class HelloWorldPanel {
2727

2828
// Set an event listener to listen for when the panel is disposed (i.e. when the user closes
2929
// the panel or when the panel is closed programmatically)
30-
this._panel.onDidDispose(this.dispose, null, this._disposables);
30+
this._panel.onDidDispose(() => this.dispose(), null, this._disposables);
3131

3232
// Set the HTML content for the webview panel
3333
this._panel.webview.html = this._getWebviewContent(this._panel.webview, extensionUri);

frameworks/hello-world-react-vite/package-lock.json

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

frameworks/hello-world-react-vite/src/panels/HelloWorldPanel.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ export class HelloWorldPanel {
2727

2828
// Set an event listener to listen for when the panel is disposed (i.e. when the user closes
2929
// the panel or when the panel is closed programmatically)
30-
this._panel.onDidDispose(this.dispose, null, this._disposables);
30+
this._panel.onDidDispose(() => this.dispose(), null, this._disposables);
3131

3232
// Set the HTML content for the webview panel
3333
this._panel.webview.html = this._getWebviewContent(this._panel.webview, extensionUri);

frameworks/hello-world-solidjs/src/panels/HelloWorldPanel.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ export class HelloWorldPanel {
2727

2828
// Set an event listener to listen for when the panel is disposed (i.e. when the user closes
2929
// the panel or when the panel is closed programmatically)
30-
this._panel.onDidDispose(this.dispose, null, this._disposables);
30+
this._panel.onDidDispose(() => this.dispose(), null, this._disposables);
3131

3232
// Set the HTML content for the webview panel
3333
this._panel.webview.html = this._getWebviewContent(this._panel.webview, extensionUri);

frameworks/hello-world-svelte/src/panels/HelloWorldPanel.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ export class HelloWorldPanel {
2727

2828
// Set an event listener to listen for when the panel is disposed (i.e. when the user closes
2929
// the panel or when the panel is closed programmatically)
30-
this._panel.onDidDispose(this.dispose, null, this._disposables);
30+
this._panel.onDidDispose(() => this.dispose(), null, this._disposables);
3131

3232
// Set the HTML content for the webview panel
3333
this._panel.webview.html = this._getWebviewContent(this._panel.webview, extensionUri);

frameworks/hello-world-vue/package-lock.json

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

frameworks/hello-world-vue/src/panels/HelloWorldPanel.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ export class HelloWorldPanel {
2727

2828
// Set an event listener to listen for when the panel is disposed (i.e. when the user closes
2929
// the panel or when the panel is closed programmatically)
30-
this._panel.onDidDispose(this.dispose, null, this._disposables);
30+
this._panel.onDidDispose(() => this.dispose(), null, this._disposables);
3131

3232
// Set the HTML content for the webview panel
3333
this._panel.webview.html = this._getWebviewContent(this._panel.webview, extensionUri);

0 commit comments

Comments
 (0)