diff --git a/core/src/main/java/org/futo/circles/core/feature/room/invites/list/InvitesViewHolder.kt b/core/src/main/java/org/futo/circles/core/feature/room/invites/list/InvitesViewHolder.kt
index 34acd22ccd8450d77ce01ef1919371e6ae76a8f8..24b4c012e83f602fb8c28311fa3f733024365c80 100644
--- a/core/src/main/java/org/futo/circles/core/feature/room/invites/list/InvitesViewHolder.kt
+++ b/core/src/main/java/org/futo/circles/core/feature/room/invites/list/InvitesViewHolder.kt
@@ -49,7 +49,7 @@ class InvitedGroupViewHolder(
         if (data !is RoomInviteListItem) return
 
         with(binding) {
-            lLoading.setIsVisible(data.isLoading)
+            setLoading(data.isLoading)
             ivGroup.loadRoomProfileIcon(
                 data.info.avatarUrl,
                 data.info.title,
@@ -64,6 +64,14 @@ class InvitedGroupViewHolder(
             )
         }
     }
+
+    private fun setLoading(isLoading: Boolean) {
+        with(binding) {
+            vLoading.setIsVisible(isLoading)
+            btnAccept.setIsVisible(!isLoading)
+            btnDecline.setIsVisible(!isLoading)
+        }
+    }
 }
 
 class InvitedCircleViewHolder(
@@ -86,7 +94,7 @@ class InvitedCircleViewHolder(
         if (data !is RoomInviteListItem) return
 
         with(binding) {
-            lLoading.setIsVisible(data.isLoading)
+            setLoading(data.isLoading)
             tvShowProfileImage.setIsVisible(data.shouldBlurIcon)
             ivCircle.loadRoomProfileIcon(
                 data.info.avatarUrl,
@@ -101,6 +109,14 @@ class InvitedCircleViewHolder(
                 )
         }
     }
+
+    private fun setLoading(isLoading: Boolean) {
+        with(binding) {
+            vLoading.setIsVisible(isLoading)
+            btnAccept.setIsVisible(!isLoading)
+            btnDecline.setIsVisible(!isLoading)
+        }
+    }
 }
 
 class InvitedGalleryViewHolder(
@@ -123,7 +139,7 @@ class InvitedGalleryViewHolder(
         if (data !is RoomInviteListItem) return
 
         with(binding) {
-            lLoading.setIsVisible(data.isLoading)
+            setLoading(data.isLoading)
             tvGalleryTitle.text = data.info.title
             ivGallery.loadRoomProfileIcon(
                 data.info.avatarUrl,
@@ -134,6 +150,14 @@ class InvitedGalleryViewHolder(
             tvInviterName.text = context.getString(R.string.invited_by_format, data.inviterName)
         }
     }
+
+    private fun setLoading(isLoading: Boolean) {
+        with(binding) {
+            vLoading.setIsVisible(isLoading)
+            btnAccept.setIsVisible(!isLoading)
+            btnDecline.setIsVisible(!isLoading)
+        }
+    }
 }
 
 class FollowRequestViewHolder(
@@ -153,7 +177,7 @@ class FollowRequestViewHolder(
     override fun bind(data: InviteListItem) {
         if (data !is FollowRequestListItem) return
 
-        binding.lLoading.setIsVisible(data.isLoading)
+        setLoading(data.isLoading)
         bindUser(data.user)
         binding.tvReasonMessage.apply {
             setIsVisible(data.reasonMessage != null)
@@ -167,6 +191,14 @@ class FollowRequestViewHolder(
             ivUserImage.loadUserProfileIcon(user.avatarUrl, user.id)
         }
     }
+
+    private fun setLoading(isLoading: Boolean) {
+        with(binding) {
+            vLoading.setIsVisible(isLoading)
+            btnAccept.setIsVisible(!isLoading)
+            btnDecline.setIsVisible(!isLoading)
+        }
+    }
 }
 
 class ConnectionInviteViewHolder(
@@ -186,7 +218,7 @@ class ConnectionInviteViewHolder(
     override fun bind(data: InviteListItem) {
         if (data !is ConnectionInviteListItem) return
 
-        binding.lLoading.setIsVisible(data.isLoading)
+        setLoading(data.isLoading)
         bindUser(data.user)
     }
 
@@ -196,6 +228,14 @@ class ConnectionInviteViewHolder(
             ivUserImage.loadUserProfileIcon(user.avatarUrl, user.id)
         }
     }
+
+    private fun setLoading(isLoading: Boolean) {
+        with(binding) {
+            vLoading.setIsVisible(isLoading)
+            btnAccept.setIsVisible(!isLoading)
+            btnDecline.setIsVisible(!isLoading)
+        }
+    }
 }
 
 class InviteHeaderViewHolder(
diff --git a/core/src/main/res/layout/list_item_connection_invite.xml b/core/src/main/res/layout/list_item_connection_invite.xml
index 0f99fb3556d6d718f5f8e27f6616b4e687777a6a..79b59543ba5a69488141f18fb8acb1b7bf1b2dba 100644
--- a/core/src/main/res/layout/list_item_connection_invite.xml
+++ b/core/src/main/res/layout/list_item_connection_invite.xml
@@ -78,27 +78,16 @@
         app:layout_constraintStart_toEndOf="@id/btnAccept"
         app:layout_constraintTop_toTopOf="@id/btnAccept" />
 
-    <FrameLayout
-        android:id="@+id/lLoading"
-        android:layout_width="0dp"
-        android:layout_height="0dp"
-        android:background="?android:colorBackground"
-        android:clickable="true"
-        android:focusable="true"
-        android:outlineProvider="none"
-        android:translationZ="100dp"
+
+    <ProgressBar
+        android:id="@+id/vLoading"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_gravity="center"
         android:visibility="gone"
         app:layout_constraintBottom_toBottomOf="parent"
         app:layout_constraintEnd_toEndOf="parent"
         app:layout_constraintStart_toEndOf="@id/ivUserImage"
-        app:layout_constraintTop_toBottomOf="@+id/tvInvitesToConnect">
-
-        <ProgressBar
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:layout_gravity="center"
-            app:layout_constraintStart_toStartOf="parent"
-            app:layout_constraintTop_toTopOf="parent" />
-    </FrameLayout>
+        app:layout_constraintTop_toBottomOf="@+id/tvInvitesToConnect" />
 
 </androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
diff --git a/core/src/main/res/layout/list_item_invited_circle.xml b/core/src/main/res/layout/list_item_invited_circle.xml
index a6894755130e415a09b9dcb11297a362795c2695..f3d478ff9c55891ef8eff1a0605c012f78f30a35 100644
--- a/core/src/main/res/layout/list_item_invited_circle.xml
+++ b/core/src/main/res/layout/list_item_invited_circle.xml
@@ -97,27 +97,17 @@
         app:layout_constraintStart_toEndOf="@id/btnAccept"
         app:layout_constraintTop_toBottomOf="@+id/tvInvitedBy" />
 
-    <FrameLayout
-        android:id="@+id/lLoading"
-        android:layout_width="0dp"
-        android:layout_height="0dp"
-        android:background="?android:colorBackground"
-        android:clickable="true"
-        android:focusable="true"
-        android:outlineProvider="none"
-        android:translationZ="100dp"
+
+    <ProgressBar
+        android:id="@+id/vLoading"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_gravity="center"
         android:visibility="gone"
         app:layout_constraintBottom_toBottomOf="parent"
         app:layout_constraintEnd_toEndOf="parent"
         app:layout_constraintStart_toEndOf="@id/ivCircle"
-        app:layout_constraintTop_toBottomOf="@+id/tvInvitedBy">
+        app:layout_constraintTop_toBottomOf="@+id/tvInvitedBy" />
 
-        <ProgressBar
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:layout_gravity="center"
-            app:layout_constraintStart_toStartOf="parent"
-            app:layout_constraintTop_toTopOf="parent" />
-    </FrameLayout>
 
 </androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
diff --git a/core/src/main/res/layout/list_item_invited_gallery.xml b/core/src/main/res/layout/list_item_invited_gallery.xml
index 0e2e5683ffd3e76860b2657b6722dc75aac3ec41..63c32784397f4ea9009474402ad55a722269287f 100644
--- a/core/src/main/res/layout/list_item_invited_gallery.xml
+++ b/core/src/main/res/layout/list_item_invited_gallery.xml
@@ -90,27 +90,16 @@
         app:layout_constraintStart_toEndOf="@id/btnAccept"
         app:layout_constraintTop_toBottomOf="@+id/tvInviterName" />
 
-    <FrameLayout
-        android:id="@+id/lLoading"
-        android:layout_width="0dp"
-        android:layout_height="0dp"
-        android:background="?android:colorBackground"
-        android:clickable="true"
-        android:focusable="true"
-        android:outlineProvider="none"
-        android:translationZ="100dp"
+
+    <ProgressBar
+        android:id="@+id/vLoading"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_gravity="center"
         android:visibility="gone"
         app:layout_constraintBottom_toBottomOf="parent"
         app:layout_constraintEnd_toEndOf="parent"
         app:layout_constraintStart_toEndOf="@id/ivGallery"
-        app:layout_constraintTop_toBottomOf="@+id/tvInviterName">
-
-        <ProgressBar
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:layout_gravity="center"
-            app:layout_constraintStart_toStartOf="parent"
-            app:layout_constraintTop_toTopOf="parent" />
-    </FrameLayout>
+        app:layout_constraintTop_toBottomOf="@+id/tvInviterName" />
 
 </androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
diff --git a/core/src/main/res/layout/list_item_invited_group.xml b/core/src/main/res/layout/list_item_invited_group.xml
index 84e736abaa7f7d13207febb61d2afe5ddf964d5d..2ad031dfa3a02e5b575fc72fdbc17757d285d7ea 100644
--- a/core/src/main/res/layout/list_item_invited_group.xml
+++ b/core/src/main/res/layout/list_item_invited_group.xml
@@ -101,27 +101,17 @@
         app:layout_constraintStart_toEndOf="@id/btnAccept"
         app:layout_constraintTop_toBottomOf="@+id/tvInviterName" />
 
-    <FrameLayout
-        android:id="@+id/lLoading"
-        android:layout_width="0dp"
-        android:layout_height="0dp"
-        android:background="?android:colorBackground"
-        android:clickable="true"
-        android:focusable="true"
-        android:outlineProvider="none"
-        android:translationZ="100dp"
+
+    <ProgressBar
+        android:id="@+id/vLoading"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_gravity="center"
         android:visibility="gone"
         app:layout_constraintBottom_toBottomOf="parent"
         app:layout_constraintEnd_toEndOf="parent"
         app:layout_constraintStart_toEndOf="@id/ivGroup"
-        app:layout_constraintTop_toBottomOf="@+id/tvInviterName">
+        app:layout_constraintTop_toBottomOf="@+id/tvInviterName" />
 
-        <ProgressBar
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:layout_gravity="center"
-            app:layout_constraintStart_toStartOf="parent"
-            app:layout_constraintTop_toTopOf="parent" />
-    </FrameLayout>
 
 </androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
diff --git a/core/src/main/res/layout/list_item_people_request.xml b/core/src/main/res/layout/list_item_people_request.xml
index 3ff510fc25d81a5903a0840b496d56967499efa1..9c4232bbcaf3e625dba923dc8025e86f4acecb14 100644
--- a/core/src/main/res/layout/list_item_people_request.xml
+++ b/core/src/main/res/layout/list_item_people_request.xml
@@ -93,27 +93,17 @@
         app:layout_constraintStart_toEndOf="@id/btnAccept"
         app:layout_constraintTop_toTopOf="@id/btnAccept" />
 
-    <FrameLayout
-        android:id="@+id/lLoading"
-        android:layout_width="0dp"
-        android:layout_height="0dp"
-        android:background="?android:colorBackground"
-        android:clickable="true"
-        android:focusable="true"
-        android:outlineProvider="none"
-        android:translationZ="100dp"
+
+    <ProgressBar
+        android:id="@+id/vLoading"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_gravity="center"
         android:visibility="gone"
         app:layout_constraintBottom_toBottomOf="parent"
         app:layout_constraintEnd_toEndOf="parent"
         app:layout_constraintStart_toEndOf="@id/ivUserImage"
-        app:layout_constraintTop_toBottomOf="@+id/tvReasonMessage">
+        app:layout_constraintTop_toBottomOf="@+id/tvReasonMessage" />
 
-        <ProgressBar
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:layout_gravity="center"
-            app:layout_constraintStart_toStartOf="parent"
-            app:layout_constraintTop_toTopOf="parent" />
-    </FrameLayout>
 
 </androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file