mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-04-21 17:29:32 +01:00
Revert all new network detection API usage and refactorings.
This commit is contained in:
@@ -1,9 +1,14 @@
|
||||
package org.thoughtcrime.securesms.components.settings.app.privacy.advanced
|
||||
|
||||
import android.app.ProgressDialog
|
||||
import android.content.BroadcastReceiver
|
||||
import android.content.Context
|
||||
import android.content.Intent
|
||||
import android.content.IntentFilter
|
||||
import android.graphics.PorterDuff
|
||||
import android.graphics.PorterDuffColorFilter
|
||||
import android.graphics.drawable.Drawable
|
||||
import android.net.ConnectivityManager
|
||||
import android.text.SpannableStringBuilder
|
||||
import android.widget.TextView
|
||||
import android.widget.Toast
|
||||
@@ -27,7 +32,9 @@ import org.thoughtcrime.securesms.util.ViewUtil
|
||||
|
||||
class AdvancedPrivacySettingsFragment : DSLSettingsFragment(R.string.preferences__advanced) {
|
||||
|
||||
lateinit var viewModel: AdvancedPrivacySettingsViewModel
|
||||
private lateinit var viewModel: AdvancedPrivacySettingsViewModel
|
||||
|
||||
private var networkReceiver: NetworkReceiver? = null
|
||||
|
||||
private val sealedSenderSummary: CharSequence by lazy {
|
||||
SpanUtil.learnMore(
|
||||
@@ -60,6 +67,12 @@ class AdvancedPrivacySettingsFragment : DSLSettingsFragment(R.string.preferences
|
||||
override fun onResume() {
|
||||
super.onResume()
|
||||
viewModel.refresh()
|
||||
registerNetworkReceiver()
|
||||
}
|
||||
|
||||
override fun onPause() {
|
||||
super.onPause()
|
||||
unregisterNetworkReceiver()
|
||||
}
|
||||
|
||||
override fun bindAdapter(adapter: DSLSettingsAdapter) {
|
||||
@@ -195,4 +208,27 @@ class AdvancedPrivacySettingsFragment : DSLSettingsFragment(R.string.preferences
|
||||
getString(R.string.preferences__free_private_messages_and_calls)
|
||||
}
|
||||
}
|
||||
|
||||
@Suppress("DEPRECATION")
|
||||
private fun registerNetworkReceiver() {
|
||||
val context: Context? = context
|
||||
if (context != null && networkReceiver == null) {
|
||||
networkReceiver = NetworkReceiver()
|
||||
context.registerReceiver(networkReceiver, IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION))
|
||||
}
|
||||
}
|
||||
|
||||
private fun unregisterNetworkReceiver() {
|
||||
val context: Context? = context
|
||||
if (context != null && networkReceiver != null) {
|
||||
context.unregisterReceiver(networkReceiver)
|
||||
networkReceiver = null
|
||||
}
|
||||
}
|
||||
|
||||
private inner class NetworkReceiver : BroadcastReceiver() {
|
||||
override fun onReceive(context: Context, intent: Intent) {
|
||||
viewModel.refresh()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,7 +8,6 @@ import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||
import io.reactivex.rxjava3.disposables.CompositeDisposable
|
||||
import org.thoughtcrime.securesms.dependencies.ApplicationDependencies
|
||||
import org.thoughtcrime.securesms.jobmanager.impl.NetworkConstraint
|
||||
import org.thoughtcrime.securesms.jobmanager.impl.NetworkConstraintObserver
|
||||
import org.thoughtcrime.securesms.jobs.RefreshAttributesJob
|
||||
import org.thoughtcrime.securesms.jobs.RefreshOwnProfileJob
|
||||
import org.thoughtcrime.securesms.keyvalue.SettingsValues
|
||||
@@ -22,7 +21,7 @@ import org.whispersystems.signalservice.api.websocket.WebSocketConnectionState
|
||||
class AdvancedPrivacySettingsViewModel(
|
||||
private val sharedPreferences: SharedPreferences,
|
||||
private val repository: AdvancedPrivacySettingsRepository
|
||||
) : ViewModel(), NetworkConstraintObserver.NetworkListener {
|
||||
) : ViewModel() {
|
||||
|
||||
private val store = Store(getState())
|
||||
private val singleEvents = SingleLiveEvent<Event>()
|
||||
@@ -32,7 +31,6 @@ class AdvancedPrivacySettingsViewModel(
|
||||
val disposables: CompositeDisposable = CompositeDisposable()
|
||||
|
||||
init {
|
||||
NetworkConstraintObserver.getInstance(ApplicationDependencies.getApplication()).addListener(this)
|
||||
disposables.add(
|
||||
ApplicationDependencies.getSignalWebSocket().webSocketState
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
@@ -87,12 +85,7 @@ class AdvancedPrivacySettingsViewModel(
|
||||
store.update { getState().copy(showProgressSpinner = it.showProgressSpinner) }
|
||||
}
|
||||
|
||||
override fun onNetworkChanged() {
|
||||
refresh()
|
||||
}
|
||||
|
||||
override fun onCleared() {
|
||||
NetworkConstraintObserver.getInstance(ApplicationDependencies.getApplication()).removeListener(this)
|
||||
disposables.dispose()
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user