diff --git a/app/src/main/java/net/pokeranalytics/android/ui/modules/datalist/DataListActivity.kt b/app/src/main/java/net/pokeranalytics/android/ui/modules/datalist/DataListActivity.kt index 71b4463a..e02c17fe 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/modules/datalist/DataListActivity.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/modules/datalist/DataListActivity.kt @@ -101,10 +101,12 @@ class DataListActivity : BaseActivity() { val dataListFragment = DataListFragment() - val fragment = if (dialog) { + if (dialog) { val dataSelectionDialogFragment = DataSelectionDialogFragment() showFragment(dataSelectionDialogFragment, R.id.container) - dataSelectionDialogFragment.showFragment(dataListFragment) + dataSelectionDialogFragment.showFragment(dataListFragment, supportFragmentManager) + +// dataSelectionDialogFragment.show(supportFragmentManager, "alert") } else { showFragment(dataListFragment, R.id.container) } diff --git a/app/src/main/java/net/pokeranalytics/android/ui/modules/datalist/DataSelectionDialogFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/modules/datalist/DataSelectionDialogFragment.kt index 3465a2e3..cf5e8bd3 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/modules/datalist/DataSelectionDialogFragment.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/modules/datalist/DataSelectionDialogFragment.kt @@ -6,14 +6,11 @@ import android.view.View import android.view.ViewGroup import androidx.fragment.app.DialogFragment import androidx.fragment.app.Fragment +import androidx.fragment.app.FragmentManager import net.pokeranalytics.android.R -class DataSelectionDialogFragment : DialogFragment() { - private enum class BundleKey(var value: String) { - DATA_TYPE("data_type"), - ITEM_IDS("item_ids") - } +class DataSelectionDialogFragment : DialogFragment() { companion object { @@ -33,26 +30,37 @@ class DataSelectionDialogFragment : DialogFragment() { return inflater.inflate(R.layout.fragment_data_selection_dialog, container, false) } +// override fun onResume() { +// super.onResume() +// +// val params: ViewGroup.LayoutParams = dialog.window.attributes +// params.width = ViewGroup.LayoutParams.MATCH_PARENT +// params.height = ViewGroup.LayoutParams.MATCH_PARENT +// dialog.window.attributes = params as WindowManager.LayoutParams +// } + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) -// initDataListFragment() + initDataListFragment() } -// private fun initDataListFragment() { -//// -//// val dataListFragment = -//// DataListFragment() + private fun initDataListFragment() { + + val dataListFragment = DataListFragment() + this.showFragment(dataListFragment, childFragmentManager) + //// val dataType = this.arguments?.getInt(BundleKey.DATA_TYPE.value) ?: throw PAIllegalStateException("undefined datatype") //// val itemIds = this.arguments?.getStringArray(BundleKey.ITEM_IDS.value) //// dataListFragment.setData(dataType, itemIds) //// //// showFragment(dataListFragment) //// -//// } +// } + } - fun showFragment(fragment: Fragment) { - val fragmentTransaction = requireFragmentManager().beginTransaction() - fragmentTransaction.replace(R.id.container, fragment) + fun showFragment(fragment: Fragment, fragmentManager: FragmentManager) { + val fragmentTransaction = fragmentManager.beginTransaction() + fragmentTransaction.replace(R.id.frame_container, fragment) fragmentTransaction.commit() } diff --git a/app/src/main/java/net/pokeranalytics/android/ui/modules/handhistory/HandHistoryAdapter.kt b/app/src/main/java/net/pokeranalytics/android/ui/modules/handhistory/HandHistoryAdapter.kt index 71e6ffe6..9c31f1f3 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/modules/handhistory/HandHistoryAdapter.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/modules/handhistory/HandHistoryAdapter.kt @@ -278,7 +278,7 @@ class HandHistoryAdapter( } layout.setOnClickListener { - delegate?.onRowSelected(this.currentPosition, row) + delegate?.onRowSelected(this.currentPosition, row, layout.tag as Int) } } @@ -505,6 +505,7 @@ class HandHistoryAdapter( init { itemView.playerImage.tag = PlayerSetupRow.Tag.PLAYER.ordinal + itemView.ps_hand_layout.tag = PlayerSetupRow.Tag.HAND.ordinal // itemView.ps_player_button.pointerIcon = // itemView.ps_player_button.ti = itemView.resources.getDrawable(R.drawable.circle, null) diff --git a/app/src/main/java/net/pokeranalytics/android/ui/modules/handhistory/HandHistoryFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/modules/handhistory/HandHistoryFragment.kt index 36440d2b..5fedae9b 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/modules/handhistory/HandHistoryFragment.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/modules/handhistory/HandHistoryFragment.kt @@ -138,10 +138,12 @@ class HandHistoryFragment : RealmFragment(), RowRepresentableDelegate, KeyboardL Timber.d("Current selection is ${selection.index} / ${selection.tag}") val row = this.model.rowRepresentableForPosition(it.index) as HandHistoryRow + row.onSelect(selection.tag) + val keyboard = row.keyboardForTag(it.tag) - row.keyboardForTag(it.tag)?.let { keyboard -> + keyboard?.let { kb -> - when (keyboard) { + when (kb) { HHKeyboard.ACTION -> { configureActionKeyboard() } @@ -151,7 +153,7 @@ class HandHistoryFragment : RealmFragment(), RowRepresentableDelegate, KeyboardL else -> {} } - this.showKeyboard(keyboard) { + this.showKeyboard(kb) { this.scrollToPosition(selection.index) } @@ -471,7 +473,6 @@ class HandHistoryFragment : RealmFragment(), RowRepresentableDelegate, KeyboardL this.handHistoryAdapter.notifyItemChanged(this.model.currentSelection.index) } - /*** * Configures the action keyboard: * - Sets the available actions diff --git a/app/src/main/java/net/pokeranalytics/android/ui/modules/handhistory/model/HandHistoryRow.kt b/app/src/main/java/net/pokeranalytics/android/ui/modules/handhistory/model/HandHistoryRow.kt index fafb5b07..3191afbc 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/modules/handhistory/model/HandHistoryRow.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/modules/handhistory/model/HandHistoryRow.kt @@ -14,4 +14,5 @@ interface HandHistoryRow : RowRepresentable { fun amountForTag(handHistory: HandHistory, tag: Int): Double? { return null } + fun onSelect(tag: Int) {} } \ No newline at end of file diff --git a/app/src/main/java/net/pokeranalytics/android/ui/modules/handhistory/model/PlayerSetupRow.kt b/app/src/main/java/net/pokeranalytics/android/ui/modules/handhistory/model/PlayerSetupRow.kt index b3678dc9..190c48d9 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/modules/handhistory/model/PlayerSetupRow.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/modules/handhistory/model/PlayerSetupRow.kt @@ -102,4 +102,11 @@ class PlayerSetupRow(var hero: Boolean = false, this.playerSetup?.stack = amount } + override fun onSelect(tag: Int) { + // Removes the card limit when the user taps again on a non empty card count + if (tag == Tag.HAND.ordinal && this.maxCards != null && this.cardCount > 0) { + this.maxCards = null + } + } + } \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_data_selection_dialog.xml b/app/src/main/res/layout/fragment_data_selection_dialog.xml index 6225b16c..f045fbab 100644 --- a/app/src/main/res/layout/fragment_data_selection_dialog.xml +++ b/app/src/main/res/layout/fragment_data_selection_dialog.xml @@ -1,6 +1,6 @@