File tree 2 files changed +31
-5
lines changed
2 files changed +31
-5
lines changed Original file line number Diff line number Diff line change @@ -16,17 +16,33 @@ const collect = (connect, monitor) => {
16
16
return {
17
17
connectDropTarget : connect . dropTarget ( ) ,
18
18
isOver : monitor . isOver ( ) ,
19
- canDrop : monitor . canDrop ( ) ,
19
+ sourceOffset : monitor . getSourceClientOffset ( ) ,
20
20
} ;
21
21
} ;
22
22
23
23
const BinTouch = props => {
24
- const { connectDropTarget, name, correctBin, wrongBin } = props ;
24
+ const {
25
+ connectDropTarget,
26
+ name,
27
+ correctBin,
28
+ wrongBin,
29
+ sourceOffset,
30
+ } = props ;
31
+
32
+ const getLayerStyles = ( ) => {
33
+ return {
34
+ transform : sourceOffset ? `translate(${ - 0 } px, ${ - 0 } px)` : "" ,
35
+ } ;
36
+ } ;
37
+
38
+ const transform = getLayerStyles ( ) ;
25
39
26
40
return connectDropTarget (
27
41
< div >
28
42
< StyledBin
43
+ style = { transform }
29
44
src = { name === "recyclingBin" ? RecyclingBin : TrashBin }
45
+ alt = { name === "recyclingBin" ? "Recycling Bin" : "Trash Bin" }
30
46
name = { name }
31
47
correctBin = { correctBin }
32
48
wrongBin = { wrongBin }
Original file line number Diff line number Diff line change @@ -11,12 +11,22 @@ const collect = monitor => {
11
11
} ;
12
12
13
13
const DragPreview = props => {
14
- const getLayerStyles = ( ) => {
15
- const { sourceOffset } = props ;
14
+ const [ dragStart , setDragStart ] = React . useState ( 0 ) ;
15
+ const { sourceOffset } = props ;
16
+
17
+ React . useEffect ( ( ) => {
18
+ if ( dragStart === 0 && sourceOffset !== null ) {
19
+ setDragStart ( sourceOffset ) ;
20
+ } else if ( sourceOffset === null ) {
21
+ setDragStart ( 0 ) ;
22
+ }
23
+ } , [ sourceOffset , dragStart ] ) ;
16
24
25
+ const getLayerStyles = ( ) => {
17
26
return {
18
27
transform : sourceOffset
19
- ? `translate(${ sourceOffset . x } px, ${ sourceOffset . y } px)`
28
+ ? `translate(${ sourceOffset . x -
29
+ dragStart . x } px, ${ sourceOffset . y - dragStart . y } px)`
20
30
: "" ,
21
31
} ;
22
32
} ;
You can’t perform that action at this time.
0 commit comments