From 58739b8f1485bf00e166b226686179aeb91c76b0 Mon Sep 17 00:00:00 2001 From: Marcel Hibbe Date: Wed, 20 Jul 2022 17:49:18 +0200 Subject: [PATCH] disable buttons while waiting for response avoids doubleclick and doubled data Signed-off-by: Marcel Hibbe --- .../com/nextcloud/talk/polls/viewmodels/PollCreateViewModel.kt | 2 ++ .../com/nextcloud/talk/polls/viewmodels/PollVoteViewModel.kt | 2 ++ 2 files changed, 4 insertions(+) diff --git a/app/src/main/java/com/nextcloud/talk/polls/viewmodels/PollCreateViewModel.kt b/app/src/main/java/com/nextcloud/talk/polls/viewmodels/PollCreateViewModel.kt index 269f579b0..ebaae84be 100644 --- a/app/src/main/java/com/nextcloud/talk/polls/viewmodels/PollCreateViewModel.kt +++ b/app/src/main/java/com/nextcloud/talk/polls/viewmodels/PollCreateViewModel.kt @@ -114,6 +114,8 @@ class PollCreateViewModel @Inject constructor(private val repository: PollReposi _options.value = _options.value?.filter { it.pollOption.isNotEmpty() } as ArrayList if (_question.isNotEmpty() && _options.value?.isNotEmpty() == true) { + _viewState.value = PollCreationState(enableAddOptionButton = false, enableCreatePollButton = false) + repository.createPoll( roomToken, _question, _options.value!!.map { it.pollOption }, resultMode, maxVotes diff --git a/app/src/main/java/com/nextcloud/talk/polls/viewmodels/PollVoteViewModel.kt b/app/src/main/java/com/nextcloud/talk/polls/viewmodels/PollVoteViewModel.kt index a13ea3639..e3689ff62 100644 --- a/app/src/main/java/com/nextcloud/talk/polls/viewmodels/PollVoteViewModel.kt +++ b/app/src/main/java/com/nextcloud/talk/polls/viewmodels/PollVoteViewModel.kt @@ -79,6 +79,8 @@ class PollVoteViewModel @Inject constructor(private val repository: PollReposito fun vote(roomToken: String, pollId: String) { if (_selectedOptions.isNotEmpty()) { + _submitButtonEnabled.value = false + repository.vote(roomToken, pollId, _selectedOptions) .doOnSubscribe { disposable = it } ?.subscribeOn(Schedulers.io())