mirror of
https://github.com/oxen-io/session-android.git
synced 2025-08-24 22:17:25 +00:00
refactor: set the buttons to match iOS in terms of enable disable and colours
This commit is contained in:
@@ -299,7 +299,7 @@
|
||||
android:screenOrientation="portrait"
|
||||
android:launchMode="singleTop"
|
||||
android:parentActivityName="org.thoughtcrime.securesms.home.HomeActivity"
|
||||
android:theme="@style/Theme.Session.DayNight.FlatActionBar">
|
||||
android:theme="@style/Theme.Session.CallActivity">
|
||||
<meta-data
|
||||
android:name="android.support.PARENT_ACTIVITY"
|
||||
android:value="org.thoughtcrime.securesms.home.HomeActivity" />
|
||||
|
@@ -15,6 +15,7 @@ import androidx.core.view.isVisible
|
||||
import androidx.lifecycle.lifecycleScope
|
||||
import com.bumptech.glide.load.engine.DiskCacheStrategy
|
||||
import dagger.hilt.android.AndroidEntryPoint
|
||||
import kotlinx.android.synthetic.main.activity_conversation_v2.*
|
||||
import kotlinx.android.synthetic.main.activity_webrtc.*
|
||||
import kotlinx.coroutines.Job
|
||||
import kotlinx.coroutines.flow.collect
|
||||
@@ -68,20 +69,10 @@ class WebRtcCallActivity: PassphraseRequiredActionBarActivity() {
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?, ready: Boolean) {
|
||||
super.onCreate(savedInstanceState, ready)
|
||||
window.addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED)
|
||||
window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
|
||||
setContentView(R.layout.activity_webrtc)
|
||||
volumeControlStream = AudioManager.STREAM_VOICE_CALL
|
||||
|
||||
initializeResources()
|
||||
|
||||
Permissions.with(this)
|
||||
.request(Manifest.permission.RECORD_AUDIO)
|
||||
.onAllGranted {
|
||||
setupStreams()
|
||||
}
|
||||
.execute()
|
||||
|
||||
if (intent.action == ACTION_ANSWER) {
|
||||
answerCall()
|
||||
}
|
||||
@@ -136,14 +127,6 @@ class WebRtcCallActivity: PassphraseRequiredActionBarActivity() {
|
||||
|
||||
}
|
||||
|
||||
private fun initializeResources() {
|
||||
|
||||
}
|
||||
|
||||
private fun setupStreams() {
|
||||
|
||||
}
|
||||
|
||||
private fun answerCall() {
|
||||
val answerIntent = WebRtcCallService.acceptCallIntent(this)
|
||||
ContextCompat.startForegroundService(this,answerIntent)
|
||||
@@ -157,10 +140,8 @@ class WebRtcCallActivity: PassphraseRequiredActionBarActivity() {
|
||||
launch {
|
||||
viewModel.audioDeviceState.collect { state ->
|
||||
val speakerEnabled = state.selectedDevice == SPEAKER_PHONE
|
||||
speakerPhoneButton.setImageResource(
|
||||
if (speakerEnabled) R.drawable.ic_baseline_volume_up_24
|
||||
else R.drawable.ic_baseline_volume_mute_24
|
||||
)
|
||||
// change drawable background to enabled or not
|
||||
speakerPhoneButton.isSelected = speakerEnabled
|
||||
}
|
||||
}
|
||||
|
||||
@@ -207,10 +188,8 @@ class WebRtcCallActivity: PassphraseRequiredActionBarActivity() {
|
||||
|
||||
launch {
|
||||
viewModel.localAudioEnabledState.collect { isEnabled ->
|
||||
microphoneButton.setImageResource(
|
||||
if (isEnabled) R.drawable.ic_baseline_mic_off_24
|
||||
else R.drawable.ic_baseline_mic_24
|
||||
)
|
||||
// change drawable background to enabled or not
|
||||
microphoneButton.isSelected = !isEnabled
|
||||
}
|
||||
}
|
||||
|
||||
@@ -224,10 +203,7 @@ class WebRtcCallActivity: PassphraseRequiredActionBarActivity() {
|
||||
}
|
||||
}
|
||||
local_renderer.isVisible = isEnabled
|
||||
enableCameraButton.setImageResource(
|
||||
if (isEnabled) R.drawable.ic_baseline_videocam_off_24
|
||||
else R.drawable.ic_baseline_videocam_24
|
||||
)
|
||||
enableCameraButton.isSelected = isEnabled
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:color="@color/call_action_button_highlighted" android:state_selected="true"/>
|
||||
<item android:color="@color/call_action_button" android:state_selected="false"/>
|
||||
</selector>
|
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:color="@color/call_action_foreground_highlighted" android:state_selected="true"/>
|
||||
<item android:color="@color/call_action_foreground"/>
|
||||
</selector>
|
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:color="@color/destructive" android:state_selected="true"/>
|
||||
<item android:color="@color/call_action_button" android:state_selected="false"/>
|
||||
</selector>
|
13
app/src/main/res/drawable/call_controls_background.xml
Normal file
13
app/src/main/res/drawable/call_controls_background.xml
Normal file
@@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:state_selected="true">
|
||||
<shape android:shape="oval">
|
||||
<solid android:color="@color/call_action_button_highlighted"/>
|
||||
</shape>
|
||||
</item>
|
||||
<item>
|
||||
<shape android:shape="oval">
|
||||
<solid android:color="@color/call_action_button"/>
|
||||
</shape>
|
||||
</item>
|
||||
</selector>
|
@@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape android:shape="oval"
|
||||
xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<solid android:color="@color/unimportant"/>
|
||||
</shape>
|
@@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape android:shape="oval"
|
||||
xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<stroke android:color="@color/unimportant" android:width="@dimen/small_spacing"/>
|
||||
</shape>
|
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:shape="rectangle">
|
||||
|
||||
<solid android:color="@color/transparent" />
|
||||
|
||||
<corners android:radius="@dimen/medium_button_corner_radius" />
|
||||
|
||||
<stroke android:width="@dimen/border_thickness" android:color="@color/accent" />
|
||||
</shape>
|
@@ -35,7 +35,7 @@
|
||||
android:layout_gravity="center"
|
||||
android:foregroundGravity="center"
|
||||
android:visibility="gone"
|
||||
app:SpinKit_Color="@color/text"
|
||||
app:SpinKit_Color="@color/core_white"
|
||||
app:layout_constraintEnd_toEndOf="@+id/remote_recipient"
|
||||
app:layout_constraintStart_toStartOf="@+id/remote_recipient"
|
||||
app:layout_constraintTop_toBottomOf="@id/remote_recipient"
|
||||
@@ -70,7 +70,7 @@
|
||||
android:background="@drawable/circle_tintable"
|
||||
android:src="@drawable/ic_baseline_call_end_24"
|
||||
android:padding="@dimen/medium_spacing"
|
||||
app:tint="@color/core_white"
|
||||
android:foregroundTint="@color/call_action_foreground"
|
||||
android:backgroundTint="@color/destructive"
|
||||
android:layout_width="@dimen/large_button_height"
|
||||
android:layout_height="@dimen/large_button_height"
|
||||
@@ -82,11 +82,10 @@
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/switchCameraButton"
|
||||
android:background="@drawable/circle_tintable"
|
||||
android:background="@drawable/call_controls_background"
|
||||
android:src="@drawable/ic_baseline_flip_camera_android_24"
|
||||
android:padding="@dimen/medium_spacing"
|
||||
app:tint="@color/call_action_foreground"
|
||||
android:backgroundTint="@color/call_action_button"
|
||||
android:layout_width="@dimen/large_button_height"
|
||||
android:layout_height="@dimen/large_button_height"
|
||||
app:layout_constraintBottom_toTopOf="@+id/endCallButton"
|
||||
@@ -99,10 +98,10 @@
|
||||
<ImageView
|
||||
android:id="@+id/enableCameraButton"
|
||||
android:background="@drawable/circle_tintable"
|
||||
android:src="@drawable/ic_baseline_videocam_off_24"
|
||||
android:backgroundTint="@color/state_list_call_action_background"
|
||||
app:tint="@color/state_list_call_action_foreground"
|
||||
android:src="@drawable/ic_baseline_videocam_24"
|
||||
android:padding="@dimen/medium_spacing"
|
||||
app:tint="@color/call_action_foreground"
|
||||
android:backgroundTint="@color/call_action_button"
|
||||
android:layout_width="@dimen/large_button_height"
|
||||
android:layout_height="@dimen/large_button_height"
|
||||
app:layout_constraintBottom_toTopOf="@+id/endCallButton"
|
||||
@@ -116,22 +115,22 @@
|
||||
android:layout_width="@dimen/large_button_height"
|
||||
android:layout_height="@dimen/large_button_height"
|
||||
android:padding="@dimen/medium_spacing"
|
||||
android:src="@drawable/ic_microphone"
|
||||
app:tint="@color/call_action_foreground"
|
||||
android:backgroundTint="@color/call_action_button"
|
||||
android:src="@drawable/ic_baseline_mic_off_24"
|
||||
android:layout_marginBottom="@dimen/large_spacing"
|
||||
app:layout_constraintBottom_toTopOf="@+id/endCallButton"
|
||||
android:background="@drawable/circle_tintable"
|
||||
android:backgroundTint="@color/state_list_call_action_mic_background"
|
||||
app:tint="@color/call_action_foreground"
|
||||
app:layout_constraintEnd_toStartOf="@id/speakerPhoneButton"
|
||||
app:layout_constraintStart_toEndOf="@id/enableCameraButton"/>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/speakerPhoneButton"
|
||||
android:background="@drawable/circle_tintable"
|
||||
android:src="@drawable/ic_baseline_volume_mute_24"
|
||||
android:backgroundTint="@color/state_list_call_action_background"
|
||||
app:tint="@color/state_list_call_action_foreground"
|
||||
android:src="@drawable/ic_baseline_volume_up_24"
|
||||
android:padding="@dimen/medium_spacing"
|
||||
app:tint="@color/call_action_foreground"
|
||||
android:backgroundTint="@color/call_action_button"
|
||||
android:layout_width="@dimen/large_button_height"
|
||||
android:layout_height="@dimen/large_button_height"
|
||||
app:layout_constraintBottom_toTopOf="@+id/endCallButton"
|
||||
@@ -143,7 +142,8 @@
|
||||
|
||||
<TextView
|
||||
android:textAllCaps="true"
|
||||
style="@style/Widget.Session.Button.Common.ProminentOutline"
|
||||
android:theme="@style/Theme.Session.ForceDark"
|
||||
style="@style/Widget.Session.Button.Common.ProminentOutline.Accent"
|
||||
android:text="@string/accept_call"
|
||||
android:layout_marginBottom="@dimen/large_spacing"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
|
@@ -32,10 +32,6 @@
|
||||
<color name="scroll_to_bottom_button_border">#99000000</color>
|
||||
<color name="conversation_unread_count_indicator_background">#E0E0E0</color>
|
||||
|
||||
<color name="call_action_button">#FFFFFF</color>
|
||||
<color name="call_action_foreground">#171717</color>
|
||||
<color name="call_action_foreground_highlighted">#D8D8D8</color>
|
||||
|
||||
<color name="default_background_start">#ffffff</color>
|
||||
<color name="default_background_end">#fcfcfc</color>
|
||||
<color name="action_bar_background">#fcfcfc</color>
|
||||
|
@@ -38,9 +38,11 @@
|
||||
<color name="scroll_to_bottom_button_border">#99FFFFFF</color>
|
||||
<color name="conversation_unread_count_indicator_background">#303030</color>
|
||||
|
||||
<color name="call_action_button">#353535</color>
|
||||
<color name="call_action_button">#DD353535</color>
|
||||
<color name="call_action_button_highlighted">#FFFFFF</color>
|
||||
<color name="call_action_foreground">#D8D8D8</color>
|
||||
<color name="call_action_foreground_highlighted">#171717</color>
|
||||
<color name="call_background">#171717</color>
|
||||
|
||||
<array name="profile_picture_placeholder_colors">
|
||||
<item>#5ff8b0</item>
|
||||
|
@@ -83,6 +83,12 @@
|
||||
<item name="android:drawableTint" tools:ignore="NewApi">@color/accent</item>
|
||||
</style>
|
||||
|
||||
<style name="Widget.Session.Button.Common.ProminentOutline.Accent">
|
||||
<item name="android:background">@drawable/prominent_outline_button_medium_background_accent</item>
|
||||
<item name="android:textColor">@color/accent</item>
|
||||
<item name="android:drawableTint" tools:ignore="NewApi">@color/accent</item>
|
||||
</style>
|
||||
|
||||
<style name="Widget.Session.Button.Common.UnimportantFilled">
|
||||
<item name="android:background">@drawable/unimportant_filled_button_medium_background</item>
|
||||
<item name="android:textColor">?android:textColorPrimary</item>
|
||||
|
@@ -136,6 +136,11 @@
|
||||
<!-- leave empty to allow overriding -->
|
||||
</style>
|
||||
|
||||
<style name="Theme.Session.CallActivity" parent="Theme.Session.ForceDark">
|
||||
<item name="windowActionBar">false</item>
|
||||
<item name="windowNoTitle">true</item>
|
||||
</style>
|
||||
|
||||
<style name="Theme.Session.BottomSheet" parent="@style/Theme.AppCompat.DayNight.Dialog">
|
||||
<item name="colorControlNormal">?android:textColorPrimary</item>
|
||||
<item name="android:textColorPrimary">@color/text</item>
|
||||
|
Reference in New Issue
Block a user