From 1dc2ceac680da86d2be40f4ac9f5639bd1d113a3 Mon Sep 17 00:00:00 2001 From: calderwoodra Date: Wed, 20 Sep 2017 16:30:41 -0700 Subject: Updated ongoing call notification to reflect video call state. screenshots: ongoing: http://screen/FkAM9hOU5Rq paused: http://screen/mrp6UJCoWAu Bug: 63274792,63271690 Test: StatusBarNotifierTest PiperOrigin-RevId: 169469414 Change-Id: I442e21d93b7e11dea191311acd28846ea257c156 --- java/com/android/incallui/StatusBarNotifier.java | 8 +++++++- java/com/android/incallui/videotech/VideoTech.java | 8 ++++++++ java/com/android/incallui/videotech/empty/EmptyVideoTech.java | 5 +++++ java/com/android/incallui/videotech/ims/ImsVideoTech.java | 5 +++++ .../android/incallui/videotech/lightbringer/LightbringerTech.java | 5 +++++ 5 files changed, 30 insertions(+), 1 deletion(-) (limited to 'java/com/android/incallui') diff --git a/java/com/android/incallui/StatusBarNotifier.java b/java/com/android/incallui/StatusBarNotifier.java index a2fa7e492..becfad4ab 100644 --- a/java/com/android/incallui/StatusBarNotifier.java +++ b/java/com/android/incallui/StatusBarNotifier.java @@ -678,7 +678,8 @@ public class StatusBarNotifier if (call.getState() == DialerCall.State.ONHOLD) { return R.drawable.ic_phone_paused_white_24dp; } else if (call.getVideoTech().getSessionModificationState() - == SessionModificationState.RECEIVED_UPGRADE_TO_VIDEO_REQUEST) { + == SessionModificationState.RECEIVED_UPGRADE_TO_VIDEO_REQUEST + || call.isVideoCall()) { return R.drawable.quantum_ic_videocam_white_24; } else if (call.hasProperty(PROPERTY_HIGH_DEF_AUDIO) && MotorolaUtils.shouldShowHdIconInNotification(mContext)) { @@ -730,6 +731,11 @@ public class StatusBarNotifier } } else if (call.getState() == DialerCall.State.ONHOLD) { resId = R.string.notification_on_hold; + } else if (call.isVideoCall()) { + resId = + call.getVideoTech().isPaused() + ? R.string.notification_ongoing_paused_video_call + : R.string.notification_ongoing_video_call; } else if (DialerCall.State.isDialing(call.getState())) { resId = R.string.notification_dialing; } else if (call.getVideoTech().getSessionModificationState() diff --git a/java/com/android/incallui/videotech/VideoTech.java b/java/com/android/incallui/videotech/VideoTech.java index e3753bc65..410c35762 100644 --- a/java/com/android/incallui/videotech/VideoTech.java +++ b/java/com/android/incallui/videotech/VideoTech.java @@ -39,6 +39,14 @@ public interface VideoTech { boolean shouldUseSurfaceView(); + /** + * Returns true if the video is paused. This is different than if the video stream has been turned + * off. + * + *

See {@link #isTransmitting()} + */ + boolean isPaused(); + VideoCallScreenDelegate createVideoCallScreenDelegate( Context context, VideoCallScreen videoCallScreen); diff --git a/java/com/android/incallui/videotech/empty/EmptyVideoTech.java b/java/com/android/incallui/videotech/empty/EmptyVideoTech.java index 76766dfe8..f156a14ad 100644 --- a/java/com/android/incallui/videotech/empty/EmptyVideoTech.java +++ b/java/com/android/incallui/videotech/empty/EmptyVideoTech.java @@ -48,6 +48,11 @@ public class EmptyVideoTech implements VideoTech { return false; } + @Override + public boolean isPaused() { + return false; + } + @Override public VideoCallScreenDelegate createVideoCallScreenDelegate( Context context, VideoCallScreen videoCallScreen) { diff --git a/java/com/android/incallui/videotech/ims/ImsVideoTech.java b/java/com/android/incallui/videotech/ims/ImsVideoTech.java index c12474dc3..0ef07d667 100644 --- a/java/com/android/incallui/videotech/ims/ImsVideoTech.java +++ b/java/com/android/incallui/videotech/ims/ImsVideoTech.java @@ -107,6 +107,11 @@ public class ImsVideoTech implements VideoTech { return false; } + @Override + public boolean isPaused() { + return paused; + } + @Override public VideoCallScreenDelegate createVideoCallScreenDelegate( Context context, VideoCallScreen videoCallScreen) { diff --git a/java/com/android/incallui/videotech/lightbringer/LightbringerTech.java b/java/com/android/incallui/videotech/lightbringer/LightbringerTech.java index 4b6f5ec5a..1ddf3716e 100644 --- a/java/com/android/incallui/videotech/lightbringer/LightbringerTech.java +++ b/java/com/android/incallui/videotech/lightbringer/LightbringerTech.java @@ -103,6 +103,11 @@ public class LightbringerTech implements VideoTech, LightbringerListener { return false; } + @Override + public boolean isPaused() { + return false; + } + @Override public VideoCallScreenDelegate createVideoCallScreenDelegate( Context context, VideoCallScreen videoCallScreen) { -- cgit v1.2.3