odoo/o-spreadsheet#6448

Created by BI, Adrien Minne (adrm)

Blocked

label
odoo:master-cell-animation-adrm
head
fa525135ad1cfa74605173cd9c894190799bc512
odoo/o-spreadsheet
master #6448 missing r+

[IMP] renderer: add animations on cell change

Description:

This commit adds animations in the grid's canvas when a cell is changed.
The animations are defined in the cell_animation_registry.ts and
includes:

  • fade in the cell when it gets a new content.
  • fate out the cell when its content is removed.
  • text sliding animation when the text is changed.
  • color gradient animation when the cell colors is changed
  • and more

The feature is designed to not impact the current grid drawing logic.
We still have a first step yo create Box from the model content,
and a second step to draw the Box in the canvas. The animations
are a step in between, where we change the Box depending on the
animation progress, and possibly add some additional Box to be drawn.

Task: 4805149

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