Bumped dependencies + required code changes + updated CHANGELOG from release/4.5
This commit is contained in:
parent
9874b04d9c
commit
7e0322abb5
85 changed files with 210 additions and 233 deletions
|
@ -38,6 +38,11 @@ Group changes to describe their impact on the project, as follows:
|
||||||
### Removed
|
### Removed
|
||||||
- Global push notification setting in Network, use the switch in each Account instead
|
- Global push notification setting in Network, use the switch in each Account instead
|
||||||
|
|
||||||
|
## [4.5.5] - 2021-10-28
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- SDK updated to 5.0.45
|
||||||
|
|
||||||
## [4.5.4] - 2021-10-19
|
## [4.5.4] - 2021-10-19
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
|
@ -214,20 +214,20 @@ dependencies {
|
||||||
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
|
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
|
||||||
|
|
||||||
implementation 'androidx.appcompat:appcompat:1.3.1'
|
implementation 'androidx.appcompat:appcompat:1.3.1'
|
||||||
implementation 'androidx.media:media:1.4.1'
|
implementation 'androidx.media:media:1.4.3'
|
||||||
implementation 'androidx.fragment:fragment-ktx:1.4.0-alpha08'
|
implementation 'androidx.fragment:fragment-ktx:1.4.0-beta01'
|
||||||
implementation 'androidx.core:core-ktx:1.7.0-alpha02'
|
implementation 'androidx.core:core-ktx:1.7.0'
|
||||||
|
|
||||||
def nav_version = "2.4.0-alpha08"
|
def nav_version = "2.4.0-beta01"
|
||||||
implementation "androidx.navigation:navigation-fragment-ktx:$nav_version"
|
implementation "androidx.navigation:navigation-fragment-ktx:$nav_version"
|
||||||
implementation "androidx.navigation:navigation-ui-ktx:$nav_version"
|
implementation "androidx.navigation:navigation-ui-ktx:$nav_version"
|
||||||
|
|
||||||
implementation "androidx.slidingpanelayout:slidingpanelayout:1.2.0-beta01"
|
implementation "androidx.slidingpanelayout:slidingpanelayout:1.2.0-beta01"
|
||||||
implementation "androidx.window:window:1.0.0-beta02"
|
implementation "androidx.window:window:1.0.0-beta03"
|
||||||
|
|
||||||
implementation 'androidx.constraintlayout:constraintlayout:2.1.0'
|
implementation 'androidx.constraintlayout:constraintlayout:2.1.1'
|
||||||
implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0'
|
implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0'
|
||||||
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1'
|
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.4.0'
|
||||||
implementation 'androidx.recyclerview:recyclerview:1.2.1'
|
implementation 'androidx.recyclerview:recyclerview:1.2.1'
|
||||||
implementation "androidx.security:security-crypto-ktx:1.1.0-alpha03"
|
implementation "androidx.security:security-crypto-ktx:1.1.0-alpha03"
|
||||||
|
|
||||||
|
|
|
@ -20,32 +20,33 @@
|
||||||
package org.linphone.activities.assistant
|
package org.linphone.activities.assistant
|
||||||
|
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import androidx.databinding.DataBindingUtil
|
import androidx.coordinatorlayout.widget.CoordinatorLayout
|
||||||
import androidx.lifecycle.ViewModelProvider
|
import androidx.lifecycle.ViewModelProvider
|
||||||
import com.google.android.material.snackbar.Snackbar
|
import com.google.android.material.snackbar.Snackbar
|
||||||
import org.linphone.R
|
import org.linphone.R
|
||||||
import org.linphone.activities.GenericActivity
|
import org.linphone.activities.GenericActivity
|
||||||
import org.linphone.activities.SnackBarActivity
|
import org.linphone.activities.SnackBarActivity
|
||||||
import org.linphone.activities.assistant.viewmodels.SharedAssistantViewModel
|
import org.linphone.activities.assistant.viewmodels.SharedAssistantViewModel
|
||||||
import org.linphone.databinding.AssistantActivityBinding
|
|
||||||
|
|
||||||
class AssistantActivity : GenericActivity(), SnackBarActivity {
|
class AssistantActivity : GenericActivity(), SnackBarActivity {
|
||||||
private lateinit var binding: AssistantActivityBinding
|
|
||||||
private lateinit var sharedViewModel: SharedAssistantViewModel
|
private lateinit var sharedViewModel: SharedAssistantViewModel
|
||||||
|
private lateinit var coordinator: CoordinatorLayout
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
|
|
||||||
binding = DataBindingUtil.setContentView(this, R.layout.assistant_activity)
|
setContentView(R.layout.assistant_activity)
|
||||||
|
|
||||||
sharedViewModel = ViewModelProvider(this).get(SharedAssistantViewModel::class.java)
|
sharedViewModel = ViewModelProvider(this)[SharedAssistantViewModel::class.java]
|
||||||
|
|
||||||
|
coordinator = findViewById(R.id.coordinator)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun showSnackBar(resourceId: Int) {
|
override fun showSnackBar(resourceId: Int) {
|
||||||
Snackbar.make(binding.coordinator, resourceId, Snackbar.LENGTH_LONG).show()
|
Snackbar.make(coordinator, resourceId, Snackbar.LENGTH_LONG).show()
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun showSnackBar(message: String) {
|
override fun showSnackBar(message: String) {
|
||||||
Snackbar.make(binding.coordinator, message, Snackbar.LENGTH_LONG).show()
|
Snackbar.make(coordinator, message, Snackbar.LENGTH_LONG).show()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -49,10 +49,10 @@ class AccountLoginFragment : AbstractPhoneFragment<AssistantAccountLoginFragment
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedAssistantViewModel::class.java)
|
ViewModelProvider(this)[SharedAssistantViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this, AccountLoginViewModelFactory(sharedViewModel.getAccountCreator())).get(AccountLoginViewModel::class.java)
|
viewModel = ViewModelProvider(this, AccountLoginViewModelFactory(sharedViewModel.getAccountCreator()))[AccountLoginViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
if (resources.getBoolean(R.bool.isTablet)) {
|
if (resources.getBoolean(R.bool.isTablet)) {
|
||||||
|
|
|
@ -40,7 +40,7 @@ class EchoCancellerCalibrationFragment : GenericFragment<AssistantEchoCancellerC
|
||||||
|
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this).get(EchoCancellerCalibrationViewModel::class.java)
|
viewModel = ViewModelProvider(this)[EchoCancellerCalibrationViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
viewModel.echoCalibrationTerminated.observe(
|
viewModel.echoCalibrationTerminated.observe(
|
||||||
|
|
|
@ -43,10 +43,10 @@ class EmailAccountCreationFragment : GenericFragment<AssistantEmailAccountCreati
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedAssistantViewModel::class.java)
|
ViewModelProvider(this)[SharedAssistantViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this, EmailAccountCreationViewModelFactory(sharedViewModel.getAccountCreator())).get(EmailAccountCreationViewModel::class.java)
|
viewModel = ViewModelProvider(this, EmailAccountCreationViewModelFactory(sharedViewModel.getAccountCreator()))[EmailAccountCreationViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
viewModel.goToEmailValidationEvent.observe(
|
viewModel.goToEmailValidationEvent.observe(
|
||||||
|
|
|
@ -42,10 +42,10 @@ class EmailAccountValidationFragment : GenericFragment<AssistantEmailAccountVali
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedAssistantViewModel::class.java)
|
ViewModelProvider(this)[SharedAssistantViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this, EmailAccountValidationViewModelFactory(sharedViewModel.getAccountCreator())).get(EmailAccountValidationViewModel::class.java)
|
viewModel = ViewModelProvider(this, EmailAccountValidationViewModelFactory(sharedViewModel.getAccountCreator()))[EmailAccountValidationViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
viewModel.leaveAssistantEvent.observe(
|
viewModel.leaveAssistantEvent.observe(
|
||||||
|
|
|
@ -47,10 +47,10 @@ class GenericAccountLoginFragment : GenericFragment<AssistantGenericAccountLogin
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedAssistantViewModel::class.java)
|
ViewModelProvider(this)[SharedAssistantViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this, GenericLoginViewModelFactory(sharedViewModel.getAccountCreator(true))).get(GenericLoginViewModel::class.java)
|
viewModel = ViewModelProvider(this, GenericLoginViewModelFactory(sharedViewModel.getAccountCreator(true)))[GenericLoginViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
viewModel.leaveAssistantEvent.observe(
|
viewModel.leaveAssistantEvent.observe(
|
||||||
|
|
|
@ -42,10 +42,10 @@ class PhoneAccountCreationFragment : AbstractPhoneFragment<AssistantPhoneAccount
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedAssistantViewModel::class.java)
|
ViewModelProvider(this)[SharedAssistantViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this, PhoneAccountCreationViewModelFactory(sharedViewModel.getAccountCreator())).get(PhoneAccountCreationViewModel::class.java)
|
viewModel = ViewModelProvider(this, PhoneAccountCreationViewModelFactory(sharedViewModel.getAccountCreator()))[PhoneAccountCreationViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
binding.setInfoClickListener {
|
binding.setInfoClickListener {
|
||||||
|
|
|
@ -43,11 +43,11 @@ class PhoneAccountLinkingFragment : AbstractPhoneFragment<AssistantPhoneAccountL
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedAssistantViewModel::class.java)
|
ViewModelProvider(this)[SharedAssistantViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
val accountCreator = sharedViewModel.getAccountCreator()
|
val accountCreator = sharedViewModel.getAccountCreator()
|
||||||
viewModel = ViewModelProvider(this, PhoneAccountLinkingViewModelFactory(accountCreator)).get(PhoneAccountLinkingViewModel::class.java)
|
viewModel = ViewModelProvider(this, PhoneAccountLinkingViewModelFactory(accountCreator))[PhoneAccountLinkingViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
val username = arguments?.getString("Username")
|
val username = arguments?.getString("Username")
|
||||||
|
|
|
@ -47,10 +47,10 @@ class PhoneAccountValidationFragment : GenericFragment<AssistantPhoneAccountVali
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedAssistantViewModel::class.java)
|
ViewModelProvider(this)[SharedAssistantViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this, PhoneAccountValidationViewModelFactory(sharedViewModel.getAccountCreator())).get(PhoneAccountValidationViewModel::class.java)
|
viewModel = ViewModelProvider(this, PhoneAccountValidationViewModelFactory(sharedViewModel.getAccountCreator()))[PhoneAccountValidationViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
viewModel.phoneNumber.value = arguments?.getString("PhoneNumber")
|
viewModel.phoneNumber.value = arguments?.getString("PhoneNumber")
|
||||||
|
|
|
@ -45,10 +45,10 @@ class QrCodeFragment : GenericFragment<AssistantQrCodeFragmentBinding>() {
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedAssistantViewModel::class.java)
|
ViewModelProvider(this)[SharedAssistantViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this).get(QrCodeViewModel::class.java)
|
viewModel = ViewModelProvider(this)[QrCodeViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
viewModel.qrCodeFoundEvent.observe(
|
viewModel.qrCodeFoundEvent.observe(
|
||||||
|
|
|
@ -44,10 +44,10 @@ class RemoteProvisioningFragment : GenericFragment<AssistantRemoteProvisioningFr
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedAssistantViewModel::class.java)
|
ViewModelProvider(this)[SharedAssistantViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this).get(RemoteProvisioningViewModel::class.java)
|
viewModel = ViewModelProvider(this)[RemoteProvisioningViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
binding.setQrCodeClickListener {
|
binding.setQrCodeClickListener {
|
||||||
|
|
|
@ -49,7 +49,7 @@ class WelcomeFragment : GenericFragment<AssistantWelcomeFragmentBinding>() {
|
||||||
|
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this).get(WelcomeViewModel::class.java)
|
viewModel = ViewModelProvider(this)[WelcomeViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
binding.setCreateAccountClickListener {
|
binding.setCreateAccountClickListener {
|
||||||
|
|
|
@ -30,7 +30,7 @@ class AccountLoginViewModelFactory(private val accountCreator: AccountCreator) :
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return AccountLoginViewModel(accountCreator) as T
|
return AccountLoginViewModel(accountCreator) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -34,7 +34,7 @@ class EmailAccountCreationViewModelFactory(private val accountCreator: AccountCr
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return EmailAccountCreationViewModel(accountCreator) as T
|
return EmailAccountCreationViewModel(accountCreator) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,7 +32,7 @@ class EmailAccountValidationViewModelFactory(private val accountCreator: Account
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return EmailAccountValidationViewModel(accountCreator) as T
|
return EmailAccountValidationViewModel(accountCreator) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -33,7 +33,7 @@ class GenericLoginViewModelFactory(private val accountCreator: AccountCreator) :
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return GenericLoginViewModel(accountCreator) as T
|
return GenericLoginViewModel(accountCreator) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -36,7 +36,7 @@ class PhoneAccountCreationViewModelFactory(private val accountCreator: AccountCr
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return PhoneAccountCreationViewModel(accountCreator) as T
|
return PhoneAccountCreationViewModel(accountCreator) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -30,7 +30,7 @@ class PhoneAccountLinkingViewModelFactory(private val accountCreator: AccountCre
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return PhoneAccountLinkingViewModel(accountCreator) as T
|
return PhoneAccountLinkingViewModel(accountCreator) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,7 +32,7 @@ class PhoneAccountValidationViewModelFactory(private val accountCreator: Account
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return PhoneAccountValidationViewModel(accountCreator) as T
|
return PhoneAccountValidationViewModel(accountCreator) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -55,10 +55,10 @@ class CallActivity : ProximitySensorActivity() {
|
||||||
binding = DataBindingUtil.setContentView(this, R.layout.call_activity)
|
binding = DataBindingUtil.setContentView(this, R.layout.call_activity)
|
||||||
binding.lifecycleOwner = this
|
binding.lifecycleOwner = this
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this).get(ControlsFadingViewModel::class.java)
|
viewModel = ViewModelProvider(this)[ControlsFadingViewModel::class.java]
|
||||||
binding.controlsFadingViewModel = viewModel
|
binding.controlsFadingViewModel = viewModel
|
||||||
|
|
||||||
sharedViewModel = ViewModelProvider(this).get(SharedCallViewModel::class.java)
|
sharedViewModel = ViewModelProvider(this)[SharedCallViewModel::class.java]
|
||||||
|
|
||||||
sharedViewModel.toggleDrawerEvent.observe(
|
sharedViewModel.toggleDrawerEvent.observe(
|
||||||
this,
|
this,
|
||||||
|
|
|
@ -76,7 +76,7 @@ class OutgoingCallActivity : ProximitySensorActivity() {
|
||||||
)[CallViewModel::class.java]
|
)[CallViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
controlsViewModel = ViewModelProvider(this).get(ControlsViewModel::class.java)
|
controlsViewModel = ViewModelProvider(this)[ControlsViewModel::class.java]
|
||||||
binding.controlsViewModel = controlsViewModel
|
binding.controlsViewModel = controlsViewModel
|
||||||
|
|
||||||
viewModel.callEndedEvent.observe(
|
viewModel.callEndedEvent.observe(
|
||||||
|
|
|
@ -69,21 +69,21 @@ class ControlsFragment : GenericFragment<CallControlsFragmentBinding>() {
|
||||||
useMaterialSharedAxisXForwardAnimation = false
|
useMaterialSharedAxisXForwardAnimation = false
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedCallViewModel::class.java)
|
ViewModelProvider(this)[SharedCallViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
callsViewModel = requireActivity().run {
|
callsViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(CallsViewModel::class.java)
|
ViewModelProvider(this)[CallsViewModel::class.java]
|
||||||
}
|
}
|
||||||
binding.viewModel = callsViewModel
|
binding.viewModel = callsViewModel
|
||||||
|
|
||||||
controlsViewModel = requireActivity().run {
|
controlsViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(ControlsViewModel::class.java)
|
ViewModelProvider(this)[ControlsViewModel::class.java]
|
||||||
}
|
}
|
||||||
binding.controlsViewModel = controlsViewModel
|
binding.controlsViewModel = controlsViewModel
|
||||||
|
|
||||||
conferenceViewModel = requireActivity().run {
|
conferenceViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(ConferenceViewModel::class.java)
|
ViewModelProvider(this)[ConferenceViewModel::class.java]
|
||||||
}
|
}
|
||||||
binding.conferenceViewModel = conferenceViewModel
|
binding.conferenceViewModel = conferenceViewModel
|
||||||
|
|
||||||
|
|
|
@ -38,7 +38,7 @@ class StatisticsFragment : GenericFragment<CallStatisticsFragmentBinding>() {
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
useMaterialSharedAxisXForwardAnimation = false
|
useMaterialSharedAxisXForwardAnimation = false
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this).get(StatisticsListViewModel::class.java)
|
viewModel = ViewModelProvider(this)[StatisticsListViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -48,11 +48,11 @@ class StatusFragment : GenericFragment<CallStatusFragmentBinding>() {
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
useMaterialSharedAxisXForwardAnimation = false
|
useMaterialSharedAxisXForwardAnimation = false
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this).get(StatusViewModel::class.java)
|
viewModel = ViewModelProvider(this)[StatusViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedCallViewModel::class.java)
|
ViewModelProvider(this)[SharedCallViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
binding.setStatsClickListener {
|
binding.setStatsClickListener {
|
||||||
|
|
|
@ -49,16 +49,16 @@ class VideoRenderingFragment : GenericFragment<CallVideoFragmentBinding>() {
|
||||||
binding.lifecycleOwner = this
|
binding.lifecycleOwner = this
|
||||||
|
|
||||||
controlsFadingViewModel = requireActivity().run {
|
controlsFadingViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(ControlsFadingViewModel::class.java)
|
ViewModelProvider(this)[ControlsFadingViewModel::class.java]
|
||||||
}
|
}
|
||||||
binding.controlsFadingViewModel = controlsFadingViewModel
|
binding.controlsFadingViewModel = controlsFadingViewModel
|
||||||
|
|
||||||
callsViewModel = requireActivity().run {
|
callsViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(CallsViewModel::class.java)
|
ViewModelProvider(this)[CallsViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
conferenceViewModel = requireActivity().run {
|
conferenceViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(ConferenceViewModel::class.java)
|
ViewModelProvider(this)[ConferenceViewModel::class.java]
|
||||||
}
|
}
|
||||||
binding.conferenceViewModel = conferenceViewModel
|
binding.conferenceViewModel = conferenceViewModel
|
||||||
|
|
||||||
|
|
|
@ -42,7 +42,7 @@ class CallViewModelFactory(private val call: Call) :
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return CallViewModel(call) as T
|
return CallViewModel(call) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,7 +31,7 @@ class IncomingCallViewModelFactory(private val call: Call) :
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return IncomingCallViewModel(call) as T
|
return IncomingCallViewModel(call) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -108,7 +108,7 @@ class ChatBubbleActivity : GenericActivity() {
|
||||||
)[ChatMessageSendingViewModel::class.java]
|
)[ChatMessageSendingViewModel::class.java]
|
||||||
binding.chatSendingViewModel = chatSendingViewModel
|
binding.chatSendingViewModel = chatSendingViewModel
|
||||||
|
|
||||||
val listSelectionViewModel = ViewModelProvider(this).get(ListTopBarViewModel::class.java)
|
val listSelectionViewModel = ViewModelProvider(this)[ListTopBarViewModel::class.java]
|
||||||
adapter = ChatMessagesListAdapter(listSelectionViewModel, this)
|
adapter = ChatMessagesListAdapter(listSelectionViewModel, this)
|
||||||
// SubmitList is done on a background thread
|
// SubmitList is done on a background thread
|
||||||
// We need this adapter data observer to know when to scroll
|
// We need this adapter data observer to know when to scroll
|
||||||
|
|
|
@ -115,10 +115,10 @@ class MainActivity : GenericActivity(), SnackBarActivity, NavController.OnDestin
|
||||||
binding = DataBindingUtil.setContentView(this, R.layout.main_activity)
|
binding = DataBindingUtil.setContentView(this, R.layout.main_activity)
|
||||||
binding.lifecycleOwner = this
|
binding.lifecycleOwner = this
|
||||||
|
|
||||||
sharedViewModel = ViewModelProvider(this).get(SharedMainViewModel::class.java)
|
sharedViewModel = ViewModelProvider(this)[SharedMainViewModel::class.java]
|
||||||
binding.viewModel = sharedViewModel
|
binding.viewModel = sharedViewModel
|
||||||
|
|
||||||
callOverlayViewModel = ViewModelProvider(this).get(CallOverlayViewModel::class.java)
|
callOverlayViewModel = ViewModelProvider(this)[CallOverlayViewModel::class.java]
|
||||||
binding.callOverlayViewModel = callOverlayViewModel
|
binding.callOverlayViewModel = callOverlayViewModel
|
||||||
|
|
||||||
sharedViewModel.toggleDrawerEvent.observe(
|
sharedViewModel.toggleDrawerEvent.observe(
|
||||||
|
|
|
@ -38,7 +38,7 @@ class AboutFragment : SecureFragment<AboutFragmentBinding>() {
|
||||||
|
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this).get(AboutViewModel::class.java)
|
viewModel = ViewModelProvider(this)[AboutViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
binding.setBackClickListener { goBack() }
|
binding.setBackClickListener { goBack() }
|
||||||
|
|
|
@ -54,14 +54,14 @@ class ChatRoomCreationFragment : SecureFragment<ChatRoomCreationFragmentBinding>
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedMainViewModel::class.java)
|
ViewModelProvider(this)[SharedMainViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
useMaterialSharedAxisXForwardAnimation = sharedViewModel.isSlidingPaneSlideable.value == false
|
useMaterialSharedAxisXForwardAnimation = sharedViewModel.isSlidingPaneSlideable.value == false
|
||||||
|
|
||||||
val createGroup = arguments?.getBoolean("createGroup") ?: false
|
val createGroup = arguments?.getBoolean("createGroup") ?: false
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this).get(ChatRoomCreationViewModel::class.java)
|
viewModel = ViewModelProvider(this)[ChatRoomCreationViewModel::class.java]
|
||||||
viewModel.createGroupChat.value = createGroup
|
viewModel.createGroupChat.value = createGroup
|
||||||
|
|
||||||
viewModel.isEncrypted.value = sharedViewModel.createEncryptedChatRoom
|
viewModel.isEncrypted.value = sharedViewModel.createEncryptedChatRoom
|
||||||
|
|
|
@ -113,7 +113,7 @@ class DetailChatRoomFragment : MasterFragment<ChatRoomDetailFragmentBinding, Cha
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedMainViewModel::class.java)
|
ViewModelProvider(this)[SharedMainViewModel::class.java]
|
||||||
}
|
}
|
||||||
binding.sharedMainViewModel = sharedViewModel
|
binding.sharedMainViewModel = sharedViewModel
|
||||||
|
|
||||||
|
|
|
@ -43,7 +43,7 @@ class DevicesFragment : SecureFragment<ChatRoomDevicesFragmentBinding>() {
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedMainViewModel::class.java)
|
ViewModelProvider(this)[SharedMainViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
val chatRoom = sharedViewModel.selectedChatRoom.value
|
val chatRoom = sharedViewModel.selectedChatRoom.value
|
||||||
|
|
|
@ -46,7 +46,7 @@ class EphemeralFragment : SecureFragment<ChatRoomEphemeralFragmentBinding>() {
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedMainViewModel::class.java)
|
ViewModelProvider(this)[SharedMainViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
val chatRoom = sharedViewModel.selectedChatRoom.value
|
val chatRoom = sharedViewModel.selectedChatRoom.value
|
||||||
|
|
|
@ -57,7 +57,7 @@ class GroupInfoFragment : SecureFragment<ChatRoomGroupInfoFragmentBinding>() {
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedMainViewModel::class.java)
|
ViewModelProvider(this)[SharedMainViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
val chatRoom: ChatRoom? = sharedViewModel.selectedGroupChatRoom.value
|
val chatRoom: ChatRoom? = sharedViewModel.selectedGroupChatRoom.value
|
||||||
|
|
|
@ -50,7 +50,7 @@ class ImdnFragment : SecureFragment<ChatRoomImdnFragmentBinding>() {
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedMainViewModel::class.java)
|
ViewModelProvider(this)[SharedMainViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
val chatRoom = sharedViewModel.selectedChatRoom.value
|
val chatRoom = sharedViewModel.selectedChatRoom.value
|
||||||
|
|
|
@ -98,13 +98,13 @@ class MasterChatRoomsFragment : MasterFragment<ChatRoomMasterFragmentBinding, Ch
|
||||||
isSecure = true
|
isSecure = true
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
listViewModel = ViewModelProvider(this).get(ChatRoomsListViewModel::class.java)
|
listViewModel = ViewModelProvider(this)[ChatRoomsListViewModel::class.java]
|
||||||
binding.viewModel = listViewModel
|
binding.viewModel = listViewModel
|
||||||
|
|
||||||
/* Shared view model & sliding pane related */
|
/* Shared view model & sliding pane related */
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedMainViewModel::class.java)
|
ViewModelProvider(this)[SharedMainViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
view.doOnPreDraw { sharedViewModel.isSlidingPaneSlideable.value = binding.slidingPane.isSlideable }
|
view.doOnPreDraw { sharedViewModel.isSlidingPaneSlideable.value = binding.slidingPane.isSlideable }
|
||||||
|
|
|
@ -48,7 +48,7 @@ class ChatMessageSendingViewModelFactory(private val chatRoom: ChatRoom) :
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return ChatMessageSendingViewModel(chatRoom) as T
|
return ChatMessageSendingViewModel(chatRoom) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -36,7 +36,7 @@ class ChatMessagesListViewModelFactory(private val chatRoom: ChatRoom) :
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return ChatMessagesListViewModel(chatRoom) as T
|
return ChatMessagesListViewModel(chatRoom) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -40,7 +40,7 @@ class ChatRoomViewModelFactory(private val chatRoom: ChatRoom) :
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return ChatRoomViewModel(chatRoom) as T
|
return ChatRoomViewModel(chatRoom) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,7 +31,7 @@ class DevicesListViewModelFactory(private val chatRoom: ChatRoom) :
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return DevicesListViewModel(chatRoom) as T
|
return DevicesListViewModel(chatRoom) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,7 +32,7 @@ class EphemeralViewModelFactory(private val chatRoom: ChatRoom) :
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return EphemeralViewModel(chatRoom) as T
|
return EphemeralViewModel(chatRoom) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -36,7 +36,7 @@ class GroupInfoViewModelFactory(private val chatRoom: ChatRoom?) :
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return GroupInfoViewModel(chatRoom) as T
|
return GroupInfoViewModel(chatRoom) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,7 +32,7 @@ class ImdnViewModelFactory(private val chatMessage: ChatMessage) :
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return ImdnViewModel(chatMessage) as T
|
return ImdnViewModel(chatMessage) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -58,7 +58,7 @@ class RichEditText : AppCompatEditText {
|
||||||
Log.i("[Rich Edit Text] Received URI: $uri")
|
Log.i("[Rich Edit Text] Received URI: $uri")
|
||||||
val activity = context as Activity
|
val activity = context as Activity
|
||||||
val sharedViewModel = activity.run {
|
val sharedViewModel = activity.run {
|
||||||
ViewModelProvider(activity as ViewModelStoreOwner).get(SharedMainViewModel::class.java)
|
ViewModelProvider(activity as ViewModelStoreOwner)[SharedMainViewModel::class.java]
|
||||||
}
|
}
|
||||||
sharedViewModel.richContentUri.value = Event(uri)
|
sharedViewModel.richContentUri.value = Event(uri)
|
||||||
}
|
}
|
||||||
|
|
|
@ -61,7 +61,7 @@ class ContactEditorFragment : GenericFragment<ContactEditorFragmentBinding>(), S
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedMainViewModel::class.java)
|
ViewModelProvider(this)[SharedMainViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
viewModel = ViewModelProvider(
|
viewModel = ViewModelProvider(
|
||||||
|
|
|
@ -55,7 +55,7 @@ class DetailContactFragment : GenericFragment<ContactDetailFragmentBinding>() {
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedMainViewModel::class.java)
|
ViewModelProvider(this)[SharedMainViewModel::class.java]
|
||||||
}
|
}
|
||||||
binding.sharedMainViewModel = sharedViewModel
|
binding.sharedMainViewModel = sharedViewModel
|
||||||
|
|
||||||
|
|
|
@ -72,13 +72,13 @@ class MasterContactsFragment : MasterFragment<ContactMasterFragmentBinding, Cont
|
||||||
|
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
listViewModel = ViewModelProvider(this).get(ContactsListViewModel::class.java)
|
listViewModel = ViewModelProvider(this)[ContactsListViewModel::class.java]
|
||||||
binding.viewModel = listViewModel
|
binding.viewModel = listViewModel
|
||||||
|
|
||||||
/* Shared view model & sliding pane related */
|
/* Shared view model & sliding pane related */
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedMainViewModel::class.java)
|
ViewModelProvider(this)[SharedMainViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
view.doOnPreDraw { sharedViewModel.isSlidingPaneSlideable.value = binding.slidingPane.isSlideable }
|
view.doOnPreDraw { sharedViewModel.isSlidingPaneSlideable.value = binding.slidingPane.isSlideable }
|
||||||
|
|
|
@ -40,7 +40,7 @@ class ContactEditorViewModelFactory(private val contact: Contact?) :
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return ContactEditorViewModel(contact) as T
|
return ContactEditorViewModel(contact) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -43,7 +43,7 @@ class ContactViewModelFactory(private val contact: Contact) :
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return ContactViewModel(contact) as T
|
return ContactViewModel(contact) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -66,11 +66,11 @@ class DialerFragment : SecureFragment<DialerFragmentBinding>() {
|
||||||
|
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this).get(DialerViewModel::class.java)
|
viewModel = ViewModelProvider(this)[DialerViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedMainViewModel::class.java)
|
ViewModelProvider(this)[SharedMainViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
useMaterialSharedAxisXForwardAnimation = false
|
useMaterialSharedAxisXForwardAnimation = false
|
||||||
|
|
|
@ -20,20 +20,18 @@
|
||||||
package org.linphone.activities.main.files.adapters
|
package org.linphone.activities.main.files.adapters
|
||||||
|
|
||||||
import android.view.LayoutInflater
|
import android.view.LayoutInflater
|
||||||
|
import android.view.View
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
import androidx.databinding.DataBindingUtil
|
|
||||||
import androidx.recyclerview.widget.RecyclerView
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
import org.linphone.R
|
import org.linphone.R
|
||||||
import org.linphone.activities.main.files.viewmodels.PdfFileViewModel
|
import org.linphone.activities.main.files.viewmodels.PdfFileViewModel
|
||||||
import org.linphone.databinding.FilePdfViewerCellBinding
|
|
||||||
|
|
||||||
class PdfPagesListAdapter(private val pdfViewModel: PdfFileViewModel) : RecyclerView.Adapter<PdfPagesListAdapter.PdfPageViewHolder>() {
|
class PdfPagesListAdapter(private val pdfViewModel: PdfFileViewModel) : RecyclerView.Adapter<PdfPagesListAdapter.PdfPageViewHolder>() {
|
||||||
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): PdfPageViewHolder {
|
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): PdfPageViewHolder {
|
||||||
val binding: FilePdfViewerCellBinding = DataBindingUtil.inflate(
|
val view = LayoutInflater.from(parent.context).inflate(
|
||||||
LayoutInflater.from(parent.context),
|
|
||||||
R.layout.file_pdf_viewer_cell, parent, false
|
R.layout.file_pdf_viewer_cell, parent, false
|
||||||
)
|
)
|
||||||
return PdfPageViewHolder(binding)
|
return PdfPageViewHolder(view)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun getItemCount(): Int {
|
override fun getItemCount(): Int {
|
||||||
|
@ -44,11 +42,9 @@ class PdfPagesListAdapter(private val pdfViewModel: PdfFileViewModel) : Recycler
|
||||||
holder.bind(position)
|
holder.bind(position)
|
||||||
}
|
}
|
||||||
|
|
||||||
inner class PdfPageViewHolder(private val binding: FilePdfViewerCellBinding) : RecyclerView.ViewHolder(binding.root) {
|
inner class PdfPageViewHolder(private val view: View) : RecyclerView.ViewHolder(view) {
|
||||||
fun bind(index: Int) {
|
fun bind(index: Int) {
|
||||||
with(binding) {
|
pdfViewModel.loadPdfPageInto(index, view.findViewById(R.id.pdf_image))
|
||||||
pdfViewModel.loadPdfPageInto(index, pdfImage)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -36,7 +36,7 @@ abstract class GenericViewerFragment<T : ViewDataBinding> : SecureFragment<T>()
|
||||||
super.onViewCreated(view, savedInstanceState)
|
super.onViewCreated(view, savedInstanceState)
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedMainViewModel::class.java)
|
ViewModelProvider(this)[SharedMainViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
isSecure = arguments?.getBoolean("Secure") ?: false
|
isSecure = arguments?.getBoolean("Secure") ?: false
|
||||||
|
|
|
@ -31,7 +31,7 @@ class AudioFileViewModelFactory(private val content: Content) :
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return AudioFileViewModel(content) as T
|
return AudioFileViewModel(content) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -27,7 +27,7 @@ class ImageFileViewModelFactory(private val content: Content) :
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return ImageFileViewModel(content) as T
|
return ImageFileViewModel(content) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,7 +35,7 @@ class PdfFileViewModelFactory(private val content: Content) :
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return PdfFileViewModel(content) as T
|
return PdfFileViewModel(content) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -36,7 +36,7 @@ class TextFileViewModelFactory(private val content: Content) :
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return TextFileViewModel(content) as T
|
return TextFileViewModel(content) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -27,7 +27,7 @@ class VideoFileViewModelFactory(private val content: Content) :
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return VideoFileViewModel(content) as T
|
return VideoFileViewModel(content) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -53,7 +53,7 @@ abstract class MasterFragment<T : ViewDataBinding, U : SelectionListAdapter<*, *
|
||||||
super.onViewCreated(view, savedInstanceState)
|
super.onViewCreated(view, savedInstanceState)
|
||||||
|
|
||||||
// List selection
|
// List selection
|
||||||
listSelectionViewModel = ViewModelProvider(this).get(ListTopBarViewModel::class.java)
|
listSelectionViewModel = ViewModelProvider(this)[ListTopBarViewModel::class.java]
|
||||||
|
|
||||||
listSelectionViewModel.isEditionEnabled.observe(
|
listSelectionViewModel.isEditionEnabled.observe(
|
||||||
viewLifecycleOwner,
|
viewLifecycleOwner,
|
||||||
|
|
|
@ -43,11 +43,11 @@ class StatusFragment : GenericFragment<StatusFragmentBinding>() {
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
useMaterialSharedAxisXForwardAnimation = false
|
useMaterialSharedAxisXForwardAnimation = false
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this).get(StatusViewModel::class.java)
|
viewModel = ViewModelProvider(this)[StatusViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedMainViewModel::class.java)
|
ViewModelProvider(this)[SharedMainViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
sharedViewModel.accountRemoved.observe(
|
sharedViewModel.accountRemoved.observe(
|
||||||
|
|
|
@ -50,11 +50,11 @@ class TabsFragment : GenericFragment<TabsFragmentBinding>(), NavController.OnDes
|
||||||
useMaterialSharedAxisXForwardAnimation = false
|
useMaterialSharedAxisXForwardAnimation = false
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedMainViewModel::class.java)
|
ViewModelProvider(this)[SharedMainViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
viewModel = requireActivity().run {
|
viewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(TabsViewModel::class.java)
|
ViewModelProvider(this)[TabsViewModel::class.java]
|
||||||
}
|
}
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
|
|
|
@ -50,7 +50,7 @@ class DetailCallLogFragment : GenericFragment<HistoryDetailFragmentBinding>() {
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedMainViewModel::class.java)
|
ViewModelProvider(this)[SharedMainViewModel::class.java]
|
||||||
}
|
}
|
||||||
binding.sharedMainViewModel = sharedViewModel
|
binding.sharedMainViewModel = sharedViewModel
|
||||||
|
|
||||||
|
|
|
@ -89,13 +89,13 @@ class MasterCallLogsFragment : MasterFragment<HistoryMasterFragmentBinding, Call
|
||||||
|
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
listViewModel = ViewModelProvider(this).get(CallLogsListViewModel::class.java)
|
listViewModel = ViewModelProvider(this)[CallLogsListViewModel::class.java]
|
||||||
binding.viewModel = listViewModel
|
binding.viewModel = listViewModel
|
||||||
|
|
||||||
/* Shared view model & sliding pane related */
|
/* Shared view model & sliding pane related */
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedMainViewModel::class.java)
|
ViewModelProvider(this)[SharedMainViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
view.doOnPreDraw { sharedViewModel.isSlidingPaneSlideable.value = binding.slidingPane.isSlideable }
|
view.doOnPreDraw { sharedViewModel.isSlidingPaneSlideable.value = binding.slidingPane.isSlideable }
|
||||||
|
@ -291,7 +291,7 @@ class MasterCallLogsFragment : MasterFragment<HistoryMasterFragmentBinding, Call
|
||||||
super.onResume()
|
super.onResume()
|
||||||
|
|
||||||
val tabsViewModel = requireActivity().run {
|
val tabsViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(TabsViewModel::class.java)
|
ViewModelProvider(this)[TabsViewModel::class.java]
|
||||||
}
|
}
|
||||||
tabsViewModel.updateMissedCallCount()
|
tabsViewModel.updateMissedCallCount()
|
||||||
}
|
}
|
||||||
|
|
|
@ -38,7 +38,7 @@ class CallLogViewModelFactory(private val callLog: CallLog) :
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
return CallLogViewModel(callLog) as T
|
return CallLogViewModel(callLog) as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -51,7 +51,7 @@ class RecordingsFragment : MasterFragment<RecordingsFragmentBinding, RecordingsL
|
||||||
|
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this).get(RecordingsViewModel::class.java)
|
viewModel = ViewModelProvider(this)[RecordingsViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
_adapter = RecordingsListAdapter(listSelectionViewModel, viewLifecycleOwner)
|
_adapter = RecordingsListAdapter(listSelectionViewModel, viewLifecycleOwner)
|
||||||
|
|
|
@ -52,9 +52,7 @@ class AccountSettingsFragment : GenericSettingFragment<SettingsAccountFragmentBi
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
viewModel = ViewModelProvider(this, AccountSettingsViewModelFactory(identity)).get(
|
viewModel = ViewModelProvider(this, AccountSettingsViewModelFactory(identity))[AccountSettingsViewModel::class.java]
|
||||||
AccountSettingsViewModel::class.java
|
|
||||||
)
|
|
||||||
} catch (nsee: NoSuchElementException) {
|
} catch (nsee: NoSuchElementException) {
|
||||||
Log.e("[Account Settings] Failed to find Account object, aborting!")
|
Log.e("[Account Settings] Failed to find Account object, aborting!")
|
||||||
goBack()
|
goBack()
|
||||||
|
|
|
@ -49,7 +49,7 @@ class AdvancedSettingsFragment : GenericSettingFragment<SettingsAdvancedFragment
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
binding.sharedMainViewModel = sharedViewModel
|
binding.sharedMainViewModel = sharedViewModel
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this).get(AdvancedSettingsViewModel::class.java)
|
viewModel = ViewModelProvider(this)[AdvancedSettingsViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
binding.setBackClickListener { goBack() }
|
binding.setBackClickListener { goBack() }
|
||||||
|
|
|
@ -48,7 +48,7 @@ class AudioSettingsFragment : GenericSettingFragment<SettingsAudioFragmentBindin
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
binding.sharedMainViewModel = sharedViewModel
|
binding.sharedMainViewModel = sharedViewModel
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this).get(AudioSettingsViewModel::class.java)
|
viewModel = ViewModelProvider(this)[AudioSettingsViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
binding.setBackClickListener { goBack() }
|
binding.setBackClickListener { goBack() }
|
||||||
|
|
|
@ -51,7 +51,7 @@ class CallSettingsFragment : GenericSettingFragment<SettingsCallFragmentBinding>
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
binding.sharedMainViewModel = sharedViewModel
|
binding.sharedMainViewModel = sharedViewModel
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this).get(CallSettingsViewModel::class.java)
|
viewModel = ViewModelProvider(this)[CallSettingsViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
binding.setBackClickListener { goBack() }
|
binding.setBackClickListener { goBack() }
|
||||||
|
|
|
@ -44,7 +44,7 @@ class ChatSettingsFragment : GenericSettingFragment<SettingsChatFragmentBinding>
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
binding.sharedMainViewModel = sharedViewModel
|
binding.sharedMainViewModel = sharedViewModel
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this).get(ChatSettingsViewModel::class.java)
|
viewModel = ViewModelProvider(this)[ChatSettingsViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
binding.setBackClickListener { goBack() }
|
binding.setBackClickListener { goBack() }
|
||||||
|
|
|
@ -45,7 +45,7 @@ class ContactsSettingsFragment : GenericSettingFragment<SettingsContactsFragment
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
binding.sharedMainViewModel = sharedViewModel
|
binding.sharedMainViewModel = sharedViewModel
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this).get(ContactsSettingsViewModel::class.java)
|
viewModel = ViewModelProvider(this)[ContactsSettingsViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
binding.setBackClickListener { goBack() }
|
binding.setBackClickListener { goBack() }
|
||||||
|
|
|
@ -31,7 +31,7 @@ abstract class GenericSettingFragment<T : ViewDataBinding> : GenericFragment<T>(
|
||||||
|
|
||||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedMainViewModel::class.java)
|
ViewModelProvider(this)[SharedMainViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
useMaterialSharedAxisXForwardAnimation = sharedViewModel.isSlidingPaneSlideable.value == false
|
useMaterialSharedAxisXForwardAnimation = sharedViewModel.isSlidingPaneSlideable.value == false
|
||||||
|
|
|
@ -39,7 +39,7 @@ class NetworkSettingsFragment : GenericSettingFragment<SettingsNetworkFragmentBi
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
binding.sharedMainViewModel = sharedViewModel
|
binding.sharedMainViewModel = sharedViewModel
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this).get(NetworkSettingsViewModel::class.java)
|
viewModel = ViewModelProvider(this)[NetworkSettingsViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
binding.setBackClickListener { goBack() }
|
binding.setBackClickListener { goBack() }
|
||||||
|
|
|
@ -62,7 +62,7 @@ class SettingsFragment : SecureFragment<SettingsFragmentBinding>() {
|
||||||
/* Shared view model & sliding pane related */
|
/* Shared view model & sliding pane related */
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedMainViewModel::class.java)
|
ViewModelProvider(this)[SharedMainViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
view.doOnPreDraw { sharedViewModel.isSlidingPaneSlideable.value = binding.slidingPane.isSlideable }
|
view.doOnPreDraw { sharedViewModel.isSlidingPaneSlideable.value = binding.slidingPane.isSlideable }
|
||||||
|
@ -106,7 +106,7 @@ class SettingsFragment : SecureFragment<SettingsFragmentBinding>() {
|
||||||
|
|
||||||
/* End of shared view model & sliding pane related */
|
/* End of shared view model & sliding pane related */
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this).get(SettingsViewModel::class.java)
|
viewModel = ViewModelProvider(this)[SettingsViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
binding.setBackClickListener { goBack() }
|
binding.setBackClickListener { goBack() }
|
||||||
|
|
|
@ -39,7 +39,7 @@ class TunnelSettingsFragment : GenericSettingFragment<SettingsTunnelFragmentBind
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
binding.sharedMainViewModel = sharedViewModel
|
binding.sharedMainViewModel = sharedViewModel
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this).get(TunnelSettingsViewModel::class.java)
|
viewModel = ViewModelProvider(this)[TunnelSettingsViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
binding.setBackClickListener { goBack() }
|
binding.setBackClickListener { goBack() }
|
||||||
|
|
|
@ -48,7 +48,7 @@ class VideoSettingsFragment : GenericSettingFragment<SettingsVideoFragmentBindin
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
binding.sharedMainViewModel = sharedViewModel
|
binding.sharedMainViewModel = sharedViewModel
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this).get(VideoSettingsViewModel::class.java)
|
viewModel = ViewModelProvider(this)[VideoSettingsViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
binding.setBackClickListener { goBack() }
|
binding.setBackClickListener { goBack() }
|
||||||
|
|
|
@ -36,7 +36,7 @@ class AccountSettingsViewModelFactory(private val identity: String) :
|
||||||
ViewModelProvider.NewInstanceFactory() {
|
ViewModelProvider.NewInstanceFactory() {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel> create(modelClass: Class<T>): T {
|
||||||
for (account in coreContext.core.accountList) {
|
for (account in coreContext.core.accountList) {
|
||||||
if (account.params.identityAddress?.asStringUriOnly() == identity) {
|
if (account.params.identityAddress?.asStringUriOnly() == identity) {
|
||||||
return AccountSettingsViewModel(account) as T
|
return AccountSettingsViewModel(account) as T
|
||||||
|
|
|
@ -59,11 +59,11 @@ class SideMenuFragment : GenericFragment<SideMenuFragmentBinding>() {
|
||||||
|
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this).get(SideMenuViewModel::class.java)
|
viewModel = ViewModelProvider(this)[SideMenuViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
sharedViewModel = requireActivity().run {
|
sharedViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this).get(SharedMainViewModel::class.java)
|
ViewModelProvider(this)[SharedMainViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
sharedViewModel.accountRemoved.observe(
|
sharedViewModel.accountRemoved.observe(
|
||||||
|
|
|
@ -1,9 +1,7 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<layout xmlns:android="http://schemas.android.com/apk/res/android"
|
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
xmlns:tools="http://schemas.android.com/tools">
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
|
|
||||||
<RelativeLayout
|
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout_alignParentBottom="true">
|
android:layout_alignParentBottom="true">
|
||||||
|
@ -40,6 +38,4 @@
|
||||||
android:layout_alignParentLeft="true"
|
android:layout_alignParentLeft="true"
|
||||||
tools:layout="@layout/tabs_fragment"/>
|
tools:layout="@layout/tabs_fragment"/>
|
||||||
|
|
||||||
</RelativeLayout>
|
</RelativeLayout>
|
||||||
|
|
||||||
</layout>
|
|
|
@ -1,12 +1,7 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<layout xmlns:android="http://schemas.android.com/apk/res/android"
|
<androidx.coordinatorlayout.widget.CoordinatorLayout
|
||||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
<data>
|
|
||||||
|
|
||||||
</data>
|
|
||||||
|
|
||||||
<androidx.coordinatorlayout.widget.CoordinatorLayout
|
|
||||||
android:id="@+id/coordinator"
|
android:id="@+id/coordinator"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent">
|
android:layout_height="match_parent">
|
||||||
|
@ -26,6 +21,4 @@
|
||||||
|
|
||||||
</RelativeLayout>
|
</RelativeLayout>
|
||||||
|
|
||||||
</androidx.coordinatorlayout.widget.CoordinatorLayout>
|
</androidx.coordinatorlayout.widget.CoordinatorLayout>
|
||||||
|
|
||||||
</layout>
|
|
|
@ -1,11 +1,5 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<layout xmlns:android="http://schemas.android.com/apk/res/android">
|
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
|
||||||
<data>
|
|
||||||
<import type="android.view.View"/>
|
|
||||||
</data>
|
|
||||||
|
|
||||||
<RelativeLayout
|
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent">
|
android:layout_height="match_parent">
|
||||||
|
|
||||||
|
@ -15,6 +9,4 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_centerHorizontal="true" />
|
android:layout_centerHorizontal="true" />
|
||||||
|
|
||||||
</RelativeLayout>
|
</RelativeLayout>
|
||||||
|
|
||||||
</layout>
|
|
|
@ -1,9 +1,7 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<layout xmlns:android="http://schemas.android.com/apk/res/android"
|
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
xmlns:tools="http://schemas.android.com/tools">
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
|
|
||||||
<RelativeLayout
|
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout_alignParentBottom="true">
|
android:layout_alignParentBottom="true">
|
||||||
|
@ -40,6 +38,4 @@
|
||||||
android:layout_alignParentBottom="true"
|
android:layout_alignParentBottom="true"
|
||||||
tools:layout="@layout/tabs_fragment"/>
|
tools:layout="@layout/tabs_fragment"/>
|
||||||
|
|
||||||
</RelativeLayout>
|
</RelativeLayout>
|
||||||
|
|
||||||
</layout>
|
|
|
@ -13,7 +13,7 @@ buildscript {
|
||||||
} // for com.github.chrisbanes:PhotoView
|
} // for com.github.chrisbanes:PhotoView
|
||||||
}
|
}
|
||||||
dependencies {
|
dependencies {
|
||||||
classpath 'com.android.tools.build:gradle:7.0.2'
|
classpath 'com.android.tools.build:gradle:7.0.3'
|
||||||
classpath 'com.google.gms:google-services:4.3.10'
|
classpath 'com.google.gms:google-services:4.3.10'
|
||||||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
||||||
classpath "org.jlleitschuh.gradle:ktlint-gradle:10.1.0"
|
classpath "org.jlleitschuh.gradle:ktlint-gradle:10.1.0"
|
||||||
|
|
Loading…
Reference in a new issue