                   if (key === 'enter') { // special case the enter key; it has a non-rectangular shape
                      cacheCanvasCtx.putImageData(imageData, 0, 0);
                      cacheCanvasCtx.clearRect(0, 0, 80, 140);

                      imageData = cacheCanvasCtx.getImageData(0, 0, imageData.width, imageData.height);
                    }

                    keyMesh.material.map.image = imageData;
                    keyMesh.material.map.needsUpdate = true;

                    keyMesh