@@ -534,64 +534,71 @@ Func _NetWebView2_LoadWait($oWebV2M, $iWaitMessage = $NETWEBVIEW2_MESSAGE__TITLE
534534 __NetWebView2_LastMessage_Navigation($oWebV2M , $NETWEBVIEW2_MESSAGE__NONE )
535535
536536 While 1
537- ; Allow AutoIt to "breathe" and process the GUI messages, also allow user to abort
538- __NetWebView2_Sleep(10 )
539- If @error Then Return SetError (@error , @extended , ' ' )
540-
541- ; RULE 1: If we reached the target status or higher
542- Local $bWebIsReady = $oWebV2M .IsReady
537+ __NetWebView2_Sleep(10 ) ; Allow AutoIt to "breathe" and process the GUI messages, also allow user to abort
543538 If @error Then
544- __NetWebView2_Log(@ScriptLineNumber , $s_Prefix , 1 , $ERR , $EXT )
545- Return SetError (1 , 0 , False ) ; browser/COM error ?
539+ $ERR = @error
540+ $EXT = @extended
541+ $RET = False
542+ ExitLoop
546543 EndIf
547544
548- ; RULE 2: TimeOut Check
549- If $iTimeOut_ms And TimerDiff ($hTimer ) > = $iTimeOut_ms Then
545+ Local $bWebIsReady = $oWebV2M .IsReady ; RULE 1: If we reached the target status or higher
546+ If @error Then ; browser/COM error ?
547+ $ERR = 1
548+ $RET = False
549+ ExitLoop
550+ ElseIf $iTimeOut_ms And TimerDiff ($hTimer ) > = $iTimeOut_ms Then ; RULE 2: TimeOut Check
550551 __NetWebView2_Log(@ScriptLineNumber , $s_Prefix & " - TIME OUT - the waiting time has expired" , 1 , $ERR , $EXT )
551- Return SetError (2 , 0 , False )
552+ $ERR = 2
553+ $RET = False
554+ ExitLoop
555+ ElseIf Not $bWebIsReady Then ; RULE 3: if browser is not ready continue waiting
556+ ContinueLoop ; For navigation events, ensure the browser reports IsReady
552557 EndIf
553558
554- ; RULE 3: if browser is not ready continue waiting
555- If Not $bWebIsReady Then ContinueLoop ; For navigation events, ensure the browser reports IsReady
556-
557559 ; RULE 4: checking browser ReadyState
558560 Local $iLastMessage = - 1
559561 Local $sReadyState = _NetWebView2_ExecuteScript($oWebV2M , " document.readyState" , $NETWEBVIEW2_EXECUTEJS_MODE2_RESULT )
560562 If @error Then
561- __NetWebView2_Log(@ScriptLineNumber , $s_Prefix , 1 , $ERR , $EXT )
562- Return SetError (7 , 0 , False )
563+ $ERR = 7
564+ $RET = False
565+ $MSG = " document.readyState execution Error : #SLN=" & @ScriptLineNumber
566+ ExitLoop
563567 ElseIf StringLeft ($sReadyState , 6 ) == " ERROR:" Then
564- __NetWebView2_Log(@ScriptLineNumber , $s_Prefix , 1 , $ERR , $EXT )
565- Return SetError (8 , 0 , False )
568+ $ERR = 8
569+ $RET = False
570+ $MSG = " document.readyState execution Error : #SLN=" & @ScriptLineNumber
571+ ExitLoop
566572 ElseIf $sReadyState = " complete" Then
567573 ; RULE 5: checking events messages
568574 $iLastMessage = __NetWebView2_LastMessage_Navigation($oWebV2M )
569575 If $_g_bNetWebView2_DebugDev Then ConsoleWrite (' ! IFNC: TEST LOAD WAIT: ReadyState=' & $sReadyState & ' LastMessage=' & $iLastMessage & ' WaitMessage=' & $iWaitMessage & ' SLN=' & @ScriptLineNumber & @CRLF )
570576 If $iLastMessage = $NETWEBVIEW2_MESSAGE__NAV_ERROR Or $iLastMessage = $NETWEBVIEW2_MESSAGE__PROCESS_FAILED Or $iLastMessage = $NETWEBVIEW2_MESSAGE__CRITICAL_ERROR Then
571577 If $_g_bNetWebView2_DebugDev Then ConsoleWrite (' ! IFNC: TEST LOAD WAIT: ' & $iLastMessage & ' SLN=' & @ScriptLineNumber & @CRLF )
572- __NetWebView2_Log( @ScriptLineNumber , $s_Prefix , 1 , $ ERR, $EXT )
573- Return SetError ( 3 , $iLastMessage , False )
574- ; ~ ElseIf $iLastMessage >= $iWaitMessage Then ; checking events
578+ $ ERR = 3
579+ $RET = False
580+ ExitLoop
575581 ElseIf $iLastMessage > = $iWaitMessage Then ; checking events
576582 ; RULE 6: checking document title
577583 Local $sCurrentTitle = $oWebV2M .GetDocumentTitle()
578584 Local $bTitleCheck = ($sExpectedTitle And StringRegExp ($sCurrentTitle , $sExpectedTitle , $STR_REGEXPMATCH ) = 1 )
579585 Local $s_MessageInfo = ' ! IFNC: TEST LOAD WAIT: CurrentTitle="' & $sCurrentTitle & ' " ExpectedTitle"' & $sExpectedTitle & ' " TitleCheck=' & $bTitleCheck & ' LastMessage=' & $iLastMessage
580586 If $sExpectedTitle And $iWaitMessage = $NETWEBVIEW2_MESSAGE__TITLE_CHANGED And $bTitleCheck Then
581587 If $_g_bNetWebView2_DebugDev Then ConsoleWrite ($s_MessageInfo & ' SLN=' & @ScriptLineNumber & @CRLF )
582- __NetWebView2_Log(@ScriptLineNumber , $s_Prefix & " LastMessage=" & $iLastMessage , 1 , $ERR , $EXT )
583- Return True
588+ $MSG = " LastMessage=" & $iLastMessage & " : ExpectedTitle=" & $sExpectedTitle & " : #SLN=" & @ScriptLineNumber
589+ $RET = True
590+ ExitLoop
584591 Else
585592 If $_g_bNetWebView2_DebugDev Then ConsoleWrite ($s_MessageInfo & ' SLN=' & @ScriptLineNumber & @CRLF )
586- __NetWebView2_Log(@ScriptLineNumber , $s_Prefix & " LastMessage=" & $iLastMessage , 1 , $ERR , $EXT )
587- Return True
593+ $MSG = " LastMessage=" & $iLastMessage & " : #SLN=" & @ScriptLineNumber
594+ $RET = True
595+ ExitLoop
588596 EndIf
589597 EndIf
590598 EndIf
591599 If $_g_bNetWebView2_DebugDev Then ConsoleWrite (" > IFNC: TEST LOAD WAIT: __NetWebView2_LastMessage_Navigation($oWebV2M)=" & $iLastMessage & ' >> ' & __NetWebView2_LastMessage_Navigation($oWebV2M ) & ' SLN=' & @ScriptLineNumber & @CRLF )
592600 WEnd
593601
594- #TODO ENDPOINT REFACTORING
595602 __NetWebView2_Log(@ScriptLineNumber , $s_Prefix & $MSG , 1 , $ERR , $EXT )
596603 Return SetError ($ERR , $EXT , $RET )
597604EndFunc ; ==>_NetWebView2_LoadWait
@@ -628,7 +635,7 @@ Func _NetWebView2_Navigate($oWebV2M, $s_URL, $iWaitMessage = $NETWEBVIEW2_MESSAG
628635 If (Not IsObj ($oWebV2M )) Or ObjName ($oWebV2M , $OBJ_PROGID ) <> ' NetWebView2Lib.WebView2Manager' Then
629636 $ERR = 1
630637 $MSG = " ERROR: Invalid Object"
631- ELseif $iWaitMessage < $NETWEBVIEW2_MESSAGE__INIT_READY Or $iWaitMessage > $NETWEBVIEW2_MESSAGE__TITLE_CHANGED Then
638+ ElseIf $iWaitMessage < $NETWEBVIEW2_MESSAGE__INIT_READY Or $iWaitMessage > $NETWEBVIEW2_MESSAGE__TITLE_CHANGED Then
632639 ; Parameter Validation - higher messsages are not for NAVIGATION thus not checking in _NetWebView2_LoadWait()
633640 $ERR = 2
634641 $MSG = " ERROR: $iWaitMessage not valid"
@@ -741,15 +748,17 @@ Func _NetWebView2_BrowserSetupWrapper($hOuterParentWindow, ByRef $oOuterWeb, $sE
741748 GUISetState (@SW_SHOW , $hInnerWebViewWindow )
742749
743750 $oOuterWeb = _NetWebView2_CreateManager(" " , $sEventPrefix & ' _Manager__' , $s_AddBrowserArgs )
744- If @error Then Return SetError (@error , @extended , $oOuterWeb )
745-
746- Local $Result = _NetWebView2_Initialize($oOuterWeb , $hInnerWebViewWindow , $sProfile , 0 , 0 , $iW , $iH )
747- If @error Then Return SetError (@error , @extended , $Result )
748-
749- $oOuterBridge = _NetWebView2_GetBridge($oOuterWeb , $sEventPrefix & " _Bridge__" )
750- If @error Then Return SetError (@error , @extended , $oOuterBridge )
751-
752- #TODO ENDPOINT REFACTORING
751+ If Not @error Then
752+ _NetWebView2_Initialize($oOuterWeb , $hInnerWebViewWindow , $sProfile , 0 , 0 , $iW , $iH )
753+ If Not @error Then
754+ $oOuterBridge = _NetWebView2_GetBridge($oOuterWeb , $sEventPrefix & " _Bridge__" )
755+ If Not @error Then
756+ $RET = True
757+ EndIf
758+ EndIf
759+ EndIf
760+ $ERR = @error
761+ $EXT = @extended
753762 __NetWebView2_Log(@ScriptLineNumber , $s_Prefix & $MSG , 1 , $ERR , $EXT )
754763 Return SetError ($ERR , $EXT , $RET )
755764EndFunc ; ==>_NetWebView2_BrowserSetupWrapper
0 commit comments