odoo/o-spreadsheet#8753
Created by fw-bot
Merged
at 7228270f5507ec1a7d6792437e0e6dcaf1b98eb7
Statuses:
- label
- odoo:saas-19.1-saas-18.3-fix-unbounded-ranges-rmbh-528205-fw
- head
- bf14ceb747622a632f229549d43907ea7d1c64a0
- merged
- 4 days ago by Ronakkumar Mukeshbhai Bharadiya (rmbh)
| odoo/o-spreadsheet | |
|---|---|
| saas-18.3 | #8533 |
| saas-18.4 | #8751 |
| 19.0 | #8752 |
| saas-19.1 | #8753 |
| saas-19.2 | #8754 |
| saas-19.3 | #8755 |
| master | #8757 |
[FIX] range: correctly handle unbounded ranges on row/col changes
Description:
Steps to reproduce:
- Create a sheet with 3 rows
- Set A1 = 1, A2 = 2, and C1 = SUM(A:A)
- Delete row 3
- Add a new row at the bottom
- Set A3 = 6
Issue:
- Unbounded ranges (e.g. A:A) are not properly updated on row/col changes.
The changeType can be incorrectly computed as NONE or MOVE instead
of RESIZE, causing formulas to miss newly added cells (e.g. A3 in SUM).
Cause:
- Incomplete condition handling for unbounded ranges caused inconsistent
changeType detection across different scenarios.
Fix:
- Refine changeType computation for unbounded ranges by covering all edge
cases and ensuring correct RESIZE behavior when the range should expand.
Task: 6167358
review checklist
- [ ] feature is organized in plugin, or UI components
- [ ] support of duplicate sheet (deep copy)
- [ ] in model/core: ranges are Range object, and can be adapted (adaptRanges)
- [ ] in model/UI: ranges are strings (to show the user)
- [ ] undo-able commands (uses this.history.update)
- [ ] multiuser-able commands (has inverse commands and transformations where needed)
- [ ] new/updated/removed commands are documented
- [ ] exportable in excel
- [ ] translations (_t("qmsdf %s", abc))
- [ ] unit tested
- [ ] clean commented code
- [ ] track breaking changes
- [ ] doc is rebuild (npm run doc)
- [ ] status is correct in Odoo
Forward-Port-Of: #8533