remove everything related to Recents, due to Googles latest security rules

This commit is contained in:
tibbi
2019-01-05 17:27:11 +01:00
parent 0a150a9f82
commit ea520ab7a8
31 changed files with 22 additions and 591 deletions

View File

@ -15,7 +15,6 @@ 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.adapters.RecentCallsAdapter
import com.simplemobiletools.contacts.pro.extensions.config
import com.simplemobiletools.contacts.pro.extensions.contactClicked
import com.simplemobiletools.contacts.pro.extensions.getVisibleContactSources
@ -59,11 +58,6 @@ abstract class MyViewPagerFragment(context: Context, attributeSet: AttributeSet)
fragment_placeholder.text = activity.getString(R.string.no_group_created)
fragment_placeholder_2.text = activity.getString(R.string.create_group)
}
this is RecentsFragment -> {
fragment_fab.beGone()
fragment_placeholder.text = activity.getString(R.string.no_recent_calls_found)
fragment_placeholder_2.text = activity.getString(R.string.request_the_required_permissions)
}
}
}
}
@ -71,7 +65,6 @@ abstract class MyViewPagerFragment(context: Context, attributeSet: AttributeSet)
fun textColorChanged(color: Int) {
when {
this is GroupsFragment -> (fragment_list.adapter as GroupsAdapter).updateTextColor(color)
this is RecentsFragment -> (fragment_list.adapter as RecentCallsAdapter).updateTextColor(color)
else -> (fragment_list.adapter as ContactsAdapter).apply {
updateTextColor(color)
initDrawables()
@ -88,7 +81,7 @@ abstract class MyViewPagerFragment(context: Context, attributeSet: AttributeSet)
}
fun startNameWithSurnameChanged(startNameWithSurname: Boolean) {
if (this !is GroupsFragment && this !is RecentsFragment) {
if (this !is GroupsFragment) {
(fragment_list.adapter as? ContactsAdapter)?.apply {
config.sorting = if (startNameWithSurname) SORT_BY_SURNAME else SORT_BY_FIRST_NAME
this@MyViewPagerFragment.activity!!.refreshContacts(CONTACTS_TAB_MASK or FAVORITES_TAB_MASK)
@ -99,7 +92,6 @@ abstract class MyViewPagerFragment(context: Context, attributeSet: AttributeSet)
fun refreshContacts(contacts: ArrayList<Contact>) {
if ((config.showTabs and CONTACTS_TAB_MASK == 0 && this is ContactsFragment) ||
(config.showTabs and FAVORITES_TAB_MASK == 0 && this is FavoritesFragment) ||
(config.showTabs and RECENTS_TAB_MASK == 0 && this is RecentsFragment) ||
(config.showTabs and GROUPS_TAB_MASK == 0 && this is GroupsFragment)) {
return
}
@ -114,7 +106,6 @@ abstract class MyViewPagerFragment(context: Context, attributeSet: AttributeSet)
val filtered = when {
this is GroupsFragment -> contacts
this is FavoritesFragment -> contacts.filter { it.starred == 1 } as ArrayList<Contact>
this is RecentsFragment -> ArrayList()
else -> {
val contactSources = activity!!.getVisibleContactSources()
contacts.filter { contactSources.contains(it.source) } as ArrayList<Contact>
@ -133,7 +124,7 @@ abstract class MyViewPagerFragment(context: Context, attributeSet: AttributeSet)
private fun setupContacts(contacts: ArrayList<Contact>) {
if (this is GroupsFragment) {
setupGroupsAdapter(contacts)
} else if (this !is RecentsFragment) {
} else {
setupContactsFavoritesAdapter(contacts)
}
@ -219,7 +210,7 @@ abstract class MyViewPagerFragment(context: Context, attributeSet: AttributeSet)
showContactThumbnails = showThumbnails
notifyDataSetChanged()
}
} else if (this !is RecentsFragment) {
} else {
(fragment_list.adapter as? ContactsAdapter)?.apply {
showContactThumbnails = showThumbnails
notifyDataSetChanged()

View File

@ -1,89 +0,0 @@
package com.simplemobiletools.contacts.pro.fragments
import android.annotation.TargetApi
import android.content.Context
import android.content.Intent
import android.os.Build
import android.telecom.TelecomManager
import android.util.AttributeSet
import com.simplemobiletools.commons.extensions.beVisibleIf
import com.simplemobiletools.commons.extensions.hasPermission
import com.simplemobiletools.commons.helpers.PERMISSION_READ_CALL_LOG
import com.simplemobiletools.commons.helpers.PERMISSION_WRITE_CALL_LOG
import com.simplemobiletools.commons.helpers.isMarshmallowPlus
import com.simplemobiletools.contacts.pro.activities.InsertOrEditContactActivity
import com.simplemobiletools.contacts.pro.adapters.RecentCallsAdapter
import com.simplemobiletools.contacts.pro.extensions.contactClicked
import com.simplemobiletools.contacts.pro.extensions.isDefaultDialer
import com.simplemobiletools.contacts.pro.extensions.normalizeNumber
import com.simplemobiletools.contacts.pro.helpers.IS_FROM_SIMPLE_CONTACTS
import com.simplemobiletools.contacts.pro.helpers.KEY_PHONE
import com.simplemobiletools.contacts.pro.helpers.RECENTS_TAB_MASK
import com.simplemobiletools.contacts.pro.models.Contact
import com.simplemobiletools.contacts.pro.models.RecentCall
import kotlinx.android.synthetic.main.fragment_layout.view.*
class RecentsFragment(context: Context, attributeSet: AttributeSet) : MyViewPagerFragment(context, attributeSet) {
override fun fabClicked() {}
@TargetApi(Build.VERSION_CODES.M)
override fun placeholderClicked() {
if (!isMarshmallowPlus() || (isMarshmallowPlus() && context.isDefaultDialer())) {
activity!!.handlePermission(PERMISSION_WRITE_CALL_LOG) {
if (it) {
activity!!.handlePermission(PERMISSION_READ_CALL_LOG) {
activity?.refreshContacts(RECENTS_TAB_MASK)
}
}
}
} else {
val intent = Intent(TelecomManager.ACTION_CHANGE_DEFAULT_DIALER).putExtra(TelecomManager.EXTRA_CHANGE_DEFAULT_DIALER_PACKAGE_NAME, context.packageName)
context.startActivity(intent)
}
}
fun updateRecentCalls(recentCalls: ArrayList<RecentCall>) {
if (activity == null || activity!!.isDestroyed) {
return
}
fragment_placeholder.beVisibleIf(recentCalls.isEmpty())
fragment_placeholder_2.beVisibleIf(recentCalls.isEmpty() && !activity!!.hasPermission(PERMISSION_WRITE_CALL_LOG))
fragment_list.beVisibleIf(recentCalls.isNotEmpty())
val currAdapter = fragment_list.adapter
if (currAdapter == null) {
RecentCallsAdapter(activity!!, recentCalls, activity, fragment_list, fragment_fastscroller) {
val recentCall = (it as RecentCall).number.normalizeNumber()
var selectedContact: Contact? = null
for (contact in allContacts) {
if (contact.doesContainPhoneNumber(recentCall)) {
selectedContact = contact
break
}
}
if (selectedContact != null) {
activity?.contactClicked(selectedContact)
} else {
Intent(context, InsertOrEditContactActivity::class.java).apply {
action = Intent.ACTION_INSERT_OR_EDIT
putExtra(KEY_PHONE, recentCall)
putExtra(IS_FROM_SIMPLE_CONTACTS, true)
context.startActivity(this)
}
}
}.apply {
addVerticalDividers(true)
fragment_list.adapter = this
}
fragment_fastscroller.setViews(fragment_list) {
val item = (fragment_list.adapter as RecentCallsAdapter).recentCalls.getOrNull(it)
fragment_fastscroller.updateBubbleText(item?.name ?: item?.number ?: "")
}
} else {
(currAdapter as RecentCallsAdapter).updateItems(recentCalls)
}
}
}