tmap/smali/androidx/core/view/WindowInsetsCompat$a.smali
2022-06-10 21:38:30 +09:00

265 lines
6.8 KiB
Smali

.class public Landroidx/core/view/WindowInsetsCompat$a;
.super Ljava/lang/Object;
.source "WindowInsetsCompat.java"
# annotations
.annotation build Landroid/annotation/SuppressLint;
value = {
"SoonBlockedPrivateApi"
}
.end annotation
.annotation build Landroidx/annotation/RequiresApi;
value = 0x15
.end annotation
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/core/view/WindowInsetsCompat;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "a"
.end annotation
# static fields
.field public static a:Ljava/lang/reflect/Field;
.field public static b:Ljava/lang/reflect/Field;
.field public static c:Ljava/lang/reflect/Field;
.field public static d:Z
# direct methods
.method public static constructor <clinit>()V
.locals 3
.line 1
:try_start_0
const-class v0, Landroid/view/View;
const-string v1, "mAttachInfo"
invoke-virtual {v0, v1}, Ljava/lang/Class;->getDeclaredField(Ljava/lang/String;)Ljava/lang/reflect/Field;
move-result-object v0
sput-object v0, Landroidx/core/view/WindowInsetsCompat$a;->a:Ljava/lang/reflect/Field;
const/4 v1, 0x1
.line 2
invoke-virtual {v0, v1}, Ljava/lang/reflect/Field;->setAccessible(Z)V
const-string v0, "android.view.View$AttachInfo"
.line 3
invoke-static {v0}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v0
const-string v2, "mStableInsets"
.line 4
invoke-virtual {v0, v2}, Ljava/lang/Class;->getDeclaredField(Ljava/lang/String;)Ljava/lang/reflect/Field;
move-result-object v2
sput-object v2, Landroidx/core/view/WindowInsetsCompat$a;->b:Ljava/lang/reflect/Field;
.line 5
invoke-virtual {v2, v1}, Ljava/lang/reflect/Field;->setAccessible(Z)V
const-string v2, "mContentInsets"
.line 6
invoke-virtual {v0, v2}, Ljava/lang/Class;->getDeclaredField(Ljava/lang/String;)Ljava/lang/reflect/Field;
move-result-object v0
sput-object v0, Landroidx/core/view/WindowInsetsCompat$a;->c:Ljava/lang/reflect/Field;
.line 7
invoke-virtual {v0, v1}, Ljava/lang/reflect/Field;->setAccessible(Z)V
.line 8
sput-boolean v1, Landroidx/core/view/WindowInsetsCompat$a;->d:Z
:try_end_0
.catch Ljava/lang/ReflectiveOperationException; {:try_start_0 .. :try_end_0} :catch_0
goto :goto_0
:catch_0
move-exception v0
const-string v1, "Failed to get visible insets from AttachInfo "
.line 9
invoke-static {v1}, Landroid/support/v4/media/d;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v0}, Ljava/lang/ReflectiveOperationException;->getMessage()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
const-string v2, "WindowInsetsCompat"
invoke-static {v2, v1, v0}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
:goto_0
return-void
.end method
.method public constructor <init>()V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static a(Landroid/view/View;)Landroidx/core/view/WindowInsetsCompat;
.locals 4
.param p0 # Landroid/view/View;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/Nullable;
.end annotation
.line 1
sget-boolean v0, Landroidx/core/view/WindowInsetsCompat$a;->d:Z
const/4 v1, 0x0
if-eqz v0, :cond_1
invoke-virtual {p0}, Landroid/view/View;->isAttachedToWindow()Z
move-result v0
if-nez v0, :cond_0
goto :goto_0
.line 2
:cond_0
invoke-virtual {p0}, Landroid/view/View;->getRootView()Landroid/view/View;
move-result-object v0
.line 3
:try_start_0
sget-object v2, Landroidx/core/view/WindowInsetsCompat$a;->a:Ljava/lang/reflect/Field;
invoke-virtual {v2, v0}, Ljava/lang/reflect/Field;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
if-eqz v0, :cond_1
.line 4
sget-object v2, Landroidx/core/view/WindowInsetsCompat$a;->b:Ljava/lang/reflect/Field;
invoke-virtual {v2, v0}, Ljava/lang/reflect/Field;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroid/graphics/Rect;
.line 5
sget-object v3, Landroidx/core/view/WindowInsetsCompat$a;->c:Ljava/lang/reflect/Field;
invoke-virtual {v3, v0}, Ljava/lang/reflect/Field;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/graphics/Rect;
if-eqz v2, :cond_1
if-eqz v0, :cond_1
.line 6
new-instance v3, Landroidx/core/view/WindowInsetsCompat$b;
invoke-direct {v3}, Landroidx/core/view/WindowInsetsCompat$b;-><init>()V
.line 7
invoke-static {v2}, Lc1/l;->e(Landroid/graphics/Rect;)Lc1/l;
move-result-object v2
invoke-virtual {v3, v2}, Landroidx/core/view/WindowInsetsCompat$b;->f(Lc1/l;)Landroidx/core/view/WindowInsetsCompat$b;
move-result-object v2
.line 8
invoke-static {v0}, Lc1/l;->e(Landroid/graphics/Rect;)Lc1/l;
move-result-object v0
invoke-virtual {v2, v0}, Landroidx/core/view/WindowInsetsCompat$b;->h(Lc1/l;)Landroidx/core/view/WindowInsetsCompat$b;
move-result-object v0
.line 9
invoke-virtual {v0}, Landroidx/core/view/WindowInsetsCompat$b;->a()Landroidx/core/view/WindowInsetsCompat;
move-result-object v0
.line 10
invoke-virtual {v0, v0}, Landroidx/core/view/WindowInsetsCompat;->H(Landroidx/core/view/WindowInsetsCompat;)V
.line 11
invoke-virtual {p0}, Landroid/view/View;->getRootView()Landroid/view/View;
move-result-object p0
invoke-virtual {v0, p0}, Landroidx/core/view/WindowInsetsCompat;->d(Landroid/view/View;)V
:try_end_0
.catch Ljava/lang/IllegalAccessException; {:try_start_0 .. :try_end_0} :catch_0
return-object v0
:catch_0
move-exception p0
const-string v0, "Failed to get insets from AttachInfo. "
.line 12
invoke-static {v0}, Landroid/support/v4/media/d;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {p0}, Ljava/lang/IllegalAccessException;->getMessage()Ljava/lang/String;
move-result-object v2
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
const-string v2, "WindowInsetsCompat"
invoke-static {v2, v0, p0}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
:cond_1
:goto_0
return-object v1
.end method