Skip to content

Commit b5d275c

Browse files
committed
feat: add open logo folder menu
1 parent 9cb41c0 commit b5d275c

File tree

4 files changed

+29
-5
lines changed

4 files changed

+29
-5
lines changed
Lines changed: 24 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,28 @@
11
import { Autowired } from '@opensumi/di'
2-
import { Domain, MaybePromise } from '@opensumi/ide-core-common'
3-
import { ClientAppContribution, IClientApp } from '@opensumi/ide-core-browser'
2+
import { CommandContribution, CommandRegistry, Domain, MaybePromise } from '@opensumi/ide-core-common'
3+
import { ClientAppContribution, electronEnv } from '@opensumi/ide-core-browser'
44
import { IMenuRegistry, MenuId, MenuContribution } from "@opensumi/ide-core-browser/lib/menu/next";
55
import { localize } from "@opensumi/ide-core-common/lib/localize";
66
import { IWorkspaceService } from '@opensumi/ide-workspace';
77
import { IAppMenuService } from '../common';
8+
import { IElectronMainUIService } from '@opensumi/ide-core-common/lib/electron';
89

9-
@Domain(ClientAppContribution, MenuContribution)
10+
const OPEN_LOGO_DIR_COMMAND_ID = {
11+
id: 'codefuse-ide.openLogDir',
12+
label: localize('codefuse-ide.openLogDir'),
13+
}
14+
15+
@Domain(ClientAppContribution, MenuContribution, CommandContribution)
1016
export class LocalMenuContribution implements MenuContribution, ClientAppContribution {
1117
@Autowired(IWorkspaceService)
1218
workspaceService: IWorkspaceService;
1319

1420
@Autowired(IAppMenuService)
1521
menuService: IAppMenuService;
1622

23+
@Autowired(IElectronMainUIService)
24+
private electronMainUIService: IElectronMainUIService;
25+
1726
initialize(): MaybePromise<void> {
1827
// this.renderAppMenu();
1928
}
@@ -23,11 +32,23 @@ export class LocalMenuContribution implements MenuContribution, ClientAppContrib
2332
await this.menuService.renderRecentWorkspaces(workspaces);
2433
}
2534

35+
registerCommands(registry: CommandRegistry) {
36+
registry.registerCommand(OPEN_LOGO_DIR_COMMAND_ID, {
37+
execute: () => {
38+
this.electronMainUIService.revealInFinder(electronEnv.metadata.environment.logRoot);
39+
},
40+
});
41+
}
42+
2643
registerMenus(menuRegistry: IMenuRegistry) {
2744
menuRegistry.registerMenuItem(MenuId.MenubarAppMenu, {
2845
submenu: MenuId.SettingsIconMenu,
2946
label: localize('common.preferences'),
3047
group: '2_preference',
3148
});
49+
50+
menuRegistry.registerMenuItem(MenuId.MenubarHelpMenu, {
51+
command: OPEN_LOGO_DIR_COMMAND_ID,
52+
});
3253
}
3354
}

src/core/electron-main/window/windows-manager.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ export class WindowsManager {
6060
environment: {
6161
dataFolderName: this.environmentService.dataFolderName,
6262
isDev: this.environmentService.isDev,
63+
logRoot: this.environmentService.logRoot,
6364
},
6465
},
6566
{

src/i18n/en-US.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ export const localizationBundle = {
4444
'ai.model.noConfig': 'Please configure the AI model service for a better experience',
4545
'ai.model.go': 'Go',
4646

47-
'autoUpdater.checkForUpdates': 'Check for Updates...'
47+
'autoUpdater.checkForUpdates': 'Check for Updates...',
48+
'codefuse-ide.openLogDir': 'Open Log Folder',
4849
},
4950
};

src/i18n/zh-CN.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ export const localizationBundle = {
4444
'ai.model.noConfig': '为了更好的体验,请先配置 AI 模型服务',
4545
'ai.model.go': '前往',
4646

47-
'autoUpdater.checkForUpdates': '检查更新'
47+
'autoUpdater.checkForUpdates': '检查更新',
48+
'codefuse-ide.openLogDir': '打开日志文件夹',
4849
},
4950
};

0 commit comments

Comments
 (0)