diff --git a/app/build.gradle.kts b/app/build.gradle.kts index defc0ab94defb9b5ba92cbf967977e4cbfa3179c..b1e8f0ac2645a7a6a56ffa875d3230b8eecce031 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -65,4 +65,7 @@ dependencies { implementation(libs.camera.lifecycle) implementation(libs.camera.view) implementation(libs.camera.extensions) + + // Blur view + implementation("com.github.Dimezis:BlurView:version-2.0.3") } \ No newline at end of file diff --git a/app/src/main/java/com/example/bondoman/fragments/TransactionListFragment.kt b/app/src/main/java/com/example/bondoman/fragments/TransactionListFragment.kt index 5964f11e148afe6f3921c65874e2010221058c83..1348fbf0530370dd686f2dedd53365c78ead53ae 100644 --- a/app/src/main/java/com/example/bondoman/fragments/TransactionListFragment.kt +++ b/app/src/main/java/com/example/bondoman/fragments/TransactionListFragment.kt @@ -18,12 +18,16 @@ import com.example.bondoman.adapters.TransactionListAdapter import com.example.bondoman.decorators.DividerItemDecorator import com.example.bondoman.utils.interfaces.LayoutAppender import com.google.android.material.bottomsheet.BottomSheetBehavior +import eightbitlab.com.blurview.BlurAlgorithm +import eightbitlab.com.blurview.BlurView +import eightbitlab.com.blurview.RenderEffectBlur class TransactionListFragment : Fragment() { private lateinit var adapter: TransactionListAdapter private lateinit var recyclerView: RecyclerView + private val blurRadius: Float = 2f override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) } @@ -51,8 +55,22 @@ class TransactionListFragment : Fragment() { recyclerView.addItemDecoration(dividerItemDecoration) - // add detail layout to parent activity val activity = requireActivity() + + // configure blur component + val blurView = inflater.inflate(R.layout.component_blur, container, false) as BlurView + + if (activity is LayoutAppender) { + activity.appendLayout(blurView) + + val decorView = activity.window.decorView as ViewGroup + blurView + .setupWith(decorView) + .setFrameClearDrawable(decorView.background) + .setBlurRadius(blurRadius) + } + + // add detail layout to parent activity val detailLayout = inflater.inflate(R.layout.component_transaction_detail, container, false) as CoordinatorLayout if (activity is LayoutAppender) { diff --git a/app/src/main/res/layout/component_blur.xml b/app/src/main/res/layout/component_blur.xml new file mode 100644 index 0000000000000000000000000000000000000000..37408b9fe54a67cb321a6c5633fb13b8b0be7609 --- /dev/null +++ b/app/src/main/res/layout/component_blur.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8"?> +<eightbitlab.com.blurview.BlurView + xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:app="http://schemas.android.com/apk/res-auto" + android:id="@+id/blur_view" + android:layout_width="match_parent" + android:layout_height="match_parent" + app:blurOverlayColor="@color/blur"> +</eightbitlab.com.blurview.BlurView> \ No newline at end of file diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index b995335cade328cb2a70f7079fdf1e620182822e..2b1a5bb607fdb5858aa96b83562b3288e44fe837 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -3,6 +3,7 @@ <color name="black">#FF000000</color> <color name="white">#FFFFFFFF</color> <color name="bg_main">#2C2C2C</color> + <color name="blur">#B82C2C2C</color> <color name="zinc_50">#FAFAFA</color> <color name="zinc_200">#E4E4E7</color> <color name="zinc_300">#D4D4D8</color> diff --git a/settings.gradle.kts b/settings.gradle.kts index bf387d847d706681072661455ec001e0ab3532fb..bca856c0e3797e14c5f6d12b32f09cab3dd58fff 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -16,6 +16,7 @@ dependencyResolutionManagement { repositories { google() mavenCentral() + maven("https://jitpack.io" ) } }