odoo/o-spreadsheet#6760

Created by BI, Dhrutik Patel (dhrp)

Blocked

label
odoo:18.0-fix-table-move-columns-rows-dhrp
head
faa8eba8b43ab5baed05984c2be6764f6cacdb40
odoo/o-spreadsheet
18.0 #6760 missing r+
saas-18.1
saas-18.2
saas-18.3
saas-18.4
master

[FIX] selection: prevent partial move of table rows with headers

Description:

Previously, it was possible to move only part of a table that includes header rows.
This could result in broken table structure or orphaned headers.

This PR prevents such partial row moves by disallowing the operation when the selected rows include header rows but not the full table range.

Task: 4862731

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