@@ -12,7 +12,7 @@ import { ICommandService } from '../../../../platform/commands/common/commands.j
1212import { ContextKeyExpr , ContextKeyExpression , IContextKeyService , RawContextKey } from '../../../../platform/contextkey/common/contextkey.js' ;
1313import { Disposable } from '../../../../base/common/lifecycle.js' ;
1414import { IUserDataSyncEnablementService } from '../../../../platform/userDataSync/common/userDataSync.js' ;
15- import { IExtensionDescription } from '../../../../platform/extensions/common/extensions.js' ;
15+ import { ExtensionIdentifier , IExtensionDescription } from '../../../../platform/extensions/common/extensions.js' ;
1616import { URI } from '../../../../base/common/uri.js' ;
1717import { joinPath } from '../../../../base/common/resources.js' ;
1818import { FileAccess } from '../../../../base/common/network.js' ;
@@ -34,6 +34,7 @@ import { checkGlobFileExists } from '../../../services/extensions/common/workspa
3434import { IWorkspaceContextService } from '../../../../platform/workspace/common/workspace.js' ;
3535import { CancellationTokenSource } from '../../../../base/common/cancellation.js' ;
3636import { DefaultIconPath } from '../../../services/extensionManagement/common/extensionManagement.js' ;
37+ import { IProductService } from '../../../../platform/product/common/productService.js' ;
3738
3839export const HasMultipleNewFileEntries = new RawContextKey < boolean > ( 'hasMultipleNewFileEntries' , false ) ;
3940
@@ -154,7 +155,8 @@ export class WalkthroughsService extends Disposable implements IWalkthroughsServ
154155 @IHostService private readonly hostService : IHostService ,
155156 @IViewsService private readonly viewsService : IViewsService ,
156157 @ITelemetryService private readonly telemetryService : ITelemetryService ,
157- @IWorkbenchAssignmentService private readonly tasExperimentService : IWorkbenchAssignmentService
158+ @IWorkbenchAssignmentService private readonly tasExperimentService : IWorkbenchAssignmentService ,
159+ @IProductService private readonly productService : IProductService
158160 ) {
159161 super ( ) ;
160162
@@ -228,6 +230,15 @@ export class WalkthroughsService extends Disposable implements IWalkthroughsServ
228230 } ) ;
229231
230232 this . _register ( this . extensionManagementService . onDidInstallExtensions ( ( result ) => {
233+
234+ if ( result . some ( e => ExtensionIdentifier . equals ( this . productService . gitHubEntitlement ?. extensionId , e . identifier . id ) && ! e ?. context ?. [ EXTENSION_INSTALL_SKIP_WALKTHROUGH_CONTEXT ] ) ) {
235+ result . forEach ( e => {
236+ this . sessionInstalledExtensions . add ( e . identifier . id . toLowerCase ( ) ) ;
237+ this . progressByEvent ( `extensionInstalled:${ e . identifier . id . toLowerCase ( ) } ` ) ;
238+ } ) ;
239+ return ;
240+ }
241+
231242 for ( const e of result ) {
232243 const skipWalkthrough = e ?. context ?. [ EXTENSION_INSTALL_SKIP_WALKTHROUGH_CONTEXT ] || e ?. context ?. [ EXTENSION_INSTALL_DEP_PACK_CONTEXT ] ;
233244 // If the window had last focus and the install didn't specify to skip the walkthrough
0 commit comments