Loading packages/SystemUI/src/com/android/keyguard/EmergencyButtonController.java +9 −0 Original line number Diff line number Diff line Loading @@ -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; Loading @@ -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; Loading Loading @@ -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; Loading @@ -86,6 +89,7 @@ public class EmergencyButtonController extends ViewController<EmergencyButton> { mTelephonyManager = telephonyManager; mPowerManager = powerManager; mActivityTaskManager = activityTaskManager; mShadeController = shadeController; mTelecomManager = telecomManager; mMetricsLogger = metricsLogger; } Loading Loading @@ -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) { Loading Loading @@ -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; Loading @@ -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; Loading @@ -182,6 +189,7 @@ public class EmergencyButtonController extends ViewController<EmergencyButton> { mTelephonyManager = telephonyManager; mPowerManager = powerManager; mActivityTaskManager = activityTaskManager; mShadeController = shadeController; mTelecomManager = telecomManager; mMetricsLogger = metricsLogger; } Loading @@ -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); } } Loading packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarRemoteInputCallback.java +10 −5 Original line number Diff line number Diff line Loading @@ -27,7 +27,6 @@ import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.content.IntentSender; import android.os.Handler; import android.os.RemoteException; import android.os.UserHandle; import android.view.View; Loading @@ -35,6 +34,7 @@ import android.view.ViewParent; import com.android.systemui.ActivityIntentHelper; import com.android.systemui.dagger.SysUISingleton; import com.android.systemui.dagger.qualifiers.Main; import com.android.systemui.plugins.ActivityStarter; import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.statusbar.ActionClickLogger; Loading @@ -50,6 +50,8 @@ import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow import com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayout; import com.android.systemui.statusbar.policy.KeyguardStateController; import java.util.concurrent.Executor; import javax.inject.Inject; /** Loading @@ -65,6 +67,7 @@ public class StatusBarRemoteInputCallback implements Callback, Callbacks, private final Context mContext; private final StatusBarKeyguardViewManager mStatusBarKeyguardViewManager; private final ShadeController mShadeController; private Executor mExecutor; private final ActivityIntentHelper mActivityIntentHelper; private final GroupExpansionManager mGroupExpansionManager; private View mPendingWorkRemoteInputView; Loading @@ -74,7 +77,6 @@ public class StatusBarRemoteInputCallback implements Callback, Callbacks, private final ActionClickLogger mActionClickLogger; private int mDisabled2; protected BroadcastReceiver mChallengeReceiver = new ChallengeReceiver(); private Handler mMainHandler = new Handler(); /** */ Loading @@ -89,10 +91,12 @@ public class StatusBarRemoteInputCallback implements Callback, Callbacks, ActivityStarter activityStarter, ShadeController shadeController, CommandQueue commandQueue, ActionClickLogger clickLogger) { ActionClickLogger clickLogger, @Main Executor executor) { mContext = context; mStatusBarKeyguardViewManager = statusBarKeyguardViewManager; mShadeController = shadeController; mExecutor = executor; mContext.registerReceiverAsUser(mChallengeReceiver, UserHandle.ALL, new IntentFilter(ACTION_DEVICE_LOCKED_CHANGED), null, null); mLockscreenUserManager = notificationLockscreenUserManager; Loading @@ -113,9 +117,10 @@ public class StatusBarRemoteInputCallback implements Callback, Callbacks, boolean hasPendingRemoteInput = mPendingRemoteInputView != null; if (state == StatusBarState.SHADE && (mStatusBarStateController.leaveOpenOnKeyguardHide() || hasPendingRemoteInput)) { if (!mStatusBarStateController.isKeyguardRequested()) { if (!mStatusBarStateController.isKeyguardRequested() && mKeyguardStateController.isUnlocked()) { if (hasPendingRemoteInput) { mMainHandler.post(mPendingRemoteInputView::callOnClick); mExecutor.execute(mPendingRemoteInputView::callOnClick); } mPendingRemoteInputView = null; } Loading packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarRemoteInputCallbackTest.java +4 −1 Original line number Diff line number Diff line Loading @@ -39,6 +39,8 @@ import com.android.systemui.statusbar.notification.NotificationEntryManager; import com.android.systemui.statusbar.notification.collection.legacy.NotificationGroupManagerLegacy; import com.android.systemui.statusbar.policy.DeviceProvisionedController; import com.android.systemui.statusbar.policy.KeyguardStateController; import com.android.systemui.util.concurrency.FakeExecutor; import com.android.systemui.util.time.FakeSystemClock; import org.junit.Before; import org.junit.Test; Loading @@ -58,6 +60,7 @@ public class StatusBarRemoteInputCallbackTest extends SysuiTestCase { @Mock private SysuiStatusBarStateController mStatusBarStateController; @Mock private StatusBarKeyguardViewManager mStatusBarKeyguardViewManager; @Mock private ActivityStarter mActivityStarter; private final FakeExecutor mFakeExecutor = new FakeExecutor(new FakeSystemClock()); private int mCurrentUserId = 0; private StatusBarRemoteInputCallback mRemoteInputCallback; Loading @@ -76,7 +79,7 @@ public class StatusBarRemoteInputCallbackTest extends SysuiTestCase { mock(NotificationGroupManagerLegacy.class), mNotificationLockscreenUserManager, mKeyguardStateController, mStatusBarStateController, mStatusBarKeyguardViewManager, mActivityStarter, mShadeController, new CommandQueue(mContext), mock(ActionClickLogger.class))); mock(ActionClickLogger.class), mFakeExecutor)); mRemoteInputCallback.mChallengeReceiver = mRemoteInputCallback.new ChallengeReceiver(); } Loading Loading
packages/SystemUI/src/com/android/keyguard/EmergencyButtonController.java +9 −0 Original line number Diff line number Diff line Loading @@ -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; Loading @@ -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; Loading Loading @@ -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; Loading @@ -86,6 +89,7 @@ public class EmergencyButtonController extends ViewController<EmergencyButton> { mTelephonyManager = telephonyManager; mPowerManager = powerManager; mActivityTaskManager = activityTaskManager; mShadeController = shadeController; mTelecomManager = telecomManager; mMetricsLogger = metricsLogger; } Loading Loading @@ -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) { Loading Loading @@ -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; Loading @@ -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; Loading @@ -182,6 +189,7 @@ public class EmergencyButtonController extends ViewController<EmergencyButton> { mTelephonyManager = telephonyManager; mPowerManager = powerManager; mActivityTaskManager = activityTaskManager; mShadeController = shadeController; mTelecomManager = telecomManager; mMetricsLogger = metricsLogger; } Loading @@ -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); } } Loading
packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarRemoteInputCallback.java +10 −5 Original line number Diff line number Diff line Loading @@ -27,7 +27,6 @@ import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.content.IntentSender; import android.os.Handler; import android.os.RemoteException; import android.os.UserHandle; import android.view.View; Loading @@ -35,6 +34,7 @@ import android.view.ViewParent; import com.android.systemui.ActivityIntentHelper; import com.android.systemui.dagger.SysUISingleton; import com.android.systemui.dagger.qualifiers.Main; import com.android.systemui.plugins.ActivityStarter; import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.statusbar.ActionClickLogger; Loading @@ -50,6 +50,8 @@ import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow import com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayout; import com.android.systemui.statusbar.policy.KeyguardStateController; import java.util.concurrent.Executor; import javax.inject.Inject; /** Loading @@ -65,6 +67,7 @@ public class StatusBarRemoteInputCallback implements Callback, Callbacks, private final Context mContext; private final StatusBarKeyguardViewManager mStatusBarKeyguardViewManager; private final ShadeController mShadeController; private Executor mExecutor; private final ActivityIntentHelper mActivityIntentHelper; private final GroupExpansionManager mGroupExpansionManager; private View mPendingWorkRemoteInputView; Loading @@ -74,7 +77,6 @@ public class StatusBarRemoteInputCallback implements Callback, Callbacks, private final ActionClickLogger mActionClickLogger; private int mDisabled2; protected BroadcastReceiver mChallengeReceiver = new ChallengeReceiver(); private Handler mMainHandler = new Handler(); /** */ Loading @@ -89,10 +91,12 @@ public class StatusBarRemoteInputCallback implements Callback, Callbacks, ActivityStarter activityStarter, ShadeController shadeController, CommandQueue commandQueue, ActionClickLogger clickLogger) { ActionClickLogger clickLogger, @Main Executor executor) { mContext = context; mStatusBarKeyguardViewManager = statusBarKeyguardViewManager; mShadeController = shadeController; mExecutor = executor; mContext.registerReceiverAsUser(mChallengeReceiver, UserHandle.ALL, new IntentFilter(ACTION_DEVICE_LOCKED_CHANGED), null, null); mLockscreenUserManager = notificationLockscreenUserManager; Loading @@ -113,9 +117,10 @@ public class StatusBarRemoteInputCallback implements Callback, Callbacks, boolean hasPendingRemoteInput = mPendingRemoteInputView != null; if (state == StatusBarState.SHADE && (mStatusBarStateController.leaveOpenOnKeyguardHide() || hasPendingRemoteInput)) { if (!mStatusBarStateController.isKeyguardRequested()) { if (!mStatusBarStateController.isKeyguardRequested() && mKeyguardStateController.isUnlocked()) { if (hasPendingRemoteInput) { mMainHandler.post(mPendingRemoteInputView::callOnClick); mExecutor.execute(mPendingRemoteInputView::callOnClick); } mPendingRemoteInputView = null; } Loading
packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarRemoteInputCallbackTest.java +4 −1 Original line number Diff line number Diff line Loading @@ -39,6 +39,8 @@ import com.android.systemui.statusbar.notification.NotificationEntryManager; import com.android.systemui.statusbar.notification.collection.legacy.NotificationGroupManagerLegacy; import com.android.systemui.statusbar.policy.DeviceProvisionedController; import com.android.systemui.statusbar.policy.KeyguardStateController; import com.android.systemui.util.concurrency.FakeExecutor; import com.android.systemui.util.time.FakeSystemClock; import org.junit.Before; import org.junit.Test; Loading @@ -58,6 +60,7 @@ public class StatusBarRemoteInputCallbackTest extends SysuiTestCase { @Mock private SysuiStatusBarStateController mStatusBarStateController; @Mock private StatusBarKeyguardViewManager mStatusBarKeyguardViewManager; @Mock private ActivityStarter mActivityStarter; private final FakeExecutor mFakeExecutor = new FakeExecutor(new FakeSystemClock()); private int mCurrentUserId = 0; private StatusBarRemoteInputCallback mRemoteInputCallback; Loading @@ -76,7 +79,7 @@ public class StatusBarRemoteInputCallbackTest extends SysuiTestCase { mock(NotificationGroupManagerLegacy.class), mNotificationLockscreenUserManager, mKeyguardStateController, mStatusBarStateController, mStatusBarKeyguardViewManager, mActivityStarter, mShadeController, new CommandQueue(mContext), mock(ActionClickLogger.class))); mock(ActionClickLogger.class), mFakeExecutor)); mRemoteInputCallback.mChallengeReceiver = mRemoteInputCallback.new ChallengeReceiver(); } Loading