Merge remote-tracking branch 'upstream/v2.5.x-release' into refactor-notes-viewing-mode

This commit is contained in:
Tainan Felipe 2022-04-07 15:40:59 -03:00
commit 3f05270c03
8 changed files with 18 additions and 10 deletions

View File

@ -470,6 +470,7 @@ class BreakoutRoom extends PureComponent {
.filter((user) => !stateUsersId.includes(user.userId)) .filter((user) => !stateUsersId.includes(user.userId))
.map((user) => ({ .map((user) => ({
userId: user.userId, userId: user.userId,
extId: user.extId,
userName: user.name, userName: user.name,
isModerator: user.role === ROLE_MODERATOR, isModerator: user.role === ROLE_MODERATOR,
room: 0, room: 0,
@ -611,7 +612,8 @@ class BreakoutRoom extends PureComponent {
} }
populateWithLastBreakouts(lastBreakouts) { populateWithLastBreakouts(lastBreakouts) {
const { getBreakoutUserWasIn, users, intl } = this.props; const { getBreakoutUserWasIn, intl } = this.props;
const { users } = this.state;
const changedNames = []; const changedNames = [];
lastBreakouts.forEach((breakout) => { lastBreakouts.forEach((breakout) => {

View File

@ -1,9 +1,11 @@
import _ from 'lodash';
import Pads, { PadsUpdates } from '/imports/api/pads'; import Pads, { PadsUpdates } from '/imports/api/pads';
import { makeCall } from '/imports/ui/services/api'; import { makeCall } from '/imports/ui/services/api';
import Auth from '/imports/ui/services/auth'; import Auth from '/imports/ui/services/auth';
import Settings from '/imports/ui/services/settings'; import Settings from '/imports/ui/services/settings';
const PADS_CONFIG = Meteor.settings.public.pads; const PADS_CONFIG = Meteor.settings.public.pads;
const THROTTLE_TIMEOUT = 2000;
const getLang = () => { const getLang = () => {
const { locale } = Settings.application; const { locale } = Settings.application;
@ -38,6 +40,11 @@ const hasPad = (externalId) => {
const createSession = (externalId) => makeCall('createSession', externalId); const createSession = (externalId) => makeCall('createSession', externalId);
const throttledCreateSession = _.throttle(createSession, THROTTLE_TIMEOUT, {
leading: true,
trailing: false,
});
const buildPadURL = (padId) => { const buildPadURL = (padId) => {
if (padId) { if (padId) {
const params = getParams(); const params = getParams();
@ -89,7 +96,7 @@ export default {
getPadId, getPadId,
createGroup, createGroup,
hasPad, hasPad,
createSession, createSession: (externalId) => throttledCreateSession(externalId),
buildPadURL, buildPadURL,
getRev, getRev,
getPadTail, getPadTail,

View File

@ -737,7 +737,7 @@ class Presentation extends PureComponent {
return ( return (
<PresentationMenu <PresentationMenu
fullscreenRef={this.refPresentationContainer} fullscreenRef={this.refPresentationContainer}
screenshotRef={this.getSvgRef()} getScreenshotRef={this.getSvgRef}
elementName={intl.formatMessage(intlMessages.presentationLabel)} elementName={intl.formatMessage(intlMessages.presentationLabel)}
elementId={fullscreenElementId} elementId={fullscreenElementId}
toggleSwapLayout={MediaService.toggleSwapLayout} toggleSwapLayout={MediaService.toggleSwapLayout}

View File

@ -90,7 +90,7 @@ const PresentationMenu = (props) => {
currentElement, currentElement,
currentGroup, currentGroup,
fullscreenRef, fullscreenRef,
screenshotRef, getScreenshotRef,
handleToggleFullscreen, handleToggleFullscreen,
layoutContextDispatch, layoutContextDispatch,
meetingName, meetingName,
@ -199,7 +199,7 @@ const PresentationMenu = (props) => {
}, },
}); });
toPng(screenshotRef, { toPng(getScreenshotRef(), {
width: window.screen.width, width: window.screen.width,
height: window.screen.height, height: window.screen.height,
}).then((data) => { }).then((data) => {

View File

@ -1039,7 +1039,7 @@ class PresentationUploader extends Component {
let hasNewUpload = false; let hasNewUpload = false;
presentations.map((item) => { presentations.forEach((item) => {
if (item.id.indexOf(item.filename) !== -1 && item.upload.progress === 0) hasNewUpload = true; if (item.id.indexOf(item.filename) !== -1 && item.upload.progress === 0) hasNewUpload = true;
}); });

View File

@ -1,8 +1,8 @@
import styled from 'styled-components'; import styled from 'styled-components';
import Styled from '/imports/ui/components/user-list/styles'; import StyledContent from '/imports/ui/components/user-list/user-list-content/styles';
const ListItem = styled(Styled.ListItem)``; const ListItem = styled(StyledContent.ListItem)``;
export default { export default {
ListItem, ListItem,

View File

@ -637,7 +637,7 @@ class PollDrawComponent extends Component {
} }
ariaResultLabel = `${intl.formatMessage(intlMessages.pollResultAria)}: `; ariaResultLabel = `${intl.formatMessage(intlMessages.pollResultAria)}: `;
textArray.map((t, idx) => { textArray.forEach((t, idx) => {
const pollLine = t.slice(0, -1); const pollLine = t.slice(0, -1);
ariaResultLabel += `${idx > 0 ? ' |' : ''} ${pollLine.join(' | ')}`; ariaResultLabel += `${idx > 0 ? ' |' : ''} ${pollLine.join(' | ')}`;
}); });

View File

@ -437,7 +437,6 @@ class AudioManager {
this.inputDevice = { id: 'default' }; this.inputDevice = { id: 'default' };
} }
window.parent.postMessage({ response: 'notInAudio' }, '*');
window.removeEventListener('audioPlayFailed', this.handlePlayElementFailed); window.removeEventListener('audioPlayFailed', this.handlePlayElementFailed);
const bridge = const bridge =