mirror of
https://github.com/mofeng-git/One-KVM.git
synced 2025-12-12 09:10:30 +08:00
workaround for chrome bug #527446
This commit is contained in:
parent
63229b0e8e
commit
bdca0e8839
@ -84,8 +84,13 @@ function Stream() {
|
|||||||
__updateStreamHeader(true);
|
__updateStreamHeader(true);
|
||||||
|
|
||||||
if (!__prev_state) {
|
if (!__prev_state) {
|
||||||
tools.info("Stream acquired");
|
var path = "/streamer/stream?t=" + new Date().getTime();
|
||||||
$("stream-image").src = "/streamer/stream?t=" + new Date().getTime();
|
if (tools.browser.is_chrome || tools.browser.is_blink) {
|
||||||
|
// uStreamer fix for https://bugs.chromium.org/p/chromium/issues/detail?id=527446
|
||||||
|
tools.info("Using advance_headers=1");
|
||||||
|
path += "&advance_headers=1";
|
||||||
|
}
|
||||||
|
$("stream-image").src = path;
|
||||||
$("stream-image").className = "stream-image-active";
|
$("stream-image").className = "stream-image-active";
|
||||||
$("stream-box").classList.remove("stream-box-inactive");
|
$("stream-box").classList.remove("stream-box-inactive");
|
||||||
$("stream-led").className = "led-green";
|
$("stream-led").className = "led-green";
|
||||||
@ -94,6 +99,7 @@ function Stream() {
|
|||||||
$("stream-quality-slider").disabled = false;
|
$("stream-quality-slider").disabled = false;
|
||||||
$("stream-reset-button").disabled = false;
|
$("stream-reset-button").disabled = false;
|
||||||
__prev_state = true;
|
__prev_state = true;
|
||||||
|
tools.info("Stream acquired");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -44,6 +44,45 @@ var tools = new function() {
|
|||||||
|
|
||||||
this.info = (...args) => console.log("LOG/INFO", ...args); // eslint-disable-line no-console
|
this.info = (...args) => console.log("LOG/INFO", ...args); // eslint-disable-line no-console
|
||||||
this.error = (...args) => console.error("LOG/ERROR", ...args); // eslint-disable-line no-console
|
this.error = (...args) => console.error("LOG/ERROR", ...args); // eslint-disable-line no-console
|
||||||
|
|
||||||
|
this.browser = new function() {
|
||||||
|
// https://stackoverflow.com/questions/9847580/how-to-detect-safari-chrome-ie-firefox-and-opera-browser/9851769
|
||||||
|
|
||||||
|
// Opera 8.0+
|
||||||
|
var is_opera = (
|
||||||
|
(!!window.opr && !!opr.addons) // eslint-disable-line no-undef
|
||||||
|
|| !!window.opera
|
||||||
|
|| (navigator.userAgent.indexOf(" OPR/") >= 0)
|
||||||
|
);
|
||||||
|
|
||||||
|
// Firefox 1.0+
|
||||||
|
var is_firefox = (typeof InstallTrigger !== "undefined");
|
||||||
|
|
||||||
|
// Safari 3.0+ "[object HTMLElementConstructor]"
|
||||||
|
var is_safari = (/constructor/i.test(window.HTMLElement) || (function (p) {
|
||||||
|
return p.toString() === "[object SafariRemoteNotification]";
|
||||||
|
})(!window["safari"] || (typeof safari !== "undefined" && safari.pushNotification))); // eslint-disable-line no-undef
|
||||||
|
|
||||||
|
// Chrome 1+
|
||||||
|
var is_chrome = (!!window.chrome && !!window.chrome.webstore);
|
||||||
|
|
||||||
|
// Blink engine detection
|
||||||
|
var is_blink = ((is_chrome || is_opera) && !!window.CSS);
|
||||||
|
|
||||||
|
// iOS browsers
|
||||||
|
// https://stackoverflow.com/questions/9038625/detect-if-device-is-ios
|
||||||
|
var is_ios = (!!navigator.platform && /iPad|iPhone|iPod/.test(navigator.platform));
|
||||||
|
|
||||||
|
return {
|
||||||
|
"is_opera": is_opera,
|
||||||
|
"is_firefox": is_firefox,
|
||||||
|
"is_safari": is_safari,
|
||||||
|
"is_chrome": is_chrome,
|
||||||
|
"is_blink": is_blink,
|
||||||
|
"is_ios": is_ios,
|
||||||
|
};
|
||||||
|
};
|
||||||
|
this.info("Browser:", this.browser);
|
||||||
};
|
};
|
||||||
|
|
||||||
var $ = (id) => document.getElementById(id);
|
var $ = (id) => document.getElementById(id);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user