RSBlur.smali
.class public Lhurriyet/mobil/android/hurriyet/utils/blur/RSBlur;
.super Ljava/lang/Object;
.source "RSBlur.java"
# direct methods
.method public constructor <init>()V
.registers 1
.line 13
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static blur(Landroid/content/Context;Landroid/graphics/Bitmap;I)Landroid/graphics/Bitmap;
.registers 8
.annotation system Ldalvik/annotation/Throws;
value = {
Landroid/renderscript/RSRuntimeException;
}
.end annotation
const/4 v0, 0x0
.line 22
:try_start_1
invoke-static {p0}, Landroid/renderscript/RenderScript;->create(Landroid/content/Context;)Landroid/renderscript/RenderScript;
move-result-object p0
:try_end_5
.catchall {:try_start_1 .. :try_end_5} :catchall_54
.line 23
:try_start_5
new-instance v1, Landroid/renderscript/RenderScript$RSMessageHandler;
invoke-direct {v1}, Landroid/renderscript/RenderScript$RSMessageHandler;-><init>()V
invoke-virtual {p0, v1}, Landroid/renderscript/RenderScript;->setMessageHandler(Landroid/renderscript/RenderScript$RSMessageHandler;)V
.line 24
sget-object v1, Landroid/renderscript/Allocation$MipmapControl;->MIPMAP_NONE:Landroid/renderscript/Allocation$MipmapControl;
const/4 v2, 0x1
invoke-static {p0, p1, v1, v2}, Landroid/renderscript/Allocation;->createFromBitmap(Landroid/renderscript/RenderScript;Landroid/graphics/Bitmap;Landroid/renderscript/Allocation$MipmapControl;I)Landroid/renderscript/Allocation;
move-result-object v1
:try_end_14
.catchall {:try_start_5 .. :try_end_14} :catchall_4e
.line 26
:try_start_14
invoke-virtual {v1}, Landroid/renderscript/Allocation;->getType()Landroid/renderscript/Type;
move-result-object v2
invoke-static {p0, v2}, Landroid/renderscript/Allocation;->createTyped(Landroid/renderscript/RenderScript;Landroid/renderscript/Type;)Landroid/renderscript/Allocation;
move-result-object v2
:try_end_1c
.catchall {:try_start_14 .. :try_end_1c} :catchall_4b
.line 27
:try_start_1c
invoke-static {p0}, Landroid/renderscript/Element;->U8_4(Landroid/renderscript/RenderScript;)Landroid/renderscript/Element;
move-result-object v3
invoke-static {p0, v3}, Landroid/renderscript/ScriptIntrinsicBlur;->create(Landroid/renderscript/RenderScript;Landroid/renderscript/Element;)Landroid/renderscript/ScriptIntrinsicBlur;
move-result-object v0
.line 29
invoke-virtual {v0, v1}, Landroid/renderscript/ScriptIntrinsicBlur;->setInput(Landroid/renderscript/Allocation;)V
int-to-float p2, p2
.line 30
invoke-virtual {v0, p2}, Landroid/renderscript/ScriptIntrinsicBlur;->setRadius(F)V
.line 31
invoke-virtual {v0, v2}, Landroid/renderscript/ScriptIntrinsicBlur;->forEach(Landroid/renderscript/Allocation;)V
.line 32
invoke-virtual {v2, p1}, Landroid/renderscript/Allocation;->copyTo(Landroid/graphics/Bitmap;)V
:try_end_31
.catchall {:try_start_1c .. :try_end_31} :catchall_46
if-eqz p0, :cond_36
.line 35
invoke-virtual {p0}, Landroid/renderscript/RenderScript;->destroy()V
:cond_36
if-eqz v1, :cond_3b
.line 38
invoke-virtual {v1}, Landroid/renderscript/Allocation;->destroy()V
:cond_3b
if-eqz v2, :cond_40
.line 41
invoke-virtual {v2}, Landroid/renderscript/Allocation;->destroy()V
:cond_40
if-eqz v0, :cond_45
.line 44
invoke-virtual {v0}, Landroid/renderscript/ScriptIntrinsicBlur;->destroy()V
:cond_45
return-object p1
:catchall_46
move-exception p1
move-object v4, v0
move-object v0, p0
move-object p0, v4
goto :goto_58
:catchall_4b
move-exception p1
move-object v2, v0
goto :goto_51
:catchall_4e
move-exception p1
move-object v1, v0
move-object v2, v1
:goto_51
move-object v0, p0
move-object p0, v2
goto :goto_58
:catchall_54
move-exception p1
move-object p0, v0
move-object v1, p0
move-object v2, v1
:goto_58
if-eqz v0, :cond_5d
.line 35
invoke-virtual {v0}, Landroid/renderscript/RenderScript;->destroy()V
:cond_5d
if-eqz v1, :cond_62
.line 38
invoke-virtual {v1}, Landroid/renderscript/Allocation;->destroy()V
:cond_62
if-eqz v2, :cond_67
.line 41
invoke-virtual {v2}, Landroid/renderscript/Allocation;->destroy()V
:cond_67
if-eqz p0, :cond_6c
.line 44
invoke-virtual {p0}, Landroid/renderscript/ScriptIntrinsicBlur;->destroy()V
.line 46
:cond_6c
throw p1
.end method