From 438ac0d1f82a95367b374b56f9c61a7a5802735c Mon Sep 17 00:00:00 2001 From: Ivan Chen Date: Tue, 25 May 2021 17:13:12 -0400 Subject: Squashed commit of the following: commit 7711d92c8dab4f00e36ad3bbca9bc202fa313e43 Author: Brian Kim Date: Tue May 25 17:08:41 2021 -0400 Integrate with layering commit cbd01996ae4784b737fb4b634eb0048bb7d85967 Author: Brian Kim Date: Tue May 25 16:48:52 2021 -0400 Fix yarn commit 39164064b903df36b7373e177d00c3307a8a311a Author: Brian Kim Date: Tue May 25 16:46:34 2021 -0400 Add horizontal scroll commit 02841df862aa68dcf615d0264236d9a14b52befe Author: Brian Kim Date: Tue May 25 15:03:13 2021 -0400 Lint fixes commit 5c6e8e453026005f6621efe751d90c76f457a72f Author: Brian Kim Date: Tue May 25 14:46:39 2021 -0400 Set boundaries, fix offset calculation, fix length and height calculation to be individual commit 6d27d859fd5364556928e5a2feadad1aff4dc6b9 Author: Brian Kim Date: Tue May 25 11:32:08 2021 -0400 Pause --- src/components/common/MomentTags.tsx | 71 ++++++++++++++++++++++++++++-------- 1 file changed, 55 insertions(+), 16 deletions(-) (limited to 'src/components/common') diff --git a/src/components/common/MomentTags.tsx b/src/components/common/MomentTags.tsx index 9a6cd08b..75a81814 100644 --- a/src/components/common/MomentTags.tsx +++ b/src/components/common/MomentTags.tsx @@ -17,27 +17,56 @@ const MomentTags: React.FC = ({ deleteFromList, }) => { const [offset, setOffset] = useState([0, 0]); - const [curStart, setCurStart] = useState([0, 0]); + const [curStart, setCurStart] = useState({}); const [imageDimensions, setImageDimensions] = useState([0, 0]); const [maxZIndex, setMaxZIndex] = useState(1); + const editCurStart = (idName: number, coords: number[]) => { + setCurStart((prev) => ({...prev, [idName]: coords})); + }; + useEffect(() => { - imageRef.current.measure((fx, fy, width, height, px, py) => { - setOffset([px, py]); - setImageDimensions([width, height]); - }); + setTimeout(() => { + imageRef.current.measure( + ( + fx: number, + fy: number, + width: number, + height: number, + _x: number, + _y: number, + ) => { + setOffset([fx, fy]); + setImageDimensions([width, height]); + }, + ); + }, 250); }, []); + useEffect(() => {}, [curStart]); + if (!tags) { return null; } return editing && deleteFromList ? ( <> - {tags.map((tag) => ( + {tags.map((tag, index) => ( = ({ { - deleteFromList(tag.user); - }} - setStart={setCurStart} + deleteFromList={() => deleteFromList(tag.user)} + setStart={(coords: number[]) => editCurStart(index, coords)} /> ))} ) : ( <> - {tags.map((tag) => ( + {tags.map((tag, index) => ( = ({ taggedUser={tag.user} editingView={editing} deleteFromList={() => null} - setStart={setCurStart} + setStart={(coords: number[]) => editCurStart(index, coords)} /> ))} -- cgit v1.2.3-70-g09d2