• Ivan Matkov's avatar
    Adoption of `RenderNode` approach (#1014) · 09dae793
    Ivan Matkov authored
    It is a simplified adoption of Android's `RenderNode`.
    
    ```kt
    /**
     * <p>RenderNode is used to build hardware accelerated rendering hierarchies. Each RenderNode
     * contains both a display list as well as a set of properties that affect the rendering of the
     * display list. RenderNodes are used internally for all Views by default and are not typically
     * used directly.</p>
     *
     * <p>RenderNodes are used to divide up the rendering content of a complex scene into smaller
     * pieces that can then be updated individually more cheaply. Updating part of the scene only needs
     * to update the display list or properties of a small number of RenderNode instead of redrawing
     * everything from scratch. A RenderNode only needs its display list re-recorded when its content
     * alone should be changed. RenderNodes can also be transformed without re-recording the display
     * list through the transform properties.</p>
     ```
     
     This is a more correct approach to make `GraphicsLayer` in Compose invalidation independently.
     - Moved drawing callback to C++ side to avoid extra interop costs
     - Switched from `SkPicture` placeholder to custom `SkDrawable` implementation
    09dae793
Name
Last commit
Last update
.github Loading commit data...
.run Loading commit data...
gradle/wrapper Loading commit data...
samples Loading commit data...
skiko Loading commit data...
.gitignore Loading commit data...
DEVELOPMENT.md Loading commit data...
LICENSE Loading commit data...
NOTICE Loading commit data...
README.md Loading commit data...
gradle.properties Loading commit data...
gradlew Loading commit data...
gradlew.bat Loading commit data...
settings.gradle.kts Loading commit data...