Skip to content

Commit

Permalink
feat(on_hold): PAY-466 [Android] V1 - New On Hold page - Frontend (#4…
Browse files Browse the repository at this point in the history
…137)
  • Loading branch information
aromano-bc committed Nov 25, 2022
1 parent a54b0e7 commit d6404db
Show file tree
Hide file tree
Showing 18 changed files with 490 additions and 303 deletions.

This file was deleted.

Expand Up @@ -4,80 +4,39 @@ import android.content.Context
import android.content.Intent
import android.net.Uri
import android.os.Bundle
import android.text.method.LinkMovementMethod
import androidx.activity.compose.setContent
import com.blockchain.commonarch.presentation.base.BlockchainActivity
import com.blockchain.componentlib.databinding.ToolbarGeneralBinding
import com.blockchain.domain.paymentmethods.model.FundsLocks
import com.blockchain.utils.unsafeLazy
import piuk.blockchain.android.R
import piuk.blockchain.android.databinding.ActivityOnHoldDetailsBinding
import piuk.blockchain.android.support.SupportCentreActivity
import piuk.blockchain.android.ui.customviews.BlockchainListDividerDecor
import piuk.blockchain.android.urllinks.TRADING_ACCOUNT_LOCKS
import piuk.blockchain.android.util.StringUtils

class LocksDetailsActivity : BlockchainActivity() {

private val binding: ActivityOnHoldDetailsBinding by lazy {
ActivityOnHoldDetailsBinding.inflate(layoutInflater)
}

private val fundsLocks: FundsLocks by unsafeLazy {
intent?.getSerializableExtra(KEY_LOCKS) as FundsLocks
}

override val alwaysDisableScreenshots: Boolean
get() = false

override val toolbarBinding: ToolbarGeneralBinding
get() = binding.toolbar

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(binding.root)
updateToolbar(
toolbarTitle = getString(R.string.funds_locked_details_toolbar),
backAction = { onBackPressedDispatcher.onBackPressed() }
)
setUpRecyclerView()
setUpTextInfo()
}

private fun setUpRecyclerView() {
val locksDetailsDelegateAdapter = LocksDetailsDelegateAdapter()
locksDetailsDelegateAdapter.items = fundsLocks.locks
binding.recyclerViewLocks.apply {
adapter = locksDetailsDelegateAdapter
addItemDecoration(BlockchainListDividerDecor(context))
setContent {
LocksDetailsScreen(
locks = fundsLocks,
backClicked = { onBackPressedDispatcher.onBackPressed() },
learnMoreClicked = {
startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(TRADING_ACCOUNT_LOCKS)))
},
contactSupportClicked = {
startActivity(SupportCentreActivity.newIntent(this, FUND_LOCKS_SUPPORT))
},
okClicked = { finish() }
)
}
}

private fun setUpTextInfo() {
val amountOnHold = fundsLocks.onHoldTotalAmount.toStringWithSymbol()
with(binding) {
totalAmount.text = amountOnHold
titleAmount.text = getString(R.string.funds_locked_details_title, amountOnHold)
learnMore.setOnClickListener { startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(TRADING_ACCOUNT_LOCKS))) }

contactSupport.apply {
movementMethod = LinkMovementMethod.getInstance()
text = setContactSupportLink(R.string.funds_locked_details_contact_support)
}
}
}

private fun setContactSupportLink(stringId: Int): CharSequence {
return StringUtils.getStringWithMappedAnnotations(
this,
stringId,
emptyMap()
) { onSupportClicked() }
}

private fun onSupportClicked() {
startActivity(SupportCentreActivity.newIntent(this, FUND_LOCKS_SUPPORT))
}

companion object {
private const val KEY_LOCKS = "LOCKS"
private const val FUND_LOCKS_SUPPORT = "Funds Locks"
Expand Down

This file was deleted.

0 comments on commit d6404db

Please sign in to comment.