From 649c1acd14177408e0766cba5e929512ba5a1139 Mon Sep 17 00:00:00 2001 From: Yan Maniez Date: Tue, 21 Aug 2018 22:47:01 +0200 Subject: [PATCH] Test IsBusy --- AideDeJeu/AideDeJeu/ViewModels/ItemsViewModel.cs | 7 ------- AideDeJeu/AideDeJeu/ViewModels/Navigator.cs | 4 ++++ AideDeJeu/AideDeJeu/Views/FilteredItemsPage.xaml | 3 ++- AideDeJeu/AideDeJeu/Views/ItemDetailPage.xaml | 3 ++- AideDeJeu/AideDeJeu/Views/ItemsPage.xaml | 3 ++- AideDeJeu/AideDeJeu/Views/MainNavigationPage.xaml | 2 +- .../AideDeJeu/Views/MainNavigationPage.xaml.cs | 13 +++++++++++-- 7 files changed, 22 insertions(+), 13 deletions(-) diff --git a/AideDeJeu/AideDeJeu/ViewModels/ItemsViewModel.cs b/AideDeJeu/AideDeJeu/ViewModels/ItemsViewModel.cs index 2a55461e..f1efe174 100644 --- a/AideDeJeu/AideDeJeu/ViewModels/ItemsViewModel.cs +++ b/AideDeJeu/AideDeJeu/ViewModels/ItemsViewModel.cs @@ -102,8 +102,6 @@ namespace AideDeJeu.ViewModels async Task LoadItemsAsync(CancellationToken cancellationToken = default) { - IsBusy = true; - Main.IsLoading = true; try { if (Filter != null) @@ -120,11 +118,6 @@ namespace AideDeJeu.ViewModels { Debug.WriteLine(ex); } - finally - { - Main.IsLoading = false; - IsBusy = false; - } } public async Task ExecuteLoadItemsCommandAsync() diff --git a/AideDeJeu/AideDeJeu/ViewModels/Navigator.cs b/AideDeJeu/AideDeJeu/ViewModels/Navigator.cs index c1ca95c1..fbfe9a3b 100644 --- a/AideDeJeu/AideDeJeu/ViewModels/Navigator.cs +++ b/AideDeJeu/AideDeJeu/ViewModels/Navigator.cs @@ -71,7 +71,11 @@ namespace AideDeJeu.ViewModels var file = match.Groups["file"].Value; var anchor = match.Groups["anchor"].Value; var with = match.Groups["with"].Value; + Main.IsBusy = true; + Main.IsLoading = true; var item = await Main.GetItemFromDataAsync(file); + Main.IsBusy = false; + Main.IsLoading = false; if (item != null) { if (item is Items) diff --git a/AideDeJeu/AideDeJeu/Views/FilteredItemsPage.xaml b/AideDeJeu/AideDeJeu/Views/FilteredItemsPage.xaml index 5e4be04a..15c1fcae 100644 --- a/AideDeJeu/AideDeJeu/Views/FilteredItemsPage.xaml +++ b/AideDeJeu/AideDeJeu/Views/FilteredItemsPage.xaml @@ -6,7 +6,8 @@ xmlns:tools="clr-namespace:AideDeJeu.Tools" x:Class="AideDeJeu.Views.FilteredItemsPage" x:Name="This" - Title="{Binding Title}"> + Title="{Binding Title}" + IsBusy="{Binding Main.IsLoading}"> diff --git a/AideDeJeu/AideDeJeu/Views/ItemDetailPage.xaml b/AideDeJeu/AideDeJeu/Views/ItemDetailPage.xaml index 0cc2b0c2..8f5950f6 100644 --- a/AideDeJeu/AideDeJeu/Views/ItemDetailPage.xaml +++ b/AideDeJeu/AideDeJeu/Views/ItemDetailPage.xaml @@ -5,7 +5,8 @@ xmlns:mdview="clr-namespace:Xam.Forms.Markdown" x:Class="AideDeJeu.Views.ItemDetailPage" Title="{Binding Title}" - x:Name="This"> + x:Name="This" + IsBusy="{Binding BindingContext.Main.IsLoading, Source={x:Reference This}}"> diff --git a/AideDeJeu/AideDeJeu/Views/ItemsPage.xaml b/AideDeJeu/AideDeJeu/Views/ItemsPage.xaml index ef4fd8a2..ab134065 100644 --- a/AideDeJeu/AideDeJeu/Views/ItemsPage.xaml +++ b/AideDeJeu/AideDeJeu/Views/ItemsPage.xaml @@ -7,7 +7,8 @@ xmlns:mdview="clr-namespace:Xam.Forms.Markdown" x:Class="AideDeJeu.Views.ItemsPage" x:Name="This" - Title="{Binding Title}"> + Title="{Binding Title}" + IsBusy="{Binding Main.IsLoading}"> diff --git a/AideDeJeu/AideDeJeu/Views/MainNavigationPage.xaml b/AideDeJeu/AideDeJeu/Views/MainNavigationPage.xaml index cb2b93dd..abf9a829 100644 --- a/AideDeJeu/AideDeJeu/Views/MainNavigationPage.xaml +++ b/AideDeJeu/AideDeJeu/Views/MainNavigationPage.xaml @@ -1,5 +1,5 @@  + x:Class="AideDeJeu.Views.MainNavigationPage" IsBusy="{Binding BindingContext.Main.IsLoading}"> \ No newline at end of file diff --git a/AideDeJeu/AideDeJeu/Views/MainNavigationPage.xaml.cs b/AideDeJeu/AideDeJeu/Views/MainNavigationPage.xaml.cs index 163b53b0..37bd8f4e 100644 --- a/AideDeJeu/AideDeJeu/Views/MainNavigationPage.xaml.cs +++ b/AideDeJeu/AideDeJeu/Views/MainNavigationPage.xaml.cs @@ -1,4 +1,5 @@ -using System; +using AideDeJeu.ViewModels; +using System; using System.Collections.Generic; using System.Linq; using System.Text; @@ -12,7 +13,15 @@ namespace AideDeJeu.Views [XamlCompilation(XamlCompilationOptions.Compile)] public partial class MainNavigationPage : NavigationPage { - public MainNavigationPage () + public MainViewModel Main + { + get + { + return DependencyService.Get(); + } + } + + public MainNavigationPage () { InitializeComponent (); }