AnimationsContainer$FramesSequenceAnimation.smali
.class public Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;
.super Ljava/lang/Object;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = "FramesSequenceAnimation"
.end annotation
# instance fields
.field private mBitmap:Landroid/graphics/Bitmap;
.field private mBitmapOptions:Landroid/graphics/BitmapFactory$Options;
.field private mDelayMillis:I
.field private mFrames:[I
.field private mHandler:Landroid/os/Handler;
.field private mIndex:I
.field private mIsRunning:Z
.field private mOnAnimationStoppedListener:Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$OnAnimationStoppedListener;
.field private mShouldRun:Z
.field private mSoftReferenceImageView:Ljava/lang/ref/SoftReference;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/ref/SoftReference",
"<",
"Landroid/widget/ImageView;",
">;"
}
.end annotation
.end field
.field final synthetic this$0:Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer;
# direct methods
.method public constructor <init>(Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer;Landroid/widget/ImageView;[IF)V
.registers 9
const/4 v3, 0x1
const/4 v1, 0x0
iput-object p1, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->this$0:Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x0
iput-object v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mBitmap:Landroid/graphics/Bitmap;
new-instance v0, Landroid/os/Handler;
invoke-direct {v0}, Landroid/os/Handler;-><init>()V
iput-object v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mHandler:Landroid/os/Handler;
iput-object p3, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mFrames:[I
const/4 v0, -0x1
iput v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mIndex:I
new-instance v0, Ljava/lang/ref/SoftReference;
invoke-direct {v0, p2}, Ljava/lang/ref/SoftReference;-><init>(Ljava/lang/Object;)V
iput-object v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mSoftReferenceImageView:Ljava/lang/ref/SoftReference;
iput-boolean v1, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mShouldRun:Z
iput-boolean v1, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mIsRunning:Z
const/high16 v0, 0x447a0000 # 1000.0f
div-float/2addr v0, p4
float-to-int v0, v0
iput v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mDelayMillis:I
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mFrames:[I
aget v0, v0, v1
invoke-virtual {p2, v0}, Landroid/widget/ImageView;->setImageResource(I)V
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0xb
if-lt v0, v1, :cond_65
invoke-virtual {p2}, Landroid/widget/ImageView;->getDrawable()Landroid/graphics/drawable/Drawable;
move-result-object v0
check-cast v0, Landroid/graphics/drawable/BitmapDrawable;
invoke-virtual {v0}, Landroid/graphics/drawable/BitmapDrawable;->getBitmap()Landroid/graphics/Bitmap;
move-result-object v0
invoke-virtual {v0}, Landroid/graphics/Bitmap;->getWidth()I
move-result v1
invoke-virtual {v0}, Landroid/graphics/Bitmap;->getHeight()I
move-result v2
invoke-virtual {v0}, Landroid/graphics/Bitmap;->getConfig()Landroid/graphics/Bitmap$Config;
move-result-object v0
invoke-static {v1, v2, v0}, Landroid/graphics/Bitmap;->createBitmap(IILandroid/graphics/Bitmap$Config;)Landroid/graphics/Bitmap;
move-result-object v0
iput-object v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mBitmap:Landroid/graphics/Bitmap;
new-instance v0, Landroid/graphics/BitmapFactory$Options;
invoke-direct {v0}, Landroid/graphics/BitmapFactory$Options;-><init>()V
iput-object v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mBitmapOptions:Landroid/graphics/BitmapFactory$Options;
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mBitmapOptions:Landroid/graphics/BitmapFactory$Options;
iget-object v1, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mBitmap:Landroid/graphics/Bitmap;
iput-object v1, v0, Landroid/graphics/BitmapFactory$Options;->inBitmap:Landroid/graphics/Bitmap;
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mBitmapOptions:Landroid/graphics/BitmapFactory$Options;
iput-boolean v3, v0, Landroid/graphics/BitmapFactory$Options;->inMutable:Z
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mBitmapOptions:Landroid/graphics/BitmapFactory$Options;
iput v3, v0, Landroid/graphics/BitmapFactory$Options;->inSampleSize:I
:cond_65
return-void
.end method
.method static synthetic access$000(Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;)Ljava/lang/ref/SoftReference;
.registers 2
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mSoftReferenceImageView:Ljava/lang/ref/SoftReference;
return-object v0
.end method
.method static synthetic access$100(Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;)Z
.registers 2
iget-boolean v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mShouldRun:Z
return v0
.end method
.method static synthetic access$202(Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;Z)Z
.registers 2
iput-boolean p1, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mIsRunning:Z
return p1
.end method
.method static synthetic access$300(Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;)Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$OnAnimationStoppedListener;
.registers 2
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mOnAnimationStoppedListener:Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$OnAnimationStoppedListener;
return-object v0
.end method
.method static synthetic access$400(Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;)I
.registers 2
iget v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mDelayMillis:I
return v0
.end method
.method static synthetic access$500(Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;)Landroid/os/Handler;
.registers 2
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mHandler:Landroid/os/Handler;
return-object v0
.end method
.method static synthetic access$600(Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;)I
.registers 2
invoke-direct {p0}, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->getNext()I
move-result v0
return v0
.end method
.method static synthetic access$700(Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;)Landroid/graphics/Bitmap;
.registers 2
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mBitmap:Landroid/graphics/Bitmap;
return-object v0
.end method
.method static synthetic access$702(Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;Landroid/graphics/Bitmap;)Landroid/graphics/Bitmap;
.registers 2
iput-object p1, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mBitmap:Landroid/graphics/Bitmap;
return-object p1
.end method
.method static synthetic access$800(Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;)Landroid/graphics/BitmapFactory$Options;
.registers 2
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mBitmapOptions:Landroid/graphics/BitmapFactory$Options;
return-object v0
.end method
.method private getNext()I
.registers 3
iget v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mIndex:I
add-int/lit8 v0, v0, 0x1
iput v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mIndex:I
iget v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mIndex:I
iget-object v1, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mFrames:[I
array-length v1, v1
if-lt v0, v1, :cond_10
const/4 v0, 0x0
iput v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mIndex:I
:cond_10
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mFrames:[I
iget v1, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mIndex:I
aget v0, v0, v1
return v0
.end method
# virtual methods
.method public declared-synchronized start()V
.registers 3
monitor-enter p0
const/4 v0, 0x1
:try_start_2
iput-boolean v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mShouldRun:Z
iget-boolean v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mIsRunning:Z
:try_end_6
.catchall {:try_start_2 .. :try_end_6} :catchall_15
if-eqz v0, :cond_a
:goto_8
monitor-exit p0
return-void
:cond_a
:try_start_a
new-instance v0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation$1;
invoke-direct {v0, p0}, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation$1;-><init>(Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;)V
iget-object v1, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mHandler:Landroid/os/Handler;
invoke-virtual {v1, v0}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
:try_end_14
.catchall {:try_start_a .. :try_end_14} :catchall_15
goto :goto_8
:catchall_15
move-exception v0
monitor-exit p0
throw v0
.end method
.method public declared-synchronized stop()V
.registers 2
monitor-enter p0
const/4 v0, 0x0
:try_start_2
iput-boolean v0, p0, Lcom/sdk/orion/ui/baselibrary/utils/AnimationsContainer$FramesSequenceAnimation;->mShouldRun:Z
:try_end_4
.catchall {:try_start_2 .. :try_end_4} :catchall_6
monitor-exit p0
return-void
:catchall_6
move-exception v0
monitor-exit p0
throw v0
.end method