diff options
author | Iván Ávalos <avalos@disroot.org> | 2022-03-10 21:23:09 -0600 |
---|---|---|
committer | Iván Ávalos <avalos@disroot.org> | 2022-03-10 21:23:09 -0600 |
commit | 9df32de8d2d26b8ebb6c6fb3f0bed10831947293 (patch) | |
tree | 81106acd83a93665850af40aca61fc145ae34dde /androidApp/src/main/java/mx/trackermap/TrackerMap/android/devices/DevicesAdapter.kt | |
parent | 440399490ec8874ed5295ca6b5770c94d47d4f3d (diff) | |
parent | 620cd5b1e2782adfd57660017878013f2fb896bd (diff) | |
download | etbsa-trackermap-mobile-9df32de8d2d26b8ebb6c6fb3f0bed10831947293.tar.gz etbsa-trackermap-mobile-9df32de8d2d26b8ebb6c6fb3f0bed10831947293.tar.bz2 etbsa-trackermap-mobile-9df32de8d2d26b8ebb6c6fb3f0bed10831947293.zip |
Merge branch 'main' of https://git.sr.ht/~avalos/trackermap-mobile
Diffstat (limited to 'androidApp/src/main/java/mx/trackermap/TrackerMap/android/devices/DevicesAdapter.kt')
-rw-r--r-- | androidApp/src/main/java/mx/trackermap/TrackerMap/android/devices/DevicesAdapter.kt | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/androidApp/src/main/java/mx/trackermap/TrackerMap/android/devices/DevicesAdapter.kt b/androidApp/src/main/java/mx/trackermap/TrackerMap/android/devices/DevicesAdapter.kt index 4cfd6b5..0fbf597 100644 --- a/androidApp/src/main/java/mx/trackermap/TrackerMap/android/devices/DevicesAdapter.kt +++ b/androidApp/src/main/java/mx/trackermap/TrackerMap/android/devices/DevicesAdapter.kt @@ -20,6 +20,7 @@ package mx.trackermap.TrackerMap.android.devices import android.view.LayoutInflater import android.view.ViewGroup import androidx.core.view.updateLayoutParams +import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.RecyclerView import mx.trackermap.TrackerMap.android.R import mx.trackermap.TrackerMap.android.databinding.UnitItemBinding @@ -28,10 +29,18 @@ import mx.trackermap.TrackerMap.android.shared.UnitRenderData import mx.trackermap.TrackerMap.client.models.UnitInformation class DevicesAdapter( - private val units: List<UnitInformation>, + private val units: MutableList<UnitInformation>, private val actionCallback: ActionCallback? ) : RecyclerView.Adapter<DevicesAdapter.ViewHolder>() { + fun setData(units: List<UnitInformation>) { + val diffCallback = DevicesDiffCallback(this.units, units) + val diffResult = DiffUtil.calculateDiff(diffCallback) + this.units.clear() + this.units.addAll(units) + diffResult.dispatchUpdatesTo(this) + } + override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder { val binding = UnitItemBinding.inflate(LayoutInflater.from(parent.context), parent, false) |