Repository navigation
chore(🤖): add shown, a loop-off state and a frame-rate readout to the TransparencyMode diagnostic - #545
Open
YevheniiKotyrlo wants to merge 1 commit into
Conversation
YevheniiKotyrlo
added a commit
to YevheniiKotyrlo/react-native-webgpu-evidence
that referenced
this pull request
Oct 16, 2026
Contributor
Author
… TransparencyMode diagnostic The loop's off state presents nothing, so a remount shows what is on screen before a first frame. shown hides the canvas, mounts it again while hidden, so it is configured before its surface exists, and reveals it. The hide/show button reads mounted, with its test id unchanged, and the screen reads out the frames presented per second.
YevheniiKotyrlo
force-pushed
the
chore/example-transparency-mode-scenes
branch
from
October 18, 2026 19:56
c468715 to
a43502b
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.




Problem
TransparencyMode holds every Android backing view,
opaque, a remount and the loop's cadence, but its loop always presents, so it cannot show what a canvas shows before its first frame, and it cannot configure a canvas before its surface exists; reproducing either takes a screen of its own.Solution
off, which presents nothing, so a remount shows what is on screen before a first frame. The screen reads out the frames presented per second.shownhides the canvas, mounts it again while hidden — configured before its surface exists — and reveals it.mounted, sinceshownnow hides without unmounting; its test id is unchanged.mountedandshowncarry the names of react-native-skia's AndroidViews switches (wcandillon/react-native-skia#4252).Verification
yarn lint·yarn tsc· the package and web-template builds ·yarn test:plugin·yarn check-dawn·yarn build:docs. On a Galaxy S23 (Android 14), a release build opening TransparencyMode: each control does what it says, and with the loop off aSurfaceViewthat remounts stays a black hole until a first frame, the case #561 fixes (screenshots in the comment below). On a Galaxy S23 (Android 14) the whole suite passes, 222 of 222, as onmainc080934e. On an iPad Pro 12.9-inch (4th generation, iOS 27.0.1), built and run as CI's iOS job does on a simulator (Debug build, Metro withCI=true), it passed 221 of 221 before the rebase onto #574 (main8f664fca: 221 of 221).