diff --git a/packages/core/ui/page/index.ios.ts b/packages/core/ui/page/index.ios.ts index 76d50e914..a0df7c5d1 100644 --- a/packages/core/ui/page/index.ios.ts +++ b/packages/core/ui/page/index.ios.ts @@ -129,7 +129,7 @@ class UIViewControllerImpl extends UIViewController { // because changes happen in an interactive transition - IOS will animate between the the states. // If canceled - viewWillAppear will be called for the current page(which is already loaded) and we need to // update the action bar explicitly, so that it is not left styles as the previous page. - owner.actionBar.update(); + owner.updateWithWillAppear(animated); } } @@ -221,6 +221,7 @@ class UIViewControllerImpl extends UIViewController { owner.onNavigatingFrom(isBack); } } + owner.updateWithWillDisappear(animated); } @profile @@ -368,6 +369,17 @@ export class Page extends PageBase { this.actionBar.update(); } } + updateWithWillAppear(animated: boolean) { + // this method is important because it allows plugins to react to modal page close + // for example allowing updating status bar background color + this.actionBar.update(); + this.updateStatusBar(); + } + + updateWithWillDisappear(animated: boolean) { + // this method is important because it allows plugins to react to modal page close + // for example allowing updating status bar background color + } public updateStatusBar() { this._updateStatusBarStyle(this.statusBarStyle);