diff --git a/src/components/utilities/assetManager/AssetManager.vue b/src/components/utilities/assetManager/AssetManager.vue index b7764cc..897a05b 100644 --- a/src/components/utilities/assetManager/AssetManager.vue +++ b/src/components/utilities/assetManager/AssetManager.vue @@ -38,15 +38,12 @@
-
+
-
@@ -68,24 +65,4 @@ import { useAssetManagerStore } from '@/stores/assetManager' const assetManagerStore = useAssetManagerStore() const selectedCategory = ref('tiles') -const hasScrolled = ref(false) -const elementToScroll = ref() - -const onScroll = (e: Event) => { - let scrollTop = (e.target as HTMLBodyElement).scrollTop - - if (scrollTop > 200) { - hasScrolled.value = true - } else if (scrollTop <= 200) { - hasScrolled.value = false - } -} - -function toTop() { - elementToScroll.value.scrollTo({ - top: 0, - left: 0, - behavior: 'smooth' - }) -} diff --git a/src/components/utilities/assetManager/partials/TileList.vue b/src/components/utilities/assetManager/partials/TileList.vue index 91ae4b3..65ec03c 100644 --- a/src/components/utilities/assetManager/partials/TileList.vue +++ b/src/components/utilities/assetManager/partials/TileList.vue @@ -7,8 +7,8 @@
-
-
+
+
+
@@ -44,6 +47,9 @@ const assetStore = useAssetStore() const searchQuery = ref('') +const hasScrolled = ref(false) +const elementToScroll = ref() + const handleFileUpload = (e: Event) => { const files = (e.target as HTMLInputElement).files if (!files) return @@ -78,12 +84,26 @@ const filteredTiles = computed(() => { const { list, containerProps, wrapperProps, scrollTo } = useVirtualList( filteredTiles, { - itemHeight: 28, + itemHeight: 48, }, ) const virtualList = ref({ scrollTo }) +const onScroll = () => { + let scrollTop = elementToScroll.value.style.marginTop.replace('px', ''); + + if (scrollTop > 80) { + hasScrolled.value = true + } else if (scrollTop <= 80) { + hasScrolled.value = false + } +} + +function toTop() { + virtualList.value?.scrollTo(0) +} + onMounted(() => { gameStore.connection?.emit('gm:tile:list', {}, (response: Tile[]) => { assetManagerStore.setTileList(response)