From 1e1feb20e1cc5cf76e7ee078177e8a4ff8bd043d Mon Sep 17 00:00:00 2001 From: Nate Sesti Date: Mon, 19 Jun 2023 10:09:41 -0700 Subject: fix up/down arrow key behavior in main entry --- extension/react-app/src/components/ComboBox.tsx | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) (limited to 'extension/react-app/src/components') diff --git a/extension/react-app/src/components/ComboBox.tsx b/extension/react-app/src/components/ComboBox.tsx index 1a3a2b90..3816cee8 100644 --- a/extension/react-app/src/components/ComboBox.tsx +++ b/extension/react-app/src/components/ComboBox.tsx @@ -145,14 +145,24 @@ const ComboBox = React.forwardRef((props: ComboBoxProps, ref) => { } else if (event.key === "Tab" && items.length > 0) { setInputValue(items[0].name); event.preventDefault(); - } else if (event.key === "ArrowUp") { + } else if ( + event.key === "ArrowUp" || + (event.key === "ArrowDown" && + event.currentTarget.value.split("\n").length > 1) + ) { + (event.nativeEvent as any).preventDownshiftDefault = true; + } else if ( + event.key === "ArrowUp" && + event.currentTarget.value.split("\n").length > 1 + ) { if (positionInHistory == 0) return; setInputValue(history[positionInHistory - 1]); setPositionInHistory((prev) => prev - 1); - } else if (event.key === "ArrowDown") { - if (positionInHistory >= history.length - 1) { - setInputValue(""); - } else { + } else if ( + event.key === "ArrowDown" && + event.currentTarget.value.split("\n").length > 1 + ) { + if (positionInHistory < history.length - 1) { setInputValue(history[positionInHistory + 1]); } setPositionInHistory((prev) => -- cgit v1.2.3-70-g09d2