11import { 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'
44import { IMenuRegistry , MenuId , MenuContribution } from "@opensumi/ide-core-browser/lib/menu/next" ;
55import { localize } from "@opensumi/ide-core-common/lib/localize" ;
66import { IWorkspaceService } from '@opensumi/ide-workspace' ;
77import { 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 )
1016export 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}
0 commit comments