Files
immish/docs/settings.md

327 lines
9.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Settings
The app provides extensive customization through the settings page.
## Settings Structure
```
Settings
├── Preferences
├── Timeline Display
├── Asset Viewer
├── Backup
├── Free Up Space
├── Networking
├── Notifications
├── Language
├── Advanced
└── Sync Status (Beta)
```
## Settings Page Layout
**Mobile Layout:**
List of settings cards, each navigates to a sub-page.
**Tablet Layout:**
Split view with category list on left, selected settings on right.
```
┌──────────────────────────────────────────┐
│ Settings │
├──────────────┬───────────────────────────┤
│ │ │
│ Preferences │ [Selected Category │
│ Timeline │ Settings Content] │
│ Asset Viewer │ │
│ Backup │ │
│ ... │ │
│ │ │
└──────────────┴───────────────────────────┘
```
## Preferences
General app behavior settings.
### Theme Settings
| Setting | Options | Default | Description |
|---------|---------|---------|-------------|
| Theme Mode | Light / Dark / System | System | App color scheme |
| Primary Color | Color presets | Default | Accent color |
| Dynamic Theme | On / Off | Off | Use system dynamic colors |
| Colorful Interface | On / Off | On | Apply color to more UI elements |
### Interaction Settings
| Setting | Options | Default | Description |
|---------|---------|---------|-------------|
| Haptic Feedback | On / Off | On | Vibration on interactions |
### Read-Only Mode
| Setting | Options | Default | Description |
|---------|---------|---------|-------------|
| Enable Read-Only | On / Off | Off | Disable modifications |
When enabled:
- Cannot edit assets
- Cannot delete assets
- Cannot create albums
- Can still browse and view
## Timeline Display
Customize how photos appear in the timeline.
### Grid Layout
| Setting | Options | Default | Description |
|---------|---------|---------|-------------|
| Tiles Per Row | 2-6 | 4 | Number of columns |
| Dynamic Layout | On / Off | Off | Variable tile sizes |
| Show Storage Indicator | On / Off | On | Show local/remote icon |
### Grouping
| Setting | Options | Default | Description |
|---------|---------|---------|-------------|
| Group Assets By | None / Day / Month | Day | How to group photos |
### Album Sort
| Setting | Options | Default | Description |
|---------|---------|---------|-------------|
| Album Sort Order | Title / Created / Modified | Modified | Sort albums by |
| Sort Direction | Ascending / Descending | Descending | Sort order |
| Album View | List / Grid | List | Album display style |
## Asset Viewer
Settings for the full-screen photo/video viewer.
### Image Loading
| Setting | Options | Default | Description |
|---------|---------|---------|-------------|
| Load Preview | On / Off | On | Load preview quality |
| Load Original | On / Off | Off | Load full resolution |
| Prefer Remote | On / Off | Off | Prefer server image |
### Video Settings
| Setting | Options | Default | Description |
|---------|---------|---------|-------------|
| Auto Play | On / Off | On | Play video automatically |
| Loop Video | On / Off | On | Repeat video |
| Load Original Video | On / Off | Off | Load full quality video |
### Navigation
| Setting | Options | Default | Description |
|---------|---------|---------|-------------|
| Tap to Navigate | On / Off | Off | Tap sides to go prev/next |
## Backup Settings
Control automatic photo backup.
### Foreground Backup
| Setting | Options | Default | Description |
|---------|---------|---------|-------------|
| Enable Backup | On / Off | Off | Upload photos to server |
| Use Cellular (Photos) | On / Off | Off | Upload photos on cellular |
| Use Cellular (Videos) | On / Off | Off | Upload videos on cellular |
### Background Backup
| Setting | Options | Default | Description |
|---------|---------|---------|-------------|
| Background Backup | On / Off | Off | Upload when app closed |
| Require WiFi | On / Off | On | Only on WiFi |
| Require Charging | On / Off | Off | Only when charging |
| Trigger Delay | Minutes | 30 | Wait before starting |
### Notification Settings
| Setting | Options | Default | Description |
|---------|---------|---------|-------------|
| Total Progress | On / Off | On | Show overall progress |
| Single Progress | On / Off | Off | Show per-file progress |
| Error Grace Period | Number | 2 | Errors before notification |
### Album Selection
Select which device albums to back up:
```
┌─────────────────────────────────┐
│ Backup Albums │
├─────────────────────────────────┤
│ [✓] Camera Roll │
│ [✓] Screenshots │
│ [ ] Downloads │
│ [ ] WhatsApp Images │
│ [] Excluded Album │
└─────────────────────────────────┘
[✓] = Include in backup
[ ] = Not selected
[] = Explicitly excluded
```
## Free Up Space
Remove local copies of backed-up assets.
### Filter Options
| Setting | Options | Default | Description |
|---------|---------|---------|-------------|
| Keep Favorites | On / Off | On | Don't remove favorites |
| Keep Media Type | All / Photos / Videos | All | Which to keep |
| Keep in Albums | Album list | None | Keep assets in albums |
| Cutoff Days | Number | All | Only remove older than |
### Cleanup Process
1. Calculate removable assets
2. Show preview of space to be freed
3. Confirm with user
4. Remove local files
5. Keep server copies intact
## Networking
Network and connection settings.
### Server Configuration
| Setting | Description |
|---------|-------------|
| Server URL | Primary server address |
| Local Endpoint | LAN server address |
| Preferred WiFi | WiFi name for local endpoint |
| External Endpoints | List of external addresses |
### Auto Endpoint Switching
When enabled:
1. Check current WiFi name
2. If matches preferred WiFi → use local endpoint
3. Otherwise → use external endpoint
4. Fall back on connection failure
### SSL/TLS Settings
| Setting | Options | Default | Description |
|---------|---------|---------|-------------|
| Allow Self-Signed | On / Off | Off | Accept self-signed certs |
| Client Certificate | File | None | mTLS client certificate |
### Custom Headers
Add custom HTTP headers for proxy authentication:
```
Header Name: X-Custom-Auth
Header Value: token123
```
## Notifications
Control app notifications.
| Setting | Description |
|---------|-------------|
| Backup Progress | Show backup progress notifications |
| Backup Complete | Notify when backup finishes |
| Backup Errors | Notify on upload failures |
## Language
Change app display language.
- System default
- Manual language selection
- List of supported languages
## Advanced
Developer and troubleshooting options.
### Troubleshooting
| Setting | Options | Default | Description |
|---------|---------|---------|-------------|
| Advanced Logging | On / Off | Off | Detailed debug logs |
| Log Level | Info-Severe | Info | Minimum log level |
### Platform-Specific
**Android:**
| Setting | Options | Default | Description |
|---------|---------|---------|-------------|
| Manage Local Media | On / Off | Off | Request full media access |
| Photo Manager Filter | On / Off | On | Custom media filtering |
**iOS:**
| Setting | Options | Default | Description |
|---------|---------|---------|-------------|
| Ignore iCloud Assets | On / Off | Off | Skip iCloud-only photos |
### Experimental
| Setting | Options | Default | Description |
|---------|---------|---------|-------------|
| Beta Timeline | On / Off | On | Use new timeline sync |
| Sync Albums | On / Off | Off | Sync device albums |
### Cache Management
- Clear thumbnail cache
- Clear preview cache
- View cache size
- Reset all caches
### Data Management
- Export logs
- Reset settings
- Clear local data
- Sign out and clear
## Sync Status (Beta)
When beta timeline is enabled, shows sync status:
### Status Information
- Last sync time
- Sync state (idle/syncing/error)
- Number of synced assets
- Pending changes
### Actions
- Force full sync
- Reset sync state
- View sync logs
## Settings Persistence
Settings are saved to local storage immediately on change:
1. User changes setting
2. Update in-memory state
3. Persist to Store
4. Reflect in UI
Settings sync is local-only - each device maintains its own settings.
---
[Previous: Local Storage](local-storage.md) | [Next: Error Handling](error-handling.md)