diff --git a/desktop/sources/index.html b/desktop/sources/index.html
index 39649c0..cd8728d 100644
--- a/desktop/sources/index.html
+++ b/desktop/sources/index.html
@@ -48,6 +48,7 @@
DOTGRID.controller.add("default","File","Export(.svg)",() => { DOTGRID.export(); },"CmdOrCtrl+E");
DOTGRID.controller.add_role("default","Edit","copy");
+ DOTGRID.controller.add_role("default","Edit","cut");
DOTGRID.controller.add_role("default","Edit","paste");
DOTGRID.controller.add("default","Edit","Undo",() => { DOTGRID.tool.undo() },"CmdOrCtrl+Z");
DOTGRID.controller.add("default","Edit","Redo",() => { DOTGRID.tool.redo() },"CmdOrCtrl+Shift+Z");
diff --git a/desktop/sources/scripts/dotgrid.js b/desktop/sources/scripts/dotgrid.js
index ae334e5..c25c231 100644
--- a/desktop/sources/scripts/dotgrid.js
+++ b/desktop/sources/scripts/dotgrid.js
@@ -209,6 +209,7 @@ function Dotgrid (width, height, grid_x, grid_y, block_x, block_y) {
DOTGRID.guide.update()
if (e.target !== this.picker.input) {
+ e.clipboardData.setData('text/source', DOTGRID.tool.export(DOTGRID.tool.layer()))
e.clipboardData.setData('text/plain', DOTGRID.tool.export(DOTGRID.tool.layer()))
e.clipboardData.setData('text/html', DOTGRID.renderer.svg_el.outerHTML)
e.clipboardData.setData('text/svg+xml', DOTGRID.renderer.svg_el.outerHTML)