Skip to content

Commit 2bd0d45

Browse files
committed
fix: The create shape functionality fix for mobile
1 parent 48c8d1a commit 2bd0d45

2 files changed

Lines changed: 42 additions & 8 deletions

File tree

components/core/CreateShape.js

Lines changed: 22 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -88,8 +88,6 @@ const CreateShape = (props) => {
8888
// Changes shapeInformation when something in ShapeForm or ShapePreview is altered
8989
const handleChange = (event, data, number) => {
9090

91-
// console.log(event, data);
92-
9391
const name = event.target.name || event.type;
9492
const value = event.target.type === "checkbox" ? event.target.checked : event.target.value;
9593

@@ -131,7 +129,25 @@ const CreateShape = (props) => {
131129
...shapeInformation,
132130
"formula": "polygon(10% 10%, 90% 10%, 90% 90%, 10% 80%)",
133131
"vertices": 4,
134-
"edges": 4,
132+
"edges": 4,
133+
"verticeCoordinates" : [
134+
{
135+
"x": "10%",
136+
"y": "10%",
137+
},
138+
{
139+
"x": "90%",
140+
"y": "10%",
141+
},
142+
{
143+
"x": "90%",
144+
"y": "90%",
145+
},
146+
{
147+
"x": "10%",
148+
"y": "80%",
149+
},
150+
]
135151
});
136152
}
137153

@@ -163,7 +179,7 @@ const CreateShape = (props) => {
163179
}
164180

165181
// If DraggableVertice is moved, adjust verticeCoordinates and formula
166-
if (name === "mousemove") {
182+
if (name === "mousemove" || name === "touchmove") {
167183

168184
const newVerticeCoordinates = addNewVerticeCoordinates(data.x, data.y, number);
169185
const newFormula = generateNewFormula(newVerticeCoordinates);
@@ -193,7 +209,8 @@ const CreateShape = (props) => {
193209
}
194210

195211
// If delete button is pressed and passes a number that corresponds to the vertice, remove the corresponding verticeCoordinate and adjust formula
196-
if (event.target.id.includes("deleteButton") && number !== undefined) {
212+
if ((event.target.id.includes("deleteButton")
213+
|| event.target.parentElement.id.includes("deleteButton")) && number !== undefined) {
197214

198215
let newVerticeCoordinates = [];
199216

components/utils/DraggableVertice.js

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,9 @@ import React, { useRef } from "react";
33
// react-draggable npm
44
import Draggable from "react-draggable";
55

6+
// icon
7+
import { FiDelete } from "react-icons/fi";
8+
69
// Styled Component
710
import styled from "styled-components";
811

@@ -56,14 +59,28 @@ const DraggableVertice = (props) => {
5659
} else {
5760
props.setFocusNumber(-1);
5861
}
59-
}}
62+
}}
63+
onTouchStart={() => {
64+
if (show === false) {
65+
props.setFocusNumber(props.number);
66+
} else {
67+
props.setFocusNumber(-1);
68+
}
69+
}}
6070
ref={target}
6171
/>
6272
</Draggable>
6373

64-
<Overlay target={target.current} show={show} placement="right">
74+
<Overlay target={target.current}
75+
show={show}
76+
placement={x > 250 ? "left" : "right"}>
6577
<Tooltip>
66-
<span id={"deleteButton" + props.number} onMouseUp={handleDelete} style={{ cursor: "pointer" }}>X</span>
78+
<FiDelete
79+
size="24px"
80+
id={"deleteButton" + props.number}
81+
onMouseUp={handleDelete}
82+
style={{ cursor: "pointer" }}
83+
/>
6784
</Tooltip>
6885
</Overlay>
6986
</>

0 commit comments

Comments
 (0)