From c14813c17f0ae08d2608b9f1475143a888c6d887 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Rahir=20=28rar=29?= Date: Mon, 8 Jan 2024 15:19:22 +0100 Subject: [PATCH] [FIX] spreadsheet_account: Prevent cell menu crash on non-fomula cell MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The adaptation made in commit 037e5b8, related to this [commit](https://github.com/odoo/o-spreadsheet/commit/17ba12211) forgot to account for non-fomula cells. closes odoo/odoo#148510 Signed-off-by: Lucas Lefèvre (lul) --- addons/spreadsheet_account/static/src/index.js | 1 + .../static/tests/ui/accounting_drilldown_tests.js | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/addons/spreadsheet_account/static/src/index.js b/addons/spreadsheet_account/static/src/index.js index 6400c2207ce..ea0d691fb6f 100644 --- a/addons/spreadsheet_account/static/src/index.js +++ b/addons/spreadsheet_account/static/src/index.js @@ -46,6 +46,7 @@ cellMenuRegistry.add("move_lines_see_records", { !evaluatedCell.error && evaluatedCell.value !== "" && cell && + cell.isFormula && getNumberOfAccountFormulas(cell.compiledFormula.tokens) === 1 ); }, diff --git a/addons/spreadsheet_account/static/tests/ui/accounting_drilldown_tests.js b/addons/spreadsheet_account/static/tests/ui/accounting_drilldown_tests.js index ceb12ce0386..025af20edac 100644 --- a/addons/spreadsheet_account/static/tests/ui/accounting_drilldown_tests.js +++ b/addons/spreadsheet_account/static/tests/ui/accounting_drilldown_tests.js @@ -66,6 +66,8 @@ QUnit.module("spreadsheet_account > Accounting Drill down", { beforeEach }, () = env.model = model; setCellContent(model, "A1", `=ODOO.BALANCE("100", 2020)`); setCellContent(model, "A2", `=ODOO.BALANCE("100", 0)`); + // Does not affect non formula cells + setCellContent(model, "A4", `5`); await waitForDataSourcesLoaded(model); selectCell(model, "A1"); const root = cellMenuRegistry @@ -76,5 +78,7 @@ QUnit.module("spreadsheet_account > Accounting Drill down", { beforeEach }, () = assert.verifySteps(["drill down action"]); selectCell(model, "A2"); assert.equal(root.isVisible(env), false); + selectCell(model, "A4"); + assert.equal(root.isVisible(env), false); }); });