Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Conversation

@iskakaushik
Copy link
Contributor

@iskakaushik iskakaushik commented Jun 27, 2022

If the following is added to Info.plist of the application, it will disable partial repaint:

  <key>FLTDisablePartialRepaint</key>
  <true/>

The primary intended use case for this is to enable applications to see if disabling partial repaint helps: flutter/flutter#100522.

If the following is added to Info.plist of the application,
it will disable partial repaint:

```
  <key>FLTDisablePartialRepaint</key>
  <true/>
```

The primary intended usecase for this is to enable applications to see if disabling partial repaint resolves:
flutter/flutter#100522.
@flutter-dashboard
Copy link

It looks like this pull request may not have tests. Please make sure to add tests before merging. If you need an exemption to this rule, contact Hixie on the #hackers channel in Chat (don't just cc him here, he won't see it! He's on Discord!).

If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix?

Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing.

@zanderso
Copy link
Member

I think since this is just a temporary flag to help with debugging flutter/flutter#100522, this is okay, but in general a flag like this should be parsed along with the others in shell/platform/darwin/ios/framework/Source/FlutterDartProject.mm, and plumbed through e.g. the IOSContext object.

Copy link
Contributor

@chinmaygarde chinmaygarde left a comment

Choose a reason for hiding this comment

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

Can we just make this go through flutter::Settings? I am not sure if this should be limited to just iOS. Also, to test just the flag setter, see testEnableImpellerSettingIsCorrectlyParsed.

@iskakaushik
Copy link
Contributor Author

hey @chinmaygarde , couple of things:

  1. The issue seems to indicate that this is only happening on iOS, so I limited this to iOS.
  2. If this were a more permanent fix, I'd have wired it through IOSContext, as this is temporary to see if it helps with the problem at all, I ended up resorting to directly calling [NSBundle mainBundle], we are doing this at other places as well, for ex: platform views.

If this does indeed resolve the issue, I think we should think about a more long-term fix, maybe consider disabling DRM for all devices, or maybe focus a more involved effort in root-causing issues with DRM on iOS devices, but I'd really like to revert this if it doesn't prove to be a fix long term. Let me know if you disagree.

@chinmaygarde
Copy link
Contributor

Sound good! I LGTM'ed already.

@iskakaushik iskakaushik merged commit 0671bca into flutter:main Jun 27, 2022
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jun 27, 2022
fbcouch pushed a commit to twinsunllc/engine that referenced this pull request Jul 21, 2022
If the following is added to Info.plist of the application,
it will disable partial repaint:

```
  <key>FLTDisablePartialRepaint</key>
  <true/>
```

The primary intended usecase for this is to enable applications to see if disabling partial repaint resolves:
flutter/flutter#100522.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants