Procházet zdrojové kódy

Support pressing Escape

Alessandro Pignotti před 4 měsíci
rodič
revize
9e97d44c13
1 změnil soubory, kde provedl 8 přidání a 0 odebrání
  1. 8 0
      src/lib/WebVM.svelte

+ 8 - 0
src/lib/WebVM.svelte

@@ -563,6 +563,14 @@
 							case "Return":
 							case "Return":
 								await kmsSendChar(textArea, "\n");
 								await kmsSendChar(textArea, "\n");
 								break;
 								break;
+							case "Escape":
+								var ke = new KeyboardEvent("keydown", {keyCode: 0x1b});
+								textArea.dispatchEvent(ke);
+								await yieldHelper(0);
+								ke = new KeyboardEvent("keyup", {keyCode: 0x1b});
+								textArea.dispatchEvent(ke);
+								await yieldHelper(0);
+								break;
 							default:
 							default:
 								// TODO: Support more key combinations
 								// TODO: Support more key combinations
 								ret = new Error(`Error: Invalid key '${tool.text}'`);
 								ret = new Error(`Error: Invalid key '${tool.text}'`);