summaryrefslogtreecommitdiff
path: root/java/com/android/incallui
diff options
context:
space:
mode:
Diffstat (limited to 'java/com/android/incallui')
-rw-r--r--java/com/android/incallui/InCallPresenter.java13
-rw-r--r--java/com/android/incallui/VideoCallPresenter.java2
-rw-r--r--java/com/android/incallui/contactgrid/ContactGridManager.java15
3 files changed, 22 insertions, 8 deletions
diff --git a/java/com/android/incallui/InCallPresenter.java b/java/com/android/incallui/InCallPresenter.java
index 1528e7dcf..563468e84 100644
--- a/java/com/android/incallui/InCallPresenter.java
+++ b/java/com/android/incallui/InCallPresenter.java
@@ -189,6 +189,8 @@ public class InCallPresenter implements CallList.Listener {
/** Determines if the InCall UI is in fullscreen mode or not. */
private boolean mIsFullScreen = false;
+ private boolean mScreenTimeoutEnabled = true;
+
private PhoneStateListener mPhoneStateListener =
new PhoneStateListener() {
@Override
@@ -395,6 +397,7 @@ public class InCallPresenter implements CallList.Listener {
}
private void attemptFinishActivity() {
+ mScreenTimeoutEnabled = true;
final boolean doFinish = (mInCallActivity != null && isActivityStarted());
LogUtil.i("InCallPresenter.attemptFinishActivity", "Hide in call UI: " + doFinish);
if (doFinish) {
@@ -1064,6 +1067,7 @@ public class InCallPresenter implements CallList.Listener {
// TODO - b/36649622: Investigate this redundant call
mStatusBarNotifier.updateNotification(mCallList);
}
+ applyScreenTimeout();
}
/*package*/
@@ -1577,13 +1581,18 @@ public class InCallPresenter implements CallList.Listener {
public void enableScreenTimeout(boolean enable) {
LogUtil.v("InCallPresenter.enableScreenTimeout", "enableScreenTimeout: value=" + enable);
+ mScreenTimeoutEnabled = enable;
+ applyScreenTimeout();
+ }
+
+ private void applyScreenTimeout() {
if (mInCallActivity == null) {
- LogUtil.e("InCallPresenter.enableScreenTimeout", "InCallActivity is null.");
+ LogUtil.e("InCallPresenter.applyScreenTimeout", "InCallActivity is null.");
return;
}
final Window window = mInCallActivity.getWindow();
- if (enable) {
+ if (mScreenTimeoutEnabled) {
window.clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
} else {
window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
diff --git a/java/com/android/incallui/VideoCallPresenter.java b/java/com/android/incallui/VideoCallPresenter.java
index a10602227..5b4178d45 100644
--- a/java/com/android/incallui/VideoCallPresenter.java
+++ b/java/com/android/incallui/VideoCallPresenter.java
@@ -867,7 +867,7 @@ public class VideoCallPresenter
false /* isRemotelyHeld */);
enableCamera(mVideoCall, false);
InCallPresenter.getInstance().setFullScreen(false);
-
+ InCallPresenter.getInstance().enableScreenTimeout(false);
mIsVideoMode = false;
}
diff --git a/java/com/android/incallui/contactgrid/ContactGridManager.java b/java/com/android/incallui/contactgrid/ContactGridManager.java
index 502cc52b8..708bfab4e 100644
--- a/java/com/android/incallui/contactgrid/ContactGridManager.java
+++ b/java/com/android/incallui/contactgrid/ContactGridManager.java
@@ -32,6 +32,7 @@ import android.widget.ViewAnimator;
import com.android.contacts.common.compat.PhoneNumberUtilsCompat;
import com.android.contacts.common.lettertiles.LetterTileDrawable;
import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
import com.android.dialer.util.DrawableConverter;
import com.android.incallui.incall.protocol.ContactPhotoType;
import com.android.incallui.incall.protocol.PrimaryCallState;
@@ -347,12 +348,16 @@ public class ContactGridManager {
}
if (info.isTimerVisible) {
+ bottomTextSwitcher.setDisplayedChild(1);
+ bottomTimerView.setBase(
+ primaryCallState.connectTimeMillis
+ - System.currentTimeMillis()
+ + SystemClock.elapsedRealtime());
if (!isTimerStarted) {
- bottomTextSwitcher.setDisplayedChild(1);
- bottomTimerView.setBase(
- primaryCallState.connectTimeMillis
- - System.currentTimeMillis()
- + SystemClock.elapsedRealtime());
+ LogUtil.i(
+ "ContactGridManager.updateBottomRow",
+ "starting timer with base: %d",
+ bottomTimerView.getBase());
bottomTimerView.start();
isTimerStarted = true;
}