fix(devtools-ios): Ensure UI modifications run on main thread

Modifications to the UI can only be made from the main thread.
Since {N} 5.3.0 all debugger protocol messages are processed
by the worker thread that receives them in iOS.

refs #7219, https://github.com/NativeScript/ios-runtime/pull/1101
This commit is contained in:
Martin Bektchiev
2019-05-08 13:56:45 +03:00
parent f51bb119c2
commit c60f74d4eb
6 changed files with 87 additions and 7 deletions

View File

@@ -159,6 +159,14 @@ export function openUrl(location: string): boolean {
return false;
}
export function executeOnMainThread(func: () => void) {
NSOperationQueue.mainQueue.addOperationWithBlock(func);
}
export function isMainThread(): Boolean {
return NSThread.isMainThread;
}
class UIDocumentInteractionControllerDelegateImpl extends NSObject implements UIDocumentInteractionControllerDelegate {
public static ObjCProtocols = [UIDocumentInteractionControllerDelegate];