From 67155d382ada1337a768f3094e8a6c8b2d14b492 Mon Sep 17 00:00:00 2001 From: Laurent Date: Mon, 20 Jan 2020 15:11:17 +0100 Subject: [PATCH] Fixes issues with editText focus --- .../android/model/handhistory/HHBuilder.kt | 10 ++ .../android/ui/adapter/HandHistoryAdapter.kt | 91 ++++++++++++------- .../ui/fragment/HandHistoryFragment.kt | 39 +++++--- .../ui/view/handhistory/KeyboardAmountView.kt | 4 + .../ui/view/handhistory/KeyboardContainer.kt | 1 + .../ui/viewmodel/HandHistoryViewModel.kt | 4 + app/src/main/res/layout/row_hand_action.xml | 29 +++--- 7 files changed, 124 insertions(+), 54 deletions(-) diff --git a/app/src/main/java/net/pokeranalytics/android/model/handhistory/HHBuilder.kt b/app/src/main/java/net/pokeranalytics/android/model/handhistory/HHBuilder.kt index 8ff28fc3..f2cc025e 100644 --- a/app/src/main/java/net/pokeranalytics/android/model/handhistory/HHBuilder.kt +++ b/app/src/main/java/net/pokeranalytics/android/model/handhistory/HHBuilder.kt @@ -233,6 +233,16 @@ class HHBuilder { } + /*** + * Clears the amount at the given [index] + */ + fun clearAmount(index: Int) { + val computedAction = this.actionForIndex(index) + computedAction.action.amount = null + + // TODO consequences? + } + /*** * Returns the committed amount by the player for the street at the current [index] */ diff --git a/app/src/main/java/net/pokeranalytics/android/ui/adapter/HandHistoryAdapter.kt b/app/src/main/java/net/pokeranalytics/android/ui/adapter/HandHistoryAdapter.kt index 72f88502..f5b3358d 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/adapter/HandHistoryAdapter.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/adapter/HandHistoryAdapter.kt @@ -1,14 +1,15 @@ package net.pokeranalytics.android.ui.adapter +import android.content.res.ColorStateList import android.text.Editable import android.text.InputType import android.text.TextWatcher import android.view.LayoutInflater +import android.view.MotionEvent import android.view.View import android.view.ViewGroup import android.widget.Button import android.widget.EditText -import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.RecyclerView import net.pokeranalytics.android.R import net.pokeranalytics.android.exceptions.PAIllegalStateException @@ -68,13 +69,6 @@ class HandHistoryAdapter( } } - /** - * Update UI - */ - fun updateRows(diffResult: DiffUtil.DiffResult) { - diffResult.dispatchUpdatesTo(this) - } - inner class TextListener : TextWatcher { var position: Int = 0 @@ -98,17 +92,18 @@ class HandHistoryAdapter( private var listener = TextListener() private var currentPosition = 0 + private var actionCanBeEdited = true + private var amountCanBeEdited = true init { // Action - itemView.findViewById(R.id.actionEditText)?.let { actionEditText -> + itemView.findViewById