summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/jsMain/kotlin/moe/nea89/website/KConsole.kt19
1 files changed, 18 insertions, 1 deletions
diff --git a/src/jsMain/kotlin/moe/nea89/website/KConsole.kt b/src/jsMain/kotlin/moe/nea89/website/KConsole.kt
index 3c5fad1..a7b1102 100644
--- a/src/jsMain/kotlin/moe/nea89/website/KConsole.kt
+++ b/src/jsMain/kotlin/moe/nea89/website/KConsole.kt
@@ -1,5 +1,6 @@
package moe.nea89.website
+import kotlinx.browser.window
import kotlinx.browser.document
import kotlinx.dom.addClass
import kotlinx.html.InputType
@@ -178,7 +179,11 @@ class KConsole(
}
fun keydown(event: KeyboardEvent) {
- if (event.altKey || event.ctrlKey || event.metaKey) return
+ if (event.altKey || event.metaKey) return
+ if (event.ctrlKey) {
+ handleControlDown(event)
+ return
+ }
if (event.isComposing) return
if (state != ConsoleState.SHELLPROMPT) return
if (justHandledInput) {
@@ -208,4 +213,16 @@ class KConsole(
rerender()
scrollDown()
}
+
+
+ fun handleControlDown(event: KeyboardEvent){
+ if (event.key == "v"){
+ event.preventDefault()
+ window.navigator.clipboard.readText().then {
+ input += it
+ rerender()
+ scrollDown()
+ }
+ }
+ }
}