.vertical-filmstrip, .stage-filmstrip { span:not(.tile-view) .filmstrip { &.hide-videos { .remote-videos { & > div { opacity: 0; pointer-events: none; } } } /* * Firefox sets flex items to min-height: auto and min-width: auto, * preventing flex children from shrinking like they do on other browsers. * Setting min-height and min-width 0 is a workaround for the issue so * Firefox behaves like other browsers. * https://bugzilla.mozilla.org/show_bug.cgi?id=1043520 */ @mixin minHWAutoFix() { min-height: 0; min-width: 0; } @extend %align-right; align-items: flex-end; bottom: 0; box-sizing: border-box; display: flex; flex-direction: column-reverse; height: 100%; width: 100%; padding: 0; /** * fixed positioning is necessary for remote menus and tooltips to pop * out of the scrolling filmstrip. AtlasKit dialogs and tooltips use * a library called popper which will position its elements fixed if * any parent is also fixed. */ position: fixed; top: 0; right: 0; z-index: $filmstripVideosZ; &.no-vertical-padding { padding: 0; } /** * Hide videos by making them slight to the right. */ .filmstrip__videos { @extend %align-right; bottom: 0; padding: 0; position:relative; right: 0; width: auto; /** * An id selector is used to match id specificity with existing * filmstrip styles. */ &#remoteVideos { border: $thumbnailsBorder solid transparent; padding-left: 0; border-left: 0; width: 100%; height: 100%; justify-content: center; } } /** * Re-styles the local Video to better fit vertical filmstrip layout. */ #filmstripLocalVideo { align-self: initial; margin-bottom: 5px; display: flex; flex-direction: column-reverse; height: auto; justify-content: flex-start; width: 100%; #filmstripLocalVideoThumbnail { width: calc(100% - 15px); .videocontainer { height: 0px; width: 100%; } } } #filmstripLocalScreenShare { align-self: initial; margin-bottom: 5px; display: flex; flex-direction: column-reverse; height: auto; justify-content: flex-start; width: 100%; #filmstripLocalScreenShareThumbnail { width: calc(100% - 15px); .videocontainer { height: 0px; width: 100%; } } } /** * Remove unnecessary padding that is normally used to prevent horizontal * filmstrip from overlapping the left edge of the screen. */ #filmstripLocalVideo, #filmstripLocalScreenShare, .remote-videos { padding: 0; } #remoteVideos { @include minHWAutoFix(); flex-direction: column; flex-grow: 1; } .resizable-filmstrip #remoteVideos .videocontainer { border-left: 0; margin: 0; } &.reduce-height { height: calc(100% - calc(#{$newToolbarSizeWithPadding} + #{$scrollHeight})); } .filmstrip__videos.vertical-view-grid#remoteVideos { align-items: 'center'; border: 0px; padding-right: 7px; &.has-scroll { padding-right: 0px; } .remote-videos > div { left: 0px; // fixes an issue on FF - the div is aligned to the right by default for some reason } .videocontainer { border: 0px; margin: 2px; } } .remote-videos { display: flex; overscroll-behavior: contain; &.height-transition { transition: height .3s ease-in; } & > div { position: absolute; transition: opacity 1s; } &.is-not-overflowing > div { bottom: 0px; } } } }