Loading packages/SystemUI/src/com/android/systemui/navigationbar/NavigationBarControllerImpl.java +11 −1 Original line number Diff line number Diff line Loading @@ -35,6 +35,7 @@ import android.os.UserHandle; import android.provider.Settings; import android.util.Log; import android.util.SparseArray; import android.util.SparseBooleanArray; import android.view.Display; import android.view.IWindowManager; import android.view.View; Loading Loading @@ -94,6 +95,9 @@ public class NavigationBarControllerImpl implements @VisibleForTesting SparseArray<NavigationBar> mNavigationBars = new SparseArray<>(); /** Local cache for {@link IWindowManager#hasNavigationBar(int)}. */ private SparseBooleanArray mHasNavBar = new SparseBooleanArray(); // Tracks config changes that will actually recreate the nav bar private final InterestingConfigChanges mConfigChanges = new InterestingConfigChanges( ActivityInfo.CONFIG_FONT_SCALE Loading Loading @@ -221,10 +225,16 @@ public class NavigationBarControllerImpl implements } private boolean shouldCreateNavBarAndTaskBar(int displayId) { if (mHasNavBar.indexOfKey(displayId) > -1) { return mHasNavBar.get(displayId); } final IWindowManager wms = WindowManagerGlobal.getWindowManagerService(); try { return wms.hasNavigationBar(displayId); boolean hasNavigationBar = wms.hasNavigationBar(displayId); mHasNavBar.put(displayId, hasNavigationBar); return hasNavigationBar; } catch (RemoteException e) { // Cannot get wms, just return false with warning message. Log.w(TAG, "Cannot get WindowManager."); Loading Loading
packages/SystemUI/src/com/android/systemui/navigationbar/NavigationBarControllerImpl.java +11 −1 Original line number Diff line number Diff line Loading @@ -35,6 +35,7 @@ import android.os.UserHandle; import android.provider.Settings; import android.util.Log; import android.util.SparseArray; import android.util.SparseBooleanArray; import android.view.Display; import android.view.IWindowManager; import android.view.View; Loading Loading @@ -94,6 +95,9 @@ public class NavigationBarControllerImpl implements @VisibleForTesting SparseArray<NavigationBar> mNavigationBars = new SparseArray<>(); /** Local cache for {@link IWindowManager#hasNavigationBar(int)}. */ private SparseBooleanArray mHasNavBar = new SparseBooleanArray(); // Tracks config changes that will actually recreate the nav bar private final InterestingConfigChanges mConfigChanges = new InterestingConfigChanges( ActivityInfo.CONFIG_FONT_SCALE Loading Loading @@ -221,10 +225,16 @@ public class NavigationBarControllerImpl implements } private boolean shouldCreateNavBarAndTaskBar(int displayId) { if (mHasNavBar.indexOfKey(displayId) > -1) { return mHasNavBar.get(displayId); } final IWindowManager wms = WindowManagerGlobal.getWindowManagerService(); try { return wms.hasNavigationBar(displayId); boolean hasNavigationBar = wms.hasNavigationBar(displayId); mHasNavBar.put(displayId, hasNavigationBar); return hasNavigationBar; } catch (RemoteException e) { // Cannot get wms, just return false with warning message. Log.w(TAG, "Cannot get WindowManager."); Loading