Thursday, December 25, 2025
12 changes · master
Resolved issues and error corrections
Users returning to a spreadsheet dashboard through breadcrumbs now see the dashboard they last had open instead of being reset to the first one. This preserves context and avoids extra clicks when navigating between dashboard views.
Original PR description
### Description After [PR#223171](https://github.com/odoo/odoo/pull/223171/), `useSetupAction` `getLocalState` exports the active dashboard through the loader state (`dashboardLoader.activeDashboardId`). The restore path still read `state.activeDashboardId`, so returning via the breadcrumb reset to the first dashboard. Read the saved loader state to keep the last selected dashboard. Task: [5391349](https://www.odoo.com/odoo/project/2328/tasks/5391349) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#239172
This fixes a crash that could occur when a bank journal had multiple payment method lines using the same payment method but different payment accounts. Users can now change the journal currency without encountering an error, improving reliability in accounting configuration.
Original PR description
036530a8983e485ac1ad0b9444a6aba01caabc07 introduced a bug, because it can happen to have 2 (or more) payment method lines from the same payment method. If these PML have differents payment accounts, we get a singleton error. Steps: - On Bank journal, add a new outbound payment method line, which use the same payment method as the first default one (it should be 'Manual') - Set two different payment account for each line - Then change the currency of the journal -> Traceback (singleton error) opw-5384042 Forward-Port-Of: odoo/odoo#239521
Clicking "Jump to Present" in Odoo Mail now keeps the message composer focused on desktop. Users can continue typing immediately without needing to click back into the input box, making conversations smoother.
Original PR description
**Current behavior before PR:** clicking "Jump to Present" caused the composer to lose focus, forcing users to manually focus the input before typing. **Desired behavior after PR is merged:** The composer automatically regains focus on desktop after clicking "Jump to Present". task-[5035977](https://www.odoo.com/odoo/project/1519/tasks/5035977) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#241262 Forward-Port-Of: odoo/odoo#227781
Guest users will no longer see an unpin button on pinned messages that they are not allowed to use. This keeps the messaging interface aligned with permissions, reducing confusion while preserving full pin and unpin access for internal users.
Original PR description
**Description of the issue/feature this PR addresses:** ---------------------------------------------- Currently, guest users in PinnedMessagesPanel can see the unpin button on pinned messages, but…
**Description of the issue/feature this PR addresses:** ---------------------------------------------- Currently, guest users in PinnedMessagesPanel can see the unpin button on pinned messages, but the server correctly rejects their unpin requests. This creates confusion and a poor user experience where external users see functionality that doesn't work for them. **Current behavior before PR:** ---------------------------------------------- - Guest users see the unpin button on pinned messages - Clicking the unpin button results in server rejection - UI shows functionality that guest users cannot actually use **Desired behavior after PR is merged:** ---------------------------------------------- - Guest users cannot see the unpin button on pinned messages - Internal users continue to have full pin/unpin functionality - UI accurately reflects user permissions and capabilities - Better user experience with appropriate access control Task-5033295 ---------------------------------------------- I confirm I have signed the CLA and read the PR guidelines at https://www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#241080 Forward-Port-Of: odoo/odoo#229211
Point of Sale now avoids creating missing order reference numbers when a session is closed with empty draft orders. This keeps sales records cleaner and makes reconciliation or audit checks easier for businesses.
Original PR description
Before this commit, when closing the POS session, if there were draft orders without any lines or payments, they were removed and caused gaps in the pos_reference sequence. opw-5216954 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#240579
This update fixes an unreliable automated test for the HTML editor's link feature. It helps keep development checks stable so future changes can be validated with fewer false failures.
Original PR description
Description of the issue this PR addresses: This test was not awaiting a step properly which somehow moved the selection to the overlay container which made the link popover to close resulting in further steps not working properly. runbot-234926 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#241296
The Point of Sale combo product configurator now respects the setting to hide product images. This keeps the checkout experience consistent for staff and customers across regular and combo products.
Original PR description
Before this commit: ==================== In POS, when product images were configured to be hidden, the setting was correctly applied to normal products. However, in the combo product configurator, product images were still displayed, causing inconsistency with the configured behavior. After this commit: ====================== The combo product configurator now respects the product image visibility configuration, ensuring consistent behavior across all product types in the POS interface. Task-5163955 Forward-Port-Of: odoo/odoo#241283 Forward-Port-Of: odoo/odoo#231366
This update refines the chat window's closing behavior, specifically addressing adjustments to AI overrides. The change ensures compatibility with the latest AI API, enhancing the overall chat experience. This improves the reliability and performance of the chat feature.
Original PR description
The community counterpart of this PR cleans the chat window close override. This commit adapt the ai overrides to the new API. community: https://github.com/odoo/odoo/pull/240553
This update resolves a recurring issue where a tour within the MRP barcode process was failing intermittently. The fix adds a check to ensure all necessary data is loaded before proceeding, preventing errors caused by timing conflicts. Simplifying the tour and adding extra steps ensures a smoother and more reliable user experience.
Original PR description
Test `test_no_split_uncompleted_done_move` is failing non-deterministically after https://github.com/odoo/enterprise/pull/98184 Because it was going too fast and sometimes the lines wouldn't have been loaded by the time its the step's turn. A check was added in order to make sure the lines are loaded before moving onto the next steps This commit also simplifies the tour and adds extra steps to avoid failure. Runbot: 234351 Forward-Port-Of: odoo/enterprise#100329
A recent test tour failed due to an unexpected disappearance of a newly created barcode line. This fix ensures a consistent and predictable process for scanning GS1 barcodes during package receipt, improving the reliability of our test procedures. The update also refines the tour triggers and uses helper methods for better control.
Original PR description
Runbot build error: [232683](https://runbot.odoo.com/odoo/runbot.build.error/232683) Forward-Port-Of: odoo/enterprise#101495
This update expands the functionality of the 'itsme' system to include countries beyond Belgium and the Netherlands, aligning with official coverage. This ensures that Odoo Enterprise users in more locations can utilize this secure authentication method, improving access and compliance. The change addresses a previous limitation and enhances the system's global reach.
Original PR description
Extend itsme availability beyond BE and NL to match the official itsme coverage: https://www.itsme-id.com/en-BE/business/coverage task-5424818 Forward-Port-Of: odoo/enterprise#102823 Forward-Port-Of: odoo/enterprise#102423
This update fixes a technical error that prevented some users from opening the timesheet application. The issue stemmed from incorrect menu ordering and access permissions, which caused a system traceback. The fix ensures all users can correctly access and utilize the timesheet functionality.
Original PR description
Steps to reproduce: - Login through user who has user:own timesheets only access or group_hr_timesheet_user only (basically `user demo` when demo data is installed). - Open timesheets apps. Issue: -…
Steps to reproduce: - Login through user who has user:own timesheets only access or group_hr_timesheet_user only (basically `user demo` when demo data is installed). - Open timesheets apps. Issue: - Traceback appears. Reason: - Here due to manually pushing `Timesheet Assistant Menu` having lower sequence(7) than `My Timesheets` (default sequence 10), so action is called which tries to search for which a base user will never have access to. Thus a traceback. - Also own timesheets user doesnt have access to `aw.rule` model which is need to open `Timesheet Assistant Menu`. Fixes: - Added sudo to search through action windows which is needed. - Reorder menu items sequence so we have `My Timesheets` in the starting and then `Timesheet Assistant Menu` is loaded. - Added a entry in model access CSV to give read access to aw.rule model records. Another small issue was when we generate fake data using `AwFakeEventsService` we source out all type of projects and tasks, which might cause some errors as they dont have account_id needed to make timesheets thus throwing validation on save. Fixed that by adding domain in fetch non-template data. task-5438048 Forward-Port-Of: odoo/enterprise#102779