I've been stuck with an issue for days and I can't seem to find an answer anywhere.
I'm working on a odoo application. The core functionality generates breadcrumbs that get displayed on the page as you navigate from view to view. In the background, odoo builds and updates(as the user navigates) an object called "controllerStack". References to the "controllerStack" can only be found on "action_service.js" (addons/web/static/src/webclient/actions/action_service.js).
The object gets defined as "let controllerStack = [];" as an empty array, just a couple of lines after the "makeActionManager" function declaration. Which is the top-most level function in the file.
What I'm stuck with is that although the array gets referenced multiple times, in multiple nested functions. But It never gets a value assigned to it directly. And the only parameter that the top function receives is an environment data object.
What I'm trying to accomplish is to re-build the controller stack using data from controllers and views previously loaded. The controllerStack does not persists after a hard reload (page refresh). So, if you refresh the page, you come right back to it, but the breadcrumbs are gone and the controllerStack only has the "currentController".
Do you know how the controllerStack gets created and passed to other functions?
Hopefully this makes sense and someone has dealt with this before.
Thanks everybody!