From 4f908a29617eb87353008db7d9b2b98d54681c72 Mon Sep 17 00:00:00 2001 From: Mario Danic Date: Sun, 28 Apr 2019 12:30:58 +0200 Subject: [PATCH] Fix call management buttons Signed-off-by: Mario Danic --- .../talk/controllers/CallController.java | 16 ++++++++-------- .../ConversationsListController.java | 3 ++- app/src/main/res/layout/controller_call.xml | 19 ++++++++++++++----- 3 files changed, 24 insertions(+), 14 deletions(-) diff --git a/app/src/main/java/com/nextcloud/talk/controllers/CallController.java b/app/src/main/java/com/nextcloud/talk/controllers/CallController.java index 9661692d5..cae0ff978 100644 --- a/app/src/main/java/com/nextcloud/talk/controllers/CallController.java +++ b/app/src/main/java/com/nextcloud/talk/controllers/CallController.java @@ -452,7 +452,7 @@ public class CallController extends BaseController { onCameraClick(); } } else { - cameraControlButton.setImageResource(R.drawable.ic_videocam_off_white_24px); + cameraControlButton.getHierarchy().setPlaceholderImage(R.drawable.ic_videocam_off_white_24px); cameraControlButton.setAlpha(0.7f); cameraSwitchButton.setVisibility(View.GONE); } @@ -463,7 +463,7 @@ public class CallController extends BaseController { onMicrophoneClick(); } } else { - microphoneControlButton.setImageResource(R.drawable.ic_mic_off_white_24px); + microphoneControlButton.getHierarchy().setPlaceholderImage(R.drawable.ic_mic_off_white_24px); } if (!inCall) { @@ -618,14 +618,14 @@ public class CallController extends BaseController { audioOn = !audioOn; if (audioOn) { - microphoneControlButton.setActualImageResource(R.drawable.ic_mic_white_24px); + microphoneControlButton.getHierarchy().setPlaceholderImage(R.drawable.ic_mic_white_24px); } else { - microphoneControlButton.setActualImageResource(R.drawable.ic_mic_off_white_24px); + microphoneControlButton.getHierarchy().setPlaceholderImage(R.drawable.ic_mic_off_white_24px); } toggleMedia(audioOn, false); } else { - microphoneControlButton.setActualImageResource(R.drawable.ic_mic_white_24px); + microphoneControlButton.getHierarchy().setPlaceholderImage(R.drawable.ic_mic_white_24px); pulseAnimation.start(); toggleMedia(true, false); } @@ -661,12 +661,12 @@ public class CallController extends BaseController { videoOn = !videoOn; if (videoOn) { - cameraControlButton.setActualImageResource(R.drawable.ic_videocam_white_24px); + cameraControlButton.getHierarchy().setPlaceholderImage(R.drawable.ic_videocam_white_24px); if (cameraEnumerator.getDeviceNames().length > 1) { cameraSwitchButton.setVisibility(View.VISIBLE); } } else { - cameraControlButton.setActualImageResource(R.drawable.ic_videocam_off_white_24px); + cameraControlButton.getHierarchy().setPlaceholderImage(R.drawable.ic_videocam_off_white_24px); cameraSwitchButton.setVisibility(View.GONE); } @@ -1938,7 +1938,7 @@ public class CallController extends BaseController { v.onTouchEvent(event); if (event.getAction() == MotionEvent.ACTION_UP && isPTTActive) { isPTTActive = false; - microphoneControlButton.setActualImageResource(R.drawable.ic_mic_off_white_24px); + microphoneControlButton.getHierarchy().setPlaceholderImage(R.drawable.ic_mic_off_white_24px); pulseAnimation.stop(); toggleMedia(false, false); animateCallControls(false, 5000); diff --git a/app/src/main/java/com/nextcloud/talk/controllers/ConversationsListController.java b/app/src/main/java/com/nextcloud/talk/controllers/ConversationsListController.java index b5a396191..9292e9f04 100644 --- a/app/src/main/java/com/nextcloud/talk/controllers/ConversationsListController.java +++ b/app/src/main/java/com/nextcloud/talk/controllers/ConversationsListController.java @@ -57,6 +57,7 @@ import com.facebook.drawee.backends.pipeline.Fresco; import com.facebook.imagepipeline.core.ImagePipeline; import com.facebook.imagepipeline.datasource.BaseBitmapDataSubscriber; import com.facebook.imagepipeline.image.CloseableImage; +import com.facebook.imagepipeline.postprocessors.RoundAsCirclePostprocessor; import com.facebook.imagepipeline.postprocessors.RoundPostprocessor; import com.facebook.imagepipeline.request.ImageRequest; import com.google.android.material.floatingactionbutton.FloatingActionButton; @@ -215,7 +216,7 @@ public class ConversationsListController extends BaseController implements Searc @Override protected void onNewResultImpl(Bitmap bitmap) { if (bitmap != null) { - new RoundPostprocessor(true).process(bitmap); + new RoundAsCirclePostprocessor(true).process(bitmap); menuItem.setIcon(new BitmapDrawable(bitmap)); } } diff --git a/app/src/main/res/layout/controller_call.xml b/app/src/main/res/layout/controller_call.xml index faff7f8b8..235bb1e2e 100644 --- a/app/src/main/res/layout/controller_call.xml +++ b/app/src/main/res/layout/controller_call.xml @@ -94,8 +94,9 @@ android:layout_height="40dp" android:layout_gravity="center_horizontal|bottom" android:layout_marginBottom="20dp" - android:backgroundTint="@color/colorPrimary" - app:actualImageResource="@drawable/ic_switch_video_white_24px" /> + app:backgroundImage="@color/colorPrimary" + app:roundAsCircle="true" + app:placeholderImage="@drawable/ic_switch_video_white_24px" /> @@ -115,7 +116,9 @@ android:layout_above="@id/callControlsLinearLayoutView" android:layout_centerHorizontal="true" android:tint="@color/nc_darkRed" - app:actualImageResource="@drawable/ic_call_end_white_24px" /> + app:backgroundImage="@color/colorPrimary" + app:roundAsCircle="true" + app:placeholderImage="@drawable/ic_call_end_white_24px" /> + app:backgroundImage="@color/colorPrimary" + app:roundAsCircle="true" + app:placeholderImage="@drawable/ic_mic_off_white_24px" />