mirror of
https://github.com/SimpleMobileTools/Simple-Contacts.git
synced 2025-02-03 09:17:34 +01:00
remember the last used viewpager page
This commit is contained in:
parent
1e0d8f383d
commit
1771e92f11
@ -36,7 +36,7 @@ ext {
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation 'com.simplemobiletools:commons:3.4.15'
|
||||
implementation 'com.simplemobiletools:commons:3.5.0'
|
||||
implementation 'joda-time:joda-time:2.9.9'
|
||||
|
||||
debugImplementation "com.squareup.leakcanary:leakcanary-android:$leakCanaryVersion"
|
||||
|
@ -60,8 +60,7 @@ class MainActivity : SimpleActivity() {
|
||||
|
||||
val configTextColor = config.textColor
|
||||
if (storedTextColor != configTextColor) {
|
||||
val inactiveTabIndex = if (viewpager.currentItem == 0) 1 else 0
|
||||
main_tabs_holder.getTabAt(inactiveTabIndex)?.icon?.applyColorFilter(configTextColor)
|
||||
main_tabs_holder.getTabAt(getOtherViewPagerItem(viewpager.currentItem))?.icon?.applyColorFilter(configTextColor)
|
||||
contacts_fragment.textColorChanged(configTextColor)
|
||||
favorites_fragment.textColorChanged(configTextColor)
|
||||
}
|
||||
@ -98,6 +97,11 @@ class MainActivity : SimpleActivity() {
|
||||
storeStateVariables()
|
||||
}
|
||||
|
||||
override fun onDestroy() {
|
||||
super.onDestroy()
|
||||
config.lastUsedViewPagerPage = viewpager.currentItem
|
||||
}
|
||||
|
||||
override fun onCreateOptionsMenu(menu: Menu): Boolean {
|
||||
menuInflater.inflate(R.menu.menu, menu)
|
||||
return true
|
||||
@ -124,6 +128,8 @@ class MainActivity : SimpleActivity() {
|
||||
}
|
||||
}
|
||||
|
||||
private fun getOtherViewPagerItem(used: Int) = if (used == 1) 0 else 1
|
||||
|
||||
private fun initFragments() {
|
||||
viewpager.adapter = ViewPagerAdapter(this)
|
||||
viewpager.onPageChanged {
|
||||
@ -131,11 +137,14 @@ class MainActivity : SimpleActivity() {
|
||||
invalidateOptionsMenu()
|
||||
}
|
||||
|
||||
val lastUsedPage = config.lastUsedViewPagerPage
|
||||
viewpager.currentItem = lastUsedPage
|
||||
main_tabs_holder.apply {
|
||||
background = ColorDrawable(config.backgroundColor)
|
||||
setSelectedTabIndicatorColor(getAdjustedPrimaryColor())
|
||||
getTabAt(0)?.icon?.applyColorFilter(getAdjustedPrimaryColor())
|
||||
getTabAt(1)?.icon?.applyColorFilter(config.textColor)
|
||||
getTabAt(lastUsedPage)?.select()
|
||||
getTabAt(lastUsedPage)?.icon?.applyColorFilter(getAdjustedPrimaryColor())
|
||||
getTabAt(getOtherViewPagerItem(lastUsedPage))?.icon?.applyColorFilter(config.textColor)
|
||||
}
|
||||
|
||||
main_tabs_holder.onTabSelectionChanged(
|
||||
|
@ -31,4 +31,8 @@ class Config(context: Context) : BaseConfig(context) {
|
||||
var lastUsedContactSource: String
|
||||
get() = prefs.getString(LAST_USED_CONTACT_SOURCE, "")
|
||||
set(lastUsedContactSource) = prefs.edit().putString(LAST_USED_CONTACT_SOURCE, lastUsedContactSource).apply()
|
||||
|
||||
var lastUsedViewPagerPage: Int
|
||||
get() = prefs.getInt(LAST_USED_VIEW_PAGER_PAGE, 0)
|
||||
set(lastUsedViewPagerPage) = prefs.edit().putInt(LAST_USED_VIEW_PAGER_PAGE, lastUsedViewPagerPage).apply()
|
||||
}
|
||||
|
@ -5,6 +5,7 @@ val CALL_CONTACT_ON_CLICK = "call_contact_on_click"
|
||||
val DISPLAY_CONTACT_SOURCES = "display_contact_sources"
|
||||
val START_NAME_WITH_SURNAME = "start_name_with_surname"
|
||||
val LAST_USED_CONTACT_SOURCE = "last_used_contact_source"
|
||||
val LAST_USED_VIEW_PAGER_PAGE = "last_used_view_pager_page"
|
||||
|
||||
val CONTACT_ID = "contact_id"
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user