summaryrefslogtreecommitdiffstats
path: root/src/com/android/incallui/AnswerPresenter.java
diff options
context:
space:
mode:
authorRekha Kumar <rekhak@codeaurora.org>2014-10-14 16:28:21 -0700
committerLinux Build Service Account <lnxbuild@localhost>2014-11-04 08:50:17 -0700
commitdcb22745f32b18b9061eab3ba3c8392372326229 (patch)
tree1ab93c16eb9747081918b54d67c8756b9490e6c7 /src/com/android/incallui/AnswerPresenter.java
parent1a82db3a7b8af4d2d0ce544706ddcdda5a1e9acc (diff)
downloadpackages_apps_InCallUI-dcb22745f32b18b9061eab3ba3c8392372326229.tar.gz
packages_apps_InCallUI-dcb22745f32b18b9061eab3ba3c8392372326229.tar.bz2
packages_apps_InCallUI-dcb22745f32b18b9061eab3ba3c8392372326229.zip
IMS-VT: Answering calls and upgrade requests as VT_TX and VT_RX
-Support for showing one way options for incoming upgrade request -Fix issue where incoming video popup stays on screen even after rejecting the request. -Fix issue where incoming video popup stays on even after it has been timed out by lower layers. - Answer with different calltypes support. Change-Id: I971a7e227d4d8a5ec26b2d79126094b0d8786027 CRs-Fixed: 738027
Diffstat (limited to 'src/com/android/incallui/AnswerPresenter.java')
-rw-r--r--src/com/android/incallui/AnswerPresenter.java22
1 files changed, 15 insertions, 7 deletions
diff --git a/src/com/android/incallui/AnswerPresenter.java b/src/com/android/incallui/AnswerPresenter.java
index 3574c823..5e8cd554 100644
--- a/src/com/android/incallui/AnswerPresenter.java
+++ b/src/com/android/incallui/AnswerPresenter.java
@@ -108,9 +108,12 @@ public class AnswerPresenter extends Presenter<AnswerPresenter.AnswerUi>
@Override
public void onUpgradeToVideo(Call call) {
- Log.d(this, "onUpgradeToVideo: " + this);
- if (getUi() != null
- && call.getSessionModificationState()
+ Log.d(this, "onUpgradeToVideo: " + this + " call=" + call);
+ if (getUi() == null) {
+ Log.d(this, "onUpgradeToVideo ui is null");
+ return;
+ }
+ if (call.getSessionModificationState()
== Call.SessionModificationState.RECEIVED_UPGRADE_TO_VIDEO_REQUEST) {
processVideoUpgradeRequestCall(call);
}
@@ -141,7 +144,6 @@ public class AnswerPresenter extends Presenter<AnswerPresenter.AnswerUi>
// Listen for call updates for the current call.
CallList.getInstance().addCallUpdateListener(mCallId[phoneId], this);
getUi().showAnswerUi(true);
-
getUi().showTargets(AnswerFragment.TARGET_SET_FOR_VIDEO_UPGRADE_REQUEST);
}
@@ -229,7 +231,7 @@ public class AnswerPresenter extends Presenter<AnswerPresenter.AnswerUi>
if (mCall[phoneId].getSessionModificationState()
== Call.SessionModificationState.RECEIVED_UPGRADE_TO_VIDEO_REQUEST) {
- InCallPresenter.getInstance().acceptUpgradeRequest(context);
+ InCallPresenter.getInstance().acceptUpgradeRequest(videoState, context);
} else {
TelecomAdapter.getInstance().answerCall(mCall[phoneId].getId(), videoState);
}
@@ -243,16 +245,22 @@ public class AnswerPresenter extends Presenter<AnswerPresenter.AnswerUi>
}
TelecomAdapter.getInstance().deflectCall(mCall[phoneId].getId(), number);
+
}
/**
* TODO: We are using reject and decline interchangeably. We should settle on
* reject since it seems to be more prevalent.
*/
- public void onDecline() {
+ public void onDecline(Context context) {
int phoneId = getActivePhoneId();
Log.i(this, "onDecline mCallId:" + mCallId + "phoneId:" + phoneId);
- TelecomAdapter.getInstance().rejectCall(mCall[phoneId].getId(), false, null);
+ if (mCall[phoneId].getSessionModificationState()
+ == Call.SessionModificationState.RECEIVED_UPGRADE_TO_VIDEO_REQUEST) {
+ InCallPresenter.getInstance().declineUpgradeRequest(context);
+ } else {
+ TelecomAdapter.getInstance().rejectCall(mCall[phoneId].getId(), false, null);
+ }
}
public void onText() {