@@ -113,7 +113,7 @@ export class RemoteStatusIndicator extends Disposable implements IWorkbenchContr
113
113
114
114
private loggedInvalidGroupNames : { [ group : string ] : boolean } = Object . create ( null ) ;
115
115
private readonly remoteExtensionMetadata : RemoteExtensionMetadata [ ] ;
116
- private _isInitialized : boolean = false ;
116
+ private remoteMetadataInitialized : boolean = false ;
117
117
constructor (
118
118
@IStatusbarService private readonly statusbarService : IStatusbarService ,
119
119
@IBrowserWorkbenchEnvironmentService private readonly environmentService : IBrowserWorkbenchEnvironmentService ,
@@ -167,7 +167,6 @@ export class RemoteStatusIndicator extends Disposable implements IWorkbenchContr
167
167
168
168
this . updateWhenInstalledExtensionsRegistered ( ) ;
169
169
this . updateRemoteStatusIndicator ( ) ;
170
- this . initializeRemoteMetadata ( ) ;
171
170
}
172
171
173
172
private registerActions ( ) : void {
@@ -314,7 +313,7 @@ export class RemoteStatusIndicator extends Disposable implements IWorkbenchContr
314
313
315
314
private async initializeRemoteMetadata ( ) : Promise < void > {
316
315
317
- if ( this . _isInitialized ) {
316
+ if ( this . remoteMetadataInitialized ) {
318
317
return ;
319
318
}
320
319
@@ -340,7 +339,7 @@ export class RemoteStatusIndicator extends Disposable implements IWorkbenchContr
340
339
this . remoteExtensionMetadata [ i ] . installed = ( await this . extensionManagementService . getInstalled ( ) ) . find ( value => ExtensionIdentifier . equals ( value . identifier . id , extensionId ) ) ? true : false ;
341
340
}
342
341
343
- this . _isInitialized = true ;
342
+ this . remoteMetadataInitialized = true ;
344
343
}
345
344
346
345
private updateVirtualWorkspaceLocation ( ) {
@@ -367,6 +366,7 @@ export class RemoteStatusIndicator extends Disposable implements IWorkbenchContr
367
366
}
368
367
369
368
this . updateRemoteStatusIndicator ( ) ;
369
+ this . initializeRemoteMetadata ( ) ;
370
370
}
371
371
372
372
private setConnectionState ( newState : 'disconnected' | 'connected' | 'reconnecting' ) : void {
@@ -760,7 +760,7 @@ export class RemoteStatusIndicator extends Disposable implements IWorkbenchContr
760
760
items . pop ( ) ; // remove the separator again
761
761
}
762
762
763
- if ( this . extensionGalleryService . isEnabled ( ) ) {
763
+ if ( this . extensionGalleryService . isEnabled ( ) && this . remoteMetadataInitialized ) {
764
764
765
765
const notInstalledItems : QuickPickItem [ ] = [ ] ;
766
766
for ( const metadata of this . remoteExtensionMetadata ) {
@@ -798,7 +798,6 @@ export class RemoteStatusIndicator extends Disposable implements IWorkbenchContr
798
798
quickPick . items = [ ] ;
799
799
quickPick . busy = true ;
800
800
quickPick . placeholder = nls . localize ( 'remote.startActions.installingExtension' , 'Installing extension... ' ) ;
801
- quickPick . hide ( ) ;
802
801
await this . installAndRunStartCommand ( remoteExtension ) ;
803
802
}
804
803
else {
0 commit comments