Skip to content

Commit afa3341

Browse files
Implements invalid input callback and fixes card height
Adds a callback for invalid input events to provide real-time feedback to the user. Fixes an issue where the card form height was not being correctly calculated. This ensures that the card form displays properly on different devices.
1 parent 0db91c1 commit afa3341

File tree

3 files changed

+21
-1
lines changed

3 files changed

+21
-1
lines changed

app/src/main/java/com/example/tapcardwebsdk/main_activity/MainActivity.kt

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -308,6 +308,15 @@ class MainActivity : AppCompatActivity() {
308308

309309

310310
override fun onValidInput(isValid: String) {
311+
312+
Log.e("isValid",isValid.toString())
313+
}
314+
315+
override fun onInValidInput(isValid: Boolean) {
316+
317+
findViewById<TextView>(R.id.textView_Logs).visibility = View.VISIBLE
318+
findViewById<TextView>(R.id.textView_Logs).setText("onInValidInput status$isValid")
319+
println("onInValidInput status$isValid")
311320
}
312321

313322
override fun onChangeSaveCard(enabled: Boolean) {

tapcardformkit/src/main/java/company/tap/tapcardformkit/open/web_wrapper/TapCardKit.kt

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -311,6 +311,15 @@ class TapCardKit : LinearLayout {
311311
}
312312

313313
}
314+
if (request?.url.toString().contains(CardFormWebStatus.onInvalidInput.name)) {
315+
val InvalidInputValue =
316+
request?.url?.getQueryParameterFromUri(keyValueName).toString()
317+
CardDataConfiguration.getTapCardStatusListener()?.onInValidInput(
318+
request?.url?.getQueryParameterFromUri(keyValueName).toBoolean()
319+
)
320+
321+
}
322+
314323
if (request?.url.toString().contains(CardFormWebStatus.onError.name)) {
315324
CardDataConfiguration.getTapCardStatusListener()
316325
?.onCardError(request?.url?.getQueryParameterFromUri(keyValueName).toString())
@@ -326,7 +335,7 @@ class TapCardKit : LinearLayout {
326335
if (request?.url.toString().contains(CardFormWebStatus.onHeightChange.name)) {
327336
val newHeight = request?.url?.getQueryParameter(keyValueName)
328337
val params: ViewGroup.LayoutParams? = webViewFrame.layoutParams
329-
params?.height = webViewFrame.context.getDimensionsInDp(newHeight?.toInt() ?: 95)
338+
params?.height = webViewFrame.context.getDimensionsInDp(newHeight?.toInt()?.plus(15) ?: 95)
330339
webViewFrame.layoutParams = params
331340

332341
CardDataConfiguration.getTapCardStatusListener()

tapcardformkit/src/main/java/company/tap/tapcardformkit/open/web_wrapper/data/CardDataConfiguration.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,8 @@ interface TapCardStatusDelegate {
164164

165165
fun onValidInput(isValid: String)
166166

167+
fun onInValidInput(isValid: Boolean)
168+
167169

168170
fun onCardError(error: String)
169171

0 commit comments

Comments
 (0)