Description
v0.2.112 ships the final piece of issue #130: VideoDecoderRenderer and StreamView now fill bounds directly. Stream resolution comes from device native screen pixels (UIWindowScene.screen.nativeBounds), stream AR = device AR = no scaling.
Test steps (follow testbook step 7 and 9b):
1. Mercator Talks (portrait) from cheeky-cactus to cosmic-pretzel-98. Screenshot via GET /api/v1/heads/node-8acd8c19/screenshot. Expected: full portrait UI visible, no crops, no bars. Sunshine log on cosmic: Desktop resolution [1640x2360].
2. Landscape experience (rupelmonde-castle or similar). Expected: fills screen, no bars, Sunshine log shows landscape native dimensions [2360x1640].
3. Touch accuracy: tap UI elements in Mercator, targets should respond under the finger with no coordinate offset.
Pass criteria: no bars on any edge, no UI cropping, Sunshine log shows device native resolution (not 1080x1920), touch targets accurate.