create a separate layout for the Select Contact contacts fragment

This commit is contained in:
tibbi
2019-12-06 21:14:59 +01:00
parent 9319c934e0
commit 21cd58f0bb
7 changed files with 122 additions and 9 deletions

View File

@ -17,8 +17,8 @@ import com.simplemobiletools.contacts.pro.helpers.FAVORITES_TAB_MASK
import com.simplemobiletools.contacts.pro.interfaces.RefreshContactsListener
import com.simplemobiletools.contacts.pro.models.Contact
import kotlinx.android.synthetic.main.activity_insert_edit_contact.*
import kotlinx.android.synthetic.main.fragment_contacts.*
import kotlinx.android.synthetic.main.fragment_favorites.*
import kotlinx.android.synthetic.main.fragment_insert_or_edit_contacts.*
class InsertOrEditContactActivity : SimpleActivity(), RefreshContactsListener {
private val START_INSERT_ACTIVITY = 1
@ -110,7 +110,7 @@ class InsertOrEditContactActivity : SimpleActivity(), RefreshContactsListener {
}
if (viewpager.adapter == null) {
val fragments = arrayListOf(R.layout.fragment_contacts, R.layout.fragment_favorites)
val fragments = arrayListOf(R.layout.fragment_insert_or_edit_contacts, R.layout.fragment_favorites)
viewpager.adapter = ViewPagerAdapter(this, contactsFavoritesList, CONTACTS_TAB_MASK or FAVORITES_TAB_MASK, fragments)
}
@ -120,7 +120,7 @@ class InsertOrEditContactActivity : SimpleActivity(), RefreshContactsListener {
}
if (refreshTabsMask and CONTACTS_TAB_MASK != 0) {
contacts_fragment?.refreshContacts(contacts)
insert_or_edit_contacts_fragment?.refreshContacts(contacts)
}
if (refreshTabsMask and FAVORITES_TAB_MASK != 0) {

View File

@ -16,4 +16,6 @@ class ContactsFragment(context: Context, attributeSet: AttributeSet) : MyViewPag
override fun placeholderClicked() {
(activity as? MainActivity)?.showFilterDialog()
}
override fun viewSetup() {}
}

View File

@ -28,4 +28,6 @@ class FavoritesFragment(context: Context, attributeSet: AttributeSet) : MyViewPa
(activity as? MainActivity)?.refreshContacts(FAVORITES_TAB_MASK)
}
}
override fun viewSetup() {}
}

View File

@ -22,4 +22,6 @@ class GroupsFragment(context: Context, attributeSet: AttributeSet) : MyViewPager
(activity as? MainActivity)?.refreshContacts(GROUPS_TAB_MASK)
}
}
override fun viewSetup() {}
}

View File

@ -0,0 +1,23 @@
package com.simplemobiletools.contacts.pro.fragments
import android.content.Context
import android.util.AttributeSet
import com.simplemobiletools.commons.extensions.getAdjustedPrimaryColor
import com.simplemobiletools.commons.extensions.getColoredDrawableWithColor
import com.simplemobiletools.contacts.pro.R
import com.simplemobiletools.contacts.pro.extensions.config
import kotlinx.android.synthetic.main.fragment_insert_or_edit_contacts.view.*
class InsertOrEditContactsFragment(context: Context, attributeSet: AttributeSet) : MyViewPagerFragment(context, attributeSet) {
override fun fabClicked() {}
override fun placeholderClicked() {}
override fun viewSetup() {
select_contact_label.setTextColor(context.getAdjustedPrimaryColor())
new_contact_tmb.setImageDrawable(resources.getColoredDrawableWithColor(R.drawable.ic_new_contact_vector, context.config.textColor))
new_contact_holder.setOnClickListener {
}
}
}

View File

@ -39,15 +39,15 @@ abstract class MyViewPagerFragment(context: Context, attributeSet: AttributeSet)
config = activity.config
if (this.activity == null) {
this.activity = activity
fragment_fab.setOnClickListener {
fragment_fab?.setOnClickListener {
fabClicked()
}
fragment_placeholder_2.setOnClickListener {
fragment_placeholder_2?.setOnClickListener {
placeholderClicked()
}
fragment_placeholder_2.underlineText()
fragment_placeholder_2?.underlineText()
updateViewStuff()
when {
@ -298,16 +298,19 @@ abstract class MyViewPagerFragment(context: Context, attributeSet: AttributeSet)
context.updateTextColors(fragment_wrapper.parent as ViewGroup)
fragment_fastscroller.updateBubbleColors()
fragment_fastscroller.allowBubbleDisplay = config.showInfoBubble
fragment_placeholder_2.setTextColor(context.getAdjustedPrimaryColor())
fragment_placeholder_2?.setTextColor(context.getAdjustedPrimaryColor())
viewSetup()
}
private fun setupViewVisibility(hasItemsToShow: Boolean) {
fragment_placeholder_2.beVisibleIf(!hasItemsToShow)
fragment_placeholder.beVisibleIf(!hasItemsToShow)
fragment_placeholder_2?.beVisibleIf(!hasItemsToShow)
fragment_placeholder?.beVisibleIf(!hasItemsToShow)
fragment_list.beVisibleIf(hasItemsToShow)
}
abstract fun fabClicked()
abstract fun placeholderClicked()
abstract fun viewSetup()
}