File tree Expand file tree Collapse file tree 2 files changed +12
-1
lines changed
data/src/main/java/com/hoc/flowmvi/data
feature-main/src/main/java/com/hoc/flowmvi/ui/main Expand file tree Collapse file tree 2 files changed +12
-1
lines changed Original file line number Diff line number Diff line change @@ -87,6 +87,8 @@ internal class UserRepositoryImpl(
87
87
.mapLeft(errorMapper)
88
88
89
89
override suspend fun remove (user : User ) = Either .catch {
90
+ extraDelay()
91
+ throw IOException ()
90
92
withContext(dispatchers.io) {
91
93
val response = userApiService.remove(user.id)
92
94
changesFlow.emit(Change .Removed (responseToDomain(response)))
Original file line number Diff line number Diff line change @@ -87,7 +87,16 @@ class MainActivity :
87
87
is SingleEvent .Refresh .Failure -> toast(" Refresh failure" )
88
88
is SingleEvent .GetUsersError -> toast(" Get user failure" )
89
89
is SingleEvent .RemoveUser .Success -> toast(" Removed '${event.user.fullName} '" )
90
- is SingleEvent .RemoveUser .Failure -> toast(" Error when removing '${event.user.fullName} '" )
90
+ is SingleEvent .RemoveUser .Failure -> {
91
+ toast(" Error when removing '${event.user.fullName} '" )
92
+ userAdapter.notifyItemChanged(
93
+ vm.viewState.value
94
+ .userItems
95
+ .indexOfFirst { it.id == event.user.id }
96
+ .takeIf { it != RecyclerView .NO_POSITION }
97
+ ? : return
98
+ )
99
+ }
91
100
}
92
101
}
93
102
You can’t perform that action at this time.
0 commit comments