Fix photo stripes and keep GIF playback off the UI thread.

Use cover/stretch display, solid sample assets, core0 GIF decode without blocking touch, and always-commit project rule.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-10-19 18:18:03 +08:00
parent 800e168b98
commit 6cf42d56a7
14 changed files with 337 additions and 178 deletions

View File

@@ -11,6 +11,9 @@ void photo_view_deinit();
// Decode entry into half-res RGB565 canvas (160x120, shown 2x).
bool photo_view_show(const PhotoEntry *entry);
// Abort GIF worker immediately so touch/switch stays responsive.
void photo_view_stop();
const lv_image_dsc_t *photo_view_dsc();
uint16_t photo_view_canvas_w();
uint16_t photo_view_canvas_h();
@@ -18,5 +21,5 @@ uint16_t photo_view_img_w();
uint16_t photo_view_img_h();
bool photo_view_is_gif();
// Advance GIF frame if due; returns true when pixels changed.
// Publish a ready GIF frame to the visible canvas (non-blocking).
bool photo_view_gif_tick();