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

@ -372,3 +372,14 @@ Please ensure you have your manifest correctly configured with the FileProvider.
return false;
}
}
export function executeOnMainThread(func: () => void) {
new android.os.Handler(android.os.Looper.getMainLooper())
.post(new java.lang.Runnable({
run: func
}));
}
export function isMainThread(): Boolean {
return android.os.Looper.myLooper() === android.os.Looper.getMainLooper();
}