diff --git a/CHANGELOG.md b/CHANGELOG.md
index e68d85d2c9..2057c419bc 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -7,6 +7,7 @@
### Changed
### Fixed
+- fix contact createion in new chat dialog not working with leading or trailing spaces. #3357
diff --git a/src/renderer/components/chat/ChatList.tsx b/src/renderer/components/chat/ChatList.tsx
index 6dbb4f3d77..ce9acfe5cf 100644
--- a/src/renderer/components/chat/ChatList.tsx
+++ b/src/renderer/components/chat/ChatList.tsx
@@ -137,7 +137,7 @@ export default function ChatList(props: {
const contactId = await BackendRemote.rpc.createContact(
selectedAccountId(),
- queryStr,
+ queryStr.trim(),
null
)
await createChatByContactIdAndSelectIt(contactId)
@@ -398,7 +398,7 @@ export default function ChatList(props: {
queryStrIsValidEmail && (
diff --git a/src/renderer/components/contact/ContactList.tsx b/src/renderer/components/contact/ContactList.tsx
index 71b5d69ba9..ecb47c6e46 100644
--- a/src/renderer/components/contact/ContactList.tsx
+++ b/src/renderer/components/contact/ContactList.tsx
@@ -171,10 +171,10 @@ export function useContactIds(listFlags: number, queryStr: string | undefined) {
const contactIds = await BackendRemote.rpc.getContactIds(
accountId,
listFlags,
- queryStr || null
+ queryStr?.trim() || null
)
const queryStrIsValidEmail = await BackendRemote.rpc.checkEmailValidity(
- queryStr || ''
+ queryStr?.trim() || ''
)
setState({ contactIds, queryStrIsValidEmail })
}, 200),
diff --git a/src/renderer/components/dialogs/CreateChat.tsx b/src/renderer/components/dialogs/CreateChat.tsx
index de39ec0c77..f4690dcee8 100644
--- a/src/renderer/components/dialogs/CreateChat.tsx
+++ b/src/renderer/components/dialogs/CreateChat.tsx
@@ -111,7 +111,7 @@ export default function CreateChat(props: {
const contactId = await BackendRemote.rpc.createContact(
selectedAccountId(),
- queryStr,
+ queryStr.trim(),
null
)
await createChatByContactIdAndSelectIt(contactId)
@@ -122,13 +122,13 @@ export default function CreateChat(props: {
if (
queryStr === '' ||
(contacts.length === 1 &&
- contacts[0].address.toLowerCase() === queryStr.toLowerCase())
+ contacts[0].address.toLowerCase() === queryStr.trim().toLowerCase())
) {
return null
}
return (