diff --git a/addons/web/static/src/views/form/form_controller.js b/addons/web/static/src/views/form/form_controller.js index 41a1d43b75a..d467b75741f 100644 --- a/addons/web/static/src/views/form/form_controller.js +++ b/addons/web/static/src/views/form/form_controller.js @@ -187,7 +187,9 @@ export class FormController extends Component { this.fieldsToTranslate = useState(fieldsToTranslate || {}); const activeNotebookPages = { ...state.activeNotebookPages }; this.onNotebookPageChange = (notebookId, page) => { - activeNotebookPages[notebookId] = page; + if (page) { + activeNotebookPages[notebookId] = page; + } }; useSetupView({ diff --git a/addons/web/static/tests/views/form/form_view_tests.js b/addons/web/static/tests/views/form/form_view_tests.js index 9329c3a031d..0414cbe1ac1 100644 --- a/addons/web/static/tests/views/form/form_view_tests.js +++ b/addons/web/static/tests/views/form/form_view_tests.js @@ -12976,4 +12976,41 @@ QUnit.module("Views", (hooks) => { assert.strictEqual(target.querySelector(".o_form_nosheet").innerHTML, "
"); assert.verifySteps(["warn", "warn", "warn", "warn"]); }); + + QUnit.test("reload form view with an empty notebook", async function (assert) { + assert.expect(1); + + serverData.views = { + "partner,false,form": ` + `, + "partner,false,list": '