Monday, April 28, 2025
4 changes · saas-17.4
Resolved issues and error corrections
This fixes a compatibility issue that prevented the PDF viewer from opening in Safari on iOS 17.3 and earlier. Users on affected iPhones and iPads can now view PDFs without needing to update their browser or device software.
Original PR description
To reproduce: ============= try open PDF viewer in Safari on iOS 17.3 or below, it won't work. Problem: ======== Safari on iOS 17.3 or below doesn't support `Promise.withResolvers` Solution: ========= polyfilling `Promise.withResolvers` in concerned files. opw-4232179 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fix ensures that when multiple Point of Sale orders are open, validating one eWallet payment only deducts the wallet balance for that finalized order. It prevents customers' eWallet balances from being reduced incorrectly on other open orders, improving payment accuracy and customer trust.
Original PR description
## Version: 17.4 Fixed in 18.0+ by SBEL via https://github.com/odoo/odoo/pull/204942 ## Issue: When two orders are open simultaneously, each using an eWallet payment, finalizing one order causes the…
## Version:
17.4
Fixed in 18.0+ by SBEL via https://github.com/odoo/odoo/pull/204942
## Issue:
When two orders are open simultaneously, each using an eWallet payment, finalizing one order causes the second order's wallet amount to be incorrectly withdrawn as well.
## Steps to reproduce:
- Create an eWallet via `Point of Sale / Products / Gift cards & eWallet`:
- Set a random name and select `eWallet` as `Program Type`;
- Click on the `Generate eWallet` button;
- In the `Customers` field, select 2 customers;
- Change the value to 100$;
- Open any register via the `Point of Sale` app:
- On the first order:
- Add any product;
- Via the `Customer` button, select one of the 2 customers having an eWallet;
- Click on the `eWallet Pay` button;
- Open a new order *(via the `Orders` button from the top right corner menu)*:
- Add any product;
- Via the `Customer` button, select the second customers having an eWallet;
- Click on the `eWallet Pay` button;
- Click on the `Payment` button:
- Validate the payment *(the due amount should be equal to 0)*;
- Access the eWallet program via `Point of Sale / Products / Gift cards & eWallet`:
- Display all wallets by clicking on the `eWallets` smart button;
- Both customers have less than 100$ even though only one order has been finalized.
## Cause:
When processing a payment, all open orders are checked *(offline feature)* to ensure that paid orders are stored in the database (ref: 6e63f8731c03d9f4deef67604ca879e3d0716366).
The commit 51eb875e7c1c89818e44a8c52c88a77c09c5de75 ensures the loyalty program isn't computed twice when orders were processed offline and applies only to open paid orders.
However, the `is_paid` method does not verify whether the order is finalized — it only checks if the due amount is non-positive. As an open order with an eWallet payment still has `draft` status but a $0 due amount, the loyalty program is incorrectly computed for it, and the order remains open.
## Fix:
Backporting https://github.com/odoo-dev/odoo/commit/a5c92b3a4f41bf8969578e5870a8576ebf829718 in saas-17.4 context.
opw-4557586Fixed an issue where QR payment information could fail to update on customer-facing displays when using remote or proxy display setups. This helps ensure customers see accurate payment QR codes during point-of-sale checkout.
Original PR description
If the customer display type is remote or proxy, the data goes through JSON serialization before being sent. This causes undefined property to not be send. When we change `this.order.qrPaymentData` from an object to undefined, the useEffect will not be triggered. This is not the case with null. https://github.com/odoo/odoo/blob/2439af09c7586a22822549164b677fa6fb805359/addons/point_of_sale/static/src/customer_display/customer_display.js#L42-L51
Fixes several issues with spreadsheet cell comments, including broken dark mode styling, unwanted focus changes during keyboard navigation, a non-working upload button, and cut-off comment actions. This makes commenting in spreadsheets smoother and more consistent for users.
Original PR description
## Description This PR fixes several issues related to comments in spreadsheet cells: - **Dark Mode Styling** The comment styles were broken in dark mode because the dark SCSS file was in the wrong…
## Description This PR fixes several issues related to comments in spreadsheet cells: - **Dark Mode Styling** The comment styles were broken in dark mode because the dark SCSS file was in the wrong asset bundle. It's now removed from `assets_backend` and added to `assets_web_dark` to fix the issue. - **Focus Issue When Using Keyboard** When using the keyboard to move around the spreadsheet, opening a comment popup would focus the composer, stopping navigation. The composer now doesn’t take focus, so keyboard navigation keeps working smoothly. - **Upload Button & Error Fixes** - The upload button was showing for spreadsheet cell comments but didn’t work. It’s now hidden. - There was also an error when editing a comment because `this.thread` wasn’t always available. Now it falls back to `this.message?.thread` when editing the message. - **Popover Visibility Fix** When posting the first comment and hovering over it, the action buttons (edit, favorite, delete) were partly cut off. This is now fixed by adding some padding to the thread style.  **Task**: [4708400](https://www.odoo.com/odoo/project/2328/tasks/4708400)