diff options
Diffstat (limited to 'InCallUI/src/com/android/incallui/InCallActivity.java')
-rw-r--r-- | InCallUI/src/com/android/incallui/InCallActivity.java | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/InCallUI/src/com/android/incallui/InCallActivity.java b/InCallUI/src/com/android/incallui/InCallActivity.java index 24e57625e..f609d28d2 100644 --- a/InCallUI/src/com/android/incallui/InCallActivity.java +++ b/InCallUI/src/com/android/incallui/InCallActivity.java @@ -192,6 +192,7 @@ public class InCallActivity extends Activity { private boolean hasPendingErrorDialog() { return mDialog != null; } + /** * Dismisses the in-call screen. * @@ -245,6 +246,10 @@ public class InCallActivity extends Activity { // BACK is also used to exit out of any "special modes" of the // in-call UI: + if (!mCallCardFragment.isVisible()) { + return; + } + if (mDialpadFragment.isVisible()) { mCallButtonFragment.displayDialpad(false /* show */, true /* animate */); return; @@ -256,7 +261,7 @@ public class InCallActivity extends Activity { // Always disable the Back key while an incoming call is ringing final Call call = CallList.getInstance().getIncomingCall(); if (call != null) { - Log.d(this, "Consume Back press for an inconing call"); + Log.d(this, "Consume Back press for an incoming call"); return; } @@ -387,6 +392,13 @@ public class InCallActivity extends Activity { mCallCardFragment.animateForNewOutgoingCall(); } + if (CallList.getInstance().getWaitingForAccountCall() != null) { + mCallCardFragment.setVisible(false); + SelectPhoneAccountDialogFragment.show(getFragmentManager()); + } else { + mCallCardFragment.setVisible(true); + } + return; } } |