Loading packages/SystemUI/src/com/android/systemui/classifier/FalsingManagerProxy.java +6 −6 Original line number Diff line number Diff line Loading @@ -22,7 +22,6 @@ import android.content.Context; import android.hardware.SensorManager; import android.net.Uri; import android.provider.DeviceConfig; import android.util.DisplayMetrics; import android.view.MotionEvent; import androidx.annotation.NonNull; Loading Loading @@ -62,7 +61,7 @@ public class FalsingManagerProxy implements FalsingManager, Dumpable { private static final String PROXIMITY_SENSOR_TAG = "FalsingManager"; private final ProximitySensor mProximitySensor; private final DisplayMetrics mDisplayMetrics; private final FalsingDataProvider mFalsingDataProvider; private FalsingManager mInternalFalsingManager; private DeviceConfig.OnPropertiesChangedListener mDeviceConfigListener; private final DeviceConfigProxy mDeviceConfig; Loading @@ -74,18 +73,19 @@ public class FalsingManagerProxy implements FalsingManager, Dumpable { @Inject FalsingManagerProxy(Context context, PluginManager pluginManager, @Main Executor executor, DisplayMetrics displayMetrics, ProximitySensor proximitySensor, ProximitySensor proximitySensor, DeviceConfigProxy deviceConfig, DockManager dockManager, KeyguardUpdateMonitor keyguardUpdateMonitor, DumpManager dumpManager, @UiBackground Executor uiBgExecutor, StatusBarStateController statusBarStateController) { mDisplayMetrics = displayMetrics; StatusBarStateController statusBarStateController, FalsingDataProvider falsingDataProvider) { mProximitySensor = proximitySensor; mDockManager = dockManager; mKeyguardUpdateMonitor = keyguardUpdateMonitor; mUiBgExecutor = uiBgExecutor; mStatusBarStateController = statusBarStateController; mFalsingDataProvider = falsingDataProvider; mProximitySensor.setTag(PROXIMITY_SENSOR_TAG); mProximitySensor.setDelay(SensorManager.SENSOR_DELAY_GAME); mDeviceConfig = deviceConfig; Loading Loading @@ -143,7 +143,7 @@ public class FalsingManagerProxy implements FalsingManager, Dumpable { mInternalFalsingManager = new FalsingManagerImpl(context, mUiBgExecutor); } else { mInternalFalsingManager = new BrightLineFalsingManager( new FalsingDataProvider(mDisplayMetrics), mFalsingDataProvider, mKeyguardUpdateMonitor, mProximitySensor, mDeviceConfig, Loading packages/SystemUI/src/com/android/systemui/classifier/brightline/BrightLineFalsingManager.java +3 −1 Original line number Diff line number Diff line Loading @@ -132,8 +132,10 @@ public class BrightLineFalsingManager implements FalsingManager { } private void registerSensors() { if (!mDataProvider.isWirelessCharging()) { mProximitySensor.register(mSensorEventListener); } } private void unregisterSensors() { mProximitySensor.unregister(mSensorEventListener); Loading packages/SystemUI/src/com/android/systemui/classifier/brightline/FalsingDataProvider.java +12 −1 Original line number Diff line number Diff line Loading @@ -22,10 +22,13 @@ import android.view.MotionEvent.PointerCoords; import android.view.MotionEvent.PointerProperties; import com.android.systemui.classifier.Classifier; import com.android.systemui.statusbar.policy.BatteryController; import java.util.ArrayList; import java.util.List; import javax.inject.Inject; /** * Acts as a cache and utility class for FalsingClassifiers. */ Loading @@ -36,6 +39,7 @@ public class FalsingDataProvider { private final int mWidthPixels; private final int mHeightPixels; private final BatteryController mBatteryController; private final float mXdpi; private final float mYdpi; Loading @@ -50,11 +54,13 @@ public class FalsingDataProvider { private MotionEvent mFirstRecentMotionEvent; private MotionEvent mLastMotionEvent; public FalsingDataProvider(DisplayMetrics displayMetrics) { @Inject public FalsingDataProvider(DisplayMetrics displayMetrics, BatteryController batteryController) { mXdpi = displayMetrics.xdpi; mYdpi = displayMetrics.ydpi; mWidthPixels = displayMetrics.widthPixels; mHeightPixels = displayMetrics.heightPixels; mBatteryController = batteryController; FalsingClassifier.logInfo("xdpi, ydpi: " + getXdpi() + ", " + getYdpi()); FalsingClassifier.logInfo("width, height: " + getWidthPixels() + ", " + getHeightPixels()); Loading Loading @@ -177,6 +183,11 @@ public class FalsingDataProvider { return mLastMotionEvent.getY() < mFirstRecentMotionEvent.getY(); } /** Returns true if phone is being charged without a cable. */ boolean isWirelessCharging() { return mBatteryController.isWirelessCharging(); } private void recalculateData() { if (!mDirty) { return; Loading packages/SystemUI/src/com/android/systemui/doze/DozeTriggers.java +4 −1 Original line number Diff line number Diff line Loading @@ -399,10 +399,13 @@ public class DozeTriggers implements DozeMachine.Part { break; case DOZE_PULSING: case DOZE_PULSING_BRIGHT: case DOZE_AOD_DOCKED: mWantProx = true; mWantTouchScreenSensors = false; break; case DOZE_AOD_DOCKED: mWantProx = false; mWantTouchScreenSensors = false; break; case DOZE_PULSE_DONE: mDozeSensors.requestTemporaryDisable(); // A pulse will temporarily disable sensors that require a touch screen. Loading packages/SystemUI/tests/src/com/android/systemui/SysuiTestCase.java +4 −0 Original line number Diff line number Diff line Loading @@ -140,6 +140,10 @@ public abstract class SysuiTestCase { return null; } protected FakeBroadcastDispatcher getFakeBroadcastDispatcher() { return mFakeBroadcastDispatcher; } public SysuiTestableContext getContext() { return mContext; } Loading Loading
packages/SystemUI/src/com/android/systemui/classifier/FalsingManagerProxy.java +6 −6 Original line number Diff line number Diff line Loading @@ -22,7 +22,6 @@ import android.content.Context; import android.hardware.SensorManager; import android.net.Uri; import android.provider.DeviceConfig; import android.util.DisplayMetrics; import android.view.MotionEvent; import androidx.annotation.NonNull; Loading Loading @@ -62,7 +61,7 @@ public class FalsingManagerProxy implements FalsingManager, Dumpable { private static final String PROXIMITY_SENSOR_TAG = "FalsingManager"; private final ProximitySensor mProximitySensor; private final DisplayMetrics mDisplayMetrics; private final FalsingDataProvider mFalsingDataProvider; private FalsingManager mInternalFalsingManager; private DeviceConfig.OnPropertiesChangedListener mDeviceConfigListener; private final DeviceConfigProxy mDeviceConfig; Loading @@ -74,18 +73,19 @@ public class FalsingManagerProxy implements FalsingManager, Dumpable { @Inject FalsingManagerProxy(Context context, PluginManager pluginManager, @Main Executor executor, DisplayMetrics displayMetrics, ProximitySensor proximitySensor, ProximitySensor proximitySensor, DeviceConfigProxy deviceConfig, DockManager dockManager, KeyguardUpdateMonitor keyguardUpdateMonitor, DumpManager dumpManager, @UiBackground Executor uiBgExecutor, StatusBarStateController statusBarStateController) { mDisplayMetrics = displayMetrics; StatusBarStateController statusBarStateController, FalsingDataProvider falsingDataProvider) { mProximitySensor = proximitySensor; mDockManager = dockManager; mKeyguardUpdateMonitor = keyguardUpdateMonitor; mUiBgExecutor = uiBgExecutor; mStatusBarStateController = statusBarStateController; mFalsingDataProvider = falsingDataProvider; mProximitySensor.setTag(PROXIMITY_SENSOR_TAG); mProximitySensor.setDelay(SensorManager.SENSOR_DELAY_GAME); mDeviceConfig = deviceConfig; Loading Loading @@ -143,7 +143,7 @@ public class FalsingManagerProxy implements FalsingManager, Dumpable { mInternalFalsingManager = new FalsingManagerImpl(context, mUiBgExecutor); } else { mInternalFalsingManager = new BrightLineFalsingManager( new FalsingDataProvider(mDisplayMetrics), mFalsingDataProvider, mKeyguardUpdateMonitor, mProximitySensor, mDeviceConfig, Loading
packages/SystemUI/src/com/android/systemui/classifier/brightline/BrightLineFalsingManager.java +3 −1 Original line number Diff line number Diff line Loading @@ -132,8 +132,10 @@ public class BrightLineFalsingManager implements FalsingManager { } private void registerSensors() { if (!mDataProvider.isWirelessCharging()) { mProximitySensor.register(mSensorEventListener); } } private void unregisterSensors() { mProximitySensor.unregister(mSensorEventListener); Loading
packages/SystemUI/src/com/android/systemui/classifier/brightline/FalsingDataProvider.java +12 −1 Original line number Diff line number Diff line Loading @@ -22,10 +22,13 @@ import android.view.MotionEvent.PointerCoords; import android.view.MotionEvent.PointerProperties; import com.android.systemui.classifier.Classifier; import com.android.systemui.statusbar.policy.BatteryController; import java.util.ArrayList; import java.util.List; import javax.inject.Inject; /** * Acts as a cache and utility class for FalsingClassifiers. */ Loading @@ -36,6 +39,7 @@ public class FalsingDataProvider { private final int mWidthPixels; private final int mHeightPixels; private final BatteryController mBatteryController; private final float mXdpi; private final float mYdpi; Loading @@ -50,11 +54,13 @@ public class FalsingDataProvider { private MotionEvent mFirstRecentMotionEvent; private MotionEvent mLastMotionEvent; public FalsingDataProvider(DisplayMetrics displayMetrics) { @Inject public FalsingDataProvider(DisplayMetrics displayMetrics, BatteryController batteryController) { mXdpi = displayMetrics.xdpi; mYdpi = displayMetrics.ydpi; mWidthPixels = displayMetrics.widthPixels; mHeightPixels = displayMetrics.heightPixels; mBatteryController = batteryController; FalsingClassifier.logInfo("xdpi, ydpi: " + getXdpi() + ", " + getYdpi()); FalsingClassifier.logInfo("width, height: " + getWidthPixels() + ", " + getHeightPixels()); Loading Loading @@ -177,6 +183,11 @@ public class FalsingDataProvider { return mLastMotionEvent.getY() < mFirstRecentMotionEvent.getY(); } /** Returns true if phone is being charged without a cable. */ boolean isWirelessCharging() { return mBatteryController.isWirelessCharging(); } private void recalculateData() { if (!mDirty) { return; Loading
packages/SystemUI/src/com/android/systemui/doze/DozeTriggers.java +4 −1 Original line number Diff line number Diff line Loading @@ -399,10 +399,13 @@ public class DozeTriggers implements DozeMachine.Part { break; case DOZE_PULSING: case DOZE_PULSING_BRIGHT: case DOZE_AOD_DOCKED: mWantProx = true; mWantTouchScreenSensors = false; break; case DOZE_AOD_DOCKED: mWantProx = false; mWantTouchScreenSensors = false; break; case DOZE_PULSE_DONE: mDozeSensors.requestTemporaryDisable(); // A pulse will temporarily disable sensors that require a touch screen. Loading
packages/SystemUI/tests/src/com/android/systemui/SysuiTestCase.java +4 −0 Original line number Diff line number Diff line Loading @@ -140,6 +140,10 @@ public abstract class SysuiTestCase { return null; } protected FakeBroadcastDispatcher getFakeBroadcastDispatcher() { return mFakeBroadcastDispatcher; } public SysuiTestableContext getContext() { return mContext; } Loading