You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
381 lines
8.5 KiB
381 lines
8.5 KiB
/*
|
|
* Copyright (c) 2016
|
|
*
|
|
* This file is licensed under the Affero General Public License version 3
|
|
* or later.
|
|
*
|
|
* See the COPYING-README file.
|
|
*
|
|
*/
|
|
|
|
#chatView .comments,
|
|
#chatView .emptycontent {
|
|
flex-grow: 1;
|
|
}
|
|
|
|
#chatView .emptycontent {
|
|
margin-top: 0;
|
|
}
|
|
|
|
#chatView .newCommentForm {
|
|
position: relative;
|
|
}
|
|
|
|
#chatView .newCommentForm .message {
|
|
width: calc(100% - 36px);
|
|
margin-left: 36px;
|
|
padding-right: 30px;
|
|
/**
|
|
* The div needs to be inline-block, so Chrome/Chromium correctly insert
|
|
* div-ed multi-line-text with new lines.
|
|
* Otherwise they are just chained together on posting.
|
|
*
|
|
* See https://stackoverflow.com/a/24689420
|
|
* See https://github.com/nextcloud/spreed/issues/1561
|
|
*/
|
|
display: inline-block;
|
|
}
|
|
|
|
#chatView .newCommentForm .submit,
|
|
#chatView .newCommentForm .submitLoading,
|
|
#chatView .newCommentForm .share,
|
|
#chatView .newCommentForm .shareLoading {
|
|
position: absolute;
|
|
|
|
width: 44px;
|
|
height: 44px;
|
|
|
|
bottom: -1px;
|
|
margin: 0;
|
|
}
|
|
|
|
#chatView .newCommentForm .submit,
|
|
#chatView .newCommentForm .submitLoading {
|
|
right: 0;
|
|
}
|
|
|
|
#chatView .newCommentForm .share,
|
|
#chatView .newCommentForm .shareLoading {
|
|
right: -44px;
|
|
}
|
|
|
|
#chatView .newCommentForm .message:focus + .submit:not(:hover):not(:focus) {
|
|
opacity: .6;
|
|
}
|
|
#chatView .newCommentForm .submit,
|
|
#chatView .newCommentForm .share {
|
|
background-color: transparent;
|
|
border: none;
|
|
opacity: .3;
|
|
}
|
|
#chatView .newCommentForm .submit:hover:not(:disabled),
|
|
#chatView .newCommentForm .submit:focus:not(:disabled),
|
|
#chatView .newCommentForm .share:hover:not(:disabled),
|
|
#chatView .newCommentForm .share:focus:not(:disabled) {
|
|
opacity: 1;
|
|
}
|
|
|
|
#chatView .newCommentForm .cancel {
|
|
margin-right: 6px;
|
|
}
|
|
|
|
#chatView .newCommentForm div.message {
|
|
resize: none;
|
|
}
|
|
|
|
#chatView .newCommentForm div.message:empty:before {
|
|
content: attr(data-placeholder);
|
|
color: grey;
|
|
}
|
|
|
|
/* Internal wrappers used by the virtual list. */
|
|
#chatView .comments .wrapper-background,
|
|
#chatView .comments .wrapper {
|
|
position: absolute;
|
|
left: 0;
|
|
right: 0;
|
|
}
|
|
|
|
#chatView .comment {
|
|
position: relative;
|
|
margin-bottom: 20px;
|
|
word-wrap: break-word;
|
|
overflow-wrap: break-word;
|
|
}
|
|
|
|
#chatView .comment .avatar,
|
|
.atwho-view-ul .chat-view-mention-autocomplete .avatar{
|
|
width: 32px;
|
|
height: 32px;
|
|
line-height: 32px;
|
|
margin-right: 5px;
|
|
}
|
|
|
|
#chatView .comment .message .avatar,
|
|
.atwho-view-ul .chat-view-mention-autocomplete .avatar
|
|
{
|
|
display: inline-block;
|
|
}
|
|
|
|
#chatView .comment.collapsed .message {
|
|
white-space: pre-wrap;
|
|
}
|
|
|
|
#chatView .comment.collapsed .message {
|
|
max-height: 70px;
|
|
overflow: hidden;
|
|
}
|
|
|
|
#chatView .comment .message-overlay {
|
|
display: none;
|
|
}
|
|
|
|
#chatView .comment.collapsed .message-overlay {
|
|
display: block;
|
|
position: absolute;
|
|
z-index: 2;
|
|
height: 50px;
|
|
pointer-events: none;
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
background: -moz-linear-gradient(rgba(255,255,255,0), rgba(255,255,255,1));
|
|
background: -webkit-linear-gradient(rgba(255,255,255,0), rgba(255,255,255,1));
|
|
background: -o-linear-gradient(rgba(255,255,255,0), rgba(255,255,255,1));
|
|
background: -ms-linear-gradient(rgba(255,255,255,0), rgba(255,255,255,1));
|
|
background: linear-gradient(rgba(255,255,255,0), rgba(255,255,255,1));
|
|
filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#00FFFFFF', endColorstr='#FFFFFFFF');
|
|
background-repeat: no-repeat;
|
|
}
|
|
|
|
#chatView .authorRow>div {
|
|
display: inline-block;
|
|
vertical-align: middle;
|
|
}
|
|
|
|
#chatView .authorRow>div.hidden {
|
|
display: none !important;
|
|
}
|
|
|
|
.atwho-view-ul .chat-view-mention-autocomplete .avatar-name-wrapper,
|
|
#chatView .comment .authorRow {
|
|
position: relative;
|
|
display: inline-flex;
|
|
align-items: center;
|
|
width: 100%;
|
|
}
|
|
|
|
#chatView .comment .authorRow .contactsmenu-popover {
|
|
top: 32px;
|
|
}
|
|
|
|
body:not(#body-public) #chatView .comment .authorRow:not(.currentUser):not(.guestUser) {
|
|
.avatar,
|
|
.avatar img,
|
|
.author {
|
|
cursor: pointer;
|
|
}
|
|
}
|
|
|
|
.atwho-view-ul .chat-view-mention-autocomplete .avatar-name-wrapper,
|
|
.atwho-view-ul .chat-view-mention-autocomplete .avatar-name-wrapper .avatar,
|
|
.atwho-view-ul .chat-view-mention-autocomplete .avatar-name-wrapper .avatar img {
|
|
cursor: pointer;
|
|
}
|
|
|
|
.atwho-view-ul .chat-view-mention-autocomplete .avatar-name-wrapper {
|
|
white-space: nowrap;
|
|
}
|
|
|
|
#chatView .comment .author,
|
|
#chatView .comment .date {
|
|
color: var(--color-text-maxcontrast);
|
|
}
|
|
#chatView .comment .author {
|
|
margin-left: 5px;
|
|
}
|
|
#chatView .comment .date {
|
|
/* "margin-left: auto" aligns the block to the right, while
|
|
* "text-align: right" aligns the text inside the block to the right, for
|
|
* example, when it uses two lines due to a limited width. */
|
|
margin-left: auto;
|
|
text-align: right;
|
|
display: inline-block;
|
|
vertical-align: top;
|
|
}
|
|
|
|
#chatView .comment.systemMessage:not(.grouped) {
|
|
margin-top: -10px;
|
|
}
|
|
|
|
#chatView .comment:not(.systemMessage):not(.grouped):not(.same-author) .date {
|
|
margin-top: -32px;
|
|
}
|
|
|
|
#chatView .comment.grouped .date {
|
|
display: none;
|
|
}
|
|
|
|
#chatView .comments .authorRow,
|
|
#chatView .comments li .message {
|
|
/* Makes the container slightly narrower in order not to cover the date on
|
|
* the right side, thus allowing the date tooltip to be shown properly. */
|
|
width: calc(100% - 80px)
|
|
}
|
|
|
|
#chatView .comments li .message {
|
|
padding-left: 40px;
|
|
display: inline-block;
|
|
}
|
|
|
|
#chatView .comment .action {
|
|
opacity: 0;
|
|
vertical-align: middle;
|
|
display: inline-block;
|
|
}
|
|
|
|
#chatView .comment:hover .action {
|
|
opacity: 0.3;
|
|
}
|
|
|
|
#chatView .comment .action:hover {
|
|
opacity: 1;
|
|
}
|
|
|
|
#chatView .comment .action.delete {
|
|
position: absolute;
|
|
right: 0;
|
|
}
|
|
|
|
#chatView .comment.disabled {
|
|
opacity: 0.3;
|
|
}
|
|
|
|
#chatView .comment.disabled .action {
|
|
visibility: hidden;
|
|
}
|
|
|
|
#chatView .message.error {
|
|
color: #e9322d;
|
|
border-color: #e9322d;
|
|
box-shadow: 0 0 6px #f8b9b7;
|
|
}
|
|
|
|
#chatView .comment.grouped .authorRow,
|
|
#chatView .comment.same-author .authorRow {
|
|
display: none;
|
|
}
|
|
|
|
#chatView .comment.grouped,
|
|
#chatView .comment.same-author {
|
|
margin-top: -15px;
|
|
}
|
|
|
|
#chatView .comment.showDate {
|
|
margin-top: 40px;
|
|
border-top: 1px solid var(--color-border);
|
|
padding-top: 20px;
|
|
}
|
|
|
|
#chatView .comment.showDate:before {
|
|
content: attr(data-date);
|
|
|
|
position: absolute;
|
|
top: 0;
|
|
left: 50%;
|
|
transform: translateX(-50%) translateY(-50%);
|
|
padding: 0 7px 0 7px;
|
|
|
|
text-align: center;
|
|
white-space: nowrap;
|
|
|
|
color: var(--color-text-maxcontrast);
|
|
background-color: var(--color-main-background);
|
|
}
|
|
|
|
#chatView .comment.showDate .authorRow {
|
|
display: inline-flex;
|
|
}
|
|
|
|
#chatView .comment .message .mention-call,
|
|
#chatView .comment .message .mention-user {
|
|
/* Make the mention the positioning context of its child contacts menu */
|
|
position: relative;
|
|
|
|
display: inline;
|
|
vertical-align: top;
|
|
background-color: var(--color-background-dark);
|
|
border-radius: 50vh;
|
|
padding: 1px 7px 1px 1px;
|
|
|
|
/* Ensure that the avatar and the user name will be kept together;
|
|
* otherwise a line break could be added between them when the wrapper
|
|
* is close to the right border of the message. */
|
|
white-space: nowrap;
|
|
|
|
.avatar {
|
|
img {
|
|
vertical-align: top;
|
|
}
|
|
height: 16px;
|
|
width: 16px;
|
|
vertical-align: middle;
|
|
padding: 1px;
|
|
margin-top: -4px;
|
|
margin-left: 0;
|
|
margin-right: 2px;
|
|
|
|
&.icon {
|
|
margin-top: -2px;
|
|
margin-left: 1px;
|
|
background-color: var(--color-background-darker);
|
|
}
|
|
}
|
|
}
|
|
|
|
#chatView .comment:not(.systemMessage) .message .mention-call,
|
|
#chatView .comment:not(.systemMessage) .message .mention-user {
|
|
font-weight: bold;
|
|
|
|
&.currentUser {
|
|
background-color: var(--color-primary);
|
|
color: var(--color-primary-text);
|
|
}
|
|
}
|
|
|
|
#chatView .comment.systemMessage .message .mention-call,
|
|
#chatView .comment.systemMessage .message .mention-user {
|
|
color: var(--color-main-text);
|
|
}
|
|
|
|
#chatView .comment.systemMessage .message {
|
|
color: var(--color-text-maxcontrast);
|
|
}
|
|
|
|
body:not(#body-public) #chatView .comment:not(.newCommentRow) .message .mention-user:not(.currentUser),
|
|
body:not(#body-public) #chatView .comment:not(.newCommentRow) .message .mention-user:not(.currentUser) .avatar,
|
|
body:not(#body-public) #chatView .comment:not(.newCommentRow) .message .mention-user:not(.currentUser) .avatar img {
|
|
cursor: pointer;
|
|
}
|
|
|
|
#chatView .comment .message .contactsmenu-popover {
|
|
left: -6px;
|
|
top: 24px;
|
|
}
|
|
|
|
#chatView .comment .message .filePreviewContainer .filePreview {
|
|
/* The file preview can not be a block; otherwise it would fill the whole
|
|
* width of the container and the loading icon would not be centered on the
|
|
* image. */
|
|
display: inline-block;
|
|
}
|
|
|
|
#chatView .comment .message .filePreviewContainer strong {
|
|
/* As the file preview is an inline block the name is set as a block to
|
|
* force it to be on its own line below the preview. */
|
|
display: block;
|
|
}
|
|
|
|
#chatView .comment .message .external:after {
|
|
content: " ↗";
|
|
}
|