From 984f0124afe76bc86cf5d646ba07a76cb6ec7c1f Mon Sep 17 00:00:00 2001 From: Niels Laute Date: Thu, 20 Mar 2025 20:51:45 +0100 Subject: [PATCH 1/2] Styling fixes to the LABS tag --- CommunityToolkit.App.Shared/Styles/Buttons.xaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/CommunityToolkit.App.Shared/Styles/Buttons.xaml b/CommunityToolkit.App.Shared/Styles/Buttons.xaml index 2ec6102f..f79ed483 100644 --- a/CommunityToolkit.App.Shared/Styles/Buttons.xaml +++ b/CommunityToolkit.App.Shared/Styles/Buttons.xaml @@ -1,4 +1,4 @@ - - + @@ -447,12 +447,12 @@ - From 466faa92798d896f3c0c97fb90b08aa9d22e50a2 Mon Sep 17 00:00:00 2001 From: Niels Laute Date: Thu, 20 Mar 2025 20:52:34 +0100 Subject: [PATCH 2/2] Setting DisplayMode to Top for NavView --- .../Helpers/NavigationViewHelper.cs | 37 +++---------------- CommunityToolkit.App.Shared/Pages/Shell.xaml | 3 +- 2 files changed, 8 insertions(+), 32 deletions(-) diff --git a/CommunityToolkit.App.Shared/Helpers/NavigationViewHelper.cs b/CommunityToolkit.App.Shared/Helpers/NavigationViewHelper.cs index 8c1c0aa3..7c8aca87 100644 --- a/CommunityToolkit.App.Shared/Helpers/NavigationViewHelper.cs +++ b/CommunityToolkit.App.Shared/Helpers/NavigationViewHelper.cs @@ -14,25 +14,18 @@ public static class NavigationViewHelper foreach (var navData in categoryData) { - // Make subcategories - var subcategoryData = GenerateSubcategoryNavItems(navData.SampleMetadata ?? Enumerable.Empty()); + var samplesBySubcategory = navData.SampleMetadata!.GroupBy(x => x.Subcategory) + .OrderBy(g => g.Key.ToString()); - foreach (var subcategoryItemData in subcategoryData) + foreach (var subcategoryGroup in samplesBySubcategory) { - // Make samples - var sampleNavigationItems = GenerateSampleNavItems(subcategoryItemData.SampleMetadata ?? Enumerable.Empty()); - subcategoryItemData.NavItem.MenuItems.Add(new MUXC.NavigationViewItemSeparator()); - foreach (var item in sampleNavigationItems) + navData.NavItem.MenuItems.Add(new MUXC.NavigationViewItemHeader() { Content = subcategoryGroup.Key.ToString() }); + foreach (var sampleNavItem in GenerateSampleNavItems(subcategoryGroup)) { - // Add sample to subcategory - subcategoryItemData.NavItem.MenuItems.Add(item); + navData.NavItem.MenuItems.Add(sampleNavItem); } - - // Add subcategory to category - navData.NavItem.MenuItems.Add(subcategoryItemData.NavItem); } - // Return category yield return navData.NavItem; } } @@ -61,23 +54,6 @@ public static class NavigationViewHelper } } - private static IEnumerable GenerateSubcategoryNavItems(IEnumerable sampleMetadata) - { - var samplesBySubcategory = sampleMetadata.GroupBy(x => x.Subcategory) - .OrderBy(g => g.Key.ToString()); - - foreach (var subcategoryGroup in samplesBySubcategory) - { - yield return new GroupNavigationItemData(new MUXC.NavigationViewItem - { - Content = subcategoryGroup.Key, - SelectsOnInvoked = false, - IsExpanded = false, - Style = (Style)App.Current.Resources["SubcategoryNavigationViewItemStyle"], - }, subcategoryGroup.ToArray()); - } - } - private static IEnumerable GenerateCategoryNavItems(IEnumerable sampleMetadata) { var samplesByCategory = sampleMetadata.GroupBy(x => x.Category) @@ -97,5 +73,4 @@ private static IEnumerable GenerateCategoryNavItems(IEn /// A navigation item to contain items in this group. /// The samples that belong under . private record GroupNavigationItemData(MUXC.NavigationViewItem NavItem, IEnumerable SampleMetadata); - } diff --git a/CommunityToolkit.App.Shared/Pages/Shell.xaml b/CommunityToolkit.App.Shared/Pages/Shell.xaml index c0430f29..13bbfae3 100644 --- a/CommunityToolkit.App.Shared/Pages/Shell.xaml +++ b/CommunityToolkit.App.Shared/Pages/Shell.xaml @@ -39,7 +39,8 @@ Grid.Row="1" IsBackButtonVisible="Collapsed" IsPaneToggleButtonVisible="False" - ItemInvoked="NavView_ItemInvoked"> + ItemInvoked="NavView_ItemInvoked" + PaneDisplayMode="Top">