SystemBarTintManager$SystemBarConfig.smali

.class public Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;
.super Ljava/lang/Object;
.source "SystemBarTintManager.java"


# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
    value = Lcom/baidu/sapi2/views/SystemBarTintManager;
.end annotation

.annotation system Ldalvik/annotation/InnerClass;
    accessFlags = 0x9
    name = "SystemBarConfig"
.end annotation


# static fields
.field private static final NAV_BAR_HEIGHT_LANDSCAPE_RES_NAME:Ljava/lang/String; = "navigation_bar_height_landscape"

.field private static final NAV_BAR_HEIGHT_RES_NAME:Ljava/lang/String; = "navigation_bar_height"

.field private static final NAV_BAR_WIDTH_RES_NAME:Ljava/lang/String; = "navigation_bar_width"

.field private static final SHOW_NAV_BAR_RES_NAME:Ljava/lang/String; = "config_showNavigationBar"

.field private static final STATUS_BAR_HEIGHT_RES_NAME:Ljava/lang/String; = "status_bar_height"


# instance fields
.field private final mHasNavigationBar:Z

.field private final mInPortrait:Z

.field private final mNavigationBarHeight:I

.field private final mNavigationBarWidth:I

.field private final mSmallestWidthDp:F

.field private final mStatusBarHeight:I


# direct methods
.method private constructor <init>(Landroid/app/Activity;ZZ)V
    .registers 8

    .prologue
    const/4 v2, 0x0

    const/4 v1, 0x1

    .line 236
    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    .line 237
    invoke-virtual {p1}, Landroid/app/Activity;->getResources()Landroid/content/res/Resources;

    move-result-object v3

    .line 238
    invoke-virtual {v3}, Landroid/content/res/Resources;->getConfiguration()Landroid/content/res/Configuration;

    move-result-object v0

    iget v0, v0, Landroid/content/res/Configuration;->orientation:I

    if-ne v0, v1, :cond_35

    move v0, v1

    :goto_12
    iput-boolean v0, p0, Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;->mInPortrait:Z

    .line 239
    invoke-direct {p0, p1}, Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;->getSmallestWidthDp(Landroid/app/Activity;)F

    move-result v0

    iput v0, p0, Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;->mSmallestWidthDp:F

    .line 240
    const-string v0, "status_bar_height"

    invoke-direct {p0, v3, v0}, Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;->getInternalDimensionSize(Landroid/content/res/Resources;Ljava/lang/String;)I

    move-result v0

    iput v0, p0, Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;->mStatusBarHeight:I

    .line 241
    invoke-direct {p0, p1}, Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;->getNavigationBarHeight(Landroid/content/Context;)I

    move-result v0

    iput v0, p0, Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;->mNavigationBarHeight:I

    .line 242
    invoke-direct {p0, p1}, Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;->getNavigationBarWidth(Landroid/content/Context;)I

    move-result v0

    iput v0, p0, Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;->mNavigationBarWidth:I

    .line 243
    iget v0, p0, Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;->mNavigationBarHeight:I

    if-lez v0, :cond_37

    :goto_32
    iput-boolean v1, p0, Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;->mHasNavigationBar:Z

    .line 244
    return-void

    :cond_35
    move v0, v2

    .line 238
    goto :goto_12

    :cond_37
    move v1, v2

    .line 243
    goto :goto_32
.end method

.method synthetic constructor <init>(Landroid/app/Activity;ZZLcom/baidu/sapi2/views/SystemBarTintManager$1;)V
    .registers 5

    .prologue
    .line 221
    invoke-direct {p0, p1, p2, p3}, Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;-><init>(Landroid/app/Activity;ZZ)V

    return-void
.end method

