[1] refactored the Configurator from its own frontend app to a component of the web client. [2] forward-ported a fix, targeting the Configurator standalone app, which did not need to remove the window "popstate" event listener. But after [1], that global listener was never removed. This commit changes adding this event listener by using the useExternalListener hook, which will remove it when the Configurator is unmounted. [1]: https://github.com/odoo/odoo/commit/31cc10b91dc7762e23b4bde9b945be0c4ce3fe3b [2]: https://github.com/odoo/odoo/commit/3d3f9ffaa7caf5280602553459062fc6c9e35856 task-2687506 Part-of: odoo/odoo#97408