From 8daeaa688bbee252c5e93060bd7039eb8221228a Mon Sep 17 00:00:00 2001 From: Bjoern Esswein <692-bessw@users.noreply.gl.kwarc.info> Date: Wed, 17 Jul 2024 18:11:13 +0200 Subject: [PATCH] fixed race condition in tab.getDocument by replacing it with an awaitable property --- Assets/Scripts/UI/InGame/WebViewController.cs | 8 ++++++-- Packages/bessw.unity.webview | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/Assets/Scripts/UI/InGame/WebViewController.cs b/Assets/Scripts/UI/InGame/WebViewController.cs index a2ca32a3..0be29c3f 100644 --- a/Assets/Scripts/UI/InGame/WebViewController.cs +++ b/Assets/Scripts/UI/InGame/WebViewController.cs @@ -35,6 +35,10 @@ private void OnWebViewComponentReady() SwitchScrollUI.activeScrollData.OnScrollDynamicInfoUpdated.AddListener(SetScrollContent); webViewComponent.tab.AddJSBinding("applyScroll", ApplyScrollHandler); webViewComponent.tab.AddJSBinding("getHint", GetHintHandler); + if (SwitchScrollUI.activeScrollData.Scroll is not null) + { + SetScrollContent(SwitchScrollUI.activeScrollData.Scroll); + } RegisterBrowserEventhandlers(); } private void OnDisable() @@ -61,7 +65,7 @@ private async void RegisterBrowserEventhandlers() // register c# event handlers // get the dropzones from the scroll and add the event handler to track when something is dropped - DomNodeWrapper document = await webViewComponent.tab.GetDocument(); + DomNodeWrapper document = await webViewComponent.tab.Document; dropzones = await document.querySelectorAllAsync("[dropzone='copy']"); dropzones.ForEach(dropzone => dropzone.OnAttributeModified += DropzoneAttributeModifiedHandler); } @@ -78,7 +82,7 @@ private void DeRegisterBrowserEventhandlers() private async void SetScrollContent(Scroll scroll) { // update scroll container content - DomNodeWrapper document = await webViewComponent.tab.GetDocument(); + DomNodeWrapper document = await webViewComponent.tab.Document; DomNodeWrapper scrollContainer = await document.querySelectorAsync("#scrollContainer"); var description = scroll.description; diff --git a/Packages/bessw.unity.webview b/Packages/bessw.unity.webview index 32bbc9be..8cd56ed2 160000 --- a/Packages/bessw.unity.webview +++ b/Packages/bessw.unity.webview @@ -1 +1 @@ -Subproject commit 32bbc9be2e099918d10d0e54e8993cae6e54799a +Subproject commit 8cd56ed2cf3b543fcc6d895932a6f13e6b9400fd -- GitLab