Refactor isExtensionUrl (#2015)

* Update isExtensionUrl to work even if the extension is unloaded

* Simplify
This commit is contained in:
toasted-nutbread 2021-11-21 12:27:29 -05:00 committed by GitHub
parent 70ac6c51f9
commit 3c798ae36d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -49,12 +49,17 @@ class Yomichan extends EventDispatcher {
constructor() {
super();
this._extensionName = 'Yomichan';
try {
const manifest = chrome.runtime.getManifest();
this._extensionName = `${manifest.name} v${manifest.version}`;
} catch (e) {
// NOP
this._extensionName = 'Yomichan';
}
try {
this._extensionUrlBase = chrome.runtime.getURL('/');
} catch (e) {
this._extensionUrlBase = null;
}
this._isBackground = null;
@ -148,11 +153,7 @@ class Yomichan extends EventDispatcher {
* @returns true if the URL is an extension URL, false otherwise.
*/
isExtensionUrl(url) {
try {
return url.startsWith(chrome.runtime.getURL('/'));
} catch (e) {
return false;
}
return this._extensionUrlBase !== null && url.startsWith(this._extensionUrlBase);
}
/**