mirror of
https://github.com/oxen-io/session-android.git
synced 2025-02-26 01:07:21 +00:00
Improve animations
This commit is contained in:
parent
6818be21a1
commit
621c74c1d6
@ -5,14 +5,13 @@ import android.os.Parcelable
|
|||||||
import android.util.SparseArray
|
import android.util.SparseArray
|
||||||
import android.widget.Toast
|
import android.widget.Toast
|
||||||
import androidx.activity.viewModels
|
import androidx.activity.viewModels
|
||||||
import androidx.core.content.ContextCompat
|
|
||||||
import androidx.core.text.HtmlCompat
|
import androidx.core.text.HtmlCompat
|
||||||
import androidx.core.view.isVisible
|
import androidx.core.view.isVisible
|
||||||
import androidx.lifecycle.Lifecycle
|
import androidx.lifecycle.Lifecycle
|
||||||
import androidx.lifecycle.lifecycleScope
|
import androidx.lifecycle.lifecycleScope
|
||||||
import androidx.lifecycle.repeatOnLifecycle
|
import androidx.lifecycle.repeatOnLifecycle
|
||||||
import androidx.recyclerview.widget.DividerItemDecoration
|
|
||||||
import androidx.recyclerview.widget.RecyclerView
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
|
import androidx.recyclerview.widget.SimpleItemAnimator
|
||||||
import com.google.android.material.divider.MaterialDividerItemDecoration
|
import com.google.android.material.divider.MaterialDividerItemDecoration
|
||||||
import dagger.hilt.android.AndroidEntryPoint
|
import dagger.hilt.android.AndroidEntryPoint
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
@ -92,6 +91,7 @@ class ExpirationSettingsActivity: PassphraseRequiredActionBarActivity() {
|
|||||||
viewModel.onExpirationTypeSelected(it)
|
viewModel.onExpirationTypeSelected(it)
|
||||||
}
|
}
|
||||||
binding.recyclerViewDeleteTypes.apply {
|
binding.recyclerViewDeleteTypes.apply {
|
||||||
|
(itemAnimator as SimpleItemAnimator).supportsChangeAnimations = false
|
||||||
adapter = deleteTypeOptionAdapter
|
adapter = deleteTypeOptionAdapter
|
||||||
addDividers()
|
addDividers()
|
||||||
setHasFixedSize(true)
|
setHasFixedSize(true)
|
||||||
@ -102,6 +102,7 @@ class ExpirationSettingsActivity: PassphraseRequiredActionBarActivity() {
|
|||||||
viewModel.onExpirationTimerSelected(it)
|
viewModel.onExpirationTimerSelected(it)
|
||||||
}
|
}
|
||||||
binding.recyclerViewTimerOptions.apply {
|
binding.recyclerViewTimerOptions.apply {
|
||||||
|
(itemAnimator as SimpleItemAnimator).supportsChangeAnimations = false
|
||||||
adapter = timerOptionAdapter
|
adapter = timerOptionAdapter
|
||||||
addDividers()
|
addDividers()
|
||||||
}
|
}
|
||||||
|
@ -35,14 +35,14 @@ class RadioOptionAdapter<T>(
|
|||||||
isSelected = position == selectedOptionPosition
|
isSelected = position == selectedOptionPosition
|
||||||
) {
|
) {
|
||||||
onClickListener(it)
|
onClickListener(it)
|
||||||
selectedOptionPosition = position
|
setSelectedPosition(position)
|
||||||
notifyItemRangeChanged(0, itemCount)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fun setSelectedPosition(selectedPosition: Int) {
|
fun setSelectedPosition(selectedPosition: Int) {
|
||||||
|
notifyItemChanged(selectedOptionPosition)
|
||||||
selectedOptionPosition = selectedPosition
|
selectedOptionPosition = selectedPosition
|
||||||
notifyDataSetChanged()
|
notifyItemChanged(selectedOptionPosition)
|
||||||
}
|
}
|
||||||
|
|
||||||
class ViewHolder<T>(itemView: View): RecyclerView.ViewHolder(itemView) {
|
class ViewHolder<T>(itemView: View): RecyclerView.ViewHolder(itemView) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user