]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - client/src/app/videos/+video-watch/video-watch.component.scss
Add theatre mode
[github/Chocobozzz/PeerTube.git] / client / src / app / videos / +video-watch / video-watch.component.scss
CommitLineData
63c4db6d
C
1@import '_variables';
2@import '_mixins';
3
09edde40 4#video-element-wrapper {
be6a4802
C
5 background-color: #000;
6 display: flex;
7 justify-content: center;
8
b891f9bc 9 /deep/ .video-js {
be6a4802
C
10 width: 888px;
11 height: 500px;
7b272fd7 12
acbffe9c 13 @media screen and (max-width: 600px) {
54d9d09b
C
14 width: 100vw;
15 height: calc(100vw / 1.7); // 16/9
b9828abe
C
16 }
17
7b272fd7
C
18 // VideoJS create an inner video player
19 video {
20 outline: 0;
b9828abe 21 position: relative !important;
7b272fd7 22 }
be6a4802 23 }
054a103b
C
24
25 /deep/ .video-js.vjs-theater-enabled {
26 width: 100%;
27 height: calc(100vh - #{$header-height} - #{$theater-bottom-space});
28 }
e56b20f5
C
29}
30
9c89a45c
C
31#video-not-found {
32 height: 300px;
33 line-height: 300px;
34 margin-top: 50px;
35 text-align: center;
fb4fd623
C
36 font-weight: $font-semibold;
37 font-size: 15px;
9c89a45c
C
38}
39
b1fa3eba
C
40.video-bottom {
41 margin-top: 40px;
42 display: flex;
d1992b93 43
b1fa3eba
C
44 .video-info {
45 flex-grow: 1;
20acba1c
C
46 margin-right: 40px;
47 // Set min width for flex item
48 min-width: 1px;
3eeeb87f 49
1f788f20 50 .video-info-first-row {
b1fa3eba 51 display: flex;
1f788f20 52
196b7790 53 & > div:first-child {
1f788f20
C
54 flex-grow: 1;
55 }
d1992b93 56
b1fa3eba 57 .video-info-name {
b2731bff 58 margin-right: 30px;
196b7790 59 min-height: 40px; // Align with the action buttons
b1fa3eba
C
60 font-size: 27px;
61 font-weight: $font-semibold;
62 flex-grow: 1;
63 }
09223546 64
1f788f20
C
65 .video-info-date-views {
66 font-size: 16px;
67 margin-bottom: 10px;
68 flex-grow: 1;
69 }
70
71 .video-info-channel {
72 font-weight: $font-semibold;
73 font-size: 15px;
95166f9a
C
74
75 a {
76 @include disable-default-a-behaviour;
77
78 color: #000;
79
80 &:hover {
81 opacity: 0.8;
82 }
83 }
169310b2
R
84
85 my-help {
86 display: inline-block;
87 }
1f788f20
C
88 }
89
03e12d7c
C
90 .video-info-by a {
91 @include disable-default-a-behaviour;
92
6e33bf28 93 display: flex;
1f788f20
C
94 align-items: center;
95 font-size: 13px;
03e12d7c 96 color: #000;
1f788f20 97
03e12d7c
C
98 span:hover {
99 opacity: 0.8;
66dc5907
C
100 }
101
1f788f20
C
102 img {
103 @include avatar(18px);
6e33bf28 104
1f788f20 105 margin-left: 7px;
6e33bf28 106 }
1f788f20 107 }
b2731bff 108
244e76a5
RK
109 my-video-feed {
110 margin-left: 5px;
111 margin-top: 1px;
112 }
113
1f788f20
C
114 .video-actions-rates {
115 display: flex;
116 flex-direction: column;
196b7790 117 align-items: flex-end;
09223546 118
1f788f20
C
119 .video-actions {
120 height: 40px; // Align with the title
1f788f20
C
121 display: flex;
122 align-items: center;
09223546 123
1f788f20
C
124 .action-button:not(:first-child), .action-more {
125 margin-left: 10px;
126 }
0727cab0 127
1f788f20
C
128 .action-button {
129 @include peertube-button;
130 @include grey-button;
7b272fd7 131
1f788f20
C
132 font-size: 15px;
133 font-weight: $font-semibold;
134 display: inline-block;
135 padding: 0 10px 0 10px;
07fa4c97 136 white-space: nowrap;
7b272fd7 137
1f788f20
C
138 .icon {
139 @include icon(21px);
7b272fd7 140
1f788f20
C
141 position: relative;
142 top: -2px;
143
144 &.icon-like {
145 background-image: url('../../../assets/images/video/like-grey.svg');
146 }
147
148 &.icon-dislike {
149 background-image: url('../../../assets/images/video/dislike-grey.svg');
150 }
7b272fd7 151
07fa4c97
C
152 &.icon-support {
153 background-image: url('../../../assets/images/video/heart.svg');
154 }
155
1f788f20
C
156 &.icon-share {
157 background-image: url('../../../assets/images/video/share.svg');
158 }
159
160 &.icon-more {
161 background-image: url('../../../assets/images/video/more.svg');
162 top: -1px;
163 }
7b272fd7 164 }
d38b8281 165
8c40b7dc
C
166 .icon-text {
167 margin-left: 3px;
196b7790
C
168 }
169
1f788f20
C
170 &.action-button-like.activated {
171 background-color: #39CC0B;
4e1b0973 172
1f788f20
C
173 .icon-like {
174 background-image: url('../../../assets/images/video/like-white.svg');
175 }
7b272fd7 176 }
6e33bf28 177
1f788f20
C
178 &.action-button-dislike.activated {
179 background-color: #FF0000;
d38b8281 180
1f788f20
C
181 .icon-dislike {
182 background-image: url('../../../assets/images/video/dislike-white.svg');
183 }
7b272fd7 184 }
b1fa3eba 185 }
d38b8281 186
1f788f20
C
187 .action-more {
188 display: inline-block;
4f8c0eb0 189
1f788f20
C
190 .dropdown-menu .dropdown-item {
191 padding: 6px 24px;
7b272fd7 192
1f788f20
C
193 .icon {
194 @include icon(24px);
7b272fd7 195
1f788f20
C
196 margin-right: 10px;
197 position: relative;
198 top: -1px;
5f0805d3 199
1f788f20
C
200 &.icon-download {
201 background-image: url('../../../assets/images/video/download-black.svg');
202 }
5f0805d3 203
1f788f20
C
204 &.icon-edit {
205 background-image: url('../../../assets/images/global/edit-black.svg');
206 }
4635f59d 207
1f788f20
C
208 &.icon-alert {
209 background-image: url('../../../assets/images/video/alert.svg');
210 }
7b272fd7 211
1f788f20
C
212 &.icon-blacklist {
213 background-image: url('../../../assets/images/video/blacklist.svg');
214 }
5f0805d3 215 }
7b272fd7 216 }
b1fa3eba 217 }
4e1b0973 218 }
6a9e1d42 219
1f788f20
C
220 .video-info-likes-dislikes-bar {
221 height: 5px;
222 width: 186px;
223 background-color: #E5E5E5;
224 margin-top: 25px;
6a9e1d42 225
1f788f20
C
226 .likes-bar {
227 height: 100%;
228 background-color: #39CC0B;
229 }
6a9e1d42
C
230 }
231 }
d1992b93
C
232 }
233
b1fa3eba
C
234 .video-info-description {
235 margin: 20px 0;
236 font-size: 15px;
d1992b93 237
54a932e8 238 .video-info-description-html {
7a14004b 239 @include peertube-word-wrap;
54a932e8
C
240 }
241
80958c78
C
242 .description-loading {
243 display: inline-block;
244 }
245
b1fa3eba 246 .video-info-description-more {
2de96f4d 247 cursor: pointer;
b1fa3eba
C
248 font-weight: $font-semibold;
249 color: #585858;
250 font-size: 14px;
2de96f4d
C
251
252 .glyphicon {
253 position: relative;
254 top: 2px;
255 }
256 }
09223546
C
257 }
258
1f788f20
C
259 .video-attributes .video-attribute {
260 font-size: 13px;
261 display: block;
262 margin-bottom: 12px;
263
264 .video-attribute-label {
265 width: 86px;
266 display: inline-block;
267 color: #585858;
268 font-weight: $font-bold;
3eeeb87f
C
269 }
270 }
41c3dfac
C
271 }
272
273 .other-videos {
ea5cd0fa 274 padding-left: 1em;
f7ecffa4 275
41c3dfac
C
276 .title-page {
277 margin-top: 0;
278 }
279
280 /deep/ .video-miniature {
281 display: flex;
282 height: 100%;
283 margin-bottom: 20px;
a01f107b 284
41c3dfac
C
285 .video-miniature-information {
286 margin-left: 10px;
287 }
288 }
a01f107b 289 }
d1992b93 290}
41c3dfac 291
2b3b76ab
C
292// If the view is not expanded, take into account the menu
293.privacy-concerns {
294 width: calc(100% - #{$menu-width});
295}
296
297:host-context(.expanded) {
298 .privacy-concerns {
299 width: 100%;
300 }
301}
302
303.privacy-concerns {
304 position: fixed;
305 bottom: 0;
306
307 padding: 5px 15px;
308
309 display: flex;
310 align-items: center;
311 justify-content: flex-start;
312 background-color: rgba(0, 0, 0, 0.9);
313 color: #fff;
314
315 .privacy-concerns-text {
316 margin: 0 5px;
317 }
318
319 a {
320 @include disable-default-a-behaviour;
321
322 color: $orange-color;
323 transition: color 0.3s;
324
325 &:hover {
326 color: #fff;
327 }
328 }
329
330 .privacy-concerns-okay {
331 background-color: $orange-color;
332 padding: 5px 8px 5px 7px;
333 margin-left: auto;
334 border-radius: 3px;
335 cursor: pointer;
336 transition: background-color 0.3s;
337 font-weight: $font-semibold;
338
339 &:hover {
340 background-color: #000;
341 }
342 }
343}
344
b9828abe 345
07fa4c97 346@media screen and (max-width: 1600px) {
b9828abe
C
347 .video-bottom {
348 .video-info {
abf1c585 349 margin-right: 20px;
9b7d1c72 350
1f788f20 351 .video-info-first-row {
b9828abe
C
352 flex-direction: column;
353 margin-bottom: 30px;
1f788f20
C
354
355 .video-actions-rates {
356 margin-top: 20px;
80109b2d 357 align-items: start;
1f788f20
C
358
359 .video-info-likes-dislikes-bar {
360 margin-top: 10px;
361 }
362 }
b9828abe
C
363 }
364
1f788f20 365 .video-info-date-views {
b9828abe
C
366 flex-direction: column;
367 margin-bottom: 30px;
368
369 .video-info-likes-dislikes-bar {
370 margin-top: 0;
371 }
372 }
1f788f20
C
373
374 .video-attributes .video-attribute {
375 margin-bottom: 5px;
376 }
b9828abe
C
377 }
378 }
379}
b2731bff 380
23f4c3d4 381@media screen and (max-width: 1300px) {
07fa4c97
C
382 .other-videos {
383 display: none;
384 }
2b3b76ab
C
385
386 .privacy-concerns {
387 font-size: 12px;
388 padding: 2px 5px;
389
390 .privacy-concerns-text {
391 margin: 0;
392 }
393 }
07fa4c97
C
394}
395
1f788f20 396@media screen and (max-width: 600px) {
b2731bff
C
397 .video-bottom {
398 margin: 20px 0 0 0;
1f788f20
C
399
400 .video-info {
401
402 .video-info-first-row {
403
404 .video-info-name {
405 font-size: 20px;
406 height: auto;
407 }
408 }
409 }
b2731bff 410 }
2b3b76ab
C
411
412 .privacy-concerns {
413 width: 100%;
414
415 strong {
416 display: none;
417 }
418 }
b2731bff 419}
07fa4c97
C
420
421@media screen and (max-width: 450px) {
422 .video-bottom .action-button .icon-text {
423 display: none !important;
424 }
425}