Skip to content

Commit c73ab4b

Browse files
committed
crop buttons don't move past the other crop buttons
1 parent c106fd6 commit c73ab4b

File tree

1 file changed

+10
-10
lines changed

1 file changed

+10
-10
lines changed

packages/feedback/src/screenshot/components/ScreenshotEditor.tsx

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -123,29 +123,29 @@ export function makeScreenshotEditorComponent({ h, imageBuffer, dialog }: Factor
123123
case 'topleft':
124124
setCroppingRect(prev => ({
125125
...prev,
126-
startx: e.offsetX,
127-
starty: e.offsetY,
126+
startx: Math.min(e.offsetX, prev.endx - 30),
127+
starty: Math.min(e.offsetY, prev.endy - 30),
128128
}));
129129
break;
130130
case 'topright':
131131
setCroppingRect(prev => ({
132132
...prev,
133-
endx: e.offsetX,
134-
starty: e.offsetY,
133+
endx: Math.max(e.offsetX, prev.startx + 30),
134+
starty: Math.min(e.offsetY, prev.endy - 30),
135135
}));
136136
break;
137137
case 'bottomleft':
138138
setCroppingRect(prev => ({
139139
...prev,
140-
startx: e.offsetX,
141-
endy: e.offsetY,
140+
startx: Math.min(e.offsetX, prev.endx - 30),
141+
endy: Math.max(e.offsetY, prev.starty + 30),
142142
}));
143143
break;
144144
case 'bottomright':
145145
setCroppingRect(prev => ({
146146
...prev,
147-
endx: e.offsetX,
148-
endy: e.offsetY,
147+
endx: Math.max(e.offsetX, prev.startx + 30),
148+
endy: Math.max(e.offsetY, prev.starty + 30),
149149
}));
150150
break;
151151
}
@@ -258,8 +258,8 @@ export function makeScreenshotEditorComponent({ h, imageBuffer, dialog }: Factor
258258
<div
259259
style={{
260260
position: 'absolute',
261-
left: croppingRect.endx - 191,
262-
top: croppingRect.endy + 8,
261+
left: Math.max(0, croppingRect.endx - 191),
262+
top: Math.max(0, croppingRect.endy + 8),
263263
display: confirmCrop ? 'flex' : 'none',
264264
}}
265265
class="crop-btn-group"

0 commit comments

Comments
 (0)