xmpp.chapril.org-conversejs/sass/_messages.scss
JC Brand 1d9bbb8ddd Message display improvements
* Checkmark and edit modal button are now on the right
* Instead of showing checkmarks for MUC messages,
  we now show them as light grey before MUC reflection
* Simplify message markup by requiring less `if` statements
2019-06-04 11:12:22 +02:00

349 lines
9.7 KiB
SCSS

#conversejs {
.older-msg {
time {
font-weight: bold;
}
}
.message {
.mention {
font-weight: bold;
}
.mention--self {
font-weight: normal;
}
&.date-separator {
height: 2em;
margin: 0;
position: relative;
text-align: center;
z-index: 0;
.separator {
border-top: 0px;
border-bottom: var(--chat-separator-border-bottom);
margin: 0 1em;
position: relative;
top: 1em;
z-index: 5;
}
.separator-text {
background: white;
bottom: 1px; // Offset needed due to .separator border size
color: var(--separator-text-color);
display: inline-block;
line-height: 2em;
padding: 0 1em;
position: relative;
z-index: 5;
}
}
&.chat-info {
color: var(--chat-head-color);
font-size: var(--message-font-size);
line-height: var(--line-height-small);
font-size: 90%;
padding: 0.17rem 1rem;
&.badge {
color: var(--chat-head-text-color);
}
&.chat-state-notification {
font-style: italic;
}
&.chat-event {
clear: left;
font-style: italic;
}
&.chat-error {
color: var(--error-color);
font-weight: bold;
}
}
.chat-image {
height: auto;
width: auto;
max-height: 15em;
max-width: 100%;
}
&.chat-msg--action {
font-style: italic;
.chat-msg__author {
padding-right: 0.2em;
}
}
&.chat-msg {
display: inline-flex;
width: 100%;
flex-direction: row;
overflow: auto; // Ensures that content stays inside
padding: 0.125rem 1rem;
&.onload {
animation: colorchange-chatmessage 1s;
-webkit-animation: colorchange-chatmessage 1s;
}
&:hover {
background-color: rgba(0, 0, 0, 0.035);
.chat-msg__actions {
.chat-msg__action {
opacity: 1;
}
}
}
&.correcting {
&.groupchat {
background-color: var(--chatroom-correcting-color);
}
&:not(.groupchat) {
background-color: var(--chat-correcting-color);
}
}
.spoiler {
margin-top: 0.5em;
}
.spoiler-hint {
margin-bottom: 0.5em;
}
.spoiler-toggle {
color: white;
i {
color: white;
padding-right: 0.5em;
}
&:before {
padding-right: 0.25em;
whitespace: nowrap;
}
}
.chat-msg__content {
display: flex;
flex-direction: column;
justify-content: space-between;
align-items: stretch;
margin-left: 0.5rem;
width: calc(100% - var(--message-avatar-width));
}
.chat-msg__content--me {
.chat-msg__body--groupchat {
.chat-msg__text {
color: var(--subdued-color);
}
&.chat-msg__body--delayed .chat-msg__text,
&.chat-msg__body--received .chat-msg__text {
color: var(--message-text-color);
}
}
}
.chat-msg__content--action {
width: 100%;
margin-left: 0;
}
.chat-msg__body {
display: flex;
flex-direction: row;
justify-content: space-between;
width: 100%;
}
.chat-msg__message {
display: inline-flex;
flex-direction: column;
width: 100%;
overflow-wrap: break-word;
}
.chat-msg__edit-modal {
cursor: pointer;
padding-right: 0.5em;
}
&.headline {
.chat-msg__body {
margin-left: 0;
}
}
.chat-msg__subject {
font-weight: bold;
clear: right;
}
.chat-msg__text {
color: var(--message-text-color);
padding: 0;
width: 100%;
white-space: pre-wrap;
a {
word-wrap: break-word;
word-break: break-all;
display: inline-block;
}
img {
&.emoji {
height: 1.5em;
width: 1.5em;
margin: 0 .05em 0 .1em;
vertical-align: -0.1em;
}
}
.emojione {
margin-bottom: -6px;
}
}
.chat-msg__text--larger {
font-size: 1.6em;
padding-top: 0.25em;
padding-bottom: 0.25em;
}
.chat-msg__media {
margin-top: 0.25rem;
word-break: break-all;
a {
word-wrap: break-word;
}
audio {
width: 100%;
}
}
.chat-msg__actions {
.chat-msg__action {
height: var(--message-font-size);
font-size: var(--message-font-size);
padding: 0;
border: none;
opacity: 0;
background: transparent;
cursor: pointer;
&:focus {
display: block;
}
}
}
.chat-msg__avatar {
margin-top: 0.5em;
vertical-align: middle;
height: var(--message-avatar-height);
width: var(--message-avatar-width);
min-height: var(--message-avatar-height);
min-width: var(--message-avatar-width);
}
.chat-msg__heading {
width: 100%;
margin-top: 0.5em;
padding-right: 0.25rem;
padding-bottom: 0.25rem;
display: flex;
.chat-msg__author {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
font-family: var(--heading-font);
font-size: 115%;
font-weight: bold;
padding-bottom: 1px; // Hack to avoid cutting of text on the button
}
.badge {
margin-left: 0.5em;
font-family: var(--normal_font);
}
.chat-msg__time {
padding-left: 0.25em;
padding-right: 0.25em;
color: var(--text-color-lighten-15-percent);
}
}
&.chat-msg--action {
.chat-msg__content {
flex-wrap: nowrap;
flex-direction: row;
justify-content: flex-start;
}
.chat-msg__text {
width: auto;
}
.chat-msg__heading {
margin-top: 0;
padding-bottom: 0;
width: auto;
.fa {
margin-left: 0.5em;
}
}
.chat-msg__author {
font-size: var(--message-font-size);
}
.chat-msg__time {
margin-left: 0;
}
}
&.chat-msg--followup {
.chat-msg__heading,
.chat-msg__avatar {
display: none;
}
.chat-msg__content {
margin-left: 2.75rem;
width: 100%;
}
}
.chat-msg__receipt {
margin-right: 0.5em;
color: var(--message-receipt-color);
}
}
}
.chatroom-body .message {
&.onload {
animation: colorchange-chatmessage-muc 1s;
-webkit-animation: colorchange-chatmessage-muc 1s;
}
.separator {
border-top: 0px;
border-bottom: var(--chatroom-separator-border-bottom);
}
}
}
#conversejs.converse-overlayed {
.message {
&.chat-msg {
&.chat-msg--followup {
.chat-msg__content {
margin-left: 0;
}
}
}
}
}
@media screen and (max-width: 767px) {
#conversejs:not(.converse-embedded) {
.message {
&.chat-msg {
.chat-msg__author {
white-space: normal;
}
}
}
}
}