diff --git a/manifest/beta-manifest-extra.json b/manifest/beta-manifest-extra.json index ad44ea07..023e2efe 100644 --- a/manifest/beta-manifest-extra.json +++ b/manifest/beta-manifest-extra.json @@ -1,4 +1,4 @@ { - "name": "__MSG_betaName__" + "name": "BETA - SponsorBlock" } \ No newline at end of file diff --git a/manifest/firefox-beta-manifest-extra.json b/manifest/firefox-beta-manifest-extra.json new file mode 100644 index 00000000..0ce98c0c --- /dev/null +++ b/manifest/firefox-beta-manifest-extra.json @@ -0,0 +1,8 @@ +{ + "browser_specific_settings": { + "gecko": { + "id": "sponsorBlockerBETA@ajay.app" + } + } +} + \ No newline at end of file diff --git a/manifest/manifest.json b/manifest/manifest.json index 5e25732d..9b46873a 100644 --- a/manifest/manifest.json +++ b/manifest/manifest.json @@ -1,7 +1,7 @@ { "name": "__MSG_fullName__", "short_name": "__MSG_Name__", - "version": "1.2.16", + "version": "1.2.17", "default_locale": "en", "description": "__MSG_Description__", "content_scripts": [{ diff --git a/public/_locales/en/messages.json b/public/_locales/en/messages.json index 0e655c82..b49c0bce 100644 --- a/public/_locales/en/messages.json +++ b/public/_locales/en/messages.json @@ -423,9 +423,6 @@ "whatUnlistedCheck": { "message": "This setting will significantly slow down SponsorBlock. Sponsor lookups require sending the video ID to the server. If you are concerned about unlisted video IDs being sent over the internet, enable this option." }, - "betaName": { - "message": "BETA - SponsorBlock" - }, "mobileUpdateInfo": { "message": "m.youtube.com is now supported" } diff --git a/src/content.ts b/src/content.ts index dcf8395f..65a31f6b 100644 --- a/src/content.ts +++ b/src/content.ts @@ -44,6 +44,9 @@ var lastPreviewBarUpdate; //whether the duration listener listening for the duration changes of the video has been setup yet var durationListenerSetUp = false; +// Has a zero second sponsor been skipped yet +var skippedZeroSecond = false; + //the channel this video is about var channelURL; @@ -247,6 +250,8 @@ function resetValues() { //reset sponsor data found check sponsorDataFound = false; + + skippedZeroSecond = false; } async function videoIDChange(id) { @@ -455,6 +460,8 @@ function startSponsorSchedule(currentTime?: number): void { let skippingFunction = () => { if (video.currentTime >= skipTime[0] && video.currentTime < skipTime[1]) { + if (currentTime == 0) skippedZeroSecond = true; + skipToTime(video, skipInfo.index, skipInfo.array, skipInfo.openNotice); } @@ -562,7 +569,7 @@ function sponsorsLookup(id: string, channelIDPromise?) { } } - if (zeroSecondSponsor) { + if (zeroSecondSponsor && !skippedZeroSecond) { startSponsorSchedule(0); } else { startSponsorSchedule(); diff --git a/webpack/webpack.manifest.js b/webpack/webpack.manifest.js index 7f8e1f3b..63c82cdf 100644 --- a/webpack/webpack.manifest.js +++ b/webpack/webpack.manifest.js @@ -9,6 +9,7 @@ const manifest = require("../manifest/manifest.json"); const firefoxManifestExtra = require("../manifest/firefox-manifest-extra.json"); const chromeManifestExtra = require("../manifest/chrome-manifest-extra.json"); const betaManifestExtra = require("../manifest/beta-manifest-extra.json"); +const firefoxBetaManifestExtra = require("../manifest/firefox-beta-manifest-extra.json"); // schema for options object const schema = { @@ -46,6 +47,10 @@ class BuildManifest { if (this.options.stream === "beta") { mergeObjects(manifest, betaManifestExtra); + + if (this.options.browser.toLowerCase() === "firefox") { + mergeObjects(manifest, firefoxBetaManifestExtra); + } } let result = JSON.stringify(manifest);