feat: recently added albums, timeline scrubber, soft delete & trash

- Smart albums: "Last 7 days" and "Last 30 days" filter by date_imported
- Timeline scrubber: fixed right-edge year bar with click-to-jump navigation
- Soft delete: trash photos from lightbox; restore or permanently delete from Trash view
- EXIF columns: iso, aperture, shutter_speed, focal_length, lens_model
- Bulk actions: star/unstar and add-to-album with multi-select
- Download original button in lightbox toolbar
- EXIF detail expansion in detail panel

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
nmemmertandClaude Sonnet 4.6 committed 2026-08-18 15:14:59 -04:00
1 parent 51c752602a
commit d35836131a
10 files changed
+367 -32

No files matched your search

+2
View File
@@ -120,7 +120,9 @@ export function openDb(dbPath) {
try { db.exec('ALTER TABLE photos ADD COLUMN shutter_speed TEXT'); } catch {}
try { db.exec('ALTER TABLE photos ADD COLUMN focal_length REAL'); } catch {}
try { db.exec('ALTER TABLE photos ADD COLUMN lens_model TEXT'); } catch {}
try { db.exec('ALTER TABLE photos ADD COLUMN deleted INTEGER NOT NULL DEFAULT 0'); } catch {}
db.exec('CREATE INDEX IF NOT EXISTS idx_photos_starred ON photos(starred)');
db.exec('CREATE INDEX IF NOT EXISTS idx_photos_deleted ON photos(deleted)');
db.exec('CREATE INDEX IF NOT EXISTS idx_photos_place_city ON photos(place_city)');
db.exec('CREATE INDEX IF NOT EXISTS idx_photos_media_type ON photos(media_type)');