From 31592a0e1754b11d32440979fc3f299931f51377 Mon Sep 17 00:00:00 2001 From: fmodf Date: Mon, 1 Jul 2024 10:47:39 +0200 Subject: [PATCH] wip --- .../Screens/Conversation/ConversationMessageRow.swift | 10 +++++++--- .../View/Screens/Conversation/ConversationScreen.swift | 4 ++-- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/ConversationsClassic/View/Screens/Conversation/ConversationMessageRow.swift b/ConversationsClassic/View/Screens/Conversation/ConversationMessageRow.swift index fa4f623..6607364 100644 --- a/ConversationsClassic/View/Screens/Conversation/ConversationMessageRow.swift +++ b/ConversationsClassic/View/Screens/Conversation/ConversationMessageRow.swift @@ -30,12 +30,16 @@ struct ConversationMessageRow: View { .offset(offset) .gesture( DragGesture(minimumDistance: 20, coordinateSpace: .local) + .onChanged { value in + var width = value.translation.width + width = width > 0 ? 0 : width + offset = CGSize(width: width, height: 0) + } .onEnded { value in withAnimation(.easeOut(duration: 0.1)) { - if value.translation.width < 0 { - offset = CGSize(width: -50, height: 0) + if value.translation.width <= -90 { Vibration.success.vibrate() - DispatchQueue.main.asyncAfter(deadline: .now() + 0.05) { + DispatchQueue.main.asyncAfter(deadline: .now() + 0.01) { store.dispatch(.conversationAction(.setReplyText(message.body ?? ""))) withAnimation(.easeOut(duration: 0.1)) { offset = .zero diff --git a/ConversationsClassic/View/Screens/Conversation/ConversationScreen.swift b/ConversationsClassic/View/Screens/Conversation/ConversationScreen.swift index 1cfd342..4ff6cba 100644 --- a/ConversationsClassic/View/Screens/Conversation/ConversationScreen.swift +++ b/ConversationsClassic/View/Screens/Conversation/ConversationScreen.swift @@ -125,9 +125,9 @@ struct ConversationScreen: View { Message(id: "10", type: .chat, contentType: .text, from: acc, to: contact, body: "so test so test so test", subject: nil, thread: nil, oobUrl: nil, date: Date(), pending: false, sentError: false), Message(id: "11", type: .chat, contentType: .text, from: contact, to: acc, body: "xD", subject: nil, thread: nil, oobUrl: nil, date: Date(), pending: false, sentError: false) ] - + state.conversationsState.replyText = "> Some Text here! And if it a long and very long text sdfsadfsadfsafsadfsadfsadfsadfassadfsadfsafsafdsadfsafdsadfsadfas sdf sdf asdf sdfasdfsd sdfasdf sdfsdfdsasdfsdfa dsafsaf" - + return state } }