summaryrefslogtreecommitdiff
path: root/java/com/android/incallui
diff options
context:
space:
mode:
Diffstat (limited to 'java/com/android/incallui')
-rw-r--r--java/com/android/incallui/InCallServiceImpl.java6
-rw-r--r--java/com/android/incallui/ReturnToCallController.java23
2 files changed, 23 insertions, 6 deletions
diff --git a/java/com/android/incallui/InCallServiceImpl.java b/java/com/android/incallui/InCallServiceImpl.java
index 959f13f2e..2b147e7f8 100644
--- a/java/com/android/incallui/InCallServiceImpl.java
+++ b/java/com/android/incallui/InCallServiceImpl.java
@@ -111,10 +111,8 @@ public class InCallServiceImpl extends InCallService {
InCallPresenter.getInstance().onServiceBind();
InCallPresenter.getInstance().maybeStartRevealAnimation(intent);
TelecomAdapter.getInstance().setInCallService(this);
- if (ReturnToCallController.isEnabled(this)) {
- returnToCallController =
- new ReturnToCallController(this, ContactInfoCache.getInstance(context));
- }
+ returnToCallController =
+ new ReturnToCallController(this, ContactInfoCache.getInstance(context));
feedbackListener = FeedbackComponent.get(context).getCallFeedbackListener();
CallList.getInstance().addListener(feedbackListener);
diff --git a/java/com/android/incallui/ReturnToCallController.java b/java/com/android/incallui/ReturnToCallController.java
index 6227c77bd..9dfb73bae 100644
--- a/java/com/android/incallui/ReturnToCallController.java
+++ b/java/com/android/incallui/ReturnToCallController.java
@@ -108,6 +108,11 @@ public class ReturnToCallController implements InCallUiListener, Listener, Audio
@Override
public void onUiShowing(boolean showing) {
+ if (!isEnabled(context)) {
+ hide();
+ return;
+ }
+
LogUtil.i("ReturnToCallController.onUiShowing", "showing: " + showing);
if (showing) {
LogUtil.i("ReturnToCallController.onUiShowing", "going to hide");
@@ -155,8 +160,7 @@ public class ReturnToCallController implements InCallUiListener, Listener, Audio
canShowBubblesForTesting = canShowBubbles;
}
- @VisibleForTesting
- public Bubble startBubble() {
+ private Bubble startBubble() {
if (!canShowBubbles(context)) {
LogUtil.i("ReturnToCallController.startBubble", "can't show bubble, no permission");
return null;
@@ -178,6 +182,11 @@ public class ReturnToCallController implements InCallUiListener, Listener, Audio
@Override
public void onCallListChange(CallList callList) {
+ if (!isEnabled(context)) {
+ hide();
+ return;
+ }
+
if ((bubble == null || !bubble.isVisible())
&& getCall() != null
&& !InCallPresenter.getInstance().isShowingInCallUi()) {
@@ -188,6 +197,11 @@ public class ReturnToCallController implements InCallUiListener, Listener, Audio
@Override
public void onDisconnect(DialerCall call) {
+ if (!isEnabled(context)) {
+ hide();
+ return;
+ }
+
LogUtil.enterBlock("ReturnToCallController.onDisconnect");
if (bubble != null && bubble.isVisible() && (getCall() == null)) {
// Show "Call ended" and hide bubble when there is no outgoing, active or background call
@@ -214,6 +228,11 @@ public class ReturnToCallController implements InCallUiListener, Listener, Audio
@Override
public void onAudioStateChanged(CallAudioState audioState) {
+ if (!isEnabled(context)) {
+ hide();
+ return;
+ }
+
this.audioState = audioState;
if (bubble != null) {
bubble.updateActions(generateActions());