fixed text input
This commit is contained in:
parent
447a68e2de
commit
7bb0bda756
3 changed files with 19 additions and 7 deletions
|
|
@ -97,6 +97,14 @@ export default function useTextInputController(elementX: Ref) {
|
|||
}
|
||||
}
|
||||
|
||||
// Keys that are capable of opening the text input.
|
||||
const hotKeyRange = keyboardNameMap.slice(47, 91)
|
||||
const isHotKey = (key: string) => {
|
||||
if (hotKeyRange.includes(key)) {
|
||||
return true
|
||||
}
|
||||
}
|
||||
|
||||
//---Callbacks-----------------------------------------------
|
||||
|
||||
const onKeyDown = (e: KeyboardEvent) => {
|
||||
|
|
@ -104,16 +112,20 @@ export default function useTextInputController(elementX: Ref) {
|
|||
|
||||
if (textInput) {
|
||||
|
||||
// First-key handler.
|
||||
// Only runs on firstKey.
|
||||
if (firstKey) {
|
||||
if (key == "SPACE") return
|
||||
|
||||
if (!isHotKey(key)) {
|
||||
return
|
||||
}
|
||||
|
||||
prepInput()
|
||||
}
|
||||
|
||||
textInput.focus();
|
||||
|
||||
// Close input when no text or on ESC.
|
||||
if (textInput.value == "" && !firstKey) {
|
||||
if ((textInput.value == "") && (!firstKey) && (key === "BACK_SPACE")) {
|
||||
clearInput()
|
||||
return
|
||||
}
|
||||
|
|
@ -138,7 +150,7 @@ export default function useTextInputController(elementX: Ref) {
|
|||
//-----------------------------------------------------------
|
||||
|
||||
// Watch parent position and update side.
|
||||
watch(elementX, (elementX, previous) => {
|
||||
watch(elementX, (elementX, _previous) => {
|
||||
const winW = window.innerWidth
|
||||
|
||||
// Logic depends on the side we are on.
|
||||
|
|
|
|||
|
|
@ -83,7 +83,7 @@ export default function useMessages() {
|
|||
if (messages.value.size >= 200) {
|
||||
const oldest = Array.from(messages.value.keys()).shift();
|
||||
messages.value.delete(oldest);
|
||||
};
|
||||
}
|
||||
|
||||
// Step 4: Update grouping.
|
||||
updateGrouping()
|
||||
|
|
@ -100,4 +100,4 @@ export default function useMessages() {
|
|||
messages,
|
||||
updateMessageView
|
||||
}
|
||||
};
|
||||
}
|
||||
|
|
@ -1 +1 @@
|
|||
{"w":735,"h":510,"x":1354,"y":513}
|
||||
{"w":735,"h":510,"x":944,"y":489}
|
||||
Loading…
Reference in a new issue