|
@@ -25,17 +25,33 @@ import android.util.Log
|
|
import android.view.View
|
|
import android.view.View
|
|
import android.view.ViewGroup
|
|
import android.view.ViewGroup
|
|
import androidx.core.content.ContextCompat
|
|
import androidx.core.content.ContextCompat
|
|
|
|
+import autodagger.AutoInjector
|
|
import com.google.android.material.bottomsheet.BottomSheetBehavior
|
|
import com.google.android.material.bottomsheet.BottomSheetBehavior
|
|
import com.google.android.material.bottomsheet.BottomSheetDialog
|
|
import com.google.android.material.bottomsheet.BottomSheetDialog
|
|
import com.nextcloud.talk.R
|
|
import com.nextcloud.talk.R
|
|
import com.nextcloud.talk.activities.CallActivity
|
|
import com.nextcloud.talk.activities.CallActivity
|
|
|
|
+import com.nextcloud.talk.application.NextcloudTalkApplication
|
|
import com.nextcloud.talk.databinding.DialogAudioOutputBinding
|
|
import com.nextcloud.talk.databinding.DialogAudioOutputBinding
|
|
|
|
+import com.nextcloud.talk.ui.theme.ServerTheme
|
|
|
|
+import com.nextcloud.talk.ui.theme.ViewThemeUtils
|
|
import com.nextcloud.talk.webrtc.WebRtcAudioManager
|
|
import com.nextcloud.talk.webrtc.WebRtcAudioManager
|
|
|
|
+import javax.inject.Inject
|
|
|
|
|
|
|
|
+@AutoInjector(NextcloudTalkApplication::class)
|
|
class AudioOutputDialog(val callActivity: CallActivity) : BottomSheetDialog(callActivity) {
|
|
class AudioOutputDialog(val callActivity: CallActivity) : BottomSheetDialog(callActivity) {
|
|
|
|
|
|
|
|
+ @Inject
|
|
|
|
+ lateinit var viewThemeUtils: ViewThemeUtils
|
|
|
|
+
|
|
|
|
+ @Inject
|
|
|
|
+ lateinit var serverTheme: ServerTheme
|
|
|
|
+
|
|
private lateinit var dialogAudioOutputBinding: DialogAudioOutputBinding
|
|
private lateinit var dialogAudioOutputBinding: DialogAudioOutputBinding
|
|
|
|
|
|
|
|
+ init {
|
|
|
|
+ NextcloudTalkApplication.sharedApplication?.componentApplication?.inject(this)
|
|
|
|
+ }
|
|
|
|
+
|
|
override fun onCreate(savedInstanceState: Bundle?) {
|
|
override fun onCreate(savedInstanceState: Bundle?) {
|
|
super.onCreate(savedInstanceState)
|
|
super.onCreate(savedInstanceState)
|
|
dialogAudioOutputBinding = DialogAudioOutputBinding.inflate(layoutInflater)
|
|
dialogAudioOutputBinding = DialogAudioOutputBinding.inflate(layoutInflater)
|
|
@@ -82,55 +98,23 @@ class AudioOutputDialog(val callActivity: CallActivity) : BottomSheetDialog(call
|
|
private fun highlightActiveOutputChannel() {
|
|
private fun highlightActiveOutputChannel() {
|
|
when (callActivity.audioManager?.currentAudioDevice) {
|
|
when (callActivity.audioManager?.currentAudioDevice) {
|
|
WebRtcAudioManager.AudioDevice.BLUETOOTH -> {
|
|
WebRtcAudioManager.AudioDevice.BLUETOOTH -> {
|
|
- dialogAudioOutputBinding.audioOutputBluetoothIcon.setColorFilter(
|
|
|
|
- ContextCompat.getColor(
|
|
|
|
- context,
|
|
|
|
- R.color.colorPrimary
|
|
|
|
- ),
|
|
|
|
- android.graphics.PorterDuff.Mode.SRC_IN
|
|
|
|
- )
|
|
|
|
- dialogAudioOutputBinding.audioOutputBluetoothText.setTextColor(
|
|
|
|
- callActivity.resources.getColor(R.color.colorPrimary)
|
|
|
|
- )
|
|
|
|
|
|
+ viewThemeUtils.colorImageView(dialogAudioOutputBinding.audioOutputBluetoothIcon)
|
|
|
|
+ dialogAudioOutputBinding.audioOutputBluetoothText.setTextColor(serverTheme.primaryColor)
|
|
}
|
|
}
|
|
|
|
|
|
WebRtcAudioManager.AudioDevice.SPEAKER_PHONE -> {
|
|
WebRtcAudioManager.AudioDevice.SPEAKER_PHONE -> {
|
|
- dialogAudioOutputBinding.audioOutputSpeakerIcon.setColorFilter(
|
|
|
|
- ContextCompat.getColor(
|
|
|
|
- context,
|
|
|
|
- R.color.colorPrimary
|
|
|
|
- ),
|
|
|
|
- android.graphics.PorterDuff.Mode.SRC_IN
|
|
|
|
- )
|
|
|
|
- dialogAudioOutputBinding.audioOutputSpeakerText.setTextColor(
|
|
|
|
- callActivity.resources.getColor(R.color.colorPrimary)
|
|
|
|
- )
|
|
|
|
|
|
+ viewThemeUtils.colorImageView(dialogAudioOutputBinding.audioOutputSpeakerIcon)
|
|
|
|
+ dialogAudioOutputBinding.audioOutputSpeakerText.setTextColor(serverTheme.primaryColor)
|
|
}
|
|
}
|
|
|
|
|
|
WebRtcAudioManager.AudioDevice.EARPIECE -> {
|
|
WebRtcAudioManager.AudioDevice.EARPIECE -> {
|
|
- dialogAudioOutputBinding.audioOutputEarspeakerIcon.setColorFilter(
|
|
|
|
- ContextCompat.getColor(
|
|
|
|
- context,
|
|
|
|
- R.color.colorPrimary
|
|
|
|
- ),
|
|
|
|
- android.graphics.PorterDuff.Mode.SRC_IN
|
|
|
|
- )
|
|
|
|
- dialogAudioOutputBinding.audioOutputEarspeakerText.setTextColor(
|
|
|
|
- callActivity.resources.getColor(R.color.colorPrimary)
|
|
|
|
- )
|
|
|
|
|
|
+ viewThemeUtils.colorImageView(dialogAudioOutputBinding.audioOutputEarspeakerIcon)
|
|
|
|
+ dialogAudioOutputBinding.audioOutputEarspeakerText.setTextColor(serverTheme.primaryColor)
|
|
}
|
|
}
|
|
|
|
|
|
WebRtcAudioManager.AudioDevice.WIRED_HEADSET -> {
|
|
WebRtcAudioManager.AudioDevice.WIRED_HEADSET -> {
|
|
- dialogAudioOutputBinding.audioOutputWiredHeadsetIcon.setColorFilter(
|
|
|
|
- ContextCompat.getColor(
|
|
|
|
- context,
|
|
|
|
- R.color.colorPrimary
|
|
|
|
- ),
|
|
|
|
- android.graphics.PorterDuff.Mode.SRC_IN
|
|
|
|
- )
|
|
|
|
- dialogAudioOutputBinding.audioOutputWiredHeadsetText.setTextColor(
|
|
|
|
- callActivity.resources.getColor(R.color.colorPrimary)
|
|
|
|
- )
|
|
|
|
|
|
+ viewThemeUtils.colorImageView(dialogAudioOutputBinding.audioOutputWiredHeadsetIcon)
|
|
|
|
+ dialogAudioOutputBinding.audioOutputWiredHeadsetText.setTextColor(serverTheme.primaryColor)
|
|
}
|
|
}
|
|
|
|
|
|
else -> Log.d(TAG, "AudioOutputDialog doesn't know this AudioDevice")
|
|
else -> Log.d(TAG, "AudioOutputDialog doesn't know this AudioDevice")
|