Skip to content

Commit

Permalink
Added Peer Roku device menu options (#172)
Browse files Browse the repository at this point in the history
  • Loading branch information
lvcabral authored Feb 1, 2025
1 parent 3313b03 commit 6410c46
Show file tree
Hide file tree
Showing 4 changed files with 48 additions and 2 deletions.
17 changes: 17 additions & 0 deletions src/helpers/settings.js
Original file line number Diff line number Diff line change
Expand Up @@ -673,6 +673,9 @@ export function showSettings() {
}
const userTheme = settings.value("simulator.theme");
checkMenuItem(`theme-${userTheme}`, true);
checkMenuItem("peer-roku-deploy", getPeerRoku().deploy);
checkMenuItem("peer-roku-control", getPeerRoku().syncControl);

}
});
}
Expand Down Expand Up @@ -783,6 +786,20 @@ export function setSimulatorOption(key, enable, menuId) {
}
}

export function setPeerRoku(key, enable, menuId) {
let options = settings.value("peerRoku");
if (options) {
if (enable && !options[key]?.length) {
settings.value(`peerRoku.${key}`, ["enabled"]);
} else if (!enable && options[key]?.length) {
settings.value(`peerRoku.${key}`, []);
}
if (menuId) {
checkMenuItem(menuId, enable);
}
}
}

export function getPeerRoku() {
return {
deploy: settings.value("peerRoku.deploy")?.includes("enabled") || false,
Expand Down
5 changes: 5 additions & 0 deletions src/main.js
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ import {
} from "./menu/menuService";
import { loadFile } from "./helpers/files";
import {
getPeerRoku,
getSettings,
setDeviceInfo,
setDisplayOption,
Expand Down Expand Up @@ -204,6 +205,10 @@ function loadSettings(mainWindow, startup) {
setDeviceInfo("localization", "countryCode");
setTimeZone();
}
if (settings.preferences.peerRoku) {
checkMenuItem("peer-roku-deploy", getPeerRoku().deploy);
checkMenuItem("peer-roku-control", getPeerRoku().syncControl);
}
}

// Process Command Line switches
Expand Down
24 changes: 23 additions & 1 deletion src/menu/deviceMenuTemplate.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
import { isECPEnabled, enableECP, disableECP } from "../server/ecp";
import { isTelnetEnabled, enableTelnet, disableTelnet } from "../server/telnet";
import { isInstallerEnabled, enableInstaller, disableInstaller } from "../server/installer";
import { setLocaleId, setDisplayOption } from "../helpers/settings";
import { setLocaleId, setDisplayOption, setPeerRoku } from "../helpers/settings";
import { reloadApp } from "../helpers/window";

export const deviceMenuTemplate = {
Expand Down Expand Up @@ -190,6 +190,28 @@ export const deviceMenuTemplate = {
},
},
{ type: "separator" },
{
id: "peer-roku-deploy",
label: "Deploy to Peer Roku",
accelerator: "CmdOrCtrl+P",
type: "checkbox",
checked: false,
enabled: true,
click: (item) => {
setPeerRoku("deploy", item.checked, item.id);
},
},
{
id: "peer-roku-control",
label: "Sync Control with Peer Roku",
type: "checkbox",
checked: false,
enabled: true,
click: (item) => {
setPeerRoku("syncControl", item.checked, item.id);
},
},
{ type: "separator" },
{
label: "Reset Device",
accelerator: "CmdOrCtrl+Shift+R",
Expand Down
4 changes: 3 additions & 1 deletion src/menu/menuService.js
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ import { helpMenuTemplate } from "./helpMenuTemplate";
import { isInstallerEnabled } from "../server/installer";
import { isECPEnabled } from "../server/ecp";
import { isTelnetEnabled } from "../server/telnet";
import { getSimulatorOption, setDisplayOption } from "../helpers/settings";
import { getPeerRoku, getSimulatorOption, setDisplayOption } from "../helpers/settings";
import { loadFile, loadUrl, editorCodeFile } from "../helpers/files";
import fs from "fs";
import path from "path";
Expand Down Expand Up @@ -304,6 +304,8 @@ function rebuildMenu(template = false) {
checkMenuItem("web-installer", isInstallerEnabled);
checkMenuItem("ecp-api", isECPEnabled);
checkMenuItem("telnet", isTelnetEnabled);
checkMenuItem("peer-roku-deploy", getPeerRoku().deploy);
checkMenuItem("peer-roku-control", getPeerRoku().syncControl);
}
}
} else {
Expand Down

0 comments on commit 6410c46

Please sign in to comment.