Skip to content

Commit c21138a

Browse files
Extract ignore logic to callback
1 parent 6d5a95a commit c21138a

File tree

6 files changed

+15
-10
lines changed

6 files changed

+15
-10
lines changed

app/src/main/java/com/infomaniak/mail/ui/main/thread/ThreadAdapter.kt

+1-2
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,6 @@ import kotlinx.coroutines.Dispatchers
6565
import kotlinx.coroutines.launch
6666
import java.util.Date
6767
import com.google.android.material.R as RMaterial
68-
import com.infomaniak.lib.core.R as RCore
6968

7069
class ThreadAdapter(
7170
private val shouldLoadDistantResources: Boolean,
@@ -165,7 +164,7 @@ class ThreadAdapter(
165164
val item = items[position]
166165

167166
holder.binding.root.tag = if (item is SuperCollapsedBlock || (item is Message && item.shouldHideDivider)) {
168-
holder.binding.context.getString(RCore.string.ignoreDivider)
167+
holder.binding.context.getString(R.string.ignoreDivider)
169168
} else {
170169
null
171170
}

app/src/main/java/com/infomaniak/mail/ui/main/thread/ThreadFragment.kt

+8-1
Original file line numberDiff line numberDiff line change
@@ -314,7 +314,14 @@ class ThreadFragment : Fragment() {
314314
),
315315
)
316316

317-
addItemDecoration(DividerItemDecorator(InsetDrawable(dividerDrawable(context), 0)))
317+
addItemDecoration(
318+
DividerItemDecorator(
319+
divider = InsetDrawable(dividerDrawable(context), 0),
320+
shouldIgnoreView = { view ->
321+
view.tag == context.getString(R.string.ignoreDivider)
322+
},
323+
),
324+
)
318325
recycledViewPool.setMaxRecycledViews(0, 0)
319326
threadAdapter.stateRestorationPolicy = StateRestorationPolicy.PREVENT_WHEN_EMPTY
320327
}

app/src/main/java/com/infomaniak/mail/ui/main/thread/calendar/AttendeesBottomSheetDialog.kt

+2-4
Original file line numberDiff line numberDiff line change
@@ -48,9 +48,7 @@ class AttendeesBottomSheetDialog : BottomSheetDialogFragment() {
4848
root.title = context.getString(R.string.attendeesListTitle, attendees.count())
4949
attendeeRecyclerView.adapter = AttendeesAdapter(attendees)
5050

51-
val dividerItemDecorator = DividerItemDecorator(
52-
InsetDrawable(UiUtils.dividerDrawable(context), 16.toPx(), 0, 16.toPx(), 0)
53-
)
54-
attendeeRecyclerView.addItemDecoration(dividerItemDecorator)
51+
val divider = DividerItemDecorator(InsetDrawable(UiUtils.dividerDrawable(context), 16.toPx(), 0, 16.toPx(), 0))
52+
attendeeRecyclerView.addItemDecoration(divider)
5553
}
5654
}

app/src/main/java/com/infomaniak/mail/ui/newMessage/RecipientFieldView.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -360,10 +360,10 @@ class RecipientFieldView @JvmOverloads constructor(
360360
onToggleEverythingCallback: ((isCollapsed: Boolean) -> Unit)? = null,
361361
) {
362362

363-
val dividerItemDecorator = DividerItemDecorator(InsetDrawable(dividerDrawable(context), 16.toPx(), 0, 16.toPx(), 0))
363+
val divider = DividerItemDecorator(InsetDrawable(dividerDrawable(context), 16.toPx(), 0, 16.toPx(), 0))
364364

365365
autoCompletedContacts = autoComplete
366-
autoCompletedContacts.addItemDecoration(dividerItemDecorator)
366+
autoCompletedContacts.addItemDecoration(divider)
367367
autoCompletedContacts.adapter = contactAdapter
368368

369369
onToggleEverything = onToggleEverythingCallback

app/src/main/res/values/strings.xml

+1
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
<string name="notification_channel_id_draft_service" translatable="false">draft_service_channel_id</string>
2222
<string name="notification_channel_id_general" translatable="false">general_channel_id</string>
2323
<string name="notification_channel_id_sync_messages_service" translatable="false">sync_messages_service_channel_id</string>
24+
<string name="ignoreDivider" translatable="false">IGNORE_DIVIDER</string>
2425

2526
<string name="accentColorBlueTitle">Blue</string>
2627
<string name="accentColorPinkTitle">Pink</string>

0 commit comments

Comments
 (0)