diff --git a/bigbluebutton-html5/imports/ui/components/breakout-room/breakout-remaining-time/container.jsx b/bigbluebutton-html5/imports/ui/components/breakout-room/breakout-remaining-time/container.jsx index c92378afc4b018fcc0c4817936f119d2ddef3021..257ad9b6f15f2d51eeb6db98767905184ea539a6 100644 --- a/bigbluebutton-html5/imports/ui/components/breakout-room/breakout-remaining-time/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/breakout-room/breakout-remaining-time/container.jsx @@ -34,6 +34,8 @@ const intlMessages = defineMessages({ }); let timeRemaining = 0; +let prevTimeRemaining = 0; + const timeRemainingDep = new Tracker.Dependency(); let timeRemainingInterval = null; @@ -89,8 +91,12 @@ export default injectNotify(injectIntl(withTracker(({ const data = {}; if (breakoutRoom) { const roomRemainingTime = breakoutRoom.timeRemaining; + const localRemainingTime = getTimeRemaining(); + const shouldResync = prevTimeRemaining !== roomRemainingTime && roomRemainingTime !== localRemainingTime; + + if ((!timeRemainingInterval || shouldResync) && roomRemainingTime) { + prevTimeRemaining = roomRemainingTime; - if (!timeRemainingInterval && roomRemainingTime) { timeRemainingInterval = startCounter( roomRemainingTime, setTimeRemaining,