From 7cfde26a932e81e3b0b5489c80fbb29da163d2f2 Mon Sep 17 00:00:00 2001 From: tsm-odoo Date: Thu, 5 May 2022 14:24:00 +0000 Subject: [PATCH] [FIX] mail: ensures getMessagingComponent is called after registration MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Adds an import to wait for the required components to be added to the messaging components registry before their parent use getMessagingComponent. Otherwise, any slight delay could lead to missing components. closes odoo/odoo#91083 X-original-commit: 45d04504b2b0427b666f16d1b450edb73e4c14e5 Related: odoo/enterprise#27193 Signed-off-by: Sébastien Theys (seb) --- .../src/components/discuss_container/discuss_container.js | 2 ++ .../messaging_menu_container/messaging_menu_container.js | 2 ++ .../rtc_activity_notice_container.js | 2 ++ addons/mail/static/src/public/discuss_public_boot.js | 3 +++ .../src/services/chat_window_service/chat_window_service.js | 2 ++ .../mail/static/src/services/dialog_service/dialog_service.js | 2 ++ addons/mail/static/src/widgets/form_renderer/form_renderer.js | 2 ++ .../src/widgets/notification_alert/notification_alert.js | 2 ++ 8 files changed, 17 insertions(+) diff --git a/addons/mail/static/src/components/discuss_container/discuss_container.js b/addons/mail/static/src/components/discuss_container/discuss_container.js index ada09ead34e..0105ab33d19 100644 --- a/addons/mail/static/src/components/discuss_container/discuss_container.js +++ b/addons/mail/static/src/components/discuss_container/discuss_container.js @@ -2,6 +2,8 @@ import { useModels } from '@mail/component_hooks/use_models'; import { useUpdate } from '@mail/component_hooks/use_update'; +// ensure component is registered before-hand +import '@mail/components/discuss/discuss'; import { getMessagingComponent } from "@mail/utils/messaging_component"; const { Component, onWillUnmount } = owl; diff --git a/addons/mail/static/src/components/messaging_menu_container/messaging_menu_container.js b/addons/mail/static/src/components/messaging_menu_container/messaging_menu_container.js index 15d21b804a0..98f80fe47e8 100644 --- a/addons/mail/static/src/components/messaging_menu_container/messaging_menu_container.js +++ b/addons/mail/static/src/components/messaging_menu_container/messaging_menu_container.js @@ -1,6 +1,8 @@ /** @odoo-module **/ import { useModels } from '@mail/component_hooks/use_models'; +// ensure components are registered beforehand. +import '@mail/components/messaging_menu/messaging_menu'; import { getMessagingComponent } from "@mail/utils/messaging_component"; const { Component, useSubEnv } = owl; diff --git a/addons/mail/static/src/components/rtc_activity_notice_container/rtc_activity_notice_container.js b/addons/mail/static/src/components/rtc_activity_notice_container/rtc_activity_notice_container.js index 98bad460d49..c0ed9eda5da 100644 --- a/addons/mail/static/src/components/rtc_activity_notice_container/rtc_activity_notice_container.js +++ b/addons/mail/static/src/components/rtc_activity_notice_container/rtc_activity_notice_container.js @@ -1,6 +1,8 @@ /** @odoo-module **/ import { useModels } from '@mail/component_hooks/use_models'; +// ensure components are registered beforehand. +import '@mail/components/rtc_activity_notice/rtc_activity_notice'; import { getMessagingComponent } from "@mail/utils/messaging_component"; const { Component, useSubEnv } = owl; diff --git a/addons/mail/static/src/public/discuss_public_boot.js b/addons/mail/static/src/public/discuss_public_boot.js index 3200d29c8b3..453c1d19ae1 100644 --- a/addons/mail/static/src/public/discuss_public_boot.js +++ b/addons/mail/static/src/public/discuss_public_boot.js @@ -2,6 +2,9 @@ import { data } from 'mail.discuss_public_channel_template'; +// ensure components are registered beforehand. +import '@mail/components/dialog_manager/dialog_manager'; +import '@mail/components/discuss_public_view/discuss_public_view'; import { MessagingService } from '@mail/services/messaging/messaging'; import { getMessagingComponent } from '@mail/utils/messaging_component'; diff --git a/addons/mail/static/src/services/chat_window_service/chat_window_service.js b/addons/mail/static/src/services/chat_window_service/chat_window_service.js index 34b17002158..5017674a52f 100644 --- a/addons/mail/static/src/services/chat_window_service/chat_window_service.js +++ b/addons/mail/static/src/services/chat_window_service/chat_window_service.js @@ -1,5 +1,7 @@ /** @odoo-module **/ +// ensure component is registered beforehand. +import '@mail/components/chat_window_manager/chat_window_manager'; import { getMessagingComponent } from "@mail/utils/messaging_component"; import AbstractService from 'web.AbstractService'; diff --git a/addons/mail/static/src/services/dialog_service/dialog_service.js b/addons/mail/static/src/services/dialog_service/dialog_service.js index 2e95ab7c0e3..bba424f3778 100644 --- a/addons/mail/static/src/services/dialog_service/dialog_service.js +++ b/addons/mail/static/src/services/dialog_service/dialog_service.js @@ -1,5 +1,7 @@ /** @odoo-module **/ +// ensure component is registered beforehand. +import '@mail/components/dialog_manager/dialog_manager'; import { getMessagingComponent } from "@mail/utils/messaging_component"; import AbstractService from 'web.AbstractService'; diff --git a/addons/mail/static/src/widgets/form_renderer/form_renderer.js b/addons/mail/static/src/widgets/form_renderer/form_renderer.js index 993640de1f5..6e7cc377238 100644 --- a/addons/mail/static/src/widgets/form_renderer/form_renderer.js +++ b/addons/mail/static/src/widgets/form_renderer/form_renderer.js @@ -1,5 +1,7 @@ /** @odoo-module **/ +// ensure component is registered beforehand. +import '@mail/components/chatter_container/chatter_container'; import { getMessagingComponent } from "@mail/utils/messaging_component"; import FormRenderer from 'web.FormRenderer'; diff --git a/addons/mail/static/src/widgets/notification_alert/notification_alert.js b/addons/mail/static/src/widgets/notification_alert/notification_alert.js index 05d564e0f42..3bc6d179158 100644 --- a/addons/mail/static/src/widgets/notification_alert/notification_alert.js +++ b/addons/mail/static/src/widgets/notification_alert/notification_alert.js @@ -1,5 +1,7 @@ /** @odoo-module **/ +// ensure component is registered beforehand. +import '@mail/components/notification_alert/notification_alert'; import { getMessagingComponent } from "@mail/utils/messaging_component"; import { ComponentWrapper, WidgetAdapterMixin } from 'web.OwlCompatibility';