mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
Add tray menu item for creating new application window
Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
This commit is contained in:
parent
9cab46c872
commit
663d5bc9f1
@ -0,0 +1,39 @@
|
|||||||
|
/**
|
||||||
|
* Copyright (c) OpenLens Authors. All rights reserved.
|
||||||
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
||||||
|
*/
|
||||||
|
import { getInjectable } from "@ogre-tools/injectable";
|
||||||
|
import { computed } from "mobx";
|
||||||
|
import { trayMenuItemInjectionToken } from "../../../tray/tray-menu-item/tray-menu-item-injection-token";
|
||||||
|
import createApplicationWindowInjectable from "./create-application-window.injectable";
|
||||||
|
import getRandomIdInjectable from "../../../../common/utils/get-random-id.injectable";
|
||||||
|
|
||||||
|
const openNewApplicationWindowTrayMenuItemInjectable = getInjectable({
|
||||||
|
id: "open-new-application-window-tray-menu-item",
|
||||||
|
|
||||||
|
instantiate: (di) => {
|
||||||
|
const getRandomId = di.inject(getRandomIdInjectable);
|
||||||
|
const createApplicationWindow = di.inject(createApplicationWindowInjectable);
|
||||||
|
|
||||||
|
return {
|
||||||
|
id: "open-new-application-window",
|
||||||
|
parentId: null,
|
||||||
|
orderNumber: 1,
|
||||||
|
enabled: computed(() => true),
|
||||||
|
visible: computed(() => true),
|
||||||
|
label: computed(() => "Open new window"),
|
||||||
|
|
||||||
|
click: async () => {
|
||||||
|
const id = getRandomId();
|
||||||
|
|
||||||
|
const window = createApplicationWindow(id);
|
||||||
|
|
||||||
|
await window.start();
|
||||||
|
},
|
||||||
|
};
|
||||||
|
},
|
||||||
|
|
||||||
|
injectionToken: trayMenuItemInjectionToken,
|
||||||
|
});
|
||||||
|
|
||||||
|
export default openNewApplicationWindowTrayMenuItemInjectable;
|
||||||
Loading…
Reference in New Issue
Block a user