-
Notifications
You must be signed in to change notification settings - Fork 6k
Fix flutter#40068 Redraw issues on resize/minimize/maximize on Windows and startup in release #20357
Conversation
|
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. Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing. |
stuartmorgan-g
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Awesome! Thanks for tracking this down and fixing it :)
stuartmorgan-g
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This version doesn't build; see CI errors.
|
Before i address final comment, confirming that the fix still works as expected with ToT |
stuartmorgan-g
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
I think you'll need to merge master again when it's green; it looks like you picked up a Linux error from the last merge.
…n Windows and startup in release (flutter/engine#20357)
…s and startup in release (flutter#20357) * Fix redraw issues * Address CR feedback. * Fix build * CR feedback
Description
This change fixes flutter/flutter#40068. The root cause of the issue was a race condition in resize and release mode startup scenarios where frame rendering operations were getting stomped on by automatic DirectX swapchain resize happening in the Angle layer.
This change disables automatic swapchain resizing in Angle and instead performs an explicit resize operation before the engine is told about size changes thus guaranteeing that the race condition isn't possible anymore.
The change fixes a related secondary issue uncovered in the ordering of rendering initialization in startup on Windows contributing to flutter/flutter#63299. An additional fix for the latter will be submitted to flutter/flutter once this change has landed.
Related Issues
flutter/flutter#63299
Tests
I added the following tests:
No behavior changed in this PR
Checklist
Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes (
[x]). This will ensure a smooth and quick review process.Breaking Change
Did any tests fail when you ran them? Please read handling breaking changes.