Commit 09fc7f3
philter
chore: Refactor invalidateEffect for StrokeEffects (#11173) 05630acdb1
Refactors how invalidateEffect in StrokeEffects work. Now there are 2 code paths:
invalidateEffectsFromLocal() - this is called from the StrokeEffect itself. It calls out to ShapePaint::invalidateEffects to let it invalidate any other StrokeEffects that may need to do so. It also calls invalidateEffect on itself.
invalidateEffects() - this can be called from the StrokeEffect (via invalidateEffectsFromLocal) on itself OR by ShapePaint while in the process of determining if any other StrokeEffects should be invalidated via the call above. This adds paint dirt to the StrokeEffect along with any additional work needed when invalidating.
This prevents invalidateEffect from calling ShapePaint::invalidateEffects multiple times.
This also resolves an issue with ScriptedPathEffects in Components1 parent 37b1726 commit 09fc7f3
2 files changed
+2
-2
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
Submodule rive-runtime updated 9 files
- .rive_head+1-1
- include/rive/scripted/scripted_path_effect.hpp+5
- include/rive/shapes/paint/dash_path.hpp+5
- include/rive/shapes/paint/stroke_effect.hpp+6-1
- include/rive/shapes/paint/trim_path.hpp+5-1
- src/scripted/scripted_path_effect.cpp+6-7
- src/shapes/paint/dash_path.cpp+8-13
- src/shapes/paint/stroke_effect.cpp+34
- src/shapes/paint/trim_path.cpp+6-16
0 commit comments