Handle all settings via UI.getSetting()
Makes sure everything behaves the same way, even if there is no visible UI for a settings.
This commit is contained in:
parent
96c76f7709
commit
9334c68241
17
app/ui.js
17
app/ui.js
|
@ -120,7 +120,7 @@ const UI = {
|
|||
|
||||
document.documentElement.classList.remove("noVNC_loading");
|
||||
|
||||
let autoconnect = WebUtil.getConfigVar('autoconnect', false);
|
||||
let autoconnect = UI.getSetting('autoconnect');
|
||||
if (autoconnect === 'true' || autoconnect == '1') {
|
||||
autoconnect = true;
|
||||
UI.connect();
|
||||
|
@ -160,11 +160,14 @@ const UI = {
|
|||
|
||||
/* Populate the controls if defaults are provided in the URL */
|
||||
UI.initSetting('encrypt', (window.location.protocol === "https:"));
|
||||
UI.initSetting('password');
|
||||
UI.initSetting('autoconnect', false);
|
||||
UI.initSetting('view_clip', false);
|
||||
UI.initSetting('resize', 'off');
|
||||
UI.initSetting('quality', 6);
|
||||
UI.initSetting('compression', 2);
|
||||
UI.initSetting('shared', true);
|
||||
UI.initSetting('bell', 'on');
|
||||
UI.initSetting('view_only', false);
|
||||
UI.initSetting('show_dot', false);
|
||||
UI.initSetting('path', 'websockify');
|
||||
|
@ -759,9 +762,12 @@ const UI = {
|
|||
let value = UI.getSetting(name);
|
||||
|
||||
const ctrl = document.getElementById('noVNC_setting_' + name);
|
||||
if (ctrl === null) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (ctrl.type === 'checkbox') {
|
||||
ctrl.checked = value;
|
||||
|
||||
} else if (typeof ctrl.options !== 'undefined') {
|
||||
for (let i = 0; i < ctrl.options.length; i += 1) {
|
||||
if (ctrl.options[i].value === value) {
|
||||
|
@ -794,7 +800,8 @@ const UI = {
|
|||
getSetting(name) {
|
||||
const ctrl = document.getElementById('noVNC_setting_' + name);
|
||||
let val = WebUtil.readSetting(name);
|
||||
if (typeof val !== 'undefined' && val !== null && ctrl.type === 'checkbox') {
|
||||
if (typeof val !== 'undefined' && val !== null &&
|
||||
ctrl !== null && ctrl.type === 'checkbox') {
|
||||
if (val.toString().toLowerCase() in {'0': 1, 'no': 1, 'false': 1}) {
|
||||
val = false;
|
||||
} else {
|
||||
|
@ -998,7 +1005,7 @@ const UI = {
|
|||
const path = UI.getSetting('path');
|
||||
|
||||
if (typeof password === 'undefined') {
|
||||
password = WebUtil.getConfigVar('password');
|
||||
password = UI.getSetting('password');
|
||||
UI.reconnectPassword = password;
|
||||
}
|
||||
|
||||
|
@ -1728,7 +1735,7 @@ const UI = {
|
|||
},
|
||||
|
||||
bell(e) {
|
||||
if (WebUtil.getConfigVar('bell', 'on') === 'on') {
|
||||
if (UI.getSetting('bell') === 'on') {
|
||||
const promise = document.getElementById('noVNC_bell').play();
|
||||
// The standards disagree on the return value here
|
||||
if (promise) {
|
||||
|
|
Loading…
Reference in New Issue