From bc91df05fc9bec51ee2b82f959628dbc0ff2e6c7 Mon Sep 17 00:00:00 2001 From: Igor Zinken Date: Fri, 22 Jan 2021 11:17:13 +0100 Subject: [PATCH] Text layers added by keyboard shortcut are now also added into state history --- src/services/keyboard-service.js | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/services/keyboard-service.js b/src/services/keyboard-service.js index da989f5..5897e9d 100644 --- a/src/services/keyboard-service.js +++ b/src/services/keyboard-service.js @@ -26,6 +26,7 @@ import { CREATE_DOCUMENT, ADD_LAYER, EXPORT_DOCUMENT, DROPBOX_FILE_SELECTOR, SAVE_DROPBOX_DOCUMENT } from "@/definitions/modal-windows"; import { getCanvasInstance, getSpriteForLayer } from "@/factories/sprite-factory"; +import { enqueueState } from "@/factories/history-state-factory"; import { translatePoints } from "@/math/point-math"; let state, getters, commit, dispatch, listener, @@ -334,7 +335,15 @@ function handleKeyDown( event ) { case 84: // T if ( getters.activeDocument ) { if ( getters.activeLayer?.type !== LAYER_TEXT ) { - commit( "addLayer", { type: LAYER_TEXT }); + const fn = () => commit( "addLayer", { type: LAYER_TEXT }); + fn(); + const addedLayerIndex = getters.activeLayerIndex; + enqueueState( `layerAdd_${addedLayerIndex}`, { + undo() { + commit( "removeLayer", addedLayerIndex ); + }, + redo: fn, + }); } setActiveTool( ToolTypes.TEXT ); preventDefault( event );