Is it possible to clip rendering at the display level?

What do you want to achieve?

I’d like to stop updating a region of the display during the transition from one screen to another.

What have you tried so far?

I’ve tried hacking in a mask at the display driver, but this isn’t terrific because we still spend time rendering the status bar. I think at a higher level we could save that render time in addition to the transfer time.

Edit: was able to hack lv_refr.c’s refr_invalid_areas to allow me to do this in LVGLv8. Perhaps you know a better way?

Screenshot and/or video

Please consider this mock-up as two regions: a status-bar, and a main-content region. Many of our screens have this, but not all. When transitioning between two screens, and both have status-bar, I’d like to skip rendering & sending the status bar area to the LCD, and animate only the main-content region.

image