aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/components/status/status.scss13
-rw-r--r--src/components/still-image/still-image.vue47
2 files changed, 27 insertions, 33 deletions
diff --git a/src/components/status/status.scss b/src/components/status/status.scss
index 85e433c4..8797211e 100644
--- a/src/components/status/status.scss
+++ b/src/components/status/status.scss
@@ -10,16 +10,9 @@ $status-margin: 0.75em;
border-left: 4px $fallback--cRed;
border-left: 4px var(--cRed, $fallback--cRed);
- // TODO find a way to do this in a cleaner way without JS
- // stylelint-disable rscss/class-format
- &:hover .avatar.animated {
- canvas {
- display: none;
- }
-
- img {
- visibility: visible;
- }
+ &:hover .avatar {
+ --still-image-img: visible;
+ --still-image-canvas: hidden;
}
&.-focused {
diff --git a/src/components/still-image/still-image.vue b/src/components/still-image/still-image.vue
index 2ebf33ba..6fa055de 100644
--- a/src/components/still-image/still-image.vue
+++ b/src/components/still-image/still-image.vue
@@ -35,8 +35,16 @@
display: flex;
align-items: center;
- &:hover canvas {
- display: none;
+ canvas {
+ position: absolute;
+ top: 0;
+ bottom: 0;
+ left: 0;
+ right: 0;
+ width: 100%;
+ height: 100%;
+ object-fit: contain;
+ visibility: var(--still-image-canvas, visible);
}
img {
@@ -46,15 +54,6 @@
}
&.animated {
- &:hover::before,
- img {
- visibility: hidden;
- }
-
- &:hover img {
- visibility: visible
- }
-
&::before {
content: 'gif';
position: absolute;
@@ -62,25 +61,27 @@
font-size: 10px;
top: 5px;
left: 5px;
- background: rgba(127,127,127,.5);
- color: #FFF;
+ background: rgba(127, 127, 127, 0.5);
+ color: #fff;
display: block;
padding: 2px 4px;
border-radius: $fallback--tooltipRadius;
border-radius: var(--tooltipRadius, $fallback--tooltipRadius);
z-index: 2;
}
- }
- canvas {
- position: absolute;
- top: 0;
- bottom: 0;
- left: 0;
- right: 0;
- width: 100%;
- height: 100%;
- object-fit: contain;
+ &:hover canvas {
+ display: none;
+ }
+
+ &:hover::before,
+ img {
+ visibility: var(--still-image-img, hidden);
+ }
+
+ &:hover img {
+ visibility: visible;
+ }
}
}
</style>