diff --git a/src/actions/actionCanvas.tsx b/src/actions/actionCanvas.tsx index ae3baf57..dacdce0c 100644 --- a/src/actions/actionCanvas.tsx +++ b/src/actions/actionCanvas.tsx @@ -304,12 +304,13 @@ export const actionErase = register({ commitToHistory: true, }; }, + keyTest: (event) => event.key === KEYS.E, PanelComponent: ({ elements, appState, updateData, data }) => ( { updateData(null); diff --git a/src/components/HelpDialog.tsx b/src/components/HelpDialog.tsx index a03c4799..66e90d55 100644 --- a/src/components/HelpDialog.tsx +++ b/src/components/HelpDialog.tsx @@ -139,7 +139,7 @@ export const HelpDialog = ({ onClose }: { onClose?: () => void }) => {
- + void }) => { shortcuts={["R", "2"]} /> - + void }) => { + ), value: "ellipse", - key: KEYS.E, + key: KEYS.O, }, { icon: ( diff --git a/src/tests/__snapshots__/regressionTests.test.tsx.snap b/src/tests/__snapshots__/regressionTests.test.tsx.snap index 47cbed64..c719ccb5 100644 --- a/src/tests/__snapshots__/regressionTests.test.tsx.snap +++ b/src/tests/__snapshots__/regressionTests.test.tsx.snap @@ -11510,177 +11510,6 @@ exports[`regression tests key d selects diamond tool: [end of test] number of el exports[`regression tests key d selects diamond tool: [end of test] number of renders 1`] = `8`; -exports[`regression tests key e selects ellipse tool: [end of test] appState 1`] = ` -Object { - "collaborators": Map {}, - "currentChartType": "bar", - "currentItemBackgroundColor": "transparent", - "currentItemEndArrowhead": "arrow", - "currentItemFillStyle": "hachure", - "currentItemFontFamily": 1, - "currentItemFontSize": 20, - "currentItemLinearStrokeSharpness": "round", - "currentItemOpacity": 100, - "currentItemRoughness": 1, - "currentItemStartArrowhead": null, - "currentItemStrokeColor": "#000000", - "currentItemStrokeSharpness": "sharp", - "currentItemStrokeStyle": "solid", - "currentItemStrokeWidth": 1, - "currentItemTextAlign": "left", - "cursorButton": "up", - "draggingElement": null, - "editingElement": null, - "editingGroupId": null, - "editingLinearElement": null, - "elementLocked": false, - "elementType": "selection", - "errorMessage": null, - "exportBackground": true, - "exportEmbedScene": false, - "exportScale": 1, - "exportWithDarkMode": false, - "fileHandle": null, - "gridSize": null, - "height": 768, - "isBindingEnabled": true, - "isLibraryOpen": false, - "isLoading": false, - "isResizing": false, - "isRotating": false, - "lastPointerDownWith": "mouse", - "multiElement": null, - "name": "Untitled-201933152653", - "offsetLeft": 0, - "offsetTop": 0, - "openMenu": null, - "openPopup": null, - "pasteDialog": Object { - "data": null, - "shown": false, - }, - "penDetected": false, - "penMode": false, - "pendingImageElement": null, - "previousSelectedElementIds": Object {}, - "resizingElement": null, - "scrollX": 0, - "scrollY": 0, - "scrolledOutside": false, - "selectedElementIds": Object { - "id0": true, - }, - "selectedGroupIds": Object {}, - "selectionElement": null, - "shouldCacheIgnoreZoom": false, - "showHelpDialog": false, - "showHyperlinkPopup": false, - "showStats": false, - "startBoundElement": null, - "suggestedBindings": Array [], - "theme": "light", - "toastMessage": null, - "viewBackgroundColor": "#ffffff", - "viewModeEnabled": false, - "width": 1024, - "zenModeEnabled": false, - "zoom": Object { - "value": 1, - }, -} -`; - -exports[`regression tests key e selects ellipse tool: [end of test] element 0 1`] = ` -Object { - "angle": 0, - "backgroundColor": "transparent", - "boundElements": null, - "fillStyle": "hachure", - "groupIds": Array [], - "height": 10, - "id": "id0", - "isDeleted": false, - "link": null, - "opacity": 100, - "roughness": 1, - "seed": 337897, - "strokeColor": "#000000", - "strokeSharpness": "sharp", - "strokeStyle": "solid", - "strokeWidth": 1, - "type": "ellipse", - "updated": 1, - "version": 2, - "versionNonce": 1278240551, - "width": 10, - "x": 10, - "y": 10, -} -`; - -exports[`regression tests key e selects ellipse tool: [end of test] history 1`] = ` -Object { - "recording": false, - "redoStack": Array [], - "stateHistory": Array [ - Object { - "appState": Object { - "editingGroupId": null, - "editingLinearElement": null, - "name": "Untitled-201933152653", - "selectedElementIds": Object {}, - "selectedGroupIds": Object {}, - "viewBackgroundColor": "#ffffff", - }, - "elements": Array [], - }, - Object { - "appState": Object { - "editingGroupId": null, - "editingLinearElement": null, - "name": "Untitled-201933152653", - "selectedElementIds": Object { - "id0": true, - }, - "selectedGroupIds": Object {}, - "viewBackgroundColor": "#ffffff", - }, - "elements": Array [ - Object { - "angle": 0, - "backgroundColor": "transparent", - "boundElements": null, - "fillStyle": "hachure", - "groupIds": Array [], - "height": 10, - "id": "id0", - "isDeleted": false, - "link": null, - "opacity": 100, - "roughness": 1, - "seed": 337897, - "strokeColor": "#000000", - "strokeSharpness": "sharp", - "strokeStyle": "solid", - "strokeWidth": 1, - "type": "ellipse", - "updated": 1, - "version": 2, - "versionNonce": 1278240551, - "width": 10, - "x": 10, - "y": 10, - }, - ], - }, - ], -} -`; - -exports[`regression tests key e selects ellipse tool: [end of test] number of elements 1`] = `1`; - -exports[`regression tests key e selects ellipse tool: [end of test] number of renders 1`] = `8`; - exports[`regression tests key l selects line tool: [end of test] appState 1`] = ` Object { "collaborators": Map {}, @@ -11882,6 +11711,177 @@ exports[`regression tests key l selects line tool: [end of test] number of eleme exports[`regression tests key l selects line tool: [end of test] number of renders 1`] = `8`; +exports[`regression tests key o selects ellipse tool: [end of test] appState 1`] = ` +Object { + "collaborators": Map {}, + "currentChartType": "bar", + "currentItemBackgroundColor": "transparent", + "currentItemEndArrowhead": "arrow", + "currentItemFillStyle": "hachure", + "currentItemFontFamily": 1, + "currentItemFontSize": 20, + "currentItemLinearStrokeSharpness": "round", + "currentItemOpacity": 100, + "currentItemRoughness": 1, + "currentItemStartArrowhead": null, + "currentItemStrokeColor": "#000000", + "currentItemStrokeSharpness": "sharp", + "currentItemStrokeStyle": "solid", + "currentItemStrokeWidth": 1, + "currentItemTextAlign": "left", + "cursorButton": "up", + "draggingElement": null, + "editingElement": null, + "editingGroupId": null, + "editingLinearElement": null, + "elementLocked": false, + "elementType": "selection", + "errorMessage": null, + "exportBackground": true, + "exportEmbedScene": false, + "exportScale": 1, + "exportWithDarkMode": false, + "fileHandle": null, + "gridSize": null, + "height": 768, + "isBindingEnabled": true, + "isLibraryOpen": false, + "isLoading": false, + "isResizing": false, + "isRotating": false, + "lastPointerDownWith": "mouse", + "multiElement": null, + "name": "Untitled-201933152653", + "offsetLeft": 0, + "offsetTop": 0, + "openMenu": null, + "openPopup": null, + "pasteDialog": Object { + "data": null, + "shown": false, + }, + "penDetected": false, + "penMode": false, + "pendingImageElement": null, + "previousSelectedElementIds": Object {}, + "resizingElement": null, + "scrollX": 0, + "scrollY": 0, + "scrolledOutside": false, + "selectedElementIds": Object { + "id0": true, + }, + "selectedGroupIds": Object {}, + "selectionElement": null, + "shouldCacheIgnoreZoom": false, + "showHelpDialog": false, + "showHyperlinkPopup": false, + "showStats": false, + "startBoundElement": null, + "suggestedBindings": Array [], + "theme": "light", + "toastMessage": null, + "viewBackgroundColor": "#ffffff", + "viewModeEnabled": false, + "width": 1024, + "zenModeEnabled": false, + "zoom": Object { + "value": 1, + }, +} +`; + +exports[`regression tests key o selects ellipse tool: [end of test] element 0 1`] = ` +Object { + "angle": 0, + "backgroundColor": "transparent", + "boundElements": null, + "fillStyle": "hachure", + "groupIds": Array [], + "height": 10, + "id": "id0", + "isDeleted": false, + "link": null, + "opacity": 100, + "roughness": 1, + "seed": 337897, + "strokeColor": "#000000", + "strokeSharpness": "sharp", + "strokeStyle": "solid", + "strokeWidth": 1, + "type": "ellipse", + "updated": 1, + "version": 2, + "versionNonce": 1278240551, + "width": 10, + "x": 10, + "y": 10, +} +`; + +exports[`regression tests key o selects ellipse tool: [end of test] history 1`] = ` +Object { + "recording": false, + "redoStack": Array [], + "stateHistory": Array [ + Object { + "appState": Object { + "editingGroupId": null, + "editingLinearElement": null, + "name": "Untitled-201933152653", + "selectedElementIds": Object {}, + "selectedGroupIds": Object {}, + "viewBackgroundColor": "#ffffff", + }, + "elements": Array [], + }, + Object { + "appState": Object { + "editingGroupId": null, + "editingLinearElement": null, + "name": "Untitled-201933152653", + "selectedElementIds": Object { + "id0": true, + }, + "selectedGroupIds": Object {}, + "viewBackgroundColor": "#ffffff", + }, + "elements": Array [ + Object { + "angle": 0, + "backgroundColor": "transparent", + "boundElements": null, + "fillStyle": "hachure", + "groupIds": Array [], + "height": 10, + "id": "id0", + "isDeleted": false, + "link": null, + "opacity": 100, + "roughness": 1, + "seed": 337897, + "strokeColor": "#000000", + "strokeSharpness": "sharp", + "strokeStyle": "solid", + "strokeWidth": 1, + "type": "ellipse", + "updated": 1, + "version": 2, + "versionNonce": 1278240551, + "width": 10, + "x": 10, + "y": 10, + }, + ], + }, + ], +} +`; + +exports[`regression tests key o selects ellipse tool: [end of test] number of elements 1`] = `1`; + +exports[`regression tests key o selects ellipse tool: [end of test] number of renders 1`] = `8`; + exports[`regression tests key r selects rectangle tool: [end of test] appState 1`] = ` Object { "collaborators": Map {}, diff --git a/src/tests/regressionTests.test.tsx b/src/tests/regressionTests.test.tsx index 1cc9571c..bd768e67 100644 --- a/src/tests/regressionTests.test.tsx +++ b/src/tests/regressionTests.test.tsx @@ -135,7 +135,7 @@ describe("regression tests", () => { for (const [keys, shape, shouldSelect] of [ [`2${KEYS.R}`, "rectangle", true], [`3${KEYS.D}`, "diamond", true], - [`4${KEYS.E}`, "ellipse", true], + [`4${KEYS.O}`, "ellipse", true], [`5${KEYS.A}`, "arrow", true], [`6${KEYS.L}`, "line", true], [`7${KEYS.X}`, "freedraw", false],