From ae0f7726b11db1386e0cb6ce3243456b234762a6 Mon Sep 17 00:00:00 2001
From: Pierre Nicolas <pierre.nicolas@savoirfairelinux.com>
Date: Tue, 16 Jan 2024 15:47:07 -0500
Subject: [PATCH] chatview: add hasPermanentDate util method

Change-Id: Ia05166ab28cbb442523cb840fef351c1cc3157c7
---
 .../java/cx/ring/adapters/ConversationAdapter.kt   | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/jami-android/app/src/main/java/cx/ring/adapters/ConversationAdapter.kt b/jami-android/app/src/main/java/cx/ring/adapters/ConversationAdapter.kt
index 14d92bfe9..9763b581e 100644
--- a/jami-android/app/src/main/java/cx/ring/adapters/ConversationAdapter.kt
+++ b/jami-android/app/src/main/java/cx/ring/adapters/ConversationAdapter.kt
@@ -1900,6 +1900,20 @@ class ConversationAdapter(
         return prevMsg != null && msg.timestamp - prevMsg.timestamp > 10 * DateUtils.MINUTE_IN_MILLIS
     }
 
+    // Used to show the date between messages.
+    private fun hasPermanentDateString(message: Interaction, position: Int): Boolean {
+        val previousMessageTimestamp =
+            getPreviousInteractionFromPosition(position)?.timestamp ?: return false
+
+        // Create Calendar instances for each timestamp
+        val calendar1 = Calendar.getInstance().apply { timeInMillis = message.timestamp }
+        val calendar2 = Calendar.getInstance().apply { timeInMillis = previousMessageTimestamp }
+
+        // Compare the year, month, and day of year to check if they are different days
+        return calendar1.get(Calendar.YEAR) != calendar2.get(Calendar.YEAR)
+                || calendar1.get(Calendar.DAY_OF_YEAR) != calendar2.get(Calendar.DAY_OF_YEAR)
+    }
+
     private enum class SequenceType { FIRST, MIDDLE, LAST, SINGLE }
 
     companion object {
-- 
GitLab