diff --git a/src/panels/ICHelperPanel.ts b/src/panels/ICHelperPanel.ts index a0731c3..e2906ca 100644 --- a/src/panels/ICHelperPanel.ts +++ b/src/panels/ICHelperPanel.ts @@ -350,6 +350,10 @@ export async function showICHelperPanel( // 退出登录 vscode.commands.executeCommand("ic-coder.logout"); break; + case "openICCoder": + // 跳转到 IC Coder 官网 + vscode.env.openExternal(vscode.Uri.parse("https://www.iccoder.com")); + break; case "openUserManual": // 打开用户手册 vscode.env.openExternal(vscode.Uri.parse("https://www.iccoder.com")); diff --git a/src/views/userInfoComponent.ts b/src/views/userInfoComponent.ts index 1943b52..3c699ea 100644 --- a/src/views/userInfoComponent.ts +++ b/src/views/userInfoComponent.ts @@ -14,13 +14,13 @@ export function getUserInfoComponentContent(): string {
-
+
-
加载中...
+
加载中...
@@ -103,6 +103,16 @@ export function getUserInfoComponentStyles(): string { align-items: center; justify-content: center; box-shadow: 0 2px 8px rgba(0, 122, 204, 0.3); + transition: all 0.2s ease; + } + + .user-avatar-small.clickable { + cursor: pointer; + } + + .user-avatar-small.clickable:hover { + transform: scale(1.1); + box-shadow: 0 4px 12px rgba(0, 122, 204, 0.5); } .user-avatar-small svg { @@ -122,6 +132,16 @@ export function getUserInfoComponentStyles(): string { font-size: 14px; font-weight: 600; color: var(--vscode-foreground); + transition: all 0.2s ease; + } + + .user-detail-name.clickable { + cursor: pointer; + } + + .user-detail-name.clickable:hover { + color: #007acc; + text-decoration: underline; } .tier-icon-inline { @@ -248,6 +268,12 @@ export function getUserInfoComponentScript(): string { vscode.postMessage({ command: 'logout' }); } + // 跳转到 IC Coder 官网 + function openICCoder() { + console.log("跳转到 IC Coder 官网"); + vscode.postMessage({ command: 'openICCoder' }); + } + // 关闭用户详情下拉面板 function closeUserDetailModal() { const dropdown = document.getElementById('userDetailDropdown'); @@ -317,6 +343,24 @@ export function getUserInfoComponentScript(): string { }); } + // 绑定头像点击事件 + const userAvatar = document.getElementById('userAvatarClickable'); + if (userAvatar) { + userAvatar.addEventListener('click', (e) => { + e.stopPropagation(); + openICCoder(); + }); + } + + // 绑定用户名点击事件 + const userName = document.getElementById('userDetailName'); + if (userName) { + userName.addEventListener('click', (e) => { + e.stopPropagation(); + openICCoder(); + }); + } + // 点击页面其他地方关闭下拉面板 document.addEventListener('click', (e) => { const dropdown = document.getElementById('userDetailDropdown');