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

New Expander control causes LayoutCycle exception in winui 2.6 preview #4255

Closed
lhak opened this issue Feb 19, 2021 · 6 comments · Fixed by #4495
Closed

New Expander control causes LayoutCycle exception in winui 2.6 preview #4255

lhak opened this issue Feb 19, 2021 · 6 comments · Fixed by #4495
Assignees
Labels
area-Expander team-Controls Issue for the Controls team
Milestone

Comments

@lhak
Copy link

lhak commented Feb 19, 2021

Describe the bug

Testing the new Expander control and it causes LayoutCycle exceptions if a ListView is added to it.

Steps to reproduce the bug

Steps to reproduce the behavior:

  1. Use the repro project
  2. Scroll up and down with a touchpad
  3. After a few second it will crash with a LayoutCycle exception.

Expected behavior

Screenshots

Version Info

NuGet package version:

[Microsoft.UI.Xaml.2.6.0-prerelease.210217002]

Windows app type:

UWP Win32
Yes
Windows 10 version Saw the problem?
Insider Build (xxxxx)
October 2020 Update (19042) Yes
May 2020 Update (19041)
November 2019 Update (18363)
May 2019 Update (18362)
October 2018 Update (17763)
April 2018 Update (17134)
Fall Creators Update (16299)
Creators Update (15063)
Device form factor Saw the problem?
Desktop Yes
Xbox
Surface Hub
IoT

Additional context

ExpanderLayoutCycle.zip

@ghost ghost added the needs-triage Issue needs to be triaged by the area owners label Feb 19, 2021
@lhak lhak changed the title New Expander control causes LayoutCycle in winui 2.6 preview New Expander control causes LayoutCycle exception in winui 2.6 preview Feb 19, 2021
@StephenLPeters StephenLPeters added area-Expander team-Controls Issue for the Controls team and removed needs-triage Issue needs to be triaged by the area owners labels Feb 20, 2021
@StephenLPeters StephenLPeters added this to the WinUI 2.6 milestone Feb 20, 2021
@StephenLPeters
Copy link
Contributor

@ranjeshj FYI

@ranjeshj
Copy link
Contributor

@lhak I don't have a touch pad to test out right now, but it didn't repro with mouse. Few questions to help isolate the issue. Does it repo with keyboard/mouse or is it only when using touch pad ? Does removing the expander and just having the listview alone make it repro/not repro ? Expander is quite simple when it comes to layout, so I'm wondering if the issue is in ListView.

@ranjeshj ranjeshj added the needs-author-feedback Asked author to supply more information. label Feb 21, 2021
@lhak
Copy link
Author

lhak commented Feb 22, 2021

@ranjeshj I have updated the sample so that it also triggers when the expander is opened and closed very quickly with a mouse click. Two observations I have made:

  • I can only reproduce it with display scaling set to 125%
  • I cannot reproduce it if I set the UseLayoutRounding property of the expander content to false

ExpanderLayoutCycle2.zip

@ghost ghost added needs-triage Issue needs to be triaged by the area owners and removed needs-author-feedback Asked author to supply more information. labels Feb 22, 2021
@StephenLPeters
Copy link
Contributor

@gegao18 FYI

@StephenLPeters StephenLPeters added team-Rendering Issue for the Rendering team and removed team-Controls Issue for the Controls team labels Feb 23, 2021
@StephenLPeters
Copy link
Contributor

Moving to rendering because of the display scaling component

@robloo
Copy link
Contributor

robloo commented Mar 2, 2021

I just reproduced this in the MUXControlsTestApp with #4394 applied (also 125% display scaling).

Expanders are now within a ScrollViewer on the test page since there are too many expanders to show at once. When some controls are expanded, and then the mouse scroll wheel is used, layout cycle crash occurs.

gifexample

This is definitely a show stopper.

RBrid added a commit that referenced this issue Mar 11, 2021
@ranjeshj ranjeshj removed needs-triage Issue needs to be triaged by the area owners team-Rendering Issue for the Rendering team labels Mar 12, 2021
@ghost ghost added the needs-triage Issue needs to be triaged by the area owners label Mar 12, 2021
@ranjeshj ranjeshj added team-Controls Issue for the Controls team and removed needs-triage Issue needs to be triaged by the area owners labels Mar 12, 2021
@ghost ghost added the working on it label Mar 12, 2021
RBrid added a commit that referenced this issue Mar 13, 2021
* Workaround for Issue #4255

* Adding ScrollViewer control template

* Using DefaultScrollViewerStyle in ScrollView test page

* Fixing test failures

* Fixing NavigationView verification files
@ghost ghost removed the working on it label Mar 13, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-Expander team-Controls Issue for the Controls team
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants