fix: multiple android navigation chashes (#5173)

* Fixes multiple android navigation chashes

* Fix page.ios unloaded event when navigated to.

* calling loaded/unloaded from application suspend resume on the rootview
This commit is contained in:
Hristo Hristov
2017-12-14 19:59:30 +02:00
committed by Svetoslav
parent 60773e7545
commit f6907bed2b
10 changed files with 620 additions and 419 deletions

View File

@@ -154,6 +154,11 @@ class IOSApplication implements IOSApplicationDefinition {
let ios = utils.ios.getter(UIApplication, UIApplication.sharedApplication);
let object = this;
notify(<ApplicationEventData>{ eventName: resumeEvent, object, ios });
const content = this._window.content;
if (content && !content.isLoaded) {
content.onLoaded();
}
if (!displayedOnce) {
notify(<ApplicationEventData>{ eventName: displayedEvent, object, ios });
displayedOnce = true;
@@ -161,10 +166,18 @@ class IOSApplication implements IOSApplicationDefinition {
}
private didEnterBackground(notification: NSNotification) {
const content = this._window.content;
if (content && content.isLoaded) {
content.onUnloaded();
}
notify(<ApplicationEventData>{ eventName: suspendEvent, object: this, ios: utils.ios.getter(UIApplication, UIApplication.sharedApplication) });
}
private willTerminate(notification: NSNotification) {
const content = this._window.content;
if (content && content.isLoaded) {
content.onUnloaded();
}
notify(<ApplicationEventData>{ eventName: exitEvent, object: this, ios: utils.ios.getter(UIApplication, UIApplication.sharedApplication) });
}