jiti-meet/css/_videolayout_default.scss

593 lines
12 KiB
SCSS
Raw Normal View History

#videoconference_page {
min-height: 100%;
}
#videospace {
display: block;
min-height: 100%;
position: absolute;
top: 0px;
left: 0px;
right: 0px;
overflow: hidden;
}
#remoteVideos {
2016-08-29 13:39:57 +00:00
display: -webkit-box;
display: -moz-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
2016-09-15 02:20:54 +00:00
flex-direction: row-reverse;
2016-08-29 13:39:57 +00:00
flex-wrap: nowrap;
2016-09-15 02:20:54 +00:00
justify-content: flex-start;
2016-08-29 13:39:57 +00:00
position:absolute;
text-align:right;
height:196px;
2016-09-15 02:20:54 +00:00
padding: 10px 10px 10px 5px;
bottom: 0;
left: 0;
2016-09-15 02:20:54 +00:00
right: 0;
width:auto;
2016-09-26 20:40:56 +00:00
border: 2px solid transparent;
z-index: 5;
transition: bottom 2s;
overflow: visible !important;
font-size: 0pt; /*!!!Removes the gap between the local video container and the remote videos.*/
}
#remotevideos.hidden {
bottom: -196px;
}
.videocontainer {
position: relative;
text-align: center;
}
#remoteVideos .videocontainer {
2015-12-25 16:55:45 +00:00
display: none;
2016-09-15 02:20:54 +00:00
position: relative;
background-color: black;
background-size: contain;
border-radius:1px;
2016-09-15 02:20:54 +00:00
margin: 0 $thumbnailVideoMargin;
}
/**
* The toolbar of the video thumbnail.
*/
2016-09-15 02:20:54 +00:00
.videocontainer__toolbar {
position: absolute;
bottom: 0;
left: 0;
z-index: 1;
width: 100%;
box-sizing: border-box; // Includes the padding in the 100% width.
height: $thumbnailToolbarHeight;
2016-09-15 02:20:54 +00:00
max-height: 100%;
background-color: rgba(0, 0, 0, 0.5);
padding: 0 5px 0 5px;
}
2016-09-26 20:40:56 +00:00
#remoteVideos .videocontainer.videoContainerFocused,
#remoteVideos .videocontainer:hover {
cursor: hand;
margin-right: $thumbnailVideoMargin - 2;
margin-left: $thumbnailVideoMargin - 2;
margin-top: -2px;
}
/**
* Focused video thumbnail.
*/
#remoteVideos .videocontainer.videoContainerFocused {
transition-duration: 0.5s;
-webkit-transition-duration: 0.5s;
-webkit-animation-name: greyPulse;
-webkit-animation-duration: 2s;
-webkit-animation-iteration-count: 1;
2016-09-26 20:40:56 +00:00
border: 2px solid $videoThumbnailSelected !important;
box-shadow: inset 0 0 3px $videoThumbnailSelected,
0 0 3px $videoThumbnailSelected !important;
}
2016-09-26 20:40:56 +00:00
/**
* Hovered video thumbnail.
*/
#remoteVideos .videocontainer:hover {
cursor: hand;
border: 2px solid $videoThumbnailHovered;
box-shadow: inset 0 0 3px $videoThumbnailHovered,
0 0 3px $videoThumbnailHovered;
}
#localVideoWrapper {
display:inline-block;
}
/* With TemasysWebRTC plugin <object/> element is used
instead of <video/> */
#remoteVideos .videocontainer>video,
#remoteVideos .videocontainer>object {
cursor: hand;
border-radius:1px;
object-fit: cover;
2016-08-04 20:56:04 +00:00
overflow: hidden;
}
.flipVideoX {
transform: scale(-1, 1);
-moz-transform: scale(-1, 1);
-webkit-transform: scale(-1, 1);
-o-transform: scale(-1, 1);
}
#localVideoWrapper>video,
#localVideoWrapper>object {
cursor: hand;
border-radius:1px !important;
object-fit: cover;
}
#largeVideo,
#largeVideoWrapper,
#largeVideoContainer {
overflow: hidden;
text-align: center;
}
#largeVideo,
#largeVideoWrapper
{
object-fit: cover;
}
#sharedVideo,
#etherpad,
#localVideoWrapper>video,
#localVideoWrapper>object,
#localVideoWrapper,
#largeVideoWrapper,
#largeVideoWrapper>video,
#largeVideoWrapper>object,
.videocontainer>video,
.videocontainer>object {
position: absolute;
left: 0;
top: 0;
z-index: 1;
width: 100%;
height: 100%;
}
2016-09-22 16:00:11 +00:00
#etherpad {
text-align: center;
}
#etherpad {
z-index: 0;
}
/**
* Positions video thumbnail display name and editor.
*/
.videocontainer .displayname,
.videocontainer .editdisplayname {
2016-09-15 02:20:54 +00:00
display: inline-block;
position: absolute;
left: 30%;
width: 40%;
2016-09-15 02:20:54 +00:00
color: $participantNameColor;
text-align: center;
text-overflow: ellipsis;
2016-09-15 02:20:54 +00:00
font-size: 12px;
font-weight: 100;
overflow: hidden;
white-space: nowrap;
line-height: $thumbnailToolbarHeight;
z-index: 2;
2016-09-15 02:20:54 +00:00
}
/**
* Positions video thumbnail display name editor.
*/
.videocontainer .editdisplayname {
2016-09-15 02:20:54 +00:00
outline: none;
border: none;
background: none;
box-shadow: none;
padding: 0;
}
2014-08-08 13:25:24 +00:00
.videocontainer>span.status {
display: inline-block;
position: absolute;
color: #FFFFFF;
background: rgba(0,0,0,.7);
text-align: center;
text-overflow: ellipsis;
width: 70%;
height: 15%;
left: 15%;
bottom: 2%;
padding: 5px;
font-size: 10pt;
overflow: hidden;
white-space: nowrap;
z-index: 2;
border-radius:3px;
2014-08-08 13:25:24 +00:00
}
.connectionindicator
{
display: inline-block;
position: absolute;
top: 7px;
right: 0;
padding: 0px 5px;
z-index: 3;
width: 18px;
height: 13px;
}
.connection.connection_empty
{
color: #8B8B8B;/*#FFFFFF*/
overflow: hidden;
}
.connection.connection_lost
{
color: #8B8B8B;
overflow: visible;
}
.connection.connection_full
{
color: #FFFFFF;/*#15A1ED*/
overflow: hidden;
}
.connection
{
position: absolute;
left: 0px;
top: 0px;
font-size: 8pt;
border: 0px;
width: 18px;
height: 13px;
}
2014-08-08 13:25:24 +00:00
#localVideoContainer>span.status:hover,
#localVideoContainer .displayname:hover {
cursor: text;
}
2014-08-08 13:25:24 +00:00
.videocontainer>span.status,
.videocontainer .displayname {
pointer-events: none;
}
.videocontainer .editdisplayname {
height: auto;
}
#localDisplayName {
pointer-events: auto !important;
}
2014-08-08 13:25:24 +00:00
.videocontainer>a.status,
.videocontainer>a.displayname {
display: inline-block;
position: absolute;
color: #FFFFFF;
bottom: 0;
right: 0;
padding: 3px 5px;
font-size: 9pt;
cursor: pointer;
z-index: 2;
}
/**
* Video thumbnail toolbar icon.
*/
.videocontainer .toolbar-icon {
font-size: 8pt;
2014-06-18 11:42:31 +00:00
text-align: center;
text-shadow: 0px 1px 0px rgba(255,255,255,.3), 0px -1px 0px rgba(0,0,0,.7);
color: #FFFFFF;
width: 12px;
line-height: $thumbnailToolbarHeight;
height: $thumbnailToolbarHeight;
padding: 0;
border: 0;
margin: 0px 5px 0px 0px;
float: left;
}
/**
* Toolbar icon internal i elements (font icons).
*/
.toolbar-icon>i {
line-height: $thumbnailToolbarHeight;
}
/**
* Toolbar icons positioned on the right.
*/
.toolbar-icon.right {
float: right;
margin: 0px 0px 0px 5px;
}
2016-06-20 21:13:17 +00:00
.videocontainer>span.indicator {
2016-09-15 02:20:54 +00:00
position: absolute;
top: 0px;
left: 0px;
2016-09-15 02:20:54 +00:00
@include circle($thumbnailIndicatorSize);
box-sizing: border-box;
line-height: $thumbnailIndicatorSize - 2*$thumbnailIndicatorBorder;
z-index: 3;
text-align: center;
2016-09-15 02:20:54 +00:00
background: $dominantSpeakerBg;
margin: 7px;
display: inline-block;
2016-09-15 02:20:54 +00:00
color: $thumbnailPictogramColor;
font-size: 8pt;
border: $thumbnailIndicatorBorder solid $thumbnailPictogramColor;
}
.videocontainer>#raisehandindicator {
background: $raiseHandBg;
}
2016-09-28 21:31:40 +00:00
/**
* Audio indicator on video thumbnails.
*/
.videocontainer>span.audioindicator {
position: absolute;
display: inline-block;
left: 6px;
top: 50%;
2016-09-29 05:22:05 +00:00
margin-top: -17px;
2016-09-28 21:31:40 +00:00
width: 6px;
2016-09-29 05:22:05 +00:00
height: 35px;
2016-09-28 21:31:40 +00:00
z-index: 2;
border: none;
.audiodot-top,
2016-09-29 05:22:05 +00:00
.audiodot-bottom,
.audiodot-middle {
2016-09-28 21:31:40 +00:00
opacity: 0;
display: inline-block;
2016-09-29 05:22:05 +00:00
@include circle(5px);
background: $audioLevelShadow;
2016-09-28 21:31:40 +00:00
margin: 1px 0 1px 0;
transition: opacity .25s ease-in-out;
-moz-transition: opacity .25s ease-in-out;
2016-09-29 05:22:05 +00:00
}
span.audiodot-top::after,
span.audiodot-bottom::after,
span.audiodot-middle::after {
content: "";
display: inline-block;
width: 5px;
height: 5px;
border-radius: 50%;
-webkit-filter: blur(0.5px);
filter: blur(0.5px);
background: $audioLevelBg;
2016-09-28 21:31:40 +00:00
}
}
2016-06-20 21:13:17 +00:00
#indicatoricon {
2016-09-15 02:20:54 +00:00
width: $thumbnailIndicatorSize - 2*$thumbnailIndicatorBorder;
height: $thumbnailIndicatorSize - 2*$thumbnailIndicatorBorder;
line-height: $thumbnailIndicatorSize - 2*$thumbnailIndicatorBorder;
}
#reloadPresentation {
display: none;
position: absolute;
color: #FFFFFF;
top: 0;
right:0;
padding: 10px 10px;
font-size: 11pt;
cursor: pointer;
background: rgba(0, 0, 0, 0.3);
border-radius: 5px;
background-clip: padding-box;
-webkit-border-radius: 5px;
-webkit-background-clip: padding-box;
z-index: 20; /*The reload button should appear on top of the header!*/
}
.audiolevel {
display: inline-block;
position: absolute;
z-index: 0;
border-radius:1px;
pointer-events: none;
}
#dominantSpeaker {
visibility: hidden;
width: 300px;
height: 300px;
margin: auto;
position: relative;
}
#mixedstream {
display:none !important;
}
2016-09-28 21:31:40 +00:00
#dominantSpeakerAvatar,
.dynamic-shadow {
width: 200px;
height: 200px;
2016-09-28 21:31:40 +00:00
}
#dominantSpeakerAvatar {
top: 50px;
margin: auto;
position: relative;
border-radius: 100px;
z-index: 3;
visibility: inherit;
background-color: #000000;
}
2016-09-28 21:31:40 +00:00
.dynamic-shadow {
border-radius: 50%;
position: absolute;
top: 50%;
left: 50%;
margin: -100px 0 0 -100px;
transition: box-shadow 0.3s ease;
}
.userAvatar {
2016-09-15 02:20:54 +00:00
@include circle(60px);
@include absoluteAligning(60px, 60px);
}
.sharedVideoAvatar {
height: 100%;
width: 100%;
object-fit: cover;
}
.noMic {
position: absolute;
border-radius: 8px;
z-index: 1;
width: 100%;
height: 100%;
background-image: url("../images/noMic.png");
background-color: #000;
background-repeat: no-repeat;
background-position: center;
}
.noVideo {
position: absolute;
border-radius: 8px;
z-index: 1;
width: 100%;
height: 100%;
background-image: url("../images/noVideo.png");
background-color: #000;
background-repeat: no-repeat;
background-position: center;
}
.videoMessageFilter {
-webkit-filter: grayscale(.5) opacity(0.8);
filter: grayscale(.5) opacity(0.8);
}
.remoteVideoProblemFilter {
-webkit-filter: grayscale(100%);
filter: grayscale(100%);
}
2015-08-03 15:58:22 +00:00
.videoProblemFilter {
-webkit-filter: blur(10px) grayscale(.5) opacity(0.8);
filter: blur(10px) grayscale(.5) opacity(0.8);
}
.videoThumbnailProblemFilter {
-webkit-filter: grayscale(100%);
filter: grayscale(100%);
}
#remoteConnectionMessage {
display: none;
position: absolute;
width: auto;
z-index: 1011;
font-weight: 600;
font-size: 14px;
text-align: center;
color: #FFF;
opacity: .80;
text-shadow: 0px 0px 1px rgba(0,0,0,0.3),
0px 1px 1px rgba(0,0,0,0.3),
1px 0px 1px rgba(0,0,0,0.3),
0px 0px 1px rgba(0,0,0,0.3);
background: rgba(0,0,0,.5);
border-radius: 5px;
padding: 5px;
padding-left: 10px;
padding-right: 10px;
}
#localConnectionMessage {
2015-08-03 15:58:22 +00:00
display: none;
position: absolute;
width: 100%;
top:50%;
2016-06-13 21:11:44 +00:00
z-index: 1011;
2015-08-03 15:58:22 +00:00
font-weight: 600;
font-size: 14px;
text-align: center;
color: #FFF;
opacity: .80;
text-shadow: 0px 0px 1px rgba(0,0,0,0.3),
0px 1px 1px rgba(0,0,0,0.3),
1px 0px 1px rgba(0,0,0,0.3),
0px 0px 1px rgba(0,0,0,0.3);
}
#videoResolutionLabel {
display: none;
position: absolute;
top: 5px;
right: 5px;
background: rgba(0,0,0,.5);
padding: 10px;
color: rgba(255,255,255,.5);
2016-06-13 21:11:44 +00:00
z-index: 1011;
2016-10-06 12:25:58 +00:00
border-radius: 50%;
2016-03-29 17:13:54 +00:00
}
.centeredVideoLabel {
display: none;
position: absolute;
bottom: 45%;
top: auto;
right: auto;
left: auto;
line-height: 28px;
height: 28px;
width: auto;
padding: 5px;
margin-right: auto;
margin-left: auto;
background: rgba(0,0,0,.5);
color: #FFF;
2016-06-13 21:11:44 +00:00
z-index: 1011;
border-radius: 2px;
2016-03-29 17:13:54 +00:00
-webkit-transition: all 2s 2s linear;
transition: all 2s 2s linear;
}
.moveToCorner {
top: 5px;
right: 50px; /*leave free space for the HD label*/
2016-03-29 17:13:54 +00:00
margin-right: 0px;
margin-left: auto;
background: rgba(0,0,0,.3);
color: rgba(255,255,255,.5);
2016-05-01 18:35:18 +00:00
}
.hidden {
2016-06-13 21:11:44 +00:00
}