Refactoring to move various fragments and activities into modules

hh
Laurent 6 years ago
parent 098c8014d7
commit 5848f7df22
  1. 10
      app/src/main/AndroidManifest.xml
  2. 2
      app/src/main/java/net/pokeranalytics/android/model/realm/Filter.kt
  3. 2
      app/src/main/java/net/pokeranalytics/android/ui/adapter/ComparisonChartPagerAdapter.kt
  4. 2
      app/src/main/java/net/pokeranalytics/android/ui/adapter/HomePagerAdapter.kt
  5. 6
      app/src/main/java/net/pokeranalytics/android/ui/fragment/ReportCreationFragment.kt
  6. 6
      app/src/main/java/net/pokeranalytics/android/ui/fragment/StatisticsFragment.kt
  7. 9
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/FilterableFragment.kt
  8. 18
      app/src/main/java/net/pokeranalytics/android/ui/modules/calendar/CalendarDetailsActivity.kt
  9. 10
      app/src/main/java/net/pokeranalytics/android/ui/modules/calendar/CalendarDetailsFragment.kt
  10. 2
      app/src/main/java/net/pokeranalytics/android/ui/modules/calendar/CalendarDetailsViewModel.kt
  11. 15
      app/src/main/java/net/pokeranalytics/android/ui/modules/calendar/CalendarFragment.kt
  12. 2
      app/src/main/java/net/pokeranalytics/android/ui/modules/datalist/DataListActivity.kt
  13. 2
      app/src/main/java/net/pokeranalytics/android/ui/modules/datalist/DataListFragment.kt
  14. 6
      app/src/main/java/net/pokeranalytics/android/ui/modules/feed/FeedFragment.kt
  15. 7
      app/src/main/java/net/pokeranalytics/android/ui/modules/filter/FilterDetailsActivity.kt
  16. 3
      app/src/main/java/net/pokeranalytics/android/ui/modules/filter/FilterDetailsFragment.kt
  17. 6
      app/src/main/java/net/pokeranalytics/android/ui/modules/filter/FilterHandler.kt
  18. 13
      app/src/main/java/net/pokeranalytics/android/ui/modules/filter/FiltersActivity.kt
  19. 11
      app/src/main/java/net/pokeranalytics/android/ui/modules/filter/FiltersFragment.kt
  20. 17
      app/src/main/java/net/pokeranalytics/android/ui/modules/filter/FiltersListActivity.kt
  21. 5
      app/src/main/java/net/pokeranalytics/android/ui/modules/filter/FiltersListFragment.kt
  22. 23
      app/src/main/java/net/pokeranalytics/android/ui/modules/session/SessionActivity.kt
  23. 7
      app/src/main/java/net/pokeranalytics/android/ui/modules/session/SessionFragment.kt
  24. 2
      app/src/main/java/net/pokeranalytics/android/ui/modules/session/SessionViewModel.kt
  25. 6
      app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/FilterCategoryRow.kt
  26. 2
      app/src/main/res/layout/activity_calendar_details.xml
  27. 2
      app/src/main/res/layout/activity_filters_list.xml
  28. 2
      app/src/main/res/layout/activity_session.xml

@ -55,7 +55,7 @@
</activity> </activity>
<activity <activity
android:name="net.pokeranalytics.android.ui.activity.SessionActivity" android:name="net.pokeranalytics.android.ui.modules.session.SessionActivity"
android:launchMode="singleTop" android:launchMode="singleTop"
android:screenOrientation="portrait" android:screenOrientation="portrait"
android:windowSoftInputMode="adjustNothing" /> android:windowSoftInputMode="adjustNothing" />
@ -108,7 +108,7 @@
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity <activity
android:name="net.pokeranalytics.android.ui.activity.CalendarDetailsActivity" android:name="net.pokeranalytics.android.ui.modules.calendar.CalendarDetailsActivity"
android:launchMode="singleTop" android:launchMode="singleTop"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
@ -123,7 +123,7 @@
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity <activity
android:name="net.pokeranalytics.android.ui.activity.FiltersListActivity" android:name="net.pokeranalytics.android.ui.modules.filter.FiltersListActivity"
android:launchMode="singleTop" android:launchMode="singleTop"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
@ -138,12 +138,12 @@
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity <activity
android:name="net.pokeranalytics.android.ui.activity.FiltersActivity" android:name="net.pokeranalytics.android.ui.modules.filter.FiltersActivity"
android:launchMode="singleTop" android:launchMode="singleTop"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity <activity
android:name="net.pokeranalytics.android.ui.activity.FilterDetailsActivity" android:name="net.pokeranalytics.android.ui.modules.filter.FilterDetailsActivity"
android:launchMode="singleTop" android:launchMode="singleTop"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />

@ -11,7 +11,7 @@ import net.pokeranalytics.android.model.filter.Query
import net.pokeranalytics.android.model.filter.QueryCondition import net.pokeranalytics.android.model.filter.QueryCondition
import net.pokeranalytics.android.model.interfaces.* import net.pokeranalytics.android.model.interfaces.*
import net.pokeranalytics.android.ui.fragment.components.bottomsheet.BottomSheetType import net.pokeranalytics.android.ui.fragment.components.bottomsheet.BottomSheetType
import net.pokeranalytics.android.ui.interfaces.FilterableType import net.pokeranalytics.android.ui.modules.filter.FilterableType
import net.pokeranalytics.android.ui.view.ImageDecorator import net.pokeranalytics.android.ui.view.ImageDecorator
import net.pokeranalytics.android.ui.view.RowRepresentable import net.pokeranalytics.android.ui.view.RowRepresentable
import net.pokeranalytics.android.ui.view.RowRepresentableEditDescriptor import net.pokeranalytics.android.ui.view.RowRepresentableEditDescriptor

