Skip to content

Commit ae3db40

Browse files
committed
feat: round x,y on drag end
1 parent 2f3e059 commit ae3db40

3 files changed

Lines changed: 24 additions & 0 deletions

File tree

app/components/guide/Guide.tsx

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,14 @@ class GuideView extends React.Component<IGuide & IProps, IState> {
6262
setPositionInDOM(el, this.state.x, this.state.y);
6363

6464
interactjs(el).draggable({
65+
onend: ({ target }) => {
66+
const x = parseInt(target.getAttribute('data-x'), 10);
67+
const y = parseInt(target.getAttribute('data-y'), 10);
68+
69+
setPositionInDOM(el, x, y);
70+
71+
this.setState(move(x, y));
72+
},
6573
onmove: ({ dx, dy, target }) => {
6674
if (this.props.locked) {
6775
return;

app/components/onionImage/OnionImage.tsx

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,14 @@ class OnionImageView extends React.Component<IOnionImage & IProps, IState> {
131131
el.addEventListener('mouseout', this.unbindKeys);
132132

133133
interactjs(el).draggable({
134+
onend: ({ target }) => {
135+
const x = parseInt(target.getAttribute('data-x'), 10);
136+
const y = parseInt(target.getAttribute('data-y'), 10);
137+
138+
setPositionInDOM(el, x, y);
139+
140+
this.setState(move(x, y));
141+
},
134142
onmove: ({ dx, dy, target }) => {
135143
if (this.props.locked) {
136144
return;

app/components/ruler/Ruler.tsx

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,14 @@ class RulerView extends React.Component<IRuler & IProps, IState> {
6666
setPositionInDOM(el, this.state.x, this.state.y);
6767

6868
interactjs(el).draggable({
69+
onend: ({ target }) => {
70+
const x = parseInt(target.getAttribute('data-x'), 10);
71+
const y = parseInt(target.getAttribute('data-y'), 10);
72+
73+
setPositionInDOM(el, x, y);
74+
75+
this.setState(move(x, y));
76+
},
6977
onmove: ({ dx, dy, target }) => {
7078
if (this.props.locked) {
7179
return;

0 commit comments

Comments
 (0)