From 099fa87f6d4ff908e5385074ff58ea3615168352 Mon Sep 17 00:00:00 2001 From: rleix Date: Tue, 14 Aug 2018 10:57:39 +0800 Subject: [PATCH] Update navigation bar upon change of display density Restart the navigation bar upon change of density or font scale, then the facet buttons of navigation bar will be scaled properly. Test: Settings->Display->Advanced->Display size->Largest bug: 122563094 Change-Id: I6d2d7ac4a801fac6f30bb78acee4c00ec2c4e507 Merged-In: I6d2d7ac4a801fac6f30bb78acee4c00ec2c4e507 Signed-off-by: Lei,RayX Signed-off-by: Guobin Zhang Exempt-from-Owner-Approval: Car specific file --- .../src/com/android/systemui/statusbar/car/CarStatusBar.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/car/CarStatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/car/CarStatusBar.java index be46d2c7e4aed..be7403a1ab87d 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/car/CarStatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/car/CarStatusBar.java @@ -99,7 +99,6 @@ public class CarStatusBar extends StatusBar implements Log.d(TAG, "Connecting to HVAC service"); Dependency.get(HvacController.class).connectToCarService(); } - mCarFacetButtonController = Dependency.get(CarFacetButtonController.class); mDeviceProvisionedController = Dependency.get(DeviceProvisionedController.class); mDeviceIsProvisioned = mDeviceProvisionedController.isDeviceProvisioned(); if (!mDeviceIsProvisioned) { @@ -117,7 +116,7 @@ public class CarStatusBar extends StatusBar implements /** * Remove all content from navbars and rebuild them. Used to allow for different nav bars - * before and after the device is provisioned + * before and after the device is provisioned. Also for change of density and font size. */ private void restartNavBars() { mCarFacetButtonController.removeAll(); @@ -216,6 +215,7 @@ public class CarStatusBar extends StatusBar implements protected void makeStatusBarView() { super.makeStatusBarView(); + mCarFacetButtonController = Dependency.get(CarFacetButtonController.class); mNotificationPanelBackground = getDefaultWallpaper(); mScrimController.setScrimBehindDrawable(mNotificationPanelBackground); @@ -513,6 +513,7 @@ public class CarStatusBar extends StatusBar implements @Override public void onDensityOrFontScaleChanged() { super.onDensityOrFontScaleChanged(); + restartNavBars(); // Need to update the background on density changed in case the change was due to night // mode. mNotificationPanelBackground = getDefaultWallpaper();