Fix crashes due to binding introduction

split
Laurent 5 years ago
parent e05d0671e6
commit 765fbf8d53
  1. 2
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetDoubleEditTextFragment.kt
  2. 2
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetEditTextFragment.kt
  3. 2
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetEditTextMultiLinesFragment.kt
  4. 4
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetFragment.kt
  5. 2
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetListFragment.kt
  6. 2
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetListGameFragment.kt
  7. 2
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetMultiSelectionFragment.kt
  8. 2
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetNumericTextFragment.kt
  9. 2
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetStaticListFragment.kt
  10. 2
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetSumFragment.kt
  11. 2
      app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetTableSizeGridFragment.kt
  12. 4
      app/src/main/java/net/pokeranalytics/android/ui/modules/feed/FeedSessionRowRepresentableAdapter.kt
  13. 4
      app/src/main/java/net/pokeranalytics/android/ui/modules/filter/FiltersActivity.kt
  14. 25
      app/src/main/java/net/pokeranalytics/android/ui/modules/filter/FiltersFragment.kt
  15. 2
      app/src/main/java/net/pokeranalytics/android/ui/view/SessionRowView.kt

@ -17,7 +17,7 @@ class BottomSheetDoubleEditTextFragment : BottomSheetFragment() {
private var _binding: BottomSheetDoubleEditTextBinding? = null private var _binding: BottomSheetDoubleEditTextBinding? = null
private val binding get() = _binding!! private val binding get() = _binding!!
override fun getChildView(inflater: LayoutInflater, container: ViewGroup): View? { override fun addChildView(inflater: LayoutInflater, container: ViewGroup): View? {
_binding = BottomSheetDoubleEditTextBinding.inflate(inflater, container, true) _binding = BottomSheetDoubleEditTextBinding.inflate(inflater, container, true)
return binding.root return binding.root
} }

@ -16,7 +16,7 @@ class BottomSheetEditTextFragment : BottomSheetFragment() {
private var _binding: BottomSheetEditTextBinding? = null private var _binding: BottomSheetEditTextBinding? = null
private val binding get() = _binding!! private val binding get() = _binding!!
override fun getChildView(inflater: LayoutInflater, container: ViewGroup): View? { override fun addChildView(inflater: LayoutInflater, container: ViewGroup): View? {
_binding = BottomSheetEditTextBinding.inflate(inflater, container, true) _binding = BottomSheetEditTextBinding.inflate(inflater, container, true)
return binding.root return binding.root
} }

@ -15,7 +15,7 @@ class BottomSheetEditTextMultiLinesFragment : BottomSheetFragment() {
private var _binding: BottomSheetEditTextMultiLinesBinding? = null private var _binding: BottomSheetEditTextMultiLinesBinding? = null
private val binding get() = _binding!! private val binding get() = _binding!!
override fun getChildView(inflater: LayoutInflater, container: ViewGroup): View? { override fun addChildView(inflater: LayoutInflater, container: ViewGroup): View? {
_binding = BottomSheetEditTextMultiLinesBinding.inflate(inflater, container, true) _binding = BottomSheetEditTextMultiLinesBinding.inflate(inflater, container, true)
return binding.root return binding.root
} }

@ -95,11 +95,11 @@ open class BottomSheetFragment : BottomSheetDialogFragment() {
//TODO: When dependency 'com.google.android.material:material:1.1.0' will be available in stable version, upgrade and remove that //TODO: When dependency 'com.google.android.material:material:1.1.0' will be available in stable version, upgrade and remove that
activity?.setTheme(R.style.PokerAnalyticsTheme) activity?.setTheme(R.style.PokerAnalyticsTheme)
_binding = FragmentBottomSheetBinding.inflate(inflater, container, false) _binding = FragmentBottomSheetBinding.inflate(inflater, container, false)
binding.bottomSheetContainer.addView(getChildView(inflater, binding.root)) addChildView(inflater, binding.root)
return binding.root return binding.root
} }
open fun getChildView(inflater: LayoutInflater, container: ViewGroup): View? { open fun addChildView(inflater: LayoutInflater, container: ViewGroup): View? {
return null return null
} }

@ -18,7 +18,7 @@ open class BottomSheetListFragment : BottomSheetFragment(), LiveRowRepresentable
private var _binding: BottomSheetListBinding? = null private var _binding: BottomSheetListBinding? = null
private val binding get() = _binding!! private val binding get() = _binding!!
override fun getChildView(inflater: LayoutInflater, container: ViewGroup): View? { override fun addChildView(inflater: LayoutInflater, container: ViewGroup): View? {
_binding = BottomSheetListBinding.inflate(inflater, container, true) _binding = BottomSheetListBinding.inflate(inflater, container, true)
return binding.root return binding.root
} }

@ -22,7 +22,7 @@ class BottomSheetListGameFragment : BottomSheetListFragment() {
private var _binding: BottomSheetGameListBinding? = null private var _binding: BottomSheetGameListBinding? = null
private val binding get() = _binding!! private val binding get() = _binding!!
override fun getChildView(inflater: LayoutInflater, container: ViewGroup): View? { override fun addChildView(inflater: LayoutInflater, container: ViewGroup): View? {
_binding = BottomSheetGameListBinding.inflate(inflater, container, true) _binding = BottomSheetGameListBinding.inflate(inflater, container, true)
return binding.root return binding.root
} }

@ -21,7 +21,7 @@ open class BottomSheetMultiSelectionFragment : BottomSheetListFragment() {
private var _binding: BottomSheetDoubleEditTextBinding? = null private var _binding: BottomSheetDoubleEditTextBinding? = null
private val binding get() = _binding!! private val binding get() = _binding!!
override fun getChildView(inflater: LayoutInflater, container: ViewGroup): View? { override fun addChildView(inflater: LayoutInflater, container: ViewGroup): View? {
_binding = BottomSheetDoubleEditTextBinding.inflate(inflater, container, true) _binding = BottomSheetDoubleEditTextBinding.inflate(inflater, container, true)
return binding.root return binding.root
} }

@ -17,7 +17,7 @@ class BottomSheetNumericTextFragment : BottomSheetFragment() {
private var _binding: BottomSheetEditTextBinding? = null private var _binding: BottomSheetEditTextBinding? = null
private val binding get() = _binding!! private val binding get() = _binding!!
override fun getChildView(inflater: LayoutInflater, container: ViewGroup): View? { override fun addChildView(inflater: LayoutInflater, container: ViewGroup): View? {
_binding = BottomSheetEditTextBinding.inflate(inflater, container, true) _binding = BottomSheetEditTextBinding.inflate(inflater, container, true)
return binding.root return binding.root
} }

@ -17,7 +17,7 @@ class BottomSheetStaticListFragment : BottomSheetFragment(), StaticRowRepresenta
private var _binding: BottomSheetListBinding? = null private var _binding: BottomSheetListBinding? = null
private val binding get() = _binding!! private val binding get() = _binding!!
override fun getChildView(inflater: LayoutInflater, container: ViewGroup): View? { override fun addChildView(inflater: LayoutInflater, container: ViewGroup): View? {
_binding = BottomSheetListBinding.inflate(inflater, container, true) _binding = BottomSheetListBinding.inflate(inflater, container, true)
return binding.root return binding.root
} }

@ -19,7 +19,7 @@ class BottomSheetSumFragment : BottomSheetFragment() {
private var _binding: BottomSheetSumBinding? = null private var _binding: BottomSheetSumBinding? = null
private val binding get() = _binding!! private val binding get() = _binding!!
override fun getChildView(inflater: LayoutInflater, container: ViewGroup): View? { override fun addChildView(inflater: LayoutInflater, container: ViewGroup): View? {
_binding = BottomSheetSumBinding.inflate(inflater, container, true) _binding = BottomSheetSumBinding.inflate(inflater, container, true)
return binding.root return binding.root
} }

@ -19,7 +19,7 @@ class BottomSheetTableSizeGridFragment : BottomSheetFragment(), StaticRowReprese
private var _binding: BottomSheetGridBinding? = null private var _binding: BottomSheetGridBinding? = null
private val binding get() = _binding!! private val binding get() = _binding!!
override fun getChildView(inflater: LayoutInflater, container: ViewGroup): View? { override fun addChildView(inflater: LayoutInflater, container: ViewGroup): View? {
_binding = BottomSheetGridBinding.inflate(inflater, container, true) _binding = BottomSheetGridBinding.inflate(inflater, container, true)
return binding.root return binding.root
} }

@ -108,10 +108,10 @@ class FeedSessionRowRepresentableAdapter(
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder { override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder {
return if (viewType == RowViewType.ROW_SESSION.ordinal) { return if (viewType == RowViewType.ROW_SESSION.ordinal) {
val layout = LayoutInflater.from(parent.context).inflate(net.pokeranalytics.android.R.layout.row_feed_session, parent, false) val layout = LayoutInflater.from(parent.context).inflate(R.layout.row_feed_session, parent, false)
RowSessionViewHolder(layout) RowSessionViewHolder(layout)
} else { } else {
val layout = LayoutInflater.from(parent.context).inflate(net.pokeranalytics.android.R.layout.row_header_title, parent, false) val layout = LayoutInflater.from(parent.context).inflate(R.layout.row_header_title, parent, false)
HeaderTitleViewHolder(layout) HeaderTitleViewHolder(layout)
} }
} }

@ -6,7 +6,6 @@ import android.os.Bundle
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import androidx.lifecycle.ViewModelProvider import androidx.lifecycle.ViewModelProvider
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.components.BaseFragment import net.pokeranalytics.android.ui.fragment.components.BaseFragment
import net.pokeranalytics.android.ui.view.rowrepresentable.FilterCategoryRow import net.pokeranalytics.android.ui.view.rowrepresentable.FilterCategoryRow
@ -89,12 +88,11 @@ class FiltersActivity : BaseActivity() {
this.model.primaryKey = filterId this.model.primaryKey = filterId
this.model.filterableType = FilterableType.valueByIdentifier(uniqueIdentifier) this.model.filterableType = FilterableType.valueByIdentifier(uniqueIdentifier)
val filtersFragment = FiltersFragment() val filtersFragment = FiltersFragment.newInstance(!hideMostUsedFilters)
val fragmentTransaction = this.supportFragmentManager.beginTransaction() val fragmentTransaction = this.supportFragmentManager.beginTransaction()
fragmentTransaction.add(R.id.container, filtersFragment, Tag.CATEGORIES.identifier) fragmentTransaction.add(R.id.container, filtersFragment, Tag.CATEGORIES.identifier)
fragmentTransaction.commit() fragmentTransaction.commit()
filtersFragment.updateMostUsedFiltersVisibility(!hideMostUsedFilters)
} }

@ -21,8 +21,6 @@ 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
import net.pokeranalytics.android.util.extensions.sorted import net.pokeranalytics.android.util.extensions.sorted
import timber.log.Timber
open class FiltersFragment : RealmFragment(), RowRepresentableDelegate { open class FiltersFragment : RealmFragment(), RowRepresentableDelegate {
@ -33,14 +31,23 @@ open class FiltersFragment : RealmFragment(), RowRepresentableDelegate {
companion object { companion object {
const val REQUEST_CODE_FILTER_DETAILS = 100 const val REQUEST_CODE_FILTER_DETAILS = 100
const val MOST_USED_FILTERS_DISPLAYED = 6 const val MOST_USED_FILTERS_DISPLAYED = 6
private const val MOST_USED_FILTERS_DISPLAYED_KEY = "most_used_filters_displayed"
fun newInstance(showMostUsedFiltersLayout: Boolean): FiltersFragment {
val fragment = FiltersFragment()
val bundle = Bundle()
bundle.putBoolean(MOST_USED_FILTERS_DISPLAYED_KEY, showMostUsedFiltersLayout)
fragment.arguments = bundle
return fragment
}
} }
private lateinit var rowRepresentableAdapter: RowRepresentableAdapter private lateinit var rowRepresentableAdapter: RowRepresentableAdapter
private var filterMenu: Menu? = null private var filterMenu: Menu? = null
private var showMostUsedFiltersLayout = true
private var _binding: FragmentFiltersBinding? = null private var _binding: FragmentFiltersBinding? = null
private val binding get() = _binding!! private val binding get() = _binding!!
@ -128,6 +135,7 @@ open class FiltersFragment : RealmFragment(), RowRepresentableDelegate {
FiltersListActivity.newSelectInstance(this, false) FiltersListActivity.newSelectInstance(this, false)
} }
val showMostUsedFiltersLayout = this.arguments?.getBoolean(MOST_USED_FILTERS_DISPLAYED_KEY, true) ?: true
this.binding.mostUsedFiltersLayout.isVisible = showMostUsedFiltersLayout this.binding.mostUsedFiltersLayout.isVisible = showMostUsedFiltersLayout
} }
@ -249,13 +257,4 @@ open class FiltersFragment : RealmFragment(), RowRepresentableDelegate {
activity?.finish() activity?.finish()
} }
/**
* Update the most used filters visibility
*/
fun updateMostUsedFiltersVisibility(visible: Boolean) {
Timber.d("updateMostUsedFiltersVisibility: $visible")
showMostUsedFiltersLayout = visible
this.binding.mostUsedFiltersLayout.isVisible = visible
}
} }

@ -73,7 +73,7 @@ class SessionRowView : FrameLayout {
this.sessionInfoLocationIcon = rowSession.findViewById(R.id.sessionInfoLocationIcon) this.sessionInfoLocationIcon = rowSession.findViewById(R.id.sessionInfoLocationIcon)
this.sessionInfoLocationValue = rowSession.findViewById(R.id.sessionInfoLocationValue) this.sessionInfoLocationValue = rowSession.findViewById(R.id.sessionInfoLocationValue)
this.sessionInfoTableIcon = rowSession.findViewById(R.id.sessionInfoTableIcon) this.sessionInfoTableIcon = rowSession.findViewById(R.id.sessionInfoTableIcon)
this.sessionInfoTableValue = sessionInfoTableValue.findViewById(R.id.dateDay) this.sessionInfoTableValue = rowSession.findViewById(R.id.sessionInfoTableValue)
this.gameResult = rowSession.findViewById(R.id.gameResult) this.gameResult = rowSession.findViewById(R.id.gameResult)
this.infoIcon = rowSession.findViewById(R.id.infoIcon) this.infoIcon = rowSession.findViewById(R.id.infoIcon)
this.infoTitle = rowSession.findViewById(R.id.infoTitle) this.infoTitle = rowSession.findViewById(R.id.infoTitle)

Loading…
Cancel
Save