From 1f6319b6517e800b1779bbcf19725d8fe83b9c5c Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Mon, 8 Jun 2026 17:35:08 +0200 Subject: [PATCH] Room list: add fade effect to room list item being dragged (#33696) * feat: tweak opacity of dragged room in room list * feat: put test as primary when room item is dragged * test: update screenshots --- .../default-auto.png | Bin 21562 -> 21578 bytes .../RoomListItemView.module.css | 7 ++++++- .../RoomListItemView/RoomListItemView.tsx | 4 ++++ .../RoomListItemWrapper.tsx | 8 ++++++-- 4 files changed, 16 insertions(+), 3 deletions(-) diff --git a/packages/shared-components/__vis__/linux/__baselines__/room-list/VirtualizedRoomListView/RoomListItemDragOverlayView/RoomListItemDragOverlayView.stories.tsx/default-auto.png b/packages/shared-components/__vis__/linux/__baselines__/room-list/VirtualizedRoomListView/RoomListItemDragOverlayView/RoomListItemDragOverlayView.stories.tsx/default-auto.png index c65679e47f34be901467a76bd613cdd2fb212055..2e5d6c7a1a583907353cee70eee9f22e9ea1ab8f 100644 GIT binary patch literal 21578 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%0AsuhY1nQ~7t1 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 b=S4V^a(9#CNg7!&f;+I!Xm7%9o6G+LLMo{N literal 21562 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 ReactNode; + /** Whether this item is the source of an active drag operation */ + isDragSource?: boolean; ref?: Ref; } @@ -165,6 +167,7 @@ export const RoomListItemView = memo(function RoomListItemView({ isFirstItem, isLastItem, renderAvatar, + isDragSource = false, ref, ...props }: RoomListItemViewProps): JSX.Element { @@ -191,6 +194,7 @@ export const RoomListItemView = memo(function RoomListItemView({ [styles.bold]: item.isBold, [styles.firstItem]: isFirstItem, [styles.lastItem]: isLastItem, + [styles.dragSource]: isDragSource, mx_RoomListItemView_selected: isSelected, })} gap="var(--cpd-space-3x)" diff --git a/packages/shared-components/src/room-list/VirtualizedRoomListView/RoomListItemWrapper/RoomListItemWrapper.tsx b/packages/shared-components/src/room-list/VirtualizedRoomListView/RoomListItemWrapper/RoomListItemWrapper.tsx index c19209d574..0f45809320 100644 --- a/packages/shared-components/src/room-list/VirtualizedRoomListView/RoomListItemWrapper/RoomListItemWrapper.tsx +++ b/packages/shared-components/src/room-list/VirtualizedRoomListView/RoomListItemWrapper/RoomListItemWrapper.tsx @@ -55,12 +55,16 @@ export const RoomListItemWrapper = memo(function RoomListItemWrapper({ */ function DraggableWrapper(props: RoomListItemViewProps): JSX.Element { const item = useViewModel(props.vm); - const { ref: draggableRef, handleRef } = useDraggable({ + const { + ref: draggableRef, + handleRef, + isDragSource, + } = useDraggable({ id: item.id, // We clone the item in the dnd overlay to avoid putting a hole in the list plugins: [Feedback.configure({ feedback: "clone" })], modifiers: [RestrictToVerticalAxis], }); const dndRef = useMergeRefs([draggableRef, handleRef]); - return ; + return ; }