Add support for FalsingPlugin to supply a replacement FalsingManager.
Bug: 130256776
Test: Manual
Change-Id: Icdf150e6e23d216f04a9243fe57919aa622706d5
diff --git a/packages/SystemUI/src/com/android/systemui/Dependency.java b/packages/SystemUI/src/com/android/systemui/Dependency.java
index 48a7495..7a82402 100644
--- a/packages/SystemUI/src/com/android/systemui/Dependency.java
+++ b/packages/SystemUI/src/com/android/systemui/Dependency.java
@@ -42,6 +42,7 @@
import com.android.systemui.keyguard.WakefulnessLifecycle;
import com.android.systemui.plugins.ActivityStarter;
import com.android.systemui.plugins.DarkIconDispatcher;
+import com.android.systemui.plugins.FalsingManager;
import com.android.systemui.plugins.PluginDependencyProvider;
import com.android.systemui.plugins.VolumeDialogController;
import com.android.systemui.plugins.statusbar.StatusBarStateController;
@@ -302,6 +303,7 @@
@Inject Lazy<DockManager> mDockManager;
@Inject Lazy<ChannelEditorDialogController> mChannelEditorDialogController;
@Inject Lazy<INotificationManager> mINotificationManager;
+ @Inject Lazy<FalsingManager> mFalsingManager;
@Inject
public Dependency() {
@@ -479,6 +481,7 @@
mProviders.put(DockManager.class, mDockManager::get);
mProviders.put(ChannelEditorDialogController.class, mChannelEditorDialogController::get);
mProviders.put(INotificationManager.class, mINotificationManager::get);
+ mProviders.put(FalsingManager.class, mFalsingManager::get);
// TODO(b/118592525): to support multi-display , we start to add something which is
// per-display, while others may be global. I think it's time to add
diff --git a/packages/SystemUI/src/com/android/systemui/DependencyBinder.java b/packages/SystemUI/src/com/android/systemui/DependencyBinder.java
index 53050bf..057d70c 100644
--- a/packages/SystemUI/src/com/android/systemui/DependencyBinder.java
+++ b/packages/SystemUI/src/com/android/systemui/DependencyBinder.java
@@ -18,8 +18,10 @@
import com.android.systemui.appops.AppOpsController;
import com.android.systemui.appops.AppOpsControllerImpl;
+import com.android.systemui.classifier.FalsingManagerProxy;
import com.android.systemui.plugins.ActivityStarter;
import com.android.systemui.plugins.DarkIconDispatcher;
+import com.android.systemui.plugins.FalsingManager;
import com.android.systemui.plugins.VolumeDialogController;
import com.android.systemui.plugins.statusbar.StatusBarStateController;
import com.android.systemui.power.PowerNotificationWarnings;
@@ -234,4 +236,9 @@
*/
@Binds
public abstract QSHost provideQsHost(QSTileHost controllerImpl);
+
+ /**
+ */
+ @Binds
+ public abstract FalsingManager provideFalsingmanager(FalsingManagerProxy falsingManagerImpl);
}
diff --git a/packages/SystemUI/src/com/android/systemui/SwipeHelper.java b/packages/SystemUI/src/com/android/systemui/SwipeHelper.java
index de49b92..84e0238 100644
--- a/packages/SystemUI/src/com/android/systemui/SwipeHelper.java
+++ b/packages/SystemUI/src/com/android/systemui/SwipeHelper.java
@@ -35,7 +35,7 @@
import android.view.accessibility.AccessibilityEvent;
import com.android.systemui.classifier.FalsingManagerFactory;
-import com.android.systemui.classifier.FalsingManagerFactory.FalsingManager;
+import com.android.systemui.plugins.FalsingManager;
import com.android.systemui.plugins.statusbar.NotificationMenuRowPlugin;
import com.android.systemui.statusbar.FlingAnimationUtils;
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
diff --git a/packages/SystemUI/src/com/android/systemui/classifier/FalsingManagerFactory.java b/packages/SystemUI/src/com/android/systemui/classifier/FalsingManagerFactory.java
index 0e7c65a..01921f0 100644
--- a/packages/SystemUI/src/com/android/systemui/classifier/FalsingManagerFactory.java
+++ b/packages/SystemUI/src/com/android/systemui/classifier/FalsingManagerFactory.java
@@ -17,16 +17,17 @@
package com.android.systemui.classifier;
import android.content.Context;
-import android.net.Uri;
-import android.view.MotionEvent;
-import java.io.PrintWriter;
+import com.android.systemui.Dependency;
+import com.android.systemui.plugins.FalsingManager;
/**
* When the phone is locked, listens to touch, sensor and phone events and sends them to
* DataCollector and HumanInteractionClassifier.
*
* It does not collect touch events when the bouncer shows up.
+ *
+ * TODO: FalsingManager supports dependency injection. Use it.
*/
public class FalsingManagerFactory {
private static FalsingManager sInstance = null;
@@ -35,82 +36,9 @@
public static FalsingManager getInstance(Context context) {
if (sInstance == null) {
- sInstance = new FalsingManagerImpl(context);
+ sInstance = Dependency.get(FalsingManager.class);
}
return sInstance;
}
- public interface FalsingManager {
- void onSucccessfulUnlock();
-
- void onNotificationActive();
-
- void setShowingAod(boolean showingAod);
-
- void onNotificatonStartDraggingDown();
-
- boolean isUnlockingDisabled();
-
- boolean isFalseTouch();
-
- void onNotificatonStopDraggingDown();
-
- void setNotificationExpanded();
-
- boolean isClassiferEnabled();
-
- void onQsDown();
-
- void setQsExpanded(boolean expanded);
-
- boolean shouldEnforceBouncer();
-
- void onTrackingStarted(boolean secure);
-
- void onTrackingStopped();
-
- void onLeftAffordanceOn();
-
- void onCameraOn();
-
- void onAffordanceSwipingStarted(boolean rightCorner);
-
- void onAffordanceSwipingAborted();
-
- void onStartExpandingFromPulse();
-
- void onExpansionFromPulseStopped();
-
- Uri reportRejectedTouch();
-
- void onScreenOnFromTouch();
-
- boolean isReportingEnabled();
-
- void onUnlockHintStarted();
-
- void onCameraHintStarted();
-
- void onLeftAffordanceHintStarted();
-
- void onScreenTurningOn();
-
- void onScreenOff();
-
- void onNotificatonStopDismissing();
-
- void onNotificationDismissed();
-
- void onNotificatonStartDismissing();
-
- void onNotificationDoubleTap(boolean accepted, float dx, float dy);
-
- void onBouncerShown();
-
- void onBouncerHidden();
-
- void onTouchEvent(MotionEvent ev, int width, int height);
-
- void dump(PrintWriter pw);
- }
}
diff --git a/packages/SystemUI/src/com/android/systemui/classifier/FalsingManagerImpl.java b/packages/SystemUI/src/com/android/systemui/classifier/FalsingManagerImpl.java
index a4bd244..6fb6467 100644
--- a/packages/SystemUI/src/com/android/systemui/classifier/FalsingManagerImpl.java
+++ b/packages/SystemUI/src/com/android/systemui/classifier/FalsingManagerImpl.java
@@ -39,6 +39,7 @@
import com.android.systemui.Dependency;
import com.android.systemui.UiOffloadThread;
import com.android.systemui.analytics.DataCollector;
+import com.android.systemui.plugins.FalsingManager;
import com.android.systemui.plugins.statusbar.StatusBarStateController;
import com.android.systemui.plugins.statusbar.StatusBarStateController.StateListener;
import com.android.systemui.statusbar.StatusBarState;
@@ -52,7 +53,7 @@
*
* It does not collect touch events when the bouncer shows up.
*/
-public class FalsingManagerImpl implements FalsingManagerFactory.FalsingManager {
+public class FalsingManagerImpl implements FalsingManager {
private static final String ENFORCE_BOUNCER = "falsing_manager_enforce_bouncer";
private static final int[] CLASSIFIER_SENSORS = new int[] {
diff --git a/packages/SystemUI/src/com/android/systemui/classifier/FalsingManagerProxy.java b/packages/SystemUI/src/com/android/systemui/classifier/FalsingManagerProxy.java
new file mode 100644
index 0000000..28454b0
--- /dev/null
+++ b/packages/SystemUI/src/com/android/systemui/classifier/FalsingManagerProxy.java
@@ -0,0 +1,239 @@
+/*
+ * Copyright (C) 2019 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.systemui.classifier;
+
+import android.content.Context;
+import android.net.Uri;
+import android.view.MotionEvent;
+
+import com.android.systemui.plugins.FalsingManager;
+import com.android.systemui.plugins.FalsingPlugin;
+import com.android.systemui.plugins.PluginListener;
+import com.android.systemui.shared.plugins.PluginManager;
+
+import java.io.PrintWriter;
+
+import javax.inject.Inject;
+
+/**
+ * Simple passthrough implementation of {@link FalsingManager} allowing plugins to swap in.
+ *
+ * {@link FalsingManagerImpl} is used when a Plugin is not loaded.
+ */
+public class FalsingManagerProxy implements FalsingManager {
+
+ private FalsingManager mInternalFalsingManager;
+
+ @Inject
+ FalsingManagerProxy(Context context, PluginManager pluginManager) {
+ mInternalFalsingManager = new FalsingManagerImpl(context);
+ final PluginListener<FalsingPlugin> mPluginListener = new PluginListener<FalsingPlugin>() {
+ public void onPluginConnected(FalsingPlugin plugin, Context context) {
+ FalsingManager pluginFalsingManager = plugin.getFalsingManager(context);
+ if (pluginFalsingManager != null) {
+ mInternalFalsingManager = pluginFalsingManager;
+ }
+ }
+
+ public void onPluginDisconnected(FalsingPlugin plugin) {
+ mInternalFalsingManager = new FalsingManagerImpl(context);
+ }
+ };
+
+ pluginManager.addPluginListener(mPluginListener, FalsingPlugin.class);
+ }
+
+ @Override
+ public void onSucccessfulUnlock() {
+ mInternalFalsingManager.onSucccessfulUnlock();
+ }
+
+ @Override
+ public void onNotificationActive() {
+ mInternalFalsingManager.onNotificationActive();
+ }
+
+ @Override
+ public void setShowingAod(boolean showingAod) {
+ mInternalFalsingManager.setShowingAod(showingAod);
+ }
+
+ @Override
+ public void onNotificatonStartDraggingDown() {
+ mInternalFalsingManager.onNotificatonStartDraggingDown();
+ }
+
+ @Override
+ public boolean isUnlockingDisabled() {
+ return mInternalFalsingManager.isUnlockingDisabled();
+ }
+
+ @Override
+ public boolean isFalseTouch() {
+ return mInternalFalsingManager.isFalseTouch();
+ }
+
+ @Override
+ public void onNotificatonStopDraggingDown() {
+ mInternalFalsingManager.onNotificatonStartDraggingDown();
+ }
+
+ @Override
+ public void setNotificationExpanded() {
+ mInternalFalsingManager.setNotificationExpanded();
+ }
+
+ @Override
+ public boolean isClassiferEnabled() {
+ return mInternalFalsingManager.isClassiferEnabled();
+ }
+
+ @Override
+ public void onQsDown() {
+ mInternalFalsingManager.onQsDown();
+ }
+
+ @Override
+ public void setQsExpanded(boolean expanded) {
+ mInternalFalsingManager.setQsExpanded(expanded);
+ }
+
+ @Override
+ public boolean shouldEnforceBouncer() {
+ return mInternalFalsingManager.shouldEnforceBouncer();
+ }
+
+ @Override
+ public void onTrackingStarted(boolean secure) {
+ mInternalFalsingManager.onTrackingStarted(secure);
+ }
+
+ @Override
+ public void onTrackingStopped() {
+ mInternalFalsingManager.onTrackingStopped();
+ }
+
+ @Override
+ public void onLeftAffordanceOn() {
+ mInternalFalsingManager.onLeftAffordanceOn();
+ }
+
+ @Override
+ public void onCameraOn() {
+ mInternalFalsingManager.onCameraOn();
+ }
+
+ @Override
+ public void onAffordanceSwipingStarted(boolean rightCorner) {
+ mInternalFalsingManager.onAffordanceSwipingStarted(rightCorner);
+ }
+
+ @Override
+ public void onAffordanceSwipingAborted() {
+ mInternalFalsingManager.onAffordanceSwipingAborted();
+ }
+
+ @Override
+ public void onStartExpandingFromPulse() {
+ mInternalFalsingManager.onStartExpandingFromPulse();
+ }
+
+ @Override
+ public void onExpansionFromPulseStopped() {
+ mInternalFalsingManager.onExpansionFromPulseStopped();
+ }
+
+ @Override
+ public Uri reportRejectedTouch() {
+ return mInternalFalsingManager.reportRejectedTouch();
+ }
+
+ @Override
+ public void onScreenOnFromTouch() {
+ mInternalFalsingManager.onScreenOnFromTouch();
+ }
+
+ @Override
+ public boolean isReportingEnabled() {
+ return mInternalFalsingManager.isReportingEnabled();
+ }
+
+ @Override
+ public void onUnlockHintStarted() {
+ mInternalFalsingManager.onUnlockHintStarted();
+ }
+
+ @Override
+ public void onCameraHintStarted() {
+ mInternalFalsingManager.onCameraHintStarted();
+ }
+
+ @Override
+ public void onLeftAffordanceHintStarted() {
+ mInternalFalsingManager.onLeftAffordanceHintStarted();
+ }
+
+ @Override
+ public void onScreenTurningOn() {
+ mInternalFalsingManager.onScreenTurningOn();
+ }
+
+ @Override
+ public void onScreenOff() {
+ mInternalFalsingManager.onScreenOff();
+ }
+
+ @Override
+ public void onNotificatonStopDismissing() {
+ mInternalFalsingManager.onNotificatonStopDismissing();
+ }
+
+ @Override
+ public void onNotificationDismissed() {
+ mInternalFalsingManager.onNotificationDismissed();
+ }
+
+ @Override
+ public void onNotificatonStartDismissing() {
+ mInternalFalsingManager.onNotificatonStartDismissing();
+ }
+
+ @Override
+ public void onNotificationDoubleTap(boolean accepted, float dx, float dy) {
+ mInternalFalsingManager.onNotificationDoubleTap(accepted, dx, dy);
+ }
+
+ @Override
+ public void onBouncerShown() {
+ mInternalFalsingManager.onBouncerShown();
+ }
+
+ @Override
+ public void onBouncerHidden() {
+ mInternalFalsingManager.onBouncerHidden();
+ }
+
+ @Override
+ public void onTouchEvent(MotionEvent ev, int width, int height) {
+ mInternalFalsingManager.onTouchEvent(ev, width, height);
+ }
+
+ @Override
+ public void dump(PrintWriter pw) {
+ mInternalFalsingManager.dump(pw);
+ }
+}
diff --git a/packages/SystemUI/src/com/android/systemui/doze/DozeFalsingManagerAdapter.java b/packages/SystemUI/src/com/android/systemui/doze/DozeFalsingManagerAdapter.java
index f6df9062..250308d 100644
--- a/packages/SystemUI/src/com/android/systemui/doze/DozeFalsingManagerAdapter.java
+++ b/packages/SystemUI/src/com/android/systemui/doze/DozeFalsingManagerAdapter.java
@@ -16,7 +16,7 @@
package com.android.systemui.doze;
-import com.android.systemui.classifier.FalsingManagerFactory.FalsingManager;
+import com.android.systemui.plugins.FalsingManager;
/**
* Notifies FalsingManager of whether or not AOD is showing.
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/DragDownHelper.java b/packages/SystemUI/src/com/android/systemui/statusbar/DragDownHelper.java
index 0dc80bf..514a2ae 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/DragDownHelper.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/DragDownHelper.java
@@ -30,7 +30,7 @@
import com.android.systemui.Interpolators;
import com.android.systemui.R;
import com.android.systemui.classifier.FalsingManagerFactory;
-import com.android.systemui.classifier.FalsingManagerFactory.FalsingManager;
+import com.android.systemui.plugins.FalsingManager;
import com.android.systemui.statusbar.notification.row.ExpandableView;
/**
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/PulseExpansionHandler.kt b/packages/SystemUI/src/com/android/systemui/statusbar/PulseExpansionHandler.kt
index 952f30f..bf99474 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/PulseExpansionHandler.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/PulseExpansionHandler.kt
@@ -31,7 +31,7 @@
import com.android.systemui.Interpolators
import com.android.systemui.R
import com.android.systemui.classifier.FalsingManagerFactory
-import com.android.systemui.classifier.FalsingManagerFactory.FalsingManager
+import com.android.systemui.plugins.FalsingManager
import com.android.systemui.statusbar.notification.NotificationWakeUpCoordinator
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow
import com.android.systemui.statusbar.notification.row.ExpandableView
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ActivatableNotificationView.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ActivatableNotificationView.java
index 53d6efb..4f562a5 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ActivatableNotificationView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ActivatableNotificationView.java
@@ -36,7 +36,7 @@
import com.android.systemui.Interpolators;
import com.android.systemui.R;
import com.android.systemui.classifier.FalsingManagerFactory;
-import com.android.systemui.classifier.FalsingManagerFactory.FalsingManager;
+import com.android.systemui.plugins.FalsingManager;
import com.android.systemui.statusbar.NotificationShelf;
import com.android.systemui.statusbar.notification.FakeShadowView;
import com.android.systemui.statusbar.notification.NotificationUtils;
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRow.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRow.java
index b3ca88f..368447d 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRow.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRow.java
@@ -77,7 +77,7 @@
import com.android.systemui.Interpolators;
import com.android.systemui.R;
import com.android.systemui.classifier.FalsingManagerFactory;
-import com.android.systemui.classifier.FalsingManagerFactory.FalsingManager;
+import com.android.systemui.plugins.FalsingManager;
import com.android.systemui.plugins.PluginListener;
import com.android.systemui.plugins.statusbar.NotificationMenuRowPlugin;
import com.android.systemui.plugins.statusbar.NotificationMenuRowPlugin.MenuItem;
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java
index 5bd6cab..de187f1 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java
@@ -88,9 +88,9 @@
import com.android.systemui.R;
import com.android.systemui.SwipeHelper;
import com.android.systemui.classifier.FalsingManagerFactory;
-import com.android.systemui.classifier.FalsingManagerFactory.FalsingManager;
import com.android.systemui.colorextraction.SysuiColorExtractor;
import com.android.systemui.plugins.ActivityStarter;
+import com.android.systemui.plugins.FalsingManager;
import com.android.systemui.plugins.statusbar.NotificationMenuRowPlugin;
import com.android.systemui.plugins.statusbar.NotificationMenuRowPlugin.MenuItem;
import com.android.systemui.plugins.statusbar.NotificationMenuRowPlugin.OnMenuEventListener;
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardAffordanceHelper.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardAffordanceHelper.java
index dd70321..4691a31 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardAffordanceHelper.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardAffordanceHelper.java
@@ -28,7 +28,7 @@
import com.android.systemui.Interpolators;
import com.android.systemui.R;
import com.android.systemui.classifier.FalsingManagerFactory;
-import com.android.systemui.classifier.FalsingManagerFactory.FalsingManager;
+import com.android.systemui.plugins.FalsingManager;
import com.android.systemui.statusbar.FlingAnimationUtils;
import com.android.systemui.statusbar.KeyguardAffordanceView;
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBouncer.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBouncer.java
index 1a43eec..bbae62e 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBouncer.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBouncer.java
@@ -43,8 +43,8 @@
import com.android.keyguard.R;
import com.android.keyguard.ViewMediatorCallback;
import com.android.systemui.DejankUtils;
-import com.android.systemui.classifier.FalsingManagerFactory.FalsingManager;
import com.android.systemui.keyguard.DismissCallbackRegistry;
+import com.android.systemui.plugins.FalsingManager;
import java.io.PrintWriter;
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java
index 168813a..da9f244 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java
@@ -61,9 +61,9 @@
import com.android.systemui.Interpolators;
import com.android.systemui.R;
import com.android.systemui.classifier.FalsingManagerFactory;
-import com.android.systemui.classifier.FalsingManagerFactory.FalsingManager;
import com.android.systemui.fragments.FragmentHostManager;
import com.android.systemui.fragments.FragmentHostManager.FragmentListener;
+import com.android.systemui.plugins.FalsingManager;
import com.android.systemui.plugins.qs.QS;
import com.android.systemui.plugins.statusbar.StatusBarStateController;
import com.android.systemui.plugins.statusbar.StatusBarStateController.StateListener;
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelView.java
index 38c5f2e..c6bbf7b 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelView.java
@@ -43,8 +43,8 @@
import com.android.systemui.Interpolators;
import com.android.systemui.R;
import com.android.systemui.classifier.FalsingManagerFactory;
-import com.android.systemui.classifier.FalsingManagerFactory.FalsingManager;
import com.android.systemui.doze.DozeLog;
+import com.android.systemui.plugins.FalsingManager;
import com.android.systemui.plugins.statusbar.StatusBarStateController;
import com.android.systemui.statusbar.FlingAnimationUtils;
import com.android.systemui.statusbar.StatusBarState;
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java
index 37cfc69..b4b4235 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java
@@ -149,7 +149,6 @@
import com.android.systemui.charging.WirelessChargingAnimation;
import com.android.systemui.classifier.FalsingLog;
import com.android.systemui.classifier.FalsingManagerFactory;
-import com.android.systemui.classifier.FalsingManagerFactory.FalsingManager;
import com.android.systemui.colorextraction.SysuiColorExtractor;
import com.android.systemui.doze.DozeHost;
import com.android.systemui.doze.DozeLog;
@@ -162,6 +161,7 @@
import com.android.systemui.keyguard.WakefulnessLifecycle;
import com.android.systemui.plugins.ActivityStarter;
import com.android.systemui.plugins.DarkIconDispatcher;
+import com.android.systemui.plugins.FalsingManager;
import com.android.systemui.plugins.PluginDependencyProvider;
import com.android.systemui.plugins.qs.QS;
import com.android.systemui.plugins.statusbar.NotificationSwipeActionHelper.SnoozeOption;
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarWindowView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarWindowView.java
index 6185b4c..9f538bb 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarWindowView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarWindowView.java
@@ -63,7 +63,7 @@
import com.android.systemui.ExpandHelper;
import com.android.systemui.R;
import com.android.systemui.classifier.FalsingManagerFactory;
-import com.android.systemui.classifier.FalsingManagerFactory.FalsingManager;
+import com.android.systemui.plugins.FalsingManager;
import com.android.systemui.plugins.statusbar.StatusBarStateController;
import com.android.systemui.statusbar.DragDownHelper;
import com.android.systemui.statusbar.StatusBarState;