Question about InputDelegate cascading behavior?

I have a scenario where I'm transitioning from a view with an InputDelegate to one without one, e.g. ViewWithDelegate -> ViewWithoutDelegate.

ViewWithDelegate presents a menu and ViewWithoutDelegate should not.

My first attempt to do this used:

// Currently on ViewWithDelegate, let's switch away...
Ui.switchToView(new ViewWithoutDelegate(), null, Ui.SLIDE_IMMEDIATE);


The problem I've run into is, when I land on ViewWithoutDelegate, ViewWithDelegate's menu is still available. The `null` hasn't cleared out the delegate, rather it's caused it to cascade into the next view.

My question is: is this the expected behavior?

My fix for this has been to create a new delegate that no-ops everything out, e.g.:

Ui.switchToView(new ViewWithoutDelegate(), new ViewWithoutDelegateStubbedDelegate(), Ui.SLIDE_IMMEDIATE);


I was surprised at this behavior so I could see this biting other folks as well, so would love some clarification here.