Tweak lifecycle of nav bar/view
- Don't wait for the nav bar view to be attached to register the bar
with the controller. This might (repro is rare) address a crash where
the view could be created twice (with the same nav bar layer which
is rejected by WM), because the initial bar has been created, but
wasn't cleaned up because it wasn't attached/registered yet before
the second request to recreate
- As as result of the above, it's possible that other code will
reference the bar before it's attached, so the bar needs to set the
view reference when it is created
- Also remove some deferred callbacks when detaching the view which
could cause the callbacks to reference a null view
Bug: 188728214
Bug: 183947954
Test: atest SystemUITests with all nav modes
Change-Id: I9c05b273251c9f95cb5d693402ae53b35cc94ab5
3 files changed