From f5b9fcf0d1052510c30b56fb7b83b16a495c59f0 Mon Sep 17 00:00:00 2001 From: kuekhaoyang Date: Mon, 29 Dec 2025 11:34:48 +0800 Subject: [PATCH] feat: add mouse wheel horizontal scrolling to TagList and update package version --- components/home/TagList.tsx | 21 +++++++++++++++++++++ package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 24 insertions(+), 3 deletions(-) diff --git a/components/home/TagList.tsx b/components/home/TagList.tsx index 0209dca..f34ae89 100644 --- a/components/home/TagList.tsx +++ b/components/home/TagList.tsx @@ -65,6 +65,27 @@ export function TagList({ } }, [justAddedTag, onJustAddedTagHandled]); + // Handle horizontal scroll with mouse wheel + useEffect(() => { + const container = scrollContainerRef.current; + if (!container) return; + + const handleWheel = (e: WheelEvent) => { + // Check if it's a vertical scroll (mostly deltaY) and negligible horizontal scroll + if (e.deltaY !== 0 && Math.abs(e.deltaX) < Math.abs(e.deltaY)) { + e.preventDefault(); + container.scrollLeft += e.deltaY; + } + }; + + // Add passive: false to allow preventDefault + container.addEventListener('wheel', handleWheel, { passive: false }); + + return () => { + container.removeEventListener('wheel', handleWheel); + }; + }, []); + const handleDragStart = (event: DragStartEvent) => { setActiveId(event.active.id as string); }; diff --git a/package-lock.json b/package-lock.json index 64b005c..dd52b60 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "kvideo", - "version": "3.8.0", + "version": "3.8.4", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "kvideo", - "version": "3.8.0", + "version": "3.8.4", "dependencies": { "@dnd-kit/core": "^6.3.1", "@dnd-kit/sortable": "^10.0.0", diff --git a/package.json b/package.json index d1191d0..0736da2 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "kvideo", - "version": "3.8.0", + "version": "3.8.4", "private": true, "scripts": { "dev": "next dev",