diff --git a/app/build.gradle b/app/build.gradle
index e276955ac..9c3fcace7 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -205,5 +205,7 @@ dependencies {
implementation "androidx.lifecycle:lifecycle-viewmodel-compose:$rootProject.lifecycleVersion"
implementation "androidx.compose.material:material-icons-extended:$rootProject.composeVersion"
+ // Shimmer effect
+ implementation "com.facebook.shimmer:shimmer:$rootProject.shimmerVersion"
}
apply plugin: 'com.google.gms.google-services'
diff --git a/app/src/main/java/org/mifos/mobile/ui/fragments/HomeOldFragment.kt b/app/src/main/java/org/mifos/mobile/ui/fragments/HomeOldFragment.kt
index d1eef0368..140140187 100644
--- a/app/src/main/java/org/mifos/mobile/ui/fragments/HomeOldFragment.kt
+++ b/app/src/main/java/org/mifos/mobile/ui/fragments/HomeOldFragment.kt
@@ -256,9 +256,11 @@ class HomeOldFragment : BaseFragment(), OnRefreshListener {
lifecycleScope.launchWhenStarted {
viewModel.homeUiState.collect {
when (it) {
- is HomeUiState.Loading -> showProgress()
+ is HomeUiState.Loading ->{
+ binding.detailsOfCustomer.visibility = View.INVISIBLE
+ }
is HomeUiState.UserImage -> {
- hideProgress()
+ stopShimmerEffect()
showUserImage(it.image)
}
is HomeUiState.ClientAccountDetails -> {
@@ -271,7 +273,7 @@ class HomeOldFragment : BaseFragment(), OnRefreshListener {
showError(getString(it.errorMessage))
}
is HomeUiState.UserDetails -> {
- hideProgress()
+ stopShimmerEffect()
showUserDetails(it.client)
}
is HomeUiState.UnreadNotificationsCount -> {
@@ -360,6 +362,12 @@ class HomeOldFragment : BaseFragment(), OnRefreshListener {
private fun userImageClicked() {
startActivity(Intent(activity, UserProfileActivity::class.java))
}
+
+ private fun stopShimmerEffect(){
+ binding.shimmerViewContainer.stopShimmer()
+ binding.detailsOfCustomer.visibility = View.VISIBLE
+ binding.shimmerViewContainer.visibility = View.INVISIBLE
+ }
/**
* Calls `openAccount()` for opening [ClientAccountsFragment]
diff --git a/app/src/main/res/layout/fragment_home_old.xml b/app/src/main/res/layout/fragment_home_old.xml
index fa4664f36..be49e6755 100644
--- a/app/src/main/res/layout/fragment_home_old.xml
+++ b/app/src/main/res/layout/fragment_home_old.xml
@@ -17,7 +17,17 @@
android:layout_marginHorizontal="@dimen/Mifos.DesignSystem.Spacing.screenHorizontalMargin"
android:animateLayoutChanges="true"
android:orientation="vertical">
-
+
+
+
+
+
+
+
+
+
+
+
-
+
- @drawable/splash_background
+
+
diff --git a/build.gradle b/build.gradle
index 31a15880c..050ad00ca 100644
--- a/build.gradle
+++ b/build.gradle
@@ -95,4 +95,5 @@ ext {
composeActivity = '1.7.2'
materialVersion = '1.1.0'
lifecycleVersion = '2.6.1'
+ shimmerVersion = '0.5.0'
}