odoo/odoo#194013

Created by Discuss, Alexandre Kühn (aku)
Closed
label
odoo-dev:saas-18.1-call-video-inset-no-flicker-aku
head
42382c9cb44701af1f54f5a9419dc7bb5d8592a7
odoo/odoo
saas-18.1 #194013

[FIX] mail: no flicker on call video stream inset

Before this commit, during a discuss call while sharing screen and enabling camera, the inset card (= small video stream preview in bottom right of call view of the participant, either camera or screen-sharing depending on other stream being main active) was flickering.

This happens because each rendering of the call view re-renders the inset, which leads to the perceived flickers from stream being re-rendered.

The main cause of re-render comes from setInset() that is invoked whenever the visibleMainCards getter is called with inset, which is triggered on renderings like mouse-hovering on call view to display the call actions. Even when the inset card is unchanged, setInset() produces another object, which forces OWL to re-render the inset component.

This commit fixes the issue by having setInset reusing the inset data object if the inset to render refers to the same inset session.

task-4484908