From af1b66c6b7ca731392573e840747d3206ef6ee50 Mon Sep 17 00:00:00 2001 From: Timo <6156589+Shik3i@users.noreply.github.com> Date: Sun, 12 Jul 2026 17:43:20 +0200 Subject: [PATCH] fix: support multi-digit plus notification badges while preserving large numeric titles --- extension/title-privacy.js | 2 +- scripts/test-title-privacy.mjs | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/extension/title-privacy.js b/extension/title-privacy.js index 29addda..8c2aac6 100644 --- a/extension/title-privacy.js +++ b/extension/title-privacy.js @@ -19,7 +19,7 @@ export function normalizeSendTabTitle(sendTabTitle, legacyMode = TITLE_PRIVACY_M export function normalizeTabTitle(title) { if (typeof title !== 'string') return null; - const normalized = title.replace(/^\s*(?:\(\d{1,2}\+?\)|\[\d{1,2}\+?\])\s+/, '').trim(); + const normalized = title.replace(/^\s*(?:\((?:\d{1,2}|\d+\+)\)|\[(?:\d{1,2}|\d+\+)\])\s+/, '').trim(); return normalized.length > 0 ? normalized : null; } diff --git a/scripts/test-title-privacy.mjs b/scripts/test-title-privacy.mjs index 6993d3a..eb87981 100644 --- a/scripts/test-title-privacy.mjs +++ b/scripts/test-title-privacy.mjs @@ -19,7 +19,11 @@ assert.equal(normalizeSendTabTitle(false, TITLE_PRIVACY_MODES.FULL), false); assert.equal(normalizeTabTitle('(12) Testvideo - YouTube'), 'Testvideo - YouTube'); assert.equal(normalizeTabTitle('[7] Testvideo - YouTube'), 'Testvideo - YouTube'); assert.equal(normalizeTabTitle('(99+) Testvideo - YouTube'), 'Testvideo - YouTube'); +assert.equal(normalizeTabTitle('(999+) Testvideo - YouTube'), 'Testvideo - YouTube'); +assert.equal(normalizeTabTitle('[999+] Testvideo - YouTube'), 'Testvideo - YouTube'); assert.equal(normalizeTabTitle('(500) Days of Summer'), '(500) Days of Summer'); +assert.equal(normalizeTabTitle('(101) Days of Summer'), '(101) Days of Summer'); +assert.equal(normalizeTabTitle('[101] Days of Summer'), '[101] Days of Summer'); assert.equal(normalizeTabTitle(' '), null); assert.equal(sanitizeTabTitle('Private Tab', true), 'Private Tab');