app: add "direct" parameter to gimp_projection_flush_now()
Add a boolean "direct" parameter to gimp_projection_flush_now(), which specifies if the projection buffer should only be invalidated (FALSE), or rendered directly (TRUE). Pass TRUE when flushing the projection during painting, so that the affected regions are rendered in a single step, instead of tile-by- tile. We previously only invalidated the projection buffer, but since we synchronously flush the display right after that, the invalidated regions would still get rendered, albeit less efficiently. Likewise, pass TRUE when benchmarking the projection through the debug action, and avoid flushing the display, to more accurately measure the render time.
Showing with 19 additions and 15 deletions