Remove DozeHost from Components.
DozeHost is injectable. Inject it where needed. Bug: 143982853 Test: atest SystemUITests Change-Id: I76e01b6fc6946754baf2218e5fd7b68728e206c1
This commit is contained in:
@@ -18,7 +18,6 @@ package com.android.systemui.doze;
|
||||
|
||||
import android.annotation.Nullable;
|
||||
import android.app.AlarmManager;
|
||||
import android.app.Application;
|
||||
import android.app.IWallpaperManager;
|
||||
import android.content.Context;
|
||||
import android.hardware.Sensor;
|
||||
@@ -28,13 +27,13 @@ import android.os.Handler;
|
||||
|
||||
import com.android.keyguard.KeyguardUpdateMonitor;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.SystemUIApplication;
|
||||
import com.android.systemui.broadcast.BroadcastDispatcher;
|
||||
import com.android.systemui.dock.DockManager;
|
||||
import com.android.systemui.keyguard.WakefulnessLifecycle;
|
||||
import com.android.systemui.plugins.FalsingManager;
|
||||
import com.android.systemui.statusbar.phone.BiometricUnlockController;
|
||||
import com.android.systemui.statusbar.phone.DozeParameters;
|
||||
import com.android.systemui.statusbar.phone.DozeServiceHost;
|
||||
import com.android.systemui.statusbar.policy.BatteryController;
|
||||
import com.android.systemui.util.sensors.AsyncSensorManager;
|
||||
import com.android.systemui.util.sensors.ProximitySensor;
|
||||
@@ -60,6 +59,7 @@ public class DozeFactory {
|
||||
private final Handler mHandler;
|
||||
private final BiometricUnlockController mBiometricUnlockController;
|
||||
private final BroadcastDispatcher mBroadcastDispatcher;
|
||||
private final DozeServiceHost mDozeServiceHost;
|
||||
|
||||
@Inject
|
||||
public DozeFactory(FalsingManager falsingManager, DozeLog dozeLog,
|
||||
@@ -70,7 +70,7 @@ public class DozeFactory {
|
||||
ProximitySensor proximitySensor,
|
||||
DelayedWakeLock.Builder delayedWakeLockBuilder, Handler handler,
|
||||
BiometricUnlockController biometricUnlockController,
|
||||
BroadcastDispatcher broadcastDispatcher) {
|
||||
BroadcastDispatcher broadcastDispatcher, DozeServiceHost dozeServiceHost) {
|
||||
mFalsingManager = falsingManager;
|
||||
mDozeLog = dozeLog;
|
||||
mDozeParameters = dozeParameters;
|
||||
@@ -86,16 +86,16 @@ public class DozeFactory {
|
||||
mHandler = handler;
|
||||
mBiometricUnlockController = biometricUnlockController;
|
||||
mBroadcastDispatcher = broadcastDispatcher;
|
||||
mDozeServiceHost = dozeServiceHost;
|
||||
}
|
||||
|
||||
/** Creates a DozeMachine with its parts for {@code dozeService}. */
|
||||
DozeMachine assembleMachine(DozeService dozeService) {
|
||||
DozeHost host = getHost(dozeService);
|
||||
AmbientDisplayConfiguration config = new AmbientDisplayConfiguration(dozeService);
|
||||
WakeLock wakeLock = mDelayedWakeLockBuilder.setHandler(mHandler).setTag("Doze").build();
|
||||
|
||||
DozeMachine.Service wrappedService = dozeService;
|
||||
wrappedService = new DozeBrightnessHostForwarder(wrappedService, host);
|
||||
wrappedService = new DozeBrightnessHostForwarder(wrappedService, mDozeServiceHost);
|
||||
wrappedService = DozeScreenStatePreventingAdapter.wrapIfNeeded(
|
||||
wrappedService, mDozeParameters);
|
||||
wrappedService = DozeSuspendScreenStatePreventingAdapter.wrapIfNeeded(
|
||||
@@ -106,16 +106,19 @@ public class DozeFactory {
|
||||
machine.setParts(new DozeMachine.Part[]{
|
||||
new DozePauser(mHandler, machine, mAlarmManager, mDozeParameters.getPolicy()),
|
||||
new DozeFalsingManagerAdapter(mFalsingManager),
|
||||
createDozeTriggers(dozeService, mAsyncSensorManager, host, mAlarmManager, config,
|
||||
mDozeParameters, mHandler, wakeLock, machine, mDockManager, mDozeLog),
|
||||
createDozeUi(dozeService, host, wakeLock, machine, mHandler, mAlarmManager,
|
||||
mDozeParameters, mDozeLog),
|
||||
new DozeScreenState(wrappedService, mHandler, host, mDozeParameters, wakeLock),
|
||||
createDozeScreenBrightness(dozeService, wrappedService, mAsyncSensorManager, host,
|
||||
mDozeParameters, mHandler),
|
||||
new DozeWallpaperState(
|
||||
mWallpaperManager, mBiometricUnlockController, mDozeParameters),
|
||||
new DozeDockHandler(dozeService, machine, host, config, mHandler, mDockManager),
|
||||
createDozeTriggers(dozeService, mAsyncSensorManager, mDozeServiceHost,
|
||||
mAlarmManager, config, mDozeParameters, mHandler, wakeLock, machine,
|
||||
mDockManager, mDozeLog),
|
||||
createDozeUi(dozeService, mDozeServiceHost, wakeLock, machine, mHandler,
|
||||
mAlarmManager, mDozeParameters, mDozeLog),
|
||||
new DozeScreenState(wrappedService, mHandler, mDozeServiceHost, mDozeParameters,
|
||||
wakeLock),
|
||||
createDozeScreenBrightness(dozeService, wrappedService, mAsyncSensorManager,
|
||||
mDozeServiceHost, mDozeParameters, mHandler),
|
||||
new DozeWallpaperState(mWallpaperManager, mBiometricUnlockController,
|
||||
mDozeParameters),
|
||||
new DozeDockHandler(dozeService, machine, mDozeServiceHost, config, mHandler,
|
||||
mDockManager),
|
||||
new DozeAuthRemover(dozeService)
|
||||
});
|
||||
|
||||
@@ -148,10 +151,4 @@ public class DozeFactory {
|
||||
return new DozeUi(context, alarmManager, machine, wakeLock, host, handler, params,
|
||||
mKeyguardUpdateMonitor, dozeLog);
|
||||
}
|
||||
|
||||
public static DozeHost getHost(DozeService service) {
|
||||
Application appCandidate = service.getApplication();
|
||||
final SystemUIApplication app = (SystemUIApplication) appCandidate;
|
||||
return app.getComponent(DozeHost.class);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -55,10 +55,6 @@ public class DozeService extends DreamService
|
||||
|
||||
setWindowless(true);
|
||||
|
||||
if (DozeFactory.getHost(this) == null) {
|
||||
finish();
|
||||
return;
|
||||
}
|
||||
mPluginManager.addPluginListener(this, DozeServicePlugin.class, false /* allowMultiple */);
|
||||
mDozeMachine = mDozeFactory.assembleMachine(this);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user