DummySurface.smali

.class public final Lcom/kwai/video/player/surface/DummySurface;
.super Landroid/view/Surface;


# annotations
.annotation build Landroid/annotation/TargetApi;
    value = 0x11
.end annotation

.annotation system Ldalvik/annotation/MemberClasses;
    value = {
        Lcom/kwai/video/player/surface/DummySurface$DummySurfaceThread;
    }
.end annotation


# static fields
.field private static final TAG:Ljava/lang/String; = "DummySurface"

.field private static secureMode:I

.field private static secureModeInitialized:Z


# instance fields
.field public final secure:Z

.field private final thread:Lcom/kwai/video/player/surface/DummySurface$DummySurfaceThread;

.field private threadReleased:Z


# direct methods
.method private constructor <init>(Lcom/kwai/video/player/surface/DummySurface$DummySurfaceThread;Landroid/graphics/SurfaceTexture;Z)V
    .registers 4

    invoke-direct {p0, p2}, Landroid/view/Surface;-><init>(Landroid/graphics/SurfaceTexture;)V

    iput-object p1, p0, Lcom/kwai/video/player/surface/DummySurface;->thread:Lcom/kwai/video/player/surface/DummySurface$DummySurfaceThread;

    iput-boolean p3, p0, Lcom/kwai/video/player/surface/DummySurface;->secure:Z

    return-void
.end method

.method synthetic constructor <init>(Lcom/kwai/video/player/surface/DummySurface$DummySurfaceThread;Landroid/graphics/SurfaceTexture;ZLcom/kwai/video/player/surface/DummySurface$1;)V
    .registers 5

    invoke-direct {p0, p1, p2, p3}, Lcom/kwai/video/player/surface/DummySurface;-><init>(Lcom/kwai/video/player/surface/DummySurface$DummySurfaceThread;Landroid/graphics/SurfaceTexture;Z)V

    return-void
.end method

.method private static assertApiLevel17OrHigher()V
    .registers 2

    sget v0, Landroid/os/Build$VERSION;->SDK_INT:I

    const/16 v1, 0x11

    if-ge v0, v1, :cond_e

    new-instance v0, Ljava/lang/UnsupportedOperationException;

    const-string v1, "Unsupported prior to API level 17"

    invoke-direct {v0, v1}, Ljava/lang/UnsupportedOperationException;-><init>(Ljava/lang/String;)V

    throw v0

    :cond_e
    return-void
.end method

.method private static getSecureMode(Landroid/content/Context;)I
    .registers 2

    const/4 v0, 0x0

    return v0
.end method

.method public static declared-synchronized isSecureSupported(Landroid/content/Context;)Z
    .registers 4

    const/4 v0, 0x1

    const-class v1, Lcom/kwai/video/player/surface/DummySurface;

    monitor-enter v1

    :try_start_4
    sget-boolean v2, Lcom/kwai/video/player/surface/DummySurface;->secureModeInitialized:Z

    if-nez v2, :cond_11

    invoke-static {p0}, Lcom/kwai/video/player/surface/DummySurface;->getSecureMode(Landroid/content/Context;)I

    move-result v2

    sput v2, Lcom/kwai/video/player/surface/DummySurface;->secureMode:I

    const/4 v2, 0x1

    sput-boolean v2, Lcom/kwai/video/player/surface/DummySurface;->secureModeInitialized:Z

    :cond_11
    sget v2, Lcom/kwai/video/player/surface/DummySurface;->secureMode:I
    :try_end_13
    .catchall {:try_start_4 .. :try_end_13} :catchall_19

    if-eqz v2, :cond_17

    :goto_15
    monitor-exit v1

    return v0

    :cond_17
    const/4 v0, 0x0

    goto :goto_15

    :catchall_19
    move-exception v0

    monitor-exit v1

    throw v0
.end method

.method public static newInstanceV17(Landroid/content/Context;Z)Lcom/kwai/video/player/surface/DummySurface;
    .registers 4

    const/4 v1, 0x0

    invoke-static {}, Lcom/kwai/video/player/surface/DummySurface;->assertApiLevel17OrHigher()V

    if-eqz p1, :cond_c

    invoke-static {p0}, Lcom/kwai/video/player/surface/DummySurface;->isSecureSupported(Landroid/content/Context;)Z

    move-result v0

    if-eqz v0, :cond_1e

    :cond_c
    const/4 v0, 0x1

    :goto_d
    invoke-static {v0}, Lcom/kwai/video/player/surface/Assertions;->checkState(Z)V

    new-instance v0, Lcom/kwai/video/player/surface/DummySurface$DummySurfaceThread;

    invoke-direct {v0}, Lcom/kwai/video/player/surface/DummySurface$DummySurfaceThread;-><init>()V

    if-eqz p1, :cond_19

    sget v1, Lcom/kwai/video/player/surface/DummySurface;->secureMode:I

    :cond_19
    invoke-virtual {v0, v1}, Lcom/kwai/video/player/surface/DummySurface$DummySurfaceThread;->init(I)Lcom/kwai/video/player/surface/DummySurface;

    move-result-object v0

    return-object v0

    :cond_1e
    move v0, v1

    goto :goto_d
.end method


# virtual methods
.method public release()V
    .registers 3

    invoke-super {p0}, Landroid/view/Surface;->release()V

    iget-object v1, p0, Lcom/kwai/video/player/surface/DummySurface;->thread:Lcom/kwai/video/player/surface/DummySurface$DummySurfaceThread;

    monitor-enter v1

    :try_start_6
    iget-boolean v0, p0, Lcom/kwai/video/player/surface/DummySurface;->threadReleased:Z

    if-nez v0, :cond_12

    iget-object v0, p0, Lcom/kwai/video/player/surface/DummySurface;->thread:Lcom/kwai/video/player/surface/DummySurface$DummySurfaceThread;

    invoke-virtual {v0}, Lcom/kwai/video/player/surface/DummySurface$DummySurfaceThread;->release()V

    const/4 v0, 0x1

    iput-boolean v0, p0, Lcom/kwai/video/player/surface/DummySurface;->threadReleased:Z

    :cond_12
    monitor-exit v1
    :try_end_13
    .catchall {:try_start_6 .. :try_end_13} :catchall_1b

    const-string v0, "DummySurface"

    const-string v1, "DummySurface released"

    invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I

    return-void

    :catchall_1b
    move-exception v0

    :try_start_1c
    monitor-exit v1
    :try_end_1d
    .catchall {:try_start_1c .. :try_end_1d} :catchall_1b

    throw v0
.end method