dotnet / dotnet/maui

Shell.FlyoutFooterTemplate doesn't display Grid control

Open
#9,685 6 comments 0 reactions 0 assignees View on GitHub
area-controls-shell area-layout platform/ios s/triaged s/verified t/bug
Dominant language
C#
Stars
23.3k
Forks
2k
Avg merge
1d 15h
Merged PRs (30d)
290

Description

### Description

Grid control not showing in the Shell.FlyoutFooterTemplate

### Steps to Reproduce

1. Create new .Net MAUI application.
2. Set Shell.FlyoutBehavior="Flyout"
3. Add Shell.FlyoutFooterTemplate/DataTemplate/Grid
4. Grid will not be displayed.
5. GitHub repo that reproducing the issue: [https://github.com/belmonmi/AppShellFooter](url)

### Version with bug

6.0.408

### Last version that worked well

Unknown/Other

### Affected platforms

iOS, I was *not* able test on other platforms

### Affected platform versions

iOS 15.5

### Did you find any workaround?

No

### Relevant log output

```shell
2022-08-26 10:11:35.462542-0500 AppShellFooter[803:904782]
Options:
2022-08-26 10:11:35.462693-0500 AppShellFooter[803:904782] --bool-flag (Example)
type: bool default: false
2022-08-26 10:11:35.462806-0500 AppShellFooter[803:904782] --aot-lazy-assembly-load (Load assemblies referenced by AOT images lazily)
type: bool default: false
Resolved pending breakpoint for 'AppShellFooter.Program.Main(System.String[])' to C:\Projects\iNet6\Mobile\Test\Issues\AppShellFooter\AppShellFooter\Platforms\iOS\Program.cs:10 [0x00000].
Resolved pending breakpoint for 'Xamarin.HotReload.HotReloadAgent.BreakpointSendToIde(System.String)' to D:\a\_work\1\s\HotReload\Source\Xamarin.HotReload.Agent\HotReloadAgent.cs:419 [0x00000].
Resolved pending breakpoint for 'Xamarin.HotReload.HotReloadAgent.BreakpointCheckpoint()' to D:\a\_work\1\s\HotReload\Source\Xamarin.HotReload.Agent\HotReloadAgent.cs:414 [0x00000].
2022-08-26 10:11:37.677046-0500 AppShellFooter[803:904782] SecTaskLoadEntitlements failed error=22 cs_flags=200, pid=803
2022-08-26 10:11:37.677349-0500 AppShellFooter[803:904782] SecTaskCopyDebugDescription: AppShellFooter[803]/0#-1 LF=0
2022-08-26 10:11:37.684128-0500 AppShellFooter[803:904782] SecTaskLoadEntitlements failed error=22 cs_flags=200, pid=803
2022-08-26 10:11:37.684395-0500 AppShellFooter[803:904782] SecTaskCopyDebugDescription: AppShellFooter[803]/0#-1 LF=0
Thread started: #2
Thread started: #3
Thread started: #4
2022-08-26 10:11:38.800035-0500 AppShellFooter[803:904782] SecTaskLoadEntitlements failed error=22 cs_flags=200, pid=803
2022-08-26 10:11:38.800303-0500 AppShellFooter[803:904782] SecTaskCopyDebugDescription: AppShellFooter[803]/0#-1 LF=0
2022-08-26 10:11:38.894043-0500 AppShellFooter[803:904782] [TableView] Warning once only: UITableView was told to layout its visible cells and other contents without being in the view hierarchy (the table view or one of its superviews has not been added to a window).
This may cause bugs by forcing views inside the table view to load and perform layout without accurate information (e.g. table view bounds, trait collection, layout margins, safe area insets, etc),
and will also cause unnecessary performance overhead due to extra layout passes.
Make a symbolic breakpoint at UITableViewAlertForLayoutOutsideViewHierarchy to catch this in the debugger and see what caused this to occur, so you can avoid this action altogether if possible,
or defer it until the table view has been added to a window.
Table view: <_UIMoreListTableView: 0x7fb45f153600; frame = (0 0; 0 0); clipsToBounds = YES; gestureRecognizers = ; layer = ; contentOffset: {0, 0}; contentSize: {0, 0}; adj
ustedContentInset: {0, 0, 0, 0}; dataSource: >
Thread started: .NET Timers #5
Thread started: #6
Thread started: .NET ThreadPool Gate #7
Thread started: #8
Thread started: #9
Thread started: #10
Thread started: #11
Thread started: #12
Thread started: #13
Thread started: #14
2022-08-26 10:11:43.601408-0500 AppShellFooter[803:904812] Warning: observer object was not disposed manually with Dispose()
2022-08-26 10:11:43.601692-0500 AppShellFooter[803:904812] Warning: observer object was not disposed manually with Dispose()
```

Contributor guide

Open the contributing guide

Research direction

Start by running the linked AppShellFooter reproduction on iOS 15.5 with .NET MAUI 6.0.408, following the listed Shell.FlyoutFooterTemplate and Grid steps. Compare the footer's behavior with the expected display and use the reproduction to locate the affected Shell UI path; done means the Grid appears in the flyout footer.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp, ios
Domain
frontend, mobile-dev
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
50/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.