5d28e0533d
* Add DisambiguatedProfile Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com> * Give DisambiguatedProfile some nice options Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com> * Delint Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com> * Use DisambiguatedProfile in member tile Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com> * Basic handling of text overflow Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com> * Use name instead of rawDisplayName Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com> * This seems to make more sense Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com> * Reodred Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com> * rethemedex Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com> * Fix import Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com> * Fix color Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com> * Appease the linter * Re-apply UserIdentifier patch Co-authored-by: Matthew Hodgson <matthew@matrix.org> Co-authored-by: Travis Ralston <travisr@matrix.org>
261 lines
6.5 KiB
SCSS
261 lines
6.5 KiB
SCSS
/*
|
|
Copyright 2020 The Matrix.org Foundation C.I.C.
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
*/
|
|
|
|
$icon-width: 14px;
|
|
$timestamp-width: 45px;
|
|
$right-padding: 5px;
|
|
$irc-line-height: $font-18px;
|
|
|
|
.mx_IRCLayout {
|
|
--name-width: 70px;
|
|
|
|
line-height: $irc-line-height !important;
|
|
|
|
.mx_EventTile {
|
|
// timestamps are links which shouldn't be underlined
|
|
> a {
|
|
text-decoration: none;
|
|
min-width: 45px;
|
|
}
|
|
|
|
display: flex;
|
|
flex-direction: row;
|
|
align-items: flex-start;
|
|
padding-top: 0;
|
|
|
|
> * {
|
|
margin-right: $right-padding;
|
|
}
|
|
|
|
.mx_ThreadInfo {
|
|
margin-right: 0;
|
|
margin-left: 0;
|
|
}
|
|
|
|
> .mx_EventTile_msgOption {
|
|
order: 5;
|
|
flex-shrink: 0;
|
|
|
|
.mx_EventTile_readAvatars {
|
|
top: 0.2rem; // ($irc-line-height - avatar height) / 2
|
|
}
|
|
}
|
|
|
|
.mx_EventTile_line, .mx_EventTile_reply {
|
|
padding: 0;
|
|
display: flex;
|
|
flex-direction: column;
|
|
order: 3;
|
|
flex-grow: 1;
|
|
flex-shrink: 1;
|
|
min-width: 0;
|
|
}
|
|
|
|
> .mx_EventTile_avatar {
|
|
order: 1;
|
|
position: relative;
|
|
top: 0;
|
|
left: 0;
|
|
flex-shrink: 0;
|
|
height: $irc-line-height;
|
|
display: flex;
|
|
align-items: center;
|
|
|
|
// Need to use important to override the js provided height and width values.
|
|
> .mx_BaseAvatar, > .mx_BaseAvatar > * {
|
|
height: $font-14px !important;
|
|
width: $font-14px !important;
|
|
font-size: $font-10px !important;
|
|
line-height: $font-15px !important;
|
|
}
|
|
}
|
|
|
|
.mx_MessageTimestamp {
|
|
font-size: $font-10px;
|
|
width: $timestamp-width;
|
|
text-align: right;
|
|
}
|
|
|
|
> .mx_EventTile_e2eIcon {
|
|
position: absolute;
|
|
right: unset;
|
|
left: unset;
|
|
top: 0;
|
|
|
|
padding: 0;
|
|
|
|
flex-shrink: 0;
|
|
flex-grow: 0;
|
|
|
|
height: $font-18px;
|
|
|
|
background-position: center;
|
|
}
|
|
|
|
.mx_EventTile_line {
|
|
.mx_EventTile_e2eIcon,
|
|
.mx_TextualEvent,
|
|
.mx_MTextBody {
|
|
display: inline-block;
|
|
// add a 1px padding top and bottom because our larger emoji font otherwise gets cropped by anti-zalgo
|
|
padding: 1px 0;
|
|
}
|
|
}
|
|
|
|
.mx_EventTile_reply {
|
|
order: 4;
|
|
}
|
|
|
|
.mx_EditMessageComposer_buttons {
|
|
position: relative;
|
|
}
|
|
|
|
.mx_ReactionsRow {
|
|
padding-left: 0;
|
|
padding-right: 0;
|
|
}
|
|
}
|
|
|
|
.mx_EventTile_emote {
|
|
> .mx_EventTile_avatar {
|
|
margin-left: calc(var(--name-width) + $icon-width + $right-padding);
|
|
}
|
|
}
|
|
|
|
blockquote {
|
|
margin: 0;
|
|
}
|
|
|
|
.mx_GenericEventListSummary {
|
|
> .mx_EventTile_line {
|
|
padding-left: calc(var(--name-width) + $icon-width + $timestamp-width + 3 * $right-padding); // 15 px of padding
|
|
}
|
|
|
|
.mx_GenericEventListSummary_avatars {
|
|
padding: 0;
|
|
margin: 0 9px 0 0;
|
|
}
|
|
}
|
|
|
|
.mx_EventTile.mx_EventTile_info {
|
|
.mx_EventTile_avatar {
|
|
left: calc(var(--name-width) + 10px + $icon-width);
|
|
top: 0;
|
|
}
|
|
|
|
.mx_EventTile_line {
|
|
left: calc(var(--name-width) + 10px + $icon-width);
|
|
}
|
|
|
|
.mx_TextualEvent {
|
|
line-height: $irc-line-height;
|
|
}
|
|
}
|
|
|
|
// Suppress highlight thing from the normal Layout.
|
|
.mx_EventTile:hover.mx_EventTile_verified .mx_EventTile_line,
|
|
.mx_EventTile:hover.mx_EventTile_unverified .mx_EventTile_line,
|
|
.mx_EventTile:hover.mx_EventTile_unknown .mx_EventTile_line {
|
|
padding-left: 0;
|
|
border-left: 0;
|
|
}
|
|
|
|
.mx_DisambiguatedProfile {
|
|
width: var(--name-width);
|
|
display: flex;
|
|
order: 2;
|
|
flex-shrink: 0;
|
|
justify-content: flex-start;
|
|
align-items: center;
|
|
|
|
> .mx_DisambiguatedProfile_displayName {
|
|
width: 100%;
|
|
text-align: end;
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
}
|
|
|
|
> .mx_DisambiguatedProfile_mxid {
|
|
visibility: collapse;
|
|
// Override the inherited margin.
|
|
margin-left: 0;
|
|
padding: 0 5px;
|
|
}
|
|
}
|
|
|
|
.mx_DisambiguatedProfile:hover {
|
|
overflow: visible;
|
|
z-index: 10;
|
|
|
|
> .mx_DisambiguatedProfile_displayName {
|
|
overflow: visible;
|
|
display: inline;
|
|
background-color: $event-selected-color;
|
|
border-radius: 8px 0 0 8px;
|
|
padding-right: 8px;
|
|
}
|
|
|
|
> .mx_DisambiguatedProfile_mxid {
|
|
visibility: visible;
|
|
opacity: 1;
|
|
background-color: $event-selected-color;
|
|
}
|
|
}
|
|
|
|
.mx_ReplyChain {
|
|
margin: 0;
|
|
.mx_DisambiguatedProfile {
|
|
order: unset;
|
|
max-width: unset;
|
|
width: unset;
|
|
background: transparent;
|
|
}
|
|
|
|
.mx_EventTile_emote {
|
|
> .mx_EventTile_avatar {
|
|
margin-left: initial;
|
|
}
|
|
}
|
|
|
|
.mx_MessageTimestamp {
|
|
width: initial;
|
|
}
|
|
|
|
/**
|
|
* adding the icon back in the document flow
|
|
* if it's not present, there's no unwanted wasted space
|
|
*/
|
|
.mx_EventTile_e2eIcon {
|
|
position: relative;
|
|
order: -1;
|
|
}
|
|
}
|
|
|
|
.mx_ProfileResizer {
|
|
position: absolute;
|
|
height: 100%;
|
|
width: 15px;
|
|
left: calc(80px + var(--name-width));
|
|
cursor: col-resize;
|
|
z-index: 100;
|
|
}
|
|
|
|
// Need to use important to override the js provided height and width values.
|
|
.mx_Flair > img {
|
|
height: $font-14px !important;
|
|
width: $font-14px !important;
|
|
}
|
|
}
|