Closed Itai-Nelken closed 2 years ago
Can confirm, pretty spooky. Stopwatch doesn't even need to be running, the app just needs to be open. EDIT: This happens with other apps too, so it isn't an issue with stopwatch.
Honestly, I'm clueless on this one so far. The way the timer gets opened is mostly identical to how notification previews are. Those don't break. I also don't see a pattern in which apps show the issue and which don't. Works: Clock, Screen List, Quick Settings, Steps, Meter, System Info, Display Timeouts, Wake up, Time Format Doesn't work: Stopwatch, Music, Settings List, Heart Rate, Navigation, Paint, Pong Additionally, some apps don't work on older branches but do on current develop.
I can also confirm this bug, the display remained shifted up until I rebooted.
Wow that's not good! Is there an easy way to reproduce this issue? On which versions/commit does this happen?
Easy way to reproduce bug:
I confirm that this doesn't happen with the 2048 and accelerometer apps.
@hamblingreen thanks for the procedure! I can indeed reproduce the issue! This is kind of funny result :D We probably have a issue (data race?) around the hardware scrolling implementation (https://github.com/JF002/InfiniTime/blob/develop/src/displayapp/LittleVgl.cpp#L83)
Not sure if this is the right place, but this bug is still present in 1.3.0 of InfiniTime. At least I could reliably reproduce it on my sealed PineTime.
New way to reproduce something similar:
This must come down to how LVGL is drawing to the screen (see https://docs.lvgl.io/master/overview/drawing.html) and the comments at #466.
I think the scrolling behaviour needs a bit of a rethink and should probably use lv_scr_load_anim https://docs.lvgl.io/latest/en/html/overview/display.html#_CPPv416lv_scr_load_animP8lv_obj_t18lv_scr_load_anim_t8uint32_t8uint32_tb
Can confirm (as expected) not fixed by 1.4
Still an issue on 1.6.0.
Can yall try #731 ?
Still an issue on v1.8
Setting a timer and then starting the stopwatch causes the image to shift up when the timer opens when it ends.