diff options
author | Tyler Gunn <tgunn@google.com> | 2015-06-30 13:15:59 -0700 |
---|---|---|
committer | Tyler Gunn <tgunn@google.com> | 2015-12-06 22:04:51 -0800 |
commit | 50d70a614f2f617ed60d24f8d1756b1bcb20bb80 (patch) | |
tree | 748a9348328d28d37f5c7f41d1270165c888d164 /InCallUI/src/com/android/incallui/VideoCallPresenter.java | |
parent | fa0c573d689a16401f1bf801d93b7b37d2380c5c (diff) |
Show dialpad button for VT calls, cleanup dialpad on rotation.
1. Show the dialpad button for VT calls (this was easy).
2. In testing I realized there were some other dialpad scenarios that
did not work properly:
- The dialpad visibility state was not properly restored after rotation.
- The auto-fullscreen code could hide the call card when the dialpad was
showing, resulting in an inability to hide the dialpad.
- In landscape it was possible to tap between the call card and the
dialpad and cause the call card to be hidden.
- If user goes to background in fullscreen mode and then opens dialer and
chooses to show the dialpad, the app is still in fullscreen and it is not
possible to hide the dialpad.
3. Noticed an issue related to the fact mIsFullScreen in InCallPresenter
is static, and after rotation you're always defaulting to not fullscreen.
Fixed by clearing fullscreen state on rotation to match actuality.
Bug: 21296950
Change-Id: I2c7a666a50e2284b1d22db43c443b34109cff9b1
Diffstat (limited to 'InCallUI/src/com/android/incallui/VideoCallPresenter.java')
-rw-r--r-- | InCallUI/src/com/android/incallui/VideoCallPresenter.java | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/InCallUI/src/com/android/incallui/VideoCallPresenter.java b/InCallUI/src/com/android/incallui/VideoCallPresenter.java index 262adb46d..b663bb8bd 100644 --- a/InCallUI/src/com/android/incallui/VideoCallPresenter.java +++ b/InCallUI/src/com/android/incallui/VideoCallPresenter.java @@ -75,12 +75,14 @@ public class VideoCallPresenter extends Presenter<VideoCallPresenter.VideoCallUi public static final boolean DEBUG = false; /** - * Runnable which is posted to schedule automatically entering fullscreen mode. + * Runnable which is posted to schedule automatically entering fullscreen mode. Will not auto + * enter fullscreen mode if the dialpad is visible (doing so would make it impossible to exit + * the dialpad). */ private Runnable mAutoFullscreenRunnable = new Runnable() { @Override public void run() { - if (mAutoFullScreenPending) { + if (mAutoFullScreenPending && !InCallPresenter.getInstance().isDialpadVisible()) { Log.v(this, "Automatically entering fullscreen mode."); InCallPresenter.getInstance().setFullScreen(true); mAutoFullScreenPending = false; |