Skip to content

Conversation

@dreddy-work
Copy link
Member

@dreddy-work dreddy-work commented Nov 1, 2022

fixes: #8087

In PermonitorV2 mode applications, when moving the Form from one monitor to the other, Form gets an invalid display rectangle for a brief period during the scaling of its child controls. Updating anchors, because of layout, during this period would end up invalid anchor calculations. For all scaling scenarios due to DPI changed event, we will be scaling anchors and avoid/skip recalculation of anchors to prevent using this invalid display rect.

Following is the snippet where we see invalid DisplayRect of the Form for a brief period while moving from one monitor to the other.

Invalid state:
image

Final state:

image

Amending #7956

Microsoft Reviewers: Open in CodeFlow

In PermonitorV2 mode applications, when moving the Form from one monitor to the other, Form gets an invalid display rectangle for a brief period during the scaling of its child controls. Updating anchors, because of layout, during this period would end up invalid
anchor calculations. For all scaling scenarios due to DPI changed event, we will be scaling anchors and avoid/skip recalculation of anchors and prevent using this invalid display rect.

Following is the snippet where we see invalid DisplayRect of the Form for a brief period while moving from one monitor to the other.
@dreddy-work dreddy-work requested a review from a team as a code owner November 1, 2022 17:08
@ghost ghost assigned dreddy-work Nov 1, 2022
Copy link
Contributor

@Tanya-Solyanik Tanya-Solyanik left a comment

Choose a reason for hiding this comment

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

Looks good.
How does this change affect your perf results?
Had you tested this change in apps where the anchored control is a container itself?

@RussKie RussKie added the waiting-author-feedback The team requires more information from the author label Nov 2, 2022
@ghost ghost removed the waiting-author-feedback The team requires more information from the author label Nov 2, 2022
@dreddy-work
Copy link
Member Author

Had you tested this change in apps where the anchored control is a container itself?

Yes. Form with Panel with anchored controls. And panel is anchored to Form. Works as expected.

@dreddy-work dreddy-work enabled auto-merge (squash) November 2, 2022 18:53
@dreddy-work dreddy-work merged commit d365769 into main Nov 2, 2022
@dreddy-work dreddy-work deleted the dev/dreddy/fixANchorsInPermonV2mode branch November 2, 2022 19:55
@ghost ghost added this to the 8.0 Preview1 milestone Nov 2, 2022
@ghost ghost locked as resolved and limited conversation to collaborators Dec 3, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Tacking issue: Anchors in PermonV2 mode become invalid

4 participants