123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- /* global $ */
-
- import SmallVideo from '../videolayout/SmallVideo';
-
- const logger = require('jitsi-meet-logger').getLogger(__filename);
-
- /**
- *
- */
- export default function SharedVideoThumb(participant, videoType, VideoLayout) {
- this.id = participant.id;
-
- this.url = participant.id;
- this.setVideoType(videoType);
- this.videoSpanId = 'sharedVideoContainer';
- this.container = this.createContainer(this.videoSpanId);
- this.$container = $(this.container);
-
- this.bindHoverHandler();
- SmallVideo.call(this, VideoLayout);
- this.isVideoMuted = true;
- this.updateDisplayName();
-
- this.container.onclick = this._onContainerClick;
- this.container.ondblclick = this._onContainerDoubleClick;
- }
- SharedVideoThumb.prototype = Object.create(SmallVideo.prototype);
- SharedVideoThumb.prototype.constructor = SharedVideoThumb;
-
- /**
- * hide display name
- */
- // eslint-disable-next-line no-empty-function
- SharedVideoThumb.prototype.setDeviceAvailabilityIcons = function() {};
-
- // eslint-disable-next-line no-empty-function
- SharedVideoThumb.prototype.avatarChanged = function() {};
-
- SharedVideoThumb.prototype.createContainer = function(spanId) {
- const container = document.createElement('span');
-
- container.id = spanId;
- container.className = 'videocontainer';
-
- // add the avatar
- const avatar = document.createElement('img');
-
- avatar.className = 'sharedVideoAvatar';
- avatar.src = `https://img.youtube.com/vi/${this.url}/0.jpg`;
- container.appendChild(avatar);
-
- const displayNameContainer = document.createElement('div');
-
- displayNameContainer.className = 'displayNameContainer';
- container.appendChild(displayNameContainer);
-
- const remoteVideosContainer
- = document.getElementById('filmstripRemoteVideosContainer');
- const localVideoContainer
- = document.getElementById('localVideoTileViewContainer');
-
- remoteVideosContainer.insertBefore(container, localVideoContainer);
-
- return container;
- };
-
- /**
- * Triggers re-rendering of the display name using current instance state.
- *
- * @returns {void}
- */
- SharedVideoThumb.prototype.updateDisplayName = function() {
- if (!this.container) {
- logger.warn(`Unable to set displayName - ${this.videoSpanId
- } does not exist`);
-
- return;
- }
-
- this._renderDisplayName({
- elementID: `${this.videoSpanId}_name`,
- participantID: this.id
- });
- };
|