From 25b426157417c97c61c3d2cc0d9fa556f337f22d Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Fri, 3 Jul 2020 12:54:06 +0530 Subject: Migrate to ActivityResultContracts (#910) * Move git directory selection to ActivityResultContracts Signed-off-by: Harsh Shandilya * global: replace all android.app.Activity references Signed-off-by: Harsh Shandilya * res: resolve ObsoleteSdkInt lint warning Signed-off-by: Harsh Shandilya * layout: silence some overdraw warnings Signed-off-by: Harsh Shandilya * PasswordFragment: address deprecation Signed-off-by: Harsh Shandilya * PasswordStore: start addressing deprecation warnings Signed-off-by: Harsh Shandilya * autofill: silence deprecation warnings for legacy implementation I don't want to ever touch these files Signed-off-by: Harsh Shandilya * Reset scrollTarget after use Signed-off-by: Harsh Shandilya * Refresh password list after each swipe Signed-off-by: Harsh Shandilya * Convert if to when Signed-off-by: Harsh Shandilya * Migrate UserPreference to ActivityResultContracts Signed-off-by: Harsh Shandilya * Also validate result in git directory selection Signed-off-by: Harsh Shandilya * AutofillSaveActivity: Switch to ActivityResultContracts Signed-off-by: Harsh Shandilya * AutofillDecryptActivity: Switch to ActivityResultContracts Signed-off-by: Harsh Shandilya * AutofillFilterActivity: Switch to ActivityResultContracts Signed-off-by: Harsh Shandilya * Improve deletion flow - Silently delete empty directory - Always refresh password list upon completion Signed-off-by: Harsh Shandilya * Uniform naming for activity result handlers Signed-off-by: Harsh Shandilya Co-authored-by: Fabian Henneke --- .../zeapo/pwdstore/ui/dialogs/ItemCreationBottomSheet.kt | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'app/src/main/java/com/zeapo/pwdstore/ui/dialogs') diff --git a/app/src/main/java/com/zeapo/pwdstore/ui/dialogs/ItemCreationBottomSheet.kt b/app/src/main/java/com/zeapo/pwdstore/ui/dialogs/ItemCreationBottomSheet.kt index 55a767d8..94379bbf 100644 --- a/app/src/main/java/com/zeapo/pwdstore/ui/dialogs/ItemCreationBottomSheet.kt +++ b/app/src/main/java/com/zeapo/pwdstore/ui/dialogs/ItemCreationBottomSheet.kt @@ -11,11 +11,15 @@ import android.view.View import android.view.ViewGroup import android.view.ViewTreeObserver import android.widget.FrameLayout -import androidx.fragment.app.Fragment +import androidx.core.os.bundleOf +import androidx.fragment.app.setFragmentResult import com.google.android.material.bottomsheet.BottomSheetBehavior import com.google.android.material.bottomsheet.BottomSheetDialog import com.google.android.material.bottomsheet.BottomSheetDialogFragment -import com.zeapo.pwdstore.PasswordFragment +import com.zeapo.pwdstore.PasswordFragment.Companion.ACTION_FOLDER +import com.zeapo.pwdstore.PasswordFragment.Companion.ACTION_KEY +import com.zeapo.pwdstore.PasswordFragment.Companion.ACTION_PASSWORD +import com.zeapo.pwdstore.PasswordFragment.Companion.ITEM_CREATION_REQUEST_KEY import com.zeapo.pwdstore.R import com.zeapo.pwdstore.utils.resolveAttribute @@ -50,11 +54,11 @@ class ItemCreationBottomSheet : BottomSheetDialogFragment() { addBottomSheetCallback(bottomSheetCallback) } dialog.findViewById(R.id.create_folder)?.setOnClickListener { - (requireTargetFragment() as PasswordFragment).createFolder() + setFragmentResult(ITEM_CREATION_REQUEST_KEY, bundleOf(ACTION_KEY to ACTION_FOLDER)) dismiss() } dialog.findViewById(R.id.create_password)?.setOnClickListener { - (requireTargetFragment() as PasswordFragment).createPassword() + setFragmentResult(ITEM_CREATION_REQUEST_KEY, bundleOf(ACTION_KEY to ACTION_PASSWORD)) dismiss() } } @@ -69,8 +73,4 @@ class ItemCreationBottomSheet : BottomSheetDialogFragment() { super.dismiss() behavior?.removeBottomSheetCallback(bottomSheetCallback) } - - private fun requireTargetFragment(): Fragment = requireNotNull(targetFragment) { - "A target fragment must be set for $this" - } } -- cgit v1.2.3