From 0dd8dcfb6eada8aeffcb6ab2f05bbadb2c53d176 Mon Sep 17 00:00:00 2001 From: 0CalGrape Date: Thu, 23 Apr 2026 16:21:39 +0800 Subject: [PATCH] Update src/settings.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- src/settings.ts | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/settings.ts b/src/settings.ts index fa3d62e..0491d4d 100644 --- a/src/settings.ts +++ b/src/settings.ts @@ -105,17 +105,22 @@ export class OpenTabSettingsPluginSettingTab extends PluginSettingTab { 'When the limit is exceeded, the oldest opened tab is closed. ' + 'If open order cannot be determined, the leftmost tab is closed.' ) - .addText(text => - text + .addText(text => { + text.inputEl.type = 'number'; + text.inputEl.min = '0'; + text.inputEl.step = '1'; + + return text .setPlaceholder('0') .setValue(String(this.plugin.settings.maxOpenTabs)) .onChange(async (value) => { - const parsed = Number.parseInt(value.trim(), 10); + const trimmed = value.trim(); + const parsed = Number(trimmed); await this.plugin.updateSettings({ - maxOpenTabs: Number.isFinite(parsed) && parsed > 0 ? parsed : 0, + maxOpenTabs: Number.isInteger(parsed) && parsed >= 0 ? parsed : 0, }); - }) - ); + }); + }); new Setting(this.containerEl) .setName('Focus explicit new tabs')