mirror of
https://github.com/qbittorrent/qBittorrent
synced 2025-07-14 01:03:08 -07:00
Fixed Web UI compatibility with Safari
This commit is contained in:
parent
12fff1b966
commit
165b33a94e
4 changed files with 124 additions and 12 deletions
|
@ -22,6 +22,116 @@
|
|||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
// Debug
|
||||
//alert(navigator.userAgent);
|
||||
|
||||
// From http://www.quirksmode.org/js/detect.html
|
||||
var BrowserDetect = {
|
||||
init: function () {
|
||||
this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
|
||||
//this.version = this.searchVersion(navigator.userAgent)
|
||||
// || this.searchVersion(navigator.appVersion)
|
||||
// || "an unknown version";
|
||||
//this.OS = this.searchString(this.dataOS) || "an unknown OS";
|
||||
},
|
||||
searchString: function (data) {
|
||||
for (var i=0;i<data.length;i++) {
|
||||
var dataString = data[i].string;
|
||||
var dataProp = data[i].prop;
|
||||
this.versionSearchString = data[i].versionSearch || data[i].identity;
|
||||
if (dataString) {
|
||||
if (dataString.indexOf(data[i].subString) != -1)
|
||||
return data[i].identity;
|
||||
}
|
||||
else if (dataProp)
|
||||
return data[i].identity;
|
||||
}
|
||||
},
|
||||
dataBrowser: [
|
||||
{
|
||||
string: navigator.userAgent,
|
||||
subString: "Chrome",
|
||||
identity: "Chrome"
|
||||
},
|
||||
{
|
||||
string: navigator.userAgent,
|
||||
subString: "Epiphany",
|
||||
identity: "Epiphany"
|
||||
},
|
||||
{
|
||||
string: navigator.userAgent,
|
||||
subString: "Arora",
|
||||
identity: "Arora"
|
||||
},
|
||||
{
|
||||
string: navigator.userAgent,
|
||||
subString: "midori",
|
||||
identity: "Midori"
|
||||
},
|
||||
{
|
||||
string: navigator.userAgent,
|
||||
subString: "OmniWeb",
|
||||
versionSearch: "OmniWeb/",
|
||||
identity: "OmniWeb"
|
||||
},
|
||||
{
|
||||
string: navigator.vendor,
|
||||
subString: "Apple",
|
||||
identity: "Safari",
|
||||
versionSearch: "Version"
|
||||
},
|
||||
{
|
||||
prop: window.opera,
|
||||
identity: "Opera"
|
||||
},
|
||||
{
|
||||
string: navigator.vendor,
|
||||
subString: "iCab",
|
||||
identity: "iCab"
|
||||
},
|
||||
{
|
||||
string: navigator.vendor,
|
||||
subString: "KDE",
|
||||
identity: "Konqueror"
|
||||
},
|
||||
{
|
||||
string: navigator.userAgent,
|
||||
subString: "Firefox",
|
||||
identity: "Firefox"
|
||||
},
|
||||
{
|
||||
string: navigator.vendor,
|
||||
subString: "Camino",
|
||||
identity: "Camino"
|
||||
},
|
||||
{ // for newer Netscapes (6+)
|
||||
string: navigator.userAgent,
|
||||
subString: "Netscape",
|
||||
identity: "Netscape"
|
||||
},
|
||||
{
|
||||
string: navigator.userAgent,
|
||||
subString: "MSIE",
|
||||
identity: "Explorer",
|
||||
versionSearch: "MSIE"
|
||||
},
|
||||
{
|
||||
string: navigator.userAgent,
|
||||
subString: "Gecko",
|
||||
identity: "Mozilla",
|
||||
versionSearch: "rv"
|
||||
},
|
||||
{ // for older Netscapes (4-)
|
||||
string: navigator.userAgent,
|
||||
subString: "Mozilla",
|
||||
identity: "Netscape",
|
||||
versionSearch: "Mozilla"
|
||||
}
|
||||
]
|
||||
|
||||
};
|
||||
BrowserDetect.init();
|
||||
|
||||
myTable = new dynamicTable();
|
||||
ajaxfn = function(){};
|
||||
setSortedColumn = function(index){
|
||||
|
@ -206,8 +316,10 @@ window.addEvent('load', function(){
|
|||
}
|
||||
};
|
||||
ajaxfn();
|
||||
loadTransferInfo();
|
||||
// ajaxfn.periodical(5000);
|
||||
if(BrowserDetect.browser != "Safari") {
|
||||
// Safari has trouble with this
|
||||
loadTransferInfo();
|
||||
}
|
||||
|
||||
setFilter = function(f) {
|
||||
// Visually Select the right filter
|
||||
|
@ -229,14 +341,6 @@ function closeWindows() {
|
|||
MochaUI.closeAll();
|
||||
}
|
||||
|
||||
// This runs when a person leaves your page.
|
||||
|
||||
//window.addEvent('unload', function(){
|
||||
// if (MochaUI && Browser.Engine.trident != true) {
|
||||
// MochaUI.garbageCleanUp();
|
||||
// }
|
||||
//});
|
||||
|
||||
window.addEvent('keydown', function(event){
|
||||
if (event.key == 'a' && event.control) {
|
||||
event.stop();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue