1- import { DndContext , pointerWithin } from "@dnd-kit/core"
1+ import type { DragEndEvent } from "@dnd-kit/core"
2+ import { DndContext , PointerSensor , pointerWithin , useSensor , useSensors } from "@dnd-kit/core"
23import { useViewport } from "@follow/components/hooks/useViewport.js"
34import { PanelSplitter } from "@follow/components/ui/divider/index.js"
45import { RootPortal } from "@follow/components/ui/portal/index.jsx"
@@ -105,9 +106,32 @@ export function Component() {
105106 const { data : remoteSettings , isLoading } = useAuthQuery ( settings . get ( ) , { } )
106107 const isNewUser = ! isLoading && remoteSettings && Object . keys ( remoteSettings . updated ) . length === 0
107108
109+ const sensors = useSensors (
110+ useSensor ( PointerSensor , {
111+ activationConstraint : {
112+ distance : 8 ,
113+ } ,
114+ } ) ,
115+ )
108116 const [ selectedIds , setSelectedIds ] = useSelectedFeedIds ( )
109-
110117 const { mutate } = useBatchUpdateSubscription ( )
118+ const handleDragEnd = React . useCallback (
119+ ( event : DragEndEvent ) => {
120+ if ( ! event . over ) {
121+ return
122+ }
123+
124+ const { category, view } = event . over . data . current as {
125+ category : string
126+ view : FeedViewType
127+ }
128+
129+ mutate ( { category, view, feedIdList : selectedIds } )
130+
131+ setSelectedIds ( [ ] )
132+ } ,
133+ [ mutate , selectedIds , setSelectedIds ] ,
134+ )
111135
112136 if ( isNotSupportWidth ) {
113137 return < NotSupport />
@@ -123,21 +147,9 @@ export function Component() {
123147 < AppLayoutGridContainerProvider >
124148 < FeedResponsiveResizerContainer containerRef = { containerRef } >
125149 < DndContext
150+ sensors = { sensors }
126151 collisionDetection = { pointerWithin }
127- onDragEnd = { ( event ) => {
128- if ( ! event . over ) {
129- return
130- }
131-
132- const { category, view } = event . over . data . current as {
133- category : string
134- view : FeedViewType
135- }
136-
137- mutate ( { category, view, feedIdList : selectedIds } )
138-
139- setSelectedIds ( [ ] )
140- } }
152+ onDragEnd = { handleDragEnd }
141153 >
142154 < FeedColumn >
143155 < CornerPlayer />
0 commit comments