From f36cd53e078bd4cb65141e8289eac842ae9c907c Mon Sep 17 00:00:00 2001 From: Vladislav Antonyuk Date: Tue, 22 Oct 2024 23:20:34 +0300 Subject: [PATCH] update to .net 9 --- .github/workflows/dotnet.yml | 14 +- .../Balloon/Balloon.csproj | 14 +- .../Directory.Build.props | 2 +- .../MaterialCalendarView.csproj | 16 +- AndroidBindableLibraries/Sample/App.xaml.cs | 18 +- .../Sample/AppShell.xaml.cs | 13 +- .../Calendar/CalendarMaterialHandler.cs | 5 +- .../Sample/MainPage.xaml.cs | 89 +++++----- .../Sample/MauiProgram.cs | 43 +++-- .../Sample/Platforms/Android/MainActivity.cs | 19 +- .../Platforms/Android/MainApplication.cs | 25 ++- AndroidBindableLibraries/Sample/Sample.csproj | 7 +- Auth/AuthServices/AuthServices.csproj | 2 +- Auth/MauiAuth/App.xaml.cs | 8 +- Auth/MauiAuth/MauiAuth.csproj | 4 +- Auth/MauiAuthBlazor/App.xaml.cs | 5 +- Auth/MauiAuthBlazor/MauiAuthBlazor.csproj | 4 +- BottomSheet/App.xaml.cs | 5 +- CardLayout/App.xaml.cs | 5 +- CardLayout/CardLayout.csproj | 2 +- CardLayout/CardsLayout.cs | 2 +- CardLayout/MauiProgram.cs | 4 +- .../KanbanBoard/KanbanBoard}/App.xaml | 0 .../KanbanBoard/KanbanBoard}/App.xaml.cs | 24 ++- .../KanbanBoard}/BoolToColorConverter.cs | 1 + .../KanbanBoard/KanbanBoard}/Extensions.cs | 0 .../KanbanBoard}/KanbanBoard.csproj | 21 ++- .../KanbanBoard/KanbanBoard}/MainPage.xaml | 12 +- .../KanbanBoard/KanbanBoard}/MainPage.xaml.cs | 1 + .../KanbanBoard}/MainPageViewModel.cs | 49 +++--- .../KanbanBoard/KanbanBoard}/MauiProgram.cs | 2 + .../KanbanBoard/Models/CardInfo.cs | 12 ++ .../KanbanBoard/Models/ColumnInfo.cs | 13 ++ .../Platforms/Android/AndroidManifest.xml | 0 .../Platforms/Android/MainActivity.cs | 0 .../Platforms/Android/MainApplication.cs | 0 .../Android/Resources/values/colors.xml | 0 .../Platforms/MacCatalyst/AppDelegate.cs | 0 .../MacCatalyst/Entitlements.Debug.plist | 0 .../MacCatalyst/Entitlements.Release.plist | 0 .../Platforms/MacCatalyst/Info.plist | 0 .../Platforms/MacCatalyst/Program.cs | 0 .../KanbanBoard}/Platforms/Tizen/Main.cs | 0 .../Platforms/Tizen/tizen-manifest.xml | 0 .../KanbanBoard}/Platforms/Windows/App.xaml | 0 .../Platforms/Windows/App.xaml.cs | 0 .../Platforms/Windows/Package.appxmanifest | 0 .../Platforms/Windows/app.manifest | 0 .../KanbanBoard}/Platforms/iOS/AppDelegate.cs | 0 .../KanbanBoard}/Platforms/iOS/Info.plist | 0 .../KanbanBoard}/Platforms/iOS/Program.cs | 0 .../Properties/launchSettings.json | 0 .../KanbanBoard/KanbanBoard}/README.md | 10 +- .../KanbanBoard/KanbanBoard}/README.mdpp | 10 +- .../Resources/AppIcon/appicon.svg | 0 .../Resources/AppIcon/appiconfg.svg | 0 .../Fonts/Font Awesome 6 Free-Solid-900.otf | Bin .../KanbanBoard}/Resources/Splash/splash.svg | 0 .../KanbanBoard}/Resources/Styles/Colors.xaml | 0 .../KanbanBoard}/Resources/Styles/Styles.xaml | 0 .../KanbanBoardDb/KanbanBoardDb.csproj | 22 +++ .../KanbanBoardDb/KanbanBoardDbContext.cs | 23 +++ .../KanbanBoard/KanbanBoardDb/KanbanCard.cs | 6 +- .../KanbanBoard/KanbanBoardDb/KanbanColumn.cs | 7 +- Database/MauiTaskListApp/App.xaml.cs | 5 +- .../MauiTaskListApp/MauiTaskListApp.csproj | 6 +- Database/Sqlite/MauiSqlite/App.xaml.cs | 10 +- Database/Sqlite/MauiSqlite/MauiProgram.cs | 2 +- Database/Sqlite/MauiSqlite/MauiSqlite.csproj | 8 +- Database/Sqlite/MauiSqliteBlazor/App.xaml.cs | 5 +- .../MauiSqliteBlazor/MauiSqliteBlazor.csproj | 10 +- Directory.Build.props | 11 +- DynamicFab/App.xaml.cs | 5 +- DynamicFab/DynamicFab.csproj | 2 +- IPTVPlayer/App.xaml.cs | 5 +- IPTVPlayer/IPTVPlayer.csproj | 8 +- KanbanBoard/Models/CardInfo.cs | 11 -- KanbanBoard/Models/ColumnInfo.cs | 12 -- KanbanBoard/Models/KanbanBoardDbContext.cs | 21 --- .../Models/Optimized/CardEntityType.cs | 157 ----------------- .../Models/Optimized/ColumnEntityType.cs | 120 ------------- .../Optimized/KanbanBoardDbContextModel.cs | 48 ----- .../KanbanBoardDbContextModelBuilder.cs | 164 ------------------ .../VladislavAntonyuk.Balloon.1.6.4.1.nupkg | Bin 0 -> 517012 bytes .../VladislavAntonyuk.Balloon.1.6.4.nupkg | Bin 291489 -> 517008 bytes ...ntonyuk.MaterialCalendarView.1.9.0.1.nupkg | Bin 0 -> 910282 bytes ...vAntonyuk.MaterialCalendarView.1.9.0.nupkg | Bin 475127 -> 910270 bytes MauiAnimation/App.xaml.cs | 14 +- MauiAnimation/MauiAnimation.csproj | 2 +- MauiApplicationInsights/App.xaml.cs | 5 +- MauiBadge/App.xaml.cs | 5 +- MauiBank/App.xaml.cs | 5 +- MauiBank/Converters/BoolToColorConverter.cs | 1 + .../BoolToStrokeThicknessConverter.cs | 1 + .../StringLengthToColorConverter.cs | 1 + MauiBank/MauiBank.csproj | 4 +- MauiBank/ViewModels/CardPageViewModel.cs | 12 +- MauiBank/ViewModels/PinPageViewModel.cs | 9 +- MauiBank/ViewModels/ProfilePageViewModel.cs | 9 +- MauiBarcode/App.xaml.cs | 7 +- .../CommunityToolkitCameraPage.xaml.cs | 8 +- MauiBarcode/MauiBarcode.csproj | 6 +- MauiBells/App.xaml.cs | 5 +- MauiBells/MainPage.xaml.cs | 1 - MauiBells/MauiBells.csproj | 2 +- MauiBlazorPhotoGallery/App.xaml.cs | 5 +- .../MauiBlazorPhotoGallery.csproj | 2 +- MauiBluetooth/App.xaml.cs | 5 +- MauiBluetooth/MainPage.xaml.cs | 8 +- MauiBluetooth/MauiBluetooth.csproj | 4 +- .../Platforms/Android/BluetoothService.cs | 2 +- MauiCaptcha/App.xaml.cs | 5 +- MauiCaptcha/MauiCaptcha.csproj | 4 +- MauiCursor/App.xaml.cs | 5 +- MauiCursor/CursorBehavior.cs | 2 +- MauiCursor/MauiCursor.csproj | 2 +- MauiCursor/Platforms/iOS/CursorExtensions.cs | 147 +++++++++++++++- MauiDraggableView/App.xaml.cs | 5 +- MauiDynamicConfiguration/App.xaml.cs | 5 +- MauiDynamicConfiguration/LoginPage.xaml.cs | 16 +- MauiDynamicConfiguration/MainPage.xaml.cs | 22 ++- .../MauiDynamicConfiguration.csproj | 4 +- MauiImageEffects/App.xaml.cs | 5 +- .../SaturationBehavior/SaturationConverter.cs | 1 + MauiLocalization/App.xaml.cs | 5 +- MauiLocalization/MauiLocalization.csproj | 4 +- MauiMaps/App.xaml.cs | 5 +- MauiMaps/MauiMaps.csproj | 6 +- MauiMarkdown/App.xaml.cs | 5 +- MauiMarkdown/MauiMarkdown.csproj | 2 +- MauiMultiWindow/App.xaml.cs | 5 +- MauiMultiWindow/MauiMultiWindow.csproj | 2 +- .../Platforms/MacCatalyst/WindowExtensions.cs | 13 +- MauiNotifications/App.xaml.cs | 5 +- MauiNotifications/MauiNotifications.csproj | 4 +- MauiPaint/App.xaml.cs | 5 +- MauiPaint/Figures/FigureExtensions.cs | 5 +- MauiPaint/MainPageViewModel.cs | 6 +- MauiPaint/MauiPaint.csproj | 4 +- MauiSamples.sln | 26 ++- MauiShellCustomization/App.xaml.cs | 5 +- .../MauiShellCustomization.csproj | 2 +- .../Android/CustomShellItemRenderer.cs | 3 +- .../MacCatalyst/CustomShellItemRenderer.cs | 5 +- .../Platforms/iOS/CustomShellItemRenderer.cs | 5 +- MauiSpeech/App.xaml.cs | 5 +- MauiSpeech/MauiSpeech.csproj | 4 +- MauiStaggeredCollectionView/App.xaml.cs | 5 +- .../MauiStaggeredCollectionView.csproj | 2 +- .../Platforms/Windows/App.xaml.cs | 24 ++- MauiTabView/App.xaml.cs | 5 +- MauiTabView/MauiTabView.csproj | 2 +- MauiTaskbarProgress/App.xaml.cs | 5 +- .../MauiTaskbarProgress.csproj | 2 +- .../Client.Android.UITests/AppiumSetup.cs | 4 +- .../Client.Android.UITests.csproj | 12 +- .../Client.MacCatalyst.UITests/AppiumSetup.cs | 4 +- .../Client.MacCatalyst.UITests.csproj | 10 +- MauiTests/Client.Tizen.UITests/AppiumSetup.cs | 4 +- .../Client.Tizen.UITests.csproj | 10 +- .../Client.Windows.UITests/AppiumSetup.cs | 4 +- .../Client.Windows.UITests.csproj | 10 +- MauiTests/Client.iOS.UITests/AppiumSetup.cs | 4 +- .../Client.iOS.UITests.csproj | 10 +- MauiTests/Client/App.xaml.cs | 7 +- MauiWorkflowBuilder/App.xaml.cs | 5 +- .../MauiWorkflowBuilder.csproj | 6 +- README.md | 5 +- README.mdpp | 2 +- RepositoryContributors/App.xaml.cs | 5 +- .../RepositoryContributors.csproj | 2 +- TutorialHelp/App.xaml.cs | 5 +- TutorialHelp/TutorialHelp.csproj | 4 +- iOSExtensions/JokeApp/JokeApp/App.xaml.cs | 5 +- iOSExtensions/JokeApp/JokeApp/JokeApp.csproj | 11 +- .../JokeAppWidget/JokeAppWidget.csproj | 2 +- .../ShareExtension/AppContainer/App.xaml.cs | 5 +- .../AppContainer/AppContainer.csproj | 5 +- .../AppContainerExtension.csproj | 2 +- md/thankyou.mdpp | 2 +- 180 files changed, 822 insertions(+), 974 deletions(-) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/App.xaml (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/App.xaml.cs (73%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/BoolToColorConverter.cs (94%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Extensions.cs (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/KanbanBoard.csproj (73%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/MainPage.xaml (96%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/MainPage.xaml.cs (98%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/MainPageViewModel.cs (75%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/MauiProgram.cs (97%) create mode 100644 Database/KanbanBoard/KanbanBoard/Models/CardInfo.cs create mode 100644 Database/KanbanBoard/KanbanBoard/Models/ColumnInfo.cs rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Platforms/Android/AndroidManifest.xml (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Platforms/Android/MainActivity.cs (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Platforms/Android/MainApplication.cs (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Platforms/Android/Resources/values/colors.xml (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Platforms/MacCatalyst/AppDelegate.cs (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Platforms/MacCatalyst/Entitlements.Debug.plist (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Platforms/MacCatalyst/Entitlements.Release.plist (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Platforms/MacCatalyst/Info.plist (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Platforms/MacCatalyst/Program.cs (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Platforms/Tizen/Main.cs (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Platforms/Tizen/tizen-manifest.xml (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Platforms/Windows/App.xaml (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Platforms/Windows/App.xaml.cs (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Platforms/Windows/Package.appxmanifest (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Platforms/Windows/app.manifest (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Platforms/iOS/AppDelegate.cs (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Platforms/iOS/Info.plist (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Platforms/iOS/Program.cs (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Properties/launchSettings.json (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/README.md (80%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/README.mdpp (77%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Resources/AppIcon/appicon.svg (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Resources/AppIcon/appiconfg.svg (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Resources/Fonts/Font Awesome 6 Free-Solid-900.otf (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Resources/Splash/splash.svg (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Resources/Styles/Colors.xaml (100%) rename {KanbanBoard => Database/KanbanBoard/KanbanBoard}/Resources/Styles/Styles.xaml (100%) create mode 100644 Database/KanbanBoard/KanbanBoardDb/KanbanBoardDb.csproj create mode 100644 Database/KanbanBoard/KanbanBoardDb/KanbanBoardDbContext.cs rename KanbanBoard/Models/Card.cs => Database/KanbanBoard/KanbanBoardDb/KanbanCard.cs (67%) rename KanbanBoard/Models/Column.cs => Database/KanbanBoard/KanbanBoardDb/KanbanColumn.cs (60%) delete mode 100644 KanbanBoard/Models/CardInfo.cs delete mode 100644 KanbanBoard/Models/ColumnInfo.cs delete mode 100644 KanbanBoard/Models/KanbanBoardDbContext.cs delete mode 100644 KanbanBoard/Models/Optimized/CardEntityType.cs delete mode 100644 KanbanBoard/Models/Optimized/ColumnEntityType.cs delete mode 100644 KanbanBoard/Models/Optimized/KanbanBoardDbContextModel.cs delete mode 100644 KanbanBoard/Models/Optimized/KanbanBoardDbContextModelBuilder.cs create mode 100644 LocalPackages/VladislavAntonyuk.Balloon.1.6.4.1.nupkg create mode 100644 LocalPackages/VladislavAntonyuk.MaterialCalendarView.1.9.0.1.nupkg diff --git a/.github/workflows/dotnet.yml b/.github/workflows/dotnet.yml index fdbd22e5..94991546 100644 --- a/.github/workflows/dotnet.yml +++ b/.github/workflows/dotnet.yml @@ -17,7 +17,7 @@ jobs: strategy: fail-fast: false matrix: - os: [windows-latest, macos-13] + os: [windows-latest, macos-14] steps: - name: Prepare variables on Windows @@ -26,7 +26,7 @@ jobs: echo "WORKING_DIRECTORY_PATH=C:/Projects/MauiSamples" >> $env:GITHUB_ENV - name: Prepare variables on macOS - if: ${{ matrix.os == 'macos-13' }} + if: ${{ matrix.os == 'macos-14' }} run: | echo "WORKING_DIRECTORY_PATH=/Users/runner/Projects/MauiSamples" >> $GITHUB_ENV @@ -37,15 +37,15 @@ jobs: git checkout ${{ github.head_ref || github.ref_name }} - name: Setup Xcode - if: ${{ matrix.os == 'macos-13' }} + if: ${{ matrix.os == 'macos-14' }} uses: maxim-lobanov/setup-xcode@v1 with: - xcode-version: '15.1' + xcode-version: '16.0' - name: Setup .NET - uses: actions/setup-dotnet@v3 + uses: actions/setup-dotnet@v4 with: - dotnet-version: 8.x + dotnet-version: 9.x - name: Install dependencies run: dotnet workload install maui @@ -60,4 +60,4 @@ jobs: run: | cd ${{ env.WORKING_DIRECTORY_PATH }} dotnet restore --configfile NuGet.config - dotnet build --tl + dotnet build diff --git a/AndroidBindableLibraries/Balloon/Balloon.csproj b/AndroidBindableLibraries/Balloon/Balloon.csproj index b7a9814d..e3778404 100644 --- a/AndroidBindableLibraries/Balloon/Balloon.csproj +++ b/AndroidBindableLibraries/Balloon/Balloon.csproj @@ -2,7 +2,7 @@ 23 VladislavAntonyuk.$(AssemblyName) - 1.6.4 + 1.6.4.1 ReadMe.md ..\..\LocalPackages\ @@ -18,22 +18,22 @@ 8.4.0 - 2.7.0.2 + 2.8.5.1 - 1.7.1.2 + 1.8.2.1 - 1.9.23.1 + 2.0.10.1 - 1.6.1.8 + 1.7.0.3 - 1.13.1 + 1.13.1.5 - 1.7.0 + 1.8.3.1 diff --git a/AndroidBindableLibraries/Directory.Build.props b/AndroidBindableLibraries/Directory.Build.props index 1ef3cd4d..a72c6e98 100644 --- a/AndroidBindableLibraries/Directory.Build.props +++ b/AndroidBindableLibraries/Directory.Build.props @@ -1,7 +1,7 @@  - net8.0-android + net9.0-android enable enable true diff --git a/AndroidBindableLibraries/MaterialCalendarView/MaterialCalendarView.csproj b/AndroidBindableLibraries/MaterialCalendarView/MaterialCalendarView.csproj index ba3d8ed4..af68a120 100644 --- a/AndroidBindableLibraries/MaterialCalendarView/MaterialCalendarView.csproj +++ b/AndroidBindableLibraries/MaterialCalendarView/MaterialCalendarView.csproj @@ -2,7 +2,7 @@ 23 VladislavAntonyuk.$(AssemblyName) - 1.9.0 + 1.9.0.1 ReadMe.md ..\..\LocalPackages\ @@ -17,28 +17,28 @@ - 1.6.1.7 + 1.7.0.3 2.1.4.10 - 1.12.0.4 + 1.13.1.5 - 1.9.23 + 2.0.10.1 1.9.23 - - - + + + - 1.6.2.2 + 1.8.3.1 diff --git a/AndroidBindableLibraries/Sample/App.xaml.cs b/AndroidBindableLibraries/Sample/App.xaml.cs index 0d0f7b65..7e3f336b 100644 --- a/AndroidBindableLibraries/Sample/App.xaml.cs +++ b/AndroidBindableLibraries/Sample/App.xaml.cs @@ -1,12 +1,14 @@ -namespace Sample +namespace Sample; + +public partial class App : Application { - public partial class App : Application + public App() { - public App() - { - InitializeComponent(); + InitializeComponent(); + } - MainPage = new AppShell(); - } + protected override Window CreateWindow(IActivationState? activationState) + { + return new Window(new AppShell()); } -} +} \ No newline at end of file diff --git a/AndroidBindableLibraries/Sample/AppShell.xaml.cs b/AndroidBindableLibraries/Sample/AppShell.xaml.cs index a3797080..198efea1 100644 --- a/AndroidBindableLibraries/Sample/AppShell.xaml.cs +++ b/AndroidBindableLibraries/Sample/AppShell.xaml.cs @@ -1,10 +1,9 @@ -namespace Sample +namespace Sample; + +public partial class AppShell : Shell { - public partial class AppShell : Shell + public AppShell() { - public AppShell() - { - InitializeComponent(); - } + InitializeComponent(); } -} +} \ No newline at end of file diff --git a/AndroidBindableLibraries/Sample/Calendar/CalendarMaterialHandler.cs b/AndroidBindableLibraries/Sample/Calendar/CalendarMaterialHandler.cs index 3a72e6fa..7fb9751b 100644 --- a/AndroidBindableLibraries/Sample/Calendar/CalendarMaterialHandler.cs +++ b/AndroidBindableLibraries/Sample/Calendar/CalendarMaterialHandler.cs @@ -39,9 +39,8 @@ protected override void ConnectHandler(Calendar platformView) private void PlatformView_SelectedDatesChanged(object? sender, CalendarDayClickEventArgs e) { var calendar = e.CalendarDay.Calendar; - var time = TimeSpan.FromMilliseconds(calendar.TimeInMillis); - var result = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc); - VirtualView.SelectedDate = new DateTimeOffset(result.Add(time).Add(TimeSpan.FromMilliseconds(calendar.TimeZone.RawOffset))); + var result = new DateTimeOffset(new DateTime(1970, 1, 1, 0, 0, 0)); + VirtualView.SelectedDate = result.AddMilliseconds(calendar.TimeInMillis).Add(result.Offset); VirtualView.OnSelectedDateChanged(VirtualView.SelectedDate); } diff --git a/AndroidBindableLibraries/Sample/MainPage.xaml.cs b/AndroidBindableLibraries/Sample/MainPage.xaml.cs index 8d63a8c5..dfda529e 100644 --- a/AndroidBindableLibraries/Sample/MainPage.xaml.cs +++ b/AndroidBindableLibraries/Sample/MainPage.xaml.cs @@ -1,52 +1,51 @@ -namespace Sample -{ - using Android.Views; - using Com.Skydoves.Balloon; - using Microsoft.Maui.Platform; +namespace Sample; - public partial class MainPage : ContentPage - { - public MainPage() - { - InitializeComponent(); - } +using Android.Views; +using Com.Skydoves.Balloon; +using Microsoft.Maui.Platform; - private void OnCounterClicked(object sender, EventArgs e) - { - var balloon = new Balloon.Builder(Platform.AppContext) - .SetText("Edit your profile here!") - .SetTextSize(15f) - .SetArrowPositionRules(ArrowPositionRules.AlignAnchor) - .SetArrowSize(10) - .SetArrowPosition(0.5f) - .SetPadding(12) - .SetCornerRadius(8f) - .SetBalloonAnimation(BalloonAnimation.Elastic) - .SetOnBalloonDismissListener(new BallonDismissListener(() => - { - var balloon2 = new Balloon.Builder(Platform.AppContext) - .SetWidthRatio(1.0f) - .SetHeight(BalloonSizeSpec.Wrap) - .SetLayout(new BallonContent().ToPlatform(Handler.MauiContext)) - .SetArrowPositionRules(ArrowPositionRules.AlignAnchor) - .SetArrowSize(10) - .SetArrowPosition(0.5f) - .SetPadding(12) - .SetCornerRadius(8f) - .SetBalloonAnimation(BalloonAnimation.Fade) - .Build(); - balloon2.ShowAtCenter(MauiLabel.ToPlatform(MauiLabel.Handler.MauiContext)); - })) - .Build(); - balloon.ShowAtCenter(CounterBtn.ToPlatform(CounterBtn.Handler.MauiContext)); - } +public partial class MainPage : ContentPage +{ + public MainPage() + { + InitializeComponent(); } - internal class BallonDismissListener(Action action) : Java.Lang.Object, IOnBalloonDismissListener + private void OnCounterClicked(object sender, EventArgs e) { - public void OnBalloonDismiss() - { - action(); - } + var balloon = new Balloon.Builder(Platform.AppContext) + .SetText("Edit your profile here!") + .SetTextSize(15f) + .SetArrowPositionRules(ArrowPositionRules.AlignAnchor) + .SetArrowSize(10) + .SetArrowPosition(0.5f) + .SetPadding(12) + .SetCornerRadius(8f) + .SetBalloonAnimation(BalloonAnimation.Elastic) + .SetOnBalloonDismissListener(new BallonDismissListener(() => + { + var balloon2 = new Balloon.Builder(Platform.AppContext) + .SetWidthRatio(1.0f) + .SetHeight(BalloonSizeSpec.Wrap) + .SetLayout(new BallonContent().ToPlatform(Handler.MauiContext)) + .SetArrowPositionRules(ArrowPositionRules.AlignAnchor) + .SetArrowSize(10) + .SetArrowPosition(0.5f) + .SetPadding(12) + .SetCornerRadius(8f) + .SetBalloonAnimation(BalloonAnimation.Fade) + .Build(); + balloon2.ShowAtCenter(MauiLabel.ToPlatform(MauiLabel.Handler.MauiContext)); + })) + .Build(); + balloon.ShowAtCenter(CounterBtn.ToPlatform(CounterBtn.Handler.MauiContext)); } } + +internal class BallonDismissListener(Action action) : Java.Lang.Object, IOnBalloonDismissListener +{ + public void OnBalloonDismiss() + { + action(); + } +} \ No newline at end of file diff --git a/AndroidBindableLibraries/Sample/MauiProgram.cs b/AndroidBindableLibraries/Sample/MauiProgram.cs index 651db428..190e02b0 100644 --- a/AndroidBindableLibraries/Sample/MauiProgram.cs +++ b/AndroidBindableLibraries/Sample/MauiProgram.cs @@ -1,26 +1,25 @@ -namespace Sample -{ - using Calendar; - using MauiBells.Calendar; +namespace Sample; + +using Calendar; +using MauiBells.Calendar; - public static class MauiProgram +public static class MauiProgram +{ + public static MauiApp CreateMauiApp() { - public static MauiApp CreateMauiApp() - { - var builder = MauiApp.CreateBuilder(); - builder - .UseMauiApp() - .ConfigureFonts(fonts => - { - fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular"); - fonts.AddFont("OpenSans-Semibold.ttf", "OpenSansSemibold"); - }) - .ConfigureMauiHandlers(x => - { - x.AddHandler(); - }); + var builder = MauiApp.CreateBuilder(); + builder + .UseMauiApp() + .ConfigureFonts(fonts => + { + fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular"); + fonts.AddFont("OpenSans-Semibold.ttf", "OpenSansSemibold"); + }) + .ConfigureMauiHandlers(x => + { + x.AddHandler(); + }); - return builder.Build(); - } + return builder.Build(); } -} +} \ No newline at end of file diff --git a/AndroidBindableLibraries/Sample/Platforms/Android/MainActivity.cs b/AndroidBindableLibraries/Sample/Platforms/Android/MainActivity.cs index 0873ecd5..20841d06 100644 --- a/AndroidBindableLibraries/Sample/Platforms/Android/MainActivity.cs +++ b/AndroidBindableLibraries/Sample/Platforms/Android/MainActivity.cs @@ -1,11 +1,10 @@ -namespace Sample -{ - using Android.App; - using Android.Content.PM; - using Android.OS; +namespace Sample; + +using Android.App; +using Android.Content.PM; +using Android.OS; - [Activity(Theme = "@style/Maui.SplashTheme", MainLauncher = true, LaunchMode = LaunchMode.SingleTop, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation | ConfigChanges.UiMode | ConfigChanges.ScreenLayout | ConfigChanges.SmallestScreenSize | ConfigChanges.Density)] - public class MainActivity : MauiAppCompatActivity - { - } -} +[Activity(Theme = "@style/Maui.SplashTheme", MainLauncher = true, LaunchMode = LaunchMode.SingleTop, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation | ConfigChanges.UiMode | ConfigChanges.ScreenLayout | ConfigChanges.SmallestScreenSize | ConfigChanges.Density)] +public class MainActivity : MauiAppCompatActivity +{ +} \ No newline at end of file diff --git a/AndroidBindableLibraries/Sample/Platforms/Android/MainApplication.cs b/AndroidBindableLibraries/Sample/Platforms/Android/MainApplication.cs index 0b3d7ab1..139582da 100644 --- a/AndroidBindableLibraries/Sample/Platforms/Android/MainApplication.cs +++ b/AndroidBindableLibraries/Sample/Platforms/Android/MainApplication.cs @@ -1,16 +1,15 @@ -namespace Sample -{ - using Android.App; - using Android.Runtime; +namespace Sample; - [Application] - public class MainApplication : MauiApplication - { - public MainApplication(IntPtr handle, JniHandleOwnership ownership) - : base(handle, ownership) - { - } +using Android.App; +using Android.Runtime; - protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp(); +[Application] +public class MainApplication : MauiApplication +{ + public MainApplication(IntPtr handle, JniHandleOwnership ownership) + : base(handle, ownership) + { } -} + + protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp(); +} \ No newline at end of file diff --git a/AndroidBindableLibraries/Sample/Sample.csproj b/AndroidBindableLibraries/Sample/Sample.csproj index 4fdca70f..772b60fa 100644 --- a/AndroidBindableLibraries/Sample/Sample.csproj +++ b/AndroidBindableLibraries/Sample/Sample.csproj @@ -40,10 +40,9 @@ - - - - + + + diff --git a/Auth/AuthServices/AuthServices.csproj b/Auth/AuthServices/AuthServices.csproj index 1c8fb5f6..0cc8ca3c 100644 --- a/Auth/AuthServices/AuthServices.csproj +++ b/Auth/AuthServices/AuthServices.csproj @@ -5,7 +5,7 @@ - + diff --git a/Auth/MauiAuth/App.xaml.cs b/Auth/MauiAuth/App.xaml.cs index d6929639..a4929db2 100644 --- a/Auth/MauiAuth/App.xaml.cs +++ b/Auth/MauiAuth/App.xaml.cs @@ -3,10 +3,16 @@ public partial class App : Application { + private readonly MainPage mainPage; + public App(MainPage mainPage) { + this.mainPage = mainPage; InitializeComponent(); + } - MainPage = new NavigationPage(mainPage); + protected override Window CreateWindow(IActivationState? activationState) + { + return new Window(new NavigationPage(mainPage)); } } \ No newline at end of file diff --git a/Auth/MauiAuth/MauiAuth.csproj b/Auth/MauiAuth/MauiAuth.csproj index 0618a01b..14e4265c 100644 --- a/Auth/MauiAuth/MauiAuth.csproj +++ b/Auth/MauiAuth/MauiAuth.csproj @@ -25,8 +25,8 @@ - - + + diff --git a/Auth/MauiAuthBlazor/App.xaml.cs b/Auth/MauiAuthBlazor/App.xaml.cs index 9ae5805b..c6719904 100644 --- a/Auth/MauiAuthBlazor/App.xaml.cs +++ b/Auth/MauiAuthBlazor/App.xaml.cs @@ -5,7 +5,10 @@ public partial class App : Application public App() { InitializeComponent(); + } - MainPage = new MainPage(); + protected override Window CreateWindow(IActivationState? activationState) + { + return new Window(new MainPage()); } } \ No newline at end of file diff --git a/Auth/MauiAuthBlazor/MauiAuthBlazor.csproj b/Auth/MauiAuthBlazor/MauiAuthBlazor.csproj index db3e97bb..9effe18a 100644 --- a/Auth/MauiAuthBlazor/MauiAuthBlazor.csproj +++ b/Auth/MauiAuthBlazor/MauiAuthBlazor.csproj @@ -26,7 +26,7 @@ - + @@ -34,7 +34,7 @@ - + diff --git a/BottomSheet/App.xaml.cs b/BottomSheet/App.xaml.cs index 08b66091..5a267e8a 100644 --- a/BottomSheet/App.xaml.cs +++ b/BottomSheet/App.xaml.cs @@ -5,7 +5,10 @@ public partial class App : Application public App() { InitializeComponent(); + } - MainPage = new AppShell(); + protected override Window CreateWindow(IActivationState? activationState) + { + return new Window(new AppShell()); } } \ No newline at end of file diff --git a/CardLayout/App.xaml.cs b/CardLayout/App.xaml.cs index 0e82b80f..e7e35d85 100644 --- a/CardLayout/App.xaml.cs +++ b/CardLayout/App.xaml.cs @@ -5,7 +5,10 @@ public partial class App : Application public App() { InitializeComponent(); + } - MainPage = new AppShell(); + protected override Window CreateWindow(IActivationState? activationState) + { + return new Window(new AppShell()); } } \ No newline at end of file diff --git a/CardLayout/CardLayout.csproj b/CardLayout/CardLayout.csproj index 3a17f47d..054ccb58 100644 --- a/CardLayout/CardLayout.csproj +++ b/CardLayout/CardLayout.csproj @@ -26,7 +26,7 @@ - + diff --git a/CardLayout/CardsLayout.cs b/CardLayout/CardsLayout.cs index e81b6f18..2fa969d2 100644 --- a/CardLayout/CardsLayout.cs +++ b/CardLayout/CardsLayout.cs @@ -310,7 +310,7 @@ public Size ArrangeChildren(Rect rectangle) totalHeight + Padding.VerticalThickness); } - public Size Measure(double widthConstraint, double heightConstraint) + public new Size Measure(double widthConstraint, double heightConstraint) { widthConstraint -= Padding.HorizontalThickness; heightConstraint -= Padding.VerticalThickness; diff --git a/CardLayout/MauiProgram.cs b/CardLayout/MauiProgram.cs index 2dd055f0..5c626065 100644 --- a/CardLayout/MauiProgram.cs +++ b/CardLayout/MauiProgram.cs @@ -1,13 +1,11 @@ namespace CardLayout; -using Microsoft.Maui.Controls.Compatibility.Hosting; - public static class MauiProgram { public static MauiApp CreateMauiApp() { var builder = MauiApp.CreateBuilder(); - builder.UseMauiApp().UseMauiCompatibility(); + builder.UseMauiApp(); builder.Services.AddSingleton(); builder.Services.AddSingleton(); diff --git a/KanbanBoard/App.xaml b/Database/KanbanBoard/KanbanBoard/App.xaml similarity index 100% rename from KanbanBoard/App.xaml rename to Database/KanbanBoard/KanbanBoard/App.xaml diff --git a/KanbanBoard/App.xaml.cs b/Database/KanbanBoard/KanbanBoard/App.xaml.cs similarity index 73% rename from KanbanBoard/App.xaml.cs rename to Database/KanbanBoard/KanbanBoard/App.xaml.cs index c68eacf4..aed3ac7d 100644 --- a/KanbanBoard/App.xaml.cs +++ b/Database/KanbanBoard/KanbanBoard/App.xaml.cs @@ -1,5 +1,6 @@ namespace KanbanBoard; using KanbanBoard.Models; +using KanbanBoardDb; using Microsoft.EntityFrameworkCore; using Application = Microsoft.Maui.Controls.Application; @@ -11,8 +12,17 @@ public App(IServiceProvider serviceProvider) { InitializeComponent(); this.serviceProvider = serviceProvider; + } + + protected override void OnStart() + { + base.OnStart(); AddTestData().Wait(); - MainPage = serviceProvider.GetRequiredService(); + } + + protected override Window CreateWindow(IActivationState? activationState) + { + return new Window(serviceProvider.GetRequiredService()); } private async Task AddTestData() @@ -24,12 +34,12 @@ private async Task AddTestData() var items = await appContext.Columns.Include(x => x.Cards).ToArrayAsync(); if (items.Length == 0) { - var todoColumn = new Column + var todoColumn = new KanbanColumn { Name = "ToDo", Order = 0 }; - var inProgressColumn = new Column + var inProgressColumn = new KanbanColumn { Name = "In Progress", Order = 1, @@ -37,27 +47,27 @@ private async Task AddTestData() }; await appContext.AddAsync(todoColumn); await appContext.AddAsync(inProgressColumn); - await appContext.AddAsync(new Column + await appContext.AddAsync(new KanbanColumn { Name = "Done", Order = 2 }); - await appContext.AddAsync(new Card + await appContext.AddAsync(new KanbanCard { Name = "Card 1", Description = "Description for card 1", Order = 0, Column = todoColumn }); - await appContext.AddAsync(new Card + await appContext.AddAsync(new KanbanCard { Name = "Card 2", Description = "Description for card 2", Order = 1, Column = todoColumn }); - await appContext.AddAsync(new Card + await appContext.AddAsync(new KanbanCard { Name = "Card 3", Description = "Description for card 3", diff --git a/KanbanBoard/BoolToColorConverter.cs b/Database/KanbanBoard/KanbanBoard/BoolToColorConverter.cs similarity index 94% rename from KanbanBoard/BoolToColorConverter.cs rename to Database/KanbanBoard/KanbanBoard/BoolToColorConverter.cs index c8376582..5cc1508a 100644 --- a/KanbanBoard/BoolToColorConverter.cs +++ b/Database/KanbanBoard/KanbanBoard/BoolToColorConverter.cs @@ -2,6 +2,7 @@ using System.Globalization; +[AcceptEmptyServiceProvider] public class BoolToColorConverter : IValueConverter { public object Convert(object? value, Type targetType, object? parameter, CultureInfo culture) diff --git a/KanbanBoard/Extensions.cs b/Database/KanbanBoard/KanbanBoard/Extensions.cs similarity index 100% rename from KanbanBoard/Extensions.cs rename to Database/KanbanBoard/KanbanBoard/Extensions.cs diff --git a/KanbanBoard/KanbanBoard.csproj b/Database/KanbanBoard/KanbanBoard/KanbanBoard.csproj similarity index 73% rename from KanbanBoard/KanbanBoard.csproj rename to Database/KanbanBoard/KanbanBoard/KanbanBoard.csproj index 6569fcbc..c174607a 100644 --- a/KanbanBoard/KanbanBoard.csproj +++ b/Database/KanbanBoard/KanbanBoard/KanbanBoard.csproj @@ -27,20 +27,19 @@ - - - - all - runtime; build; native; contentfiles; analyzers; buildtransitive - - + + - - - - + + + + + + + + diff --git a/KanbanBoard/MainPage.xaml b/Database/KanbanBoard/KanbanBoard/MainPage.xaml similarity index 96% rename from KanbanBoard/MainPage.xaml rename to Database/KanbanBoard/KanbanBoard/MainPage.xaml index 330e4448..ef8c1200 100644 --- a/KanbanBoard/MainPage.xaml +++ b/Database/KanbanBoard/KanbanBoard/MainPage.xaml @@ -107,7 +107,7 @@ Grid.Column="0" FontAttributes="Bold" FontSize="{StaticResource ColumnTitleSize}" - Text="{Binding Column.Name}" /> + Text="{Binding KanbanColumn.Name}" /> @@ -174,13 +174,13 @@ Grid.Column="0" FontAttributes="Bold" FontSize="{StaticResource CardTitleSize}" - Text="{Binding Card.Name}" /> + Text="{Binding KanbanCard.Name}" />