aboutsummaryrefslogtreecommitdiffstats
path: root/app/src/main/java/com/zeapo/pwdstore/utils
diff options
context:
space:
mode:
authorAditya Wasan <adityawasan55@gmail.com>2020-09-15 21:53:12 +0530
committerGitHub <noreply@github.com>2020-09-15 21:53:12 +0530
commit4ba3b75f858251099f18f07be700f9900128f8e1 (patch)
treea3a689288253484817f868d15025fbbaf4a8d122 /app/src/main/java/com/zeapo/pwdstore/utils
parenta34f749e9ac1d6112a42b0f4ded3ae801d8c583c (diff)
downloadHardenedPass-4ba3b75f858251099f18f07be700f9900128f8e1.tar.gz
HardenedPass-4ba3b75f858251099f18f07be700f9900128f8e1.zip
Update on-boarding UI (#1099)
* Add onboarding flow from v2 Signed-off-by: Aditya Wasan <adityawasan55@gmail.com> * Minor fixes Signed-off-by: Aditya Wasan <adityawasan55@gmail.com> * Add changelog entry Signed-off-by: Aditya Wasan <adityawasan55@gmail.com> * Remove old activity from manifest Signed-off-by: Aditya Wasan <adityawasan55@gmail.com> * Remove view type prefix from view ids Signed-off-by: Aditya Wasan <adityawasan55@gmail.com> * Review fixes Signed-off-by: Aditya Wasan <adityawasan55@gmail.com> * Treewide: Reformat code Signed-off-by: Aditya Wasan <adityawasan55@gmail.com> * Moar review fixes Signed-off-by: Aditya Wasan <adityawasan55@gmail.com> * Revert "Treewide: Reformat code" This reverts commit 348ef0050942526a55890b245afec8d7fee4d81e. Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * onboarding: cleanup OnboardingActivity init Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Remove unused layout Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Remove unnecessary ConstraintLayout Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Shorten animation duration Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * onboarding: use viewBinding extension in fragments Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
Diffstat (limited to 'app/src/main/java/com/zeapo/pwdstore/utils')
-rw-r--r--app/src/main/java/com/zeapo/pwdstore/utils/Extensions.kt3
-rw-r--r--app/src/main/java/com/zeapo/pwdstore/utils/FragmentExtensions.kt52
2 files changed, 54 insertions, 1 deletions
diff --git a/app/src/main/java/com/zeapo/pwdstore/utils/Extensions.kt b/app/src/main/java/com/zeapo/pwdstore/utils/Extensions.kt
index d9277bef..2a11f56a 100644
--- a/app/src/main/java/com/zeapo/pwdstore/utils/Extensions.kt
+++ b/app/src/main/java/com/zeapo/pwdstore/utils/Extensions.kt
@@ -56,7 +56,8 @@ fun String.base64(): String {
return Base64.encodeToString(encodeToByteArray(), Base64.NO_WRAP)
}
-val Context.clipboard get() = getSystemService<ClipboardManager>()
+val Context.clipboard
+ get() = getSystemService<ClipboardManager>()
fun FragmentActivity.snackbar(
view: View = findViewById(android.R.id.content),
diff --git a/app/src/main/java/com/zeapo/pwdstore/utils/FragmentExtensions.kt b/app/src/main/java/com/zeapo/pwdstore/utils/FragmentExtensions.kt
new file mode 100644
index 00000000..01103d19
--- /dev/null
+++ b/app/src/main/java/com/zeapo/pwdstore/utils/FragmentExtensions.kt
@@ -0,0 +1,52 @@
+package com.zeapo.pwdstore.utils
+
+import android.content.pm.PackageManager
+import android.view.View
+import androidx.annotation.IdRes
+import androidx.core.content.ContextCompat
+import androidx.fragment.app.Fragment
+import androidx.fragment.app.FragmentManager
+import androidx.fragment.app.commit
+import com.zeapo.pwdstore.R
+
+fun Fragment.isPermissionGranted(permission: String): Boolean {
+ return ContextCompat.checkSelfPermission(requireActivity(), permission) == PackageManager.PERMISSION_GRANTED
+}
+
+fun Fragment.finish() = requireActivity().finish()
+
+fun FragmentManager.performTransaction(destinationFragment: Fragment, @IdRes containerViewId: Int = android.R.id.content) {
+ this.commit {
+ beginTransaction()
+ setCustomAnimations(
+ R.animator.slide_in_left,
+ R.animator.slide_out_left,
+ R.animator.slide_in_right,
+ R.animator.slide_out_right)
+ replace(containerViewId, destinationFragment)
+ }
+}
+
+fun FragmentManager.performTransactionWithBackStack(destinationFragment: Fragment, @IdRes containerViewId: Int = android.R.id.content) {
+ this.commit {
+ beginTransaction()
+ addToBackStack(destinationFragment.tag)
+ setCustomAnimations(
+ R.animator.slide_in_left,
+ R.animator.slide_out_left,
+ R.animator.slide_in_right,
+ R.animator.slide_out_right)
+ replace(containerViewId, destinationFragment)
+ }
+}
+
+fun FragmentManager.performSharedElementTransaction(destinationFragment: Fragment, views: List<View>, @IdRes containerViewId: Int = android.R.id.content) {
+ this.commit {
+ beginTransaction()
+ for (view in views) {
+ addSharedElement(view, view.transitionName)
+ }
+ addToBackStack(destinationFragment.tag)
+ replace(containerViewId, destinationFragment)
+ }
+}