From bd16a491fa6468c3c4cd673e9ee895cb70b001c1 Mon Sep 17 00:00:00 2001
From: AkiraFukushima
Date: Tue, 25 Dec 2018 00:39:57 +0900
Subject: [PATCH] refs #791 Fix cursor position when user type arrow keys on
image description
---
.../components/TimelineSpace/Modals/NewToot.vue | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/src/renderer/components/TimelineSpace/Modals/NewToot.vue b/src/renderer/components/TimelineSpace/Modals/NewToot.vue
index 62424c0e..585842b0 100644
--- a/src/renderer/components/TimelineSpace/Modals/NewToot.vue
+++ b/src/renderer/components/TimelineSpace/Modals/NewToot.vue
@@ -28,6 +28,8 @@
class="image-description"
:placeholder="$t('modals.new_toot.description')"
v-model="mediaDescriptions[media.id]"
+ v-shortkey="{left: ['arrowleft'], right: ['arrowright']}"
+ @shortkey="handleDescriptionKey"
role="textbox"
contenteditable="true"
aria-multiline="true">
@@ -301,6 +303,19 @@ export default {
})
.catch(_ => {})
}
+ },
+ handleDescriptionKey (event) {
+ const current = event.target.selectionStart
+ switch (event.srcKey) {
+ case 'left':
+ event.target.setSelectionRange(current - 1, current - 1)
+ break
+ case 'right':
+ event.target.setSelectionRange(current + 1, current + 1)
+ break
+ default:
+ return true
+ }
}
}
}