@@ -37,6 +37,7 @@ import com.google.android.material.timepicker.TimeFormat
3737import com.nextcloud.android.common.ui.theme.utils.ColorRole
3838import com.nextcloud.talk.R
3939import com.nextcloud.talk.application.NextcloudTalkApplication
40+ import com.nextcloud.talk.chat.ChatActivity
4041import com.nextcloud.talk.chat.viewmodels.ChatViewModel
4142import com.nextcloud.talk.databinding.DialogDateTimePickerBinding
4243import com.nextcloud.talk.ui.theme.ViewThemeUtils
@@ -47,18 +48,15 @@ import javax.inject.Inject
4748
4849@Suppress(" TooManyFunctions" )
4950@AutoInjector(NextcloudTalkApplication ::class )
50- class DateTimePickerFragment (
51- token : String ,
52- id : String ,
53- chatViewModel : ChatViewModel ,
54- private val chatApiVersion : Int
55- ) : DialogFragment() {
51+ class DateTimePickerFragment : DialogFragment () {
52+
5653 lateinit var binding: DialogDateTimePickerBinding
5754 private var dialogView: View ? = null
58- private var viewModel = chatViewModel
55+ private lateinit var viewModel: ChatViewModel
5956 private var currentTimeStamp: Long? = null
60- private var roomToken = token
61- private var messageId = id
57+ private lateinit var roomToken: String
58+ private lateinit var messageId: String
59+ private var chatApiVersion: Int = - 1
6260 private var laterTodayTimeStamp = 0L
6361 private var tomorrowTimeStamp = 0L
6462 private var weekendTimeStamp = 0L
@@ -73,6 +71,12 @@ class DateTimePickerFragment(
7371 override fun onCreateDialog (savedInstanceState : Bundle ? ): Dialog {
7472 binding = DialogDateTimePickerBinding .inflate(LayoutInflater .from(context))
7573 dialogView = binding.root
74+ viewModel = (requireActivity() as ChatActivity ).chatViewModel
75+ arguments?.let {
76+ roomToken = it.getString(TOKEN_ARG , " " )
77+ messageId = it.getString(ID_ARG , " " )
78+ chatApiVersion = it.getInt(CHAT_API_VERSION_ARG )
79+ }
7680 return MaterialAlertDialogBuilder (requireContext()).setView(dialogView).create()
7781 }
7882
@@ -304,14 +308,20 @@ class DateTimePickerFragment(
304308 private const val ONE_SEC = 1000
305309 private const val HOUR_EIGHT_AM = 8
306310 private const val HOUR_SIX_PM = 18
311+ private const val TOKEN_ARG = " TOKEN_ARG"
312+ private const val ID_ARG = " ID_ARG"
313+ private const val CHAT_API_VERSION_ARG = " CHAT_API_VERSION_ARG"
307314
308315 @JvmStatic
309- fun newInstance (token : String , id : String , chatViewModel : ChatViewModel , chatApiVersion : Int ) =
310- DateTimePickerFragment (
311- token,
312- id,
313- chatViewModel,
314- chatApiVersion
315- )
316+ fun newInstance (token : String , id : String , chatApiVersion : Int ): DateTimePickerFragment {
317+ val args = Bundle ()
318+ args.putString(TOKEN_ARG , token)
319+ args.putString(ID_ARG , id)
320+ args.putInt(CHAT_API_VERSION_ARG , chatApiVersion)
321+
322+ val dateTimePickerFragment = DateTimePickerFragment ()
323+ dateTimePickerFragment.arguments = args
324+ return dateTimePickerFragment
325+ }
316326 }
317327}
0 commit comments