diff --git a/package.json b/package.json index ea5a1fb8..f5b4dea9 100644 --- a/package.json +++ b/package.json @@ -37,15 +37,7 @@ "stats": "npm run --silent package -- --env namedChunks=true --profile --json > ./dist/stats.json && webpack-bundle-analyzer ./dist/stats.json ./dist" }, "activationEvents": [ - "workspaceContains:**", - "onView:cnblogs-authorize", - "onView:cnblogs-account", - "onView:cnblogs-post-list", - "onView:vscode-cnb-workspace", - "onCommand:vscode-cnb.workspace.code-open", - "onCommand:vscode-cnb.login.web", - "onCommand:vscode-cnb.logout", - "onCommand:vscode-cnb.ing-publish-select" + "onStartupFinished" ], "main": "./dist/extension.js", "contributes": { @@ -769,13 +761,13 @@ { "id": "cnblogs-authorize", "name": "登录/授权", - "when": "!vscode-cnb.isAuthed", + "when": "vscode-cnb.isUnauthorized", "visibility": "visible" }, { "id": "vscode-cnb-workspace", "name": "工作空间", - "when": "vscode-cnb.isAuthed", + "when": "!vscode-cnb.isUnauthorized", "visibility": "collapsed" }, { diff --git a/src/auth/auth-manager.ts b/src/auth/auth-manager.ts index 77755dfe..a9c45701 100644 --- a/src/auth/auth-manager.ts +++ b/src/auth/auth-manager.ts @@ -107,6 +107,8 @@ export namespace AuthManager { await execCmd('setContext', `${globalCtx.extName}.isAuthed`, isAuthed) + await execCmd('setContext', `${globalCtx.extName}.isUnauthorized`, !isAuthed) + if (!isAuthed) return await execCmd('setContext', `${globalCtx.extName}.user`, { diff --git a/src/extension.ts b/src/extension.ts index dfd8e8db..aae991d4 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -16,6 +16,8 @@ export async function activate(ctx: ExtensionContext) { // WRN: For old version compatibility, NEVER remove this line void LocalState.delSecret('user') + await AuthManager.updateAuthStatus() + setupExtCmd() setupExtTreeView() @@ -28,8 +30,6 @@ export async function activate(ctx: ExtensionContext) { window.registerUriHandler(extUriHandler) - await AuthManager.updateAuthStatus() - setupUi(LocalState.getExtCfg()) return { extendMarkdownIt }