Monday, December 15, 2025
8 changes · master
Enhancements to existing features
Button focus indicators are now easier to see and more consistent, especially in dark mode. This improves usability and accessibility by making it clearer which button is currently selected when navigating with a keyboard.
Original PR description
The focus states on buttons are inconsistent and sometimes hard to see (eg. darkmode secondary buttons) Defines the focus-ring-* variables to make the focus state use `o-component-active-border` everywhere. This PR makes the buttons use the `focus-ring-box-shadow` instead of the default `--btn-focus-box-shadow-rgb` with the .5 opacity. Enterprise PR: https://github.com/odoo/enterprise/pull/99537 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The project to-do onboarding content can now be extended more easily to include additional setup details, such as email alias information. This supports related enterprise functionality without changing the standard user experience.
Original PR description
This commit adds hook to allow inserting the email alias info via inheritance. Related to enterprise PR: https://github.com/odoo/enterprise/pull/97345 task-4781859
Odoo now formally marks an old default logging setup behavior as deprecated, preparing for its future removal. This is an internal cleanup that helps developers update integrations early and reduces future maintenance risk.
Original PR description
The aim is to eventually remove the default value entirely
This update improves how Odoo Mail checks whether a user belongs to a discussion channel. By moving the check directly into the database query, it reduces unnecessary processing and can make related mail and discussion actions more efficient.
Original PR description
Before this commit, we were relying on a python step to fetch the channel_ids of the user. This adds a computational overhead. We remove this overhead by directly checking the membership to the channel in the SQL query. task-5180506 > [!WARNING] > still needs a bit of cleaning of the code but waiting for runbot results --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Odoo now identifies a user's device more efficiently during each request by looking it up directly instead of scanning through a list. This can improve request handling for sessions that involve many devices, while also using clearer internal naming for stored device information.
Original PR description
With each request, it is necessary to check whether the information about the device being used needs to be updated. Before this commit, this information was in an ordered sequence. To find a device, it was necessary to loop through each element. This is not efficient, as there may be many different devices used for a single session. In fact, the device definition is the pair `ip_address` | `user_agent`. This commit allows for a constant lookup using information from the HTTP request. Note: Renaming `_trace` to `_devices` is more meaningful. Furthermore, given that this is a structural change in the session data, it was the right opportunity to do so. task-4281529
Odoo's web text formatting now supports a new marker that lets content authors align part of a line to the right. This helps create cleaner, better-structured labels or mixed left-and-right text without custom formatting work.
Original PR description
Now, odoomark can use the syntax \v that will put a span with a float right for aligning the right part to the right. TASK-5386833 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update aligns the dialogs used in Odoo's web Gantt and Studio modules with recent community changes. This ensures consistency and a more modern user experience for these key business tools. The changes are primarily focused on improving the visual presentation and functionality of the dialogs.
Original PR description
This PR adapts dialogs by mirroring community changes. Requires: - https://github.com/odoo/odoo/pull/238855 task-5159944
This update introduces a new tag widget that allows users to assign custom colors to tags using hexadecimal codes. Previously, tags were limited to a fixed color palette. This change provides greater visual flexibility and control over tag appearance within Odoo.
Original PR description
Introduces a new widget `many2many_color_dot`, an extension of the existing `many2many_tags` widget, which displays a small colored dot before the tag label instead of coloring the entire tag background. The color is read from a VARCHAR field containing a hexadecimal color code. This widget keeps most of the options from `many2many_tags`, except: - `on_tag_click` is replaced by `can_open` (boolean) to control whether clicking a tag opens the corresponding form. - `color_field` option is updated to specify the field used for the dot color. The new widget allows visual indication of custom color instead of a fixed list of colors.