Navigating from observable

Hi, I keep finding this error, and I have no idea how to go about it.
Essentially, I’m waiting for an event to occur (via an observable) in order to navigate to another page. When I do that, it turns out that my device (ios, android) application -though it navigates- is broken (e.g. my tab buttons might not be present, or don’t work, or even pressing a button will have a strange behaviour).

For example, a button is pressed and I show an inappbrowser. I’m listening to the exit event (which returns an observable), and I’m navigating to another page when that happens.
I’ve seen this behaviour time and again, being navigating from an inappbrowser subscription, or a push notification opening subscription, etc… Is there something I’m doing wrong? I refuse to believe this is a -huge- bug on the ionic platform…

This is my example code:

// My Page code
[...]

ionViewWillLeave(){
    this.inappbrowser_exit_subscription.unsubscribe();
}

press_button(){
    const browser = this.inappbrowser.create(url, '_blank', options);
    this.inappbrowser_exit_subscription = browser.on('exit').subscribe( (event:InappBrowserEvent) => { this.navigate(); } );
}

navigate(){
    this.navCtrl.setRoot('someOtherPage');
}

My environment specs:

**cli packages**:
@ionic/cli-utils  : 1.19.3
ionic (Ionic CLI) : 3.20.1

**global packages:**
cordova (Cordova CLI) : 9.0.0 (cordova-lib@9.0.1) 

**cordova plugins**
cordova-plugin-inappbrowser 3.0.0 "InAppBrowser"

**npm packages**
@angular/core@5.2.11
@ionic-native/in-app-browser@4.20.0
ionic-angular@3.9.2
rxjs@5.5.11
zone.js@0.8.26