(file)
| 2119 | |
| 2120 | /** |
| 2121 | * Sets up font mode toggle controls and listeners. |
| 2122 | * Toggles between sans-serif and serif fonts in the chat area. |
| 2123 | */ |
| 2124 | setupFontModeControls() { |
| 2125 | const fontModeToggle = document.getElementById('font-mode-toggle'); |
| 2126 | if (!fontModeToggle) return; |
| 2127 | |
| 2128 | // Sync initial visual state with persistent preferences. |
| 2129 | preferencesStore.getPreference(PREF_KEYS.fontMode).then((fontMode) => { |
| 2130 | document.documentElement.classList.toggle('serif-mode', fontMode === 'serif'); |
| 2131 | this.updateFontModeControls(); |
| 2132 | }); |
| 2133 | |
| 2134 | preferencesStore.onChange((key, value) => { |
| 2135 | if (key !== PREF_KEYS.fontMode) return; |
| 2136 | document.documentElement.classList.toggle('serif-mode', value === 'serif'); |
| 2137 | this.updateFontModeControls(); |
| 2138 | }); |
no test coverage detected