Some basic settings for keyboard shortcuts.
This commit is contained in:
parent
d0373820fe
commit
ec6dfadb41
@ -137,16 +137,14 @@ var _kbd_process = function (event) { // Tukaj ugotovimo, katero tipko
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var _kbd_load = async function() {
|
||||||
var _kbd_setup = async function() {
|
|
||||||
|
|
||||||
if(Debug.debug)
|
if(Debug.debug)
|
||||||
console.log("[Keybinds::_kbd_setup_init] Setting up keybinds");
|
console.log("[Keybinds::_kbd_setup_init] Setting up keybinds");
|
||||||
|
|
||||||
var ret = await StorageManager.getopt_async("keybinds");
|
var ret = await StorageManager.getopt_async("keybinds");
|
||||||
|
|
||||||
var keybinds = ret.keybinds;
|
var keybinds = ret.keybinds;
|
||||||
|
|
||||||
if(Array.isArray(keybinds)){
|
if(Array.isArray(keybinds)){
|
||||||
StorageManager.delopt("keybinds");
|
StorageManager.delopt("keybinds");
|
||||||
keybinds = DEFAULT_KEYBINDINGS;
|
keybinds = DEFAULT_KEYBINDINGS;
|
||||||
@ -165,11 +163,24 @@ var _kbd_setup = async function() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
_kbd_keybinds = keybinds;
|
_kbd_keybinds = keybinds;
|
||||||
|
}
|
||||||
|
|
||||||
|
var _kbd_setup = async function() {
|
||||||
|
await _kbd_load();
|
||||||
|
|
||||||
$(document).keydown(_kbd_process);
|
$(document).keydown(_kbd_process);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var _kbd_fetch = async function(){
|
||||||
|
if($.isEmptyObject(_kbd_keybinds)){
|
||||||
|
await _kbd_load();
|
||||||
|
}
|
||||||
|
|
||||||
|
return _kbd_keybinds;
|
||||||
|
}
|
||||||
|
|
||||||
var Keybinds = {
|
var Keybinds = {
|
||||||
init: _kbd_setup
|
init: _kbd_setup,
|
||||||
|
fetch: _kbd_fetch,
|
||||||
|
mods: _kbd_ModKeys
|
||||||
}
|
}
|
||||||
|
4
js/uw.js
4
js/uw.js
@ -51,8 +51,8 @@ async function main(){
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if(Settings.arDetect.enable == "global")
|
||||||
ArDetect.arSetup();
|
ArDetect.arSetup();
|
||||||
|
|
||||||
document.addEventListener("mozfullscreenchange", function( event ) {
|
document.addEventListener("mozfullscreenchange", function( event ) {
|
||||||
if(Debug.debug){
|
if(Debug.debug){
|
||||||
|
@ -77,7 +77,7 @@
|
|||||||
],
|
],
|
||||||
|
|
||||||
"options_ui" : {
|
"options_ui" : {
|
||||||
"page": "res/settings.html",
|
"page": "res/settings/settings.html",
|
||||||
"open_in_tab": true
|
"open_in_tab": true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -33,7 +33,7 @@ var hasVideos = false;
|
|||||||
|
|
||||||
var _config;
|
var _config;
|
||||||
|
|
||||||
function check4videos(){
|
async function check4videos(){
|
||||||
var command = {};
|
var command = {};
|
||||||
command.cmd = "has-videos";
|
command.cmd = "has-videos";
|
||||||
command.sender = "popup";
|
command.sender = "popup";
|
||||||
@ -57,7 +57,7 @@ function check4videos(){
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function check4conf(){
|
async function check4conf(){
|
||||||
var command = {};
|
var command = {};
|
||||||
command.cmd = "get-config";
|
command.cmd = "get-config";
|
||||||
command.sender = "popup";
|
command.sender = "popup";
|
||||||
|
@ -80,7 +80,9 @@
|
|||||||
.suboption {
|
.suboption {
|
||||||
display: block;
|
display: block;
|
||||||
padding-left: 15px;
|
padding-left: 15px;
|
||||||
|
padding-right: 15px;
|
||||||
padding-top: 5px;
|
padding-top: 5px;
|
||||||
|
padding-bottom: 20px;
|
||||||
min-height: 250px;
|
min-height: 250px;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -112,8 +114,12 @@
|
|||||||
}
|
}
|
||||||
#no-videos-display {
|
#no-videos-display {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
padding-top: 120px;
|
padding-top: 50px;
|
||||||
|
/* text-align: center; */
|
||||||
|
}
|
||||||
|
.center{
|
||||||
text-align: center;
|
text-align: center;
|
||||||
|
width: 100%;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
</head>
|
</head>
|
||||||
@ -137,7 +143,10 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="right-side">
|
<div class="right-side">
|
||||||
<div id="no-videos-display" class="suboption">
|
<div id="no-videos-display" class="suboption">
|
||||||
No videos have been found on this page.<br/><small>NOTE: iframes are <b>not</b> detected by this popup. You need a keyboard / to enable automatic aspect ratio detection to fix aspect ratio in embedded players.<br/>Embedded players must also be in full screen.</small>
|
<p class="label center">No videos have been found on this page.</p><p>If there <i>is</i> a video on this page, then you're seeing this message for one of these reasons:</p>
|
||||||
|
<ul><li>Page hasn't finished loading<small><br/><span class="smallcaps">Note</span>: webextensions only start working when page is fully loaded.</small></li>
|
||||||
|
<li>The video is embedded / in an iframe.<small><br/>This is a known issue/limitation. Use keyboard shortcuts to correct aspect ratio.</small></li>
|
||||||
|
<li>Hamster Rajko is on strike.<small><br/>(Close this popup and reopen in a few seconds)</small></li></ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="extension-mode" class="suboption hidden">
|
<div id="extension-mode" class="suboption hidden">
|
||||||
|
@ -224,9 +224,9 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="tabline center">
|
<div class="tabline center">
|
||||||
<div class="content left">
|
<div class="content left">
|
||||||
<div id="tab_general_settings" class="block tab tab-selected">General settings</div>
|
<!-- <div id="tab_general_settings" class="block tab tab-selected">General settings</div> -->
|
||||||
<div id="tab_sites" class="block tab">Site options</div>
|
<!-- <div id="tab_sites" class="block tab">Site options</div> -->
|
||||||
<div id="tab_shortcuts" class="block tab">Shortcuts</div>
|
<div id="tab_shortcuts" class="block tab tab-selected">Shortcuts</div>
|
||||||
<div id="tab_about" class="block tab">About</div>
|
<div id="tab_about" class="block tab">About</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -234,7 +234,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div id="general_settings">
|
<div id="general_settings" class="hide">
|
||||||
<div class="content left">
|
<div class="content left">
|
||||||
<div class="uw_options_line">
|
<div class="uw_options_line">
|
||||||
<div class="uw_options_option"><input type="checkbox" id='enable_autoar'> <strike>Enable automatic aspect ratio detection</strike></div>
|
<div class="uw_options_option"><input type="checkbox" id='enable_autoar'> <strike>Enable automatic aspect ratio detection</strike></div>
|
||||||
@ -265,101 +265,76 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="uw_shortcuts" class="hide">
|
<div id="uw_shortcuts">
|
||||||
<h1>Guess which thing doesn't do shit at the moment either?</h1>
|
|
||||||
<h2>If you guessed this page ... well.</h2>
|
|
||||||
<div class="content left">
|
<div class="content left">
|
||||||
|
<h2>Keyboard shortcuts</h2>
|
||||||
|
|
||||||
<form>
|
<form>
|
||||||
<!-- BEGIN FORM -->
|
<!-- BEGIN FORM -->
|
||||||
|
|
||||||
|
<!-- try autoar -->
|
||||||
|
<div class="uw_shortcuts_line">
|
||||||
|
<div class="uw_shortcuts_label">Autodetect aspect ratio</div>
|
||||||
|
<input type='checkbox' id="_kbd_autoar_ctrlKey" > Ctrl +
|
||||||
|
<input type='checkbox' id="_kbd_autoar_shiftKey" > Shift +
|
||||||
|
<input type='checkbox' id="_kbd_autoar_altKey" > Alt +
|
||||||
|
<input type='text' id="_kbd_autoar_lettr" maxlength='1' class='shortcut_input'>
|
||||||
|
</div>
|
||||||
|
|
||||||
<!-- fit width -->
|
<!-- fit width -->
|
||||||
<div class="uw_shortcuts_line">
|
<div class="uw_shortcuts_line">
|
||||||
<div class="uw_shortcuts_label">Fit to width</div>
|
<div class="uw_shortcuts_label">Fit to width</div>
|
||||||
<input type='checkbox' id='fitw_ctrl' > Ctrl +
|
<input type='checkbox' id="_kbd_fitw_ctrlKey" > Ctrl +
|
||||||
<input type='checkbox' id='fitw_shift' > Shift +
|
<input type='checkbox' id="_kbd_fitw_shiftKey" > Shift +
|
||||||
<input type='checkbox' id='fitw_alt' > Alt +
|
<input type='checkbox' id="_kbd_fitw_altKey" > Alt +
|
||||||
<input type='text' id='fitw_letter' maxlength='1' class='shortcut_input'>
|
<input type='text' id="_kbd_fitw_lettr" maxlength='1' class='shortcut_input'>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- fit height -->
|
<!-- fit height -->
|
||||||
<div class="uw_shortcuts_line">
|
<div class="uw_shortcuts_line">
|
||||||
<div class="uw_shortcuts_label">Fit to height</div>
|
<div class="uw_shortcuts_label">Fit to height</div>
|
||||||
<input type='checkbox' id='fith_ctrl' > Ctrl +
|
<input type='checkbox' id="_kbd_fith_ctrlKey" > Ctrl +
|
||||||
<input type='checkbox' id='fith_shift' > Shift +
|
<input type='checkbox' id="_kbd_fith_shiftKey" > Shift +
|
||||||
<input type='checkbox' id='fith_alt' > Alt +
|
<input type='checkbox' id="_kbd_fith_altKey" > Alt +
|
||||||
<input type='text' id='fith_letter' maxlength='1' class='shortcut_input'>
|
<input type='text' id="_kbd_fith_lettr" maxlength='1' class='shortcut_input'>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- reset -->
|
<!-- reset -->
|
||||||
<div class="uw_shortcuts_line">
|
<div class="uw_shortcuts_line">
|
||||||
<div class="uw_shortcuts_label">Reset</div>
|
<div class="uw_shortcuts_label">Reset</div>
|
||||||
<input type='checkbox' id='reset_ctrl' > Ctrl +
|
<input type='checkbox' id="_kbd_reset_ctrlKey" > Ctrl +
|
||||||
<input type='checkbox' id='reset_shift' > Shift +
|
<input type='checkbox' id="_kbd_reset_shiftKey" > Shift +
|
||||||
<input type='checkbox' id='reset_alt' > Alt +
|
<input type='checkbox' id="_kbd_reset_altKey" > Alt +
|
||||||
<input type='text' id='reset_letter' maxlength='1' class='shortcut_input'>
|
<input type='text' id="_kbd_reset_lettr" maxlength='1' class='shortcut_input'>
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- zoom -->
|
|
||||||
<div class="uw_shortcuts_line">
|
|
||||||
<div class="uw_shortcuts_label">Zoom</div>
|
|
||||||
<input type='checkbox' id='zoom_ctrl' > Ctrl +
|
|
||||||
<input type='checkbox' id='zoom_shift' > Shift +
|
|
||||||
<input type='checkbox' id='zoom_alt' > Alt +
|
|
||||||
<input type='text' id='zoom_letter' maxlength='1' class='shortcut_input'>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- unzoom -->
|
|
||||||
<div class="uw_shortcuts_line">
|
|
||||||
<div class="uw_shortcuts_label">Unzoom</div>
|
|
||||||
<input type='checkbox' id='unzoom_ctrl' > Ctrl +
|
|
||||||
<input type='checkbox' id='unzoom_shift' > Shift +
|
|
||||||
<input type='checkbox' id='unzoom_alt' > Alt +
|
|
||||||
<input type='text' id='unzoom_letter' maxlength='1' class='shortcut_input'>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- force 21:9 -->
|
<!-- force 21:9 -->
|
||||||
<div class="uw_shortcuts_line">
|
<div class="uw_shortcuts_line">
|
||||||
<div class="uw_shortcuts_label">Force 21:9</div>
|
<div class="uw_shortcuts_label">Force 21:9</div>
|
||||||
<input type='checkbox' id='ar219_ctrl' > Ctrl +
|
<input type='checkbox' id="_kbd_char_219_ctrlKey" > Ctrl +
|
||||||
<input type='checkbox' id='ar219_shift' > Shift +
|
<input type='checkbox' id="_kbd_char_219_shiftKey" > Shift +
|
||||||
<input type='checkbox' id='ar219_alt' > Alt +
|
<input type='checkbox' id="_kbd_char_219_altKey" > Alt +
|
||||||
<input type='text' id='ar219_letter' maxlength='1' class='shortcut_input'>
|
<input type='text' id="_kbd_char_219_lettr" maxlength='1' class='shortcut_input'>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- force 2:1 -->
|
||||||
|
<div class="uw_shortcuts_line">
|
||||||
|
<div class="uw_shortcuts_label">Force 2:1 (18:9)</div>
|
||||||
|
<input type='checkbox' id="_kbd_char_189_ctrlKey" > Ctrl +
|
||||||
|
<input type='checkbox' id="_kbd_char_189_shiftKey" > Shift +
|
||||||
|
<input type='checkbox' id="_kbd_char_189_altKey" > Alt +
|
||||||
|
<input type='text' id="_kbd_char_189_lettr" maxlength='1' class='shortcut_input'>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- force 16:9 -->
|
<!-- force 16:9 -->
|
||||||
<div class="uw_shortcuts_line">
|
<div class="uw_shortcuts_line">
|
||||||
<div class="uw_shortcuts_label">Force 16:9</div>
|
<div class="uw_shortcuts_label">Force 16:9</div>
|
||||||
<input type='checkbox' id='ar169_ctrl' > Ctrl +
|
<input type='checkbox' id="_kbd_char_169_ctrlKey" > Ctrl +
|
||||||
<input type='checkbox' id='ar169_shift' > Shift +
|
<input type='checkbox' id="_kbd_char_169_shiftKey" > Shift +
|
||||||
<input type='checkbox' id='ar169_alt' > Alt +
|
<input type='checkbox' id="_kbd_char_169_altKey" > Alt +
|
||||||
<input type='text' id='ar169_letter' maxlength='1' class='shortcut_input'>
|
<input type='text' id="_kbd_char_169_lettr" maxlength='1' class='shortcut_input'>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- force 16:10 -->
|
|
||||||
<div class="uw_shortcuts_line">
|
|
||||||
<div class="uw_shortcuts_label">Force 16:10</div>
|
|
||||||
<input type='checkbox' id='ar1610_ctrl' > Ctrl +
|
|
||||||
<input type='checkbox' id='ar1610_shift' > Shift +
|
|
||||||
<input type='checkbox' id='ar1610_alt' > Alt +
|
|
||||||
<input type='text' id='ar1610_letter' maxlength='1' class='shortcut_input'>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- force 4:3 -->
|
|
||||||
<div class="uw_shortcuts_line">
|
|
||||||
<div class="uw_shortcuts_label">Force 4:3</div>
|
|
||||||
<input type='checkbox' id='ar43_ctrl' > Ctrl +
|
|
||||||
<input type='checkbox' id='ar43_shift' > Shift +
|
|
||||||
<input type='checkbox' id='ar43_alt' > Alt +
|
|
||||||
<input type='text' id='ar43_letter' maxlength='1' class='shortcut_input'>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- try autoar -->
|
|
||||||
<div class="uw_shortcuts_line">
|
|
||||||
<div class="uw_shortcuts_label">Autodetect aspect ratio (Netflix only)</div>
|
|
||||||
<input type='checkbox' id='autoar_ctrl' > Ctrl +
|
|
||||||
<input type='checkbox' id='autoar_shift' > Shift +
|
|
||||||
<input type='checkbox' id='autoar_alt' > Alt +
|
|
||||||
<input type='text' id='autoar_letter' maxlength='1' class='shortcut_input'>
|
|
||||||
</div>
|
|
||||||
<!-- END FORM -->
|
<!-- END FORM -->
|
||||||
</form>
|
</form>
|
||||||
<div class="buttonbar"><div class="button" id="kb_cancel">Cancel</div><div class="button" id="kb_save">Save</div></div>
|
<div class="buttonbar"><div class="button" id="kb_cancel">Cancel</div><div class="button" id="kb_save">Save</div></div>
|
||||||
@ -382,7 +357,7 @@
|
|||||||
<p>this is the future lol. (at least as far as autodetection goes, keybinds need to make a comeback)</p>
|
<p>this is the future lol. (at least as far as autodetection goes, keybinds need to make a comeback)</p>
|
||||||
<h2>Acknowledgements</h2>
|
<h2>Acknowledgements</h2>
|
||||||
<p>This extension uses font <a href="https://fonts.google.com/specimen/Oxygen">Oxygen</a>.</p>
|
<p>This extension uses font <a href="https://fonts.google.com/specimen/Oxygen">Oxygen</a>.</p>
|
||||||
<p>Special thanks to CD Project Red (The Witcher 2), Anet (Guild Wars 2), and Valve (CS:GO), which made it possible for me to untrigger myself after seeing so many improperly encoded videos.</p>
|
<p>Special thanks to CD Project Red (The Witcher 2), Cyanide Studios (Styx, Of Orcs and Men), and Valve (CS:GO), which made it possible for me to untrigger myself after seeing so many improperly encoded videos.</p>
|
||||||
<small><p>More or less.</p>
|
<small><p>More or less.</p>
|
||||||
<!-- <p>GW2 is also roughly how the avatar was obtained. Noone tell Anet, though.</p> --></small>
|
<!-- <p>GW2 is also roughly how the avatar was obtained. Noone tell Anet, though.</p> --></small>
|
||||||
<p>Special one-finger salute to all incompetent people who don't know how to properly encode videos and upload them to youtube (to word it most nicely).</p>
|
<p>Special one-finger salute to all incompetent people who don't know how to properly encode videos and upload them to youtube (to word it most nicely).</p>
|
||||||
@ -391,6 +366,14 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<script src="../../js/dep/jquery-3.1.1.js" ></script>
|
||||||
|
<script src="../../js/conf/Debug.js"></script>
|
||||||
|
|
||||||
|
<script src="../../js/lib/BrowserDetect.js"></script>
|
||||||
|
<script src="../../js/lib/StorageManager.js"></script>
|
||||||
|
|
||||||
|
<script src="../../js/conf/Keybinds.js"></script>
|
||||||
|
<script src="../../js/conf/Settings.js"></script>
|
||||||
|
|
||||||
<script src="./settings.js"></script>
|
<script src="./settings.js"></script>
|
||||||
</body>
|
</body>
|
134
res/settings/settings.js
Normal file
134
res/settings/settings.js
Normal file
@ -0,0 +1,134 @@
|
|||||||
|
function showAbout(){
|
||||||
|
clearPage();
|
||||||
|
|
||||||
|
document.getElementById("about").classList.remove("hide");
|
||||||
|
document.getElementById("tab_about").classList.add("tab-selected");
|
||||||
|
}
|
||||||
|
function showShortcuts(){
|
||||||
|
clearPage();
|
||||||
|
|
||||||
|
document.getElementById("uw_shortcuts").classList.remove("hide");
|
||||||
|
document.getElementById("tab_shortcuts").classList.add("tab-selected");
|
||||||
|
}
|
||||||
|
function showGeneralSettings(){
|
||||||
|
clearPage();
|
||||||
|
|
||||||
|
document.getElementById("general_settings").classList.remove("hide");
|
||||||
|
document.getElementById("tab_general_settings").classList.add("tab-selected");
|
||||||
|
}
|
||||||
|
|
||||||
|
function showSites(){
|
||||||
|
clearPage();
|
||||||
|
document.getElementById("uw_sites").classList.remove("hide");
|
||||||
|
document.getElementById("tab_sites").classList.add("tab-selected");
|
||||||
|
}
|
||||||
|
|
||||||
|
function clearPage(){
|
||||||
|
// Hide you sections
|
||||||
|
document.getElementById("uw_shortcuts").classList.add("hide");
|
||||||
|
document.getElementById("about").classList.add("hide");
|
||||||
|
document.getElementById("general_settings").classList.add("hide");
|
||||||
|
document.getElementById("uw_sites").classList.add("hide");
|
||||||
|
|
||||||
|
// Hide you tabs
|
||||||
|
document.getElementById("tab_shortcuts").classList.remove("tab-selected");
|
||||||
|
document.getElementById("tab_about").classList.remove("tab-selected");
|
||||||
|
document.getElementById("tab_general_settings").classList.remove("tab-selected");
|
||||||
|
document.getElementById("tab_sites").classList.remove("tab-selected");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
async function loadKeybinds(){
|
||||||
|
// load showShortcuts
|
||||||
|
var keybinds = await Keybinds.fetch();
|
||||||
|
|
||||||
|
for(var key in keybinds){
|
||||||
|
if(Debug.debug)
|
||||||
|
console.log("[settings.js::loadKeybinds] we're looking at this key:", key, "it splits like this:", key.toLowerCase().split("_"));
|
||||||
|
|
||||||
|
var keypressArr = key.split("_");
|
||||||
|
var opts = keybinds[key];
|
||||||
|
|
||||||
|
var query = "_kbd_" + opts.action + "_";
|
||||||
|
if(opts.action == "char"){
|
||||||
|
if(opts.targetAr == 2.39)
|
||||||
|
query += ("219_");
|
||||||
|
else if(opts.targetAr == 2.0)
|
||||||
|
query += ("189_");
|
||||||
|
else if(opts.targetAr == 1.78)
|
||||||
|
query += ("169_");
|
||||||
|
}
|
||||||
|
|
||||||
|
var q2;
|
||||||
|
for(var modKey of Keybinds.mods){
|
||||||
|
q2 = "#" + query + modKey;
|
||||||
|
document.querySelector(q2).checked = keypressArr.indexOf(modKey) != -1;
|
||||||
|
}
|
||||||
|
q2 = "#" + query + "lettr";
|
||||||
|
document.querySelector(q2).value = keypressArr[keypressArr.length - 1].toLowerCase();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
async function saveKeybinds(){
|
||||||
|
|
||||||
|
var actions = [ "autoar", "fitw", "fith", "reset", "char_219", "char_189", "char_169" ];
|
||||||
|
|
||||||
|
var savedShortcuts = {};
|
||||||
|
|
||||||
|
for(var action of actions){
|
||||||
|
var queryBase = "#_kbd_" + action;
|
||||||
|
var letter = document.querySelector(queryBase + "_lettr").value.trim();
|
||||||
|
|
||||||
|
if(letter === "" || letter === undefined)
|
||||||
|
continue; // we don't make a shortcut for this action
|
||||||
|
|
||||||
|
var shortcutKeypress = "";
|
||||||
|
|
||||||
|
for(mod of Keybinds.mods)
|
||||||
|
if(document.querySelector(queryBase + "_" + mod).checked)
|
||||||
|
shortcutKeypress += (mod + "_");
|
||||||
|
|
||||||
|
shortcutKeypress += letter;
|
||||||
|
|
||||||
|
savedShortcuts[shortcutKeypress] = {};
|
||||||
|
|
||||||
|
if(action.startsWith("char_")){
|
||||||
|
savedShortcuts[shortcutKeypress].action = "char";
|
||||||
|
|
||||||
|
if(action == "char_219")
|
||||||
|
savedShortcuts[shortcutKeypress].targetAr = 2.39;
|
||||||
|
else if(action == "char_189")
|
||||||
|
savedShortcuts[shortcutKeypress].targetAr = 2.0;
|
||||||
|
else if(action == "char_169")
|
||||||
|
savedShortcuts[shortcutKeypress].targetAr = 1.78;
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
savedShortcuts[shortcutKeypress].action = action;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// out with the old
|
||||||
|
await StorageManager.delopt("keybinds");
|
||||||
|
//in with the new
|
||||||
|
StorageManager.setopt({"keybinds":savedShortcuts});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// page init
|
||||||
|
// document.addEventListener("DOMContentLoaded", loadopts);
|
||||||
|
|
||||||
|
document.querySelector("#tab_shortcuts").addEventListener("click", showShortcuts);
|
||||||
|
document.querySelector("#tab_about").addEventListener("click", showAbout);
|
||||||
|
// document.querySelector("#tab_general_settings").addEventListener("click",showGeneralSettings);
|
||||||
|
// document.querySelector("#tab_sites").addEventListener("click", showSites);
|
||||||
|
|
||||||
|
document.querySelector("#kb_save").addEventListener("click", saveKeybinds);
|
||||||
|
document.querySelector("#kb_cancel").addEventListener("click", loadKeybinds);
|
||||||
|
|
||||||
|
// document.querySelector("#enable_autoar").addEventListener("click",saveAutoar);
|
||||||
|
// document.querySelector("#enable_ui").addEventListener("click", saveUI);
|
||||||
|
// document.querySelector("#enable_ui_compact").addEventListener("click", saveUI);
|
||||||
|
|
||||||
|
loadKeybinds();
|
Loading…
Reference in New Issue
Block a user