diff --git a/build/workflow/copilot/restore-solution.sh b/build/workflow/copilot/restore-solution.sh index afd36b48c..9fd34658c 100644 --- a/build/workflow/copilot/restore-solution.sh +++ b/build/workflow/copilot/restore-solution.sh @@ -1,5 +1,29 @@ #!/usr/bin/env bash set -euo pipefail +# Create a desktop-only crosstargeting override for build pipelines +cat > "src/crosstargeting_override.props" << 'EOF' + + + true + net10.0-desktop + net9.0 + + +EOF + +cd src + +dotnet workload restore +dotnet workload install android + # Restore solution packages to ensure dependencies are ready for subsequent steps -dotnet restore src/Uno.Toolkit.sln -p:SamplesTargetFrameworkOverride=net9.0-desktop -p:DisableMobileTargets=true \ No newline at end of file +dotnet restore Uno.Toolkit.sln + +# Preload the dev server tool +dotnet dnx -y uno.devserver --prerelease -- start -l trace + +sleep 20 + +dotnet dnx -y uno.devserver --prerelease -- stop -l trace + diff --git a/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples/App.xaml.Navigation.cs b/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples/App.xaml.Navigation.cs index fd31250d4..437e081a7 100644 --- a/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples/App.xaml.Navigation.cs +++ b/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples/App.xaml.Navigation.cs @@ -1,5 +1,4 @@ using System.Reflection; -using System.Reflection; using Uno.Extensions; using MUXC = Microsoft.UI.Xaml.Controls; @@ -10,6 +9,7 @@ partial class App { private static Sample[] _samples; private static IDictionary _nestedSampleMap; + private Content.SettingsPage _settingsPage; /// /// Invoked when Navigation to a certain page fails @@ -124,7 +124,15 @@ private void OnNavigationItemInvoked(MUXC.NavigationView sender, MUXC.Navigation } else if (e.IsSettingsInvoked) { - _shell.ActivateDebugPanel(); + // Cache the settings page to avoid recreating it each time + if (_settingsPage == null) + { + _settingsPage = new Content.SettingsPage(); + } + + // Clear selected item to avoid having a sample highlighted while Settings is displayed + _shell.NavigationView.SelectedItem = null; + _shell.NavigationView.Content = _settingsPage; } } diff --git a/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples/Content/SettingsPage.xaml b/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples/Content/SettingsPage.xaml new file mode 100644 index 000000000..ef242654a --- /dev/null +++ b/samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples/Content/SettingsPage.xaml @@ -0,0 +1,135 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +