From 08d9aa09474be6ccf630f0c36cf04c70bfbffe54 Mon Sep 17 00:00:00 2001 From: Fumiaki Yoshimatsu Date: Sun, 17 Oct 2021 11:13:16 -0400 Subject: [PATCH] Decorate item after header/footer with timestamp. Fixes #11536 --- .../thoughtcrime/securesms/util/StickyHeaderDecoration.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/StickyHeaderDecoration.java b/app/src/main/java/org/thoughtcrime/securesms/util/StickyHeaderDecoration.java index f3ab67e6de..e5aee4fdfc 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/StickyHeaderDecoration.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/StickyHeaderDecoration.java @@ -61,7 +61,7 @@ public class StickyHeaderDecoration extends RecyclerView.ItemDecoration { outRect.set(0, headerHeight, 0, 0); } - protected boolean hasHeader(RecyclerView parent, StickyHeaderAdapter adapter, int adapterPos) { + protected boolean hasHeader(RecyclerView parent, StickyHeaderAdapter adapter, int adapterPos) { long headerId = adapter.getHeaderId(adapterPos); if (headerId == StickyHeaderAdapter.NO_HEADER_ID) { @@ -69,7 +69,7 @@ public class StickyHeaderDecoration extends RecyclerView.ItemDecoration { } boolean isReverse = isReverseLayout(parent); - int itemCount = ((RecyclerView.Adapter)adapter).getItemCount(); + int itemCount = adapter.getItemCount(); if ((isReverse && adapterPos == itemCount - 1 && adapter.getHeaderId(adapterPos) != -1) || (!isReverse && adapterPos == 0)) @@ -80,7 +80,7 @@ public class StickyHeaderDecoration extends RecyclerView.ItemDecoration { int previous = adapterPos + (isReverse ? 1 : -1); long previousHeaderId = adapter.getHeaderId(previous); - return previousHeaderId != StickyHeaderAdapter.NO_HEADER_ID && headerId != previousHeaderId; + return (previousHeaderId == StickyHeaderAdapter.NO_HEADER_ID) || (headerId != previousHeaderId); } protected @NonNull ViewHolder getHeader(RecyclerView parent, StickyHeaderAdapter adapter, int position) {