From 2f4d461e71157add6053838fd0481e1017044302 Mon Sep 17 00:00:00 2001
From: kmanikanta335 <118070186+kmanikanta335@users.noreply.github.com>
Date: Sun, 19 Nov 2023 16:13:18 +0530
Subject: [PATCH 1/3] Feat #2412: Implement Shimmer while user details are
being loaded
Feat #2412: Implement Shimmer while user details are being loaded
Feat #2412: Implement Shimmer while user details are being loaded
Feat #2412: Implement Shimmer while user details are being loaded
Feat #2412: Implement Shimmer while user details are being loaded
---
app/build.gradle | 4 ++
.../mobile/ui/fragments/HomeOldFragment.kt | 14 ++++--
app/src/main/res/layout/fragment_home_old.xml | 46 ++++++++++++++++++-
app/src/main/res/values/styles.xml | 4 ++
build.gradle | 1 +
5 files changed, 64 insertions(+), 5 deletions(-)
diff --git a/app/build.gradle b/app/build.gradle
index 5b84004a7..b000ae1dd 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -203,5 +203,9 @@ dependencies {
debugImplementation "androidx.compose.ui:ui-tooling:$rootProject.composeVersion"
implementation "androidx.compose.material3:material3:$rootProject.materialVersion"
implementation "androidx.lifecycle:lifecycle-viewmodel-compose:$rootProject.lifecycleVersion"
+
+ // 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 ea8a7ee22..ab8561c48 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'
}
From 3bf28b5323c93fff298dfee89aa4d650a23b36cc Mon Sep 17 00:00:00 2001
From: kmanikanta335 <118070186+kmanikanta335@users.noreply.github.com>
Date: Tue, 2 Jan 2024 20:17:05 +0530
Subject: [PATCH 2/3] Fixed Feat: Implement Shimmer while user details are
being loaded
---
app/build.gradle | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/app/build.gradle b/app/build.gradle
index e276955ac..145fdb5dc 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -204,6 +204,6 @@ dependencies {
implementation "androidx.compose.material3:material3:$rootProject.materialVersion"
implementation "androidx.lifecycle:lifecycle-viewmodel-compose:$rootProject.lifecycleVersion"
implementation "androidx.compose.material:material-icons-extended:$rootProject.composeVersion"
-
+ implementation 'com.facebook.shimmer:shimmer:0.5.0'
}
apply plugin: 'com.google.gms.google-services'
From 1f1101f0a9c193910490e2fb9fa88bbbe8dd2978 Mon Sep 17 00:00:00 2001
From: kmanikanta335 <118070186+kmanikanta335@users.noreply.github.com>
Date: Wed, 3 Jan 2024 00:02:53 +0530
Subject: [PATCH 3/3] Fixed Feat: Implement Shimmer while user details are
being loaded
---
app/build.gradle | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/app/build.gradle b/app/build.gradle
index 145fdb5dc..9c3fcace7 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -204,6 +204,8 @@ dependencies {
implementation "androidx.compose.material3:material3:$rootProject.materialVersion"
implementation "androidx.lifecycle:lifecycle-viewmodel-compose:$rootProject.lifecycleVersion"
implementation "androidx.compose.material:material-icons-extended:$rootProject.composeVersion"
- implementation 'com.facebook.shimmer:shimmer:0.5.0'
+
+ // Shimmer effect
+ implementation "com.facebook.shimmer:shimmer:$rootProject.shimmerVersion"
}
apply plugin: 'com.google.gms.google-services'