diff --git a/addons/mail/static/src/js/core/translation.js b/addons/mail/static/src/js/core/translation.js new file mode 100644 index 00000000000..a8db8cebc57 --- /dev/null +++ b/addons/mail/static/src/js/core/translation.js @@ -0,0 +1,27 @@ +odoo.define('mail/static/src/js/core/translation.js', function (require) { +'use strict'; + +const { TranslationDataBase } = require('web.translation'); + +const { Component } = owl; + +TranslationDataBase.include({ + /** + * @override + */ + set_bundle() { + const res = this._super(...arguments); + if (Component.env.messaging) { + // Update messaging locale whenever the translation bundle changes. + // In particular if messaging is created before the end of the + // `load_translations` RPC, the default text direction has to be + // updated by the received one. + Component.env.messaging.locale.update({ + textDirection: this.parameters.direction, + }); + } + return res; + }, +}); + +}); diff --git a/addons/mail/views/assets.xml b/addons/mail/views/assets.xml index 7a6447651be..4b1877277e0 100644 --- a/addons/mail/views/assets.xml +++ b/addons/mail/views/assets.xml @@ -9,6 +9,8 @@