Skip to content

Commit df34297

Browse files
committed
fix tasks
1 parent f2346c4 commit df34297

1 file changed

Lines changed: 14 additions & 9 deletions

File tree

  • src/frontend/src/pages/ProjectDetailPage/ProjectViewContainer/TaskList/v2

src/frontend/src/pages/ProjectDetailPage/ProjectViewContainer/TaskList/v2/TaskColumn.tsx

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { Droppable } from '@hello-pangea/dnd';
22
import { Box, Typography, useTheme } from '@mui/material';
3-
import { useState } from 'react';
3+
import { useEffect, useRef, useState } from 'react';
44
import { Project, Task, TaskStatus, TaskWithIndex } from 'shared';
55
import { statusNames, TaskCard } from '.';
66
import { NERButton } from '../../../../../components/NERButton';
@@ -34,6 +34,17 @@ export const TaskColumn = ({
3434
const [showCreateTaskModal, setShowCreateTaskModal] = useState(false);
3535
const toast = useToast();
3636
const theme = useTheme();
37+
const droppableBoxRef = useRef<HTMLElement | null>(null);
38+
39+
useEffect(() => {
40+
const box = droppableBoxRef.current;
41+
if (!box) return;
42+
const observer = new ResizeObserver(() => {
43+
onHeightChange(status, box.scrollHeight);
44+
});
45+
observer.observe(box);
46+
return () => observer.disconnect();
47+
}, [status, onHeightChange]);
3748

3849
const handleCreateTask = async ({ notes, title, deadline, assignees, priority, startDate }: EditTaskFormInput) => {
3950
try {
@@ -96,14 +107,8 @@ export const TaskColumn = ({
96107
{(droppableProvided, snapshot) => (
97108
<Box
98109
ref={(droppableBox: HTMLElement | null) => {
99-
droppableProvided.innerRef(droppableBox); // give dnd lib access to dom node
100-
if (!droppableBox) return;
101-
102-
const observer = new ResizeObserver(() => {
103-
onHeightChange(status, droppableBox.scrollHeight);
104-
});
105-
observer.observe(droppableBox);
106-
return () => observer.disconnect();
110+
droppableProvided.innerRef(droppableBox);
111+
droppableBoxRef.current = droppableBox;
107112
}}
108113
{...droppableProvided.droppableProps}
109114
className={snapshot.isDraggingOver ? ' isDraggingOver' : ''}

0 commit comments

Comments
 (0)