e.smali
.class public final Lcom/cmcm/qrcodelib/camera/e;
.super Ljava/lang/Object;
.source "CameraManager.java"
# instance fields
.field private final LK:Lcom/cmcm/qrcodelib/camera/c;
.field public LL:Lcom/cmcm/qrcodelib/camera/open/a;
.field private LM:Lcom/cmcm/qrcodelib/camera/a;
.field private LN:Landroid/graphics/Rect;
.field private LO:Landroid/graphics/Rect;
.field private volatile LP:Z
.field private volatile LQ:Z
.field private LR:I
.field private LS:I
.field private LU:I
.field private LV:I
.field private final LW:Lcom/cmcm/qrcodelib/camera/f;
.field private final mContext:Landroid/content/Context;
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.registers 4
.prologue
.line 64
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 53
const/4 v0, -0x1
iput v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LR:I
.line 65
iput-object p1, p0, Lcom/cmcm/qrcodelib/camera/e;->mContext:Landroid/content/Context;
.line 66
new-instance v0, Lcom/cmcm/qrcodelib/camera/c;
invoke-direct {v0, p1}, Lcom/cmcm/qrcodelib/camera/c;-><init>(Landroid/content/Context;)V
iput-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LK:Lcom/cmcm/qrcodelib/camera/c;
.line 67
new-instance v0, Lcom/cmcm/qrcodelib/camera/f;
iget-object v1, p0, Lcom/cmcm/qrcodelib/camera/e;->LK:Lcom/cmcm/qrcodelib/camera/c;
invoke-direct {v0, v1}, Lcom/cmcm/qrcodelib/camera/f;-><init>(Lcom/cmcm/qrcodelib/camera/c;)V
iput-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LW:Lcom/cmcm/qrcodelib/camera/f;
.line 68
return-void
.end method
.method private fn()I
.registers 6
.prologue
.line 366
const/4 v0, 0x0
.line 367
iget-object v1, p0, Lcom/cmcm/qrcodelib/camera/e;->mContext:Landroid/content/Context;
invoke-virtual {v1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v1
const-string v2, "status_bar_height"
const-string v3, "dimen"
const-string v4, "android"
invoke-virtual {v1, v2, v3, v4}, Landroid/content/res/Resources;->getIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I
move-result v1
.line 368
if-lez v1, :cond_1d
.line 369
iget-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->mContext:Landroid/content/Context;
invoke-virtual {v0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v0
invoke-virtual {v0, v1}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I
move-result v0
.line 371
:cond_1d
return v0
.end method
.method private static w(II)I
.registers 4
.prologue
const/16 v0, 0xf0
.line 261
mul-int/lit8 v1, p0, 0x5
div-int/lit8 v1, v1, 0x8
.line 262
if-ge v1, v0, :cond_a
move p1, v0
.line 268
:cond_9
:goto_9
return p1
.line 265
:cond_a
if-gt v1, p1, :cond_9
move p1, v1
.line 268
goto :goto_9
.end method
.method private declared-synchronized x(II)V
.registers 8
.prologue
.line 327
monitor-enter p0
:try_start_1
iget-boolean v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LP:Z
if-eqz v0, :cond_46
.line 328
iget-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LK:Lcom/cmcm/qrcodelib/camera/c;
.line 12193
iget-object v0, v0, Lcom/cmcm/qrcodelib/camera/c;->LH:Landroid/graphics/Point;
.line 329
iget v1, v0, Landroid/graphics/Point;->x:I
if-le p1, v1, :cond_f
.line 330
iget p1, v0, Landroid/graphics/Point;->x:I
.line 332
:cond_f
iget v1, v0, Landroid/graphics/Point;->y:I
if-le p2, v1, :cond_15
.line 333
iget p2, v0, Landroid/graphics/Point;->y:I
.line 335
:cond_15
invoke-direct {p0}, Lcom/cmcm/qrcodelib/camera/e;->fn()I
move-result v1
.line 336
iget v2, v0, Landroid/graphics/Point;->x:I
sub-int/2addr v2, p1
div-int/lit8 v2, v2, 0x2
.line 337
iget v0, v0, Landroid/graphics/Point;->y:I
sub-int/2addr v0, p2
div-int/lit8 v0, v0, 0x2
sub-int/2addr v0, v1
.line 338
iget v3, p0, Lcom/cmcm/qrcodelib/camera/e;->LV:I
if-nez v3, :cond_3d
.line 339
iput v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LV:I
.line 343
:goto_2a
new-instance v0, Landroid/graphics/Rect;
iget v1, p0, Lcom/cmcm/qrcodelib/camera/e;->LV:I
add-int v3, v2, p1
iget v4, p0, Lcom/cmcm/qrcodelib/camera/e;->LV:I
add-int/2addr v4, p2
invoke-direct {v0, v2, v1, v3, v4}, Landroid/graphics/Rect;-><init>(IIII)V
iput-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LN:Landroid/graphics/Rect;
.line 344
const/4 v0, 0x0
iput-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LO:Landroid/graphics/Rect;
:try_end_3b
.catchall {:try_start_1 .. :try_end_3b} :catchall_43
.line 349
:goto_3b
monitor-exit p0
return-void
.line 341
:cond_3d
:try_start_3d
iget v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LV:I
add-int/2addr v0, v1
iput v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LV:I
:try_end_42
.catchall {:try_start_3d .. :try_end_42} :catchall_43
goto :goto_2a
.line 327
:catchall_43
move-exception v0
monitor-exit p0
throw v0
.line 346
:cond_46
:try_start_46
iput p1, p0, Lcom/cmcm/qrcodelib/camera/e;->LS:I
.line 347
iput p2, p0, Lcom/cmcm/qrcodelib/camera/e;->LU:I
:try_end_4a
.catchall {:try_start_46 .. :try_end_4a} :catchall_43
goto :goto_3b
.end method
# virtual methods
.method public final declared-synchronized a(Landroid/os/Handler;)V
.registers 5
.prologue
.line 214
monitor-enter p0
:try_start_1
iget-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LL:Lcom/cmcm/qrcodelib/camera/open/a;
.line 215
if-eqz v0, :cond_17
iget-boolean v1, p0, Lcom/cmcm/qrcodelib/camera/e;->LQ:Z
if-eqz v1, :cond_17
.line 216
iget-object v1, p0, Lcom/cmcm/qrcodelib/camera/e;->LW:Lcom/cmcm/qrcodelib/camera/f;
const/16 v2, 0x64
invoke-virtual {v1, p1, v2}, Lcom/cmcm/qrcodelib/camera/f;->a(Landroid/os/Handler;I)V
.line 10039
iget-object v0, v0, Lcom/cmcm/qrcodelib/camera/open/a;->LB:Landroid/hardware/Camera;
.line 217
iget-object v1, p0, Lcom/cmcm/qrcodelib/camera/e;->LW:Lcom/cmcm/qrcodelib/camera/f;
invoke-virtual {v0, v1}, Landroid/hardware/Camera;->setOneShotPreviewCallback(Landroid/hardware/Camera$PreviewCallback;)V
:try_end_17
.catchall {:try_start_1 .. :try_end_17} :catchall_19
.line 219
:cond_17
monitor-exit p0
return-void
.line 214
:catchall_19
move-exception v0
monitor-exit p0
throw v0
.end method
.method public final declared-synchronized a(Landroid/view/SurfaceHolder;)V
.registers 13
.prologue
const/4 v1, 0x0
const/4 v2, 0x1
const/4 v3, 0x0
.line 81
monitor-enter p0
:try_start_4
iget-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LL:Lcom/cmcm/qrcodelib/camera/open/a;
.line 82
if-nez v0, :cond_172
.line 84
iget v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LR:I
.line 1046
invoke-static {}, Landroid/hardware/Camera;->getNumberOfCameras()I
move-result v7
.line 1047
if-nez v7, :cond_1e
move-object v0, v1
.line 85
:goto_11
if-nez v0, :cond_7c
.line 86
new-instance v0, Ljava/io/IOException;
const-string v1, "Camera.open() failed to return object from driver"
invoke-direct {v0, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
throw v0
:try_end_1b
.catchall {:try_start_4 .. :try_end_1b} :catchall_1b
.line 81
:catchall_1b
move-exception v0
monitor-exit p0
throw v0
.line 1052
:cond_1e
if-ltz v0, :cond_38
move v5, v2
.line 1056
:goto_21
if-eqz v5, :cond_3a
.line 1058
:try_start_23
new-instance v4, Landroid/hardware/Camera$CameraInfo;
invoke-direct {v4}, Landroid/hardware/Camera$CameraInfo;-><init>()V
.line 1059
invoke-static {v0, v4}, Landroid/hardware/Camera;->getCameraInfo(ILandroid/hardware/Camera$CameraInfo;)V
move v6, v0
.line 1075
:goto_2c
if-ge v6, v7, :cond_56
.line 1077
invoke-static {v6}, Landroid/hardware/Camera;->open(I)Landroid/hardware/Camera;
move-result-object v0
move-object v5, v4
move-object v4, v0
.line 1090
:goto_34
if-nez v4, :cond_6c
move-object v0, v1
.line 1091
goto :goto_11
:cond_38
move v5, v3
.line 1052
goto :goto_21
:cond_3a
move v0, v3
.line 1062
:goto_3b
if-ge v0, v7, :cond_16e
.line 1063
new-instance v4, Landroid/hardware/Camera$CameraInfo;
invoke-direct {v4}, Landroid/hardware/Camera$CameraInfo;-><init>()V
.line 1064
invoke-static {v0, v4}, Landroid/hardware/Camera;->getCameraInfo(ILandroid/hardware/Camera$CameraInfo;)V
.line 1065
invoke-static {}, Lcom/cmcm/qrcodelib/camera/open/CameraFacing;->values()[Lcom/cmcm/qrcodelib/camera/open/CameraFacing;
move-result-object v6
iget v8, v4, Landroid/hardware/Camera$CameraInfo;->facing:I
aget-object v6, v6, v8
.line 1066
sget-object v8, Lcom/cmcm/qrcodelib/camera/open/CameraFacing;->BACK:Lcom/cmcm/qrcodelib/camera/open/CameraFacing;
if-ne v6, v8, :cond_53
move v6, v0
.line 1068
goto :goto_2c
.line 1070
:cond_53
add-int/lit8 v0, v0, 0x1
.line 1071
goto :goto_3b
.line 1079
:cond_56
if-eqz v5, :cond_5b
move-object v5, v4
move-object v4, v1
.line 1081
goto :goto_34
.line 1084
:cond_5b
const/4 v0, 0x0
invoke-static {v0}, Landroid/hardware/Camera;->open(I)Landroid/hardware/Camera;
move-result-object v0
.line 1085
new-instance v4, Landroid/hardware/Camera$CameraInfo;
invoke-direct {v4}, Landroid/hardware/Camera$CameraInfo;-><init>()V
.line 1086
const/4 v5, 0x0
invoke-static {v5, v4}, Landroid/hardware/Camera;->getCameraInfo(ILandroid/hardware/Camera$CameraInfo;)V
move-object v5, v4
move-object v4, v0
goto :goto_34
.line 1093
:cond_6c
new-instance v0, Lcom/cmcm/qrcodelib/camera/open/a;
invoke-static {}, Lcom/cmcm/qrcodelib/camera/open/CameraFacing;->values()[Lcom/cmcm/qrcodelib/camera/open/CameraFacing;
move-result-object v7
iget v8, v5, Landroid/hardware/Camera$CameraInfo;->facing:I
aget-object v7, v7, v8
iget v5, v5, Landroid/hardware/Camera$CameraInfo;->orientation:I
invoke-direct {v0, v6, v4, v7, v5}, Lcom/cmcm/qrcodelib/camera/open/a;-><init>(ILandroid/hardware/Camera;Lcom/cmcm/qrcodelib/camera/open/CameraFacing;I)V
goto :goto_11
.line 88
:cond_7c
iput-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LL:Lcom/cmcm/qrcodelib/camera/open/a;
move-object v5, v0
.line 91
:goto_7f
iget-boolean v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LP:Z
if-nez v0, :cond_115
.line 92
const/4 v0, 0x1
iput-boolean v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LP:Z
.line 93
iget-object v6, p0, Lcom/cmcm/qrcodelib/camera/e;->LK:Lcom/cmcm/qrcodelib/camera/c;
.line 3039
iget-object v0, v5, Lcom/cmcm/qrcodelib/camera/open/a;->LB:Landroid/hardware/Camera;
.line 2058
invoke-virtual {v0}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;
move-result-object v7
.line 2059
iget-object v0, v6, Lcom/cmcm/qrcodelib/camera/c;->zn:Landroid/content/Context;
const-string v4, "window"
.line 2060
invoke-virtual {v0, v4}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/view/WindowManager;
.line 2061
invoke-interface {v0}, Landroid/view/WindowManager;->getDefaultDisplay()Landroid/view/Display;
move-result-object v8
.line 2063
invoke-virtual {v8}, Landroid/view/Display;->getRotation()I
move-result v0
.line 2065
packed-switch v0, :pswitch_data_176
.line 2080
rem-int/lit8 v4, v0, 0x5a
if-nez v4, :cond_13a
.line 2081
add-int/lit16 v0, v0, 0x168
rem-int/lit16 v0, v0, 0x168
move v4, v0
.line 3047
:goto_ac
iget v0, v5, Lcom/cmcm/qrcodelib/camera/open/a;->orientation:I
.line 4043
iget-object v9, v5, Lcom/cmcm/qrcodelib/camera/open/a;->Mb:Lcom/cmcm/qrcodelib/camera/open/CameraFacing;
.line 2090
sget-object v10, Lcom/cmcm/qrcodelib/camera/open/CameraFacing;->FRONT:Lcom/cmcm/qrcodelib/camera/open/CameraFacing;
if-ne v9, v10, :cond_b8
.line 2091
rsub-int v0, v0, 0x168
rem-int/lit16 v0, v0, 0x168
.line 2094
:cond_b8
add-int/lit16 v0, v0, 0x168
sub-int/2addr v0, v4
rem-int/lit16 v0, v0, 0x168
iput v0, v6, Lcom/cmcm/qrcodelib/camera/c;->LG:I
.line 2097
sget-object v0, Lcom/cmcm/qrcodelib/camera/open/CameraFacing;->FRONT:Lcom/cmcm/qrcodelib/camera/open/CameraFacing;
.line 2103
new-instance v0, Landroid/graphics/Point;
invoke-direct {v0}, Landroid/graphics/Point;-><init>()V
.line 2104
invoke-virtual {v8, v0}, Landroid/view/Display;->getSize(Landroid/graphics/Point;)V
.line 2105
iput-object v0, v6, Lcom/cmcm/qrcodelib/camera/c;->LH:Landroid/graphics/Point;
.line 2106
iget-object v0, v6, Lcom/cmcm/qrcodelib/camera/c;->LH:Landroid/graphics/Point;
invoke-static {v7, v0}, Lcom/cmcm/qrcodelib/camera/d;->a(Landroid/hardware/Camera$Parameters;Landroid/graphics/Point;)Landroid/graphics/Point;
move-result-object v0
iput-object v0, v6, Lcom/cmcm/qrcodelib/camera/c;->LI:Landroid/graphics/Point;
.line 2108
iget-object v0, v6, Lcom/cmcm/qrcodelib/camera/c;->LH:Landroid/graphics/Point;
invoke-static {v7, v0}, Lcom/cmcm/qrcodelib/camera/d;->a(Landroid/hardware/Camera$Parameters;Landroid/graphics/Point;)Landroid/graphics/Point;
move-result-object v0
iput-object v0, v6, Lcom/cmcm/qrcodelib/camera/c;->LJ:Landroid/graphics/Point;
.line 2111
iget-object v0, v6, Lcom/cmcm/qrcodelib/camera/c;->LH:Landroid/graphics/Point;
iget v0, v0, Landroid/graphics/Point;->x:I
iget-object v4, v6, Lcom/cmcm/qrcodelib/camera/c;->LH:Landroid/graphics/Point;
iget v4, v4, Landroid/graphics/Point;->y:I
if-ge v0, v4, :cond_14f
move v4, v2
.line 2112
:goto_e6
iget-object v0, v6, Lcom/cmcm/qrcodelib/camera/c;->LJ:Landroid/graphics/Point;
iget v0, v0, Landroid/graphics/Point;->x:I
iget-object v7, v6, Lcom/cmcm/qrcodelib/camera/c;->LJ:Landroid/graphics/Point;
iget v7, v7, Landroid/graphics/Point;->y:I
if-ge v0, v7, :cond_151
move v0, v2
.line 2114
:goto_f1
if-eq v4, v0, :cond_100
.line 2117
new-instance v0, Landroid/graphics/Point;
iget-object v2, v6, Lcom/cmcm/qrcodelib/camera/c;->LJ:Landroid/graphics/Point;
iget v2, v2, Landroid/graphics/Point;->y:I
iget-object v3, v6, Lcom/cmcm/qrcodelib/camera/c;->LJ:Landroid/graphics/Point;
iget v3, v3, Landroid/graphics/Point;->x:I
invoke-direct {v0, v2, v3}, Landroid/graphics/Point;-><init>(II)V
.line 94
:cond_100
iget v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LS:I
if-lez v0, :cond_115
iget v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LU:I
if-lez v0, :cond_115
.line 95
iget v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LS:I
iget v2, p0, Lcom/cmcm/qrcodelib/camera/e;->LU:I
invoke-direct {p0, v0, v2}, Lcom/cmcm/qrcodelib/camera/e;->x(II)V
.line 96
const/4 v0, 0x0
iput v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LS:I
.line 97
const/4 v0, 0x0
iput v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LU:I
.line 5039
:cond_115
iget-object v2, v5, Lcom/cmcm/qrcodelib/camera/open/a;->LB:Landroid/hardware/Camera;
.line 102
invoke-virtual {v2}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;
:try_end_11a
.catchall {:try_start_23 .. :try_end_11a} :catchall_1b
move-result-object v0
.line 103
if-nez v0, :cond_153
move-object v0, v1
.line 106
:goto_11e
:try_start_11e
iget-object v1, p0, Lcom/cmcm/qrcodelib/camera/e;->LK:Lcom/cmcm/qrcodelib/camera/c;
const/4 v3, 0x0
invoke-virtual {v1, v5, v3}, Lcom/cmcm/qrcodelib/camera/c;->a(Lcom/cmcm/qrcodelib/camera/open/a;Z)V
:try_end_124
.catch Ljava/lang/RuntimeException; {:try_start_11e .. :try_end_124} :catch_158
.catchall {:try_start_11e .. :try_end_124} :catchall_1b
.line 125
:cond_124
:goto_124
:try_start_124
invoke-virtual {v2, p1}, Landroid/hardware/Camera;->setPreviewDisplay(Landroid/view/SurfaceHolder;)V
:try_end_127
.catchall {:try_start_124 .. :try_end_127} :catchall_1b
.line 126
monitor-exit p0
return-void
:pswitch_129
move v4, v3
.line 2068
goto :goto_ac
.line 2070
:pswitch_12b
const/16 v0, 0x5a
move v4, v0
.line 2071
goto/16 :goto_ac
.line 2073
:pswitch_130
const/16 v0, 0xb4
move v4, v0
.line 2074
goto/16 :goto_ac
.line 2076
:pswitch_135
const/16 v0, 0x10e
move v4, v0
.line 2077
goto/16 :goto_ac
.line 2083
:cond_13a
:try_start_13a
new-instance v1, Ljava/lang/IllegalArgumentException;
new-instance v2, Ljava/lang/StringBuilder;
const-string v3, "Bad rotation: "
invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {v1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v1
:cond_14f
move v4, v3
.line 2111
goto :goto_e6
:cond_151
move v0, v3
.line 2112
goto :goto_f1
.line 103
:cond_153
invoke-virtual {v0}, Landroid/hardware/Camera$Parameters;->flatten()Ljava/lang/String;
move-result-object v0
goto :goto_11e
.line 112
:catch_158
move-exception v1
if-eqz v0, :cond_124
.line 113
invoke-virtual {v2}, Landroid/hardware/Camera;->getParameters()Landroid/hardware/Camera$Parameters;
move-result-object v1
.line 114
invoke-virtual {v1, v0}, Landroid/hardware/Camera$Parameters;->unflatten(Ljava/lang/String;)V
:try_end_162
.catchall {:try_start_13a .. :try_end_162} :catchall_1b
.line 116
:try_start_162
invoke-virtual {v2, v1}, Landroid/hardware/Camera;->setParameters(Landroid/hardware/Camera$Parameters;)V
.line 117
iget-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LK:Lcom/cmcm/qrcodelib/camera/c;
const/4 v1, 0x1
invoke-virtual {v0, v5, v1}, Lcom/cmcm/qrcodelib/camera/c;->a(Lcom/cmcm/qrcodelib/camera/open/a;Z)V
:try_end_16b
.catch Ljava/lang/RuntimeException; {:try_start_162 .. :try_end_16b} :catch_16c
.catchall {:try_start_162 .. :try_end_16b} :catchall_1b
goto :goto_124
:catch_16c
move-exception v0
goto :goto_124
:cond_16e
move v6, v0
move-object v4, v1
goto/16 :goto_2c
:cond_172
move-object v5, v0
goto/16 :goto_7f
.line 2065
nop
:pswitch_data_176
.packed-switch 0x0
:pswitch_129
:pswitch_12b
:pswitch_130
:pswitch_135
.end packed-switch
.end method
.method public final declared-synchronized fk()V
.registers 2
.prologue
.line 140
monitor-enter p0
:try_start_1
iget-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LL:Lcom/cmcm/qrcodelib/camera/open/a;
if-eqz v0, :cond_15
.line 141
iget-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LL:Lcom/cmcm/qrcodelib/camera/open/a;
.line 6039
iget-object v0, v0, Lcom/cmcm/qrcodelib/camera/open/a;->LB:Landroid/hardware/Camera;
.line 141
invoke-virtual {v0}, Landroid/hardware/Camera;->release()V
.line 142
const/4 v0, 0x0
iput-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LL:Lcom/cmcm/qrcodelib/camera/open/a;
.line 145
const/4 v0, 0x0
iput-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LN:Landroid/graphics/Rect;
.line 146
const/4 v0, 0x0
iput-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LO:Landroid/graphics/Rect;
:try_end_15
.catchall {:try_start_1 .. :try_end_15} :catchall_17
.line 148
:cond_15
monitor-exit p0
return-void
.line 140
:catchall_17
move-exception v0
monitor-exit p0
throw v0
.end method
.method public final declared-synchronized fl()Landroid/graphics/Rect;
.registers 7
.prologue
const/4 v0, 0x0
.line 229
monitor-enter p0
:try_start_2
iget-object v1, p0, Lcom/cmcm/qrcodelib/camera/e;->LN:Landroid/graphics/Rect;
if-nez v1, :cond_4c
.line 230
iget-object v1, p0, Lcom/cmcm/qrcodelib/camera/e;->LL:Lcom/cmcm/qrcodelib/camera/open/a;
:try_end_8
.catchall {:try_start_2 .. :try_end_8} :catchall_5e
if-nez v1, :cond_c
.line 257
:cond_a
:goto_a
monitor-exit p0
return-object v0
.line 233
:cond_c
:try_start_c
iget-object v1, p0, Lcom/cmcm/qrcodelib/camera/e;->LK:Lcom/cmcm/qrcodelib/camera/c;
.line 10193
iget-object v2, v1, Lcom/cmcm/qrcodelib/camera/c;->LH:Landroid/graphics/Point;
.line 234
if-eqz v2, :cond_a
.line 239
iget v0, v2, Landroid/graphics/Point;->x:I
const/16 v1, 0x4b0
invoke-static {v0, v1}, Lcom/cmcm/qrcodelib/camera/e;->w(II)I
move-result v1
.line 241
iget-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->mContext:Landroid/content/Context;
invoke-virtual {v0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v0
invoke-virtual {v0}, Landroid/content/res/Resources;->getConfiguration()Landroid/content/res/Configuration;
move-result-object v0
iget v0, v0, Landroid/content/res/Configuration;->orientation:I
const/4 v3, 0x1
if-ne v0, v3, :cond_4f
move v0, v1
.line 247
:goto_2a
invoke-direct {p0}, Lcom/cmcm/qrcodelib/camera/e;->fn()I
move-result v3
.line 248
iget v4, v2, Landroid/graphics/Point;->x:I
sub-int/2addr v4, v1
div-int/lit8 v4, v4, 0x2
.line 249
iget v2, v2, Landroid/graphics/Point;->y:I
sub-int/2addr v2, v0
div-int/lit8 v2, v2, 0x2
sub-int/2addr v2, v3
.line 250
iget v5, p0, Lcom/cmcm/qrcodelib/camera/e;->LV:I
if-nez v5, :cond_58
.line 251
iput v2, p0, Lcom/cmcm/qrcodelib/camera/e;->LV:I
.line 255
:goto_3f
new-instance v2, Landroid/graphics/Rect;
iget v3, p0, Lcom/cmcm/qrcodelib/camera/e;->LV:I
add-int/2addr v1, v4
iget v5, p0, Lcom/cmcm/qrcodelib/camera/e;->LV:I
add-int/2addr v0, v5
invoke-direct {v2, v4, v3, v1, v0}, Landroid/graphics/Rect;-><init>(IIII)V
iput-object v2, p0, Lcom/cmcm/qrcodelib/camera/e;->LN:Landroid/graphics/Rect;
.line 257
:cond_4c
iget-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LN:Landroid/graphics/Rect;
goto :goto_a
.line 245
:cond_4f
iget v0, v2, Landroid/graphics/Point;->y:I
const/16 v3, 0x2a3
invoke-static {v0, v3}, Lcom/cmcm/qrcodelib/camera/e;->w(II)I
move-result v0
goto :goto_2a
.line 253
:cond_58
iget v2, p0, Lcom/cmcm/qrcodelib/camera/e;->LV:I
add-int/2addr v2, v3
iput v2, p0, Lcom/cmcm/qrcodelib/camera/e;->LV:I
:try_end_5d
.catchall {:try_start_c .. :try_end_5d} :catchall_5e
goto :goto_3f
.line 229
:catchall_5e
move-exception v0
monitor-exit p0
throw v0
.end method
.method public final declared-synchronized fm()Landroid/graphics/Rect;
.registers 6
.prologue
const/4 v0, 0x0
.line 278
monitor-enter p0
:try_start_2
iget-object v1, p0, Lcom/cmcm/qrcodelib/camera/e;->LO:Landroid/graphics/Rect;
if-nez v1, :cond_58
.line 279
invoke-virtual {p0}, Lcom/cmcm/qrcodelib/camera/e;->fl()Landroid/graphics/Rect;
:try_end_9
.catchall {:try_start_2 .. :try_end_9} :catchall_84
move-result-object v1
.line 280
if-nez v1, :cond_e
.line 305
:cond_c
:goto_c
monitor-exit p0
return-object v0
.line 283
:cond_e
:try_start_e
new-instance v2, Landroid/graphics/Rect;
invoke-direct {v2, v1}, Landroid/graphics/Rect;-><init>(Landroid/graphics/Rect;)V
.line 284
iget-object v1, p0, Lcom/cmcm/qrcodelib/camera/e;->LK:Lcom/cmcm/qrcodelib/camera/c;
.line 11189
iget-object v1, v1, Lcom/cmcm/qrcodelib/camera/c;->LI:Landroid/graphics/Point;
.line 285
iget-object v3, p0, Lcom/cmcm/qrcodelib/camera/e;->LK:Lcom/cmcm/qrcodelib/camera/c;
.line 11193
iget-object v3, v3, Lcom/cmcm/qrcodelib/camera/c;->LH:Landroid/graphics/Point;
.line 286
if-eqz v1, :cond_c
if-eqz v3, :cond_c
.line 292
iget-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->mContext:Landroid/content/Context;
invoke-virtual {v0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v0
invoke-virtual {v0}, Landroid/content/res/Resources;->getConfiguration()Landroid/content/res/Configuration;
move-result-object v0
iget v0, v0, Landroid/content/res/Configuration;->orientation:I
const/4 v4, 0x1
if-ne v0, v4, :cond_5b
.line 293
iget v0, v2, Landroid/graphics/Rect;->left:I
iget v4, v1, Landroid/graphics/Point;->y:I
mul-int/2addr v0, v4
iget v4, v3, Landroid/graphics/Point;->x:I
div-int/2addr v0, v4
iput v0, v2, Landroid/graphics/Rect;->left:I
.line 294
iget v0, v2, Landroid/graphics/Rect;->right:I
iget v4, v1, Landroid/graphics/Point;->y:I
mul-int/2addr v0, v4
iget v4, v3, Landroid/graphics/Point;->x:I
div-int/2addr v0, v4
iput v0, v2, Landroid/graphics/Rect;->right:I
.line 295
iget v0, v2, Landroid/graphics/Rect;->top:I
iget v4, v1, Landroid/graphics/Point;->x:I
mul-int/2addr v0, v4
iget v4, v3, Landroid/graphics/Point;->y:I
div-int/2addr v0, v4
iput v0, v2, Landroid/graphics/Rect;->top:I
.line 296
iget v0, v2, Landroid/graphics/Rect;->bottom:I
iget v1, v1, Landroid/graphics/Point;->x:I
mul-int/2addr v0, v1
iget v1, v3, Landroid/graphics/Point;->y:I
div-int/2addr v0, v1
iput v0, v2, Landroid/graphics/Rect;->bottom:I
.line 303
:goto_56
iput-object v2, p0, Lcom/cmcm/qrcodelib/camera/e;->LO:Landroid/graphics/Rect;
.line 305
:cond_58
iget-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LO:Landroid/graphics/Rect;
goto :goto_c
.line 298
:cond_5b
iget v0, v2, Landroid/graphics/Rect;->left:I
iget v4, v1, Landroid/graphics/Point;->x:I
mul-int/2addr v0, v4
iget v4, v3, Landroid/graphics/Point;->x:I
div-int/2addr v0, v4
iput v0, v2, Landroid/graphics/Rect;->left:I
.line 299
iget v0, v2, Landroid/graphics/Rect;->right:I
iget v4, v1, Landroid/graphics/Point;->x:I
mul-int/2addr v0, v4
iget v4, v3, Landroid/graphics/Point;->x:I
div-int/2addr v0, v4
iput v0, v2, Landroid/graphics/Rect;->right:I
.line 300
iget v0, v2, Landroid/graphics/Rect;->top:I
iget v4, v1, Landroid/graphics/Point;->y:I
mul-int/2addr v0, v4
iget v4, v3, Landroid/graphics/Point;->y:I
div-int/2addr v0, v4
iput v0, v2, Landroid/graphics/Rect;->top:I
.line 301
iget v0, v2, Landroid/graphics/Rect;->bottom:I
iget v1, v1, Landroid/graphics/Point;->y:I
mul-int/2addr v0, v1
iget v1, v3, Landroid/graphics/Point;->y:I
div-int/2addr v0, v1
iput v0, v2, Landroid/graphics/Rect;->bottom:I
:try_end_83
.catchall {:try_start_e .. :try_end_83} :catchall_84
goto :goto_56
.line 278
:catchall_84
move-exception v0
monitor-exit p0
throw v0
.end method
.method public final declared-synchronized isOpen()Z
.registers 2
.prologue
.line 129
monitor-enter p0
:try_start_1
iget-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LL:Lcom/cmcm/qrcodelib/camera/open/a;
:try_end_3
.catchall {:try_start_1 .. :try_end_3} :catchall_a
if-eqz v0, :cond_8
const/4 v0, 0x1
:goto_6
monitor-exit p0
return v0
:cond_8
const/4 v0, 0x0
goto :goto_6
:catchall_a
move-exception v0
monitor-exit p0
throw v0
.end method
.method public final declared-synchronized startPreview()V
.registers 3
.prologue
.line 154
monitor-enter p0
:try_start_1
iget-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LL:Lcom/cmcm/qrcodelib/camera/open/a;
.line 155
if-eqz v0, :cond_1a
iget-boolean v1, p0, Lcom/cmcm/qrcodelib/camera/e;->LQ:Z
if-nez v1, :cond_1a
.line 7039
iget-object v1, v0, Lcom/cmcm/qrcodelib/camera/open/a;->LB:Landroid/hardware/Camera;
.line 156
invoke-virtual {v1}, Landroid/hardware/Camera;->startPreview()V
.line 157
const/4 v1, 0x1
iput-boolean v1, p0, Lcom/cmcm/qrcodelib/camera/e;->LQ:Z
.line 158
new-instance v1, Lcom/cmcm/qrcodelib/camera/a;
.line 8039
iget-object v0, v0, Lcom/cmcm/qrcodelib/camera/open/a;->LB:Landroid/hardware/Camera;
.line 158
invoke-direct {v1, v0}, Lcom/cmcm/qrcodelib/camera/a;-><init>(Landroid/hardware/Camera;)V
iput-object v1, p0, Lcom/cmcm/qrcodelib/camera/e;->LM:Lcom/cmcm/qrcodelib/camera/a;
:try_end_1a
.catchall {:try_start_1 .. :try_end_1a} :catchall_1c
.line 160
:cond_1a
monitor-exit p0
return-void
.line 154
:catchall_1c
move-exception v0
monitor-exit p0
throw v0
.end method
.method public final declared-synchronized stopPreview()V
.registers 4
.prologue
.line 166
monitor-enter p0
:try_start_1
iget-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LM:Lcom/cmcm/qrcodelib/camera/a;
if-eqz v0, :cond_d
.line 167
iget-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LM:Lcom/cmcm/qrcodelib/camera/a;
invoke-virtual {v0}, Lcom/cmcm/qrcodelib/camera/a;->stop()V
.line 168
const/4 v0, 0x0
iput-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LM:Lcom/cmcm/qrcodelib/camera/a;
.line 170
:cond_d
iget-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LL:Lcom/cmcm/qrcodelib/camera/open/a;
if-eqz v0, :cond_26
iget-boolean v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LQ:Z
if-eqz v0, :cond_26
.line 171
iget-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LL:Lcom/cmcm/qrcodelib/camera/open/a;
.line 9039
iget-object v0, v0, Lcom/cmcm/qrcodelib/camera/open/a;->LB:Landroid/hardware/Camera;
.line 171
invoke-virtual {v0}, Landroid/hardware/Camera;->stopPreview()V
.line 172
iget-object v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LW:Lcom/cmcm/qrcodelib/camera/f;
const/4 v1, 0x0
const/4 v2, 0x0
invoke-virtual {v0, v1, v2}, Lcom/cmcm/qrcodelib/camera/f;->a(Landroid/os/Handler;I)V
.line 173
const/4 v0, 0x0
iput-boolean v0, p0, Lcom/cmcm/qrcodelib/camera/e;->LQ:Z
:try_end_26
.catchall {:try_start_1 .. :try_end_26} :catchall_28
.line 175
:cond_26
monitor-exit p0
return-void
.line 166
:catchall_28
move-exception v0
monitor-exit p0
throw v0
.end method