Why does Safari ignore manifest.json matches when Always Allowed

366 views Asked by At

I am trying to make my WebExtension work with Safari.

Why do all content scripts get injected into every page regardless of what I set matches to in manifest.json?

{
    "name": "Search Engine Detector",
    "version": "1.0.0",
    "manifest_version": 2,
    "permissions": [ "*://*/*" ],
    "content_scripts": [ {
        "js": [ "js/Bing.js" ],
        "matches": [ "*://*.bing.com/*" ]
    }, {
        "js": [ "js/DuckDuckGo.js" ],
        "matches": [ "*://*.duckduckgo.com/*" ]
    }, {
        "js": [ "js/Google.js" ],
        "matches": [ "*://*.google.com/*" ]
    }, {
        "js": [ "js/Yahoo.js" ],
        "matches": [ "*://*.yahoo.com/*" ]
    } ]
}

To clarify, this only happens if I click 'Always Allow on Every Website' on install, or set 'For other websites' to Allow. Everything works fine if the configuration looks like this:

enter image description here

0

There are 0 answers