feat: Shared SKPicture recording#21189
Conversation
There was a problem hiding this comment.
Pull Request Overview
This pull request introduces shared SKPicture recording functionality to optimize rendering across different Skia-based platforms. The changes centralize picture recording logic and improve the separation of concerns between rendering and path generation.
- Adds a new
RecordPictureAndReturnPathmethod to centralize SKPicture recording - Refactors existing path calculation methods to support both inverted and non-inverted paths
- Updates platform-specific renderers to use the new shared recording mechanism
Reviewed Changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
| src/Uno.UI/Helpers/SkiaRenderHelper.skia.cs | Adds shared picture recording method and refactors path generation logic |
| src/Uno.UI.Runtime.Skia.X11/Rendering/X11XamlRootHost.Rendering.cs | Updates to use new shared recording mechanism |
| src/Uno.UI.Runtime.Skia.WebAssembly.Browser/Rendering/BrowserRenderer.cs | Refactors rendering pipeline to use shared recording and separates concerns |
| src/Uno.UI.Runtime.Skia.MacOS/UI/Xaml/Window/MacOSWindowHost.cs | Updates to use new shared recording mechanism |
src/Uno.UI.Runtime.Skia.WebAssembly.Browser/Rendering/BrowserRenderer.cs
Outdated
Show resolved
Hide resolved
src/Uno.UI.Runtime.Skia.MacOS/UI/Xaml/Window/MacOSWindowHost.cs
Outdated
Show resolved
Hide resolved
|
🤖 Your Docs stage site is ready! Visit it here: https://unodocsprstaging.z13.web.core.windows.net/pr-21189/docs/index.html |
|
🤖 Your WebAssembly Skia Sample App stage site is ready! Visit it here: https://unowasmprstaging.z20.web.core.windows.net/pr-21189/wasm-skia-net9/index.html |
f9cea87 to
260754b
Compare
|
🤖 Your Docs stage site is ready! Visit it here: https://unodocsprstaging.z13.web.core.windows.net/pr-21189/docs/index.html |
|
🤖 Your WebAssembly Skia Sample App stage site is ready! Visit it here: https://unowasmprstaging.z20.web.core.windows.net/pr-21189/wasm-skia-net9/index.html |
src/Uno.UI.Runtime.Skia.MacOS/UI/Xaml/Window/MacOSWindowHost.cs
Outdated
Show resolved
Hide resolved
src/Uno.UI.Runtime.Skia.MacOS/UI/Xaml/Window/MacOSWindowHost.cs
Outdated
Show resolved
Hide resolved
|
🤖 Your Docs stage site is ready! Visit it here: https://unodocsprstaging.z13.web.core.windows.net/pr-21189/docs/index.html |
|
🤖 Your WebAssembly Skia Sample App stage site is ready! Visit it here: https://unowasmprstaging.z20.web.core.windows.net/pr-21189/wasm-skia-net9/index.html |
|
🤖 Your Docs stage site is ready! Visit it here: https://unodocsprstaging.z13.web.core.windows.net/pr-21189/docs/index.html |
|
🤖 Your Docs stage site is ready! Visit it here: https://unodocsprstaging.z13.web.core.windows.net/pr-21189/docs/index.html |
|
/azp run |
|
Azure Pipelines successfully started running 2 pipeline(s). |
|
🤖 Your WebAssembly Skia Sample App stage site is ready! Visit it here: https://unowasmprstaging.z20.web.core.windows.net/pr-21189/wasm-skia-net9/index.html |
|
🤖 Your Docs stage site is ready! Visit it here: https://unodocsprstaging.z13.web.core.windows.net/pr-21189/docs/index.html |
c18d6bb to
fe53ab4
Compare
|
🤖 Your WebAssembly Skia Sample App stage site is ready! Visit it here: https://unowasmprstaging.z20.web.core.windows.net/pr-21189/wasm-skia-net9/index.html |
|
🤖 Your Docs stage site is ready! Visit it here: https://unodocsprstaging.z13.web.core.windows.net/pr-21189/docs/index.html |
409bc91 to
e2a50a6
Compare
|
🤖 Your Docs stage site is ready! Visit it here: https://unodocsprstaging.z13.web.core.windows.net/pr-21189/docs/index.html |
|
🤖 Your WebAssembly Skia Sample App stage site is ready! Visit it here: https://unowasmprstaging.z20.web.core.windows.net/pr-21189/wasm-skia-net9/index.html |
|
The build 173268 found UI Test snapshots differences: Details
|
|
@Mergifyio backport release/stable/6.2 |
✅ Backports have been createdDetails
|
…6.2/pr-21189 feat: Shared `SKPicture` recording (backport #21189)
GitHub Issue: closes https://github.com/unoplatform/uno-private/issues/1427, closes #21130
PR Type: 🐞 Bugfix
What is the current behavior? 🤔
What is the new behavior? 🚀
PR Checklist ✅
Please check if your PR fulfills the following requirements:
Screenshots Compare Test Runresults.Other information ℹ️