fix(webui): remove pin/unpin from library action menu

Closes: #1887
This commit is contained in:
Gauthier Roebroeck 2025-03-05 14:14:55 +08:00
parent 23fa56e522
commit 278ae7a2b3
8 changed files with 22 additions and 52 deletions

View file

@ -26,29 +26,22 @@
v-bind="dragOptions"
handle=".handle"
>
<template v-for="(l, index) in localItems">
<v-hover :key="index"
v-slot="{ hover }"
:disabled="!l.unpinned"
>
<v-list-item>
<v-list-item-icon>
<v-icon class="handle">mdi-drag-horizontal-variant</v-icon>
</v-list-item-icon>
<v-list-item-content>
<v-list-item-title class="handle">{{ l.name }}</v-list-item-title>
</v-list-item-content>
<v-list-item-icon>
<v-btn icon v-if="!l.unpinned" @click.stop.capture.prevent="unpin(l.id)" x-small>
<v-icon>mdi-pin</v-icon>
</v-btn>
<v-btn icon v-if="hover && l.unpinned" @click.stop.capture.prevent="pin(l.id)" x-small>
<v-icon>mdi-pin-off</v-icon>
</v-btn>
</v-list-item-icon>
</v-list-item>
</v-hover>
</template>
<v-list-item v-for="l in localItems" :key="l.id">
<v-list-item-icon>
<v-icon class="handle">mdi-drag-horizontal-variant</v-icon>
</v-list-item-icon>
<v-list-item-content>
<v-list-item-title class="handle">{{ l.name }}</v-list-item-title>
</v-list-item-content>
<v-list-item-icon>
<v-btn icon v-if="!l.unpinned" @click.stop.capture.prevent="unpin(l.id)" x-small>
<v-icon>mdi-pin</v-icon>
</v-btn>
<v-btn icon v-if="l.unpinned" @click.stop.capture.prevent="pin(l.id)" x-small>
<v-icon>mdi-pin-off</v-icon>
</v-btn>
</v-list-item-icon>
</v-list-item>
</draggable>
</v-list>
</div>

View file

@ -7,12 +7,6 @@
</v-btn>
</template>
<v-list dense>
<v-list-item v-if="!library.unpinned" @click="unpin">
<v-list-item-title>{{ $t('menu.unpin') }}</v-list-item-title>
</v-list-item>
<v-list-item v-if="library.unpinned" @click="pin">
<v-list-item-title>{{ $t('menu.pin') }}</v-list-item-title>
</v-list-item>
<v-list-item @click="scan(false)" v-if="isAdmin">
<v-list-item-title>{{ $t('menu.scan_library_files') }}</v-list-item-title>
</v-list-item>
@ -69,7 +63,6 @@
import Vue from 'vue'
import ConfirmationDialog from '@/components/dialogs/ConfirmationDialog.vue'
import {LibraryDto} from '@/types/komga-libraries'
import {ClientSettingLibraryUpdate} from '@/types/komga-clientsettings'
export default Vue.extend({
name: 'LibraryActionsMenu',
@ -93,22 +86,6 @@ export default Vue.extend({
},
},
methods: {
unpin() {
this.$store.dispatch('updateLibrarySetting', {
libraryId: this.library.id,
patch: {
unpinned: true,
},
} as ClientSettingLibraryUpdate)
},
pin() {
this.$store.dispatch('updateLibrarySetting', {
libraryId: this.library.id,
patch: {
unpinned: false,
},
} as ClientSettingLibraryUpdate)
},
scan(scanDeep: boolean) {
this.$komgaLibraries.scanLibrary(this.library, scanDeep)
},

View file

@ -2,7 +2,7 @@
<div :style="$vuetify.breakpoint.xs ? 'margin-bottom: 56px' : undefined">
<toolbar-sticky v-if="selectedBooks.length === 0">
<!-- Action menu -->
<library-actions-menu v-if="library"
<library-actions-menu v-if="isAdmin && library"
:library="library"/>
<v-toolbar-title>

View file

@ -2,7 +2,7 @@
<div :style="$vuetify.breakpoint.xs ? 'margin-bottom: 56px' : undefined">
<toolbar-sticky v-if="selectedCollections.length === 0">
<!-- Action menu -->
<library-actions-menu v-if="library"
<library-actions-menu v-if="isAdmin && library"
:library="library"/>
<v-toolbar-title>

View file

@ -2,7 +2,7 @@
<div :style="$vuetify.breakpoint.xs ? 'margin-bottom: 56px' : undefined">
<toolbar-sticky v-if="selectedSeries.length === 0">
<!-- Action menu -->
<library-actions-menu v-if="library"
<library-actions-menu v-if="isAdmin && library"
:library="library"/>
<v-toolbar-title>

View file

@ -2,7 +2,7 @@
<div :style="$vuetify.breakpoint.xs ? 'margin-bottom: 56px' : undefined">
<toolbar-sticky v-if="selectedReadLists.length === 0">
<!-- Action menu -->
<library-actions-menu v-if="library"
<library-actions-menu v-if="isAdmin && library"
:library="library"/>
<v-toolbar-title>

View file

@ -2,7 +2,7 @@
<div :style="$vuetify.breakpoint.xs ? 'margin-bottom: 56px' : undefined">
<toolbar-sticky v-if="individualLibrary && selectedSeries.length === 0 && selectedBooks.length === 0">
<!-- Action menu -->
<library-actions-menu v-if="library"
<library-actions-menu v-if="isAdmin && library"
:library="library"/>
<v-toolbar-title>

View file

@ -100,7 +100,7 @@
>{{ $t('common.unavailable') }}
</v-list-item-subtitle>
</v-list-item-content>
<v-list-item-action class="ma-0">
<v-list-item-action class="ma-0" v-if="isAdmin">
<library-actions-menu :library="l"/>
</v-list-item-action>
</v-list-item>