.method private getInternalDimensionSize(Landroid/content/res/Resources;Ljava/lang/String;)I
    .registers 6

    .prologue
    .line 315
    const/4 v0, 0x0

    .line 316
    const-string v1, "dimen"

    const-string v2, "android"

    invoke-virtual {p1, p2, v1, v2}, Landroid/content/res/Resources;->getIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I

    move-result v1

    .line 317
    if-lez v1, :cond_f

    .line 318
    invoke-virtual {p1, v1}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I

    move-result v0

    .line 320
    :cond_f
    return v0
.end method

.method private getNavigationBarHeight(Landroid/content/Context;)I
    .registers 6
    .annotation build Landroid/annotation/TargetApi;
        value = 0xe
    .end annotation

    .prologue
    .line 248
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v1

    .line 249
    const/4 v0, 0x0

    .line 250
    sget v2, Landroid/os/Build$VERSION;->SDK_INT:I

    const/16 v3, 0xe

    if-lt v2, v3, :cond_1b

    .line 251
    invoke-direct {p0, p1}, Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;->hasNavBar(Landroid/content/Context;)Z

    move-result v2

    if-eqz v2, :cond_1b

    .line 253
    iget-boolean v0, p0, Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;->mInPortrait:Z

    if-eqz v0, :cond_1c

    .line 254
    const-string v0, "navigation_bar_height"

    .line 258
    :goto_17
    invoke-direct {p0, v1, v0}, Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;->getInternalDimensionSize(Landroid/content/res/Resources;Ljava/lang/String;)I

    move-result v0

    .line 261
    :cond_1b
    return v0

    .line 256
    :cond_1c
    const-string v0, "navigation_bar_height_landscape"

    goto :goto_17
.end method

.method private getNavigationBarWidth(Landroid/content/Context;)I
    .registers 6
    .annotation build Landroid/annotation/TargetApi;
        value = 0xe
    .end annotation

    .prologue
    .line 276
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v1

    .line 277
    const/4 v0, 0x0

    .line 278
    sget v2, Landroid/os/Build$VERSION;->SDK_INT:I

    const/16 v3, 0xe

    if-lt v2, v3, :cond_17

    .line 279
    invoke-direct {p0, p1}, Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;->hasNavBar(Landroid/content/Context;)Z

    move-result v2

    if-eqz v2, :cond_17

    .line 280
    const-string v0, "navigation_bar_width"

    invoke-direct {p0, v1, v0}, Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;->getInternalDimensionSize(Landroid/content/res/Resources;Ljava/lang/String;)I

    move-result v0

    .line 283
    :cond_17
    return v0
.end method

.method private getSmallestWidthDp(Landroid/app/Activity;)F
    .registers 5
    .annotation build Landroid/annotation/SuppressLint;
        value = {
            "NewApi"
        }
    .end annotation

    .prologue
    .line 325
    new-instance v0, Landroid/util/DisplayMetrics;

    invoke-direct {v0}, Landroid/util/DisplayMetrics;-><init>()V

    .line 326
    sget v1, Landroid/os/Build$VERSION;->SDK_INT:I

    const/16 v2, 0x10

    if-lt v1, v2, :cond_28

    .line 327
    invoke-virtual {p1}, Landroid/app/Activity;->getWindowManager()Landroid/view/WindowManager;

    move-result-object v1

    invoke-interface {v1}, Landroid/view/WindowManager;->getDefaultDisplay()Landroid/view/Display;

    move-result-object v1

    invoke-virtual {v1, v0}, Landroid/view/Display;->getRealMetrics(Landroid/util/DisplayMetrics;)V

    .line 332
    :goto_16
    iget v1, v0, Landroid/util/DisplayMetrics;->widthPixels:I

    int-to-float v1, v1

    iget v2, v0, Landroid/util/DisplayMetrics;->density:F

    div-float/2addr v1, v2

    .line 333
    iget v2, v0, Landroid/util/DisplayMetrics;->heightPixels:I

    int-to-float v2, v2

    iget v0, v0, Landroid/util/DisplayMetrics;->density:F

    div-float v0, v2, v0

    .line 334
    invoke-static {v1, v0}, Ljava/lang/Math;->min(FF)F

    move-result v0

    return v0

    .line 330
    :cond_28
    invoke-virtual {p1}, Landroid/app/Activity;->getWindowManager()Landroid/view/WindowManager;

    move-result-object v1

    invoke-interface {v1}, Landroid/view/WindowManager;->getDefaultDisplay()Landroid/view/Display;

    move-result-object v1

    invoke-virtual {v1, v0}, Landroid/view/Display;->getMetrics(Landroid/util/DisplayMetrics;)V

    goto :goto_16
