fix-next(frame): remove current entry fragment on reset root view (#5533)

* chore(e2e): add @types as devDependencies

Update `tsconfig.json` file.

* fix-next(frame): remove current entry fragment on reset root view

* refactor(e2e): undo skip tab root tests

* refactor(frame): extract disposeCurrentFragment() method

Extract the common logic from _onRootViewReset() and onUnloaded() methods to avoid code duplication.
This commit is contained in:
Vasil Chimev
2018-03-14 19:56:15 +02:00
committed by GitHub
parent cf8dcfa40c
commit e43c7546bd
6 changed files with 19 additions and 9 deletions

View File

@@ -176,16 +176,23 @@ export class Frame extends FrameBase {
}
}
_onRootViewReset(): void {
this.disposeCurrentFragment();
super._onRootViewReset();
}
onUnloaded() {
this.disposeCurrentFragment();
super.onUnloaded();
}
private disposeCurrentFragment(){
if (this._currentEntry && this._currentEntry.fragment) {
const manager: android.app.FragmentManager = this._getFragmentManager();
const transaction = manager.beginTransaction();
transaction.remove(this._currentEntry.fragment);
transaction.commitAllowingStateLoss();
}
super.onUnloaded();
}
private createFragment(backstackEntry: BackstackEntry, fragmentTag: string): android.app.Fragment {