From 82ffd1f83cdd3b4b5379df03bf0b9deb6f29bd27 Mon Sep 17 00:00:00 2001 From: Marcel Hibbe Date: Wed, 20 Jul 2022 13:48:32 +0200 Subject: [PATCH] add Options in init method this avoids adding them again on screen rotation... Signed-off-by: Marcel Hibbe --- .../nextcloud/talk/polls/ui/PollCreateDialogFragment.kt | 5 +---- .../com/nextcloud/talk/polls/ui/PollMainDialogFragment.kt | 2 +- .../nextcloud/talk/polls/viewmodels/PollCreateViewModel.kt | 7 ++++++- .../nextcloud/talk/polls/viewmodels/PollMainViewModel.kt | 2 +- 4 files changed, 9 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/com/nextcloud/talk/polls/ui/PollCreateDialogFragment.kt b/app/src/main/java/com/nextcloud/talk/polls/ui/PollCreateDialogFragment.kt index 2333d3313..cdaa8fa58 100644 --- a/app/src/main/java/com/nextcloud/talk/polls/ui/PollCreateDialogFragment.kt +++ b/app/src/main/java/com/nextcloud/talk/polls/ui/PollCreateDialogFragment.kt @@ -62,7 +62,7 @@ class PollCreateDialogFragment : DialogFragment(), PollCreateOptionsItemListener viewModel = ViewModelProvider(this, viewModelFactory)[PollCreateViewModel::class.java] val roomToken = arguments?.getString(KEY_ROOM_TOKEN)!! - viewModel.initialize(roomToken) + viewModel.setData(roomToken) } @SuppressLint("InflateParams") @@ -90,9 +90,6 @@ class PollCreateDialogFragment : DialogFragment(), PollCreateOptionsItemListener setupListeners() setupStateObserver() - - viewModel.addOption() - viewModel.addOption() } private fun setupListeners() { diff --git a/app/src/main/java/com/nextcloud/talk/polls/ui/PollMainDialogFragment.kt b/app/src/main/java/com/nextcloud/talk/polls/ui/PollMainDialogFragment.kt index e94cc4403..35af29b2e 100644 --- a/app/src/main/java/com/nextcloud/talk/polls/ui/PollMainDialogFragment.kt +++ b/app/src/main/java/com/nextcloud/talk/polls/ui/PollMainDialogFragment.kt @@ -59,7 +59,7 @@ class PollMainDialogFragment : DialogFragment() { val pollId = arguments?.getString(KEY_POLL_ID)!! val pollTitle = arguments?.getString(KEY_POLL_TITLE)!! - viewModel.initialize(user, roomToken, isOwnerOrModerator, pollId, pollTitle) + viewModel.setData(user, roomToken, isOwnerOrModerator, pollId, pollTitle) } @SuppressLint("InflateParams") 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 e78184b3e..269f579b0 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 @@ -70,7 +70,12 @@ class PollCreateViewModel @Inject constructor(private val repository: PollReposi private var disposable: Disposable? = null - fun initialize(roomToken: String) { + init { + addOption() + addOption() + } + + fun setData(roomToken: String) { this.roomToken = roomToken updateCreationState() } diff --git a/app/src/main/java/com/nextcloud/talk/polls/viewmodels/PollMainViewModel.kt b/app/src/main/java/com/nextcloud/talk/polls/viewmodels/PollMainViewModel.kt index e7d89fc6c..48534eeb4 100644 --- a/app/src/main/java/com/nextcloud/talk/polls/viewmodels/PollMainViewModel.kt +++ b/app/src/main/java/com/nextcloud/talk/polls/viewmodels/PollMainViewModel.kt @@ -75,7 +75,7 @@ class PollMainViewModel @Inject constructor(private val repository: PollReposito private var disposable: Disposable? = null - fun initialize(user: User, roomToken: String, isOwnerOrModerator: Boolean, pollId: String, pollTitle: String) { + fun setData(user: User, roomToken: String, isOwnerOrModerator: Boolean, pollId: String, pollTitle: String) { this.user = user this.roomToken = roomToken this.isOwnerOrModerator = isOwnerOrModerator