Implemented Dark Mode on Autofill UI.
Test: manual verification using modified sample app
Test: atest CtsAutoFillServiceTestCases # to make sure it didn't break anything
Bug: 116457731
Fixes: 116180485
Change-Id: I0b7d5415e6b5b8874e27289bee4c8218d63dba13
diff --git a/services/core/java/com/android/server/UiModeManagerService.java b/services/core/java/com/android/server/UiModeManagerService.java
index f436286..5538e72 100644
--- a/services/core/java/com/android/server/UiModeManagerService.java
+++ b/services/core/java/com/android/server/UiModeManagerService.java
@@ -108,6 +108,8 @@
private PowerManager.WakeLock mWakeLock;
+ private final LocalService mLocalService = new LocalService();
+
public UiModeManagerService(Context context) {
super(context);
}
@@ -242,6 +244,7 @@
}, TAG + ".onStart");
publishBinderService(Context.UI_MODE_SERVICE, mService);
+ publishLocalService(UiModeManagerInternal.class, mLocalService);
}
private final IUiModeManager.Stub mService = new IUiModeManager.Stub() {
@@ -367,7 +370,8 @@
pw.println("Current UI Mode Service state:");
pw.print(" mDockState="); pw.print(mDockState);
pw.print(" mLastBroadcastState="); pw.println(mLastBroadcastState);
- pw.print(" mNightMode="); pw.print(mNightMode);
+ pw.print(" mNightMode="); pw.print(mNightMode); pw.print(" (");
+ pw.print(Shell.nightModeToStr(mNightMode)); pw.print(") ");
pw.print(" mNightModeLocked="); pw.print(mNightModeLocked);
pw.print(" mCarModeEnabled="); pw.print(mCarModeEnabled);
pw.print(" mComputedNightMode="); pw.print(mComputedNightMode);
@@ -839,4 +843,22 @@
}
}
}
+
+ public final class LocalService extends UiModeManagerInternal {
+
+ @Override
+ public boolean isNightMode() {
+ synchronized (mLock) {
+ final boolean isIt = (mConfiguration.uiMode & Configuration.UI_MODE_NIGHT_YES) != 0;
+ if (LOG) {
+ Slog.d(TAG,
+ "LocalService.isNightMode(): mNightMode=" + mNightMode
+ + "; mComputedNightMode=" + mComputedNightMode
+ + "; uiMode=" + mConfiguration.uiMode
+ + "; isIt=" + isIt);
+ }
+ return isIt;
+ }
+ }
+ }
}