[ https://issues.apache.org/jira/browse/CB-8838?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14503981#comment-14503981 ]
ASF subversion and git services commented on CB-8838: ----------------------------------------------------- Commit b62fa440f6cda747a80d8f8ef3d2c426db092a32 in cordova-js's branch refs/heads/master from [~mouton] [ https://git-wip-us.apache.org/repos/asf?p=cordova-js.git;h=b62fa44 ] CB-8838 - Disabled commandQueue for WK_WEBVIEW_BINDING. (closes #107) > WKWebView iosExec Results in Double Call > ---------------------------------------- > > Key: CB-8838 > URL: https://issues.apache.org/jira/browse/CB-8838 > Project: Apache Cordova > Issue Type: Bug > Components: CordovaJS, CordovaLib, iOS > Affects Versions: 4.0.0 > Reporter: Thomas Mouton > Assignee: Shazron Abdullah > Fix For: 4.0.0 > > Original Estimate: 4h > Remaining Estimate: 4h > > When we invoke the cordova Barcode plugin, it is always called twice! > I have only looked at the code a short time, but it appears to me that: > * the first call to Barcode happens, and in iosExec, it gets placed in > commandQueue. > * the first call passes to Objective C world by WKScriptMessageHandler - > (void)userContentController:(WKUserContentController*)userContentController > didReceiveScriptMessage:(WKScriptMessage*)message > * this call to Barcode does its thing, completes, and it's javascript > response handler code winds through: > CDVCommandDelegateImpl::sendPluginResult > CDVCommandDelegateImpl::evalJSHelper > CDVCommandDelegateImpl::evalJSHelper2 > * in Helper2, the callback is finally passed to a webViewEngine, which > processes the Javascript, and returns, on completion, a list of commands > remaining in the javascript commandQueue. > * these commands are queued on the Obj-C side and run in CDVCommandQueue > fashion. > AHA! > * since the command was persisted in commandQueue before execution, and not > removed, it is called again! > SO > I moved the enqueue behavior into the branch that excludes bridgeMode === > jsToNativeModes.WK_WEBVIEW_BINDING > This fixes it, but I am not confident its the right solution. > Do you have any insight into this problem? > Feedback for my solution? > A broader or more appropriate venue for the conversation? > Thanks! > Alex Mouton -- This message was sent by Atlassian JIRA (v6.3.4#6332) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@cordova.apache.org For additional commands, e-mail: issues-h...@cordova.apache.org