feat: metadata overlay tweaks — location badge, rounded corners, translucent option
- Location gets its own badge in the lower-left corner (separate from the main date/time/people/camera badge at the configured position) - All overlay badges now use rounded corners (radius 4px) via fillRoundRect instead of fillRect - New setting: 'Translucent background?' checkbox in web UI When enabled, badge backgrounds use a checkerboard pattern (every other pixel black) instead of solid black, creating a 50% opacity effect that lets the underlying image show through - Refactored all badge drawing through a single drawOverlayBadge() helper (metadata, sleep indicator, battery indicator) Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -63,6 +63,7 @@ void displayTask(void* param) {
|
||||
Settings s = settingsManager.get();
|
||||
imagePipeline.setPipelineMode(static_cast<PipelineMode>(s.pipeline_mode));
|
||||
imagePipeline.setBlueNoiseEnabled(s.dither_noise != 0);
|
||||
displayManager.setTranslucent(s.meta_translucent != 0);
|
||||
unsigned long intervalMs = s.interval_min * 60000UL;
|
||||
|
||||
bool shouldRefresh = false;
|
||||
@@ -246,10 +247,11 @@ void timerWakeCycle() {
|
||||
return;
|
||||
}
|
||||
|
||||
// Initialize Immich client and apply pipeline mode
|
||||
// Initialize Immich client and apply pipeline/display modes
|
||||
immichClient.begin(s.immich_url, s.immich_key);
|
||||
imagePipeline.setPipelineMode(static_cast<PipelineMode>(s.pipeline_mode));
|
||||
imagePipeline.setBlueNoiseEnabled(s.dither_noise != 0);
|
||||
displayManager.setTranslucent(s.meta_translucent != 0);
|
||||
|
||||
// Fetch a small batch of random assets
|
||||
static constexpr int TIMER_WAKE_RETRIES = 5;
|
||||
|
||||
Reference in New Issue
Block a user