Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: Fix disappearing text on TextBoxComponent for larger pixelRatios #2540

Merged
merged 1 commit into from May 17, 2023

Conversation

luanpotter
Copy link
Member

@luanpotter luanpotter commented May 17, 2023

Description

When updating to the new Flutter & Flame version I was forced to revisit the occurences of window.pixelRatio and realized there is actually a bug on TextBoxComponent for certain pixelRatios (depending on the size of the Canvas).

The bug only manifests after a certain pixelRatio for each base size because while the canvas is created with the unscaled size, it does appear to be able to "render" outside of it's bounds for the most times. However I imagine there must be some optimization under the hood, and after a certain size increment, the rendering is void.

Checklist

  • I have followed the Contributor Guide when preparing my PR.
  • I have updated/added tests for ALL new/updated/fixed functionality.
  • I have updated/added relevant documentation in docs and added dartdoc comments with ///.
  • I have updated/added relevant examples in examples or docs.

Breaking Change?

  • Yes, this PR is a breaking change.
  • No, this PR is not a breaking change.

Comment on lines +249 to +250
scaledSize.x.ceil(),
scaledSize.y.ceil(),
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this was also wrong - width and height would be referring to the previous this.size and not the parameter size witch is the new size. but this was not the source of the issue in my case

game.addAll([
TextBoxComponent(
text: 'quickly',
pixelRatio: 8,
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this was more than enough to cause issues to me.
on my application anything more than 2.51 was causing issues.
the test seems to be a little more lenient - it appears to be dependent on the actual size of the canvas

@luanpotter luanpotter marked this pull request as ready for review May 17, 2023 05:10
Copy link
Member

@spydon spydon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lgtm!

@luanpotter luanpotter merged commit 6e1d546 into main May 17, 2023
7 checks passed
@luanpotter luanpotter deleted the luan.fix-box-component branch May 17, 2023 14:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants