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

Commit 8a4cc649 authored by Aga Wronska's avatar Aga Wronska Committed by Android (Google) Code Review
Browse files

Merge "Make status bar translucent. Make drawer appera below status bar." into nyc-dev

parents ea8a95d9 d1bc6b36
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -36,6 +36,8 @@
        <item name="android:windowActionBar">false</item>
        <item name="android:windowActionModeOverlay">true</item>
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowTranslucentStatus">true</item>
        <item name="android:fitsSystemWindows">false</item>

        <item name="android:windowSoftInputMode">stateUnspecified|adjustUnspecified</item>
    </style>
+1 −0
Original line number Diff line number Diff line
@@ -127,6 +127,7 @@ public abstract class BaseActivity extends Activity
        mSearchManager = new SearchViewManager(this, icicle);

        DocumentsToolbar toolbar = (DocumentsToolbar) findViewById(R.id.toolbar);
        Display.adjustToolbar(toolbar, this);
        setActionBar(toolbar);
        mNavigator = new NavigationView(
                mDrawer,
+36 −5
Original line number Diff line number Diff line
@@ -20,13 +20,15 @@ import android.app.Activity;
import android.content.Context;
import android.graphics.Point;
import android.util.TypedValue;
import android.view.WindowManager;
import android.widget.Toolbar;

/*
 * Convenience class for getting display related attributes
 */
public final class Display {
    /*
     * Returns the screen width in pixels.
     * Returns the screen width in raw pixels.
     */
    public static float screenWidth(Activity activity) {
        Point size = new Point();
@@ -42,15 +44,44 @@ public final class Display {
    }

    /*
     * Returns action bar height in pixels.
     * Returns action bar height in raw pixels.
     */
    public static float actionBarHeight(Context context) {
        int actionBarHeight = 0;
        int height = 0;
        TypedValue tv = new TypedValue();
        if (context.getTheme().resolveAttribute(android.R.attr.actionBarSize, tv, true)) {
            actionBarHeight = TypedValue.complexToDimensionPixelSize(tv.data,
            height = TypedValue.complexToDimensionPixelSize(tv.data,
                    context.getResources().getDisplayMetrics());
        }
        return actionBarHeight;
        return height;
    }

    /*
     * Returns status bar height in raw pixels.
     */
    private static int statusBarHeight(Context context) {
        int height = 0;
        int resourceId = context.getResources().getIdentifier("status_bar_height", "dimen",
                "android");
        if (resourceId > 0) {
            height = context.getResources().getDimensionPixelSize(resourceId);
        }
        return height;
    }

    /*
     * Adjusts toolbar for the layout with translucent status bar. Increases the
     * height of the toolbar and adds padding at the top to accommodate status bar visible above
     * toolbar.
     */
    public static void adjustToolbar(Toolbar toolbar, Activity activity) {
        if ((activity.getWindow().getAttributes().flags
                & WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS) != 0) {
            int statusBarHeight = Display.statusBarHeight(activity);
            toolbar.getLayoutParams().height = (int) (Display.actionBarHeight(activity)
                    + statusBarHeight);
            toolbar.setPadding(toolbar.getPaddingLeft(), statusBarHeight, toolbar.getPaddingRight(),
                    toolbar.getPaddingBottom());
        }
    }
}
+1 −1
Original line number Diff line number Diff line
@@ -55,7 +55,7 @@ abstract class DrawerController implements DrawerListener {

        View drawer = activity.findViewById(R.id.drawer_roots);
        Toolbar toolbar = (Toolbar) activity.findViewById(R.id.roots_toolbar);

        Display.adjustToolbar(toolbar, activity);
        drawer.getLayoutParams().width = calculateDrawerWidth(activity);

        ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(