From b913d5a88a62ba6273845d04d46a7556bfdab49b Mon Sep 17 00:00:00 2001 From: TekH Date: Sat, 6 Jun 2026 00:56:30 +0200 Subject: [PATCH] Make ToggleThumbnails method asynchronous Refactor the `ToggleThumbnails` method to be asynchronous (`async Task`) to support asynchronous operations. Add logic to re-render thumbnails when toggled on, including forcing a UI update, waiting for DOM rendering, and invoking `RenderThumbnailsAsync`. These changes improve the user experience by ensuring thumbnails are properly updated when displayed. --- EnvelopeGenerator.ReceiverUI/Pages/EnvelopeViewer.razor | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/EnvelopeGenerator.ReceiverUI/Pages/EnvelopeViewer.razor b/EnvelopeGenerator.ReceiverUI/Pages/EnvelopeViewer.razor index 9efca85d..99c7b93b 100644 --- a/EnvelopeGenerator.ReceiverUI/Pages/EnvelopeViewer.razor +++ b/EnvelopeGenerator.ReceiverUI/Pages/EnvelopeViewer.razor @@ -318,8 +318,15 @@ protected override async Task OnInitializedAsync() { _currentZoom = (int)(scale * 100); } - void ToggleThumbnails() { + async Task ToggleThumbnails() { _showThumbnails = !_showThumbnails; + + // Re-render thumbnails when showing them + if (_showThumbnails && _pdfLoaded) { + await InvokeAsync(StateHasChanged); // Force UI update first + await Task.Delay(150); // Wait for DOM to render canvas elements + await RenderThumbnailsAsync(); + } } async Task GoToPageFromThumbnail(int pageNum) {