Fixed back press action for API < 33 compatibility
This commit is contained in:
@ -9,6 +9,7 @@ import androidx.activity.ComponentActivity
|
|||||||
import androidx.activity.OnBackPressedCallback
|
import androidx.activity.OnBackPressedCallback
|
||||||
import androidx.activity.compose.setContent
|
import androidx.activity.compose.setContent
|
||||||
import androidx.activity.enableEdgeToEdge
|
import androidx.activity.enableEdgeToEdge
|
||||||
|
import androidx.annotation.RequiresApi
|
||||||
import androidx.compose.foundation.background
|
import androidx.compose.foundation.background
|
||||||
import androidx.compose.foundation.layout.fillMaxSize
|
import androidx.compose.foundation.layout.fillMaxSize
|
||||||
import androidx.compose.foundation.layout.padding
|
import androidx.compose.foundation.layout.padding
|
||||||
@ -37,14 +38,16 @@ import androidx.compose.ui.unit.dp
|
|||||||
|
|
||||||
class AboutActivity : ComponentActivity() {
|
class AboutActivity : ComponentActivity() {
|
||||||
|
|
||||||
private val backInvokedCallback = OnBackInvokedCallback {
|
private var backInvokedCallback: OnBackInvokedCallback? = null
|
||||||
goBack()
|
private lateinit var onBackPressedCallback: OnBackPressedCallback
|
||||||
}
|
|
||||||
|
|
||||||
private val onBackPressedCallback = object : OnBackPressedCallback(true) {
|
@RequiresApi(33)
|
||||||
override fun handleOnBackPressed() {
|
private fun registerBackInvokedCallback() {
|
||||||
goBack()
|
backInvokedCallback = OnBackInvokedCallback { goBack() }
|
||||||
}
|
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
||||||
|
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
||||||
|
backInvokedCallback!!
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
@ -54,12 +57,15 @@ class AboutActivity : ComponentActivity() {
|
|||||||
enableEdgeToEdge()
|
enableEdgeToEdge()
|
||||||
|
|
||||||
if (Build.VERSION.SDK_INT >= 33)
|
if (Build.VERSION.SDK_INT >= 33)
|
||||||
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
registerBackInvokedCallback()
|
||||||
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
else {
|
||||||
backInvokedCallback
|
onBackPressedCallback = object : OnBackPressedCallback(true) {
|
||||||
)
|
override fun handleOnBackPressed() {
|
||||||
else
|
goBack()
|
||||||
|
}
|
||||||
|
}
|
||||||
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
||||||
|
}
|
||||||
|
|
||||||
Utils.addActivity("about")
|
Utils.addActivity("about")
|
||||||
|
|
||||||
@ -128,10 +134,11 @@ class AboutActivity : ComponentActivity() {
|
|||||||
|
|
||||||
override fun onDestroy() {
|
override fun onDestroy() {
|
||||||
if (Build.VERSION.SDK_INT >= 33) {
|
if (Build.VERSION.SDK_INT >= 33) {
|
||||||
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback)
|
if (backInvokedCallback != null)
|
||||||
} else {
|
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback!!)
|
||||||
onBackPressedCallback.remove()
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
onBackPressedCallback.remove()
|
||||||
super.onDestroy()
|
super.onDestroy()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -10,6 +10,7 @@ import androidx.activity.ComponentActivity
|
|||||||
import androidx.activity.OnBackPressedCallback
|
import androidx.activity.OnBackPressedCallback
|
||||||
import androidx.activity.compose.setContent
|
import androidx.activity.compose.setContent
|
||||||
import androidx.activity.enableEdgeToEdge
|
import androidx.activity.enableEdgeToEdge
|
||||||
|
import androidx.annotation.RequiresApi
|
||||||
import androidx.compose.foundation.clickable
|
import androidx.compose.foundation.clickable
|
||||||
import androidx.compose.foundation.layout.Arrangement
|
import androidx.compose.foundation.layout.Arrangement
|
||||||
import androidx.compose.foundation.layout.Box
|
import androidx.compose.foundation.layout.Box
|
||||||
@ -136,14 +137,16 @@ class AccountActivity : ComponentActivity() {
|
|||||||
private val showAlert = mutableStateOf(false)
|
private val showAlert = mutableStateOf(false)
|
||||||
private val showStun = mutableStateOf(false)
|
private val showStun = mutableStateOf(false)
|
||||||
|
|
||||||
private val backInvokedCallback = OnBackInvokedCallback {
|
private var backInvokedCallback: OnBackInvokedCallback? = null
|
||||||
goBack()
|
private lateinit var onBackPressedCallback: OnBackPressedCallback
|
||||||
}
|
|
||||||
|
|
||||||
private val onBackPressedCallback = object : OnBackPressedCallback(true) {
|
@RequiresApi(33)
|
||||||
override fun handleOnBackPressed() {
|
private fun registerBackInvokedCallback() {
|
||||||
goBack()
|
backInvokedCallback = OnBackInvokedCallback { goBack() }
|
||||||
}
|
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
||||||
|
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
||||||
|
backInvokedCallback!!
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
@ -153,12 +156,15 @@ class AccountActivity : ComponentActivity() {
|
|||||||
enableEdgeToEdge()
|
enableEdgeToEdge()
|
||||||
|
|
||||||
if (Build.VERSION.SDK_INT >= 33)
|
if (Build.VERSION.SDK_INT >= 33)
|
||||||
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
registerBackInvokedCallback()
|
||||||
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
else {
|
||||||
backInvokedCallback
|
onBackPressedCallback = object : OnBackPressedCallback(true) {
|
||||||
)
|
override fun handleOnBackPressed() {
|
||||||
else
|
goBack()
|
||||||
|
}
|
||||||
|
}
|
||||||
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
||||||
|
}
|
||||||
|
|
||||||
aor = intent.getStringExtra("aor")!!
|
aor = intent.getStringExtra("aor")!!
|
||||||
|
|
||||||
@ -1234,7 +1240,6 @@ class AccountActivity : ComponentActivity() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@OptIn(ExperimentalMaterial3Api::class)
|
|
||||||
@Composable
|
@Composable
|
||||||
fun AskPassword(ctx: Context) {
|
fun AskPassword(ctx: Context) {
|
||||||
if (showPasswordDialog.value)
|
if (showPasswordDialog.value)
|
||||||
@ -1632,10 +1637,11 @@ class AccountActivity : ComponentActivity() {
|
|||||||
|
|
||||||
override fun onDestroy() {
|
override fun onDestroy() {
|
||||||
if (Build.VERSION.SDK_INT >= 33) {
|
if (Build.VERSION.SDK_INT >= 33) {
|
||||||
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback)
|
if (backInvokedCallback != null)
|
||||||
} else {
|
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback!!)
|
||||||
onBackPressedCallback.remove()
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
onBackPressedCallback.remove()
|
||||||
super.onDestroy()
|
super.onDestroy()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -11,6 +11,7 @@ import androidx.activity.ComponentActivity
|
|||||||
import androidx.activity.OnBackPressedCallback
|
import androidx.activity.OnBackPressedCallback
|
||||||
import androidx.activity.compose.setContent
|
import androidx.activity.compose.setContent
|
||||||
import androidx.activity.enableEdgeToEdge
|
import androidx.activity.enableEdgeToEdge
|
||||||
|
import androidx.annotation.RequiresApi
|
||||||
import androidx.compose.foundation.Image
|
import androidx.compose.foundation.Image
|
||||||
import androidx.compose.foundation.clickable
|
import androidx.compose.foundation.clickable
|
||||||
import androidx.compose.foundation.layout.Arrangement
|
import androidx.compose.foundation.layout.Arrangement
|
||||||
@ -85,14 +86,16 @@ class AccountsActivity : ComponentActivity() {
|
|||||||
private val alertMessage = mutableStateOf("")
|
private val alertMessage = mutableStateOf("")
|
||||||
private val showAlert = mutableStateOf(false)
|
private val showAlert = mutableStateOf(false)
|
||||||
|
|
||||||
private val backInvokedCallback = OnBackInvokedCallback {
|
private var backInvokedCallback: OnBackInvokedCallback? = null
|
||||||
goBack()
|
private lateinit var onBackPressedCallback: OnBackPressedCallback
|
||||||
}
|
|
||||||
|
|
||||||
private val onBackPressedCallback = object : OnBackPressedCallback(true) {
|
@RequiresApi(33)
|
||||||
override fun handleOnBackPressed() {
|
private fun registerBackInvokedCallback() {
|
||||||
goBack()
|
backInvokedCallback = OnBackInvokedCallback { goBack() }
|
||||||
}
|
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
||||||
|
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
||||||
|
backInvokedCallback!!
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
public override fun onCreate(savedInstanceState: Bundle?) {
|
public override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
@ -102,12 +105,15 @@ class AccountsActivity : ComponentActivity() {
|
|||||||
enableEdgeToEdge()
|
enableEdgeToEdge()
|
||||||
|
|
||||||
if (Build.VERSION.SDK_INT >= 33)
|
if (Build.VERSION.SDK_INT >= 33)
|
||||||
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
registerBackInvokedCallback()
|
||||||
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
else {
|
||||||
backInvokedCallback
|
onBackPressedCallback = object : OnBackPressedCallback(true) {
|
||||||
)
|
override fun handleOnBackPressed() {
|
||||||
else
|
goBack()
|
||||||
|
}
|
||||||
|
}
|
||||||
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
||||||
|
}
|
||||||
|
|
||||||
val title = String.format(getString(R.string.accounts))
|
val title = String.format(getString(R.string.accounts))
|
||||||
|
|
||||||
@ -482,10 +488,11 @@ class AccountsActivity : ComponentActivity() {
|
|||||||
|
|
||||||
override fun onDestroy() {
|
override fun onDestroy() {
|
||||||
if (Build.VERSION.SDK_INT >= 33) {
|
if (Build.VERSION.SDK_INT >= 33) {
|
||||||
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback)
|
if (backInvokedCallback != null)
|
||||||
} else {
|
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback!!)
|
||||||
onBackPressedCallback.remove()
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
onBackPressedCallback.remove()
|
||||||
super.onDestroy()
|
super.onDestroy()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -12,6 +12,7 @@ import androidx.activity.ComponentActivity
|
|||||||
import androidx.activity.OnBackPressedCallback
|
import androidx.activity.OnBackPressedCallback
|
||||||
import androidx.activity.compose.setContent
|
import androidx.activity.compose.setContent
|
||||||
import androidx.activity.enableEdgeToEdge
|
import androidx.activity.enableEdgeToEdge
|
||||||
|
import androidx.annotation.RequiresApi
|
||||||
import androidx.compose.foundation.Canvas
|
import androidx.compose.foundation.Canvas
|
||||||
import androidx.compose.foundation.Image
|
import androidx.compose.foundation.Image
|
||||||
import androidx.compose.foundation.background
|
import androidx.compose.foundation.background
|
||||||
@ -64,14 +65,16 @@ class AndroidContactActivity : ComponentActivity() {
|
|||||||
|
|
||||||
private var color = 0
|
private var color = 0
|
||||||
|
|
||||||
private val backInvokedCallback = OnBackInvokedCallback {
|
private var backInvokedCallback: OnBackInvokedCallback? = null
|
||||||
goBack()
|
private lateinit var onBackPressedCallback: OnBackPressedCallback
|
||||||
}
|
|
||||||
|
|
||||||
private val onBackPressedCallback = object : OnBackPressedCallback(true) {
|
@RequiresApi(33)
|
||||||
override fun handleOnBackPressed() {
|
private fun registerBackInvokedCallback() {
|
||||||
goBack()
|
backInvokedCallback = OnBackInvokedCallback { goBack() }
|
||||||
}
|
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
||||||
|
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
||||||
|
backInvokedCallback!!
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
@ -81,12 +84,15 @@ class AndroidContactActivity : ComponentActivity() {
|
|||||||
enableEdgeToEdge()
|
enableEdgeToEdge()
|
||||||
|
|
||||||
if (Build.VERSION.SDK_INT >= 33)
|
if (Build.VERSION.SDK_INT >= 33)
|
||||||
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
registerBackInvokedCallback()
|
||||||
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
else {
|
||||||
backInvokedCallback
|
onBackPressedCallback = object : OnBackPressedCallback(true) {
|
||||||
)
|
override fun handleOnBackPressed() {
|
||||||
else
|
goBack()
|
||||||
|
}
|
||||||
|
}
|
||||||
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
||||||
|
}
|
||||||
|
|
||||||
aor = intent.getStringExtra("aor")!!
|
aor = intent.getStringExtra("aor")!!
|
||||||
name = intent.getStringExtra("name")!!
|
name = intent.getStringExtra("name")!!
|
||||||
@ -283,10 +289,11 @@ class AndroidContactActivity : ComponentActivity() {
|
|||||||
|
|
||||||
override fun onDestroy() {
|
override fun onDestroy() {
|
||||||
if (Build.VERSION.SDK_INT >= 33) {
|
if (Build.VERSION.SDK_INT >= 33) {
|
||||||
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback)
|
if (backInvokedCallback != null)
|
||||||
} else {
|
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback!!)
|
||||||
onBackPressedCallback.remove()
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
onBackPressedCallback.remove()
|
||||||
super.onDestroy()
|
super.onDestroy()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -8,6 +8,7 @@ import androidx.activity.ComponentActivity
|
|||||||
import androidx.activity.OnBackPressedCallback
|
import androidx.activity.OnBackPressedCallback
|
||||||
import androidx.activity.compose.setContent
|
import androidx.activity.compose.setContent
|
||||||
import androidx.activity.enableEdgeToEdge
|
import androidx.activity.enableEdgeToEdge
|
||||||
|
import androidx.annotation.RequiresApi
|
||||||
import androidx.compose.foundation.clickable
|
import androidx.compose.foundation.clickable
|
||||||
import androidx.compose.foundation.layout.Arrangement
|
import androidx.compose.foundation.layout.Arrangement
|
||||||
import androidx.compose.foundation.layout.Box
|
import androidx.compose.foundation.layout.Box
|
||||||
@ -80,14 +81,16 @@ class AudioActivity : ComponentActivity() {
|
|||||||
private val alertMessage = mutableStateOf("")
|
private val alertMessage = mutableStateOf("")
|
||||||
private val showAlert = mutableStateOf(false)
|
private val showAlert = mutableStateOf(false)
|
||||||
|
|
||||||
private val backInvokedCallback = OnBackInvokedCallback {
|
private var backInvokedCallback: OnBackInvokedCallback? = null
|
||||||
goBack()
|
private lateinit var onBackPressedCallback: OnBackPressedCallback
|
||||||
}
|
|
||||||
|
|
||||||
private val onBackPressedCallback = object : OnBackPressedCallback(true) {
|
@RequiresApi(33)
|
||||||
override fun handleOnBackPressed() {
|
private fun registerBackInvokedCallback() {
|
||||||
goBack()
|
backInvokedCallback = OnBackInvokedCallback { goBack() }
|
||||||
}
|
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
||||||
|
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
||||||
|
backInvokedCallback!!
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
@ -97,12 +100,15 @@ class AudioActivity : ComponentActivity() {
|
|||||||
enableEdgeToEdge()
|
enableEdgeToEdge()
|
||||||
|
|
||||||
if (Build.VERSION.SDK_INT >= 33)
|
if (Build.VERSION.SDK_INT >= 33)
|
||||||
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
registerBackInvokedCallback()
|
||||||
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
else {
|
||||||
backInvokedCallback
|
onBackPressedCallback = object : OnBackPressedCallback(true) {
|
||||||
)
|
override fun handleOnBackPressed() {
|
||||||
else
|
goBack()
|
||||||
|
}
|
||||||
|
}
|
||||||
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
||||||
|
}
|
||||||
|
|
||||||
val title = String.format(getString(R.string.configuration))
|
val title = String.format(getString(R.string.configuration))
|
||||||
|
|
||||||
@ -657,10 +663,11 @@ class AudioActivity : ComponentActivity() {
|
|||||||
|
|
||||||
override fun onDestroy() {
|
override fun onDestroy() {
|
||||||
if (Build.VERSION.SDK_INT >= 33) {
|
if (Build.VERSION.SDK_INT >= 33) {
|
||||||
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback)
|
if (backInvokedCallback != null)
|
||||||
} else {
|
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback!!)
|
||||||
onBackPressedCallback.remove()
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
onBackPressedCallback.remove()
|
||||||
super.onDestroy()
|
super.onDestroy()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -22,6 +22,7 @@ import androidx.activity.compose.rememberLauncherForActivityResult
|
|||||||
import androidx.activity.compose.setContent
|
import androidx.activity.compose.setContent
|
||||||
import androidx.activity.enableEdgeToEdge
|
import androidx.activity.enableEdgeToEdge
|
||||||
import androidx.activity.result.contract.ActivityResultContracts
|
import androidx.activity.result.contract.ActivityResultContracts
|
||||||
|
import androidx.annotation.RequiresApi
|
||||||
import androidx.compose.foundation.Canvas
|
import androidx.compose.foundation.Canvas
|
||||||
import androidx.compose.foundation.ExperimentalFoundationApi
|
import androidx.compose.foundation.ExperimentalFoundationApi
|
||||||
import androidx.compose.foundation.Image
|
import androidx.compose.foundation.Image
|
||||||
@ -108,14 +109,16 @@ class BaresipContactActivity : ComponentActivity() {
|
|||||||
private val textAvatarColor = mutableIntStateOf(0)
|
private val textAvatarColor = mutableIntStateOf(0)
|
||||||
private val imageAvatarUri = mutableStateOf("")
|
private val imageAvatarUri = mutableStateOf("")
|
||||||
|
|
||||||
private val backInvokedCallback = OnBackInvokedCallback {
|
private var backInvokedCallback: OnBackInvokedCallback? = null
|
||||||
goBack()
|
private lateinit var onBackPressedCallback: OnBackPressedCallback
|
||||||
}
|
|
||||||
|
|
||||||
private val onBackPressedCallback = object : OnBackPressedCallback(true) {
|
@RequiresApi(33)
|
||||||
override fun handleOnBackPressed() {
|
private fun registerBackInvokedCallback() {
|
||||||
goBack()
|
backInvokedCallback = OnBackInvokedCallback { goBack() }
|
||||||
}
|
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
||||||
|
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
||||||
|
backInvokedCallback!!
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
public override fun onCreate(savedInstanceState: Bundle?) {
|
public override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
@ -125,12 +128,15 @@ class BaresipContactActivity : ComponentActivity() {
|
|||||||
enableEdgeToEdge()
|
enableEdgeToEdge()
|
||||||
|
|
||||||
if (Build.VERSION.SDK_INT >= 33)
|
if (Build.VERSION.SDK_INT >= 33)
|
||||||
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
registerBackInvokedCallback()
|
||||||
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
else {
|
||||||
backInvokedCallback
|
onBackPressedCallback = object : OnBackPressedCallback(true) {
|
||||||
)
|
override fun handleOnBackPressed() {
|
||||||
else
|
goBack()
|
||||||
|
}
|
||||||
|
}
|
||||||
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
||||||
|
}
|
||||||
|
|
||||||
val title: String
|
val title: String
|
||||||
|
|
||||||
@ -702,10 +708,11 @@ class BaresipContactActivity : ComponentActivity() {
|
|||||||
|
|
||||||
override fun onDestroy() {
|
override fun onDestroy() {
|
||||||
if (Build.VERSION.SDK_INT >= 33) {
|
if (Build.VERSION.SDK_INT >= 33) {
|
||||||
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback)
|
if (backInvokedCallback != null)
|
||||||
} else {
|
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback!!)
|
||||||
onBackPressedCallback.remove()
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
onBackPressedCallback.remove()
|
||||||
super.onDestroy()
|
super.onDestroy()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -12,6 +12,7 @@ import androidx.activity.ComponentActivity
|
|||||||
import androidx.activity.OnBackPressedCallback
|
import androidx.activity.OnBackPressedCallback
|
||||||
import androidx.activity.compose.setContent
|
import androidx.activity.compose.setContent
|
||||||
import androidx.activity.enableEdgeToEdge
|
import androidx.activity.enableEdgeToEdge
|
||||||
|
import androidx.annotation.RequiresApi
|
||||||
import androidx.compose.foundation.Image
|
import androidx.compose.foundation.Image
|
||||||
import androidx.compose.foundation.background
|
import androidx.compose.foundation.background
|
||||||
import androidx.compose.foundation.clickable
|
import androidx.compose.foundation.clickable
|
||||||
@ -70,14 +71,16 @@ class CallDetailsActivity : ComponentActivity() {
|
|||||||
private val encPlayer = MediaPlayer()
|
private val encPlayer = MediaPlayer()
|
||||||
private var position = 0
|
private var position = 0
|
||||||
|
|
||||||
private val backInvokedCallback = OnBackInvokedCallback {
|
private var backInvokedCallback: OnBackInvokedCallback? = null
|
||||||
goBack()
|
private lateinit var onBackPressedCallback: OnBackPressedCallback
|
||||||
}
|
|
||||||
|
|
||||||
private val onBackPressedCallback = object : OnBackPressedCallback(true) {
|
@RequiresApi(33)
|
||||||
override fun handleOnBackPressed() {
|
private fun registerBackInvokedCallback() {
|
||||||
goBack()
|
backInvokedCallback = OnBackInvokedCallback { goBack() }
|
||||||
}
|
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
||||||
|
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
||||||
|
backInvokedCallback!!
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
@ -87,12 +90,15 @@ class CallDetailsActivity : ComponentActivity() {
|
|||||||
enableEdgeToEdge()
|
enableEdgeToEdge()
|
||||||
|
|
||||||
if (Build.VERSION.SDK_INT >= 33)
|
if (Build.VERSION.SDK_INT >= 33)
|
||||||
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
registerBackInvokedCallback()
|
||||||
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
else {
|
||||||
backInvokedCallback
|
onBackPressedCallback = object : OnBackPressedCallback(true) {
|
||||||
)
|
override fun handleOnBackPressed() {
|
||||||
else
|
goBack()
|
||||||
|
}
|
||||||
|
}
|
||||||
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
||||||
|
}
|
||||||
|
|
||||||
aor = intent.getStringExtra("aor")!!
|
aor = intent.getStringExtra("aor")!!
|
||||||
account = Account.ofAor(aor)!!
|
account = Account.ofAor(aor)!!
|
||||||
@ -377,10 +383,11 @@ class CallDetailsActivity : ComponentActivity() {
|
|||||||
|
|
||||||
override fun onDestroy() {
|
override fun onDestroy() {
|
||||||
if (Build.VERSION.SDK_INT >= 33) {
|
if (Build.VERSION.SDK_INT >= 33) {
|
||||||
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback)
|
if (backInvokedCallback != null)
|
||||||
} else {
|
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback!!)
|
||||||
onBackPressedCallback.remove()
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
onBackPressedCallback.remove()
|
||||||
super.onDestroy()
|
super.onDestroy()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -12,6 +12,7 @@ import androidx.activity.ComponentActivity
|
|||||||
import androidx.activity.OnBackPressedCallback
|
import androidx.activity.OnBackPressedCallback
|
||||||
import androidx.activity.compose.setContent
|
import androidx.activity.compose.setContent
|
||||||
import androidx.activity.enableEdgeToEdge
|
import androidx.activity.enableEdgeToEdge
|
||||||
|
import androidx.annotation.RequiresApi
|
||||||
import androidx.compose.foundation.ExperimentalFoundationApi
|
import androidx.compose.foundation.ExperimentalFoundationApi
|
||||||
import androidx.compose.foundation.Image
|
import androidx.compose.foundation.Image
|
||||||
import androidx.compose.foundation.background
|
import androidx.compose.foundation.background
|
||||||
@ -73,14 +74,16 @@ class CallsActivity : ComponentActivity() {
|
|||||||
|
|
||||||
private var aor = ""
|
private var aor = ""
|
||||||
|
|
||||||
private val backInvokedCallback = OnBackInvokedCallback {
|
private var backInvokedCallback: OnBackInvokedCallback? = null
|
||||||
goBack()
|
private lateinit var onBackPressedCallback: OnBackPressedCallback
|
||||||
}
|
|
||||||
|
|
||||||
private val onBackPressedCallback = object : OnBackPressedCallback(true) {
|
@RequiresApi(33)
|
||||||
override fun handleOnBackPressed() {
|
private fun registerBackInvokedCallback() {
|
||||||
goBack()
|
backInvokedCallback = OnBackInvokedCallback { goBack() }
|
||||||
}
|
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
||||||
|
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
||||||
|
backInvokedCallback!!
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
public override fun onCreate(savedInstanceState: Bundle?) {
|
public override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
@ -90,12 +93,15 @@ class CallsActivity : ComponentActivity() {
|
|||||||
enableEdgeToEdge()
|
enableEdgeToEdge()
|
||||||
|
|
||||||
if (Build.VERSION.SDK_INT >= 33)
|
if (Build.VERSION.SDK_INT >= 33)
|
||||||
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
registerBackInvokedCallback()
|
||||||
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
else {
|
||||||
backInvokedCallback
|
onBackPressedCallback = object : OnBackPressedCallback(true) {
|
||||||
)
|
override fun handleOnBackPressed() {
|
||||||
else
|
goBack()
|
||||||
|
}
|
||||||
|
}
|
||||||
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
||||||
|
}
|
||||||
|
|
||||||
val title = String.format(getString(R.string.call_history))
|
val title = String.format(getString(R.string.call_history))
|
||||||
|
|
||||||
@ -463,10 +469,11 @@ class CallsActivity : ComponentActivity() {
|
|||||||
|
|
||||||
override fun onDestroy() {
|
override fun onDestroy() {
|
||||||
if (Build.VERSION.SDK_INT >= 33) {
|
if (Build.VERSION.SDK_INT >= 33) {
|
||||||
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback)
|
if (backInvokedCallback != null)
|
||||||
} else {
|
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback!!)
|
||||||
onBackPressedCallback.remove()
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
onBackPressedCallback.remove()
|
||||||
super.onDestroy()
|
super.onDestroy()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -14,6 +14,7 @@ import androidx.activity.ComponentActivity
|
|||||||
import androidx.activity.OnBackPressedCallback
|
import androidx.activity.OnBackPressedCallback
|
||||||
import androidx.activity.compose.setContent
|
import androidx.activity.compose.setContent
|
||||||
import androidx.activity.enableEdgeToEdge
|
import androidx.activity.enableEdgeToEdge
|
||||||
|
import androidx.annotation.RequiresApi
|
||||||
import androidx.compose.foundation.ExperimentalFoundationApi
|
import androidx.compose.foundation.ExperimentalFoundationApi
|
||||||
import androidx.compose.foundation.Image
|
import androidx.compose.foundation.Image
|
||||||
import androidx.compose.foundation.clickable
|
import androidx.compose.foundation.clickable
|
||||||
@ -101,14 +102,16 @@ class ChatActivity : ComponentActivity() {
|
|||||||
private var unsentMessage = ""
|
private var unsentMessage = ""
|
||||||
private var keyboardController: SoftwareKeyboardController? = null
|
private var keyboardController: SoftwareKeyboardController? = null
|
||||||
|
|
||||||
private val backInvokedCallback = OnBackInvokedCallback {
|
private var backInvokedCallback: OnBackInvokedCallback? = null
|
||||||
goBack()
|
private lateinit var onBackPressedCallback: OnBackPressedCallback
|
||||||
}
|
|
||||||
|
|
||||||
private val onBackPressedCallback = object : OnBackPressedCallback(true) {
|
@RequiresApi(33)
|
||||||
override fun handleOnBackPressed() {
|
private fun registerBackInvokedCallback() {
|
||||||
goBack()
|
backInvokedCallback = OnBackInvokedCallback { goBack() }
|
||||||
}
|
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
||||||
|
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
||||||
|
backInvokedCallback!!
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
@ -118,12 +121,15 @@ class ChatActivity : ComponentActivity() {
|
|||||||
enableEdgeToEdge()
|
enableEdgeToEdge()
|
||||||
|
|
||||||
if (Build.VERSION.SDK_INT >= 33)
|
if (Build.VERSION.SDK_INT >= 33)
|
||||||
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
registerBackInvokedCallback()
|
||||||
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
else {
|
||||||
backInvokedCallback
|
onBackPressedCallback = object : OnBackPressedCallback(true) {
|
||||||
)
|
override fun handleOnBackPressed() {
|
||||||
else
|
goBack()
|
||||||
|
}
|
||||||
|
}
|
||||||
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
||||||
|
}
|
||||||
|
|
||||||
aor = intent.getStringExtra("aor")!!
|
aor = intent.getStringExtra("aor")!!
|
||||||
peerUri = intent.getStringExtra("peer")!!
|
peerUri = intent.getStringExtra("peer")!!
|
||||||
@ -637,10 +643,11 @@ class ChatActivity : ComponentActivity() {
|
|||||||
|
|
||||||
override fun onDestroy() {
|
override fun onDestroy() {
|
||||||
if (Build.VERSION.SDK_INT >= 33) {
|
if (Build.VERSION.SDK_INT >= 33) {
|
||||||
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback)
|
if (backInvokedCallback != null)
|
||||||
} else {
|
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback!!)
|
||||||
onBackPressedCallback.remove()
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
onBackPressedCallback.remove()
|
||||||
super.onDestroy()
|
super.onDestroy()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -14,8 +14,8 @@ import androidx.activity.compose.setContent
|
|||||||
import androidx.activity.enableEdgeToEdge
|
import androidx.activity.enableEdgeToEdge
|
||||||
import androidx.activity.result.ActivityResultLauncher
|
import androidx.activity.result.ActivityResultLauncher
|
||||||
import androidx.activity.result.contract.ActivityResultContracts
|
import androidx.activity.result.contract.ActivityResultContracts
|
||||||
|
import androidx.annotation.RequiresApi
|
||||||
import androidx.compose.animation.animateContentSize
|
import androidx.compose.animation.animateContentSize
|
||||||
import androidx.compose.foundation.ExperimentalFoundationApi
|
|
||||||
import androidx.compose.foundation.background
|
import androidx.compose.foundation.background
|
||||||
import androidx.compose.foundation.clickable
|
import androidx.compose.foundation.clickable
|
||||||
import androidx.compose.foundation.layout.Arrangement
|
import androidx.compose.foundation.layout.Arrangement
|
||||||
@ -102,14 +102,16 @@ class ChatsActivity: ComponentActivity() {
|
|||||||
private val alertMessage = mutableStateOf("")
|
private val alertMessage = mutableStateOf("")
|
||||||
private val showAlert = mutableStateOf(false)
|
private val showAlert = mutableStateOf(false)
|
||||||
|
|
||||||
private val backInvokedCallback = OnBackInvokedCallback {
|
private var backInvokedCallback: OnBackInvokedCallback? = null
|
||||||
goBack()
|
private lateinit var onBackPressedCallback: OnBackPressedCallback
|
||||||
}
|
|
||||||
|
|
||||||
private val onBackPressedCallback = object : OnBackPressedCallback(true) {
|
@RequiresApi(33)
|
||||||
override fun handleOnBackPressed() {
|
private fun registerBackInvokedCallback() {
|
||||||
goBack()
|
backInvokedCallback = OnBackInvokedCallback { goBack() }
|
||||||
}
|
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
||||||
|
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
||||||
|
backInvokedCallback!!
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
public override fun onCreate(savedInstanceState: Bundle?) {
|
public override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
@ -119,12 +121,15 @@ class ChatsActivity: ComponentActivity() {
|
|||||||
enableEdgeToEdge()
|
enableEdgeToEdge()
|
||||||
|
|
||||||
if (Build.VERSION.SDK_INT >= 33)
|
if (Build.VERSION.SDK_INT >= 33)
|
||||||
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
registerBackInvokedCallback()
|
||||||
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
else {
|
||||||
backInvokedCallback
|
onBackPressedCallback = object : OnBackPressedCallback(true) {
|
||||||
)
|
override fun handleOnBackPressed() {
|
||||||
else
|
goBack()
|
||||||
|
}
|
||||||
|
}
|
||||||
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
||||||
|
}
|
||||||
|
|
||||||
aor = intent.extras!!.getString("aor")!!
|
aor = intent.extras!!.getString("aor")!!
|
||||||
Utils.addActivity("chats,$aor")
|
Utils.addActivity("chats,$aor")
|
||||||
@ -285,7 +290,6 @@ class ChatsActivity: ComponentActivity() {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@OptIn(ExperimentalFoundationApi::class)
|
|
||||||
@Composable
|
@Composable
|
||||||
fun Chats(ctx: Context, account: Account) {
|
fun Chats(ctx: Context, account: Account) {
|
||||||
|
|
||||||
@ -475,7 +479,7 @@ class ChatsActivity: ComponentActivity() {
|
|||||||
|
|
||||||
val showDialog = remember { mutableStateOf(false) }
|
val showDialog = remember { mutableStateOf(false) }
|
||||||
val items = remember { mutableStateOf(listOf<String>()) }
|
val items = remember { mutableStateOf(listOf<String>()) }
|
||||||
val itemAction = remember { mutableStateOf<(Int) -> Unit>({ index -> {} }) }
|
val itemAction = remember { mutableStateOf<(Int) -> Unit>({ _ -> run {} }) }
|
||||||
|
|
||||||
SelectableAlertDialog(
|
SelectableAlertDialog(
|
||||||
openDialog = showDialog,
|
openDialog = showDialog,
|
||||||
@ -609,7 +613,7 @@ class ChatsActivity: ComponentActivity() {
|
|||||||
modifier = Modifier.padding(end = 4.dp),
|
modifier = Modifier.padding(end = 4.dp),
|
||||||
onClick = {
|
onClick = {
|
||||||
showSuggestions = false
|
showSuggestions = false
|
||||||
var peerText = newPeer.trim()
|
val peerText = newPeer.trim()
|
||||||
if (peerText.isNotEmpty()) {
|
if (peerText.isNotEmpty()) {
|
||||||
val uris = Contact.contactUris(peerText)
|
val uris = Contact.contactUris(peerText)
|
||||||
if (uris.isEmpty())
|
if (uris.isEmpty())
|
||||||
@ -684,10 +688,11 @@ class ChatsActivity: ComponentActivity() {
|
|||||||
|
|
||||||
override fun onDestroy() {
|
override fun onDestroy() {
|
||||||
if (Build.VERSION.SDK_INT >= 33) {
|
if (Build.VERSION.SDK_INT >= 33) {
|
||||||
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback)
|
if (backInvokedCallback != null)
|
||||||
} else {
|
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback!!)
|
||||||
onBackPressedCallback.remove()
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
onBackPressedCallback.remove()
|
||||||
super.onDestroy()
|
super.onDestroy()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -8,6 +8,7 @@ import androidx.activity.ComponentActivity
|
|||||||
import androidx.activity.OnBackPressedCallback
|
import androidx.activity.OnBackPressedCallback
|
||||||
import androidx.activity.compose.setContent
|
import androidx.activity.compose.setContent
|
||||||
import androidx.activity.enableEdgeToEdge
|
import androidx.activity.enableEdgeToEdge
|
||||||
|
import androidx.annotation.RequiresApi
|
||||||
import androidx.compose.foundation.ExperimentalFoundationApi
|
import androidx.compose.foundation.ExperimentalFoundationApi
|
||||||
import androidx.compose.foundation.background
|
import androidx.compose.foundation.background
|
||||||
import androidx.compose.foundation.clickable
|
import androidx.compose.foundation.clickable
|
||||||
@ -68,14 +69,16 @@ class CodecsActivity : ComponentActivity() {
|
|||||||
private val alertMessage = mutableStateOf("")
|
private val alertMessage = mutableStateOf("")
|
||||||
private val showAlert = mutableStateOf(false)
|
private val showAlert = mutableStateOf(false)
|
||||||
|
|
||||||
private val backInvokedCallback = OnBackInvokedCallback {
|
private var backInvokedCallback: OnBackInvokedCallback? = null
|
||||||
goBack()
|
private lateinit var onBackPressedCallback: OnBackPressedCallback
|
||||||
}
|
|
||||||
|
|
||||||
private val onBackPressedCallback = object : OnBackPressedCallback(true) {
|
@RequiresApi(33)
|
||||||
override fun handleOnBackPressed() {
|
private fun registerBackInvokedCallback() {
|
||||||
goBack()
|
backInvokedCallback = OnBackInvokedCallback { goBack() }
|
||||||
}
|
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
||||||
|
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
||||||
|
backInvokedCallback!!
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
@ -85,12 +88,15 @@ class CodecsActivity : ComponentActivity() {
|
|||||||
enableEdgeToEdge()
|
enableEdgeToEdge()
|
||||||
|
|
||||||
if (Build.VERSION.SDK_INT >= 33)
|
if (Build.VERSION.SDK_INT >= 33)
|
||||||
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
registerBackInvokedCallback()
|
||||||
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
else {
|
||||||
backInvokedCallback
|
onBackPressedCallback = object : OnBackPressedCallback(true) {
|
||||||
)
|
override fun handleOnBackPressed() {
|
||||||
else
|
goBack()
|
||||||
|
}
|
||||||
|
}
|
||||||
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
||||||
|
}
|
||||||
|
|
||||||
aor = intent.getStringExtra("aor")!!
|
aor = intent.getStringExtra("aor")!!
|
||||||
media = intent.getStringExtra("media")!!
|
media = intent.getStringExtra("media")!!
|
||||||
@ -368,10 +374,11 @@ class CodecsActivity : ComponentActivity() {
|
|||||||
|
|
||||||
override fun onDestroy() {
|
override fun onDestroy() {
|
||||||
if (Build.VERSION.SDK_INT >= 33) {
|
if (Build.VERSION.SDK_INT >= 33) {
|
||||||
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback)
|
if (backInvokedCallback != null)
|
||||||
} else {
|
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback!!)
|
||||||
onBackPressedCallback.remove()
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
onBackPressedCallback.remove()
|
||||||
super.onDestroy()
|
super.onDestroy()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -130,14 +130,16 @@ class ConfigActivity : ComponentActivity() {
|
|||||||
private val onNegativeClicked = mutableStateOf({})
|
private val onNegativeClicked = mutableStateOf({})
|
||||||
private val showDialog = mutableStateOf(false)
|
private val showDialog = mutableStateOf(false)
|
||||||
|
|
||||||
private val backInvokedCallback = OnBackInvokedCallback {
|
private var backInvokedCallback: OnBackInvokedCallback? = null
|
||||||
goBack()
|
private lateinit var onBackPressedCallback: OnBackPressedCallback
|
||||||
}
|
|
||||||
|
|
||||||
private val onBackPressedCallback = object : OnBackPressedCallback(true) {
|
@RequiresApi(33)
|
||||||
override fun handleOnBackPressed() {
|
private fun registerBackInvokedCallback() {
|
||||||
goBack()
|
backInvokedCallback = OnBackInvokedCallback { goBack() }
|
||||||
}
|
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
||||||
|
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
||||||
|
backInvokedCallback!!
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
private val certificateRequest =
|
private val certificateRequest =
|
||||||
@ -207,12 +209,15 @@ class ConfigActivity : ComponentActivity() {
|
|||||||
enableEdgeToEdge()
|
enableEdgeToEdge()
|
||||||
|
|
||||||
if (Build.VERSION.SDK_INT >= 33)
|
if (Build.VERSION.SDK_INT >= 33)
|
||||||
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
registerBackInvokedCallback()
|
||||||
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
else {
|
||||||
backInvokedCallback
|
onBackPressedCallback = object : OnBackPressedCallback(true) {
|
||||||
)
|
override fun handleOnBackPressed() {
|
||||||
else
|
goBack()
|
||||||
|
}
|
||||||
|
}
|
||||||
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
||||||
|
}
|
||||||
|
|
||||||
val title = String.format(getString(R.string.configuration))
|
val title = String.format(getString(R.string.configuration))
|
||||||
|
|
||||||
@ -1245,7 +1250,7 @@ class ConfigActivity : ComponentActivity() {
|
|||||||
baresipService.action = "Stop Content Observer"
|
baresipService.action = "Stop Content Observer"
|
||||||
}
|
}
|
||||||
"android" -> {
|
"android" -> {
|
||||||
BaresipService.baresipContacts.value = mutableListOf<Contact.BaresipContact>()
|
BaresipService.baresipContacts.value = mutableListOf()
|
||||||
Contact.loadAndroidContacts(this)
|
Contact.loadAndroidContacts(this)
|
||||||
baresipService.action = "Start Content Observer"
|
baresipService.action = "Start Content Observer"
|
||||||
}
|
}
|
||||||
@ -1297,10 +1302,11 @@ class ConfigActivity : ComponentActivity() {
|
|||||||
|
|
||||||
override fun onDestroy() {
|
override fun onDestroy() {
|
||||||
if (Build.VERSION.SDK_INT >= 33) {
|
if (Build.VERSION.SDK_INT >= 33) {
|
||||||
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback)
|
if (backInvokedCallback != null)
|
||||||
} else {
|
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback!!)
|
||||||
onBackPressedCallback.remove()
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
onBackPressedCallback.remove()
|
||||||
super.onDestroy()
|
super.onDestroy()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -15,6 +15,7 @@ import androidx.activity.OnBackPressedCallback
|
|||||||
import androidx.activity.compose.setContent
|
import androidx.activity.compose.setContent
|
||||||
import androidx.activity.enableEdgeToEdge
|
import androidx.activity.enableEdgeToEdge
|
||||||
import androidx.activity.result.contract.ActivityResultContracts
|
import androidx.activity.result.contract.ActivityResultContracts
|
||||||
|
import androidx.annotation.RequiresApi
|
||||||
import androidx.compose.foundation.ExperimentalFoundationApi
|
import androidx.compose.foundation.ExperimentalFoundationApi
|
||||||
import androidx.compose.foundation.Image
|
import androidx.compose.foundation.Image
|
||||||
import androidx.compose.foundation.background
|
import androidx.compose.foundation.background
|
||||||
@ -74,14 +75,16 @@ class ContactsActivity : ComponentActivity() {
|
|||||||
private var newAndroidName: String? = null
|
private var newAndroidName: String? = null
|
||||||
private var lastClick: Long = 0
|
private var lastClick: Long = 0
|
||||||
|
|
||||||
private val backInvokedCallback = OnBackInvokedCallback {
|
private var backInvokedCallback: OnBackInvokedCallback? = null
|
||||||
goBack()
|
private lateinit var onBackPressedCallback: OnBackPressedCallback
|
||||||
}
|
|
||||||
|
|
||||||
private val onBackPressedCallback = object : OnBackPressedCallback(true) {
|
@RequiresApi(33)
|
||||||
override fun handleOnBackPressed() {
|
private fun registerBackInvokedCallback() {
|
||||||
goBack()
|
backInvokedCallback = OnBackInvokedCallback { goBack() }
|
||||||
}
|
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
||||||
|
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
||||||
|
backInvokedCallback!!
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
private val contactRequest =
|
private val contactRequest =
|
||||||
@ -99,12 +102,15 @@ class ContactsActivity : ComponentActivity() {
|
|||||||
enableEdgeToEdge()
|
enableEdgeToEdge()
|
||||||
|
|
||||||
if (Build.VERSION.SDK_INT >= 33)
|
if (Build.VERSION.SDK_INT >= 33)
|
||||||
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
registerBackInvokedCallback()
|
||||||
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
else {
|
||||||
backInvokedCallback
|
onBackPressedCallback = object : OnBackPressedCallback(true) {
|
||||||
)
|
override fun handleOnBackPressed() {
|
||||||
else
|
goBack()
|
||||||
|
}
|
||||||
|
}
|
||||||
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
||||||
|
}
|
||||||
|
|
||||||
val title = String.format(getString(R.string.contacts))
|
val title = String.format(getString(R.string.contacts))
|
||||||
|
|
||||||
@ -434,10 +440,11 @@ class ContactsActivity : ComponentActivity() {
|
|||||||
|
|
||||||
override fun onDestroy() {
|
override fun onDestroy() {
|
||||||
if (Build.VERSION.SDK_INT >= 33) {
|
if (Build.VERSION.SDK_INT >= 33) {
|
||||||
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback)
|
if (backInvokedCallback != null)
|
||||||
} else {
|
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback!!)
|
||||||
onBackPressedCallback.remove()
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
onBackPressedCallback.remove()
|
||||||
super.onDestroy()
|
super.onDestroy()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -243,14 +243,18 @@ class MainActivity : ComponentActivity() {
|
|||||||
val items = mutableStateOf(listOf<String>())
|
val items = mutableStateOf(listOf<String>())
|
||||||
private val itemAction = mutableStateOf<(Int) -> Unit>({ _ -> run {} })
|
private val itemAction = mutableStateOf<(Int) -> Unit>({ _ -> run {} })
|
||||||
|
|
||||||
private val backInvokedCallback = OnBackInvokedCallback {
|
private var backInvokedCallback: OnBackInvokedCallback? = null
|
||||||
moveTaskToBack(true)
|
private lateinit var onBackPressedCallback: OnBackPressedCallback
|
||||||
}
|
|
||||||
|
|
||||||
private val onBackPressedCallback = object : OnBackPressedCallback(true) {
|
@RequiresApi(33)
|
||||||
override fun handleOnBackPressed() {
|
private fun registerBackInvokedCallback() {
|
||||||
|
backInvokedCallback = OnBackInvokedCallback {
|
||||||
moveTaskToBack(true)
|
moveTaskToBack(true)
|
||||||
}
|
}
|
||||||
|
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
||||||
|
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
||||||
|
backInvokedCallback!!
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressLint("ClickableViewAccessibility")
|
@SuppressLint("ClickableViewAccessibility")
|
||||||
@ -260,13 +264,16 @@ class MainActivity : ComponentActivity() {
|
|||||||
|
|
||||||
enableEdgeToEdge()
|
enableEdgeToEdge()
|
||||||
|
|
||||||
if (Build.VERSION.SDK_INT >= 33)
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU)
|
||||||
onBackInvokedDispatcher.registerOnBackInvokedCallback(
|
registerBackInvokedCallback()
|
||||||
OnBackInvokedDispatcher.PRIORITY_DEFAULT,
|
else {
|
||||||
backInvokedCallback
|
onBackPressedCallback = object : OnBackPressedCallback(true) {
|
||||||
)
|
override fun handleOnBackPressed() {
|
||||||
else
|
moveTaskToBack(true)
|
||||||
|
}
|
||||||
|
}
|
||||||
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
onBackPressedDispatcher.addCallback(this, onBackPressedCallback)
|
||||||
|
}
|
||||||
|
|
||||||
val extraAction = intent.getStringExtra("action")
|
val extraAction = intent.getStringExtra("action")
|
||||||
Log.d(TAG, "Main onCreate ${intent.action}/${intent.data}/$extraAction")
|
Log.d(TAG, "Main onCreate ${intent.action}/${intent.data}/$extraAction")
|
||||||
@ -2079,10 +2086,11 @@ class MainActivity : ComponentActivity() {
|
|||||||
Log.d(TAG, "Main onDestroy")
|
Log.d(TAG, "Main onDestroy")
|
||||||
|
|
||||||
if (Build.VERSION.SDK_INT >= 33) {
|
if (Build.VERSION.SDK_INT >= 33) {
|
||||||
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback)
|
if (backInvokedCallback != null)
|
||||||
} else {
|
onBackInvokedDispatcher.unregisterOnBackInvokedCallback(backInvokedCallback!!)
|
||||||
onBackPressedCallback.remove()
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
onBackPressedCallback.remove()
|
||||||
|
|
||||||
this.unregisterReceiver(screenEventReceiver)
|
this.unregisterReceiver(screenEventReceiver)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user