Defer redraw of timeline content#1737
Conversation
|
I will start reviewing this now |
There was a problem hiding this comment.
Overall the changes looks good, although with additional cache logic now, we're definitely getting to the point where the next time we're touching the timelinecells class, we should refactor it beforehand.. it's getting to the point where it's difficult to understand changes and the control flow.
I noticed a bug which was introduced with the new cache logic
- When right-clicking on the camera keyframe, the menu appears but the frame is not filled with white, which indicates that the frame is highlighted. The fix seems to be to add mRedrawContent to true in the showCameraMenu, so the repaint happens.
The rest of the changes looks good, and nice to see some well deserved clean up too 👍
I'd like to see the bug fixed but otherwise I only have one comment regarding the clearCache method being removed.
|
I addressed both of your remarks, PTAL
Agreed. |
|
Changes looks good to me now, merging. |
Based on my findings from when I profiled the performance issue in #1724, I changed the timeline to redraw its contents only in response to a paint event rather than every single time in updateContent() (which is triggered by all sorts of operations throughout the program) and also made the existing caching mechanism a bit more aggressive while I was at it.
Additional changes: