Safari compatibility

main
Elbert Alias 5 years ago
parent 0302eba2f4
commit 9d77cd5b48

@ -97,7 +97,6 @@ const Content = {
* @param {Array} technologies * @param {Array} technologies
*/ */
onGetTechnologies(technologies = []) { onGetTechnologies(technologies = []) {
console.log({ technologies })
// Inject a script tag into the page to access methods of the window object // Inject a script tag into the page to access methods of the window object
const script = document.createElement('script') const script = document.createElement('script')

@ -72,7 +72,7 @@ const Driver = {
if (previous === null) { if (previous === null) {
open('https://www.wappalyzer.com/installed') open('https://www.wappalyzer.com/installed')
} else if (version !== previous && upgradeMessage) { } else if (version !== previous && upgradeMessage) {
// open(`https://www.wappalyzer.com/upgraded?v${version}`, false) open(`https://www.wappalyzer.com/upgraded?v${version}`, false)
} }
await setOption('version', version) await setOption('version', version)

@ -163,24 +163,15 @@
* @param {String} responseMessage * @param {String} responseMessage
*/ */
sendToBackground: function(message, event, responseMessage) { sendToBackground: function(message, event, responseMessage) {
if (typeof chrome !== 'undefined') { chrome.runtime.sendMessage(message, (message) => {
var port = chrome.runtime.connect({ name: 'adparser' }) if (message && typeof message.tracking_enabled !== 'undefined') {
if (message.tracking_enabled) {
port.onMessage.addListener((message) => { utilCallback()
if (message && typeof message.tracking_enabled !== 'undefined') { } else {
if (message.tracking_enabled) { utilElseCallback()
utilCallback() }
} else { }
utilElseCallback() })
}
}
})
port.postMessage(message)
} else if (window.self.port) {
window.self.port.on(responseMessage, onResponse)
window.self.port.emit(event, message)
}
}, },
/** /**
@ -1446,15 +1437,11 @@
* @param {Function} callback * @param {Function} callback
*/ */
function addBackgroundListener(event, callback) { function addBackgroundListener(event, callback) {
if (typeof chrome !== 'undefined') { chrome.runtime.onMessage.addListener(function(msg) {
chrome.runtime.onMessage.addListener(function(msg) { if (msg.event === event) {
if (msg.event === event) { callback(msg)
callback(msg) }
} })
})
} else if (window.self.port) {
window.self.port.on(event, callback)
}
} }
exports.coordinator = { exports.coordinator = {
@ -1541,7 +1528,7 @@
;(function(adparser, pageUrl) { ;(function(adparser, pageUrl) {
function onAdFound(log) { function onAdFound(log) {
adparser.sendToBackground( adparser.sendToBackground(
{ func: 'onAd', args: [log] }, { source: 'iframe.js', func: 'onAd', args: [log] },
'onAd', 'onAd',
'', '',
function() {} function() {}

@ -730,20 +730,18 @@
} }
); );
chrome.runtime.onConnect.addListener((port) => { chrome.runtime.onMessage.addListener((message, sender, callback) => {
port.onMessage.addListener((message) => { if ( message === 'is_tracking_enabled' ) {
if ( message === 'is_tracking_enabled' ) { ifTrackingEnabled(
ifTrackingEnabled( sender.tab,
port.sender.tab, function() {
function() { try {callback({'tracking_enabled': true});}
try {port.postMessage({'tracking_enabled': true});} catch(err) {} },
catch(err) {} }, function() {
function() { try {callback({'tracking_enabled': false});}
try {port.postMessage({'tracking_enabled': false});} catch(err) {} }
catch(err) {} } );
); }
} return true;
return true; });
});
});
})(); })();

@ -1,6 +1,6 @@
'use strict' 'use strict'
/* eslint-env browser */ /* eslint-env browser */
/* globals Utils */ /* globals chrome, Utils */
const { i18n, getOption, setOption } = Utils const { i18n, getOption, setOption } = Utils
@ -36,6 +36,12 @@ const Options = {
}) })
}) })
if (!chrome.pageAction.show) {
document
.querySelector('[data-i18n="optionDynamicIcon"]')
.parentNode.remove()
}
i18n() i18n()
} }
} }

@ -68,4 +68,4 @@
"https://*/*" "https://*/*"
], ],
"content_security_policy": "script-src 'self'; object-src 'self'" "content_security_policy": "script-src 'self'; object-src 'self'"
} }