diff --git a/app/src/main/java/net/pokeranalytics/android/ui/activity/HomeActivity.kt b/app/src/main/java/net/pokeranalytics/android/ui/activity/HomeActivity.kt index 5edbd95b..ea18158f 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/activity/HomeActivity.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/activity/HomeActivity.kt @@ -3,7 +3,6 @@ package net.pokeranalytics.android.ui.activity import android.app.KeyguardManager import android.content.Context import android.content.Intent -import android.net.Uri import android.os.Build import android.os.Bundle import com.google.android.material.bottomnavigation.BottomNavigationView @@ -11,15 +10,10 @@ import io.realm.RealmResults import kotlinx.android.synthetic.main.activity_home.* import net.pokeranalytics.android.BuildConfig import net.pokeranalytics.android.R -import net.pokeranalytics.android.exceptions.PAIllegalStateException import net.pokeranalytics.android.model.realm.Currency import net.pokeranalytics.android.ui.activity.components.PokerAnalyticsActivity -import net.pokeranalytics.android.ui.activity.components.RequestCode -import net.pokeranalytics.android.ui.activity.components.ResultCode import net.pokeranalytics.android.ui.adapter.HomePagerAdapter -import net.pokeranalytics.android.ui.extensions.showAlertDialog import net.pokeranalytics.android.util.billing.AppGuard -import timber.log.Timber class HomeActivity : PokerAnalyticsActivity() { @@ -49,7 +43,7 @@ class HomeActivity : PokerAnalyticsActivity() { R.id.navigation_reports -> { displayFragment(3) } - R.id.navigation_more -> { + R.id.navigation_settings -> { displayFragment(4) } } @@ -81,50 +75,50 @@ class HomeActivity : PokerAnalyticsActivity() { } - override fun onNewIntent(intent: Intent?) { - super.onNewIntent(intent) - - setIntent(intent) - intent?.let { - - when (intent.action) { - "android.intent.action.VIEW" -> { // import - val data = it.data - if (data != null) { - this.requestImportConfirmation(data) - } else { - throw PAIllegalStateException("URI null on import") - } - } - else -> { - Timber.w("Intent ${intent.action} unmanaged") - } - } - } - - } - - override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { - super.onActivityResult(requestCode, resultCode, data) - - when (requestCode) { - RequestCode.IMPORT.value -> { - if (resultCode == ResultCode.IMPORT_UNRECOGNIZED_FORMAT.value) { - showAlertDialog(context = this, message = R.string.unknown_import_format_popup_message) - } - } - } - } +// override fun onNewIntent(intent: Intent?) { +// super.onNewIntent(intent) +// +// setIntent(intent) +// intent?.let { +// +// when (intent.action) { +// "android.intent.action.VIEW" -> { // import +// val data = it.data +// if (data != null) { +// this.requestImportConfirmation(data) +// } else { +// throw PAIllegalStateException("URI null on import") +// } +// } +// else -> { +// Timber.w("Intent ${intent.action} unmanaged") +// } +// } +// } +// +// } + +// override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { +// super.onActivityResult(requestCode, resultCode, data) +// +// when (requestCode) { +// RequestCode.IMPORT.value -> { +// if (resultCode == ResultCode.IMPORT_UNRECOGNIZED_FORMAT.value) { +// showAlertDialog(context = this, message = R.string.unknown_import_format_popup_message) +// } +// } +// } +// } // Import - private fun requestImportConfirmation(uri: Uri) { - - showAlertDialog(context = this, title = R.string.import_confirmation, showCancelButton = true, positiveAction = { - ImportActivity.newInstanceForResult(this, uri) - }) - - } +// private fun requestImportConfirmation(uri: Uri) { +// +// showAlertDialog(context = this, title = R.string.import_confirmation, showCancelButton = true, positiveAction = { +// ImportActivity.newInstanceForResult(this, uri) +// }) +// +// } private fun observeRealmObjects() { diff --git a/app/src/main/java/net/pokeranalytics/android/ui/adapter/HomePagerAdapter.kt b/app/src/main/java/net/pokeranalytics/android/ui/adapter/HomePagerAdapter.kt index 1c7aeb98..30b311e9 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/adapter/HomePagerAdapter.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/adapter/HomePagerAdapter.kt @@ -21,7 +21,7 @@ class HomePagerAdapter(fragmentManager: FragmentManager) : FragmentStatePagerAda 1 -> StatisticsFragment.newInstance() 2 -> CalendarFragment.newInstance() 3 -> ReportsFragment.newInstance() - 4 -> MoreFragment.newInstance() + 4 -> SettingsFragment.newInstance() else -> FeedFragment.newInstance() } } diff --git a/app/src/main/java/net/pokeranalytics/android/ui/fragment/SettingsFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/fragment/SettingsFragment.kt index f2d79b2d..9aecb2b1 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/fragment/SettingsFragment.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/fragment/SettingsFragment.kt @@ -14,10 +14,7 @@ import kotlinx.android.synthetic.main.fragment_settings.* import net.pokeranalytics.android.BuildConfig import net.pokeranalytics.android.R import net.pokeranalytics.android.model.realm.Session -import net.pokeranalytics.android.ui.activity.BillingActivity -import net.pokeranalytics.android.ui.activity.CurrenciesActivity -import net.pokeranalytics.android.ui.activity.DataListActivity -import net.pokeranalytics.android.ui.activity.GDPRActivity +import net.pokeranalytics.android.ui.activity.* import net.pokeranalytics.android.ui.activity.components.RequestCode import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate @@ -111,6 +108,9 @@ class SettingsFragment : PokerAnalyticsFragment(), RowRepresentableDelegate, Sta override fun onRowSelected(position: Int, row: RowRepresentable, fromAction: Boolean) { when (row) { + SettingRow.BANKROLL_REPORT -> { + BankrollActivity.newInstance(requireContext()) + } SettingRow.SUBSCRIPTION -> { if (!AppGuard.isProUser) { BillingActivity.newInstanceForResult(this, false) @@ -145,6 +145,8 @@ class SettingsFragment : PokerAnalyticsFragment(), RowRepresentableDelegate, Sta */ private fun initUI() { + setToolbarTitle(getString(R.string.more)) + setDisplayHomeAsUpEnabled(true) val viewManager = LinearLayoutManager(requireContext()) diff --git a/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/SettingRow.kt b/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/SettingRow.kt index d3f89714..2456d822 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/SettingRow.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/SettingRow.kt @@ -8,6 +8,9 @@ import net.pokeranalytics.android.ui.view.RowViewType enum class SettingRow : RowRepresentable { + // More + BANKROLL_REPORT, + // About SUBSCRIPTION, VERSION, @@ -44,6 +47,10 @@ enum class SettingRow : RowRepresentable { fun getRows(): ArrayList { val rows = ArrayList() + + rows.add(CustomizableRowRepresentable(customViewType = RowViewType.HEADER_TITLE, resId = R.string.reports)) + rows.addAll(arrayListOf(BANKROLL_REPORT)) + rows.add(CustomizableRowRepresentable(customViewType = RowViewType.HEADER_TITLE, resId = R.string.information)) rows.addAll(arrayListOf(VERSION, RATE_APP, CONTACT_US, BUG_REPORT)) // rows.addAll(arrayListOf(SUBSCRIPTION, VERSION, RATE_APP, CONTACT_US, BUG_REPORT)) @@ -76,6 +83,7 @@ enum class SettingRow : RowRepresentable { return it.pluralResId } ?: run { return when (this) { + BANKROLL_REPORT -> R.string.bankroll SUBSCRIPTION -> R.string.subscription VERSION -> R.string.version RATE_APP -> R.string.releasenote_rating @@ -96,6 +104,7 @@ enum class SettingRow : RowRepresentable { override val viewType: Int get() { return when (this) { + BANKROLL_REPORT -> RowViewType.TITLE_ICON_ARROW.ordinal VERSION, SUBSCRIPTION -> RowViewType.TITLE_VALUE.ordinal LANGUAGE, CURRENCY -> RowViewType.TITLE_VALUE_ARROW.ordinal FOLLOW_US -> RowViewType.ROW_FOLLOW_US.ordinal @@ -103,6 +112,14 @@ enum class SettingRow : RowRepresentable { } } + override val imageRes: Int? + get() { + return when(this) { + BANKROLL_REPORT -> R.drawable.ic_outline_lock + else -> null + } + } + override val relatedResultsRepresentable: LiveData? get() { return when (this) { diff --git a/app/src/main/res/menu/navigation_home.xml b/app/src/main/res/menu/navigation_home.xml index d4a0f3b6..6885aca3 100644 --- a/app/src/main/res/menu/navigation_home.xml +++ b/app/src/main/res/menu/navigation_home.xml @@ -21,14 +21,14 @@ android:icon="@drawable/ic_outline_chart_bar" android:title="@string/reports" /> - - - - - + + + + +