Merge pull request #50446 from nextcloud/fix/unified-search-size

fix(unifiedsearch): Simplify and correct thumbnail styles
pull/47889/head
Ferdinand Thiessen 2025-01-27 18:41:20 +07:00 committed by GitHub
commit 58eb0b91e9
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 51 additions and 64 deletions

@ -3,18 +3,18 @@
- SPDX-License-Identifier: AGPL-3.0-or-later
-->
<template>
<NcListItem class="result-items__item"
<NcListItem class="result-item"
:name="title"
:bold="false"
:href="resourceUrl"
target="_self">
<template #icon>
<div aria-hidden="true"
class="result-items__item-icon"
class="result-item__icon"
:class="{
'result-items__item-icon--rounded': rounded,
'result-items__item-icon--no-preview': !isValidIconOrPreviewUrl(thumbnailUrl),
'result-items__item-icon--with-thumbnail': isValidIconOrPreviewUrl(thumbnailUrl),
'result-item__icon--rounded': rounded,
'result-item__icon--no-preview': !isValidIconOrPreviewUrl(thumbnailUrl),
'result-item__icon--with-thumbnail': isValidIconOrPreviewUrl(thumbnailUrl),
[icon]: !isValidIconOrPreviewUrl(icon),
}"
:style="{
@ -101,72 +101,59 @@ export default {
</script>
<style lang="scss" scoped>
@use "sass:math";
$clickable-area: 44px;
$margin: 10px;
.result-items {
&__item:deep {
a {
border: 2px solid transparent;
border-radius: var(--border-radius-large) !important;
&--focused {
background-color: var(--color-background-hover);
}
&:active,
&:hover,
&:focus {
background-color: var(--color-background-hover);
border: 2px solid var(--color-border-maxcontrast);
}
.result-item {
:deep(a) {
border: 2px solid transparent;
border-radius: var(--border-radius-large) !important;
&:active,
&:hover,
&:focus {
background-color: var(--color-background-hover);
border: 2px solid var(--color-border-maxcontrast);
}
* {
cursor: pointer;
}
* {
cursor: pointer;
}
}
&__icon {
overflow: hidden;
width: var(--default-clickable-area);
height: var(--default-clickable-area);
border-radius: var(--border-radius);
background-repeat: no-repeat;
background-position: center center;
background-size: 32px;
&--rounded {
border-radius: calc(var(--default-clickable-area) / 2);
}
&-icon {
overflow: hidden;
width: $clickable-area;
height: $clickable-area;
border-radius: var(--border-radius);
background-repeat: no-repeat;
background-position: center center;
&--no-preview {
background-size: 32px;
}
&--rounded {
border-radius: math.div($clickable-area, 2);
}
&--no-preview {
background-size: 32px;
}
&--with-thumbnail {
background-size: cover;
}
&--with-thumbnail {
background-size: cover;
}
&--with-thumbnail:not(&--rounded) {
// compensate for border
max-width: $clickable-area - 2px;
max-height: $clickable-area - 2px;
border: 1px solid var(--color-border);
}
&--with-thumbnail:not(#{&}--rounded) {
border: 1px solid var(--color-border);
// compensate for border
max-height: calc(var(--default-clickable-area) - 2px);
max-width: calc(var(--default-clickable-area) - 2px);
}
img {
// Make sure to keep ratio
width: 100%;
height: 100%;
img {
// Make sure to keep ratio
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
}
object-fit: cover;
object-position: center;
}
}
}
</style>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long