mirror of
https://github.com/signalapp/Signal-Desktop.git
synced 2026-05-03 22:55:44 +01:00
Android: The gray border around the quote didn't interact well with the image, which needed to overlap the border. For now we'll just remove the border. Also made the thumbnail image 2px bigger because I noticed that in some cases there was a partial-pixel space below the image (where the rest of the quote was making the container bigger). iOS: The gray border around outgoing quotes was fading into the background gray color, making the quote look a tiny bit more narrow than the main message. Removed the border.
421 lines
7.6 KiB
SCSS
421 lines
7.6 KiB
SCSS
$ios-header-border-color: rgba(0,0,0,0.05);
|
|
$ios-border-color: rgba(0,0,0,0.1);
|
|
|
|
.ios {
|
|
#header {
|
|
height: $header-height;
|
|
border-bottom: 1px solid $ios-header-border-color;
|
|
border-width: 0 1px 1px 0;
|
|
background-color: $grey_l;
|
|
color: $grey_d;
|
|
h1 { display: none; }
|
|
}
|
|
.gutter {
|
|
border-right: 1px solid $ios-border-color;
|
|
.content {
|
|
height: calc(100% - #{$header-height});
|
|
background: $ios-border-color;
|
|
}
|
|
.contact {
|
|
background: $grey_l;
|
|
margin-right: 0;
|
|
|
|
&.selected {
|
|
background: $blue;
|
|
color: white;
|
|
.last-timestamp {
|
|
color: white;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
.banner {
|
|
top: 15px;
|
|
}
|
|
|
|
.tool-bar {
|
|
float: left;
|
|
padding: 15px;
|
|
}
|
|
input[type=text]:active,
|
|
input[type=text]:focus,
|
|
input[type=search]:active,
|
|
input[type=search]:focus,
|
|
input[type=search].active,
|
|
form.active {
|
|
outline-offset: 0;
|
|
outline: -webkit-focus-ring-color auto 5px;
|
|
}
|
|
input.search {
|
|
border-radius: 5px;
|
|
width: 220px;
|
|
height: 34px;
|
|
padding-left: $search-padding-left-ios;
|
|
line-height: 34px;
|
|
background-color: #dddddd;
|
|
&.active.rtl {
|
|
background-position : left $search-padding-left-ios center;
|
|
}
|
|
}
|
|
.conversation-header {
|
|
background-color: $grey_l;
|
|
color: $grey_d;
|
|
border-color: $ios-header-border-color;
|
|
text-align: left;
|
|
|
|
// Without this, it interacts poorly with 100% height placeholder shown on startup
|
|
position: absolute;
|
|
top: 0;
|
|
width: 100%;
|
|
z-index: 1;
|
|
|
|
.conversation-title {
|
|
line-height: $header-height;
|
|
|
|
.verified-icon {
|
|
@include color-svg('../images/verified-check.svg', #454545);
|
|
}
|
|
}
|
|
|
|
.avatar { display: none; }
|
|
}
|
|
|
|
.conversation .panel {
|
|
position: absolute;
|
|
top: $header-height;
|
|
bottom: 0;
|
|
width: 100%;
|
|
}
|
|
|
|
.settings h3,
|
|
.menu-list li {
|
|
text-transform: capitalize;
|
|
}
|
|
.bottom-bar {
|
|
padding: 15px;
|
|
min-height: 30px;
|
|
border-top: 1px solid $ios-border-color;
|
|
form.send {
|
|
border-radius: 5px;
|
|
border: 1px solid $ios-border-color;
|
|
}
|
|
}
|
|
|
|
.error-message.content,
|
|
.control .content {
|
|
padding: 10px;
|
|
}
|
|
|
|
.message-container,
|
|
.message-list {
|
|
.bubble .content {
|
|
margin-top: 0px;
|
|
}
|
|
}
|
|
|
|
.quoted-message {
|
|
// Not ideal, but necessary to override the specificity of the android theme color
|
|
// classes used in conversations.scss
|
|
background-color: white !important;
|
|
border: none !important;
|
|
|
|
margin-top: 0px !important;
|
|
margin-bottom: 0px;
|
|
margin-left: 0px;
|
|
margin-right: 0px;
|
|
|
|
.primary {
|
|
padding: 10px;
|
|
|
|
.text,
|
|
.filename-label,
|
|
.type-label {
|
|
border-left: 2px solid $grey_l1;
|
|
padding: 5px;
|
|
padding-left: 7px;
|
|
// Without this smaller bottom padding, text beyond four lines still shows up!
|
|
padding-bottom: 2px;
|
|
color: black;
|
|
}
|
|
|
|
.author {
|
|
display: none;
|
|
}
|
|
|
|
.ios-label {
|
|
display: block;
|
|
color: $grey_l1;
|
|
font-size: smaller;
|
|
margin-bottom: 3px;
|
|
}
|
|
}
|
|
|
|
.icon-container {
|
|
height: 61px;
|
|
width: 61px;
|
|
min-width: 61px;
|
|
|
|
.circle-background {
|
|
left: 12px;
|
|
right: 12px;
|
|
top: 12px;
|
|
bottom: 12px;
|
|
|
|
background-color: $blue !important;
|
|
}
|
|
|
|
.icon {
|
|
left: 18px;
|
|
right: 18px;
|
|
top: 18px;
|
|
bottom: 18px;
|
|
|
|
background-color: white !important;
|
|
}
|
|
|
|
.inner {
|
|
padding: 12px;
|
|
height: 61px;
|
|
text-align: center;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
}
|
|
|
|
.close-container {
|
|
flex: initial;
|
|
min-width: 32px;
|
|
width: 32px;
|
|
height: 50px;
|
|
position: relative;
|
|
|
|
top: auto;
|
|
right: auto;
|
|
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
|
|
-webkit-mask: none;
|
|
background: none;
|
|
|
|
.close-button {
|
|
height: 20px;
|
|
width: 20px;
|
|
|
|
@include color-svg('../images/close-circle.svg', $grey_l4);
|
|
}
|
|
}
|
|
|
|
.from-me {
|
|
.primary {
|
|
.text,
|
|
.filename-label,
|
|
.type-label {
|
|
border-left: 2px solid $blue;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.incoming .quoted-message {
|
|
border-bottom: 1px solid lightgray !important;
|
|
}
|
|
|
|
.quoted-message.from-me .primary {
|
|
.text,
|
|
.filename-label,
|
|
.type-label {
|
|
border-left: 2px solid $blue;
|
|
}
|
|
}
|
|
|
|
.outgoing .quoted-message,
|
|
.private .incoming .quoted-message {
|
|
margin-top: 0px;
|
|
}
|
|
|
|
.outgoing .quoted-message .icon-container .circle-background {
|
|
background-color: lightgray !important;
|
|
}
|
|
|
|
.bottom-bar {
|
|
.quote-wrapper {
|
|
margin-right: 0px;
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
.quoted-message {
|
|
background: none !important;
|
|
|
|
.primary {
|
|
padding: 0px;
|
|
|
|
.ios-label {
|
|
color: $grey_l4;
|
|
}
|
|
}
|
|
|
|
.icon-container {
|
|
height: 50px;
|
|
width: 50px;
|
|
min-width: 50px;
|
|
|
|
.circle-background {
|
|
left: 6px;
|
|
right: 6px;
|
|
top: 6px;
|
|
bottom: 6px;
|
|
|
|
background-color: $blue !important;
|
|
}
|
|
|
|
.icon {
|
|
left: 12px;
|
|
right: 12px;
|
|
top: 12px;
|
|
bottom: 12px;
|
|
}
|
|
|
|
.inner {
|
|
padding: 0px;
|
|
height: 50px;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.attachments .bubbled {
|
|
border-radius: 15px;
|
|
|
|
padding: 10px;
|
|
padding-top: 0px;
|
|
padding-bottom: 5px;
|
|
|
|
video, audio {
|
|
margin-bottom: 5px;
|
|
}
|
|
|
|
position: relative;
|
|
}
|
|
|
|
.tail-wrapper {
|
|
margin-bottom: 5px;
|
|
}
|
|
.inner-bubble {
|
|
border-radius: 15px;
|
|
overflow: hidden;
|
|
|
|
.body {
|
|
margin-top: 0;
|
|
display: inline-block;
|
|
padding: 10px;
|
|
position: relative;
|
|
word-break: break-word;
|
|
}
|
|
}
|
|
|
|
.tail-wrapper.with-tail {
|
|
position: relative;
|
|
|
|
&:before, &:after {
|
|
content: '';
|
|
display: block;
|
|
border-radius: 20px;
|
|
position: absolute;
|
|
width: 10px;
|
|
}
|
|
&:before {
|
|
right: -1px;
|
|
bottom: -3px;
|
|
height: 10px;
|
|
border-radius: 20px;
|
|
background: $blue;
|
|
}
|
|
&:after {
|
|
height: 11px;
|
|
right: -6px;
|
|
bottom: -3px;
|
|
background: #eee;
|
|
}
|
|
}
|
|
|
|
.meta {
|
|
clear: both;
|
|
}
|
|
|
|
.outgoing .tail-wrapper {
|
|
float: right;
|
|
|
|
.inner-bubble {
|
|
max-width: 100%;
|
|
}
|
|
}
|
|
|
|
.incoming .tail-wrapper {
|
|
float: left;
|
|
|
|
.inner-bubble {
|
|
max-width: 100%;
|
|
}
|
|
}
|
|
|
|
// We don't add a background to the attachments div unless there's also text. The
|
|
// browser doesn't always clip the border-radius properly, so we get a partial-pixel
|
|
// halo effect.
|
|
.outgoing .with-tail.tail-wrapper {
|
|
.attachments {
|
|
background-color: $blue;
|
|
}
|
|
.content {
|
|
background-color: $blue;
|
|
}
|
|
|
|
&, .body, a {
|
|
@include invert-text-color;
|
|
}
|
|
}
|
|
|
|
.incoming .with-tail.tail-wrapper {
|
|
&:before {
|
|
left: -1px;
|
|
background-color: white;
|
|
}
|
|
&:after {
|
|
left: -6px;
|
|
}
|
|
|
|
.inner-bubble {
|
|
background-color: white;
|
|
color: black;
|
|
}
|
|
}
|
|
|
|
.outgoing .attachments .fileView .icon {
|
|
@include color-svg('../images/file.svg', white);
|
|
&.audio {
|
|
@include color-svg('../images/audio.svg', white);
|
|
}
|
|
&.video {
|
|
@include color-svg('../images/video.svg', white);
|
|
}
|
|
&.voice {
|
|
@include color-svg('../images/voice.svg', white);
|
|
}
|
|
}
|
|
|
|
.attachment {
|
|
a {
|
|
border-radius: 15px;
|
|
}
|
|
img {
|
|
margin-right: auto;
|
|
margin-left: auto;
|
|
}
|
|
}
|
|
.hourglass {
|
|
@include hourglass(#999);
|
|
}
|
|
}
|