15df50368eef845cef882b624a4813337afd9d5ffAga Wronska/*
25df50368eef845cef882b624a4813337afd9d5ffAga Wronska * Copyright (C) 2016 The Android Open Source Project
35df50368eef845cef882b624a4813337afd9d5ffAga Wronska *
45df50368eef845cef882b624a4813337afd9d5ffAga Wronska * Licensed under the Apache License, Version 2.0 (the "License");
55df50368eef845cef882b624a4813337afd9d5ffAga Wronska * you may not use this file except in compliance with the License.
65df50368eef845cef882b624a4813337afd9d5ffAga Wronska * You may obtain a copy of the License at
75df50368eef845cef882b624a4813337afd9d5ffAga Wronska *
85df50368eef845cef882b624a4813337afd9d5ffAga Wronska *      http://www.apache.org/licenses/LICENSE-2.0
95df50368eef845cef882b624a4813337afd9d5ffAga Wronska *
105df50368eef845cef882b624a4813337afd9d5ffAga Wronska * Unless required by applicable law or agreed to in writing, software
115df50368eef845cef882b624a4813337afd9d5ffAga Wronska * distributed under the License is distributed on an "AS IS" BASIS,
125df50368eef845cef882b624a4813337afd9d5ffAga Wronska * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
135df50368eef845cef882b624a4813337afd9d5ffAga Wronska * See the License for the specific language governing permissions and
145df50368eef845cef882b624a4813337afd9d5ffAga Wronska * limitations under the License.
155df50368eef845cef882b624a4813337afd9d5ffAga Wronska */
165df50368eef845cef882b624a4813337afd9d5ffAga Wronska
175df50368eef845cef882b624a4813337afd9d5ffAga Wronskapackage com.android.documentsui;
185df50368eef845cef882b624a4813337afd9d5ffAga Wronska
195df50368eef845cef882b624a4813337afd9d5ffAga Wronskaimport android.app.Activity;
205df50368eef845cef882b624a4813337afd9d5ffAga Wronskaimport android.content.Context;
215df50368eef845cef882b624a4813337afd9d5ffAga Wronskaimport android.graphics.Point;
225df50368eef845cef882b624a4813337afd9d5ffAga Wronskaimport android.util.TypedValue;
235df50368eef845cef882b624a4813337afd9d5ffAga Wronska
245df50368eef845cef882b624a4813337afd9d5ffAga Wronska/*
255df50368eef845cef882b624a4813337afd9d5ffAga Wronska * Convenience class for getting display related attributes
265df50368eef845cef882b624a4813337afd9d5ffAga Wronska */
275df50368eef845cef882b624a4813337afd9d5ffAga Wronskapublic final class Display {
285df50368eef845cef882b624a4813337afd9d5ffAga Wronska    /*
2978efc9f3d299fabb7764c570cf08947fc2ae930fAga Wronska     * Returns the screen width in raw pixels.
305df50368eef845cef882b624a4813337afd9d5ffAga Wronska     */
315df50368eef845cef882b624a4813337afd9d5ffAga Wronska    public static float screenWidth(Activity activity) {
325df50368eef845cef882b624a4813337afd9d5ffAga Wronska        Point size = new Point();
335df50368eef845cef882b624a4813337afd9d5ffAga Wronska        activity.getWindowManager().getDefaultDisplay().getSize(size);
345df50368eef845cef882b624a4813337afd9d5ffAga Wronska        return size.x;
355df50368eef845cef882b624a4813337afd9d5ffAga Wronska    }
365df50368eef845cef882b624a4813337afd9d5ffAga Wronska
375df50368eef845cef882b624a4813337afd9d5ffAga Wronska    /*
385df50368eef845cef882b624a4813337afd9d5ffAga Wronska     * Returns logical density of the display.
395df50368eef845cef882b624a4813337afd9d5ffAga Wronska     */
405df50368eef845cef882b624a4813337afd9d5ffAga Wronska    public static float density(Context context) {
415df50368eef845cef882b624a4813337afd9d5ffAga Wronska        return context.getResources().getDisplayMetrics().density;
425df50368eef845cef882b624a4813337afd9d5ffAga Wronska    }
435df50368eef845cef882b624a4813337afd9d5ffAga Wronska
445df50368eef845cef882b624a4813337afd9d5ffAga Wronska    /*
4578efc9f3d299fabb7764c570cf08947fc2ae930fAga Wronska     * Returns action bar height in raw pixels.
465df50368eef845cef882b624a4813337afd9d5ffAga Wronska     */
475df50368eef845cef882b624a4813337afd9d5ffAga Wronska    public static float actionBarHeight(Context context) {
4848c846368ff86a6ef2af0ca96046bbed2dac202bAga Wronska        int actionBarHeight = 0;
495df50368eef845cef882b624a4813337afd9d5ffAga Wronska        TypedValue tv = new TypedValue();
505df50368eef845cef882b624a4813337afd9d5ffAga Wronska        if (context.getTheme().resolveAttribute(android.R.attr.actionBarSize, tv, true)) {
5148c846368ff86a6ef2af0ca96046bbed2dac202bAga Wronska            actionBarHeight = TypedValue.complexToDimensionPixelSize(tv.data,
525df50368eef845cef882b624a4813337afd9d5ffAga Wronska                    context.getResources().getDisplayMetrics());
535df50368eef845cef882b624a4813337afd9d5ffAga Wronska        }
5448c846368ff86a6ef2af0ca96046bbed2dac202bAga Wronska        return actionBarHeight;
555df50368eef845cef882b624a4813337afd9d5ffAga Wronska    }
565df50368eef845cef882b624a4813337afd9d5ffAga Wronska}
57