From 60a0440d2d6db837341424d29dfb5419fcf2eef4 Mon Sep 17 00:00:00 2001
From: kkostiuk <kateryna.kostiuk@savoirfairelinux.com>
Date: Wed, 21 Apr 2021 14:25:16 -0400
Subject: [PATCH] UI: update message placeholder text

Change-Id: I0a84d89d0ee6174f564b3474d8533ee4e5c1983a
---
 Ring/Ring/Constants/Generated/Strings.swift              | 2 +-
 .../Conversation/ConversationViewController.swift        | 9 +++++++++
 .../Conversations/Conversation/GrowingTextView.swift     | 1 +
 .../Conversation/MessageAccessoryView.swift              | 5 ++++-
 Ring/Ring/Resources/en.lproj/Localizable.strings         | 2 +-
 5 files changed, 16 insertions(+), 3 deletions(-)

diff --git a/Ring/Ring/Constants/Generated/Strings.swift b/Ring/Ring/Constants/Generated/Strings.swift
index caa3c3ae7..532c2bb4e 100644
--- a/Ring/Ring/Constants/Generated/Strings.swift
+++ b/Ring/Ring/Constants/Generated/Strings.swift
@@ -325,7 +325,7 @@ internal enum L10n {
     internal static let explanationReceivingLocationFrom = L10n.tr("Localizable", "conversation.explanationReceivingLocationFrom")
     /// You are currently sharing your location with 
     internal static let explanationSendingLocationTo = L10n.tr("Localizable", "conversation.explanationSendingLocationTo")
-    /// Type your message...
+    /// Write message to 
     internal static let messagePlaceholder = L10n.tr("Localizable", "conversation.messagePlaceholder")
   }
 
diff --git a/Ring/Ring/Features/Conversations/Conversation/ConversationViewController.swift b/Ring/Ring/Features/Conversations/Conversation/ConversationViewController.swift
index 5b211a3ef..e55a3dd70 100644
--- a/Ring/Ring/Features/Conversations/Conversation/ConversationViewController.swift
+++ b/Ring/Ring/Features/Conversations/Conversation/ConversationViewController.swift
@@ -621,6 +621,15 @@ class ConversationViewController: UIViewController,
                 self?.viewModel.openCall()
             })
             .disposed(by: self.disposeBag)
+        viewModel.bestName
+            .asObservable()
+            .observeOn(MainScheduler.instance)
+            .subscribe(onNext: { [weak self] name in
+                guard !name.isEmpty else { return }
+                let placeholder = L10n.Conversation.messagePlaceholder + name
+                self?.messageAccessoryView.setPlaceholder(placeholder: placeholder)
+            })
+            .disposed(by: self.disposeBag)
     }
 
     func inviteItemTapped() {
diff --git a/Ring/Ring/Features/Conversations/Conversation/GrowingTextView.swift b/Ring/Ring/Features/Conversations/Conversation/GrowingTextView.swift
index 169c4e85c..8ed1bd922 100644
--- a/Ring/Ring/Features/Conversations/Conversation/GrowingTextView.swift
+++ b/Ring/Ring/Features/Conversations/Conversation/GrowingTextView.swift
@@ -147,6 +147,7 @@ open class GrowingTextView: UITextView {
                 // Otherwise user placeholder and inherit `text` attributes
                 let paragraphStyle = NSMutableParagraphStyle()
                 paragraphStyle.alignment = textAlignment
+                paragraphStyle.lineBreakMode = .byTruncatingTail
                 var attributes: [NSAttributedString.Key: Any] = [
                     .foregroundColor: placeholderColor,
                     .paragraphStyle: paragraphStyle
diff --git a/Ring/Ring/Features/Conversations/Conversation/MessageAccessoryView.swift b/Ring/Ring/Features/Conversations/Conversation/MessageAccessoryView.swift
index 8b35108c7..00d6ebc05 100644
--- a/Ring/Ring/Features/Conversations/Conversation/MessageAccessoryView.swift
+++ b/Ring/Ring/Features/Conversations/Conversation/MessageAccessoryView.swift
@@ -74,9 +74,12 @@ class MessageAccessoryView: UIView, NibLoadable, GrowingTextViewDelegate {
         }
     }
 
+    func setPlaceholder(placeholder: String) {
+        self.messageTextView.placeholder = placeholder
+    }
+
     func setupMessageTextView() {
         self.messageTextView.delegate = self
-        self.messageTextView.placeholder = L10n.Conversation.messagePlaceholder
         self.messageTextView.layer.cornerRadius = 18
         self.messageTextView.tintColor = UIColor.jamiMain
         self.messageTextView.textContainerInset = UIEdgeInsets(top: 8, left: 7, bottom: 8, right: 7)
diff --git a/Ring/Ring/Resources/en.lproj/Localizable.strings b/Ring/Ring/Resources/en.lproj/Localizable.strings
index c44b4d6a7..c9d80a5e2 100644
--- a/Ring/Ring/Resources/en.lproj/Localizable.strings
+++ b/Ring/Ring/Resources/en.lproj/Localizable.strings
@@ -47,7 +47,7 @@
 "smartlist.selectOneNumber" = "Select one of the numbers";
 
 //Conversation
-"conversation.messagePlaceholder" = "Type your message...";
+"conversation.messagePlaceholder" = "Write message to ";
 "conversation.explanationSendingLocationTo" = "You are currently sharing your location with ";
 "conversation.explanationReceivingLocationFrom" = "You are currently receiving a live location from ";
 
-- 
GitLab