2022-07-15 21:04:00 +00:00
|
|
|
<!DOCTYPE html>
|
|
|
|
<html lang="en">
|
|
|
|
<head>
|
|
|
|
<meta charset="UTF-8" />
|
|
|
|
<title>ArmCord Settings</title>
|
|
|
|
<style>
|
|
|
|
@import url("../content/css/settings.css");
|
2022-08-22 09:24:55 +00:00
|
|
|
.acAdvSettings {
|
|
|
|
height: 19em !important;
|
|
|
|
}
|
2022-07-15 21:04:00 +00:00
|
|
|
</style>
|
|
|
|
</head>
|
|
|
|
|
|
|
|
<body>
|
|
|
|
<div class="saveBar">
|
|
|
|
<button id="settings-save" class="center">Save Settings</button>
|
|
|
|
</div>
|
2022-08-24 15:25:12 +00:00
|
|
|
<div class="switch acTheme">
|
|
|
|
<select name="theme" id="theme" class="left dropdown">
|
|
|
|
<option value="default">Default</option>
|
|
|
|
<option value="native">Native</option>
|
|
|
|
</select>
|
|
|
|
<p class="header" id="settings-theme">ArmCord theme</p>
|
|
|
|
<p class="description">
|
|
|
|
ArmCord "themes" manage apps behaviour and looks.
|
|
|
|
<br />
|
|
|
|
<b>Default</b> - this is how ArmCord looks when you first launch it. It includes recreation of Discord's
|
|
|
|
custom titlebar and ArmCord specific styles injected into Discord.
|
|
|
|
<br />
|
|
|
|
<b>Native</b> - uses native titlebar of OS you're currently running (e.g Windows 7/10). Functions more
|
|
|
|
similar to actual Discord app on Linux.
|
|
|
|
</p>
|
|
|
|
</div>
|
|
|
|
<br />
|
2022-07-15 21:04:00 +00:00
|
|
|
<div class="switch acCSP">
|
|
|
|
<label class="header2">ArmCord CSP</label>
|
|
|
|
<input class="tgl tgl-light left" id="csp" type="checkbox" />
|
|
|
|
<label class="tgl-btn left" for="csp"></label>
|
|
|
|
<p class="description2">
|
|
|
|
ArmCord CSP is our system that manages loading custom content loading into the Discord app. Stuff like
|
|
|
|
client mods and themes depend on it. Disable if you want to get rid of mods and custom styles.
|
|
|
|
</p>
|
|
|
|
</div>
|
|
|
|
<br />
|
|
|
|
<div class="switch acTray">
|
|
|
|
<label class="header2" id="settings-tray">Minimize to tray</label>
|
|
|
|
<input class="tgl tgl-light left" id="tray" type="checkbox" />
|
|
|
|
<label class="tgl-btn left" for="tray"></label>
|
|
|
|
<p class="description2">
|
|
|
|
When disabled, ArmCord will close like any other window when closed, otherwise it'll sit back and relax
|
|
|
|
in your system tray for later.
|
|
|
|
</p>
|
|
|
|
</div>
|
|
|
|
<br />
|
|
|
|
<div class="switch acPatches">
|
|
|
|
<label class="header2" id="settings-patches">Automatic Patches</label>
|
|
|
|
<input class="tgl tgl-light left" id="patches" type="checkbox" />
|
|
|
|
<label class="tgl-btn left" for="patches"></label>
|
|
|
|
<p class="description2">
|
|
|
|
Fetches automatic patches that are distributed if release turns out to have bugs after release. Usually
|
|
|
|
you don't have to keep this enabled, unless notified in support Discord.
|
|
|
|
</p>
|
|
|
|
</div>
|
|
|
|
<br />
|
|
|
|
<div class="switch acAltPaste">
|
|
|
|
<label class="header2" id="settings-alternativePaste">Alternative paste</label>
|
|
|
|
<input class="tgl tgl-light left" id="alternativePaste" type="checkbox" />
|
|
|
|
<label class="tgl-btn left" for="alternativePaste"></label>
|
|
|
|
<p class="description2">
|
|
|
|
If you're on Gnome on Linux or just simply can't paste images copied from other messages, then this is
|
|
|
|
for you. This enables alternative module for pasting images. Only enable this when you're experiencing
|
|
|
|
issues.
|
|
|
|
</p>
|
|
|
|
</div>
|
|
|
|
<br />
|
|
|
|
<div class="switch acChannel">
|
|
|
|
<select name="channel" id="channel" class="left dropdown">
|
|
|
|
<option value="stable">Stable</option>
|
|
|
|
<option value="canary">Canary</option>
|
|
|
|
<option value="ptb">PTB</option>
|
|
|
|
<option value="hummus">Hummus (unofficial)</option>
|
|
|
|
</select>
|
|
|
|
<div>
|
|
|
|
<p class="header" id="settings-channel">Discord channel:</p>
|
|
|
|
<p class="description">
|
|
|
|
You can use this setting to change current instance of Discord:
|
|
|
|
<br />
|
|
|
|
<b>Stable</b> - you're probably most familiar with this one. It's the one you see in default Discord
|
|
|
|
client!
|
|
|
|
<br />
|
|
|
|
<b>Canary</b> - this is alpha test release of Discord. By using it you gain access to newest
|
|
|
|
features and fixes.
|
|
|
|
<br />
|
|
|
|
<b>PTB</b> - public test build. Gets features earlier than stable but is a bit older than Canary.
|
|
|
|
<br />
|
|
|
|
<b>Hummus</b> - unofficial instance of Discord that takes you back to 2016! None of the client mods
|
|
|
|
bundled with ArmCord work with it. It's run by community, so you take all the risk by using it.
|
|
|
|
</p>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<br />
|
2022-08-22 09:24:55 +00:00
|
|
|
<div class="switch acCordwood">
|
2022-07-15 21:04:00 +00:00
|
|
|
<label class="header2" id="settings-cordwood">Cordwood client mod</label>
|
|
|
|
<input class="tgl tgl-light left" id="cordwood" type="checkbox" />
|
|
|
|
<label class="tgl-btn left" for="cordwood"></label>
|
|
|
|
<p class="description2">
|
|
|
|
Client mod for Hummus that focuses on making the plugin development experience easier. Minimal, light,
|
|
|
|
and easy to use
|
|
|
|
</p>
|
|
|
|
</div>
|
|
|
|
<br />
|
|
|
|
<div class="switch acPrfmMode">
|
|
|
|
<select name="prfmMode" id="prfmMode" class="left dropdown">
|
|
|
|
<option value="performance">Performance</option>
|
|
|
|
<option value="battery">Battery</option>
|
|
|
|
<option value="none">None</option>
|
|
|
|
</select>
|
|
|
|
<p class="header" id="settings-prfmMode">Performance mode:</p>
|
|
|
|
<p class="description">
|
|
|
|
Performance mode is an experimental function that may either increase responsiveness and performance of
|
|
|
|
ArmCord or... decrease it. Please try every option and see which fits you the best.
|
|
|
|
</p>
|
|
|
|
</div>
|
|
|
|
<br />
|
|
|
|
<div class="switch acTray">
|
|
|
|
<select name="trayIcon" id="trayIcon" class="left dropdown">
|
|
|
|
<option value="ac_plug_colored">Default</option>
|
|
|
|
<option value="dsc-tray">Discord Icon</option>
|
|
|
|
<option value="ac_white_plug">White Icon</option>
|
|
|
|
<option value="ac_black_plug">Black Icon</option>
|
|
|
|
<option value="ac_white_plug_hollow">White Hollowed Icon</option>
|
|
|
|
<option value="ac_black_plug_hollow">Black Hollowed Icon</option>
|
|
|
|
</select>
|
|
|
|
<p class="header" id="settings-trayIcon">Tray icon:</p>
|
|
|
|
<p class="description">Set the icon which will appear in tray menu.</p>
|
|
|
|
</div>
|
|
|
|
<br />
|
|
|
|
<br />
|
2022-08-22 09:24:55 +00:00
|
|
|
<div class="switch acAdvSettings">
|
|
|
|
<h1 class="center advancedText">⚠️ Advanced User Zone ⚠️</h1>
|
|
|
|
<button id="settings-pluginsFolder" class="center">Open Plugins Folder</button>
|
|
|
|
<br />
|
|
|
|
<button id="settings-themesFolder" class="center">Open Themes Folder</button>
|
|
|
|
<br />
|
|
|
|
<button id="settings-storageFolder" class="center">Open Storage Folder</button>
|
|
|
|
<br />
|
|
|
|
<button id="settings-copyDebugInfo" class="center">Copy Debug Info</button>
|
|
|
|
</div>
|
2022-07-15 21:04:00 +00:00
|
|
|
</body>
|
|
|
|
<script>
|
|
|
|
async function loadLang() {
|
|
|
|
document.getElementById("settings-save").innerHTML = await settings.getLang("settings-save");
|
|
|
|
document.getElementById("settings-channel").innerHTML = await settings.getLang("settings-channel");
|
|
|
|
document.getElementById("settings-patches").innerHTML = await settings.getLang("settings-patches");
|
|
|
|
document.getElementById("settings-tray").innerHTML = await settings.getLang("settings-tray");
|
|
|
|
document.getElementById("settings-theme").innerHTML = await settings.getLang("settings-theme");
|
|
|
|
document.getElementById("prfmMode").options[2].text = await settings.getLang("settings-none");
|
|
|
|
document.getElementById("prfmMode").options[1].text = await settings.getLang("settings-prfmMode-battery");
|
|
|
|
document.getElementById("prfmMode").options[0].text = await settings.getLang(
|
|
|
|
"settings-prfmMode-performance"
|
|
|
|
);
|
|
|
|
document.getElementById("theme").options[1].text = await settings.getLang("settings-theme-native");
|
|
|
|
document.getElementById("theme").options[0].text = await settings.getLang("settings-theme-default");
|
|
|
|
}
|
|
|
|
loadLang();
|
|
|
|
</script>
|
|
|
|
<script>
|
|
|
|
async function loadSettings() {
|
|
|
|
document.getElementById("csp").checked = await settings.get("armcordCSP");
|
|
|
|
document.getElementById("tray").checked = await settings.get("minimizeToTray");
|
|
|
|
document.getElementById("alternativePaste").checked = await settings.get("alternativePaste");
|
|
|
|
document.getElementById("patches").value = await settings.get("automaticPatches");
|
2022-08-24 15:25:12 +00:00
|
|
|
if ((await settings.get("mods")) == "cordwood") {
|
|
|
|
document.getElementById("cordwood").checked = true;
|
|
|
|
} else {
|
|
|
|
document.getElementById("cordwood").checked = false;
|
|
|
|
}
|
2022-07-15 21:04:00 +00:00
|
|
|
document.getElementById("channel").value = await settings.get("channel");
|
|
|
|
document.getElementById("theme").value = await settings.get("windowStyle");
|
|
|
|
document.getElementById("prfmMode").value = await settings.get("performanceMode");
|
|
|
|
document.getElementById("trayIcon").value = await settings.get("trayIcon");
|
|
|
|
}
|
|
|
|
loadSettings();
|
2022-08-24 15:25:12 +00:00
|
|
|
document.getElementById("settings-save").addEventListener("click", async function () {
|
|
|
|
var cordwood;
|
|
|
|
if (document.getElementById("cordwood").checked) {
|
|
|
|
cordwood = true;
|
|
|
|
} else {
|
|
|
|
cordwood = false;
|
|
|
|
}
|
2022-07-15 21:04:00 +00:00
|
|
|
settings.save({
|
|
|
|
windowStyle: document.getElementById("theme").value,
|
|
|
|
channel: document.getElementById("channel").value,
|
|
|
|
armcordCSP: document.getElementById("csp").checked,
|
|
|
|
minimizeToTray: document.getElementById("tray").checked,
|
|
|
|
alternativePaste: document.getElementById("alternativePaste").checked,
|
|
|
|
automaticPatches: document.getElementById("patches").checked,
|
2022-08-24 15:25:12 +00:00
|
|
|
mods: cordwood,
|
|
|
|
mobileMode: await settings.get("mobileMode"),
|
|
|
|
inviteWebsocket: await settings.get("inviteWebsocket"),
|
2022-07-15 21:04:00 +00:00
|
|
|
performanceMode: document.getElementById("prfmMode").value,
|
|
|
|
trayIcon: document.getElementById("trayIcon").value,
|
|
|
|
doneSetup: true
|
|
|
|
});
|
|
|
|
});
|
2022-08-24 15:25:12 +00:00
|
|
|
document.getElementById("settings-pluginsFolder").addEventListener("click", async function () {
|
2022-07-15 21:04:00 +00:00
|
|
|
settings.openPluginsFolder();
|
2022-08-24 15:25:12 +00:00
|
|
|
await new Promise((r) => setTimeout(r, 2000));
|
2022-07-15 21:04:00 +00:00
|
|
|
});
|
2022-08-24 15:25:12 +00:00
|
|
|
document.getElementById("settings-themesFolder").addEventListener("click", async function () {
|
2022-07-15 21:04:00 +00:00
|
|
|
settings.openThemesFolder();
|
2022-08-24 15:25:12 +00:00
|
|
|
await new Promise((r) => setTimeout(r, 2000));
|
2022-07-15 21:04:00 +00:00
|
|
|
});
|
2022-08-24 15:25:12 +00:00
|
|
|
document.getElementById("settings-storageFolder").addEventListener("click", async function () {
|
2022-07-15 21:04:00 +00:00
|
|
|
settings.openStorageFolder();
|
2022-08-24 15:25:12 +00:00
|
|
|
await new Promise((r) => setTimeout(r, 2000));
|
2022-07-15 21:04:00 +00:00
|
|
|
});
|
|
|
|
document.getElementById("settings-copyDebugInfo").addEventListener("click", function () {
|
|
|
|
settings.copyDebugInfo();
|
|
|
|
});
|
|
|
|
</script>
|
|
|
|
</html>
|