diff --git a/addons/mail/static/src/components/chatter/chatter.js b/addons/mail/static/src/components/chatter/chatter.js index bafaee60a9a..1f5d054f418 100644 --- a/addons/mail/static/src/components/chatter/chatter.js +++ b/addons/mail/static/src/components/chatter/chatter.js @@ -2,6 +2,7 @@ import { registerMessagingComponent } from '@mail/utils/messaging_component'; import { useUpdate } from '@mail/component_hooks/use_update/use_update'; +import { useRefToModel } from '@mail/component_hooks/use_ref_to_model/use_ref_to_model'; const { Component } = owl; const { useRef } = owl.hooks; @@ -14,6 +15,7 @@ export class Chatter extends Component { constructor(...args) { super(...args); useUpdate({ func: () => this._update() }); + useRefToModel({ fieldName: 'threadRef', modelName: 'mail.chatter', propNameAsRecordLocalId: 'chatterLocalId', refName: 'thread' }); /** * Reference of the composer. Useful to focus it. */ @@ -84,28 +86,6 @@ export class Chatter extends Component { } } - //-------------------------------------------------------------------------- - // Handlers - //-------------------------------------------------------------------------- - - /** - * @private - */ - _onComposerMessagePosted() { - this.chatter.update({ isComposerVisible: false }); - } - - /** - * @private - * @param {MouseEvent} ev - */ - _onScrollPanelScroll(ev) { - if (!this._threadRef.comp) { - return; - } - this._threadRef.comp.onScroll(ev); - } - } Object.assign(Chatter, { diff --git a/addons/mail/static/src/components/chatter/chatter.xml b/addons/mail/static/src/components/chatter/chatter.xml index d9cf20b478e..84435574bf0 100644 --- a/addons/mail/static/src/components/chatter/chatter.xml +++ b/addons/mail/static/src/components/chatter/chatter.xml @@ -19,12 +19,12 @@ isCompact="false" isExpandable="true" textInputSendShortcuts="['ctrl-enter', 'meta-enter']" - t-on-o-message-posted="_onComposerMessagePosted" + t-on-o-message-posted="chatter.onComposerMessagePosted" t-ref="composer" /> -