mirror of
https://github.com/SimpleMobileTools/Simple-Contacts.git
synced 2025-06-05 21:59:27 +02:00
feat: moved sharable contacts code to commons
This commit is contained in:
@ -17,12 +17,11 @@ import com.simplemobiletools.contacts.pro.activities.MainActivity
|
||||
import com.simplemobiletools.contacts.pro.activities.SimpleActivity
|
||||
import com.simplemobiletools.contacts.pro.adapters.ContactsAdapter
|
||||
import com.simplemobiletools.contacts.pro.adapters.GroupsAdapter
|
||||
import com.simplemobiletools.contacts.pro.extensions.config
|
||||
import com.simplemobiletools.contacts.pro.extensions.getVisibleContactSources
|
||||
import com.simplemobiletools.commons.extensions.contactsConfig
|
||||
import com.simplemobiletools.commons.helpers.Converters
|
||||
import com.simplemobiletools.contacts.pro.helpers.*
|
||||
import com.simplemobiletools.contacts.pro.interfaces.RefreshContactsListener
|
||||
import com.simplemobiletools.contacts.pro.models.Contact
|
||||
import com.simplemobiletools.contacts.pro.models.Group
|
||||
import com.simplemobiletools.commons.models.contacts.*
|
||||
import kotlinx.android.synthetic.main.fragment_layout.view.*
|
||||
import kotlinx.android.synthetic.main.fragment_layout.view.fragment_fab
|
||||
import kotlinx.android.synthetic.main.fragment_layout.view.fragment_list
|
||||
@ -39,13 +38,13 @@ abstract class MyViewPagerFragment(context: Context, attributeSet: AttributeSet)
|
||||
private var lastHashCode = 0
|
||||
private var contactsIgnoringSearch = ArrayList<Contact>()
|
||||
private var groupsIgnoringSearch = ArrayList<Group>()
|
||||
private lateinit var config: Config
|
||||
private lateinit var config: ContactsConfig
|
||||
|
||||
var skipHashComparing = false
|
||||
var forceListRedraw = false
|
||||
|
||||
fun setupFragment(activity: SimpleActivity) {
|
||||
config = activity.config
|
||||
config = activity.contactsConfig
|
||||
if (this.activity == null) {
|
||||
this.activity = activity
|
||||
fragment_fab?.beGoneIf(activity is InsertOrEditContactActivity)
|
||||
@ -125,7 +124,7 @@ abstract class MyViewPagerFragment(context: Context, attributeSet: AttributeSet)
|
||||
this is FavoritesFragment -> {
|
||||
val favorites = contacts.filter { it.starred == 1 } as ArrayList<Contact>
|
||||
|
||||
if (activity!!.config.isCustomOrderSelected) {
|
||||
if (activity!!.contactsConfig.isCustomOrderSelected) {
|
||||
sortByCustomOrder(favorites)
|
||||
} else {
|
||||
favorites
|
||||
@ -159,7 +158,7 @@ abstract class MyViewPagerFragment(context: Context, attributeSet: AttributeSet)
|
||||
}
|
||||
|
||||
private fun sortByCustomOrder(starred: List<Contact>): ArrayList<Contact> {
|
||||
val favoritesOrder = activity!!.config.favoritesContactsOrder
|
||||
val favoritesOrder = activity!!.contactsConfig.favoritesContactsOrder
|
||||
|
||||
if (favoritesOrder.isEmpty()) {
|
||||
return ArrayList(starred)
|
||||
@ -219,7 +218,7 @@ abstract class MyViewPagerFragment(context: Context, attributeSet: AttributeSet)
|
||||
}
|
||||
} else {
|
||||
(currAdapter as GroupsAdapter).apply {
|
||||
showContactThumbnails = activity.config.showContactThumbnails
|
||||
showContactThumbnails = activity.contactsConfig.showContactThumbnails
|
||||
updateItems(storedGroups)
|
||||
}
|
||||
}
|
||||
@ -281,7 +280,7 @@ abstract class MyViewPagerFragment(context: Context, attributeSet: AttributeSet)
|
||||
activity?.apply {
|
||||
val orderIds = items.map { it.id }
|
||||
val orderGsonString = Gson().toJson(orderIds)
|
||||
config.favoritesContactsOrder = orderGsonString
|
||||
contactsConfig.favoritesContactsOrder = orderGsonString
|
||||
}
|
||||
}
|
||||
|
||||
@ -300,7 +299,7 @@ abstract class MyViewPagerFragment(context: Context, attributeSet: AttributeSet)
|
||||
}
|
||||
|
||||
private fun setupLetterFastscroller(contacts: ArrayList<Contact>) {
|
||||
val sorting = context.config.sorting
|
||||
val sorting = context.contactsConfig.sorting
|
||||
letter_fastscroller.setupWithRecyclerView(fragment_list, { position ->
|
||||
try {
|
||||
val contact = contacts[position]
|
||||
@ -309,7 +308,7 @@ abstract class MyViewPagerFragment(context: Context, attributeSet: AttributeSet)
|
||||
sorting and SORT_BY_SURNAME != 0 && contact.surname.isNotEmpty() -> contact.surname
|
||||
sorting and SORT_BY_MIDDLE_NAME != 0 && contact.middleName.isNotEmpty() -> contact.middleName
|
||||
sorting and SORT_BY_FIRST_NAME != 0 && contact.firstName.isNotEmpty() -> contact.firstName
|
||||
context.config.startNameWithSurname -> contact.surname
|
||||
context.contactsConfig.startNameWithSurname -> contact.surname
|
||||
else -> contact.firstName
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user