diff --git a/src/components/settings/AgentClientSettingTab.ts b/src/components/settings/AgentClientSettingTab.ts index cf5b85a..f04b4a5 100644 --- a/src/components/settings/AgentClientSettingTab.ts +++ b/src/components/settings/AgentClientSettingTab.ts @@ -204,6 +204,23 @@ export class AgentClientSettingTab extends PluginSettingTab { return currentFontSize === null ? "" : String(currentFontSize); }; + const persistChatFontSize = async ( + fontSize: number | null, + ): Promise => { + if (this.plugin.settings.displaySettings.fontSize === fontSize) { + return; + } + + const nextSettings = { + ...this.plugin.settings, + displaySettings: { + ...this.plugin.settings.displaySettings, + fontSize, + }, + }; + await this.plugin.saveSettingsAndNotify(nextSettings); + }; + text .setPlaceholder( `${CHAT_FONT_SIZE_MIN}-${CHAT_FONT_SIZE_MAX}`, @@ -211,14 +228,7 @@ export class AgentClientSettingTab extends PluginSettingTab { .setValue(getCurrentDisplayValue()) .onChange(async (value) => { if (value.trim().length === 0) { - const hasChanged = - this.plugin.settings.displaySettings.fontSize !== - null; - if (hasChanged) { - this.plugin.settings.displaySettings.fontSize = - null; - await this.plugin.saveSettings(); - } + await persistChatFontSize(null); return; } @@ -244,9 +254,7 @@ export class AgentClientSettingTab extends PluginSettingTab { this.plugin.settings.displaySettings.fontSize !== parsedFontSize; if (hasChanged) { - this.plugin.settings.displaySettings.fontSize = - parsedFontSize; - await this.plugin.saveSettings(); + await persistChatFontSize(parsedFontSize); } }); @@ -268,9 +276,7 @@ export class AgentClientSettingTab extends PluginSettingTab { this.plugin.settings.displaySettings.fontSize !== parsedFontSize; if (hasChanged) { - this.plugin.settings.displaySettings.fontSize = - parsedFontSize; - void this.plugin.saveSettings(); + void persistChatFontSize(parsedFontSize); } return; } diff --git a/styles.css b/styles.css index c72cd79..90e4ceb 100644 --- a/styles.css +++ b/styles.css @@ -751,7 +751,7 @@ If your plugin does not need CSS, delete this file. padding: 12px; box-sizing: border-box; font-family: inherit; - font-size: var(--font-text-size); + font-size: var(--ac-chat-font-size); line-height: var(--line-height-normal); /* Text wrapping */ white-space: pre-wrap;