Loading packages/SystemUI/aconfig/systemui.aconfig +10 −0 Original line number Diff line number Diff line Loading @@ -1064,3 +1064,13 @@ flag { purpose: PURPOSE_BUGFIX } } flag { name: "dozeui_scheduling_alarms_background_execution" namespace: "systemui" description: "Decide whether to execute binder calls to schedule alarms in background thread" bug: "330492575" metadata { purpose: PURPOSE_BUGFIX } } packages/SystemUI/src/com/android/systemui/doze/DozeUi.java +9 −1 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ package com.android.systemui.doze; import static com.android.systemui.doze.DozeMachine.State.DOZE; import static com.android.systemui.doze.DozeMachine.State.DOZE_AOD_PAUSED; import static com.android.systemui.Flags.dozeuiSchedulingAlarmsBackgroundExecution; import android.app.AlarmManager; import android.content.Context; Loading Loading @@ -70,6 +71,7 @@ public class DozeUi implements DozeMachine.Part { @Inject public DozeUi(Context context, AlarmManager alarmManager, WakeLock wakeLock, DozeHost host, @Main Handler handler, @Background Handler bgHandler, DozeParameters params, @Background DelayableExecutor bgExecutor, DozeLog dozeLog) { Loading @@ -80,7 +82,13 @@ public class DozeUi implements DozeMachine.Part { mBgExecutor = bgExecutor; mCanAnimateTransition = !params.getDisplayNeedsBlanking(); mDozeParameters = params; mTimeTicker = new AlarmTimeout(alarmManager, this::onTimeTick, "doze_time_tick", handler); if (dozeuiSchedulingAlarmsBackgroundExecution()) { mTimeTicker = new AlarmTimeout(alarmManager, this::onTimeTick, "doze_time_tick", bgHandler); } else { mTimeTicker = new AlarmTimeout(alarmManager, this::onTimeTick, "doze_time_tick", handler); } mDozeLog = dozeLog; } Loading packages/SystemUI/tests/src/com/android/systemui/doze/DozeUiTest.java +1 −1 Original line number Diff line number Diff line Loading @@ -85,7 +85,7 @@ public class DozeUiTest extends SysuiTestCase { mHandler = mHandlerThread.getThreadHandler(); mFakeExecutor = new FakeExecutor(new FakeSystemClock()); mDozeUi = new DozeUi(mContext, mAlarmManager, mWakeLock, mHost, mHandler, mDozeParameters, mFakeExecutor, mDozeLog); mHandler, mDozeParameters, mFakeExecutor, mDozeLog); mDozeUi.setDozeMachine(mMachine); } Loading Loading
packages/SystemUI/aconfig/systemui.aconfig +10 −0 Original line number Diff line number Diff line Loading @@ -1064,3 +1064,13 @@ flag { purpose: PURPOSE_BUGFIX } } flag { name: "dozeui_scheduling_alarms_background_execution" namespace: "systemui" description: "Decide whether to execute binder calls to schedule alarms in background thread" bug: "330492575" metadata { purpose: PURPOSE_BUGFIX } }
packages/SystemUI/src/com/android/systemui/doze/DozeUi.java +9 −1 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ package com.android.systemui.doze; import static com.android.systemui.doze.DozeMachine.State.DOZE; import static com.android.systemui.doze.DozeMachine.State.DOZE_AOD_PAUSED; import static com.android.systemui.Flags.dozeuiSchedulingAlarmsBackgroundExecution; import android.app.AlarmManager; import android.content.Context; Loading Loading @@ -70,6 +71,7 @@ public class DozeUi implements DozeMachine.Part { @Inject public DozeUi(Context context, AlarmManager alarmManager, WakeLock wakeLock, DozeHost host, @Main Handler handler, @Background Handler bgHandler, DozeParameters params, @Background DelayableExecutor bgExecutor, DozeLog dozeLog) { Loading @@ -80,7 +82,13 @@ public class DozeUi implements DozeMachine.Part { mBgExecutor = bgExecutor; mCanAnimateTransition = !params.getDisplayNeedsBlanking(); mDozeParameters = params; mTimeTicker = new AlarmTimeout(alarmManager, this::onTimeTick, "doze_time_tick", handler); if (dozeuiSchedulingAlarmsBackgroundExecution()) { mTimeTicker = new AlarmTimeout(alarmManager, this::onTimeTick, "doze_time_tick", bgHandler); } else { mTimeTicker = new AlarmTimeout(alarmManager, this::onTimeTick, "doze_time_tick", handler); } mDozeLog = dozeLog; } Loading
packages/SystemUI/tests/src/com/android/systemui/doze/DozeUiTest.java +1 −1 Original line number Diff line number Diff line Loading @@ -85,7 +85,7 @@ public class DozeUiTest extends SysuiTestCase { mHandler = mHandlerThread.getThreadHandler(); mFakeExecutor = new FakeExecutor(new FakeSystemClock()); mDozeUi = new DozeUi(mContext, mAlarmManager, mWakeLock, mHost, mHandler, mDozeParameters, mFakeExecutor, mDozeLog); mHandler, mDozeParameters, mFakeExecutor, mDozeLog); mDozeUi.setDozeMachine(mMachine); } Loading