mirror of
https://github.com/arduino/arduino-ide.git
synced 2025-05-04 12:08:41 +00:00

Co-authored-by: Mark Sujew <mark.sujew@typefox.io> Co-authored-by: Akos Kitta <a.kitta@arduino.cc> Signed-off-by: Akos Kitta <a.kitta@arduino.cc>
38 lines
1.0 KiB
TypeScript
38 lines
1.0 KiB
TypeScript
import { injectable, inject } from '@theia/core/shared/inversify';
|
|
import {
|
|
FrontendApplicationContribution,
|
|
FrontendApplication,
|
|
} from '@theia/core/lib/browser';
|
|
import { MainMenuManager } from '../common/main-menu-manager';
|
|
|
|
@injectable()
|
|
export class EditorMode implements FrontendApplicationContribution {
|
|
@inject(MainMenuManager)
|
|
protected readonly mainMenuManager: MainMenuManager;
|
|
|
|
protected app: FrontendApplication;
|
|
|
|
onStart(app: FrontendApplication): void {
|
|
this.app = app;
|
|
}
|
|
|
|
get compileForDebug(): boolean {
|
|
const value = window.localStorage.getItem(EditorMode.COMPILE_FOR_DEBUG_KEY);
|
|
return value === 'true';
|
|
}
|
|
|
|
async toggleCompileForDebug(): Promise<void> {
|
|
const oldState = this.compileForDebug;
|
|
const newState = !oldState;
|
|
window.localStorage.setItem(
|
|
EditorMode.COMPILE_FOR_DEBUG_KEY,
|
|
String(newState)
|
|
);
|
|
this.mainMenuManager.update();
|
|
}
|
|
}
|
|
|
|
export namespace EditorMode {
|
|
export const COMPILE_FOR_DEBUG_KEY = 'arduino-compile-for-debug';
|
|
}
|