diff --git a/addons/mail/static/src/components/composer/composer.xml b/addons/mail/static/src/components/composer/composer.xml index 942c906b7d6..6b99297f2d8 100644 --- a/addons/mail/static/src/components/composer/composer.xml +++ b/addons/mail/static/src/components/composer/composer.xml @@ -122,8 +122,8 @@
- - + + - +
- + - +
diff --git a/addons/mail/static/src/models/composer_view.js b/addons/mail/static/src/models/composer_view.js index a459994e73b..a05f1691596 100644 --- a/addons/mail/static/src/models/composer_view.js +++ b/addons/mail/static/src/models/composer_view.js @@ -1424,6 +1424,15 @@ registerModel({ default: {}, inverse: 'owner', }), + threadTextualTypingStatusView: one('ThreadTextualTypingStatusView', { + compute() { + if (this.hasThreadTyping) { + return {}; + } + return clear(); + }, + inverse: 'owner', + }), /** * States the thread view on which this composer allows editing (if any). */ diff --git a/addons/mail/static/src/models/thread_textual_typing_status_view.js b/addons/mail/static/src/models/thread_textual_typing_status_view.js new file mode 100644 index 00000000000..809babcdb3c --- /dev/null +++ b/addons/mail/static/src/models/thread_textual_typing_status_view.js @@ -0,0 +1,20 @@ +/** @odoo-module **/ + +import { registerModel } from '@mail/model/model_core'; +import { one } from '@mail/model/model_field'; + +registerModel({ + name: 'ThreadTextualTypingStatusView', + fields: { + owner: one('ComposerView', { + identifying: true, + inverse: 'threadTextualTypingStatusView', + }), + thread: one('Thread', { + compute() { + return this.owner.composer.activeThread; + }, + required: true, + }), + }, +});