Monday, August 12, 2024
1 change · saas-17.2
Resolved issues and error corrections
This fix makes web addresses consistent by keeping query settings in a stable order. It prevents duplicate-looking pages from being added repeatedly to browser history, making navigation and debugging smoother for users.
Original PR description
When on the main menu, `/odoo?cids=1`, if you activate the debug assets, the router will push a new key (debug) into the query string : `/odoo?cids=1&debug=assets`. To fully activate the debug, a reload will be done. After the reload, the action service will push the new loaded state (the menu), taking into account the locked keys (in this case: `cid` and `debug`), which will inverse the order of the query string : `/odoo?debug=assets&cids=1`. This occurs because, the order of the keys on the query string will depend on: the push order; if the keys are locked keys or not; and of the kind of push state (replacement or simple push state). The issue with this almost "random" order of the keys, is that the router could push the same URL (with keys in different order) multiple times into the browser history. This commit, will avoid this by sorting the keys of the query string. opw-3557575