186 lines
4.7 KiB
Smali
186 lines
4.7 KiB
Smali
.class Landroidx/core/graphics/BitmapCompat$Api27Impl;
|
|
.super Ljava/lang/Object;
|
|
.source "SourceFile"
|
|
|
|
|
|
# annotations
|
|
.annotation build Landroidx/annotation/RequiresApi;
|
|
value = 0x1b
|
|
.end annotation
|
|
|
|
.annotation system Ldalvik/annotation/EnclosingClass;
|
|
value = Landroidx/core/graphics/BitmapCompat;
|
|
.end annotation
|
|
|
|
.annotation system Ldalvik/annotation/InnerClass;
|
|
accessFlags = 0x9
|
|
name = "Api27Impl"
|
|
.end annotation
|
|
|
|
|
|
# direct methods
|
|
.method private constructor <init>()V
|
|
.locals 0
|
|
|
|
.line 339
|
|
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public static copyBitmapIfHardware(Landroid/graphics/Bitmap;)Landroid/graphics/Bitmap;
|
|
.locals 3
|
|
|
|
.line 365
|
|
invoke-virtual {p0}, Landroid/graphics/Bitmap;->getConfig()Landroid/graphics/Bitmap$Config;
|
|
|
|
move-result-object v0
|
|
|
|
sget-object v1, Landroid/graphics/Bitmap$Config;->HARDWARE:Landroid/graphics/Bitmap$Config;
|
|
|
|
if-ne v0, v1, :cond_1
|
|
|
|
.line 366
|
|
sget-object v0, Landroid/graphics/Bitmap$Config;->ARGB_8888:Landroid/graphics/Bitmap$Config;
|
|
|
|
sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
|
|
|
|
const/16 v2, 0x1f
|
|
|
|
if-lt v1, v2, :cond_0
|
|
|
|
.line 368
|
|
invoke-static {p0}, Landroidx/core/graphics/BitmapCompat$Api31Impl;->getHardwareBitmapConfig(Landroid/graphics/Bitmap;)Landroid/graphics/Bitmap$Config;
|
|
|
|
move-result-object v0
|
|
|
|
:cond_0
|
|
const/4 v1, 0x1
|
|
|
|
.line 370
|
|
invoke-virtual {p0, v0, v1}, Landroid/graphics/Bitmap;->copy(Landroid/graphics/Bitmap$Config;Z)Landroid/graphics/Bitmap;
|
|
|
|
move-result-object p0
|
|
|
|
:cond_1
|
|
return-object p0
|
|
.end method
|
|
|
|
.method public static createBitmapWithSourceColorspace(IILandroid/graphics/Bitmap;Z)Landroid/graphics/Bitmap;
|
|
.locals 3
|
|
|
|
.line 343
|
|
invoke-virtual {p2}, Landroid/graphics/Bitmap;->getConfig()Landroid/graphics/Bitmap$Config;
|
|
|
|
move-result-object v0
|
|
|
|
.line 344
|
|
invoke-virtual {p2}, Landroid/graphics/Bitmap;->getColorSpace()Landroid/graphics/ColorSpace;
|
|
|
|
move-result-object v1
|
|
|
|
.line 345
|
|
sget-object v2, Landroid/graphics/ColorSpace$Named;->LINEAR_EXTENDED_SRGB:Landroid/graphics/ColorSpace$Named;
|
|
|
|
invoke-static {v2}, Landroid/graphics/ColorSpace;->get(Landroid/graphics/ColorSpace$Named;)Landroid/graphics/ColorSpace;
|
|
|
|
move-result-object v2
|
|
|
|
if-eqz p3, :cond_0
|
|
|
|
.line 346
|
|
invoke-virtual {p2}, Landroid/graphics/Bitmap;->getColorSpace()Landroid/graphics/ColorSpace;
|
|
|
|
move-result-object p3
|
|
|
|
invoke-virtual {p3, v2}, Landroid/graphics/ColorSpace;->equals(Ljava/lang/Object;)Z
|
|
|
|
move-result p3
|
|
|
|
if-nez p3, :cond_0
|
|
|
|
.line 348
|
|
sget-object v0, Landroid/graphics/Bitmap$Config;->RGBA_F16:Landroid/graphics/Bitmap$Config;
|
|
|
|
move-object v1, v2
|
|
|
|
goto :goto_0
|
|
|
|
.line 350
|
|
:cond_0
|
|
invoke-virtual {p2}, Landroid/graphics/Bitmap;->getConfig()Landroid/graphics/Bitmap$Config;
|
|
|
|
move-result-object p3
|
|
|
|
sget-object v2, Landroid/graphics/Bitmap$Config;->HARDWARE:Landroid/graphics/Bitmap$Config;
|
|
|
|
if-ne p3, v2, :cond_1
|
|
|
|
.line 351
|
|
sget-object v0, Landroid/graphics/Bitmap$Config;->ARGB_8888:Landroid/graphics/Bitmap$Config;
|
|
|
|
sget p3, Landroid/os/Build$VERSION;->SDK_INT:I
|
|
|
|
const/16 v2, 0x1f
|
|
|
|
if-lt p3, v2, :cond_1
|
|
|
|
.line 353
|
|
invoke-static {p2}, Landroidx/core/graphics/BitmapCompat$Api31Impl;->getHardwareBitmapConfig(Landroid/graphics/Bitmap;)Landroid/graphics/Bitmap$Config;
|
|
|
|
move-result-object v0
|
|
|
|
.line 356
|
|
:cond_1
|
|
:goto_0
|
|
invoke-virtual {p2}, Landroid/graphics/Bitmap;->hasAlpha()Z
|
|
|
|
move-result p2
|
|
|
|
invoke-static {p0, p1, v0, p2, v1}, Landroid/graphics/Bitmap;->createBitmap(IILandroid/graphics/Bitmap$Config;ZLandroid/graphics/ColorSpace;)Landroid/graphics/Bitmap;
|
|
|
|
move-result-object p0
|
|
|
|
return-object p0
|
|
.end method
|
|
|
|
.method public static isAlreadyF16AndLinear(Landroid/graphics/Bitmap;)Z
|
|
.locals 3
|
|
|
|
.line 360
|
|
sget-object v0, Landroid/graphics/ColorSpace$Named;->LINEAR_EXTENDED_SRGB:Landroid/graphics/ColorSpace$Named;
|
|
|
|
invoke-static {v0}, Landroid/graphics/ColorSpace;->get(Landroid/graphics/ColorSpace$Named;)Landroid/graphics/ColorSpace;
|
|
|
|
move-result-object v0
|
|
|
|
.line 361
|
|
invoke-virtual {p0}, Landroid/graphics/Bitmap;->getConfig()Landroid/graphics/Bitmap$Config;
|
|
|
|
move-result-object v1
|
|
|
|
sget-object v2, Landroid/graphics/Bitmap$Config;->RGBA_F16:Landroid/graphics/Bitmap$Config;
|
|
|
|
if-ne v1, v2, :cond_0
|
|
|
|
invoke-virtual {p0}, Landroid/graphics/Bitmap;->getColorSpace()Landroid/graphics/ColorSpace;
|
|
|
|
move-result-object p0
|
|
|
|
invoke-virtual {p0, v0}, Landroid/graphics/ColorSpace;->equals(Ljava/lang/Object;)Z
|
|
|
|
move-result p0
|
|
|
|
if-eqz p0, :cond_0
|
|
|
|
const/4 p0, 0x1
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
const/4 p0, 0x0
|
|
|
|
:goto_0
|
|
return p0
|
|
.end method
|