From e5ba574468a13dfaa6a2df9b61af503e95860b90 Mon Sep 17 00:00:00 2001 From: Pat Hartl Date: Mon, 20 Mar 2023 21:00:19 -0500 Subject: [PATCH] Show loading indicator on metadata lookup and disable select button --- LANCommander/Components/GameMetadataLookup.razor | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/LANCommander/Components/GameMetadataLookup.razor b/LANCommander/Components/GameMetadataLookup.razor index 0996dab..b676da6 100644 --- a/LANCommander/Components/GameMetadataLookup.razor +++ b/LANCommander/Components/GameMetadataLookup.razor @@ -10,8 +10,8 @@ @{ RenderFragment Footer = @; } @@ -21,7 +21,7 @@ TItem="Game" DataSource="Results" HidePagination="true" - Loading="Results == null" + Loading="Loading" OnRowClick="OnRowClicked" @bind-SelectedRows="SelectedResults" ScrollY="calc(100vh - 55px - 55px - 53px)"> @@ -44,6 +44,7 @@ IEnumerable SelectedResults { get; set; } PCGamingWikiClient PCGamingWikiClient { get; set; } bool ModalVisible { get; set; } = false; + bool Loading = true; protected override async Task OnInitializedAsync() { @@ -57,11 +58,14 @@ public async Task SearchForGame(string title) { + Loading = true; ModalVisible = true; Results = null; var results = await IGDBService.Search(title, "involved_companies.*", "involved_companies.company.*"); + Loading = false; + if (results == null) Results = new List(); else @@ -91,6 +95,8 @@ private async Task SelectGame() { + Loading = true; + var result = new GameLookupResult(); result.IGDBMetadata = await IGDBService.Get(SelectedResults.First().IGDBId.GetValueOrDefault(), "genres.*", "game_modes.*", "multiplayer_modes.*", "release_dates.*", "platforms.*", "keywords.*", "involved_companies.*", "involved_companies.company.*", "cover.*");