From 00d5a780db465c25f8436384c65f1118bac13803 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Sun, 6 Sep 2020 10:15:35 +0200 Subject: [PATCH] Made outgoing call activity use proximity sensor if speaker is disabled --- .../org/linphone/activities/call/OutgoingCallActivity.kt | 7 +++++-- .../org/linphone/notifications/NotificationsManager.kt | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/org/linphone/activities/call/OutgoingCallActivity.kt b/app/src/main/java/org/linphone/activities/call/OutgoingCallActivity.kt index da781e0d5..a19d25a73 100644 --- a/app/src/main/java/org/linphone/activities/call/OutgoingCallActivity.kt +++ b/app/src/main/java/org/linphone/activities/call/OutgoingCallActivity.kt @@ -26,7 +26,6 @@ import androidx.databinding.DataBindingUtil import androidx.lifecycle.ViewModelProvider import org.linphone.LinphoneApplication.Companion.coreContext import org.linphone.R -import org.linphone.activities.GenericActivity import org.linphone.activities.call.viewmodels.CallViewModel import org.linphone.activities.call.viewmodels.CallViewModelFactory import org.linphone.activities.call.viewmodels.ControlsViewModel @@ -36,7 +35,7 @@ import org.linphone.databinding.CallOutgoingActivityBinding import org.linphone.mediastream.Version import org.linphone.utils.PermissionHelper -class OutgoingCallActivity : GenericActivity() { +class OutgoingCallActivity : ProximitySensorActivity() { private lateinit var binding: CallOutgoingActivityBinding private lateinit var viewModel: CallViewModel private lateinit var controlsViewModel: ControlsViewModel @@ -95,6 +94,10 @@ class OutgoingCallActivity : GenericActivity() { } }) + controlsViewModel.isSpeakerSelected.observe(this, { + enableProximitySensor(!it) + }) + if (Version.sdkAboveOrEqual(Version.API23_MARSHMALLOW_60)) { checkPermissions() } diff --git a/app/src/main/java/org/linphone/notifications/NotificationsManager.kt b/app/src/main/java/org/linphone/notifications/NotificationsManager.kt index a5283f778..6fa963889 100644 --- a/app/src/main/java/org/linphone/notifications/NotificationsManager.kt +++ b/app/src/main/java/org/linphone/notifications/NotificationsManager.kt @@ -122,8 +122,8 @@ class NotificationsManager(private val context: Context) { Call.State.IncomingEarlyMedia, Call.State.IncomingReceived -> displayIncomingCallNotification(call) Call.State.End, Call.State.Error -> dismissCallNotification(call) Call.State.Released -> { - if (call.dir == Call.Dir.Incoming - && (call.callLog.status == Call.Status.Missed || + if (call.dir == Call.Dir.Incoming && + (call.callLog.status == Call.Status.Missed || call.callLog.status == Call.Status.Aborted || call.callLog.status == Call.Status.EarlyAborted)) { displayMissedCallNotification(call)