Currently we have a bunch of state information store as bits in our model which our views are bound to (see chrome/vr/browser/model/model.h).
This makes state changes difficult. For example, going from default browsing mode to voice search, then hitting back should go back into default browsing mode, but going from default browsing mode -> omnibox editing mode -> voice search, then hitting back should go into omnibox editing mode.
The notion of a ui modes should make this easier and clean up our bindings as well.
Comment 1 by bugdroid1@chromium.org
, Dec 22 2017