From 57bbbc07eb28fbd0113643d237d718f040d8b243 Mon Sep 17 00:00:00 2001 From: Eldad Zack Date: Sat, 29 Jan 2022 17:06:41 +0100 Subject: [PATCH] add scan password button --- .../keypass/ui/detail/DetailActivity.kt | 23 +++++++++++++++++++ app/src/main/res/layout/fragment_detail.xml | 20 ++++++++++++---- 2 files changed, 39 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/yogeshpaliyal/keypass/ui/detail/DetailActivity.kt b/app/src/main/java/com/yogeshpaliyal/keypass/ui/detail/DetailActivity.kt index ba64df2f..291f53e5 100644 --- a/app/src/main/java/com/yogeshpaliyal/keypass/ui/detail/DetailActivity.kt +++ b/app/src/main/java/com/yogeshpaliyal/keypass/ui/detail/DetailActivity.kt @@ -12,6 +12,8 @@ import com.yogeshpaliyal.keypass.R import com.yogeshpaliyal.keypass.databinding.FragmentDetailBinding import com.yogeshpaliyal.keypass.utils.PasswordGenerator import dagger.hilt.android.AndroidEntryPoint +import com.google.zxing.integration.android.IntentIntegrator + /* * @author Yogesh Paliyal @@ -85,6 +87,10 @@ class DetailActivity : AppCompatActivity() { onBackPressed() } } + + binding.btnScan.setOnClickListener { + IntentIntegrator(this).setPrompt("").initiateScan() + } } private fun deleteAccount() { @@ -111,4 +117,21 @@ class DetailActivity : AppCompatActivity() { menuInflater.inflate(R.menu.bottom_app_bar_detail, menu) return super.onCreateOptionsMenu(menu) } + + + override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { + super.onActivityResult(requestCode, resultCode, data) + val result = IntentIntegrator.parseActivityResult(requestCode, resultCode, data) + + if (result != null) { + if (result.contents != null) { + binding.etPassword.setText(result.contents) + } + } else { + super.onActivityResult(requestCode, resultCode, data) + } + + if (requestCode == IntentIntegrator.REQUEST_CODE && resultCode == RESULT_OK) { + } + } } diff --git a/app/src/main/res/layout/fragment_detail.xml b/app/src/main/res/layout/fragment_detail.xml index 1e85367f..739ff582 100644 --- a/app/src/main/res/layout/fragment_detail.xml +++ b/app/src/main/res/layout/fragment_detail.xml @@ -1,5 +1,7 @@ - + @@ -8,8 +10,7 @@ type="com.yogeshpaliyal.keypass.data.AccountModel" /> - @@ -82,9 +83,9 @@ android:id="@+id/etPassword" android:layout_width="match_parent" android:layout_height="wrap_content" + android:drawableStart="@drawable/ic_twotone_qr_code_scanner_24" android:importantForAutofill="no" android:inputType="textNoSuggestions|textPassword" - android:singleLine="true" android:text="@={accountData.password}" /> @@ -151,6 +152,7 @@ @@ -176,6 +178,16 @@ android:orientation="horizontal" app:layout_constraintGuide_begin="@dimen/grid_1" /> + +