.end method

.method private hasNavBar(Landroid/content/Context;)Z
    .registers 8
    .annotation build Landroid/annotation/TargetApi;
        value = 0xe
    .end annotation

    .prologue
    const/4 v1, 0x1

    const/4 v0, 0x0

    .line 298
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v2

    .line 299
    const-string v3, "config_showNavigationBar"

    const-string v4, "bool"

    const-string v5, "android"

    invoke-virtual {v2, v3, v4, v5}, Landroid/content/res/Resources;->getIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I

    move-result v3

    .line 300
    if-eqz v3, :cond_31

    .line 301
    invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getBoolean(I)Z

    move-result v2

    .line 303
    const-string v3, "1"

    # getter for: Lcom/baidu/sapi2/views/SystemBarTintManager;->sNavBarOverride:Ljava/lang/String;
    invoke-static {}, Lcom/baidu/sapi2/views/SystemBarTintManager;->access$100()Ljava/lang/String;

    move-result-object v4

    invoke-virtual {v3, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v3

    if-eqz v3, :cond_23

    .line 310
    :goto_22
    return v0

    .line 305
    :cond_23
    const-string v0, "0"

    # getter for: Lcom/baidu/sapi2/views/SystemBarTintManager;->sNavBarOverride:Ljava/lang/String;
    invoke-static {}, Lcom/baidu/sapi2/views/SystemBarTintManager;->access$100()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v0, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_3f

    move v0, v1

    .line 306
    goto :goto_22

    .line 310
    :cond_31
    invoke-static {p1}, Landroid/view/ViewConfiguration;->get(Landroid/content/Context;)Landroid/view/ViewConfiguration;

    move-result-object v2

    invoke-virtual {v2}, Landroid/view/ViewConfiguration;->hasPermanentMenuKey()Z

    move-result v2

    if-nez v2, :cond_3d

    :goto_3b
    move v0, v1

    goto :goto_22

    :cond_3d
    move v1, v0

    goto :goto_3b

    :cond_3f
    move v0, v2

    goto :goto_22
.end method


# virtual methods
.method public getNavigationBarHeight()I
    .registers 2

    .prologue
    .line 271
    iget v0, p0, Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;->mNavigationBarHeight:I

    return v0
.end method

.method public getNavigationBarWidth()I
    .registers 2

    .prologue
    .line 293
    iget v0, p0, Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;->mNavigationBarWidth:I

    return v0
.end method

.method public getStatusBarHeight()I
    .registers 2

    .prologue
    .line 354
    iget v0, p0, Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;->mStatusBarHeight:I

    return v0
.end method

.method public hasNavigtionBar()Z
    .registers 2

    .prologue
    .line 363
    iget-boolean v0, p0, Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;->mHasNavigationBar:Z

    return v0
.end method

.method public isNavigationAtBottom()Z
    .registers 3

    .prologue
    .line 345
    iget v0, p0, Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;->mSmallestWidthDp:F

    const/high16 v1, 0x44160000    # 600.0f

    cmpl-float v0, v0, v1

    if-gez v0, :cond_c

    iget-boolean v0, p0, Lcom/baidu/sapi2/views/SystemBarTintManager$SystemBarConfig;->mInPortrait:Z

    if-eqz v0, :cond_e

    :cond_c
    const/4 v0, 0x1

    :goto_d
    return v0

    :cond_e
    const/4 v0, 0x0

    goto :goto_d
.end method