@@ -179,6 +179,7 @@ void UnsubscribeHandlersAndCloseController(bool browserCrashed = false)
179179 CoreWebView2 . SourceChanged -= new EventHandler < CoreWebView2SourceChangedEventArgs > ( CoreWebView2_SourceChanged ) ;
180180 CoreWebView2 . WebMessageReceived -= new EventHandler < CoreWebView2WebMessageReceivedEventArgs > ( CoreWebView2_WebMessageReceived ) ;
181181 CoreWebView2 . ContentLoading -= new EventHandler < CoreWebView2ContentLoadingEventArgs > ( CoreWebView2_ContentLoading ) ;
182+ CoreWebView2 . DOMContentLoaded -= new EventHandler < CoreWebView2DOMContentLoadedEventArgs > ( CoreWebView2_DOMContentLoaded ) ;
182183 CoreWebView2 . ProcessFailed -= new EventHandler < CoreWebView2ProcessFailedEventArgs > ( CoreWebView2_ProcessFailed ) ;
183184 _coreWebView2Controller ! . ZoomFactorChanged -= new EventHandler < object > ( CoreWebView2Controller_ZoomFactorChanged ) ;
184185 //_coreWebView2Controller.MoveFocusRequested -= new EventHandler<CoreWebView2MoveFocusRequestedEventArgs>(CoreWebView2Controller_MoveFocusRequested);
@@ -372,7 +373,7 @@ async Task InitCoreWebView2Async(CoreWebView2Environment? environment = null, Co
372373 sender . _coreWebView2Controller . ZoomFactor = sender . _zoomFactor ;
373374 sender . _coreWebView2Controller . DefaultBackgroundColor = sender . _defaultBackgroundColor ;
374375 OnBoundsChanged ( EventArgs . Empty ) ;
375- sender . _coreWebView2Controller . IsVisible = false ;
376+ sender . _coreWebView2Controller . IsVisible = IsVisible ;
376377 try
377378 {
378379 sender . _coreWebView2Controller . AllowExternalDrop = sender . _allowExternalDrop ;
@@ -388,6 +389,7 @@ async Task InitCoreWebView2Async(CoreWebView2Environment? environment = null, Co
388389 sender . CoreWebView2 . SourceChanged += new EventHandler < CoreWebView2SourceChangedEventArgs > ( sender . CoreWebView2_SourceChanged ) ;
389390 sender . CoreWebView2 . WebMessageReceived += new EventHandler < CoreWebView2WebMessageReceivedEventArgs > ( sender . CoreWebView2_WebMessageReceived ) ;
390391 sender . CoreWebView2 . ContentLoading += new EventHandler < CoreWebView2ContentLoadingEventArgs > ( sender . CoreWebView2_ContentLoading ) ;
392+ sender . CoreWebView2 . DOMContentLoaded += new EventHandler < CoreWebView2DOMContentLoadedEventArgs > ( sender . CoreWebView2_DOMContentLoaded ) ;
391393 sender . CoreWebView2 . ProcessFailed += new EventHandler < CoreWebView2ProcessFailedEventArgs > ( sender . CoreWebView2_ProcessFailed ) ;
392394 if ( sender . Focusable )
393395 sender . _coreWebView2Controller . MoveFocus ( CoreWebView2MoveFocusReason . Programmatic ) ;
@@ -839,6 +841,8 @@ void VerifyBrowserNotCrashedGuard()
839841 /// </summary>
840842 /// <seealso cref="E:Microsoft.Web.WebView2.Core.CoreWebView2.ContentLoading" />
841843 public event EventHandler < CoreWebView2ContentLoadingEventArgs > ? ContentLoading;
844+
845+ public event EventHandler < CoreWebView2DOMContentLoadedEventArgs > ? DOMContentLoaded;
842846#endif
843847
844848 /// <summary>
@@ -884,13 +888,20 @@ void CoreWebView2_SourceChanged(object? sender, CoreWebView2SourceChangedEventAr
884888
885889 void CoreWebView2_ContentLoading ( object ? sender , CoreWebView2ContentLoadingEventArgs e )
886890 {
887- if ( _coreWebView2Controller != null && ! _coreWebView2Controller . IsVisible ) _coreWebView2Controller . IsVisible = true ;
888891 var contentLoading = ContentLoading ;
889892 if ( contentLoading == null )
890893 return ;
891894 contentLoading ( this , e ) ;
892895 }
893896
897+ void CoreWebView2_DOMContentLoaded ( object ? sender , CoreWebView2DOMContentLoadedEventArgs e )
898+ {
899+ var contentLoading = DOMContentLoaded ;
900+ if ( contentLoading == null )
901+ return ;
902+ contentLoading ( this , e ) ;
903+ }
904+
894905 void CoreWebView2_ProcessFailed ( object ? sender , CoreWebView2ProcessFailedEventArgs e )
895906 {
896907 if ( e . ProcessFailedKind != CoreWebView2ProcessFailedKind . BrowserProcessExited )
0 commit comments