diff options
author | Zero~Informatique | 2020-09-10 18:44:05 +0200 |
---|---|---|
committer | G.Fouet | 2020-09-11 21:53:18 +0200 |
commit | 6737bfd38a0568d61c691a507303a65550ae23fc (patch) | |
tree | d9e44d09c458a97fd2f5699b54374e9725e41301 /viewer/src/views/PanelLeft.vue | |
parent | 4c839e0f30fad9e5df29f1f0682380581c582713 (diff) | |
download | ldgallery-6737bfd38a0568d61c691a507303a65550ae23fc.tar.gz |
viewer: information panel scrollbar and collapse with animation
github: resolves #78
Diffstat (limited to 'viewer/src/views/PanelLeft.vue')
-rw-r--r-- | viewer/src/views/PanelLeft.vue | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/viewer/src/views/PanelLeft.vue b/viewer/src/views/PanelLeft.vue index f8d6faf..12c95d1 100644 --- a/viewer/src/views/PanelLeft.vue +++ b/viewer/src/views/PanelLeft.vue | |||
@@ -18,7 +18,7 @@ | |||
18 | --> | 18 | --> |
19 | 19 | ||
20 | <template> | 20 | <template> |
21 | <div class="flex-column sidebar"> | 21 | <div class="flex-column" :class="$style.sidebar"> |
22 | <ld-tag-input | 22 | <ld-tag-input |
23 | :search-filters.sync="searchFilters" | 23 | :search-filters.sync="searchFilters" |
24 | :tags-index="$galleryStore.tagsIndex" | 24 | :tags-index="$galleryStore.tagsIndex" |
@@ -26,7 +26,7 @@ | |||
26 | /> | 26 | /> |
27 | <ld-command-search @clear="clear" @search="search" /> | 27 | <ld-command-search @clear="clear" @search="search" /> |
28 | <h1 class="title">{{ $t("panelLeft.propositions") }}</h1> | 28 | <h1 class="title">{{ $t("panelLeft.propositions") }}</h1> |
29 | <div class="scrollbar no-scroll-x flex-grow-1"> | 29 | <div class="scrollbar no-scroll-x flex-grow-1" :class="$style.flexShrink1000"> |
30 | <ld-proposition | 30 | <ld-proposition |
31 | v-for="category in $galleryStore.tagsCategories" | 31 | v-for="category in $galleryStore.tagsCategories" |
32 | :key="category.tag" | 32 | :key="category.tag" |
@@ -37,13 +37,13 @@ | |||
37 | :current-tags="currentTags" | 37 | :current-tags="currentTags" |
38 | /> | 38 | /> |
39 | </div> | 39 | </div> |
40 | <b-collapse animation="slide" :open.sync="infoOpen"> | 40 | <h1 class="flex title" @click="infoOpen = !infoOpen"> |
41 | <h1 slot="trigger" class="flex title"> | 41 | {{ $t("panelLeft.information.title") }} |
42 | {{ $t("panelLeft.information.title") }} | 42 | <fa-icon :icon="infoOpen ? 'caret-down' : 'caret-up'" /> |
43 | <fa-icon :icon="infoOpen ? 'caret-down' : 'caret-up'" /> | 43 | </h1> |
44 | </h1> | 44 | <transition name="flex-expand"> |
45 | <ld-information :item="$galleryStore.currentItem" /> | 45 | <ld-information v-show="infoOpen" :item="$galleryStore.currentItem" class="scrollbar no-scroll-x" /> |
46 | </b-collapse> | 46 | </transition> |
47 | </div> | 47 | </div> |
48 | </template> | 48 | </template> |
49 | 49 | ||
@@ -92,11 +92,11 @@ export default class PanelLeft extends Vue { | |||
92 | } | 92 | } |
93 | </script> | 93 | </script> |
94 | 94 | ||
95 | <style lang="scss"> | 95 | <style lang="scss" module> |
96 | @import "~@/assets/scss/theme.scss"; | 96 | @import "~@/assets/scss/theme.scss"; |
97 | 97 | ||
98 | .sidebar { | 98 | .sidebar { |
99 | .title { | 99 | :global(.title) { |
100 | background-color: $proposed-category-bgcolor; | 100 | background-color: $proposed-category-bgcolor; |
101 | padding: 0.2em 0.5em; | 101 | padding: 0.2em 0.5em; |
102 | margin: 0 0 1px 0; | 102 | margin: 0 0 1px 0; |
@@ -109,4 +109,8 @@ export default class PanelLeft extends Vue { | |||
109 | } | 109 | } |
110 | } | 110 | } |
111 | } | 111 | } |
112 | |||
113 | .flexShrink1000 { | ||
114 | flex-shrink: 1000; | ||
115 | } | ||
112 | </style> | 116 | </style> |