Disable recents button in carmode inside of NavigationBarView,

instead of doing it from PhoneWindowManager, which doesnt maintain
the mUiMode properly and in sync with that in the UiModeManager.
In addition the re-layout / modifications in the content of the
navigation bar in care mode are better consolidated in one place
instead of many places.

Bug: 27313462

Change-Id: I1bdc2324f649f19f879b71c695381587561498e9
This commit is contained in:
Sriram Viswanathan
2016-03-22 13:11:50 -07:00
parent f2d2aab3f1
commit 469caae9ea
2 changed files with 4 additions and 5 deletions

View File

@@ -372,7 +372,10 @@ public class NavigationBarView extends LinearLayout {
mDisabledFlags = disabledFlags;
final boolean disableHome = ((disabledFlags & View.STATUS_BAR_DISABLE_HOME) != 0);
boolean disableRecent = ((disabledFlags & View.STATUS_BAR_DISABLE_RECENT) != 0);
// Disable recents always in car mode.
boolean disableRecent = (
mCarMode || (disabledFlags & View.STATUS_BAR_DISABLE_RECENT) != 0);
final boolean disableBack = ((disabledFlags & View.STATUS_BAR_DISABLE_BACK) != 0)
&& ((mNavigationIconHints & StatusBarManager.NAVIGATION_HINT_BACK_ALT) == 0);
final boolean disableSearch = ((disabledFlags & View.STATUS_BAR_DISABLE_SEARCH) != 0);

View File

@@ -7190,10 +7190,6 @@ public class PhoneWindowManager implements WindowManagerPolicy {
tmpVisibility &= ~PolicyControl.adjustClearableFlags(win, View.SYSTEM_UI_CLEARABLE_FLAGS);
}
if (mUiMode == Configuration.UI_MODE_TYPE_CAR) {
tmpVisibility |= StatusBarManager.DISABLE_RECENT;
}
final int fullscreenVisibility = updateLightStatusBarLw(0 /* vis */,
mTopFullscreenOpaqueWindowState, mTopFullscreenOpaqueOrDimmingWindowState);
final int dockedVisibility = updateLightStatusBarLw(0 /* vis */,