SUMMARY For some reason, the cache will flush whenever the image time has changed. This isn't a deal-breaker, but it's a minor annoyance and inconsistent with the linux build. STEPS TO REPRODUCE 1. Press play to cache the animation. 2. Press stop. Cache should persist. 3. Seek to time. Cache will immediately flush, which is undesired. OBSERVED RESULT Cache flushes EXPECTED RESULT Cache should persist. In the event that a flush is required, it should only flush for the active frames' scope. SOFTWARE/OS VERSIONS Windows: 10
Git commit b9eed7ba0ed597aedb488ddc37aaa31a2a659d0e by Eoin O'Neill. Committed on 16/09/2021 at 00:00. Pushed by eoinoneill into branch 'master'. Fix frame cache invalidation with live preview on Windows. I couldn't determine why this behavior is different between windows and linux, but I was able to solve the issue. Basically, when we refresh graph async we want to block frame invalidation temporarily since we will do so later in the method manually if it's necessary. I also noticed we have a few uses of `friend class` here or there that need to eventually be cleaned up. I've made a note of it, and I will handle it once Krita 5 is officially out. M +1 -0 libs/image/kis_image_animation_interface.h M +15 -0 libs/image/kis_suspend_projection_updates_stroke_strategy.cpp M +11 -0 libs/image/kis_suspend_projection_updates_stroke_strategy.h https://invent.kde.org/graphics/krita/commit/b9eed7ba0ed597aedb488ddc37aaa31a2a659d0e
Git commit 689ff53b023342b50570a924951e9833137bdc52 by Eoin O'Neill. Committed on 20/09/2021 at 21:19. Pushed by eoinoneill into branch 'krita/5.0'. Fix frame cache invalidation with live preview on Windows. I couldn't determine why this behavior is different between windows and linux, but I was able to solve the issue. Basically, when we refresh graph async we want to block frame invalidation temporarily since we will do so later in the method manually if it's necessary. I also noticed we have a few uses of `friend class` here or there that need to eventually be cleaned up. I've made a note of it, and I will handle it once Krita 5 is officially out. (cherry picked from commit b9eed7ba0ed597aedb488ddc37aaa31a2a659d0e) M +1 -0 libs/image/kis_image_animation_interface.h M +15 -0 libs/image/kis_suspend_projection_updates_stroke_strategy.cpp M +11 -0 libs/image/kis_suspend_projection_updates_stroke_strategy.h https://invent.kde.org/graphics/krita/commit/689ff53b023342b50570a924951e9833137bdc52