cancel
Showing results for 
Search instead for 
Did you mean: 

Why does TouchGFX invalidate immediately issue draw?

Lvan .2
Associate

According to the documentation, widgets are only redrawn once in the 'render' phase:

https://support.touchgfx.com/docs/basic-concepts/rendering#render

However, when I call `invalidate` on a widget from a function that is not the `tick`, it is immediately redrawn, as can be seen in the following stack trace:

0693W00000GWU71QAH.png 

I would say this is not according to what the documentation mentions. It can be a major inefficiency in the framework, as multiple calls to invalidate now also call `flushFrameBuffer` multiple times, which in turn updates the screen at an irregular frequency. Furthermore, it poses a major problem to our GUI, as it now accesses the external resources at an irregular interval. Note that this only happens when we call `invalidate` from outside the `tick`.

Is it possible to correctly implement this in the TouchGFX framework, such that a call to `invalidate` from outside the `tick` does not immediately result in `draw`, but instead is deferred to the `render` phase as documented?

0 REPLIES 0