Compare commits

...
2 Commits
Author SHA1 Message Date
Ibrahem Khalil ae03891d2f Merge branch 'develop' into 17827 2023-11-13 16:58:28 +02:00
Ibrkhalil 01efd56d6f Fix text content when editing and reentering chat 2023-11-11 10:53:03 +02:00
2 changed files with 11 additions and 13 deletions
+9 -8
View File
@@ -107,14 +107,15 @@
[{:keys [db] :as cofx} message] [{:keys [db] :as cofx} message]
(let [current-chat-id (:current-chat-id db) (let [current-chat-id (:current-chat-id db)
text (get-in message [:content :text])] text (get-in message [:content :text])]
{:db (-> db {:db (-> db
(assoc-in [:chat/inputs current-chat-id :metadata :editing-message] (assoc-in [:chat/inputs current-chat-id :metadata :editing-message]
message) message)
(assoc-in [:chat/inputs current-chat-id :metadata :responding-to-message] nil) (assoc-in [:chat/inputs current-chat-id :metadata :responding-to-message] nil)
(update-in [:chat/inputs current-chat-id :metadata] (update-in [:chat/inputs current-chat-id :metadata]
dissoc dissoc
:sending-image)) :sending-image))
:dispatch [:mention/to-input-field text current-chat-id]})) :dispatch-n [[:chat.ui/set-chat-input-text nil current-chat-id]
[:mention/to-input-field text current-chat-id]]}))
(rf/defn show-contact-request-input (rf/defn show-contact-request-input
"Sets reference to previous chat message and focuses on input" "Sets reference to previous chat message and focuses on input"
@@ -109,8 +109,7 @@
{:keys [edit]}] {:keys [edit]}]
(rn/use-effect (rn/use-effect
(fn [] (fn []
(let [edit-text (get-in edit [:content :text]) (let [edit-text (get-in edit [:content :text])]
text-value-count (count @text-value)]
(when (and edit @input-ref) (when (and edit @input-ref)
;; A small setTimeout is necessary to ensure the statement is enqueued and will get executed ;; A small setTimeout is necessary to ensure the statement is enqueued and will get executed
;; ASAP. ;; ASAP.
@@ -118,9 +117,7 @@
(js/setTimeout #(.focus ^js @input-ref) 250) (js/setTimeout #(.focus ^js @input-ref) 250)
(.setNativeProps ^js @input-ref (clj->js {:text edit-text})) (.setNativeProps ^js @input-ref (clj->js {:text edit-text}))
(reset! text-value edit-text) (reset! text-value edit-text)
(reset! saved-cursor-position (if (zero? text-value-count) (reset! saved-cursor-position (count edit-text)))))
(count edit-text)
text-value-count)))))
[(:message-id edit)])) [(:message-id edit)]))
(defn use-reply (defn use-reply