From 687423fb3e27ed193a0767e1a874420896ace59d Mon Sep 17 00:00:00 2001 From: Laurent Date: Mon, 11 Jul 2022 15:23:23 +0200 Subject: [PATCH] Improvements --- app/src/main/AndroidManifest.xml | 3 +- .../model/realm/handhistory/HandHistory.kt | 21 ++--- .../bottomsheet/BottomSheetStakesFragment.kt | 69 +++++++++++++---- .../views/RowHandHistoryViewHolder.kt | 3 +- .../main/res/layout/bottom_sheet_stakes.xml | 17 ++-- .../main/res/layout/view_keyboard_stakes.xml | 77 ++++++++++++------- app/src/main/res/values/styles.xml | 26 +++++++ 7 files changed, 151 insertions(+), 65 deletions(-) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 65ed5289..4b5b215d 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -60,8 +60,7 @@ + android:screenOrientation="portrait" /> - val action = when(index) { - 0 -> Action.Type.POST_SB - 1 -> Action.Type.POST_BB - else -> Action.Type.STRADDLE + val blindValues = this.blindValues + if (blindValues.isNotEmpty()) { + blindValues.forEachIndexed { index, blind -> + val action = when(index) { + 0 -> Action.Type.POST_SB + 1 -> Action.Type.POST_BB + else -> Action.Type.STRADDLE + } + this.addAction(index, action, blind) } - this.addAction(index, action, blind) + } else { + this.addAction(0, Action.Type.POST_SB, this.oldSmallBlind) + this.addAction(1, Action.Type.POST_BB, this.oldBigBlind) } -// this.addAction(0, Action.Type.POST_SB, this.smallBlind) -// this.addAction(1, Action.Type.POST_BB, this.bigBlind) - // var lastStraddler: Int? = null val positions = Position.positionsPerPlayers(this.numberOfPlayers) diff --git a/app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetStakesFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetStakesFragment.kt index bdb8c266..0ef7e891 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetStakesFragment.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/fragment/components/bottomsheet/BottomSheetStakesFragment.kt @@ -1,16 +1,19 @@ package net.pokeranalytics.android.ui.fragment.components.bottomsheet +import android.content.Context import android.os.Bundle import android.text.InputType import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import android.view.inputmethod.EditorInfo +import android.view.inputmethod.InputMethodManager import androidx.core.widget.addTextChangedListener import net.pokeranalytics.android.databinding.BottomSheetStakesBinding import net.pokeranalytics.android.exceptions.PAIllegalStateException import net.pokeranalytics.android.exceptions.RowRepresentableEditDescriptorException + class BottomSheetStakesFragment : BottomSheetFragment() { private var _binding: BottomSheetStakesBinding? = null @@ -36,9 +39,17 @@ class BottomSheetStakesFragment : BottomSheetFragment() { super.onStart() // binding.editText2.setTextIsSelectable(true) -// binding.editText2.isFocusableInTouchMode = false - binding.editText2.requestFocus() +// binding.editText2.isFocusableInTouchMode = true +// binding.editText2.requestFocus() +// +// val mgr: InputMethodManager? = +// requireContext().getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager? +// mgr?.hideSoftInputFromWindow(binding.editText2.windowToken, InputMethodManager.SHOW_FORCED) + + +// binding.editText2.findFocus() + } @@ -49,6 +60,15 @@ class BottomSheetStakesFragment : BottomSheetFragment() { // this.viewModel.isEditingBlinds = this.viewModel.row == SessionRow.BLINDS } + private fun focusBlindsAndHideKeyboard() { + binding.blindsEditText.requestFocus() + + val mgr: InputMethodManager? = + requireContext().getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager? + mgr?.hideSoftInputFromWindow(binding.blindsEditText.windowToken, InputMethodManager.SHOW_FORCED) + + } + /** * Init UI */ @@ -59,47 +79,66 @@ class BottomSheetStakesFragment : BottomSheetFragment() { throw RowRepresentableEditDescriptorException("RowRepresentableEditDescriptor inconsistency") } - data[0].hintResId?.let { binding.editText.hint = getString(it) } - binding.editText.inputType = data[0].inputType ?: InputType.TYPE_CLASS_TEXT or InputType.TYPE_TEXT_FLAG_CAP_SENTENCES - data[1].hintResId?.let { binding.editText2.hint = getString(it) } + data[0].hintResId?.let { binding.anteEditText.hint = getString(it) } + binding.anteEditText.inputType = data[0].inputType ?: InputType.TYPE_CLASS_TEXT or InputType.TYPE_TEXT_FLAG_CAP_SENTENCES + data[1].hintResId?.let { binding.blindsEditText.hint = getString(it) } // binding.editText2.setRawInputType(InputType.TYPE_CLASS_TEXT) //= InputType.TYPE_NULL // data[1].inputType ?: InputType.TYPE_CLASS_TEXT or InputType.TYPE_TEXT_FLAG_CAP_SENTENCES // binding.editText2.inputType = InputType.TYPE_NULL // binding.editText2.setTextIsSelectable(false) // editText.setTextIsSelectable(true) - binding.editText2.setRawInputType(InputType.TYPE_CLASS_TEXT) - binding.editText2.setTextIsSelectable(true) - binding.editText2.showSoftInputOnFocus = false +// binding.editText2.isFocusableInTouchMode = false + binding.blindsEditText.setRawInputType(InputType.TYPE_CLASS_NUMBER) +// binding.editText2.setTextIsSelectable(true) + binding.blindsEditText.showSoftInputOnFocus = false + + binding.blindsEditText.setOnTouchListener { view, motionEvent -> + + this.focusBlindsAndHideKeyboard() + +// binding.editText2.requestFocus() +// +// val mgr: InputMethodManager? = +// requireContext().getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager? +// mgr?.hideSoftInputFromWindow(binding.editText2.windowToken, InputMethodManager.SHOW_FORCED) + + return@setOnTouchListener true - binding.editText2.onCreateInputConnection(EditorInfo())?.let { + } + +// binding.editText2.requestFocus() + + binding.blindsEditText.onCreateInputConnection(EditorInfo())?.let { binding.stakesKeyboard.inputConnection = it + + } ?: throw PAIllegalStateException("No connection for editText") if (this.model.valueAsHint) { this.model.stringValue?.let { if (it.isNotBlank()) { - binding.editText.hint = it + binding.anteEditText.hint = it } } this.model.secondStringValue?.let { if (it.isNotBlank()) { - binding.editText2.hint = it + binding.blindsEditText.hint = it } } // if (this.viewModel.stringValue?.isNotBlank()) { editText.hint = values[0] } // if (values[1].isNotBlank()) { editText2.hint = values[1] } } else { - binding.editText.setText(this.model.stringValue) - binding.editText2.setText(this.model.secondStringValue) + binding.anteEditText.setText(this.model.stringValue) + binding.blindsEditText.setText(this.model.secondStringValue) } - binding.editText.addTextChangedListener { + binding.anteEditText.addTextChangedListener { this.model.stringValue = it?.toString() } - binding.editText2.addTextChangedListener { + binding.blindsEditText.addTextChangedListener { this.model.secondStringValue = it?.toString() } diff --git a/app/src/main/java/net/pokeranalytics/android/ui/modules/handhistory/views/RowHandHistoryViewHolder.kt b/app/src/main/java/net/pokeranalytics/android/ui/modules/handhistory/views/RowHandHistoryViewHolder.kt index eda969c7..b302de57 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/modules/handhistory/views/RowHandHistoryViewHolder.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/modules/handhistory/views/RowHandHistoryViewHolder.kt @@ -35,8 +35,7 @@ class RowHandHistoryViewHolder(itemView: View) : RecyclerView.ViewHolder(itemVie val amount = itemView.findViewById(R.id.amount) amount.text = handHistory.potSizeForStreet(Street.SUMMARY).formatted - val heroWins = handHistory.heroWins - val colorId = when(heroWins) { + val colorId = when(handHistory.heroWins) { true -> R.color.green false -> R.color.red else -> R.color.kaki_light diff --git a/app/src/main/res/layout/bottom_sheet_stakes.xml b/app/src/main/res/layout/bottom_sheet_stakes.xml index aab40f52..b1324e40 100644 --- a/app/src/main/res/layout/bottom_sheet_stakes.xml +++ b/app/src/main/res/layout/bottom_sheet_stakes.xml @@ -16,7 +16,7 @@ app:layout_constraintEnd_toEndOf="parent"> + app:layout_constraintVertical_bias="0.0" + tools:text="20" /> + tools:text="10" /> + diff --git a/app/src/main/res/layout/view_keyboard_stakes.xml b/app/src/main/res/layout/view_keyboard_stakes.xml index 29055e4f..5211a608 100644 --- a/app/src/main/res/layout/view_keyboard_stakes.xml +++ b/app/src/main/res/layout/view_keyboard_stakes.xml @@ -1,42 +1,43 @@ - - - - - - @@ -48,27 +49,35 @@ android:layout_height="match_parent" android:orientation="vertical"> - - - - @@ -80,36 +89,46 @@ android:layout_height="match_parent" android:orientation="vertical"> - - - - - diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index dd114e52..5f4e55d1 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -386,6 +386,32 @@ @color/kaki_darker + + + +