blob: 374baaf0f198894679359d416907df9d9e0b4850 [file] [log] [blame]
Hugo Lefeuvre8127fe12018-05-23 10:53:12 -04001/** Variable and font definitions */
Adrien Beraud8e25afb2017-04-19 01:38:57 +02002
Hugo Lefeuvre8127fe12018-05-23 10:53:12 -04003:root {
4 /* color definitions */
5 --ring-light-blue: rgba(59, 193, 211, 0.3);
6 --ring-dark-blue: #003b4e;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -04007
Hugo Lefeuvre8127fe12018-05-23 10:53:12 -04008 /* main properties */
9 --bg-color: #f2f2f2; /* same as macOS client */
Sébastien Blinf4f90282017-10-03 14:07:16 -040010
Hugo Lefeuvreedad8832018-05-14 16:36:06 -040011 /* navbar properties */
12 --navbar-height: 40px;
13 --navbar-padding-top: 8px;
14 --navbar-padding-bottom: var(--navbar-padding-top);
Hugo Lefeuvre368c47c2018-05-29 15:50:07 -040015
16 /* message bar properties */
17 --textarea-max-height: 150px;
Sébastien Blinf4f90282017-10-03 14:07:16 -040018
Hugo Lefeuvre8127fe12018-05-23 10:53:12 -040019 /* button properties */
20 --action-icon-color: var(--ring-dark-blue);
Hugo Lefeuvreedad8832018-05-14 16:36:06 -040021 --deactivated-icon-color: #BEBEBE;
Hugo Lefeuvre8127fe12018-05-23 10:53:12 -040022 --action-icon-hover-color: var(--ring-light-blue);
Hugo Lefeuvreedad8832018-05-14 16:36:06 -040023 --action-critical-icon-hover-color: rgba(211, 77, 59, 0.3); /* complementary color of ring light blue */
24 --action-critical-icon-press-color: rgba(211, 77, 59, 0.5);
25 --action-critical-icon-color: #4E1300;
26 --non-action-icon-color: #212121;
Hugo Lefeuvre8127fe12018-05-23 10:53:12 -040027 --action-icon-press-color: rgba(59, 193, 211, 0.5);
Sébastien Blinf4f90282017-10-03 14:07:16 -040028
Hugo Lefeuvre8127fe12018-05-23 10:53:12 -040029 /* hairline properties */
30 --hairline-color: #d9d9d9;
31 --hairline-thickness: 0.2px;
aviau32b8dd62016-11-02 00:36:57 -040032}
33
Hugo Lefeuvre9186c602018-05-03 10:44:15 -040034@font-face {
35 font-family: emoji;
36
37 /* Fonts for text outside emoji blocks */
38 src: local('Open sans'),
39 local('Helvetica'),
40 local('Segoe UI'),
41 local('sans-serif');
42}
43
44@font-face {
45 font-family: emoji;
46
47 src: local('Noto Color Emoji'),
48 local('Android Emoji'),
49 local('Twitter Color Emoji');
50
51 /* Emoji unicode blocks */
52 unicode-range: U+1F300-1F5FF, U+1F600-1F64F, U+1F680-1F6FF, U+2600-26FF;
53}
54
Hugo Lefeuvre8127fe12018-05-23 10:53:12 -040055/** Body */
56
57body {
Hugo Lefeuvre368c47c2018-05-29 15:50:07 -040058 --navbar-size: calc(var(--navbar-height) + var(--navbar-padding-top) + var(--navbar-padding-bottom));
59 --messagebar-size: 57px; /* FIXME clean this up */
60
Hugo Lefeuvre8127fe12018-05-23 10:53:12 -040061 margin: 0;
62 overflow: hidden;
63 background-color: var(--bg-color);
Hugo Lefeuvreedad8832018-05-14 16:36:06 -040064 padding-top: var(--navbar-size);
Hugo Lefeuvre8127fe12018-05-23 10:53:12 -040065 padding-bottom: var(--messagebar-size);
Hugo Lefeuvre368c47c2018-05-29 15:50:07 -040066
67 /* disable selection highlight because it looks very bad */
68 -webkit-user-select: none;
Hugo Lefeuvre8127fe12018-05-23 10:53:12 -040069}
70
Hugo Lefeuvreedad8832018-05-14 16:36:06 -040071/** Navbar */
72
73.navbar-wrapper {
74 /* on top, over everything and full width */
75 position: fixed;
76 left:0; right:0;
77 z-index: 500;
78 top: 0;
79}
80
81#navbar {
82 background-color: var(--bg-color);
83 padding-right: 8px;
84 padding-left: 8px;
85 padding-top: var(--navbar-padding-top);
86 padding-bottom: var(--navbar-padding-bottom);
87 height: var(--navbar-height);
88 overflow: hidden;
89 align-items: center;
90
91 /* takes whole width */
92 left:0; right:0;
93
94 /* hairline */
95 border-bottom: var(--hairline-thickness) solid var(--hairline-color);
Hugo Lefeuvreedad8832018-05-14 16:36:06 -040096}
97
98#navbar.hiddenState {
99 visibility: hidden;
100}
101
102.svgicon {
103 display: block;
104 margin: auto;
105 height: 100%;
106}
107
108.nav-button {
109 width: 40px;
110 height: 40px;
111 align-self: center;
112 display: flex;
113 cursor: pointer;
114 border-radius: 50%;
115}
116
117.nav-button.deactivated {
118 width: 40px;
119 height: 40px;
120 align-self: center;
121 display: flex;
122 border-radius: 50%;
123 cursor: auto;
124}
125
126.nav-right {
127 float: right;
128}
129
130.nav-left {
131 float: left;
132}
133
134#nav-contactid {
135 margin: 0px;
136 margin-left: 5px;
137 padding: 0px;
138 height: 100%;
139 font-family: emoji;
140
Hugo Lefeuvre368c47c2018-05-29 15:50:07 -0400141 /* enable selection (it is globally disabled in the body) */
Hugo Lefeuvreedad8832018-05-14 16:36:06 -0400142 -webkit-user-select: auto;
143}
144
145#nav-contactid.oneEntry {
146 display: flex;
147 justify-content: center;
148 align-items: center;
149}
150
151#nav-contactid-alias {
152 font-size: 14px;
153 font-weight: bold;
154 margin: 5px 0px 3px;
155}
156
157#nav-contactid-bestId {
158 font-size: 11px;
159}
160
161.oneEntry #nav-contactid-bestId {
162 visibility: hidden;
163}
164
165.action-button svg {
166 fill: var(--action-icon-color);
167}
168
169.action-button.deactivated svg {
170 fill: var(--deactivated-icon-color);
171}
172
173.non-action-button svg {
174 fill: var(--non-action-icon-color);
175}
176
177.non-action-button:hover, .action-button:hover {
178 background: var(--action-icon-hover-color);
179}
180
181.non-action-button:active, .action-button:active {
182 background: var(--action-icon-press-color);
183}
184
185.action-button.deactivated:hover, .action-button.deactivated:active {
186 background: none;
187}
188
189.action-critical-button svg {
190 fill: var(--action-critical-icon-color);
191}
192
193.action-critical-button:hover {
194 background: var(--action-critical-icon-hover-color);
195}
196
197.action-critical-button:active {
198 background: var(--action-critical-icon-press-color);
199}
200
201#navbar #addBannedContactButton, #navbar #addToConversationsButton {
202 display: none;
203}
204
205#navbar.onBannedState #addToConvButton, #navbar.onBannedState #callButtons, #navbar.onBannedState #addToConversationsButton {
206 display: none;
207}
208
209#navbar.onBannedState #addBannedContactButton {
210 display: flex;
211}
212
Hugo Lefeuvre8127fe12018-05-23 10:53:12 -0400213/** Invitation bar */
214
215#invitation {
216 visibility: hidden;
217 background: var(--ring-light-blue);
218 position: absolute;
219 width: 100%;
220
221 /* hairline */
222 border-bottom: var(--hairline-thickness) solid var(--hairline-color);
223}
224
225#actions
226{
227 margin: 10px;
228 list-style: none;
229 display: flex;
230 align-items: center;
231 justify-content: center;
232}
233
234.invitation-button,
235.flat-button {
236 margin: 5px;
237 border: 0;
238 border-radius: 5px;
239 transition: all 0.3s ease;
Hugo Lefeuvreedad8832018-05-14 16:36:06 -0400240 color: #f9f9f9;
Hugo Lefeuvre8127fe12018-05-23 10:53:12 -0400241 padding: 10px 20px 10px 20px;
242 vertical-align: middle;
243 cursor: pointer;
244}
245
246.button-green {
247 background: #27ae60;
248}
249
250.button-green:hover {
251 background: #1f8b4c;
252}
253
254.button-red {
255 background: #dc3a37;
256}
257
258.button-red:hover {
259 background: #b02e2c;
260}
261
262#invitation #text h1 {
263 font-size: 1.5em;
264}
265
266#invitation #text {
267 text-align: center;
268 width: 90%;
269 margin: auto;
270 margin-top: 10px;
271 font-size: 0.8em;
272}
273
274/** Messaging bar */
275
Hugo Lefeuvre8127fe12018-05-23 10:53:12 -0400276#sendMessage {
277 background-color: var(--bg-color);
278 display: flex;
279 position: relative;
280 padding-right: 10px;
281 padding-left: 8px;
282 overflow: hidden;
283 padding-top: 8px;
284 padding-bottom: 8px;
285 align-items: center;
286
287 position: fixed;
288 left:0; right:0;
289 z-index: 500;
290 bottom: 0;
291 /* hairline */
292 border-top: var(--hairline-thickness) solid var(--hairline-color);
293}
294
295#sendMessage.hiddenState {
296 visibility: hidden;
297}
298
Hugo Lefeuvre8127fe12018-05-23 10:53:12 -0400299#message {
Hugo Lefeuvre368c47c2018-05-29 15:50:07 -0400300 font-family: emoji;
Hugo Lefeuvre8127fe12018-05-23 10:53:12 -0400301 flex: 1;
302 background-color: var(--bg-color);
303 border: 0;
304 overflow-y: scroll;
305 color: black;
Hugo Lefeuvre368c47c2018-05-29 15:50:07 -0400306 max-height: var(--textarea-max-height);
Hugo Lefeuvre8127fe12018-05-23 10:53:12 -0400307 margin-right: 10px;
308 resize: none;
Hugo Lefeuvre368c47c2018-05-29 15:50:07 -0400309
310 /* enable selection (it is globally disabled in the body) */
311 -webkit-user-select: auto;
Hugo Lefeuvre8127fe12018-05-23 10:53:12 -0400312}
313
314#message:focus,
315#message.focus {
316 outline: none;
317}
318
319#container[disabled] {
320 background-color: #ccc;
321}
322
323input[placeholder], [placeholder], *[placeholder] {
324 color: #d3d3d3;
325}
326
327/** Main chat view */
328
Hugo Lefeuvref9bb72b2018-07-03 14:11:17 -0400329#lazyloading-icon {
330 margin: auto;
331 margin-bottom: 10px;
332 margin-top: 5px;
333 vertical-align: center;
334 width: 30px;
335 display: flex;
336}
337
Hugo Lefeuvre8127fe12018-05-23 10:53:12 -0400338#container {
339 position: relative;
340 height: 100%;
341 width: 100%;
342 display: flex;
343 flex-direction: column;
344 margin: 0;
345 padding: 0;
346 justify-content: flex-end;
347}
348
349a:link {
350 text-decoration: none;
351 color: #0e649b;
352 transition: all 0.2s ease-in-out;
353 border-bottom: dotted 1px;
354}
355
356a:hover {
357 border: 0;
358}
359
360#messages {
361 position: relative;
362 z-index: 0;
363 width: 100%;
364 overflow-y: scroll;
365 height: auto;
366 padding-top: 0.5em;
Hugo Lefeuvre0babe2b2018-06-27 12:14:27 -0400367}
368
369.last-message {
Hugo Lefeuvref9bb72b2018-07-03 14:11:17 -0400370 padding-bottom: 1.5em !important;
Hugo Lefeuvre8127fe12018-05-23 10:53:12 -0400371}
372
373/* General messages */
374
Hugo Lefeuvre8127fe12018-05-23 10:53:12 -0400375.message_wrapper {
Hugo Lefeuvre8127fe12018-05-23 10:53:12 -0400376 max-width: 70%;
377 margin: 8px 0 0 0;
378 display: inline-block;
379 padding: 1em;
380 border-radius: 10px;
381 position: relative;
Hugo Lefeuvre8127fe12018-05-23 10:53:12 -0400382}
383
aviau32b8dd62016-11-02 00:36:57 -0400384.message {
Hugo Lefeuvre9186c602018-05-03 10:44:15 -0400385 font: 0.875em emoji;
aviau32b8dd62016-11-02 00:36:57 -0400386 margin: 0;
387 display: flex;
388 justify-content: flex-start;
389 align-items: top;
390 overflow: hidden;
Hugo Lefeuvre368c47c2018-05-29 15:50:07 -0400391
392 /* enable selection (it is globally disabled in the body) */
393 -webkit-user-select: auto;
aviau32b8dd62016-11-02 00:36:57 -0400394}
395
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400396.menu_interaction
397{
398 margin: 5px;
399 padding: 10px;
400 padding-top: 0;
401 opacity: 0;
402 height: 20px;
403 transition:visibility 0.3s linear,opacity 0.3s linear;
404}
405
406.message_type_contact .menu_interaction
407{
408 display: none;
409 visibility: hidden;
410}
411
412.message_type_call .menu_interaction
413{
414 margin: auto;
415 padding: 0;
416 vertical-align: center;
417}
418
419.message_type_call .menu_interaction .dropdown
420{
421 margin-top: -17px;
422}
423
424.message:hover .menu_interaction
425{
426 display: block;
427 opacity: 1;
428}
429
430.dropdown {
431 display: none;
432 z-index: 1;
433 position: absolute;
434 background-color: #fff;
435 padding-top: 3px;
436 padding-bottom: 3px;
437}
438
439.dropdown div
440{
441 color: #111;
442 padding: 10px;
443}
444
445.dropdown div:hover
446{
447 background-color: #ddd;
448}
449
450#showmenu:checked ~ .dropdown{
451 display:block;
452}
453
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400454.message_in {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400455 padding-left: 25%;
AmarOk6286ad42017-07-14 12:11:08 -0400456}
457
aviau32b8dd62016-11-02 00:36:57 -0400458.message_out {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400459 padding-right: 25%;
460 flex-direction: row-reverse;
Sébastien Blinc6f3a262017-07-28 16:12:24 -0400461}
462
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400463.message_in + .message_in .sender_image {
464 opacity: 0;
465}
466
467.message_out + .message_out .sender_image {
468 opacity: 0;
469}
470
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400471.message_delivery_status {
472 margin: 10px 10px;
473 color: #A0A0A0;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400474}
475
aviau32b8dd62016-11-02 00:36:57 -0400476.message_sender {
477 display: none;
478}
479
480.sender_image {
481 border-radius: 50%;
Frédéric Guimont3e5f1b62016-11-22 11:41:38 -0500482 margin: 10px;
aviau32b8dd62016-11-02 00:36:57 -0400483}
484
aviau32b8dd62016-11-02 00:36:57 -0400485.message_out > .message_wrapper {
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400486 background-color: #cfd8dc;
aviau32b8dd62016-11-02 00:36:57 -0400487 border-top-right-radius: 0;
488 transform-origin: top right;
489}
490
491.message_out + .message_out > .message_wrapper {
492 border-top-right-radius: 10px;
493}
494
495.message_in > .message_wrapper {
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400496 background-color: #fdfdfd;
aviau32b8dd62016-11-02 00:36:57 -0400497 border-top-left-radius: 0;
498 transform-origin: top left;
499}
500
501.message_in + .message_in > .message_wrapper {
502 border-top-left-radius: 10px;
503}
504
aviau32b8dd62016-11-02 00:36:57 -0400505
506@-webkit-keyframes fade-in {
507 from {
508 opacity: 0;
509 }
510 to {
511 opacity: 1;
512 }
513}
514
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400515.timestamp {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400516 display: flex;
517 justify-content: flex-start;
518 color: #333;
519 font-size: 10px;
520 padding: 5px;
aviau32b8dd62016-11-02 00:36:57 -0400521}
522
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400523.timestamp_out {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400524 flex-direction: row-reverse;
aviau32b8dd62016-11-02 00:36:57 -0400525}
526
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400527/* Buttons */
528
529.flat-button {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400530 flex: 1;
531 padding: 0;
aviau32b8dd62016-11-02 00:36:57 -0400532}
533
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400534.left_buttons {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400535 display: flex;
536 align-self: center;
537 max-width: 90px;
538 padding-left: 1em;
aviau32b8dd62016-11-02 00:36:57 -0400539}
540
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400541/* Status */
542
543.status_circle {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400544 fill: #A0A0A0;
545 -webkit-animation: circle-dance;
546 -webkit-animation-duration: 0.8s;
547 -webkit-animation-iteration-count: infinite;
548 -webkit-animation-direction: alternate;
549 -webkit-animation-timing-function: ease-in-out;
aviau32b8dd62016-11-02 00:36:57 -0400550}
Sébastien Blinf4f90282017-10-03 14:07:16 -0400551
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400552.anim-first {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400553 -webkit-animation-delay: 0.7s;
Sébastien Blinf4f90282017-10-03 14:07:16 -0400554}
555
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400556.anim-second {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400557 -webkit-animation-delay: 0.9s;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400558}
559
560.anim-third {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400561 -webkit-animation-delay: 1.1s;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400562}
563
564@-webkit-keyframes circle-dance {
565 0%,50% {
566 -webkit-transform: translateY(0);
567 fill: #A0A0A0;
568 }
569 100% {
570 -webkit-transform: translateY(-8px);
571 fill: #000;
572 }
573}
574
575.status-x {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400576 stroke-dasharray: 12;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400577}
578
579/* Contact + Call interactions */
580.message_type_contact .message_wrapper,
581.message_type_call .message_wrapper {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400582 width: auto;
583 margin-left: 30%;
584 margin-right: 30%;
585 display: flex;
586 flex-wrap: wrap;
587 background-color: #f2f2f2;
588 padding: 0;
Sébastien Blinf4f90282017-10-03 14:07:16 -0400589}
590
Sébastien Blinf4f90282017-10-03 14:07:16 -0400591.message_type_contact .message_wrapper:before,
592.message_type_call .message_wrapper:before {
593 display: none;
594}
595
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400596.message_type_contact .text,
597.message_type_call .text {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400598 align-self: center;
599 font-size: 1.2em;
600 padding: 1em;
Sébastien Blinf4f90282017-10-03 14:07:16 -0400601}
602
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400603/* file interactions */
Sébastien Blinf4f90282017-10-03 14:07:16 -0400604
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400605.message_type_data_transfer .message_wrapper {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400606 padding: 0;
607 width: 30%;
608 display: flex;
609 flex-wrap: wrap;
Guillaume Roguez5b137be2018-02-21 10:44:58 -0500610}
611
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400612.accept, .refuse {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400613 border-radius: 50%;
614 cursor: pointer;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400615}
616
617.accept svg,
618.refuse svg {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400619 padding: 8px;
620 width: 24px;
621 height: 24px;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400622}
623
624.accept {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400625 fill: #219d55;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400626}
627
628.accept:hover {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400629 fill: white;
630 background: #219d55;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400631}
632
633.refuse {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400634 fill: #dc2719;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400635}
636
637.refuse:hover {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400638 fill: white;
639 background: #dc2719;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400640}
641
642.message_type_data_transfer .text {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400643 padding: 1em;
644 text-align: left;
645 align-self: left;
646 max-width: calc(100% - 180px);
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400647}
648
649.message_type_data_transfer .filename {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400650 cursor: pointer;
651 font-size: 1.1em;
652 overflow: hidden;
Guillaume Roguez5b137be2018-02-21 10:44:58 -0500653}
654
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400655.message_type_data_transfer .informations {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400656 color: #555;
657 font-size: 0.8em;
Guillaume Roguez5b137be2018-02-21 10:44:58 -0500658}
659
660.message_progress_bar {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400661 width: 100%;
662 height: 1em;
663 position: relative;
664 overflow: hidden;
665 background-color: #eee;
666 border-radius: 0;
667 box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25) inset;
Guillaume Roguez5b137be2018-02-21 10:44:58 -0500668}
669
670.message_progress_bar > span {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400671 display: inline;
672 height: 100%;
673 background-color: #01a2b8;
674 position: absolute;
675 overflow: hidden;
Guillaume Roguez5b137be2018-02-21 10:44:58 -0500676}
677
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400678/* text interactions */
679
680.message_type_text .message_wrapper {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400681 max-width: 40%;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400682}
683
684.message_type_text .message_text {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400685 padding: 0px;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400686}
687
688.message_text {
689 hyphens: auto; /* When webkitgtk+ will supports this, intelligent word-breaking */
690 word-break: break-word;
691 word-wrap: break-word;
692 display: block;
693}
694
695pre {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400696 font : inherit;
697 font-family : inherit;
698 font-size : inherit;
699 font-style : inherit;
700 font-variant : inherit;
701 font-weight : inherit;
702 margin: 0;
703 padding: 0;
Guillaume Roguez5b137be2018-02-21 10:44:58 -0500704}
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400705
706/* Media interactions */
707.media_wrapper img {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400708 max-width: 800px;
709 max-height: 700px;
710 margin: 5px 0 0 0;
711 border-radius: 10px;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400712}
713
714.playVideo {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400715 background-color: rgba(0, 0, 0, 0.6);
716 height: 50px;
717 width: 50px;
718 border-radius: 5px;
719 float: right;
720 position: absolute;
721 top: calc(50% - 25px);
722 left: calc(50% - 25px);
723 z-index: 3;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400724}
725
726.containerVideo {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400727 width: 100%;
728 position: relative;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400729}
730
731.playVideo svg {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400732 height: 40px;
733 width: 40px;
734 margin: 5px;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400735}
736
737/* Text interaction */
738.failure,
739.sending {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400740 margin: 10px 10px;
741 color: #A0A0A0;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400742}
743
744/* Classic screens */
745@media screen and (max-width: 1920px), screen and (max-height: 1080px) {
746 .message_in {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400747 padding-left: 15%;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400748 }
749
750 .message_out {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400751 padding-right: 15%;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400752 }
753
754 .message_type_text .message_wrapper {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400755 max-width: 60%;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400756 }
757
758 /* File interactions */
759 .message_type_data_transfer .message_wrapper {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400760 width: 40%;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400761 }
762
763 /* Media interactions */
764 .media_wrapper img {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400765 max-width: 450px;
766 max-height: 450px;
767 }
768
769 .menu_interaction
770 {
771 margin: 5px;
772 padding: 2px;
773 height: 10px;
774 font-size: 0.7em;
775 transition:visibility 0.3s linear,opacity 0.3s linear;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400776 }
777}
778
779/* lower resolutions */
780@media screen and (max-width: 1000px), screen and (max-height: 480px) {
781 .message_in {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400782 padding-left: 0;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400783 }
784
785 .message_out {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400786 padding-right: 0;
787 }
788
789 .message_type_contact,
790 .message_type_call {
791 max-width: 100%;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400792 }
793
794 .message_type_text .message_wrapper {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400795 max-width: 90%;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400796 }
797
798 /* File interactions */
799 .message_type_data_transfer .message_wrapper {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400800 width: 70%;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400801 }
802
803 /* Media interactions */
804 .media_wrapper img {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400805 max-width: 200px;
806 max-height: 200px;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400807 }
808}
809
810/* Special case */
811@media screen and (max-width: 300px) {
812 .sender_image {
813 visibility: hidden;
814 display: none;
815 }
816
817 /* File interactions */
818 .message_type_data_transfer .left_buttons {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400819 max-width: 100%;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400820 }
821
822 .message_type_data_transfer .text {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400823 max-width: 100%;
824 padding-left: 0;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400825 }
826}
827
828.message_type_contact .message_wrapper:hover .timestamp_action,
829.message_type_call .message_wrapper:hover .timestamp_action {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400830 opacity: 1;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400831}
832
833.timestamp_action {
Sébastien Blind2ea6dd2018-04-18 11:35:33 -0400834 margin: auto;
835 padding: 0;
836 vertical-align: center;
837 opacity:0;
838 transition:visibility 0.3s linear,opacity 0.3s linear;
Sébastien Blin82d0d2d2018-03-14 17:21:42 -0400839}