summaryrefslogtreecommitdiff
path: root/packages/SystemUI/src/com/android/keyguard/EmergencyButtonController.java
diff options
context:
space:
mode:
authorDave Mankoff <mankoff@google.com>2021-07-01 11:40:55 -0400
committerDave Mankoff <mankoff@google.com>2021-07-01 11:44:16 -0400
commit9aae6eca53a6d00f22da761f41a84a838211043a (patch)
tree17b2e3ec466f6b5f804773f6ff287b0b0ca9de7c /packages/SystemUI/src/com/android/keyguard/EmergencyButtonController.java
parent06327bba215b427646942889e517a4b681e357f8 (diff)
Don't fire pending remote input when is phone locked.
If an owner clicks "reply" on a locked device but doesn't actually unlock their device, we shouldn't attempt to satisfy the reply request. Check to ensure that the device is actually unlocked before replying. Also, if they click "emergency call", hide the shade before showing the dialer, otherwise the shade can be left visible over the top of the dialer. Fixes: 191551623 Test: manual Change-Id: Ie9e5127e19e222dcfa3c34b57aec1bc8074f5674
Diffstat (limited to 'packages/SystemUI/src/com/android/keyguard/EmergencyButtonController.java')
-rw-r--r--packages/SystemUI/src/com/android/keyguard/EmergencyButtonController.java9
1 files changed, 9 insertions, 0 deletions
diff --git a/packages/SystemUI/src/com/android/keyguard/EmergencyButtonController.java b/packages/SystemUI/src/com/android/keyguard/EmergencyButtonController.java
index 4275189cfe26..e7215b8ebe49 100644
--- a/packages/SystemUI/src/com/android/keyguard/EmergencyButtonController.java
+++ b/packages/SystemUI/src/com/android/keyguard/EmergencyButtonController.java
@@ -34,6 +34,7 @@ import androidx.annotation.Nullable;
import com.android.internal.logging.MetricsLogger;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.keyguard.dagger.KeyguardBouncerScope;
+import com.android.systemui.statusbar.phone.ShadeController;
import com.android.systemui.statusbar.policy.ConfigurationController;
import com.android.systemui.statusbar.policy.ConfigurationController.ConfigurationListener;
import com.android.systemui.util.EmergencyDialerConstants;
@@ -50,6 +51,7 @@ public class EmergencyButtonController extends ViewController<EmergencyButton> {
private final TelephonyManager mTelephonyManager;
private final PowerManager mPowerManager;
private final ActivityTaskManager mActivityTaskManager;
+ private ShadeController mShadeController;
private final TelecomManager mTelecomManager;
private final MetricsLogger mMetricsLogger;
@@ -79,6 +81,7 @@ public class EmergencyButtonController extends ViewController<EmergencyButton> {
ConfigurationController configurationController,
KeyguardUpdateMonitor keyguardUpdateMonitor, TelephonyManager telephonyManager,
PowerManager powerManager, ActivityTaskManager activityTaskManager,
+ ShadeController shadeController,
@Nullable TelecomManager telecomManager, MetricsLogger metricsLogger) {
super(view);
mConfigurationController = configurationController;
@@ -86,6 +89,7 @@ public class EmergencyButtonController extends ViewController<EmergencyButton> {
mTelephonyManager = telephonyManager;
mPowerManager = powerManager;
mActivityTaskManager = activityTaskManager;
+ mShadeController = shadeController;
mTelecomManager = telecomManager;
mMetricsLogger = metricsLogger;
}
@@ -129,6 +133,7 @@ public class EmergencyButtonController extends ViewController<EmergencyButton> {
mPowerManager.userActivity(SystemClock.uptimeMillis(), true);
}
mActivityTaskManager.stopSystemLockTaskMode();
+ mShadeController.collapsePanel(false);
if (mTelecomManager != null && mTelecomManager.isInCall()) {
mTelecomManager.showInCallScreen(false);
if (mEmergencyButtonCallback != null) {
@@ -167,6 +172,7 @@ public class EmergencyButtonController extends ViewController<EmergencyButton> {
private final TelephonyManager mTelephonyManager;
private final PowerManager mPowerManager;
private final ActivityTaskManager mActivityTaskManager;
+ private ShadeController mShadeController;
@Nullable
private final TelecomManager mTelecomManager;
private final MetricsLogger mMetricsLogger;
@@ -175,6 +181,7 @@ public class EmergencyButtonController extends ViewController<EmergencyButton> {
public Factory(ConfigurationController configurationController,
KeyguardUpdateMonitor keyguardUpdateMonitor, TelephonyManager telephonyManager,
PowerManager powerManager, ActivityTaskManager activityTaskManager,
+ ShadeController shadeController,
@Nullable TelecomManager telecomManager, MetricsLogger metricsLogger) {
mConfigurationController = configurationController;
@@ -182,6 +189,7 @@ public class EmergencyButtonController extends ViewController<EmergencyButton> {
mTelephonyManager = telephonyManager;
mPowerManager = powerManager;
mActivityTaskManager = activityTaskManager;
+ mShadeController = shadeController;
mTelecomManager = telecomManager;
mMetricsLogger = metricsLogger;
}
@@ -190,6 +198,7 @@ public class EmergencyButtonController extends ViewController<EmergencyButton> {
public EmergencyButtonController create(EmergencyButton view) {
return new EmergencyButtonController(view, mConfigurationController,
mKeyguardUpdateMonitor, mTelephonyManager, mPowerManager, mActivityTaskManager,
+ mShadeController,
mTelecomManager, mMetricsLogger);
}
}