feat: add collapse-on-article-open setting

- Add collapseOnArticleOpen setting (default: true)
- Position as first setting in settings panel
- Auto-collapse bookmark bar when user opens an article
- User can disable this behavior in settings
This commit is contained in:
Gigi
2025-10-05 02:31:23 +01:00
parent f8c8ab5402
commit 35aa9d6cce
3 changed files with 20 additions and 0 deletions

View File

@@ -133,6 +133,12 @@ const Bookmarks: React.FC<BookmarksProps> = ({ relayPool, onLogout }) => {
setSelectedUrl(url)
setReaderLoading(true)
setReaderContent(undefined)
// Collapse sidebar if setting is enabled (default true)
if (settings.collapseOnArticleOpen !== false) {
setIsCollapsed(true)
}
try {
const content = await fetchReadableContent(url)
setReaderContent(content)

View File

@@ -37,6 +37,19 @@ const Settings: React.FC<SettingsProps> = ({ settings, onSave, onClose, isSaving
</div>
<div className="settings-content">
<div className="setting-group">
<label htmlFor="collapseOnArticleOpen" className="checkbox-label">
<input
id="collapseOnArticleOpen"
type="checkbox"
checked={localSettings.collapseOnArticleOpen !== false}
onChange={(e) => setLocalSettings({ ...localSettings, collapseOnArticleOpen: e.target.checked })}
className="setting-checkbox"
/>
<span>Collapse bookmark bar when opening an article</span>
</label>
</div>
<div className="setting-group">
<label htmlFor="defaultViewMode">Default View Mode</label>
<select

View File

@@ -9,6 +9,7 @@ import { Account } from 'applesauce-accounts'
const SETTINGS_IDENTIFIER = 'com.dergigi.boris.user-settings'
export interface UserSettings {
collapseOnArticleOpen?: boolean
defaultViewMode?: 'compact' | 'cards' | 'large'
showUnderlines?: boolean
sidebarCollapsed?: boolean