Monday, September 21, 2026
17 changes · master
Enhancements to existing features
This update fixes small visual inconsistencies in the website builder and website settings, including dropdown corners, focus outlines, section background color, and button spacing. These refinements make the editing experience look more consistent after the recent interface redesign, with no expected workflow changes for users.
Original PR description
This PR fixes minor visual issues within the builder that were either related to the webclient redesign or already there before but became more visible after the webclient redesign. - Fix the first and last items of a dropdown receiving the wrong border radius (e.g header selector) - Ensure the the focus state on snippet category thumbnail has the right border-radius - Fix a wrong background-color for the website section in the settings view - Fix the button-group gap to match the new logic introduced in https://github.com/odoo/odoo/commit/f8f3da6fed103bee179459197b34edede737aaab task-6511995 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#288101
The HR structure type setting is now hidden by default, reducing clutter in the employee management setup. This keeps the interface simpler for users who do not need payroll structure configuration while preserving the underlying capability.
Original PR description
task-6569952 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#288902
The salary adjustment form now uses clearer action labels for pausing and restarting an adjustment. A visible paused status ribbon helps payroll users immediately recognize when an adjustment is on hold, reducing confusion during payroll review.
Original PR description
- renamed the buttons to pause and restart the adjustment - added a ribbon if the status is paused task-6462095
This update reorganizes how report-related actions are handled behind the scenes across accounting and local compliance reports. Users should see the same reporting workflows, while the change makes the system easier to maintain and extend in future updates.
Original PR description
Forward-Port-Of: odoo/enterprise#132210
Belgian payroll employee and contract template forms no longer show the payroll structure type field. This reduces unnecessary choices for users and helps keep localization-specific payroll setup clearer.
Original PR description
- hide `structure_type_id` on employee and contract template form views for BE localization task-6569952 Forward-Port-Of: odoo/enterprise#131955
The card options menu in kanban views has been visually adjusted to better match Odoo's Frost design direction. It now sits slightly away from the card edge and uses a standard icon size, creating a cleaner and more consistent user experience.
Original PR description
Before this commit, the ellipsis menu was pinned edge-to-edge in the card's top-right corner and shaped to follow the card's rounded corner. This commit detaches it from the card edges, following Frost's move away from edge-to-edge elements. Its icon also drops back to the standard size. task-6584479 requires: https://github.com/odoo/enterprise/pull/132201 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#289240
The working schedules list view now aligns calendar names more neatly in each row. This small visual improvement makes the list easier to scan and provides a more polished user experience.
Original PR description
Add a class `o_resource_calendar_list` for the working schedules list view to align the list rows in the middle. task-6562529 Forward-Port-Of: odoo/odoo#289140
Several Odoo apps were updated so elements intended to appear light gray keep the same look after the broader web client design color changes. This helps preserve visual consistency in screens, dialogs, notifications, reports, and booking flows without changing business behavior.
Demo quotation templates were updated so sales teams can better showcase and test quotation features. This helps evaluators and trainers demonstrate a more complete sales flow using realistic sample data.
Original PR description
*: product, sale_management, stock Improve the available demo template to demo and test all features from quotations. task-6566585 Forward-Port-Of: odoo/odoo#288087
Payroll warning records now keep a clearer history of important field changes and include the discussion area directly on the form. This helps HR teams follow updates, comments, and context in one place for better traceability.
Original PR description
task-6574042
Payslip validation errors now show helpful descriptions in addition to error titles when available. When multiple issues are found, they are presented as a numbered list, making it easier for payroll users to understand and resolve configuration problems.
Original PR description
Validating a payslip for an employee can raise errors (regarding salary configuration for example.) The validation message providing insights to the users used to be a list of the titles of the errors. Some of these validation errors may have a description as well, which would be useful for the user. The errors message has been adapted to display title and description if any. If more than one error is shown, the message format is also adapted as a numbered list. task-6526610 Forward-Port-Of: odoo/enterprise#131977
Belgian demo payroll employees now include the private address details required for 281 tax report validation. This helps demo environments generate Belgian 281 reports cleanly without address-related errors.
Original PR description
When generating Belgian 281 reports, the validation fails if employees lack a valid private address (street, zip, city, and country). So this change adds private address fields to the Belgian demo employees and their corresponding `hr.version` records to ensure the report can be generated cleanly in demo environments. Task:6582075
Spreadsheet-related screens now use a shared notification plugin instead of the previous notification store. This streamlines how messages and alerts are handled across spreadsheet features, improving consistency and maintainability without changing core business workflows.
Original PR description
This commit replace the store `NotificationStore` with an owl plugin `NotificationPlugin`. Task: 6542121
Spreadsheet notifications were moved to a newer plugin-based system, making them better aligned with the spreadsheet interface architecture. This should improve maintainability and consistency without changing the core user workflow.
Original PR description
This commit replace the store `NotificationStore` with an owl plugin `NotificationPlugin`. Task: [6542121](https://www.odoo.com/odoo/2328/tasks/6542121) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update adds a debug option that lets teams temporarily turn off cached data requests in the web interface. It helps performance investigations show the true loading cost of menus and actions, making slow areas easier to identify and improve.
Original PR description
The JS rpc cache can sometimes hide real performance issues of some menus/actions. This commit adds a "Disable RPC Cache" debug menu item, which toggles a `cache=0` url query param. When it is set, the rpc cache is disabled, so every rpc made with a `cache` setting goes straight to the network. This allows to analyse performance or debug performance issues more easily. Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#289183
An unused online payment wizard file has been fully removed after it was previously emptied but left in place. This is an internal cleanup that reduces clutter and helps keep the payment codebase easier to maintain, with no expected impact for users.
Original PR description
Since 56e73e8d8d674e272b809ef7628b0705cbd76900, we don't need the wizard anymore. That commit emptied the file without actually removing it, this commit does that. No task ID Forward-Port-Of: odoo/enterprise#132169
Adds a supporting view in the phone validation module so call activities can be formatted consistently in upcoming versions. This is a preparatory change for forward-porting related work and has minimal direct user impact.
Original PR description
See [1], which introduces a view in 20.0 so we need this in master first to be able to forward-port. [1]: https://github.com/odoo/odoo/pull/289456 Related to task-6537285
Original PR description
- requires: https://github.com/odoo/odoo/pull/288603 With the webclient redesign deployed for Odoo 17, we used to set `$secondary` to `$gray-300`, a light gray, while Bootstrap's secondary is a dark…
- requires: https://github.com/odoo/odoo/pull/288603
With the webclient redesign deployed for Odoo 17, we used to set `$secondary` to `$gray-300`, a light gray, while Bootstrap's secondary is a dark gray. With the new webclient redesign, it is now sets to `$o-gray-700`, closer to the Bootstrap default, so everything built on `$secondary` got darker: `bg-secondary`, `text-bg-secondary`, `border-secondary`, the `-subtle`/`-emphasis` variants, `alert-secondary` and SCSS rules reading `$secondary`.
Usages that meant "light gray" now use `gray-300`, the former value of `$secondary`, or the closest gray token, so they render as before. To get that light look, don't use secondary, instead, use:
```
bg-secondary -> bg-300
text-bg-secondary (no badge) -> text-bg-300
text-secondary (icons, dots) -> text-300
bg-secondary-subtle -> bg-100
text-secondary-emphasis -> text-700
border-secondary-subtle -> border-light-subtle
alert-secondary -> alert-light
border-secondary -> drop it: `border`, `border-top`, ...
already draw `--border-color`
(gray-300); on a `.card`, use `border`
$secondary -> $gray-300
$secondary-text-emphasis -> $gray-700
@each ... in $theme-colors -> map-merge($theme-colors,
("secondary": $gray-300))
```
task-6578378
Forward-Port-Of: odoo/enterprise#131768