Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit aeb11675 authored by Daniel Sandler's avatar Daniel Sandler Committed by Android (Google) Code Review
Browse files

Merge "Hide navigation buttons when they are DISABLEd."

parents fa0d2316 029d5877
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -38,6 +38,7 @@
            android:clipChildren="false"
            android:clipToPadding="false"
            android:id="@+id/nav_buttons"
            android:animateLayoutChanges="true"
            >

            <!-- navigation controls -->
@@ -165,6 +166,7 @@
            android:clipChildren="false"
            android:clipToPadding="false"
            android:id="@+id/nav_buttons"
            android:animateLayoutChanges="true"
            >
            
            <!-- navigation controls -->
+10 −6
Original line number Diff line number Diff line
@@ -60,7 +60,6 @@ public class NavigationBarView extends LinearLayout {
    boolean mVertical;

    boolean mHidden, mLowProfile;
    boolean mEnabled = true;

    public View getRecentsButton() {
        return mCurrentView.findViewById(R.id.recent_apps);
@@ -93,11 +92,6 @@ public class NavigationBarView extends LinearLayout {
        mVertical = false;
    }

    public void setEnabled(final boolean enable) {
        mEnabled = enable;
        mCurrentView.setVisibility(enable ? View.VISIBLE : View.INVISIBLE);
    }

    View.OnTouchListener mLightsOutListener = new View.OnTouchListener() {
        @Override
        public boolean onTouch(View v, MotionEvent ev) {
@@ -116,6 +110,16 @@ public class NavigationBarView extends LinearLayout {
        }
    };

    public void setNavigationVisibility(int disabledFlags) {
        boolean disableNavigation = ((disabledFlags & View.STATUS_BAR_DISABLE_NAVIGATION) != 0);
        boolean disableBack = ((disabledFlags & View.STATUS_BAR_DISABLE_BACK) != 0);

        getBackButton()   .setVisibility(disableBack       ? View.INVISIBLE : View.VISIBLE);
        getHomeButton()   .setVisibility(disableNavigation ? View.INVISIBLE : View.VISIBLE);
        getRecentsButton().setVisibility(disableNavigation ? View.INVISIBLE : View.VISIBLE);
        getMenuButton()   .setVisibility(disableNavigation ? View.INVISIBLE : View.VISIBLE);
    }

    public void setLowProfile(final boolean lightsOut) {
        setLowProfile(lightsOut, true);
    }
+2 −10
Original line number Diff line number Diff line
@@ -297,7 +297,7 @@ public class PhoneStatusBar extends StatusBar {
                mNavigationBarView = 
                    (NavigationBarView) View.inflate(context, R.layout.navigation_bar, null);

                mNavigationBarView.setEnabled((mDisabled & StatusBarManager.DISABLE_NAVIGATION) == 0);
                setNavigationVisibility(mDisabled);

                sb.setOnSystemUiVisibilityChangeListener(
                    new View.OnSystemUiVisibilityChangeListener() {
@@ -1129,15 +1129,7 @@ public class PhoneStatusBar extends StatusBar {
        Slog.i(TAG, "DISABLE_NAVIGATION: " + (disableNavigation ? "yes" : "no"));

        if (mNavigationBarView != null) {
            if (disableNavigation && disableBack) {
                mNavigationBarView.setEnabled(false);
            } else {
                mNavigationBarView.getBackButton().setEnabled(!disableBack);
                mNavigationBarView.getHomeButton().setEnabled(!disableNavigation);
                mNavigationBarView.getRecentsButton().setEnabled(!disableNavigation);

                mNavigationBarView.setEnabled(true);
            }
            mNavigationBarView.setNavigationVisibility(visibility);
        }

        if (disableNavigation) {
+6 −1
Original line number Diff line number Diff line
@@ -114,7 +114,7 @@ public class StatusBarTest extends TestActivity
//                v.setSystemUiVisibility(View.SYSTEM_UI_FLAG_VISIBLE);
//            }
//        },
        new Test("DISABLE_NAVIGATION") {
        new Test("systemUiVisibility: STATUS_BAR_DISABLE_NAVIGATION") {
            public void run() {
                mListView.setSystemUiVisibility(View.STATUS_BAR_DISABLE_NAVIGATION);
            }
@@ -232,6 +232,11 @@ public class StatusBarTest extends TestActivity
                mStatusBarManager.disable(StatusBarManager.DISABLE_NAVIGATION);
            }
        },
        new Test("Disable Back") {
            public void run() {
                mStatusBarManager.disable(StatusBarManager.DISABLE_BACK);
            }
        },
        new Test("Disable Clock") {
            public void run() {
                mStatusBarManager.disable(StatusBarManager.DISABLE_CLOCK);