diff --git a/app/src/main/kotlin/com/simplemobiletools/dialer/activities/MainActivity.kt b/app/src/main/kotlin/com/simplemobiletools/dialer/activities/MainActivity.kt index d9003d6e..a1ab191a 100644 --- a/app/src/main/kotlin/com/simplemobiletools/dialer/activities/MainActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/dialer/activities/MainActivity.kt @@ -226,7 +226,7 @@ class MainActivity : SimpleActivity() { val newColumnCount = it as Int if (currentColumnCount != newColumnCount) { config.contactsGridColumnCount = newColumnCount - favorites_fragment.updateListAdapter() + favorites_fragment?.columnCountChanged() } } } @@ -234,7 +234,7 @@ class MainActivity : SimpleActivity() { private fun changeViewType() { ChangeViewTypeDialog(this) { refreshMenuItems() - favorites_fragment.updateListAdapter() + favorites_fragment?.refreshItems() } } diff --git a/app/src/main/kotlin/com/simplemobiletools/dialer/fragments/FavoritesFragment.kt b/app/src/main/kotlin/com/simplemobiletools/dialer/fragments/FavoritesFragment.kt index 4cad19af..9cfae02c 100644 --- a/app/src/main/kotlin/com/simplemobiletools/dialer/fragments/FavoritesFragment.kt +++ b/app/src/main/kotlin/com/simplemobiletools/dialer/fragments/FavoritesFragment.kt @@ -87,7 +87,7 @@ class FavoritesFragment(context: Context, attributeSet: AttributeSet) : MyViewPa } } - fun updateListAdapter() { + private fun updateListAdapter() { val viewType = context.config.viewType setViewType(viewType) @@ -135,13 +135,19 @@ class FavoritesFragment(context: Context, attributeSet: AttributeSet) : MyViewPa fragment_list.scheduleLayoutAnimation() } } else { - currAdapter.updateItems(allContacts) currAdapter.viewType = viewType - currAdapter.recyclerView.requestLayout() + currAdapter.updateItems(allContacts) } } + fun columnCountChanged() { + (fragment_list.layoutManager as MyGridLayoutManager).spanCount = context!!.config.contactsGridColumnCount + fragment_list?.adapter?.apply { + notifyItemRangeChanged(0, allContacts.size) + } + } + private fun sortByCustomOrder(favorites: List): ArrayList { val favoritesOrder = activity!!.config.favoritesContactsOrder