unoplatform / uno

Open-source platform for building cross-platform native Mobile, Web, Desktop and Embedded apps quickly. Create rich, C#/XAML, single-codebase apps from any IDE. Hot Reload included! 90m+ NuGet Downloads!!
https://platform.uno
Apache License 2.0
8.87k stars 717 forks source link

`PipsPager` not rendering the same everytime #11068

Closed ghost closed 10 months ago

ghost commented 1 year ago

Current behavior

PipsPager is not rendering all pips everytime. Sometimes, it renders just the first pip (marker) and doesn't render the rest. If you change the code to force a refresh, sometimes it renders correctly. image

Expected behavior

Should work the same way everytime.

image

How to reproduce it (as minimally and precisely as possible)

I just added the following code to the default code in Playground home page.

The attributes doesn't matter. Even when you just add a single pipspager with at least NumberOfPages > 0 (to have more than one pip) it will fail sometimes...

https://playground.platform.uno/#c1aa23a3

<muxc:PipsPager x:Name="DefaultPipsPager" NumberOfPages="4" Background="Orange" Orientation="Vertical" PipsPagerButtonVisibility="Visible" Style="{StaticResource PipsPager}" />

Environment

Playground website at 2023-01-26

Nuget Package:

Package Version(s):

Affected platform(s):

Visual Studio

Relevant plugins

ramezgerges commented 10 months ago

Seems fixed to me. Maybe someone else should verify as well in case the repro is not consistent

morning4coffe-dev commented 10 months ago

@ramezgerges When the NumberOfPages is set to the original 4, I can no longer replicate this issue also. But when you set it to something like 20, it starts to break again:

http://playground.platform.uno/#4f006ad8

https://github.com/unoplatform/uno/assets/78549750/a336e964-29f6-4540-b711-6c6bf6c7962f

ramezgerges commented 10 months ago

@morning4coffe-dev nice catch. Just tested on canary, it's fixed on master through #14595. I forgot to handle the vertical case so I also submitted #14839. Thanks.