diff options
author | Omkar Kolangade <omkark@codeaurora.org> | 2016-04-07 17:22:13 +0000 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2016-04-07 17:22:13 +0000 |
commit | d75990c1c893caf86cc09a2ccf6d0c3937401194 (patch) | |
tree | c22438ee36a5542c1bf8066be6a79730a5c9b5e2 /InCallUI | |
parent | 8607dfb43c2707ca534d68f2dcf728fece01c82b (diff) | |
parent | 1f77177c64177d51fe6312532195d133a7c6186c (diff) |
Merge "IMS-VT: Fix race-condition causing preview freeze." into nyc-dev
am: 1f77177
* commit '1f77177c64177d51fe6312532195d133a7c6186c':
IMS-VT: Fix race-condition causing preview freeze.
Change-Id: I835103a509e11f4ccb2a6c9e2541e22481b2d37b
Diffstat (limited to 'InCallUI')
-rw-r--r-- | InCallUI/src/com/android/incallui/Call.java | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/InCallUI/src/com/android/incallui/Call.java b/InCallUI/src/com/android/incallui/Call.java index 54ec52829..447c34c88 100644 --- a/InCallUI/src/com/android/incallui/Call.java +++ b/InCallUI/src/com/android/incallui/Call.java @@ -374,6 +374,7 @@ public class Call { private int mRequestedVideoState = VideoProfile.STATE_AUDIO_ONLY; private InCallVideoCallCallback mVideoCallCallback; + private boolean mIsVideoCallCallbackRegistered; private String mChildNumber; private String mLastForwardedNumber; private String mCallSubject; @@ -448,6 +449,7 @@ public class Call { mVideoCallCallback = new InCallVideoCallCallback(this); } mTelecomCall.getVideoCall().registerCallback(mVideoCallCallback); + mIsVideoCallCallbackRegistered = true; } mChildCallIds.clear(); @@ -754,8 +756,14 @@ public class Call { return mTelecomCall == null ? null : mTelecomCall.getDetails().getAccountHandle(); } + /** + * @return The {@link VideoCall} instance associated with the {@link android.telecom.Call}. + * Will return {@code null} until {@link #updateFromTelecomCall()} has registered a valid + * callback on the {@link VideoCall}. + */ public VideoCall getVideoCall() { - return mTelecomCall == null ? null : mTelecomCall.getVideoCall(); + return mTelecomCall == null || !mIsVideoCallCallbackRegistered ? null + : mTelecomCall.getVideoCall(); } public List<String> getChildCallIds() { |