From d3494014a6f3963e3867556dbe98d6eceefc2147 Mon Sep 17 00:00:00 2001 From: tibbi Date: Fri, 1 Jan 2021 19:00:40 +0100 Subject: [PATCH] improving the messages delivery status --- .../smsmessenger/activities/ThreadActivity.kt | 4 ++++ .../smsmessenger/adapters/ThreadAdapter.kt | 11 +++++++++++ .../smsmessenger/extensions/Context.kt | 10 ++++++++++ .../smsmessenger/helpers/Constants.kt | 1 + .../smsmessenger/models/ThreadError.kt | 2 +- .../smsmessenger/models/ThreadSending.kt | 3 +++ .../smsmessenger/receivers/SmsReceiver.kt | 3 ++- .../receivers/SmsStatusDeliveredReceiver.kt | 13 ++++++++++++- .../receivers/SmsStatusSentReceiver.kt | 14 +++++++++++++- app/src/main/res/layout/item_thread_sending.xml | 10 ++++++++++ 10 files changed, 67 insertions(+), 4 deletions(-) create mode 100644 app/src/main/kotlin/com/simplemobiletools/smsmessenger/models/ThreadSending.kt create mode 100644 app/src/main/res/layout/item_thread_sending.xml diff --git a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt index ebc5d785..5c0fd916 100644 --- a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt @@ -515,6 +515,10 @@ class ThreadActivity : SimpleActivity() { items.add(ThreadError(message.id)) } + if (message.type == Telephony.Sms.MESSAGE_TYPE_OUTBOX) { + items.add(ThreadSending(message.id)) + } + if (!message.read) { hadUnreadItems = true markMessageRead(message.id, message.isMMS) diff --git a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/adapters/ThreadAdapter.kt b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/adapters/ThreadAdapter.kt index 67524104..11d52421 100644 --- a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/adapters/ThreadAdapter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/adapters/ThreadAdapter.kt @@ -39,6 +39,7 @@ import kotlinx.android.synthetic.main.item_received_unknown_attachment.view.* import kotlinx.android.synthetic.main.item_sent_unknown_attachment.view.* import kotlinx.android.synthetic.main.item_thread_date_time.view.* import kotlinx.android.synthetic.main.item_thread_error.view.* +import kotlinx.android.synthetic.main.item_thread_sending.view.* import kotlinx.android.synthetic.main.item_thread_success.view.* class ThreadAdapter(activity: SimpleActivity, var messages: ArrayList, recyclerView: MyRecyclerView, fastScroller: FastScroller, @@ -96,6 +97,7 @@ class ThreadAdapter(activity: SimpleActivity, var messages: ArrayList R.layout.item_received_message THREAD_SENT_MESSAGE_ERROR -> R.layout.item_thread_error THREAD_SENT_MESSAGE_SUCCESS -> R.layout.item_thread_success + THREAD_SENT_MESSAGE_SENDING -> R.layout.item_thread_sending else -> R.layout.item_sent_message } return createViewHolder(layout, parent) @@ -108,6 +110,7 @@ class ThreadAdapter(activity: SimpleActivity, var messages: ArrayList setupDateTime(itemView, item) is ThreadSuccess -> setupThreadSuccess(itemView) is ThreadError -> setupThreadError(itemView) + is ThreadSending -> setupThreadSending(itemView) else -> setupView(itemView, item as Message) } } @@ -123,6 +126,7 @@ class ThreadAdapter(activity: SimpleActivity, var messages: ArrayList THREAD_RECEIVED_MESSAGE item is ThreadError -> THREAD_SENT_MESSAGE_ERROR item is ThreadSuccess -> THREAD_SENT_MESSAGE_SUCCESS + item is ThreadSending -> THREAD_SENT_MESSAGE_SENDING else -> THREAD_SENT_MESSAGE } } @@ -336,4 +340,11 @@ class ThreadAdapter(activity: SimpleActivity, var messages: ArrayList +