Fix round transition for legacy apps - #2105
Merged
jplexer merged 2 commits intoSep 18, 2026
Merged
Conversation
The bezel and shift copies clear each row of the update rect with a memset whose length is end_x - start_x. On round displays a rect whose origin lies to the right of a row's max_x makes that negative, which memset takes as a huge size_t. All callers so far happened to stay inside the row range; guard the loops so new callers can pass arbitrary rects safely. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Signed-off-by: Joshua Jun <lets@throw.rocks>
The round-display modal push and flip-pop transitions fill the app area with g_compositor_transitions_app_fb_draw_implementation, whose line fillers copy app framebuffer pixels 1:1 at display coordinates. That is only right when the app framebuffer matches the display. A legacy 3x watchface on gabbro/getafix renders into a 180x180 buffer, so during a notification dismiss (or push) the face was drawn unscaled at the top-left instead of centred in its bezel or scaled, and the rest of the circle was left with whatever the modal had drawn. Route those fills through compositor_scaled_app_fb_copy(), which applies the configured bezel or scaling mode, whenever the app framebuffer size differs from the display. Native apps keep the existing fast path with antialiased edge blending. Verified by compiling the compositor for qemu_gabbro and getafix@dvt2; not yet checked on hardware. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Signed-off-by: Joshua Jun <lets@throw.rocks>
jplexer
marked this pull request as ready for review
September 18, 2026 09:23
gmarull
approved these changes
Sep 18, 2026
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.
No description provided.