diff --git a/sidepanel/sidepanel.js b/sidepanel/sidepanel.js index f9748f8..fc445a6 100644 --- a/sidepanel/sidepanel.js +++ b/sidepanel/sidepanel.js @@ -7846,7 +7846,6 @@ selectHeroSmsAcquirePriority?.addEventListener('change', () => { }); inputHeroSmsMaxPrice?.addEventListener('input', () => { markSettingsDirty(true); - scheduleSettingsAutoSave(); }); inputHeroSmsMaxPrice?.addEventListener('blur', () => { inputHeroSmsMaxPrice.value = normalizeHeroSmsMaxPriceValue(inputHeroSmsMaxPrice.value); diff --git a/tests/sidepanel-phone-verification-settings.test.js b/tests/sidepanel-phone-verification-settings.test.js index cd7c5c1..13d2abd 100644 --- a/tests/sidepanel-phone-verification-settings.test.js +++ b/tests/sidepanel-phone-verification-settings.test.js @@ -319,3 +319,14 @@ return { collectSettingsPayload }; assert.equal(payload.heroSmsCountryLabel, 'Thailand'); assert.deepStrictEqual(payload.heroSmsCountryFallback, [{ id: 16, label: 'United Kingdom' }]); }); + +test('hero sms max price input does not auto-save partial typing states', () => { + assert.match( + sidepanelSource, + /inputHeroSmsMaxPrice\?\.\s*addEventListener\('input',\s*\(\)\s*=>\s*\{\s*markSettingsDirty\(true\);\s*\}\);/ + ); + assert.doesNotMatch( + sidepanelSource, + /inputHeroSmsMaxPrice\?\.\s*addEventListener\('input',\s*\(\)\s*=>\s*\{\s*markSettingsDirty\(true\);\s*scheduleSettingsAutoSave\(\);/ + ); +});