unoplatform / uno.extensions

Libraries to ease common developer tasks associated with building multi-platform mobile, desktop and web applications using Uno Platform or WinAppSDK.
https://platform.uno/
Other
73 stars 47 forks source link

[Windows][Regions][FeedViews] FeedView remains collapsed when using Region navigation #1666

Closed Marc-Antoine-Soucy closed 1 year ago

Marc-Antoine-Soucy commented 1 year ago

Current behavior

regionfeed If you put a feedview inside a grid/autolayout managed by uen:Region, if the feedview is not in the the region which is visible when you open the page, it will not become visible unless you put a ScrollViewer around it.

Expected behavior

The feedview inside both regions should be shown when you press on it (just like on other platforms)

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

Open project 1: Notice you see only the text inside the left feedview and not the right feedview

2: Uncomment the scrollviewer on the right feedview and see that you can now see both

3: Reverse the initial visibility of the right and left feedview, notice that the inside of the right feedview is now visible and the left feedview is not visible.

unoExtensionBasicApp.zip

Important part of the code:

<utu:TabBar Margin="0,0,0,16"
                        uen:Region.Attached="True"
                        Background="{ThemeResource BackgroundBrush}"
                        Style="{StaticResource TopTabBarStyle}">
                <utu:TabBarItem x:Name="TabBarRecipeItem"
                                uen:Region.Name="MyRecipes"
                                Content="Left region"
                                Foreground="{ThemeResource OnSurfaceMediumBrush}"
                                IsSelectable="True"
                                IsSelected="True" />
                <utu:TabBarItem uen:Region.Name="Cookbooks"
                                Content="Right region"
                                Foreground="{ThemeResource OnSurfaceMediumBrush}"
                                IsSelectable="True" />
            </utu:TabBar>
            <Grid uen:Region.Attached="True"
                  uen:Region.Navigator="Visibility"
                  utu:AutoLayout.CounterAlignment="Stretch"
                  utu:AutoLayout.PrimaryAlignment="Stretch">
                <utu:AutoLayout uen:Region.Name="MyRecipes"
                                Visibility="Visible">
                    <uer:FeedView Source="{Binding Test}">
                        <DataTemplate>
                            <TextBlock Text="Left region inside feedview"
                                       FontSize="50" />
                        </DataTemplate>
                    </uer:FeedView>
                    <TextBlock Text="Left Region outside feedview"
                               FontSize="50" />
                </utu:AutoLayout>
                <utu:AutoLayout uen:Region.Name="Cookbooks"
                                Visibility="Collapsed">
                    <Grid utu:AutoLayout.PrimaryAlignment="Stretch">
                        <!--<ScrollViewer>-->
                            <uer:FeedView Source="{Binding Test}">
                                <DataTemplate>
                                    <TextBlock Text="Right region inside feedview"
                                               FontSize="50" />

                                </DataTemplate>
                            </uer:FeedView>
                        <!--</ScrollViewer>-->
                    </Grid>
                    <TextBlock Text="Right region outside feedview"
                               FontSize="50" />
                </utu:AutoLayout>
            </Grid>

Environment

Nuget Package:

<PackageVersion Include="SkiaSharp.Views.Uno.WinUI" Version="2.88.4-preview.84" />
    <PackageVersion Include="Swashbuckle.AspNetCore" Version="6.5.0" />
    <PackageVersion Include="Uno.Core.Extensions.Logging.Singleton" Version="4.0.1" />
    <PackageVersion Include="Uno.Extensions.Configuration" Version="3.0.0-dev.1968" />
    <PackageVersion Include="Uno.Extensions.Hosting" Version="2.4.2" />
    <PackageVersion Include="Uno.Extensions.Hosting.WinUI" Version="3.0.0-dev.1968" />
    <PackageVersion Include="Uno.Extensions.Http" Version="3.0.0-dev.1968" />
    <PackageVersion Include="Uno.Extensions.Http.Refit" Version="3.0.0-dev.1968" />
    <PackageVersion Include="Uno.Extensions.Localization" Version="2.4.2" />
    <PackageVersion Include="Uno.Extensions.Localization.WinUI" Version="3.0.0-dev.1968" />
    <PackageVersion Include="Uno.Extensions.Logging.OSLog" Version="1.6.0-dev.2" />
    <PackageVersion Include="Uno.Extensions.Logging.WebAssembly.Console" Version="1.6.0-dev.2" />
    <PackageVersion Include="Uno.Extensions.Logging.WinUI" Version="3.0.0-dev.1968" />
    <PackageVersion Include="Uno.Extensions.Navigation" Version="2.4.2" />
    <PackageVersion Include="Uno.Extensions.Navigation.WinUI" Version="3.0.0-dev.1968" />
    <PackageVersion Include="Uno.Extensions.Navigation.Toolkit.WinUI" Version="3.0.0-dev.1968" />
    <PackageVersion Include="Uno.Extensions.Reactive" Version="2.4.2" />
    <PackageVersion Include="Uno.Extensions.Reactive.WinUI" Version="3.0.0-dev.1968" />
    <PackageVersion Include="Uno.Extensions.Serialization" Version="2.4.2" />
    <PackageVersion Include="Uno.Extensions.Serialization.Http" Version="3.0.0-dev.1968" />
    <PackageVersion Include="Uno.Extensions.Serialization.Refit" Version="3.0.0-dev.1968" />
    <PackageVersion Include="Uno.Material.WinUI" Version="3.0.0-dev.264" />
    <PackageVersion Include="Uno.Dsp.Tasks" Version="1.1.0" />
    <PackageVersion Include="Uno.Toolkit.WinUI" Version="4.0.0-dev.52" />
    <PackageVersion Include="Uno.Extensions.Toolkit.WinUI" Version="3.0.0-dev.1957" />
    <PackageVersion Include="Uno.Toolkit.WinUI.Material" Version="4.0.0-dev.52" />
    <PackageVersion Include="Uno.Resizetizer" Version="1.2.0-dev.19" />
    <PackageVersion Include="Uno.UI.Adapter.Microsoft.Extensions.Logging" Version="5.0.0-dev.1420" />
    <PackageVersion Include="Uno.UniversalImageLoader" Version="1.9.36" />
    <PackageVersion Include="Uno.Wasm.Bootstrap" Version="8.0.0-dev.226" />
    <PackageVersion Include="Uno.Wasm.Bootstrap.DevServer" Version="8.0.0-dev.226" />
    <PackageVersion Include="Uno.Wasm.Bootstrap.Server" Version="8.0.0-dev.226" />
    <PackageVersion Include="Uno.WinUI" Version="5.0.0-dev.1420" />
    <PackageVersion Include="Uno.WinUI.RemoteControl" Version="5.0.0-dev.1420" />
    <PackageVersion Include="Uno.WinUI.Skia.Gtk" Version="5.0.0-dev.1420" />
    <PackageVersion Include="Uno.WinUI.WebAssembly" Version="5.0.0-dev.1420" />

Package Version(s):

Affected platform(s):

Visual Studio:

Relevant plugins:

Anything else we need to know?

I tried putting a Grid and Border around the feedview and it did not work.

nickrandolph commented 1 year ago

cc @dr1rrb are you able to take a look at this and work out why feedview isn't showing correctly - I seem to recall seeing similar issue back in either commerce or todo apps where we had to set the tabs to visible initially otherwise the feedview wouldn't display