@ -6,7 +6,7 @@ import android.view.ViewGroup
import androidx.fragment.app.FragmentManager import androidx.fragment.app.FragmentManager
import androidx.fragment.app.FragmentStatePagerAdapter import androidx.fragment.app.FragmentStatePagerAdapter
import net.pokeranalytics.android.R import net.pokeranalytics.android.R
import net.pokeranalytics.android.ui.fragment.CalendarFragment import net.pokeranalytics.android.ui.modules.calendar.CalendarFragment
import net.pokeranalytics.android.ui.modules.feed.FeedFragment import net.pokeranalytics.android.ui.modules.feed.FeedFragment
import net.pokeranalytics.android.ui.fragment.GraphFragment import net.pokeranalytics.android.ui.fragment.GraphFragment
import net.pokeranalytics.android.ui.fragment.components.BaseFragment import net.pokeranalytics.android.ui.fragment.components.BaseFragment

@ -4,7 +4,7 @@ import android.util.SparseArray
import android.view.ViewGroup import android.view.ViewGroup
import androidx.fragment.app.FragmentManager import androidx.fragment.app.FragmentManager
import androidx.fragment.app.FragmentStatePagerAdapter import androidx.fragment.app.FragmentStatePagerAdapter
import net.pokeranalytics.android.ui.fragment.CalendarFragment import net.pokeranalytics.android.ui.modules.calendar.CalendarFragment
import net.pokeranalytics.android.ui.fragment.ReportsFragment import net.pokeranalytics.android.ui.fragment.ReportsFragment
import net.pokeranalytics.android.ui.fragment.SettingsFragment import net.pokeranalytics.android.ui.fragment.SettingsFragment
import net.pokeranalytics.android.ui.fragment.StatisticsFragment import net.pokeranalytics.android.ui.fragment.StatisticsFragment

@ -14,14 +14,14 @@ import net.pokeranalytics.android.model.Criteria
import net.pokeranalytics.android.model.CustomFieldCriteria import net.pokeranalytics.android.model.CustomFieldCriteria
import net.pokeranalytics.android.model.realm.CustomField import net.pokeranalytics.android.model.realm.CustomField
import net.pokeranalytics.android.model.realm.Filter import net.pokeranalytics.android.model.realm.Filter
import net.pokeranalytics.android.ui.activity.FiltersActivity import net.pokeranalytics.android.ui.modules.filter.FiltersActivity
import net.pokeranalytics.android.ui.activity.ReportCreationActivity import net.pokeranalytics.android.ui.activity.ReportCreationActivity
import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter
import net.pokeranalytics.android.ui.adapter.RowRepresentableDataSource import net.pokeranalytics.android.ui.adapter.RowRepresentableDataSource
import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate
import net.pokeranalytics.android.ui.fragment.components.RealmFragment import net.pokeranalytics.android.ui.fragment.components.RealmFragment
import net.pokeranalytics.android.ui.interfaces.FilterActivityRequestCode import net.pokeranalytics.android.ui.modules.filter.FilterActivityRequestCode
import net.pokeranalytics.android.ui.interfaces.FilterableType import net.pokeranalytics.android.ui.modules.filter.FilterableType
import net.pokeranalytics.android.ui.view.RowRepresentable import net.pokeranalytics.android.ui.view.RowRepresentable
import net.pokeranalytics.android.ui.view.RowViewType import net.pokeranalytics.android.ui.view.RowViewType
import net.pokeranalytics.android.ui.view.rowrepresentable.CustomizableRowRepresentable import net.pokeranalytics.android.ui.view.rowrepresentable.CustomizableRowRepresentable

@ -22,11 +22,11 @@ import net.pokeranalytics.android.model.filter.Query
import net.pokeranalytics.android.model.filter.QueryCondition import net.pokeranalytics.android.model.filter.QueryCondition
import net.pokeranalytics.android.model.realm.ComputableResult import net.pokeranalytics.android.model.realm.ComputableResult
import net.pokeranalytics.android.model.realm.Filter import net.pokeranalytics.android.model.realm.Filter
import net.pokeranalytics.android.ui.activity.FiltersActivity import net.pokeranalytics.android.ui.modules.filter.FiltersActivity
import net.pokeranalytics.android.ui.fragment.components.FilterableFragment import net.pokeranalytics.android.ui.fragment.components.FilterableFragment
import net.pokeranalytics.android.ui.fragment.report.ComposableTableReportFragment import net.pokeranalytics.android.ui.fragment.report.ComposableTableReportFragment
import net.pokeranalytics.android.ui.interfaces.FilterActivityRequestCode import net.pokeranalytics.android.ui.modules.filter.FilterActivityRequestCode
import net.pokeranalytics.android.ui.interfaces.FilterableType import net.pokeranalytics.android.ui.modules.filter.FilterableType
import timber.log.Timber import timber.log.Timber
import java.util.* import java.util.*
import kotlin.coroutines.CoroutineContext import kotlin.coroutines.CoroutineContext

