@launchmenu/applet-window-manager
Version:
An applet to manage LMs window
107 lines • 8.58 kB
JavaScript
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.settings = exports.settingsBrowserWindow = exports.minSize = exports.info = void 0;
const react_1 = __importDefault(require("react"));
const core_1 = require("@launchmenu/core");
const createCoordinateSetting_1 = require("./createCoordinateSetting");
const PositionInputContent_1 = require("./position/PositionInputContent");
const model_react_1 = require("model-react");
const SizeInputContent_1 = require("./size/SizeInputContent");
const electron_1 = require("electron");
const createDebuggerVisibilitySetting_1 = require("./visibility/createDebuggerVisibilitySetting");
exports.info = {
name: "Window manager",
description: "An applet to manage LaunchMenu's window",
version: "0.0.0",
icon: "window",
};
exports.minSize = {
width: 600,
height: 400,
};
/** The browser window to be used by the settings UI */
exports.settingsBrowserWindow = new model_react_1.Field(null);
/**
* The settings of the window manager
*/
exports.settings = core_1.createSettings({
version: "0.0.0",
settings: () => {
const initSize = { width: 700, height: 450 };
const screen = electron_1.remote.screen.getPrimaryDisplay().bounds;
return core_1.createSettingsFolder({
...exports.info,
children: {
position: createCoordinateSetting_1.createCoordinateSetting({
name: "Window position",
init: {
x: (screen.width - initSize.width) / 2,
y: (screen.height - initSize.height) / 2,
},
allowNegative: true,
actionBindings: field => [
core_1.scrollableContentHandler.createBinding(react_1.default.createElement(PositionInputContent_1.PositionInputContent, { browserWindowField: exports.settingsBrowserWindow, field: field })),
],
}),
size: createCoordinateSetting_1.createCoordinateSetting({
name: "Window size",
init: initSize,
min: exports.minSize,
actionBindings: field => [
core_1.scrollableContentHandler.createBinding(react_1.default.createElement(SizeInputContent_1.SizeInputContent, { browserWindowField: exports.settingsBrowserWindow, field: field })),
],
}),
windowShadow: core_1.createBooleanSetting({
name: "Window shadow",
init: core_1.isPlatform("mac") ? false : true,
}),
visibility: core_1.createSettingsFolder({
name: "Visibility",
children: {
hideOnBlur: core_1.createBooleanSetting({
name: "Hide when losing focus",
init: true,
}),
showDebugger: createDebuggerVisibilitySetting_1.createDebuggerVisibilitySetting(),
},
}),
controls: core_1.createSettingsFolder({
name: "Controls",
children: {
open: core_1.createGlobalKeyPatternSetting({
name: "Open LaunchMenu",
init: new core_1.KeyPattern(!core_1.isPlatform("mac") ||
electron_1.remote.systemPreferences.isTrustedAccessibilityClient(false)
? "meta+space"
: "meta+l"),
}),
exit: core_1.createKeyPatternSetting({
name: "Exit LaunchMenu",
init: new core_1.KeyPattern("ctrl+q"),
}),
exitState: core_1.createKeyPatternSetting({
name: "Exit LaunchMenu keep state",
init: new core_1.KeyPattern("ctrl+shift+q"),
}),
restart: core_1.createKeyPatternSetting({
name: "Restart LaunchMenu",
init: new core_1.KeyPattern([]),
}),
shutdown: core_1.createKeyPatternSetting({
name: "Shutdown LaunchMenu",
init: new core_1.KeyPattern([]),
}),
},
}),
automaticStartup: core_1.createBooleanSetting({
name: "Automatic startup",
init: true,
}),
},
});
},
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZ3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvc2V0dGluZ3MudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLGtEQUEwQjtBQUMxQiwyQ0FTMEI7QUFDMUIsdUVBQWtFO0FBQ2xFLDBFQUFxRTtBQUNyRSw2Q0FBa0M7QUFDbEMsOERBQXlEO0FBQ3pELHVDQUErQztBQUMvQyxrR0FBNkY7QUFFaEYsUUFBQSxJQUFJLEdBQUc7SUFDaEIsSUFBSSxFQUFFLGdCQUFnQjtJQUN0QixXQUFXLEVBQUUseUNBQXlDO0lBQ3RELE9BQU8sRUFBRSxPQUFPO0lBQ2hCLElBQUksRUFBRSxRQUFRO0NBQ1IsQ0FBQztBQUVFLFFBQUEsT0FBTyxHQUFHO0lBQ25CLEtBQUssRUFBRSxHQUFHO0lBQ1YsTUFBTSxFQUFFLEdBQUc7Q0FDZCxDQUFDO0FBRUYsdURBQXVEO0FBQzFDLFFBQUEscUJBQXFCLEdBQUcsSUFBSSxtQkFBSyxDQUFDLElBQTRCLENBQUMsQ0FBQztBQUU3RTs7R0FFRztBQUNVLFFBQUEsUUFBUSxHQUFHLHFCQUFjLENBQUM7SUFDbkMsT0FBTyxFQUFFLE9BQU87SUFDaEIsUUFBUSxFQUFFLEdBQUcsRUFBRTtRQUNYLE1BQU0sUUFBUSxHQUFHLEVBQUMsS0FBSyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFDLENBQUM7UUFDM0MsTUFBTSxNQUFNLEdBQUcsaUJBQU0sQ0FBQyxNQUFNLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxNQUFNLENBQUM7UUFFeEQsT0FBTywyQkFBb0IsQ0FBQztZQUN4QixHQUFHLFlBQUk7WUFDUCxRQUFRLEVBQUU7Z0JBQ04sUUFBUSxFQUFFLGlEQUF1QixDQUFDO29CQUM5QixJQUFJLEVBQUUsaUJBQWlCO29CQUN2QixJQUFJLEVBQUU7d0JBQ0YsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQzt3QkFD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