|
@@ -72,12 +72,16 @@ export const actionDeleteSelected = register({
|
|
|
if (!element) {
|
|
|
return false;
|
|
|
}
|
|
|
- if (
|
|
|
- // case: no point selected → delete whole element
|
|
|
- selectedPointsIndices == null ||
|
|
|
- // case: deleting last remaining point
|
|
|
- element.points.length < 2
|
|
|
- ) {
|
|
|
+ // case: no point selected → do nothing, as deleting the whole element
|
|
|
+ // is most likely a mistake, where you wanted to delete a specific point
|
|
|
+ // but failed to select it (or you thought it's selected, while it was
|
|
|
+ // only in a hover state)
|
|
|
+ if (selectedPointsIndices == null) {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+
|
|
|
+ // case: deleting last remaining point
|
|
|
+ if (element.points.length < 2) {
|
|
|
const nextElements = elements.map((el) => {
|
|
|
if (el.id === element.id) {
|
|
|
return newElementWith(el, { isDeleted: true });
|