diff --git a/addons/mail/static/src/core/web/activity_mail_template.js b/addons/mail/static/src/core/web/activity_mail_template.js index 243630c7678..c7c28be069a 100644 --- a/addons/mail/static/src/core/web/activity_mail_template.js +++ b/addons/mail/static/src/core/web/activity_mail_template.js @@ -46,8 +46,12 @@ export class ActivityMailTemplate extends Component { force_email: true, }, }; + const thread = this.store.Thread.get({ + model: this.props.activity.res_model, + id: this.props.activity.res_id, + }); this.env.services.action.doAction(action, { - onClose: () => this.props.onUpdate(), + onClose: () => this.props.onUpdate(thread), }); } diff --git a/addons/mail/static/tests/activity/activity_tests.js b/addons/mail/static/tests/activity/activity_tests.js index 68968dc3972..9fdd2a9ce80 100644 --- a/addons/mail/static/tests/activity/activity_tests.js +++ b/addons/mail/static/tests/activity/activity_tests.js @@ -22,6 +22,10 @@ const views = { `, + "mail.compose.message,false,form": ` +
+ + `, }; QUnit.module("activity"); @@ -301,6 +305,7 @@ QUnit.test("activity with mail template: preview mail", async (assert) => { assert.strictEqual(action.context.default_template_id, mailTemplateId); assert.strictEqual(action.type, "ir.actions.act_window"); assert.strictEqual(action.res_model, "mail.compose.message"); + return super.doAction(...arguments); }, }); await contains(".o-mail-Activity"); @@ -308,6 +313,8 @@ QUnit.test("activity with mail template: preview mail", async (assert) => { await click(".o-mail-ActivityMailTemplate-preview"); assert.verifySteps(["do_action"]); + await click(".btn-close"); + await contains(".o-mail-Activity"); // Just to make sure that closing the modal doesn't cause traceback }); QUnit.test("activity with mail template: send mail", async (assert) => { diff --git a/addons/mail/static/tests/helpers/model_definitions_setup.js b/addons/mail/static/tests/helpers/model_definitions_setup.js index 5ef351a625e..5d236065437 100644 --- a/addons/mail/static/tests/helpers/model_definitions_setup.js +++ b/addons/mail/static/tests/helpers/model_definitions_setup.js @@ -24,6 +24,7 @@ addModelNamesToFetch([ "discuss.channel.rtc.session", "discuss.gif.favorite", "discuss.voice.metadata", + "mail.compose.message", "mail.followers", "mail.guest", "mail.link.preview",