Better fav button in queue item

This commit is contained in:
wvffle 2022-07-24 21:54:01 +00:00 committed by Georg Krause
parent 3436c5b985
commit f470e0649e
5 changed files with 14 additions and 9 deletions

View File

@ -130,7 +130,8 @@ const queueItems = computed(() => tracks.value.map((track, index) => ({
coverUrl: getCover(track), coverUrl: getCover(track),
labels: { labels: {
remove: $pgettext('*/*/*', 'Remove'), remove: $pgettext('*/*/*', 'Remove'),
selectTrack: $pgettext('*/*/*', 'Select track') selectTrack: $pgettext('*/*/*', 'Select track'),
favorite: $pgettext('*/*/*', 'Favorite track')
}, },
duration: time.durationFormatted(track.uploads[0]?.duration ?? 0) ?? '' duration: time.durationFormatted(track.uploads[0]?.duration ?? 0) ?? ''
}) as QueueItemSource)) }) as QueueItemSource))

View File

@ -53,11 +53,17 @@ defineEmits<Emits>()
</template> </template>
</div> </div>
<div class="controls"> <div class="controls">
<i <button
:class="$store.getters['favorites/isFavorite'](source.track.id) ? 'pink' : ''" :aria-label="source.labels.favorite"
class="heart icon" :title="source.labels.favorite"
class="ui really basic circular icon button"
@click.stop="$store.dispatch('favorites/toggle', source.track.id)" @click.stop="$store.dispatch('favorites/toggle', source.track.id)"
/> >
<i
:class="$store.getters['favorites/isFavorite'](source.track.id) ? 'pink' : ''"
class="heart icon"
/>
</button>
<button <button
:aria-label="source.labels.remove" :aria-label="source.labels.remove"
:title="source.labels.remove" :title="source.labels.remove"

View File

@ -220,9 +220,8 @@
} }
.position.control { .position.control {
padding-right: 1em;
flex-grow: 1; flex-grow: 1;
padding-left: 0;
i.stream.icon { i.stream.icon {
position: relative; position: relative;
top: -2px; top: -2px;

View File

@ -322,8 +322,6 @@
padding: 0 0.875rem; padding: 0 0.875rem;
.heart { .heart {
margin-right: 1rem;
&:not(.pink) { &:not(.pink) {
color: rgba(0, 0, 0, 0.2) color: rgba(0, 0, 0, 0.2)
} }

View File

@ -28,6 +28,7 @@ export interface QueueItemSource {
labels: { labels: {
remove: string remove: string
selectTrack: string selectTrack: string
favorite: string
} }
} }