mirror of
https://github.com/SimpleMobileTools/Simple-Dialer.git
synced 2025-06-05 21:49:23 +02:00
Merge pull request #336 from sdex/dIsable_proximity_sensor_while_external_speaker_is_enabled
Disable proximity sensor while external speaker is enabled
This commit is contained in:
@@ -80,9 +80,7 @@ class CallActivity : SimpleActivity() {
|
|||||||
override fun onDestroy() {
|
override fun onDestroy() {
|
||||||
super.onDestroy()
|
super.onDestroy()
|
||||||
CallManager.unregisterCallback(callCallback)
|
CallManager.unregisterCallback(callCallback)
|
||||||
if (proximityWakeLock?.isHeld == true) {
|
disableProximitySensor()
|
||||||
proximityWakeLock!!.release()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onBackPressed() {
|
override fun onBackPressed() {
|
||||||
@@ -283,6 +281,12 @@ class CallActivity : SimpleActivity() {
|
|||||||
val newRoute = if (isSpeakerOn) CallAudioState.ROUTE_SPEAKER else CallAudioState.ROUTE_EARPIECE
|
val newRoute = if (isSpeakerOn) CallAudioState.ROUTE_SPEAKER else CallAudioState.ROUTE_EARPIECE
|
||||||
CallManager.inCallService?.setAudioRoute(newRoute)
|
CallManager.inCallService?.setAudioRoute(newRoute)
|
||||||
call_toggle_speaker.contentDescription = getString(if (isSpeakerOn) R.string.turn_speaker_off else R.string.turn_speaker_on)
|
call_toggle_speaker.contentDescription = getString(if (isSpeakerOn) R.string.turn_speaker_off else R.string.turn_speaker_on)
|
||||||
|
|
||||||
|
if (isSpeakerOn) {
|
||||||
|
disableProximitySensor()
|
||||||
|
} else {
|
||||||
|
enableProximitySensor()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun toggleMicrophone() {
|
private fun toggleMicrophone() {
|
||||||
@@ -376,7 +380,7 @@ class CallActivity : SimpleActivity() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun initOutgoingCallUI() {
|
private fun initOutgoingCallUI() {
|
||||||
initProximitySensor()
|
enableProximitySensor()
|
||||||
incoming_call_holder.beGone()
|
incoming_call_holder.beGone()
|
||||||
ongoing_call_holder.beVisible()
|
ongoing_call_holder.beVisible()
|
||||||
}
|
}
|
||||||
@@ -386,7 +390,7 @@ class CallActivity : SimpleActivity() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun callStarted() {
|
private fun callStarted() {
|
||||||
initProximitySensor()
|
enableProximitySensor()
|
||||||
incoming_call_holder.beGone()
|
incoming_call_holder.beGone()
|
||||||
ongoing_call_holder.beVisible()
|
ongoing_call_holder.beVisible()
|
||||||
callDurationHelper.onDurationChange {
|
callDurationHelper.onDurationChange {
|
||||||
@@ -409,9 +413,7 @@ class CallActivity : SimpleActivity() {
|
|||||||
|
|
||||||
private fun endCall() {
|
private fun endCall() {
|
||||||
CallManager.reject()
|
CallManager.reject()
|
||||||
if (proximityWakeLock?.isHeld == true) {
|
disableProximitySensor()
|
||||||
proximityWakeLock!!.release()
|
|
||||||
}
|
|
||||||
|
|
||||||
if (isCallEnded) {
|
if (isCallEnded) {
|
||||||
finishAndRemoveTask()
|
finishAndRemoveTask()
|
||||||
@@ -465,11 +467,17 @@ class CallActivity : SimpleActivity() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun initProximitySensor() {
|
private fun enableProximitySensor() {
|
||||||
if (!config.disableProximitySensor && (proximityWakeLock == null || proximityWakeLock?.isHeld == false)) {
|
if (!config.disableProximitySensor && (proximityWakeLock == null || proximityWakeLock?.isHeld == false)) {
|
||||||
val powerManager = getSystemService(Context.POWER_SERVICE) as PowerManager
|
val powerManager = getSystemService(Context.POWER_SERVICE) as PowerManager
|
||||||
proximityWakeLock = powerManager.newWakeLock(PowerManager.PROXIMITY_SCREEN_OFF_WAKE_LOCK, "com.simplemobiletools.dialer.pro:wake_lock")
|
proximityWakeLock = powerManager.newWakeLock(PowerManager.PROXIMITY_SCREEN_OFF_WAKE_LOCK, "com.simplemobiletools.dialer.pro:wake_lock")
|
||||||
proximityWakeLock!!.acquire(60 * MINUTE_SECONDS * 1000L)
|
proximityWakeLock!!.acquire(60 * MINUTE_SECONDS * 1000L)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun disableProximitySensor() {
|
||||||
|
if (proximityWakeLock?.isHeld == true) {
|
||||||
|
proximityWakeLock!!.release()
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user