Skip to content

Commit

Permalink
Fix Remote Picker interactions (microsoft#178108)
Browse files Browse the repository at this point in the history
* Fix Remote Picker interactions

* Dispise quickpick
  • Loading branch information
bhavyaus authored Mar 23, 2023
1 parent c2bf622 commit 861e35e
Showing 1 changed file with 7 additions and 3 deletions.
10 changes: 7 additions & 3 deletions src/vs/workbench/contrib/remote/browser/remoteStartEntry.ts
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,8 @@ export class RemoteStartEntry extends Disposable implements IWorkbenchContributi
@IContextKeyService private readonly contextKeyService: IContextKeyService) {

super();
registerConfiguration(this.productService.quality !== 'stable');
const enable = this.extensionGalleryService.isEnabled() && (this.productService.remoteExtensionTips ?? false) && this.productService.quality !== 'stable';
registerConfiguration(enable);
const remoteExtensionTips = { ...this.productService.remoteExtensionTips, ...this.productService.virtualWorkspaceExtensionTips };
this.remoteExtensionMetadata = Object.values(remoteExtensionTips).filter(value => value.showInStartEntry === true).map(value => {
return { id: value.extensionId, installed: false, friendlyName: value.friendlyName, remoteCommands: [], isPlatformCompatible: false, dependencies: [] };
Expand Down Expand Up @@ -241,10 +242,12 @@ export class RemoteStartEntry extends Disposable implements IWorkbenchContributi
const selectedItems = quickPick.selectedItems;
if (selectedItems.length === 1) {
const selectedItem = selectedItems[0].id!;
quickPick.busy = true;
const remoteExtension = this.remoteExtensionMetadata.find(value => ExtensionIdentifier.equals(value.id, selectedItem));
if (remoteExtension) {

quickPick.items = [];
quickPick.busy = true;

quickPick.placeholder = nls.localize('remote.startActions.installingExtension', 'Installing extension... ');

const galleryExtension = (await this.extensionGalleryService.getExtensions([{ id: selectedItem }], CancellationToken.None))[0];
Expand All @@ -263,14 +266,15 @@ export class RemoteStartEntry extends Disposable implements IWorkbenchContributi
this.commandService.executeCommand(command);

this.telemetryService.publicLog2<RemoteStartActionEvent, RemoteStartActionClassification>('remoteStartList.ActionExecuted', { command: command, remoteExtensionId: selectedItem });
quickPick.busy = false;
}
else {
this.commandService.executeCommand(selectedItem);
this.telemetryService.publicLog2<RemoteStartActionEvent, RemoteStartActionClassification>('remoteStartList.ActionExecuted', { command: selectedItem });
}
quickPick.dispose();
}
});
quickPick.onDidHide(() => quickPick.dispose());
quickPick.show();
}
}
Expand Down

0 comments on commit 861e35e

Please sign in to comment.