summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--InCallUI/src/com/android/incallui/Call.java12
-rw-r--r--InCallUI/src/com/android/incallui/CallCardPresenter.java6
2 files changed, 16 insertions, 2 deletions
diff --git a/InCallUI/src/com/android/incallui/Call.java b/InCallUI/src/com/android/incallui/Call.java
index 77d6117ac..da2ef3c07 100644
--- a/InCallUI/src/com/android/incallui/Call.java
+++ b/InCallUI/src/com/android/incallui/Call.java
@@ -30,6 +30,7 @@ import android.telecom.GatewayInfo;
import android.telecom.InCallService.VideoCall;
import android.telecom.PhoneAccountHandle;
import android.telecom.VideoProfile;
+import android.text.TextUtils;
import java.util.ArrayList;
import java.util.List;
@@ -538,6 +539,17 @@ public class Call {
return call1.getId().equals(call2.getId());
}
+ public static boolean areSameNumber(Call call1, Call call2) {
+ if (call1 == null && call2 == null) {
+ return true;
+ } else if (call1 == null || call2 == null) {
+ return false;
+ }
+
+ // otherwise compare call Numbers
+ return TextUtils.equals(call1.getNumber(), call2.getNumber());
+ }
+
public int getSessionModificationState() {
return mSessionModificationState;
}
diff --git a/InCallUI/src/com/android/incallui/CallCardPresenter.java b/InCallUI/src/com/android/incallui/CallCardPresenter.java
index 5cbffa628..c93fe4cb4 100644
--- a/InCallUI/src/com/android/incallui/CallCardPresenter.java
+++ b/InCallUI/src/com/android/incallui/CallCardPresenter.java
@@ -201,8 +201,10 @@ public class CallCardPresenter extends Presenter<CallCardPresenter.CallCardUi>
Log.d(this, "Primary call: " + primary);
Log.d(this, "Secondary call: " + secondary);
- final boolean primaryChanged = !Call.areSame(mPrimary, primary);
- final boolean secondaryChanged = !Call.areSame(mSecondary, secondary);
+ final boolean primaryChanged = !(Call.areSame(mPrimary, primary) &&
+ Call.areSameNumber(mPrimary, primary));
+ final boolean secondaryChanged = !(Call.areSame(mSecondary, secondary) &&
+ Call.areSameNumber(mSecondary, secondary));
mSecondary = secondary;
Call previousPrimary = mPrimary;