diff --git a/app/src/main/java/net/pokeranalytics/android/ui/adapter/components/RowRepresentableAdapter.kt b/app/src/main/java/net/pokeranalytics/android/ui/adapter/components/RowRepresentableAdapter.kt index 763b6a51..9a1eb91c 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/adapter/components/RowRepresentableAdapter.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/adapter/components/RowRepresentableAdapter.kt @@ -6,8 +6,8 @@ import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.RecyclerView import net.pokeranalytics.android.ui.view.BindableHolder import net.pokeranalytics.android.ui.view.RowRepresentable -import net.pokeranalytics.android.ui.view.RowViewType import net.pokeranalytics.android.ui.view.RowRepresentableDiffCallback +import net.pokeranalytics.android.ui.view.RowViewType /** * An interface used to provide RowRepresentableAdapter content and value in the form of rows @@ -116,24 +116,11 @@ class RowRepresentableAdapter( } } - /** - * Refresh all adapter rows - */ - fun refreshAllRows() { - this.rows = rowRepresentableDataSource.adapterRows() - notifyDataSetChanged() - } - /** * Update UI */ fun updateRows(newRows: ArrayList) { - val diffResult = DiffUtil.calculateDiff( - RowRepresentableDiffCallback( - newRows, - rows - ) - ) + val diffResult = DiffUtil.calculateDiff(RowRepresentableDiffCallback(newRows, rows, rowRepresentableDataSource)) this.rows = newRows diffResult.dispatchUpdatesTo(this) } diff --git a/app/src/main/java/net/pokeranalytics/android/ui/fragment/SessionFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/fragment/SessionFragment.kt index a35add77..32481276 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/fragment/SessionFragment.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/fragment/SessionFragment.kt @@ -142,7 +142,6 @@ class SessionFragment : PokerAnalyticsFragment(), RowRepresentableDelegate, Bott false } - floatingActionButton.setExpanded(false) floatingActionButton.setOnClickListener { manageSessionState() } diff --git a/app/src/main/java/net/pokeranalytics/android/ui/view/RowRepresentableDiffCallback.kt b/app/src/main/java/net/pokeranalytics/android/ui/view/RowRepresentableDiffCallback.kt index d5547a5b..21982d75 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/view/RowRepresentableDiffCallback.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/view/RowRepresentableDiffCallback.kt @@ -2,10 +2,12 @@ package net.pokeranalytics.android.ui.view import androidx.annotation.Nullable import androidx.recyclerview.widget.DiffUtil -import net.pokeranalytics.android.ui.view.RowRepresentable -import timber.log.Timber +import net.pokeranalytics.android.ui.adapter.components.RowRepresentableDataSource -class RowRepresentableDiffCallback(var newRows: List, var oldRows: List) : +class RowRepresentableDiffCallback( + var newRows: List, var oldRows: List, + var rowRepresentableDataSource: RowRepresentableDataSource +) : DiffUtil.Callback() { override fun getOldListSize(): Int { @@ -21,7 +23,8 @@ class RowRepresentableDiffCallback(var newRows: List, var oldR } override fun areContentsTheSame(oldItemPosition: Int, newItemPosition: Int): Boolean { - return oldRows[oldItemPosition] == newRows[newItemPosition] + // Force to update all the rows that were already there + return false } @Nullable