@ -14,9 +14,9 @@ import kotlinx.coroutines.delay
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
import net.pokeranalytics.android.R import net.pokeranalytics.android.R
import net.pokeranalytics.android.model.realm.Filter import net.pokeranalytics.android.model.realm.Filter
import net.pokeranalytics.android.ui.interfaces.FilterHandler import net.pokeranalytics.android.ui.modules.filter.FilterHandler
import net.pokeranalytics.android.ui.interfaces.FilterHandler.Companion.INTENT_FILTER_UPDATE_FILTER_UI import net.pokeranalytics.android.ui.modules.filter.FilterHandler.Companion.INTENT_FILTER_UPDATE_FILTER_UI
import net.pokeranalytics.android.ui.interfaces.FilterableType import net.pokeranalytics.android.ui.modules.filter.FilterableType
import net.pokeranalytics.android.util.Preferences import net.pokeranalytics.android.util.Preferences
@ -26,7 +26,8 @@ import net.pokeranalytics.android.util.Preferences
* - Listen for INTENT_FILTER_UPDATE_FILTER_UI * - Listen for INTENT_FILTER_UPDATE_FILTER_UI
* - * -
*/ */
open class FilterableFragment : RealmFragment(), FilterHandler { open class FilterableFragment : RealmFragment(),
FilterHandler {
override var currentFilterable: FilterableType = FilterableType.ALL override var currentFilterable: FilterableType = FilterableType.ALL
set(value) { set(value) {

@ -1,4 +1,4 @@
package net.pokeranalytics.android.ui.activity package net.pokeranalytics.android.ui.modules.calendar
import android.content.Context import android.content.Context
import android.content.Intent import android.content.Intent
@ -8,7 +8,6 @@ import net.pokeranalytics.android.R
import net.pokeranalytics.android.calculus.ComputedResults import net.pokeranalytics.android.calculus.ComputedResults
import net.pokeranalytics.android.model.filter.QueryCondition import net.pokeranalytics.android.model.filter.QueryCondition
import net.pokeranalytics.android.ui.activity.components.BaseActivity import net.pokeranalytics.android.ui.activity.components.BaseActivity
import net.pokeranalytics.android.ui.viewmodel.CalendarDetailsViewModel
class CalendarDetailsActivity : BaseActivity() { class CalendarDetailsActivity : BaseActivity() {
@ -27,9 +26,9 @@ class CalendarDetailsActivity : BaseActivity() {
* Default constructor * Default constructor
*/ */
fun newInstance(context: Context, computedResults: ComputedResults, sessionTypeCondition: QueryCondition?, title: String?) { fun newInstance(context: Context, computedResults: ComputedResults, sessionTypeCondition: QueryCondition?, title: String?) {
this.computedResults = computedResults Companion.computedResults = computedResults
this.sessionTypeCondition = sessionTypeCondition Companion.sessionTypeCondition = sessionTypeCondition
this.detailsTitle = title detailsTitle = title
val intent = Intent(context, CalendarDetailsActivity::class.java) val intent = Intent(context, CalendarDetailsActivity::class.java)
context.startActivity(intent) context.startActivity(intent)
} }
@ -47,9 +46,12 @@ class CalendarDetailsActivity : BaseActivity() {
*/ */
private fun initData() { private fun initData() {
this.viewModel.computedResults = computedResults this.viewModel.computedResults =
this.viewModel.sessionTypeCondition = sessionTypeCondition computedResults
this.viewModel.detailsTitle = detailsTitle this.viewModel.sessionTypeCondition =
sessionTypeCondition
this.viewModel.detailsTitle =
detailsTitle
} }

@ -1,4 +1,4 @@
package net.pokeranalytics.android.ui.fragment package net.pokeranalytics.android.ui.modules.calendar
import android.content.Context import android.content.Context
import android.content.Intent import android.content.Intent
@ -26,13 +26,13 @@ import net.pokeranalytics.android.ui.activity.GraphActivity
import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter
import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate
import net.pokeranalytics.android.ui.adapter.StaticRowRepresentableDataSource import net.pokeranalytics.android.ui.adapter.StaticRowRepresentableDataSource
import net.pokeranalytics.android.ui.fragment.GraphFragment
import net.pokeranalytics.android.ui.fragment.components.BaseFragment import net.pokeranalytics.android.ui.fragment.components.BaseFragment
import net.pokeranalytics.android.ui.view.RowRepresentable import net.pokeranalytics.android.ui.view.RowRepresentable
import net.pokeranalytics.android.ui.view.RowViewType import net.pokeranalytics.android.ui.view.RowViewType
import net.pokeranalytics.android.ui.view.rowrepresentable.CustomizableRowRepresentable import net.pokeranalytics.android.ui.view.rowrepresentable.CustomizableRowRepresentable
import net.pokeranalytics.android.ui.view.rowrepresentable.GraphRow import net.pokeranalytics.android.ui.view.rowrepresentable.GraphRow
import net.pokeranalytics.android.ui.view.rowrepresentable.StatDoubleRow import net.pokeranalytics.android.ui.view.rowrepresentable.StatDoubleRow
import net.pokeranalytics.android.ui.viewmodel.CalendarDetailsViewModel
import timber.log.Timber import timber.log.Timber
import java.util.* import java.util.*
import kotlin.collections.ArrayList import kotlin.collections.ArrayList
@ -146,10 +146,12 @@ class CalendarDetailsFragment : BaseFragment(), StaticRowRepresentableDataSource
val dataSet = row.dataSet val dataSet = row.dataSet
when (dataSet) { when (dataSet) {
is LineDataSet-> { is LineDataSet-> {
GraphActivity.newInstance(requireContext(), listOf(dataSet), null, GraphFragment.Style.LINE, title) GraphActivity.newInstance(requireContext(), listOf(dataSet), null,
GraphFragment.Style.LINE, title)
} }
is BarDataSet -> { is BarDataSet -> {
GraphActivity.newInstance(requireContext(), null, listOf(dataSet), GraphFragment.Style.BAR, title) GraphActivity.newInstance(requireContext(), null, listOf(dataSet),
GraphFragment.Style.BAR, title)
} }
} }
} }

@ -1,4 +1,4 @@
package net.pokeranalytics.android.ui.viewmodel package net.pokeranalytics.android.ui.modules.calendar
import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModel
import net.pokeranalytics.android.calculus.ComputedResults import net.pokeranalytics.android.calculus.ComputedResults

@ -1,4 +1,4 @@
package net.pokeranalytics.android.ui.fragment package net.pokeranalytics.android.ui.modules.calendar
import android.os.Bundle import android.os.Bundle
import android.view.LayoutInflater import android.view.LayoutInflater
@ -22,7 +22,6 @@ import net.pokeranalytics.android.model.Criteria
import net.pokeranalytics.android.model.combined import net.pokeranalytics.android.model.combined
import net.pokeranalytics.android.model.filter.QueryCondition import net.pokeranalytics.android.model.filter.QueryCondition
import net.pokeranalytics.android.model.realm.ComputableResult import net.pokeranalytics.android.model.realm.ComputableResult
import net.pokeranalytics.android.ui.activity.CalendarDetailsActivity
import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter
import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate
import net.pokeranalytics.android.ui.adapter.StaticRowRepresentableDataSource import net.pokeranalytics.android.ui.adapter.StaticRowRepresentableDataSource
@ -52,7 +51,8 @@ class CalendarFragment : RealmFragment(), CoroutineScope, StaticRowRepresentable
* Create new instance * Create new instance
*/ */
fun newInstance(): CalendarFragment { fun newInstance(): CalendarFragment {
val fragment = CalendarFragment() val fragment =
CalendarFragment()
val bundle = Bundle() val bundle = Bundle()
fragment.arguments = bundle fragment.arguments = bundle
return fragment return fragment
@ -71,7 +71,8 @@ class CalendarFragment : RealmFragment(), CoroutineScope, StaticRowRepresentable
private var datesForRows: HashMap<CustomizableRowRepresentable, Date> = HashMap() private var datesForRows: HashMap<CustomizableRowRepresentable, Date> = HashMap()
private var sessionTypeCondition: QueryCondition? = null private var sessionTypeCondition: QueryCondition? = null
private var currentTimeFilter: TimeFilter = TimeFilter.MONTH private var currentTimeFilter: TimeFilter =
TimeFilter.MONTH
private var currentStat = Stat.NET_RESULT private var currentStat = Stat.NET_RESULT
// Life Cycle // Life Cycle
@ -201,7 +202,8 @@ class CalendarFragment : RealmFragment(), CoroutineScope, StaticRowRepresentable
// Manage time queryWith // Manage time queryWith
filterTimeMonth.setOnCheckedChangeListener { _, isChecked -> filterTimeMonth.setOnCheckedChangeListener { _, isChecked ->
if (isChecked) { if (isChecked) {
currentTimeFilter = TimeFilter.MONTH currentTimeFilter =
TimeFilter.MONTH
filterTimeYear.isChecked = false filterTimeYear.isChecked = false
displayData() displayData()
} else if (currentTimeFilter == TimeFilter.MONTH) { } else if (currentTimeFilter == TimeFilter.MONTH) {
@ -211,7 +213,8 @@ class CalendarFragment : RealmFragment(), CoroutineScope, StaticRowRepresentable
} }
filterTimeYear.setOnCheckedChangeListener { _, isChecked -> filterTimeYear.setOnCheckedChangeListener { _, isChecked ->
if (isChecked) { if (isChecked) {
currentTimeFilter = TimeFilter.YEAR currentTimeFilter =
TimeFilter.YEAR
filterTimeMonth.isChecked = false filterTimeMonth.isChecked = false
displayData() displayData()
} else if (currentTimeFilter == TimeFilter.YEAR) { } else if (currentTimeFilter == TimeFilter.YEAR) {

@ -9,7 +9,7 @@ import net.pokeranalytics.android.R
import net.pokeranalytics.android.model.LiveData import net.pokeranalytics.android.model.LiveData
import net.pokeranalytics.android.ui.activity.components.BaseActivity import net.pokeranalytics.android.ui.activity.components.BaseActivity
import net.pokeranalytics.android.ui.activity.components.RequestCode import net.pokeranalytics.android.ui.activity.components.RequestCode
import net.pokeranalytics.android.ui.interfaces.FilterActivityRequestCode import net.pokeranalytics.android.ui.modules.filter.FilterActivityRequestCode
class DataListActivity : BaseActivity() { class DataListActivity : BaseActivity() {

@ -19,7 +19,7 @@ import net.pokeranalytics.android.model.interfaces.Deletable
import net.pokeranalytics.android.model.interfaces.Identifiable import net.pokeranalytics.android.model.interfaces.Identifiable
import net.pokeranalytics.android.model.realm.Filter import net.pokeranalytics.android.model.realm.Filter
import net.pokeranalytics.android.ui.activity.EditableDataActivity import net.pokeranalytics.android.ui.activity.EditableDataActivity
import net.pokeranalytics.android.ui.activity.FiltersActivity import net.pokeranalytics.android.ui.modules.filter.FiltersActivity
import net.pokeranalytics.android.ui.activity.components.RequestCode import net.pokeranalytics.android.ui.activity.components.RequestCode
import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter
import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate

@ -26,10 +26,12 @@ import net.pokeranalytics.android.ui.activity.*
import net.pokeranalytics.android.ui.activity.components.RequestCode import net.pokeranalytics.android.ui.activity.components.RequestCode
import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate
import net.pokeranalytics.android.ui.fragment.components.FilterableFragment import net.pokeranalytics.android.ui.fragment.components.FilterableFragment
import net.pokeranalytics.android.ui.interfaces.FilterActivityRequestCode import net.pokeranalytics.android.ui.modules.filter.FilterActivityRequestCode
import net.pokeranalytics.android.ui.interfaces.FilterableType import net.pokeranalytics.android.ui.modules.filter.FilterableType
import net.pokeranalytics.android.ui.modules.datalist.DataListActivity import net.pokeranalytics.android.ui.modules.datalist.DataListActivity
import net.pokeranalytics.android.ui.modules.filter.FiltersActivity
import net.pokeranalytics.android.ui.modules.handhistory.HandHistoryActivity import net.pokeranalytics.android.ui.modules.handhistory.HandHistoryActivity
import net.pokeranalytics.android.ui.modules.session.SessionActivity
import net.pokeranalytics.android.ui.view.RowRepresentable import net.pokeranalytics.android.ui.view.RowRepresentable
import net.pokeranalytics.android.ui.view.SmoothScrollLinearLayoutManager import net.pokeranalytics.android.ui.view.SmoothScrollLinearLayoutManager
import net.pokeranalytics.android.util.Preferences import net.pokeranalytics.android.util.Preferences

@ -1,13 +1,11 @@
package net.pokeranalytics.android.ui.activity package net.pokeranalytics.android.ui.modules.filter
import android.content.Context import android.content.Context
import android.content.Intent import android.content.Intent
import android.os.Bundle import android.os.Bundle
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import net.pokeranalytics.android.R import net.pokeranalytics.android.R
import net.pokeranalytics.android.model.realm.Filter
import net.pokeranalytics.android.ui.activity.components.BaseActivity import net.pokeranalytics.android.ui.activity.components.BaseActivity
import net.pokeranalytics.android.ui.fragment.FilterDetailsFragment
class FilterDetailsActivity : BaseActivity() { class FilterDetailsActivity : BaseActivity() {
@ -62,7 +60,8 @@ class FilterDetailsActivity : BaseActivity() {
val filterId = intent.getStringExtra(IntentKey.FILTER_ID.keyName) val filterId = intent.getStringExtra(IntentKey.FILTER_ID.keyName)
val filterCategoryOrdinal = intent.getIntExtra(IntentKey.FILTER_CATEGORY_ORDINAL.keyName, 0) val filterCategoryOrdinal = intent.getIntExtra(IntentKey.FILTER_CATEGORY_ORDINAL.keyName, 0)
fragment = FilterDetailsFragment() fragment =
FilterDetailsFragment()
fragmentTransaction.add(R.id.container, fragment) fragmentTransaction.add(R.id.container, fragment)
fragmentTransaction.commit() fragmentTransaction.commit()
fragment.setData(filterId, filterCategoryOrdinal) fragment.setData(filterId, filterCategoryOrdinal)

@ -1,4 +1,4 @@
package net.pokeranalytics.android.ui.fragment package net.pokeranalytics.android.ui.modules.filter
import android.app.Activity.RESULT_OK import android.app.Activity.RESULT_OK
import android.content.Context import android.content.Context
@ -13,7 +13,6 @@ import kotlinx.android.synthetic.main.fragment_filter_details.view.*
import net.pokeranalytics.android.R import net.pokeranalytics.android.R
import net.pokeranalytics.android.model.filter.QueryCondition import net.pokeranalytics.android.model.filter.QueryCondition
import net.pokeranalytics.android.model.realm.Filter import net.pokeranalytics.android.model.realm.Filter
import net.pokeranalytics.android.ui.activity.FilterDetailsActivity
import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter
import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate
import net.pokeranalytics.android.ui.adapter.StaticRowRepresentableDataSource import net.pokeranalytics.android.ui.adapter.StaticRowRepresentableDataSource

@ -1,4 +1,4 @@
package net.pokeranalytics.android.ui.interfaces package net.pokeranalytics.android.ui.modules.filter
import android.content.Context import android.content.Context
import android.content.Intent import android.content.Intent
@ -6,7 +6,6 @@ import androidx.fragment.app.Fragment
import io.realm.Realm import io.realm.Realm
import io.realm.kotlin.where import io.realm.kotlin.where
import net.pokeranalytics.android.model.realm.Filter import net.pokeranalytics.android.model.realm.Filter
import net.pokeranalytics.android.ui.activity.FiltersActivity
import net.pokeranalytics.android.util.Preferences import net.pokeranalytics.android.util.Preferences
import net.pokeranalytics.android.util.enumerations.IntIdentifiable import net.pokeranalytics.android.util.enumerations.IntIdentifiable
import net.pokeranalytics.android.util.enumerations.IntSearchable import net.pokeranalytics.android.util.enumerations.IntSearchable
@ -56,7 +55,8 @@ interface FilterHandler {
// Send broadcast // Send broadcast
val intent = Intent() val intent = Intent()
intent.action = INTENT_FILTER_UPDATE_FILTER_UI intent.action =
INTENT_FILTER_UPDATE_FILTER_UI
context.sendBroadcast(intent) context.sendBroadcast(intent)
} }

@ -1,4 +1,4 @@
package net.pokeranalytics.android.ui.activity package net.pokeranalytics.android.ui.modules.filter
import android.content.Context import android.content.Context
import android.content.Intent import android.content.Intent
@ -6,9 +6,6 @@ import android.os.Bundle
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import net.pokeranalytics.android.R import net.pokeranalytics.android.R
import net.pokeranalytics.android.ui.activity.components.BaseActivity import net.pokeranalytics.android.ui.activity.components.BaseActivity
import net.pokeranalytics.android.ui.fragment.FiltersFragment
import net.pokeranalytics.android.ui.interfaces.FilterActivityRequestCode
import net.pokeranalytics.android.ui.interfaces.FilterableType
class FiltersActivity : BaseActivity() { class FiltersActivity : BaseActivity() {
@ -26,7 +23,13 @@ class FiltersActivity : BaseActivity() {
* Create a new instance for result * Create a new instance for result
*/ */
fun newInstanceForResult(fragment: Fragment, filterId: String? = null, currentFilterable: FilterableType, hideMostUsedFilters: Boolean = false) { fun newInstanceForResult(fragment: Fragment, filterId: String? = null, currentFilterable: FilterableType, hideMostUsedFilters: Boolean = false) {
val intent = getIntent(fragment.requireContext(), filterId, currentFilterable, hideMostUsedFilters) val intent =
getIntent(
fragment.requireContext(),
filterId,
currentFilterable,
hideMostUsedFilters
)
fragment.startActivityForResult(intent, FilterActivityRequestCode.CREATE_FILTER.ordinal) fragment.startActivityForResult(intent, FilterActivityRequestCode.CREATE_FILTER.ordinal)
} }

@ -1,4 +1,4 @@
package net.pokeranalytics.android.ui.fragment package net.pokeranalytics.android.ui.modules.filter
import android.app.Activity.RESULT_OK import android.app.Activity.RESULT_OK
import android.content.Context import android.content.Context
@ -16,16 +16,11 @@ import net.pokeranalytics.android.R
import net.pokeranalytics.android.exceptions.PAIllegalStateException import net.pokeranalytics.android.exceptions.PAIllegalStateException
import net.pokeranalytics.android.model.LiveData import net.pokeranalytics.android.model.LiveData
import net.pokeranalytics.android.model.realm.Filter import net.pokeranalytics.android.model.realm.Filter
import net.pokeranalytics.android.ui.activity.FilterDetailsActivity
import net.pokeranalytics.android.ui.activity.FiltersActivity
import net.pokeranalytics.android.ui.activity.FiltersListActivity
import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter
import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate
import net.pokeranalytics.android.ui.adapter.StaticRowRepresentableDataSource import net.pokeranalytics.android.ui.adapter.StaticRowRepresentableDataSource
import net.pokeranalytics.android.ui.extensions.px import net.pokeranalytics.android.ui.extensions.px
import net.pokeranalytics.android.ui.fragment.components.RealmFragment import net.pokeranalytics.android.ui.fragment.components.RealmFragment
import net.pokeranalytics.android.ui.interfaces.FilterActivityRequestCode
import net.pokeranalytics.android.ui.interfaces.FilterableType
import net.pokeranalytics.android.ui.view.RowRepresentable import net.pokeranalytics.android.ui.view.RowRepresentable
import net.pokeranalytics.android.ui.view.rowrepresentable.FilterCategoryRow import net.pokeranalytics.android.ui.view.rowrepresentable.FilterCategoryRow
import net.pokeranalytics.android.util.Preferences import net.pokeranalytics.android.util.Preferences
@ -153,7 +148,9 @@ open class FiltersFragment : RealmFragment(), StaticRowRepresentableDataSource,
super.onRowSelected(position, row, tag) super.onRowSelected(position, row, tag)
selectedRow = row selectedRow = row
currentFilter?.id?.let { filterId -> currentFilter?.id?.let { filterId ->
FilterDetailsActivity.newInstanceForResult(this, filterId, (row as FilterCategoryRow).ordinal, REQUEST_CODE_FILTER_DETAILS) FilterDetailsActivity.newInstanceForResult(this, filterId, (row as FilterCategoryRow).ordinal,
REQUEST_CODE_FILTER_DETAILS
)
} }
} }

@ -1,4 +1,4 @@
package net.pokeranalytics.android.ui.activity package net.pokeranalytics.android.ui.modules.filter
import android.content.Context import android.content.Context
import android.content.Intent import android.content.Intent
@ -8,7 +8,6 @@ import androidx.lifecycle.ViewModelProviders
import net.pokeranalytics.android.R import net.pokeranalytics.android.R
import net.pokeranalytics.android.model.LiveData import net.pokeranalytics.android.model.LiveData
import net.pokeranalytics.android.ui.activity.components.BaseActivity import net.pokeranalytics.android.ui.activity.components.BaseActivity
import net.pokeranalytics.android.ui.interfaces.FilterActivityRequestCode
import net.pokeranalytics.android.ui.modules.datalist.DataListViewModel import net.pokeranalytics.android.ui.modules.datalist.DataListViewModel
class FiltersListActivity : BaseActivity() { class FiltersListActivity : BaseActivity() {
@ -26,12 +25,22 @@ class FiltersListActivity : BaseActivity() {
companion object { companion object {
fun newInstance(context: Context, dataType: Int) { fun newInstance(context: Context, dataType: Int) {
context.startActivity(getIntent(context, dataType)) context.startActivity(
getIntent(
context,
dataType
)
)
} }
fun newSelectInstance(fragment: Fragment, dataType: Int, showAddButton: Boolean = true) { fun newSelectInstance(fragment: Fragment, dataType: Int, showAddButton: Boolean = true) {
val context = fragment.requireContext() val context = fragment.requireContext()
fragment.startActivityForResult(getIntent(context, dataType, showAddButton), FilterActivityRequestCode.SELECT_FILTER.ordinal) fragment.startActivityForResult(
getIntent(
context,
dataType,
showAddButton
), FilterActivityRequestCode.SELECT_FILTER.ordinal)
} }
private fun getIntent(context: Context, dataType: Int, showAddButton: Boolean = true): Intent { private fun getIntent(context: Context, dataType: Int, showAddButton: Boolean = true): Intent {

@ -1,12 +1,11 @@
package net.pokeranalytics.android.ui.fragment package net.pokeranalytics.android.ui.modules.filter
import android.app.Activity import android.app.Activity
import android.content.Context import android.content.Context
import android.content.Intent import android.content.Intent
import net.pokeranalytics.android.model.realm.Filter import net.pokeranalytics.android.model.realm.Filter
import net.pokeranalytics.android.ui.activity.FiltersActivity
import net.pokeranalytics.android.ui.fragment.components.bottomsheet.BottomSheetFragment import net.pokeranalytics.android.ui.fragment.components.bottomsheet.BottomSheetFragment
import net.pokeranalytics.android.ui.interfaces.FilterHandler.Companion.INTENT_FILTER_UPDATE_FILTER_UI import net.pokeranalytics.android.ui.modules.filter.FilterHandler.Companion.INTENT_FILTER_UPDATE_FILTER_UI
import net.pokeranalytics.android.ui.modules.datalist.DataListFragment import net.pokeranalytics.android.ui.modules.datalist.DataListFragment
import net.pokeranalytics.android.ui.view.RowRepresentable import net.pokeranalytics.android.ui.view.RowRepresentable
import net.pokeranalytics.android.util.Preferences import net.pokeranalytics.android.util.Preferences

@ -1,4 +1,4 @@
package net.pokeranalytics.android.ui.activity package net.pokeranalytics.android.ui.modules.session
import android.app.Activity import android.app.Activity
import android.content.Context import android.content.Context
@ -8,8 +8,6 @@ import androidx.fragment.app.Fragment
import androidx.lifecycle.ViewModelProviders import androidx.lifecycle.ViewModelProviders
import net.pokeranalytics.android.R import net.pokeranalytics.android.R
import net.pokeranalytics.android.ui.activity.components.BaseActivity import net.pokeranalytics.android.ui.activity.components.BaseActivity
import net.pokeranalytics.android.ui.fragment.SessionFragment
import net.pokeranalytics.android.ui.viewmodel.SessionViewModel
class SessionActivity: BaseActivity() { class SessionActivity: BaseActivity() {
@ -28,12 +26,24 @@ class SessionActivity: BaseActivity() {
companion object { companion object {
fun newInstance(context: Context, isTournament: Boolean? = false, sessionId: String? = "", duplicate: Boolean = false) { fun newInstance(context: Context, isTournament: Boolean? = false, sessionId: String? = "", duplicate: Boolean = false) {
val intent = this.intent(context, isTournament, sessionId, duplicate) val intent =
intent(
context,
isTournament,
sessionId,
duplicate
)
context.startActivity(intent) context.startActivity(intent)
} }
fun newInstanceForResult(fragment: Fragment, isTournament: Boolean? = false, sessionId: String? = "", duplicate: Boolean = false, requestCode: Int) { fun newInstanceForResult(fragment: Fragment, isTournament: Boolean? = false, sessionId: String? = "", duplicate: Boolean = false, requestCode: Int) {
val intent = this.intent(fragment.requireContext(), isTournament, sessionId, duplicate) val intent =
intent(
fragment.requireContext(),
isTournament,
sessionId,
duplicate
)
fragment.startActivityForResult(intent, requestCode) fragment.startActivityForResult(intent, requestCode)
} }
@ -76,7 +86,8 @@ class SessionActivity: BaseActivity() {
private fun initUI() { private fun initUI() {
val fragmentTransaction = supportFragmentManager.beginTransaction() val fragmentTransaction = supportFragmentManager.beginTransaction()
val fragment = SessionFragment() val fragment =
SessionFragment()
fragmentTransaction.add(R.id.container, fragment) fragmentTransaction.add(R.id.container, fragment)
fragmentTransaction.commit() fragmentTransaction.commit()

@ -1,4 +1,4 @@
package net.pokeranalytics.android.ui.fragment package net.pokeranalytics.android.ui.modules.session
import android.os.Bundle import android.os.Bundle
import android.os.Handler import android.os.Handler
@ -33,7 +33,6 @@ import net.pokeranalytics.android.ui.view.RowRepresentable
import net.pokeranalytics.android.ui.view.RowRepresentableDiffCallback import net.pokeranalytics.android.ui.view.RowRepresentableDiffCallback
import net.pokeranalytics.android.ui.view.SmoothScrollLinearLayoutManager import net.pokeranalytics.android.ui.view.SmoothScrollLinearLayoutManager
import net.pokeranalytics.android.ui.view.rowrepresentable.SessionRow import net.pokeranalytics.android.ui.view.rowrepresentable.SessionRow
import net.pokeranalytics.android.ui.viewmodel.SessionViewModel
import net.pokeranalytics.android.util.extensions.findById import net.pokeranalytics.android.util.extensions.findById
import net.pokeranalytics.android.util.extensions.getNextMinuteInMilliseconds import net.pokeranalytics.android.util.extensions.getNextMinuteInMilliseconds
import java.util.* import java.util.*
@ -59,7 +58,9 @@ class SessionFragment : RealmFragment(), RowRepresentableDelegate {
private val refreshTimer: Runnable = object : Runnable { private val refreshTimer: Runnable = object : Runnable {
override fun run() { override fun run() {
refreshTimer() refreshTimer()
handler.postDelayed(this, TIMER_DELAY) handler.postDelayed(this,
TIMER_DELAY
)
} }
} }

@ -1,4 +1,4 @@
package net.pokeranalytics.android.ui.viewmodel package net.pokeranalytics.android.ui.modules.session
import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModel

@ -3,7 +3,7 @@ package net.pokeranalytics.android.ui.view.rowrepresentable
import io.realm.Realm import io.realm.Realm
import net.pokeranalytics.android.R import net.pokeranalytics.android.R
import net.pokeranalytics.android.model.realm.CustomField import net.pokeranalytics.android.model.realm.CustomField
import net.pokeranalytics.android.ui.interfaces.FilterableType import net.pokeranalytics.android.ui.modules.filter.FilterableType
import net.pokeranalytics.android.ui.view.RowRepresentable import net.pokeranalytics.android.ui.view.RowRepresentable
import net.pokeranalytics.android.ui.view.RowViewType import net.pokeranalytics.android.ui.view.RowViewType
import net.pokeranalytics.android.ui.view.rowrepresentable.FilterSectionRow.* import net.pokeranalytics.android.ui.view.rowrepresentable.FilterSectionRow.*
@ -26,7 +26,7 @@ enum class FilterCategoryRow(override val resId: Int?, override val viewType: In
; ;
companion object { companion object {
fun values(filterableType:FilterableType): ArrayList<FilterCategoryRow> { fun values(filterableType: FilterableType): ArrayList<FilterCategoryRow> {
val list = arrayListOf<FilterCategoryRow>() val list = arrayListOf<FilterCategoryRow>()
for (category in values()) { for (category in values()) {
if (category.isAllowed(filterableType)) { if (category.isAllowed(filterableType)) {
@ -37,7 +37,7 @@ enum class FilterCategoryRow(override val resId: Int?, override val viewType: In
} }
} }
fun isAllowed(filterableType:FilterableType): Boolean { fun isAllowed(filterableType: FilterableType): Boolean {
return when (filterableType) { return when (filterableType) {
FilterableType.SESSION -> { FilterableType.SESSION -> {
when (this) { when (this) {

@ -7,7 +7,7 @@
<fragment <fragment
android:id="@+id/calendarDetailsFragment" android:id="@+id/calendarDetailsFragment"
android:name="net.pokeranalytics.android.ui.fragment.CalendarDetailsFragment" android:name="net.pokeranalytics.android.ui.modules.calendar.CalendarDetailsFragment"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
tools:layout="@layout/fragment_progress_report" /> tools:layout="@layout/fragment_progress_report" />

@ -7,7 +7,7 @@
<fragment <fragment
android:id="@+id/filtersListFragment" android:id="@+id/filtersListFragment"
android:name="net.pokeranalytics.android.ui.fragment.FiltersListFragment" android:name="net.pokeranalytics.android.ui.modules.filter.FiltersListFragment"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
tools:layout="@layout/fragment_data_list" /> tools:layout="@layout/fragment_data_list" />

@ -14,7 +14,7 @@
<!-- <fragment--> <!-- <fragment-->
<!-- android:id="@+id/sessionFragment"--> <!-- android:id="@+id/sessionFragment"-->
<!-- android:name="net.pokeranalytics.android.ui.fragment.SessionFragment"--> <!-- android:name="net.pokeranalytics.android.ui.modules.session.SessionFragment"-->
<!-- android:layout_width="match_parent"--> <!-- android:layout_width="match_parent"-->
<!-- android:layout_height="match_parent"--> <!-- android:layout_height="match_parent"-->
<!-- tools:layout="@layout/fragment_session" />--> <!-- tools:layout="@layout/fragment_session" />-->

Loading…
Cancel
Save