mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-06 15:58:39 +09:00
Dactyloidae iOS initial commit
This commit is contained in:
parent
daa6179d22
commit
7154a0497e
2123 changed files with 197052 additions and 0 deletions
94
mobile/ios/Client/Assets/NoImageModeHelper.js
Normal file
94
mobile/ios/Client/Assets/NoImageModeHelper.js
Normal file
|
|
@ -0,0 +1,94 @@
|
|||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
(function() {
|
||||
"use strict";
|
||||
|
||||
if (!window.__firefox__) {
|
||||
Object.defineProperty(window, '__firefox__', {
|
||||
enumerable: false,
|
||||
configurable: false,
|
||||
writable: false,
|
||||
value: {}
|
||||
});
|
||||
}
|
||||
|
||||
Object.defineProperty(window.__firefox__, 'NoImageMode', {
|
||||
enumerable: false,
|
||||
configurable: false,
|
||||
writable: false,
|
||||
value: { enabled: false }
|
||||
});
|
||||
|
||||
var className = "__firefox__NoImageMode";
|
||||
|
||||
function initializeStyleSheet () {
|
||||
var noImageCSS = "*{background-image:none !important;}img,iframe{visibility:hidden !important;}";
|
||||
var newCss = document.getElementById(className);
|
||||
if (!newCss) {
|
||||
var cssStyle = document.createElement("style");
|
||||
cssStyle.type = "text/css";
|
||||
cssStyle.id = className;
|
||||
cssStyle.appendChild(document.createTextNode(noImageCSS));
|
||||
document.documentElement.appendChild(cssStyle);
|
||||
} else {
|
||||
newCss.innerHTML = noImageCSS;
|
||||
}
|
||||
}
|
||||
|
||||
Object.defineProperty(window.__firefox__.NoImageMode, 'setEnabled', {
|
||||
enumerable: false,
|
||||
configurable: false,
|
||||
writable: false,
|
||||
value: function(enabled) {
|
||||
if (enabled === window.__firefox__.NoImageMode.enabled) {
|
||||
return;
|
||||
}
|
||||
window.__firefox__.NoImageMode.enabled = enabled;
|
||||
if (enabled) {
|
||||
initializeStyleSheet();
|
||||
return;
|
||||
}
|
||||
|
||||
// Disable no image mode //
|
||||
|
||||
// It would be useful to also revert the changes we've made, rather than just to prevent any more images from being loaded
|
||||
var style = document.getElementById(className);
|
||||
if (style) {
|
||||
style.remove();
|
||||
}
|
||||
|
||||
[].slice.apply(document.getElementsByTagName('img')).forEach(function(el) {
|
||||
var src = el.src;
|
||||
el.src = '';
|
||||
el.src = src;
|
||||
});
|
||||
|
||||
[].slice.apply(document.querySelectorAll('[style*="background"]')).forEach(function(el) {
|
||||
var backgroundImage = el.style.backgroundImage;
|
||||
el.style.backgroundImage = 'none';
|
||||
el.style.backgroundImage = backgroundImage;
|
||||
});
|
||||
|
||||
[].slice.apply(document.styleSheets).forEach(function(styleSheet) {
|
||||
[].slice.apply(styleSheet.rules || []).forEach(function(rules) {
|
||||
var style = rules.style;
|
||||
if (!style) {
|
||||
return;
|
||||
}
|
||||
|
||||
var backgroundImage = style.backgroundImage;
|
||||
style.backgroundImage = 'none';
|
||||
style.backgroundImage = backgroundImage;
|
||||
});
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
window.addEventListener("DOMContentLoaded", function (event) {
|
||||
window.__firefox__.NoImageMode.setEnabled(window.__firefox__.NoImageMode.enabled);
|
||||
});
|
||||
|
||||
})();
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue