diff --git a/Source/LibationWinForms/Form1.VisibleBooks.cs b/Source/LibationWinForms/Form1.VisibleBooks.cs index ac24d058..aeaf4be6 100644 --- a/Source/LibationWinForms/Form1.VisibleBooks.cs +++ b/Source/LibationWinForms/Form1.VisibleBooks.cs @@ -25,9 +25,17 @@ namespace LibationWinForms } private async void setLiberatedVisibleMenuItemAsync(object _, object __) => await Task.Run(setLiberatedVisibleMenuItem); + + private static DateTime lastVisibleCountUpdated; void setLiberatedVisibleMenuItem() { + //Assume that all calls to update arrive in order, + //Only display results of the latest book count. + var updaterTime = lastVisibleCountUpdated = DateTime.UtcNow; var libraryStats = LibraryCommands.GetCounts(productsDisplay.GetVisible()); + if (updaterTime < lastVisibleCountUpdated) + return; + this.UIThreadSync(() => { if (libraryStats.HasPendingBooks)