Add Discord APKTool decompilation (Smali source for modding)

- Imported from https://github.com/supermegamestre/Project-Real-Resurrection-3
- APKTool decompilation (Smali bytecode) for modding and rebuilding APK
- Supports both 32-bit (armeabi-v7a) and 64-bit (arm64-v8a) architectures
- Includes full Smali source, resources, and native libraries
- Ready to rebuild APK after modifications with apktool b command
- Added comprehensive README-apktool.md with modding guide

This branch complements the JADX branches:
- Use JADX (main/discord-community) to UNDERSTAND code (readable Java)
- Use APKTool (this branch) to MODIFY and REBUILD APK (editable Smali)

Total: 44,417 files, 538.51 MB Smali source code
This commit is contained in:
2026-02-18 16:13:44 -08:00
parent c080f0d97f
commit f3960ee359
44288 changed files with 10998761 additions and 0 deletions

View File

@@ -0,0 +1,62 @@
.class Landroidx/core/provider/CallbackWrapper$1;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/lang/Runnable;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/core/provider/CallbackWrapper;->onTypefaceRetrieved(Landroid/graphics/Typeface;)V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# instance fields
.field final synthetic this$0:Landroidx/core/provider/CallbackWrapper;
.field final synthetic val$callback:Landroidx/core/provider/FontsContractCompat$FontRequestCallback;
.field final synthetic val$typeface:Landroid/graphics/Typeface;
# direct methods
.method public constructor <init>(Landroidx/core/provider/CallbackWrapper;Landroidx/core/provider/FontsContractCompat$FontRequestCallback;Landroid/graphics/Typeface;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
iput-object p1, p0, Landroidx/core/provider/CallbackWrapper$1;->this$0:Landroidx/core/provider/CallbackWrapper;
iput-object p2, p0, Landroidx/core/provider/CallbackWrapper$1;->val$callback:Landroidx/core/provider/FontsContractCompat$FontRequestCallback;
iput-object p3, p0, Landroidx/core/provider/CallbackWrapper$1;->val$typeface:Landroid/graphics/Typeface;
.line 62
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public run()V
.locals 2
iget-object v0, p0, Landroidx/core/provider/CallbackWrapper$1;->val$callback:Landroidx/core/provider/FontsContractCompat$FontRequestCallback;
iget-object v1, p0, Landroidx/core/provider/CallbackWrapper$1;->val$typeface:Landroid/graphics/Typeface;
.line 65
invoke-virtual {v0, v1}, Landroidx/core/provider/FontsContractCompat$FontRequestCallback;->onTypefaceRetrieved(Landroid/graphics/Typeface;)V
return-void
.end method

View File

@@ -0,0 +1,62 @@
.class Landroidx/core/provider/CallbackWrapper$2;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/lang/Runnable;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/core/provider/CallbackWrapper;->onTypefaceRequestFailed(I)V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# instance fields
.field final synthetic this$0:Landroidx/core/provider/CallbackWrapper;
.field final synthetic val$callback:Landroidx/core/provider/FontsContractCompat$FontRequestCallback;
.field final synthetic val$reason:I
# direct methods
.method public constructor <init>(Landroidx/core/provider/CallbackWrapper;Landroidx/core/provider/FontsContractCompat$FontRequestCallback;I)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
iput-object p1, p0, Landroidx/core/provider/CallbackWrapper$2;->this$0:Landroidx/core/provider/CallbackWrapper;
iput-object p2, p0, Landroidx/core/provider/CallbackWrapper$2;->val$callback:Landroidx/core/provider/FontsContractCompat$FontRequestCallback;
iput p3, p0, Landroidx/core/provider/CallbackWrapper$2;->val$reason:I
.line 75
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public run()V
.locals 2
iget-object v0, p0, Landroidx/core/provider/CallbackWrapper$2;->val$callback:Landroidx/core/provider/FontsContractCompat$FontRequestCallback;
iget v1, p0, Landroidx/core/provider/CallbackWrapper$2;->val$reason:I
.line 78
invoke-virtual {v0, v1}, Landroidx/core/provider/FontsContractCompat$FontRequestCallback;->onTypefaceRequestFailed(I)V
return-void
.end method

View File

@@ -0,0 +1,130 @@
.class Landroidx/core/provider/CallbackWrapper;
.super Ljava/lang/Object;
.source "SourceFile"
# instance fields
.field private final mCallback:Landroidx/core/provider/FontsContractCompat$FontRequestCallback;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end field
.field private final mExecutor:Ljava/util/concurrent/Executor;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end field
# direct methods
.method public constructor <init>(Landroidx/core/provider/FontsContractCompat$FontRequestCallback;)V
.locals 1
.param p1 # Landroidx/core/provider/FontsContractCompat$FontRequestCallback;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 54
invoke-static {}, Landroidx/core/provider/CalleeHandler;->create()Landroid/os/Handler;
move-result-object v0
invoke-static {v0}, Landroidx/core/provider/RequestExecutor;->createHandlerExecutor(Landroid/os/Handler;)Ljava/util/concurrent/Executor;
move-result-object v0
invoke-direct {p0, p1, v0}, Landroidx/core/provider/CallbackWrapper;-><init>(Landroidx/core/provider/FontsContractCompat$FontRequestCallback;Ljava/util/concurrent/Executor;)V
return-void
.end method
.method public constructor <init>(Landroidx/core/provider/FontsContractCompat$FontRequestCallback;Ljava/util/concurrent/Executor;)V
.locals 0
.param p1 # Landroidx/core/provider/FontsContractCompat$FontRequestCallback;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Ljava/util/concurrent/Executor;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 45
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/core/provider/CallbackWrapper;->mCallback:Landroidx/core/provider/FontsContractCompat$FontRequestCallback;
iput-object p2, p0, Landroidx/core/provider/CallbackWrapper;->mExecutor:Ljava/util/concurrent/Executor;
return-void
.end method
.method private onTypefaceRequestFailed(I)V
.locals 3
iget-object v0, p0, Landroidx/core/provider/CallbackWrapper;->mCallback:Landroidx/core/provider/FontsContractCompat$FontRequestCallback;
iget-object v1, p0, Landroidx/core/provider/CallbackWrapper;->mExecutor:Ljava/util/concurrent/Executor;
.line 75
new-instance v2, Landroidx/core/provider/CallbackWrapper$2;
invoke-direct {v2, p0, v0, p1}, Landroidx/core/provider/CallbackWrapper$2;-><init>(Landroidx/core/provider/CallbackWrapper;Landroidx/core/provider/FontsContractCompat$FontRequestCallback;I)V
invoke-interface {v1, v2}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V
return-void
.end method
.method private onTypefaceRetrieved(Landroid/graphics/Typeface;)V
.locals 3
.param p1 # Landroid/graphics/Typeface;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
iget-object v0, p0, Landroidx/core/provider/CallbackWrapper;->mCallback:Landroidx/core/provider/FontsContractCompat$FontRequestCallback;
iget-object v1, p0, Landroidx/core/provider/CallbackWrapper;->mExecutor:Ljava/util/concurrent/Executor;
.line 62
new-instance v2, Landroidx/core/provider/CallbackWrapper$1;
invoke-direct {v2, p0, v0, p1}, Landroidx/core/provider/CallbackWrapper$1;-><init>(Landroidx/core/provider/CallbackWrapper;Landroidx/core/provider/FontsContractCompat$FontRequestCallback;Landroid/graphics/Typeface;)V
invoke-interface {v1, v2}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V
return-void
.end method
# virtual methods
.method public onTypefaceResult(Landroidx/core/provider/FontRequestWorker$TypefaceResult;)V
.locals 1
.param p1 # Landroidx/core/provider/FontRequestWorker$TypefaceResult;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 87
invoke-virtual {p1}, Landroidx/core/provider/FontRequestWorker$TypefaceResult;->isSuccess()Z
move-result v0
if-eqz v0, :cond_0
.line 88
iget-object p1, p1, Landroidx/core/provider/FontRequestWorker$TypefaceResult;->mTypeface:Landroid/graphics/Typeface;
invoke-direct {p0, p1}, Landroidx/core/provider/CallbackWrapper;->onTypefaceRetrieved(Landroid/graphics/Typeface;)V
goto :goto_0
.line 90
:cond_0
iget p1, p1, Landroidx/core/provider/FontRequestWorker$TypefaceResult;->mResult:I
invoke-direct {p0, p1}, Landroidx/core/provider/CallbackWrapper;->onTypefaceRequestFailed(I)V
:goto_0
return-void
.end method

View File

@@ -0,0 +1,47 @@
.class Landroidx/core/provider/CalleeHandler;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method private constructor <init>()V
.locals 0
.line 26
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static create()Landroid/os/Handler;
.locals 2
.annotation build Landroidx/annotation/NonNull;
.end annotation
.line 36
invoke-static {}, Landroid/os/Looper;->myLooper()Landroid/os/Looper;
move-result-object v0
if-nez v0, :cond_0
.line 37
new-instance v0, Landroid/os/Handler;
invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper;
move-result-object v1
invoke-direct {v0, v1}, Landroid/os/Handler;-><init>(Landroid/os/Looper;)V
goto :goto_0
.line 39
:cond_0
new-instance v0, Landroid/os/Handler;
invoke-direct {v0}, Landroid/os/Handler;-><init>()V
:goto_0
return-object v0
.end method

View File

@@ -0,0 +1,29 @@
.class public final Landroidx/core/provider/DocumentsContractCompat$DocumentCompat;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/core/provider/DocumentsContractCompat;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = "DocumentCompat"
.end annotation
# static fields
.field public static final FLAG_VIRTUAL_DOCUMENT:I = 0x200
# direct methods
.method private constructor <init>()V
.locals 0
.line 55
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method

View File

@@ -0,0 +1,128 @@
.class Landroidx/core/provider/DocumentsContractCompat$DocumentsContractApi21Impl;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Landroidx/annotation/RequiresApi;
value = 0x15
.end annotation
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/core/provider/DocumentsContractCompat;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "DocumentsContractApi21Impl"
.end annotation
# direct methods
.method private constructor <init>()V
.locals 0
.line 275
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static buildChildDocumentsUri(Ljava/lang/String;Ljava/lang/String;)Landroid/net/Uri;
.locals 0
.line 256
invoke-static {p0, p1}, Landroid/provider/DocumentsContract;->buildChildDocumentsUri(Ljava/lang/String;Ljava/lang/String;)Landroid/net/Uri;
move-result-object p0
return-object p0
.end method
.method public static buildChildDocumentsUriUsingTree(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
.locals 0
.line 260
invoke-static {p0, p1}, Landroid/provider/DocumentsContract;->buildChildDocumentsUriUsingTree(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
move-result-object p0
return-object p0
.end method
.method public static buildDocumentUriUsingTree(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
.locals 0
.line 252
invoke-static {p0, p1}, Landroid/provider/DocumentsContract;->buildDocumentUriUsingTree(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
move-result-object p0
return-object p0
.end method
.method public static buildTreeDocumentUri(Ljava/lang/String;Ljava/lang/String;)Landroid/net/Uri;
.locals 0
.line 248
invoke-static {p0, p1}, Landroid/provider/DocumentsContract;->buildTreeDocumentUri(Ljava/lang/String;Ljava/lang/String;)Landroid/net/Uri;
move-result-object p0
return-object p0
.end method
.method public static createDocument(Landroid/content/ContentResolver;Landroid/net/Uri;Ljava/lang/String;Ljava/lang/String;)Landroid/net/Uri;
.locals 0
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/FileNotFoundException;
}
.end annotation
.line 265
invoke-static {p0, p1, p2, p3}, Landroid/provider/DocumentsContract;->createDocument(Landroid/content/ContentResolver;Landroid/net/Uri;Ljava/lang/String;Ljava/lang/String;)Landroid/net/Uri;
move-result-object p0
return-object p0
.end method
.method public static getTreeDocumentId(Landroid/net/Uri;)Ljava/lang/String;
.locals 0
.line 244
invoke-static {p0}, Landroid/provider/DocumentsContract;->getTreeDocumentId(Landroid/net/Uri;)Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method public static renameDocument(Landroid/content/ContentResolver;Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
.locals 0
.param p0 # Landroid/content/ContentResolver;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Landroid/net/Uri;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/FileNotFoundException;
}
.end annotation
.line 272
invoke-static {p0, p1, p2}, Landroid/provider/DocumentsContract;->renameDocument(Landroid/content/ContentResolver;Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
move-result-object p0
return-object p0
.end method

View File

@@ -0,0 +1,60 @@
.class Landroidx/core/provider/DocumentsContractCompat$DocumentsContractApi24Impl;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Landroidx/annotation/RequiresApi;
value = 0x18
.end annotation
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/core/provider/DocumentsContractCompat;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "DocumentsContractApi24Impl"
.end annotation
# direct methods
.method private constructor <init>()V
.locals 0
.line 290
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static isTreeUri(Landroid/net/Uri;)Z
.locals 0
.param p0 # Landroid/net/Uri;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 282
invoke-static {p0}, Landroid/provider/DocumentsContract;->isTreeUri(Landroid/net/Uri;)Z
move-result p0
return p0
.end method
.method public static removeDocument(Landroid/content/ContentResolver;Landroid/net/Uri;Landroid/net/Uri;)Z
.locals 0
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/FileNotFoundException;
}
.end annotation
.line 287
invoke-static {p0, p1, p2}, Landroid/provider/DocumentsContract;->removeDocument(Landroid/content/ContentResolver;Landroid/net/Uri;Landroid/net/Uri;)Z
move-result p0
return p0
.end method

View File

@@ -0,0 +1,295 @@
.class public final Landroidx/core/provider/DocumentsContractCompat;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/core/provider/DocumentsContractCompat$DocumentsContractApi24Impl;,
Landroidx/core/provider/DocumentsContractCompat$DocumentsContractApi21Impl;,
Landroidx/core/provider/DocumentsContractCompat$DocumentCompat;
}
.end annotation
# static fields
.field private static final PATH_TREE:Ljava/lang/String; = "tree"
# direct methods
.method private constructor <init>()V
.locals 0
.line 294
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static buildChildDocumentsUri(Ljava/lang/String;Ljava/lang/String;)Landroid/net/Uri;
.locals 0
.param p0 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Ljava/lang/String;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.annotation build Landroidx/annotation/Nullable;
.end annotation
.line 161
invoke-static {p0, p1}, Landroidx/core/provider/DocumentsContractCompat$DocumentsContractApi21Impl;->buildChildDocumentsUri(Ljava/lang/String;Ljava/lang/String;)Landroid/net/Uri;
move-result-object p0
return-object p0
.end method
.method public static buildChildDocumentsUriUsingTree(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
.locals 0
.param p0 # Landroid/net/Uri;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/Nullable;
.end annotation
.line 177
invoke-static {p0, p1}, Landroidx/core/provider/DocumentsContractCompat$DocumentsContractApi21Impl;->buildChildDocumentsUriUsingTree(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
move-result-object p0
return-object p0
.end method
.method public static buildDocumentUri(Ljava/lang/String;Ljava/lang/String;)Landroid/net/Uri;
.locals 0
.param p0 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/Nullable;
.end annotation
.line 120
invoke-static {p0, p1}, Landroid/provider/DocumentsContract;->buildDocumentUri(Ljava/lang/String;Ljava/lang/String;)Landroid/net/Uri;
move-result-object p0
return-object p0
.end method
.method public static buildDocumentUriUsingTree(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
.locals 0
.param p0 # Landroid/net/Uri;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/Nullable;
.end annotation
.line 131
invoke-static {p0, p1}, Landroidx/core/provider/DocumentsContractCompat$DocumentsContractApi21Impl;->buildDocumentUriUsingTree(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
move-result-object p0
return-object p0
.end method
.method public static buildTreeDocumentUri(Ljava/lang/String;Ljava/lang/String;)Landroid/net/Uri;
.locals 0
.param p0 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/Nullable;
.end annotation
.line 145
invoke-static {p0, p1}, Landroidx/core/provider/DocumentsContractCompat$DocumentsContractApi21Impl;->buildTreeDocumentUri(Ljava/lang/String;Ljava/lang/String;)Landroid/net/Uri;
move-result-object p0
return-object p0
.end method
.method public static createDocument(Landroid/content/ContentResolver;Landroid/net/Uri;Ljava/lang/String;Ljava/lang/String;)Landroid/net/Uri;
.locals 0
.param p0 # Landroid/content/ContentResolver;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Landroid/net/Uri;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p3 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/Nullable;
.end annotation
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/FileNotFoundException;
}
.end annotation
.line 197
invoke-static {p0, p1, p2, p3}, Landroidx/core/provider/DocumentsContractCompat$DocumentsContractApi21Impl;->createDocument(Landroid/content/ContentResolver;Landroid/net/Uri;Ljava/lang/String;Ljava/lang/String;)Landroid/net/Uri;
move-result-object p0
return-object p0
.end method
.method public static getDocumentId(Landroid/net/Uri;)Ljava/lang/String;
.locals 0
.param p0 # Landroid/net/Uri;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/Nullable;
.end annotation
.line 95
invoke-static {p0}, Landroid/provider/DocumentsContract;->getDocumentId(Landroid/net/Uri;)Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method public static getTreeDocumentId(Landroid/net/Uri;)Ljava/lang/String;
.locals 0
.param p0 # Landroid/net/Uri;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/Nullable;
.end annotation
.line 106
invoke-static {p0}, Landroidx/core/provider/DocumentsContractCompat$DocumentsContractApi21Impl;->getTreeDocumentId(Landroid/net/Uri;)Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method public static isDocumentUri(Landroid/content/Context;Landroid/net/Uri;)Z
.locals 0
.param p0 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Landroid/net/Uri;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.line 68
invoke-static {p0, p1}, Landroid/provider/DocumentsContract;->isDocumentUri(Landroid/content/Context;Landroid/net/Uri;)Z
move-result p0
return p0
.end method
.method public static isTreeUri(Landroid/net/Uri;)Z
.locals 0
.param p0 # Landroid/net/Uri;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 84
invoke-static {p0}, Landroidx/core/provider/DocumentsContractCompat$DocumentsContractApi24Impl;->isTreeUri(Landroid/net/Uri;)Z
move-result p0
return p0
.end method
.method public static removeDocument(Landroid/content/ContentResolver;Landroid/net/Uri;Landroid/net/Uri;)Z
.locals 0
.param p0 # Landroid/content/ContentResolver;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Landroid/net/Uri;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Landroid/net/Uri;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/FileNotFoundException;
}
.end annotation
.line 234
invoke-static {p0, p1, p2}, Landroidx/core/provider/DocumentsContractCompat$DocumentsContractApi24Impl;->removeDocument(Landroid/content/ContentResolver;Landroid/net/Uri;Landroid/net/Uri;)Z
move-result p0
return p0
.end method
.method public static renameDocument(Landroid/content/ContentResolver;Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
.locals 0
.param p0 # Landroid/content/ContentResolver;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Landroid/net/Uri;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/Nullable;
.end annotation
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/FileNotFoundException;
}
.end annotation
.line 212
invoke-static {p0, p1, p2}, Landroidx/core/provider/DocumentsContractCompat$DocumentsContractApi21Impl;->renameDocument(Landroid/content/ContentResolver;Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
move-result-object p0
return-object p0
.end method

View File

@@ -0,0 +1,33 @@
.class public final synthetic Landroidx/core/provider/FontProvider$$ExternalSyntheticLambda0;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/util/Comparator;
# direct methods
.method public synthetic constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public final compare(Ljava/lang/Object;Ljava/lang/Object;)I
.locals 0
.line 0
check-cast p1, [B
check-cast p2, [B
invoke-static {p1, p2}, Landroidx/core/provider/FontProvider;->$r8$lambda$Wi4h7Y1RxUrqSUowKMegxTqKvJo([B[B)I
move-result p1
return p1
.end method

View File

@@ -0,0 +1,35 @@
.class interface abstract Landroidx/core/provider/FontProvider$ContentQueryWrapper;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/core/provider/FontProvider;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x609
name = "ContentQueryWrapper"
.end annotation
# direct methods
.method public static make(Landroid/content/Context;Landroid/net/Uri;)Landroidx/core/provider/FontProvider$ContentQueryWrapper;
.locals 1
.line 342
new-instance v0, Landroidx/core/provider/FontProvider$ContentQueryWrapperApi24Impl;
invoke-direct {v0, p0, p1}, Landroidx/core/provider/FontProvider$ContentQueryWrapperApi24Impl;-><init>(Landroid/content/Context;Landroid/net/Uri;)V
return-object v0
.end method
# virtual methods
.method public abstract close()V
.end method
.method public abstract query(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Landroid/os/CancellationSignal;)Landroid/database/Cursor;
.end method

View File

@@ -0,0 +1,106 @@
.class Landroidx/core/provider/FontProvider$ContentQueryWrapperApi16Impl;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Landroidx/core/provider/FontProvider$ContentQueryWrapper;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/core/provider/FontProvider;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "ContentQueryWrapperApi16Impl"
.end annotation
# instance fields
.field private final mClient:Landroid/content/ContentProviderClient;
# direct methods
.method public constructor <init>(Landroid/content/Context;Landroid/net/Uri;)V
.locals 0
.line 349
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 350
invoke-virtual {p1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object p1
invoke-virtual {p1, p2}, Landroid/content/ContentResolver;->acquireUnstableContentProviderClient(Landroid/net/Uri;)Landroid/content/ContentProviderClient;
move-result-object p1
iput-object p1, p0, Landroidx/core/provider/FontProvider$ContentQueryWrapperApi16Impl;->mClient:Landroid/content/ContentProviderClient;
return-void
.end method
# virtual methods
.method public close()V
.locals 1
iget-object v0, p0, Landroidx/core/provider/FontProvider$ContentQueryWrapperApi16Impl;->mClient:Landroid/content/ContentProviderClient;
if-eqz v0, :cond_0
.line 371
invoke-virtual {v0}, Landroid/content/ContentProviderClient;->release()Z
:cond_0
return-void
.end method
.method public query(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Landroid/os/CancellationSignal;)Landroid/database/Cursor;
.locals 8
iget-object v0, p0, Landroidx/core/provider/FontProvider$ContentQueryWrapperApi16Impl;->mClient:Landroid/content/ContentProviderClient;
const/4 v7, 0x0
if-nez v0, :cond_0
return-object v7
:cond_0
move-object v1, p1
move-object v2, p2
move-object v3, p3
move-object v4, p4
move-object v5, p5
move-object v6, p6
.line 360
:try_start_0
invoke-virtual/range {v0 .. v6}, Landroid/content/ContentProviderClient;->query(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Landroid/os/CancellationSignal;)Landroid/database/Cursor;
move-result-object p1
:try_end_0
.catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0
return-object p1
:catch_0
move-exception p1
const-string p2, "FontsProvider"
const-string p3, "Unable to query the content provider"
.line 363
invoke-static {p2, p3, p1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
return-object v7
.end method

View File

@@ -0,0 +1,110 @@
.class Landroidx/core/provider/FontProvider$ContentQueryWrapperApi24Impl;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Landroidx/core/provider/FontProvider$ContentQueryWrapper;
# annotations
.annotation build Landroidx/annotation/RequiresApi;
value = 0x18
.end annotation
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/core/provider/FontProvider;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "ContentQueryWrapperApi24Impl"
.end annotation
# instance fields
.field private final mClient:Landroid/content/ContentProviderClient;
# direct methods
.method public constructor <init>(Landroid/content/Context;Landroid/net/Uri;)V
.locals 0
.line 379
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 380
invoke-virtual {p1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object p1
invoke-virtual {p1, p2}, Landroid/content/ContentResolver;->acquireUnstableContentProviderClient(Landroid/net/Uri;)Landroid/content/ContentProviderClient;
move-result-object p1
iput-object p1, p0, Landroidx/core/provider/FontProvider$ContentQueryWrapperApi24Impl;->mClient:Landroid/content/ContentProviderClient;
return-void
.end method
# virtual methods
.method public close()V
.locals 1
iget-object v0, p0, Landroidx/core/provider/FontProvider$ContentQueryWrapperApi24Impl;->mClient:Landroid/content/ContentProviderClient;
if-eqz v0, :cond_0
.line 401
invoke-virtual {v0}, Landroid/content/ContentProviderClient;->close()V
:cond_0
return-void
.end method
.method public query(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Landroid/os/CancellationSignal;)Landroid/database/Cursor;
.locals 8
iget-object v0, p0, Landroidx/core/provider/FontProvider$ContentQueryWrapperApi24Impl;->mClient:Landroid/content/ContentProviderClient;
const/4 v7, 0x0
if-nez v0, :cond_0
return-object v7
:cond_0
move-object v1, p1
move-object v2, p2
move-object v3, p3
move-object v4, p4
move-object v5, p5
move-object v6, p6
.line 390
:try_start_0
invoke-virtual/range {v0 .. v6}, Landroid/content/ContentProviderClient;->query(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Landroid/os/CancellationSignal;)Landroid/database/Cursor;
move-result-object p1
:try_end_0
.catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0
return-object p1
:catch_0
move-exception p1
const-string p2, "FontsProvider"
const-string p3, "Unable to query the content provider"
.line 393
invoke-static {p2, p3, p1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
return-object v7
.end method

View File

@@ -0,0 +1,144 @@
.class Landroidx/core/provider/FontProvider$ProviderCacheKey;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/core/provider/FontProvider;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "ProviderCacheKey"
.end annotation
# instance fields
.field mAuthority:Ljava/lang/String;
.field mCertificates:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Ljava/util/List<",
"[B>;>;"
}
.end annotation
.end field
.field mPackageName:Ljava/lang/String;
# direct methods
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"Ljava/lang/String;",
"Ljava/util/List<",
"Ljava/util/List<",
"[B>;>;)V"
}
.end annotation
.line 94
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/core/provider/FontProvider$ProviderCacheKey;->mAuthority:Ljava/lang/String;
iput-object p2, p0, Landroidx/core/provider/FontProvider$ProviderCacheKey;->mPackageName:Ljava/lang/String;
iput-object p3, p0, Landroidx/core/provider/FontProvider$ProviderCacheKey;->mCertificates:Ljava/util/List;
return-void
.end method
# virtual methods
.method public equals(Ljava/lang/Object;)Z
.locals 4
const/4 v0, 0x1
if-ne p0, p1, :cond_0
return v0
.line 103
:cond_0
instance-of v1, p1, Landroidx/core/provider/FontProvider$ProviderCacheKey;
const/4 v2, 0x0
if-nez v1, :cond_1
return v2
.line 104
:cond_1
check-cast p1, Landroidx/core/provider/FontProvider$ProviderCacheKey;
iget-object v1, p0, Landroidx/core/provider/FontProvider$ProviderCacheKey;->mAuthority:Ljava/lang/String;
.line 105
iget-object v3, p1, Landroidx/core/provider/FontProvider$ProviderCacheKey;->mAuthority:Ljava/lang/String;
invoke-static {v1, v3}, Ljava/util/Objects;->equals(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_2
iget-object v1, p0, Landroidx/core/provider/FontProvider$ProviderCacheKey;->mPackageName:Ljava/lang/String;
iget-object v3, p1, Landroidx/core/provider/FontProvider$ProviderCacheKey;->mPackageName:Ljava/lang/String;
invoke-static {v1, v3}, Ljava/util/Objects;->equals(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_2
iget-object v1, p0, Landroidx/core/provider/FontProvider$ProviderCacheKey;->mCertificates:Ljava/util/List;
iget-object p1, p1, Landroidx/core/provider/FontProvider$ProviderCacheKey;->mCertificates:Ljava/util/List;
.line 106
invoke-static {v1, p1}, Ljava/util/Objects;->equals(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_2
goto :goto_0
:cond_2
move v0, v2
:goto_0
return v0
.end method
.method public hashCode()I
.locals 3
iget-object v0, p0, Landroidx/core/provider/FontProvider$ProviderCacheKey;->mAuthority:Ljava/lang/String;
iget-object v1, p0, Landroidx/core/provider/FontProvider$ProviderCacheKey;->mPackageName:Ljava/lang/String;
iget-object v2, p0, Landroidx/core/provider/FontProvider$ProviderCacheKey;->mCertificates:Ljava/util/List;
filled-new-array {v0, v1, v2}, [Ljava/lang/Object;
move-result-object v0
.line 112
invoke-static {v0}, Ljava/util/Objects;->hash([Ljava/lang/Object;)I
move-result v0
return v0
.end method

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,476 @@
.class public final Landroidx/core/provider/FontRequest;
.super Ljava/lang/Object;
.source "SourceFile"
# instance fields
.field private final mCertificates:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Ljava/util/List<",
"[B>;>;"
}
.end annotation
.end field
.field private final mCertificatesArray:I
.field private final mIdentifier:Ljava/lang/String;
.field private final mProviderAuthority:Ljava/lang/String;
.field private final mProviderPackage:Ljava/lang/String;
.field private final mQuery:Ljava/lang/String;
# direct methods
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V
.locals 1
.param p1 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p3 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p4 # I
.annotation build Landroidx/annotation/ArrayRes;
.end annotation
.end param
.line 78
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 79
invoke-static {p1}, Landroidx/core/util/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/String;
iput-object v0, p0, Landroidx/core/provider/FontRequest;->mProviderAuthority:Ljava/lang/String;
.line 80
invoke-static {p2}, Landroidx/core/util/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/String;
iput-object v0, p0, Landroidx/core/provider/FontRequest;->mProviderPackage:Ljava/lang/String;
.line 81
invoke-static {p3}, Landroidx/core/util/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/String;
iput-object v0, p0, Landroidx/core/provider/FontRequest;->mQuery:Ljava/lang/String;
const/4 v0, 0x0
iput-object v0, p0, Landroidx/core/provider/FontRequest;->mCertificates:Ljava/util/List;
if-eqz p4, :cond_0
const/4 v0, 0x1
goto :goto_0
:cond_0
const/4 v0, 0x0
.line 83
:goto_0
invoke-static {v0}, Landroidx/core/util/Preconditions;->checkArgument(Z)V
iput p4, p0, Landroidx/core/provider/FontRequest;->mCertificatesArray:I
.line 85
invoke-direct {p0, p1, p2, p3}, Landroidx/core/provider/FontRequest;->createIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
iput-object p1, p0, Landroidx/core/provider/FontRequest;->mIdentifier:Ljava/lang/String;
return-void
.end method
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)V
.locals 1
.param p1 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p3 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p4 # Ljava/util/List;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"Ljava/lang/String;",
"Ljava/lang/String;",
"Ljava/util/List<",
"Ljava/util/List<",
"[B>;>;)V"
}
.end annotation
.line 57
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 58
invoke-static {p1}, Landroidx/core/util/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/String;
iput-object v0, p0, Landroidx/core/provider/FontRequest;->mProviderAuthority:Ljava/lang/String;
.line 59
invoke-static {p2}, Landroidx/core/util/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/String;
iput-object v0, p0, Landroidx/core/provider/FontRequest;->mProviderPackage:Ljava/lang/String;
.line 60
invoke-static {p3}, Landroidx/core/util/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/String;
iput-object v0, p0, Landroidx/core/provider/FontRequest;->mQuery:Ljava/lang/String;
.line 61
invoke-static {p4}, Landroidx/core/util/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p4
check-cast p4, Ljava/util/List;
iput-object p4, p0, Landroidx/core/provider/FontRequest;->mCertificates:Ljava/util/List;
const/4 p4, 0x0
iput p4, p0, Landroidx/core/provider/FontRequest;->mCertificatesArray:I
.line 63
invoke-direct {p0, p1, p2, p3}, Landroidx/core/provider/FontRequest;->createIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
iput-object p1, p0, Landroidx/core/provider/FontRequest;->mIdentifier:Ljava/lang/String;
return-void
.end method
.method private createIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
.locals 1
.param p1 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p3 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 93
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p1, "-"
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
return-object p1
.end method
# virtual methods
.method public getCertificates()Ljava/util/List;
.locals 1
.annotation build Landroidx/annotation/Nullable;
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/List<",
"Ljava/util/List<",
"[B>;>;"
}
.end annotation
iget-object v0, p0, Landroidx/core/provider/FontRequest;->mCertificates:Ljava/util/List;
return-object v0
.end method
.method public getCertificatesArrayResId()I
.locals 1
.annotation build Landroidx/annotation/ArrayRes;
.end annotation
iget v0, p0, Landroidx/core/provider/FontRequest;->mCertificatesArray:I
return v0
.end method
.method public getId()Ljava/lang/String;
.locals 1
.annotation build Landroidx/annotation/NonNull;
.end annotation
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
iget-object v0, p0, Landroidx/core/provider/FontRequest;->mIdentifier:Ljava/lang/String;
return-object v0
.end method
.method public getIdentifier()Ljava/lang/String;
.locals 1
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation runtime Ljava/lang/Deprecated;
.end annotation
iget-object v0, p0, Landroidx/core/provider/FontRequest;->mIdentifier:Ljava/lang/String;
return-object v0
.end method
.method public getProviderAuthority()Ljava/lang/String;
.locals 1
.annotation build Landroidx/annotation/NonNull;
.end annotation
iget-object v0, p0, Landroidx/core/provider/FontRequest;->mProviderAuthority:Ljava/lang/String;
return-object v0
.end method
.method public getProviderPackage()Ljava/lang/String;
.locals 1
.annotation build Landroidx/annotation/NonNull;
.end annotation
iget-object v0, p0, Landroidx/core/provider/FontRequest;->mProviderPackage:Ljava/lang/String;
return-object v0
.end method
.method public getQuery()Ljava/lang/String;
.locals 1
.annotation build Landroidx/annotation/NonNull;
.end annotation
iget-object v0, p0, Landroidx/core/provider/FontRequest;->mQuery:Ljava/lang/String;
return-object v0
.end method
.method public toString()Ljava/lang/String;
.locals 6
.line 166
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
.line 167
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "FontRequest {mProviderAuthority: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v2, p0, Landroidx/core/provider/FontRequest;->mProviderAuthority:Ljava/lang/String;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v2, ", mProviderPackage: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v2, p0, Landroidx/core/provider/FontRequest;->mProviderPackage:Ljava/lang/String;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v2, ", mQuery: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v2, p0, Landroidx/core/provider/FontRequest;->mQuery:Ljava/lang/String;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v2, ", mCertificates:"
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
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const/4 v1, 0x0
move v2, v1
:goto_0
iget-object v3, p0, Landroidx/core/provider/FontRequest;->mCertificates:Ljava/util/List;
.line 172
invoke-interface {v3}, Ljava/util/List;->size()I
move-result v3
if-ge v2, v3, :cond_1
const-string v3, " ["
.line 173
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v3, p0, Landroidx/core/provider/FontRequest;->mCertificates:Ljava/util/List;
.line 174
invoke-interface {v3, v2}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v3
check-cast v3, Ljava/util/List;
move v4, v1
.line 175
:goto_1
invoke-interface {v3}, Ljava/util/List;->size()I
move-result v5
if-ge v4, v5, :cond_0
const-string v5, " \""
.line 176
invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 177
invoke-interface {v3, v4}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v5
check-cast v5, [B
.line 178
invoke-static {v5, v1}, Landroid/util/Base64;->encodeToString([BI)Ljava/lang/String;
move-result-object v5
invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v5, "\""
.line 179
invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
add-int/lit8 v4, v4, 0x1
goto :goto_1
:cond_0
const-string v3, " ]"
.line 181
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
add-int/lit8 v2, v2, 0x1
goto :goto_0
:cond_1
const-string v1, "}"
.line 183
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 184
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "mCertificatesArray: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v2, p0, Landroidx/core/provider/FontRequest;->mCertificatesArray:I
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 185
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View File

@@ -0,0 +1,20 @@
.class public abstract synthetic Landroidx/core/provider/FontRequestWorker$$ExternalSyntheticBackport0;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method public static synthetic m(Ljava/lang/Object;)Ljava/util/List;
.locals 0
.line 0
filled-new-array {p0}, [Ljava/lang/Object;
move-result-object p0
invoke-static {p0}, Landroidx/core/graphics/TypefaceCompat$$ExternalSyntheticBackport2;->m([Ljava/lang/Object;)Ljava/util/List;
move-result-object p0
return-object p0
.end method

View File

@@ -0,0 +1,20 @@
.class public abstract synthetic Landroidx/core/provider/FontRequestWorker$$ExternalSyntheticBackport1;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method public static synthetic m(Ljava/lang/Object;)Ljava/util/List;
.locals 0
.line 0
filled-new-array {p0}, [Ljava/lang/Object;
move-result-object p0
invoke-static {p0}, Landroidx/core/graphics/TypefaceCompat$$ExternalSyntheticBackport2;->m([Ljava/lang/Object;)Ljava/util/List;
move-result-object p0
return-object p0
.end method

View File

@@ -0,0 +1,20 @@
.class public abstract synthetic Landroidx/core/provider/FontRequestWorker$1$$ExternalSyntheticBackport0;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method public static synthetic m(Ljava/lang/Object;)Ljava/util/List;
.locals 0
.line 0
filled-new-array {p0}, [Ljava/lang/Object;
move-result-object p0
invoke-static {p0}, Landroidx/core/graphics/TypefaceCompat$$ExternalSyntheticBackport2;->m([Ljava/lang/Object;)Ljava/util/List;
move-result-object p0
return-object p0
.end method

View File

@@ -0,0 +1,101 @@
.class Landroidx/core/provider/FontRequestWorker$1;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/util/concurrent/Callable;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/core/provider/FontRequestWorker;->requestFontSync(Landroid/content/Context;Landroidx/core/provider/FontRequest;Landroidx/core/provider/CallbackWrapper;II)Landroid/graphics/Typeface;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Object;",
"Ljava/util/concurrent/Callable<",
"Landroidx/core/provider/FontRequestWorker$TypefaceResult;",
">;"
}
.end annotation
# instance fields
.field final synthetic val$context:Landroid/content/Context;
.field final synthetic val$id:Ljava/lang/String;
.field final synthetic val$request:Landroidx/core/provider/FontRequest;
.field final synthetic val$style:I
# direct methods
.method public constructor <init>(Ljava/lang/String;Landroid/content/Context;Landroidx/core/provider/FontRequest;I)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
iput-object p1, p0, Landroidx/core/provider/FontRequestWorker$1;->val$id:Ljava/lang/String;
iput-object p2, p0, Landroidx/core/provider/FontRequestWorker$1;->val$context:Landroid/content/Context;
iput-object p3, p0, Landroidx/core/provider/FontRequestWorker$1;->val$request:Landroidx/core/provider/FontRequest;
iput p4, p0, Landroidx/core/provider/FontRequestWorker$1;->val$style:I
.line 124
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public call()Landroidx/core/provider/FontRequestWorker$TypefaceResult;
.locals 4
iget-object v0, p0, Landroidx/core/provider/FontRequestWorker$1;->val$id:Ljava/lang/String;
iget-object v1, p0, Landroidx/core/provider/FontRequestWorker$1;->val$context:Landroid/content/Context;
iget-object v2, p0, Landroidx/core/provider/FontRequestWorker$1;->val$request:Landroidx/core/provider/FontRequest;
.line 127
invoke-static {v2}, Landroidx/core/provider/FontRequestWorker$1$$ExternalSyntheticBackport0;->m(Ljava/lang/Object;)Ljava/util/List;
move-result-object v2
iget v3, p0, Landroidx/core/provider/FontRequestWorker$1;->val$style:I
invoke-static {v0, v1, v2, v3}, Landroidx/core/provider/FontRequestWorker;->getFontSync(Ljava/lang/String;Landroid/content/Context;Ljava/util/List;I)Landroidx/core/provider/FontRequestWorker$TypefaceResult;
move-result-object v0
return-object v0
.end method
.method public bridge synthetic call()Ljava/lang/Object;
.locals 1
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/Exception;
}
.end annotation
.line 124
invoke-virtual {p0}, Landroidx/core/provider/FontRequestWorker$1;->call()Landroidx/core/provider/FontRequestWorker$TypefaceResult;
move-result-object v0
return-object v0
.end method

View File

@@ -0,0 +1,82 @@
.class Landroidx/core/provider/FontRequestWorker$2;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Landroidx/core/util/Consumer;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/core/provider/FontRequestWorker;->requestFontAsync(Landroid/content/Context;Ljava/util/List;ILjava/util/concurrent/Executor;Landroidx/core/provider/CallbackWrapper;)Landroid/graphics/Typeface;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Object;",
"Landroidx/core/util/Consumer<",
"Landroidx/core/provider/FontRequestWorker$TypefaceResult;",
">;"
}
.end annotation
# instance fields
.field final synthetic val$callback:Landroidx/core/provider/CallbackWrapper;
# direct methods
.method public constructor <init>(Landroidx/core/provider/CallbackWrapper;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
iput-object p1, p0, Landroidx/core/provider/FontRequestWorker$2;->val$callback:Landroidx/core/provider/CallbackWrapper;
.line 177
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public accept(Landroidx/core/provider/FontRequestWorker$TypefaceResult;)V
.locals 1
if-nez p1, :cond_0
.line 181
new-instance p1, Landroidx/core/provider/FontRequestWorker$TypefaceResult;
const/4 v0, -0x3
invoke-direct {p1, v0}, Landroidx/core/provider/FontRequestWorker$TypefaceResult;-><init>(I)V
:cond_0
iget-object v0, p0, Landroidx/core/provider/FontRequestWorker$2;->val$callback:Landroidx/core/provider/CallbackWrapper;
.line 183
invoke-virtual {v0, p1}, Landroidx/core/provider/CallbackWrapper;->onTypefaceResult(Landroidx/core/provider/FontRequestWorker$TypefaceResult;)V
return-void
.end method
.method public bridge synthetic accept(Ljava/lang/Object;)V
.locals 0
.line 177
check-cast p1, Landroidx/core/provider/FontRequestWorker$TypefaceResult;
invoke-virtual {p0, p1}, Landroidx/core/provider/FontRequestWorker$2;->accept(Landroidx/core/provider/FontRequestWorker$TypefaceResult;)V
return-void
.end method

View File

@@ -0,0 +1,110 @@
.class Landroidx/core/provider/FontRequestWorker$3;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/util/concurrent/Callable;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/core/provider/FontRequestWorker;->requestFontAsync(Landroid/content/Context;Ljava/util/List;ILjava/util/concurrent/Executor;Landroidx/core/provider/CallbackWrapper;)Landroid/graphics/Typeface;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Object;",
"Ljava/util/concurrent/Callable<",
"Landroidx/core/provider/FontRequestWorker$TypefaceResult;",
">;"
}
.end annotation
# instance fields
.field final synthetic val$context:Landroid/content/Context;
.field final synthetic val$id:Ljava/lang/String;
.field final synthetic val$requests:Ljava/util/List;
.field final synthetic val$style:I
# direct methods
.method public constructor <init>(Ljava/lang/String;Landroid/content/Context;Ljava/util/List;I)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
iput-object p1, p0, Landroidx/core/provider/FontRequestWorker$3;->val$id:Ljava/lang/String;
iput-object p2, p0, Landroidx/core/provider/FontRequestWorker$3;->val$context:Landroid/content/Context;
iput-object p3, p0, Landroidx/core/provider/FontRequestWorker$3;->val$requests:Ljava/util/List;
iput p4, p0, Landroidx/core/provider/FontRequestWorker$3;->val$style:I
.line 200
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public call()Landroidx/core/provider/FontRequestWorker$TypefaceResult;
.locals 4
:try_start_0
iget-object v0, p0, Landroidx/core/provider/FontRequestWorker$3;->val$id:Ljava/lang/String;
iget-object v1, p0, Landroidx/core/provider/FontRequestWorker$3;->val$context:Landroid/content/Context;
iget-object v2, p0, Landroidx/core/provider/FontRequestWorker$3;->val$requests:Ljava/util/List;
iget v3, p0, Landroidx/core/provider/FontRequestWorker$3;->val$style:I
.line 204
invoke-static {v0, v1, v2, v3}, Landroidx/core/provider/FontRequestWorker;->getFontSync(Ljava/lang/String;Landroid/content/Context;Ljava/util/List;I)Landroidx/core/provider/FontRequestWorker$TypefaceResult;
move-result-object v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
return-object v0
.line 206
:catchall_0
new-instance v0, Landroidx/core/provider/FontRequestWorker$TypefaceResult;
const/4 v1, -0x3
invoke-direct {v0, v1}, Landroidx/core/provider/FontRequestWorker$TypefaceResult;-><init>(I)V
return-object v0
.end method
.method public bridge synthetic call()Ljava/lang/Object;
.locals 1
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/Exception;
}
.end annotation
.line 200
invoke-virtual {p0}, Landroidx/core/provider/FontRequestWorker$3;->call()Landroidx/core/provider/FontRequestWorker$TypefaceResult;
move-result-object v0
return-object v0
.end method

View File

@@ -0,0 +1,140 @@
.class Landroidx/core/provider/FontRequestWorker$4;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Landroidx/core/util/Consumer;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/core/provider/FontRequestWorker;->requestFontAsync(Landroid/content/Context;Ljava/util/List;ILjava/util/concurrent/Executor;Landroidx/core/provider/CallbackWrapper;)Landroid/graphics/Typeface;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Object;",
"Landroidx/core/util/Consumer<",
"Landroidx/core/provider/FontRequestWorker$TypefaceResult;",
">;"
}
.end annotation
# instance fields
.field final synthetic val$id:Ljava/lang/String;
# direct methods
.method public constructor <init>(Ljava/lang/String;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
iput-object p1, p0, Landroidx/core/provider/FontRequestWorker$4;->val$id:Ljava/lang/String;
.line 212
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public accept(Landroidx/core/provider/FontRequestWorker$TypefaceResult;)V
.locals 4
.line 216
sget-object v0, Landroidx/core/provider/FontRequestWorker;->LOCK:Ljava/lang/Object;
monitor-enter v0
.line 217
:try_start_0
sget-object v1, Landroidx/core/provider/FontRequestWorker;->PENDING_REPLIES:Landroidx/collection/SimpleArrayMap;
iget-object v2, p0, Landroidx/core/provider/FontRequestWorker$4;->val$id:Ljava/lang/String;
invoke-virtual {v1, v2}, Landroidx/collection/SimpleArrayMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/util/ArrayList;
if-nez v2, :cond_0
.line 219
monitor-exit v0
return-void
:catchall_0
move-exception p1
goto :goto_1
:cond_0
iget-object v3, p0, Landroidx/core/provider/FontRequestWorker$4;->val$id:Ljava/lang/String;
.line 221
invoke-virtual {v1, v3}, Landroidx/collection/SimpleArrayMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
.line 222
monitor-exit v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
const/4 v0, 0x0
.line 223
:goto_0
invoke-virtual {v2}, Ljava/util/ArrayList;->size()I
move-result v1
if-ge v0, v1, :cond_1
.line 224
invoke-virtual {v2, v0}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroidx/core/util/Consumer;
invoke-interface {v1, p1}, Landroidx/core/util/Consumer;->accept(Ljava/lang/Object;)V
add-int/lit8 v0, v0, 0x1
goto :goto_0
:cond_1
return-void
.line 222
:goto_1
:try_start_1
monitor-exit v0
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
throw p1
.end method
.method public bridge synthetic accept(Ljava/lang/Object;)V
.locals 0
.line 212
check-cast p1, Landroidx/core/provider/FontRequestWorker$TypefaceResult;
invoke-virtual {p0, p1}, Landroidx/core/provider/FontRequestWorker$4;->accept(Landroidx/core/provider/FontRequestWorker$TypefaceResult;)V
return-void
.end method

View File

@@ -0,0 +1,86 @@
.class final Landroidx/core/provider/FontRequestWorker$TypefaceResult;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/core/provider/FontRequestWorker;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = "TypefaceResult"
.end annotation
# instance fields
.field final mResult:I
.field final mTypeface:Landroid/graphics/Typeface;
# direct methods
.method public constructor <init>(I)V
.locals 1
.line 333
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x0
iput-object v0, p0, Landroidx/core/provider/FontRequestWorker$TypefaceResult;->mTypeface:Landroid/graphics/Typeface;
iput p1, p0, Landroidx/core/provider/FontRequestWorker$TypefaceResult;->mResult:I
return-void
.end method
.method public constructor <init>(Landroid/graphics/Typeface;)V
.locals 0
.param p1 # Landroid/graphics/Typeface;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroid/annotation/SuppressLint;
value = {
"WrongConstant"
}
.end annotation
.line 339
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/core/provider/FontRequestWorker$TypefaceResult;->mTypeface:Landroid/graphics/Typeface;
const/4 p1, 0x0
iput p1, p0, Landroidx/core/provider/FontRequestWorker$TypefaceResult;->mResult:I
return-void
.end method
# virtual methods
.method public isSuccess()Z
.locals 1
.annotation build Landroid/annotation/SuppressLint;
value = {
"WrongConstant"
}
.end annotation
iget v0, p0, Landroidx/core/provider/FontRequestWorker$TypefaceResult;->mResult:I
if-nez v0, :cond_0
const/4 v0, 0x1
goto :goto_0
:cond_0
const/4 v0, 0x0
:goto_0
return v0
.end method

View File

@@ -0,0 +1,717 @@
.class Landroidx/core/provider/FontRequestWorker;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/core/provider/FontRequestWorker$TypefaceResult;
}
.end annotation
# static fields
.field private static final DEFAULT_EXECUTOR_SERVICE:Ljava/util/concurrent/ExecutorService;
.field static final LOCK:Ljava/lang/Object;
.field static final PENDING_REPLIES:Landroidx/collection/SimpleArrayMap;
.annotation build Landroidx/annotation/GuardedBy;
value = "LOCK"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroidx/collection/SimpleArrayMap<",
"Ljava/lang/String;",
"Ljava/util/ArrayList<",
"Landroidx/core/util/Consumer<",
"Landroidx/core/provider/FontRequestWorker$TypefaceResult;",
">;>;>;"
}
.end annotation
.end field
.field static final sTypefaceCache:Landroidx/collection/LruCache;
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroidx/collection/LruCache<",
"Ljava/lang/String;",
"Landroid/graphics/Typeface;",
">;"
}
.end annotation
.end field
# direct methods
.method static constructor <clinit>()V
.locals 3
.line 64
new-instance v0, Landroidx/collection/LruCache;
const/16 v1, 0x10
invoke-direct {v0, v1}, Landroidx/collection/LruCache;-><init>(I)V
sput-object v0, Landroidx/core/provider/FontRequestWorker;->sTypefaceCache:Landroidx/collection/LruCache;
const/16 v0, 0xa
const/16 v1, 0x2710
const-string v2, "fonts-androidx"
.line 67
invoke-static {v2, v0, v1}, Landroidx/core/provider/RequestExecutor;->createDefaultExecutor(Ljava/lang/String;II)Ljava/util/concurrent/ThreadPoolExecutor;
move-result-object v0
sput-object v0, Landroidx/core/provider/FontRequestWorker;->DEFAULT_EXECUTOR_SERVICE:Ljava/util/concurrent/ExecutorService;
.line 74
new-instance v0, Ljava/lang/Object;
invoke-direct {v0}, Ljava/lang/Object;-><init>()V
sput-object v0, Landroidx/core/provider/FontRequestWorker;->LOCK:Ljava/lang/Object;
.line 78
new-instance v0, Landroidx/collection/SimpleArrayMap;
invoke-direct {v0}, Landroidx/collection/SimpleArrayMap;-><init>()V
sput-object v0, Landroidx/core/provider/FontRequestWorker;->PENDING_REPLIES:Landroidx/collection/SimpleArrayMap;
return-void
.end method
.method private constructor <init>()V
.locals 0
.line 59
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method private static createCacheId(Ljava/util/List;I)Ljava/lang/String;
.locals 3
.param p0 # Ljava/util/List;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/List<",
"Landroidx/core/provider/FontRequest;",
">;I)",
"Ljava/lang/String;"
}
.end annotation
.line 233
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const/4 v1, 0x0
.line 234
:goto_0
invoke-interface {p0}, Ljava/util/List;->size()I
move-result v2
if-ge v1, v2, :cond_1
.line 235
invoke-interface {p0, v1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroidx/core/provider/FontRequest;
invoke-virtual {v2}, Landroidx/core/provider/FontRequest;->getId()Ljava/lang/String;
move-result-object v2
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v2, "-"
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
.line 236
invoke-interface {p0}, Ljava/util/List;->size()I
move-result v2
add-int/lit8 v2, v2, -0x1
if-ge v1, v2, :cond_0
const-string v2, ";"
.line 237
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
:cond_0
add-int/lit8 v1, v1, 0x1
goto :goto_0
.line 241
:cond_1
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method private static getFontFamilyResultStatus(Landroidx/core/provider/FontsContractCompat$FontFamilyResult;)I
.locals 5
.param p0 # Landroidx/core/provider/FontsContractCompat$FontFamilyResult;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroid/annotation/SuppressLint;
value = {
"WrongConstant"
}
.end annotation
.line 301
invoke-virtual {p0}, Landroidx/core/provider/FontsContractCompat$FontFamilyResult;->getStatusCode()I
move-result v0
const/4 v1, -0x3
const/4 v2, 0x1
if-eqz v0, :cond_1
.line 302
invoke-virtual {p0}, Landroidx/core/provider/FontsContractCompat$FontFamilyResult;->getStatusCode()I
move-result p0
if-eq p0, v2, :cond_0
return v1
:cond_0
const/4 p0, -0x2
return p0
.line 309
:cond_1
invoke-virtual {p0}, Landroidx/core/provider/FontsContractCompat$FontFamilyResult;->getFonts()[Landroidx/core/provider/FontsContractCompat$FontInfo;
move-result-object p0
if-eqz p0, :cond_5
.line 310
array-length v0, p0
if-nez v0, :cond_2
goto :goto_2
.line 314
:cond_2
array-length v0, p0
const/4 v2, 0x0
move v3, v2
:goto_0
if-ge v3, v0, :cond_5
aget-object v4, p0, v3
.line 317
invoke-virtual {v4}, Landroidx/core/provider/FontsContractCompat$FontInfo;->getResultCode()I
move-result v4
if-eqz v4, :cond_4
if-gez v4, :cond_3
goto :goto_1
:cond_3
move v1, v4
:goto_1
return v1
:cond_4
add-int/lit8 v3, v3, 0x1
goto :goto_0
:cond_5
:goto_2
return v2
.end method
.method public static getFontSync(Ljava/lang/String;Landroid/content/Context;Ljava/util/List;I)Landroidx/core/provider/FontRequestWorker$TypefaceResult;
.locals 4
.param p0 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Ljava/util/List;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/NonNull;
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"Landroid/content/Context;",
"Ljava/util/List<",
"Landroidx/core/provider/FontRequest;",
">;I)",
"Landroidx/core/provider/FontRequestWorker$TypefaceResult;"
}
.end annotation
const-string v0, "getFontSync"
.line 253
invoke-static {v0}, Landroidx/tracing/Trace;->beginSection(Ljava/lang/String;)V
:try_start_0
sget-object v0, Landroidx/core/provider/FontRequestWorker;->sTypefaceCache:Landroidx/collection/LruCache;
.line 256
invoke-virtual {v0, p0}, Landroidx/collection/LruCache;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroid/graphics/Typeface;
if-eqz v1, :cond_0
.line 258
new-instance p0, Landroidx/core/provider/FontRequestWorker$TypefaceResult;
invoke-direct {p0, v1}, Landroidx/core/provider/FontRequestWorker$TypefaceResult;-><init>(Landroid/graphics/Typeface;)V
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 293
invoke-static {}, Landroidx/tracing/Trace;->endSection()V
return-object p0
:catchall_0
move-exception p0
goto :goto_1
:cond_0
const/4 v1, 0x0
.line 263
:try_start_1
invoke-static {p1, p2, v1}, Landroidx/core/provider/FontProvider;->getFontFamilyResult(Landroid/content/Context;Ljava/util/List;Landroid/os/CancellationSignal;)Landroidx/core/provider/FontsContractCompat$FontFamilyResult;
move-result-object p2
:try_end_1
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_1 .. :try_end_1} :catch_0
.catchall {:try_start_1 .. :try_end_1} :catchall_0
.line 268
:try_start_2
invoke-static {p2}, Landroidx/core/provider/FontRequestWorker;->getFontFamilyResultStatus(Landroidx/core/provider/FontsContractCompat$FontFamilyResult;)I
move-result v2
if-eqz v2, :cond_1
.line 270
new-instance p0, Landroidx/core/provider/FontRequestWorker$TypefaceResult;
invoke-direct {p0, v2}, Landroidx/core/provider/FontRequestWorker$TypefaceResult;-><init>(I)V
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_0
.line 293
invoke-static {}, Landroidx/tracing/Trace;->endSection()V
return-object p0
.line 274
:cond_1
:try_start_3
invoke-virtual {p2}, Landroidx/core/provider/FontsContractCompat$FontFamilyResult;->hasFallback()Z
move-result v2
if-eqz v2, :cond_2
sget v2, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v3, 0x1d
if-lt v2, v3, :cond_2
.line 276
invoke-virtual {p2}, Landroidx/core/provider/FontsContractCompat$FontFamilyResult;->getFontsWithFallbacks()Ljava/util/List;
move-result-object p2
.line 275
invoke-static {p1, v1, p2, p3}, Landroidx/core/graphics/TypefaceCompat;->createFromFontInfoWithFallback(Landroid/content/Context;Landroid/os/CancellationSignal;Ljava/util/List;I)Landroid/graphics/Typeface;
move-result-object p1
goto :goto_0
.line 280
:cond_2
invoke-virtual {p2}, Landroidx/core/provider/FontsContractCompat$FontFamilyResult;->getFonts()[Landroidx/core/provider/FontsContractCompat$FontInfo;
move-result-object p2
.line 279
invoke-static {p1, v1, p2, p3}, Landroidx/core/graphics/TypefaceCompat;->createFromFontInfo(Landroid/content/Context;Landroid/os/CancellationSignal;[Landroidx/core/provider/FontsContractCompat$FontInfo;I)Landroid/graphics/Typeface;
move-result-object p1
:goto_0
if-eqz p1, :cond_3
.line 286
invoke-virtual {v0, p0, p1}, Landroidx/collection/LruCache;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.line 287
new-instance p0, Landroidx/core/provider/FontRequestWorker$TypefaceResult;
invoke-direct {p0, p1}, Landroidx/core/provider/FontRequestWorker$TypefaceResult;-><init>(Landroid/graphics/Typeface;)V
:try_end_3
.catchall {:try_start_3 .. :try_end_3} :catchall_0
.line 293
invoke-static {}, Landroidx/tracing/Trace;->endSection()V
return-object p0
.line 289
:cond_3
:try_start_4
new-instance p0, Landroidx/core/provider/FontRequestWorker$TypefaceResult;
const/4 p1, -0x3
invoke-direct {p0, p1}, Landroidx/core/provider/FontRequestWorker$TypefaceResult;-><init>(I)V
:try_end_4
.catchall {:try_start_4 .. :try_end_4} :catchall_0
.line 293
invoke-static {}, Landroidx/tracing/Trace;->endSection()V
return-object p0
.line 265
:catch_0
:try_start_5
new-instance p0, Landroidx/core/provider/FontRequestWorker$TypefaceResult;
const/4 p1, -0x1
invoke-direct {p0, p1}, Landroidx/core/provider/FontRequestWorker$TypefaceResult;-><init>(I)V
:try_end_5
.catchall {:try_start_5 .. :try_end_5} :catchall_0
.line 293
invoke-static {}, Landroidx/tracing/Trace;->endSection()V
return-object p0
:goto_1
invoke-static {}, Landroidx/tracing/Trace;->endSection()V
.line 295
throw p0
.end method
.method public static requestFontAsync(Landroid/content/Context;Ljava/util/List;ILjava/util/concurrent/Executor;Landroidx/core/provider/CallbackWrapper;)Landroid/graphics/Typeface;
.locals 5
.param p0 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Ljava/util/List;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p3 # Ljava/util/concurrent/Executor;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.param p4 # Landroidx/core/provider/CallbackWrapper;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Ljava/util/List<",
"Landroidx/core/provider/FontRequest;",
">;I",
"Ljava/util/concurrent/Executor;",
"Landroidx/core/provider/CallbackWrapper;",
")",
"Landroid/graphics/Typeface;"
}
.end annotation
.line 170
invoke-static {p1, p2}, Landroidx/core/provider/FontRequestWorker;->createCacheId(Ljava/util/List;I)Ljava/lang/String;
move-result-object v0
sget-object v1, Landroidx/core/provider/FontRequestWorker;->sTypefaceCache:Landroidx/collection/LruCache;
.line 171
invoke-virtual {v1, v0}, Landroidx/collection/LruCache;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroid/graphics/Typeface;
if-eqz v1, :cond_0
.line 173
new-instance p0, Landroidx/core/provider/FontRequestWorker$TypefaceResult;
invoke-direct {p0, v1}, Landroidx/core/provider/FontRequestWorker$TypefaceResult;-><init>(Landroid/graphics/Typeface;)V
invoke-virtual {p4, p0}, Landroidx/core/provider/CallbackWrapper;->onTypefaceResult(Landroidx/core/provider/FontRequestWorker$TypefaceResult;)V
return-object v1
.line 177
:cond_0
new-instance v1, Landroidx/core/provider/FontRequestWorker$2;
invoke-direct {v1, p4}, Landroidx/core/provider/FontRequestWorker$2;-><init>(Landroidx/core/provider/CallbackWrapper;)V
sget-object p4, Landroidx/core/provider/FontRequestWorker;->LOCK:Ljava/lang/Object;
.line 187
monitor-enter p4
:try_start_0
sget-object v2, Landroidx/core/provider/FontRequestWorker;->PENDING_REPLIES:Landroidx/collection/SimpleArrayMap;
.line 188
invoke-virtual {v2, v0}, Landroidx/collection/SimpleArrayMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v3
check-cast v3, Ljava/util/ArrayList;
const/4 v4, 0x0
if-eqz v3, :cond_1
.line 192
invoke-virtual {v3, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 193
monitor-exit p4
return-object v4
:catchall_0
move-exception p0
goto :goto_0
.line 195
:cond_1
new-instance v3, Ljava/util/ArrayList;
invoke-direct {v3}, Ljava/util/ArrayList;-><init>()V
.line 196
invoke-virtual {v3, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 197
invoke-virtual {v2, v0, v3}, Landroidx/collection/SimpleArrayMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.line 198
monitor-exit p4
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 200
new-instance p4, Landroidx/core/provider/FontRequestWorker$3;
invoke-direct {p4, v0, p0, p1, p2}, Landroidx/core/provider/FontRequestWorker$3;-><init>(Ljava/lang/String;Landroid/content/Context;Ljava/util/List;I)V
if-nez p3, :cond_2
sget-object p3, Landroidx/core/provider/FontRequestWorker;->DEFAULT_EXECUTOR_SERVICE:Ljava/util/concurrent/ExecutorService;
.line 212
:cond_2
new-instance p0, Landroidx/core/provider/FontRequestWorker$4;
invoke-direct {p0, v0}, Landroidx/core/provider/FontRequestWorker$4;-><init>(Ljava/lang/String;)V
invoke-static {p3, p4, p0}, Landroidx/core/provider/RequestExecutor;->execute(Ljava/util/concurrent/Executor;Ljava/util/concurrent/Callable;Landroidx/core/util/Consumer;)V
return-object v4
.line 198
:goto_0
:try_start_1
monitor-exit p4
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
throw p0
.end method
.method public static requestFontSync(Landroid/content/Context;Landroidx/core/provider/FontRequest;Landroidx/core/provider/CallbackWrapper;II)Landroid/graphics/Typeface;
.locals 2
.param p0 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Landroidx/core/provider/FontRequest;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Landroidx/core/provider/CallbackWrapper;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 108
invoke-static {p1}, Landroidx/core/provider/FontRequestWorker$$ExternalSyntheticBackport0;->m(Ljava/lang/Object;)Ljava/util/List;
move-result-object v0
invoke-static {v0, p3}, Landroidx/core/provider/FontRequestWorker;->createCacheId(Ljava/util/List;I)Ljava/lang/String;
move-result-object v0
sget-object v1, Landroidx/core/provider/FontRequestWorker;->sTypefaceCache:Landroidx/collection/LruCache;
.line 109
invoke-virtual {v1, v0}, Landroidx/collection/LruCache;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroid/graphics/Typeface;
if-eqz v1, :cond_0
.line 111
new-instance p0, Landroidx/core/provider/FontRequestWorker$TypefaceResult;
invoke-direct {p0, v1}, Landroidx/core/provider/FontRequestWorker$TypefaceResult;-><init>(Landroid/graphics/Typeface;)V
invoke-virtual {p2, p0}, Landroidx/core/provider/CallbackWrapper;->onTypefaceResult(Landroidx/core/provider/FontRequestWorker$TypefaceResult;)V
return-object v1
:cond_0
const/4 v1, -0x1
if-ne p4, v1, :cond_1
.line 118
invoke-static {p1}, Landroidx/core/provider/FontRequestWorker$$ExternalSyntheticBackport1;->m(Ljava/lang/Object;)Ljava/util/List;
move-result-object p1
invoke-static {v0, p0, p1, p3}, Landroidx/core/provider/FontRequestWorker;->getFontSync(Ljava/lang/String;Landroid/content/Context;Ljava/util/List;I)Landroidx/core/provider/FontRequestWorker$TypefaceResult;
move-result-object p0
.line 120
invoke-virtual {p2, p0}, Landroidx/core/provider/CallbackWrapper;->onTypefaceResult(Landroidx/core/provider/FontRequestWorker$TypefaceResult;)V
.line 121
iget-object p0, p0, Landroidx/core/provider/FontRequestWorker$TypefaceResult;->mTypeface:Landroid/graphics/Typeface;
return-object p0
.line 124
:cond_1
new-instance v1, Landroidx/core/provider/FontRequestWorker$1;
invoke-direct {v1, v0, p0, p1, p3}, Landroidx/core/provider/FontRequestWorker$1;-><init>(Ljava/lang/String;Landroid/content/Context;Landroidx/core/provider/FontRequest;I)V
:try_start_0
sget-object p0, Landroidx/core/provider/FontRequestWorker;->DEFAULT_EXECUTOR_SERVICE:Ljava/util/concurrent/ExecutorService;
.line 132
invoke-static {p0, v1, p4}, Landroidx/core/provider/RequestExecutor;->submit(Ljava/util/concurrent/ExecutorService;Ljava/util/concurrent/Callable;I)Ljava/lang/Object;
move-result-object p0
check-cast p0, Landroidx/core/provider/FontRequestWorker$TypefaceResult;
.line 137
invoke-virtual {p2, p0}, Landroidx/core/provider/CallbackWrapper;->onTypefaceResult(Landroidx/core/provider/FontRequestWorker$TypefaceResult;)V
.line 138
iget-object p0, p0, Landroidx/core/provider/FontRequestWorker$TypefaceResult;->mTypeface:Landroid/graphics/Typeface;
:try_end_0
.catch Ljava/lang/InterruptedException; {:try_start_0 .. :try_end_0} :catch_0
return-object p0
.line 140
:catch_0
new-instance p0, Landroidx/core/provider/FontRequestWorker$TypefaceResult;
const/4 p1, -0x3
invoke-direct {p0, p1}, Landroidx/core/provider/FontRequestWorker$TypefaceResult;-><init>(I)V
invoke-virtual {p2, p0}, Landroidx/core/provider/CallbackWrapper;->onTypefaceResult(Landroidx/core/provider/FontRequestWorker$TypefaceResult;)V
const/4 p0, 0x0
return-object p0
.end method
.method public static resetTypefaceCache()V
.locals 1
sget-object v0, Landroidx/core/provider/FontRequestWorker;->sTypefaceCache:Landroidx/collection/LruCache;
.line 82
invoke-virtual {v0}, Landroidx/collection/LruCache;->evictAll()V
return-void
.end method

View File

@@ -0,0 +1,20 @@
.class public abstract synthetic Landroidx/core/provider/FontsContractCompat$$ExternalSyntheticBackport0;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method public static synthetic m(Ljava/lang/Object;)Ljava/util/List;
.locals 0
.line 0
filled-new-array {p0}, [Ljava/lang/Object;
move-result-object p0
invoke-static {p0}, Landroidx/core/graphics/TypefaceCompat$$ExternalSyntheticBackport2;->m([Ljava/lang/Object;)Ljava/util/List;
move-result-object p0
return-object p0
.end method

View File

@@ -0,0 +1,20 @@
.class public abstract synthetic Landroidx/core/provider/FontsContractCompat$$ExternalSyntheticBackport1;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method public static synthetic m(Ljava/lang/Object;)Ljava/util/List;
.locals 0
.line 0
filled-new-array {p0}, [Ljava/lang/Object;
move-result-object p0
invoke-static {p0}, Landroidx/core/graphics/TypefaceCompat$$ExternalSyntheticBackport2;->m([Ljava/lang/Object;)Ljava/util/List;
move-result-object p0
return-object p0
.end method

View File

@@ -0,0 +1,20 @@
.class public abstract synthetic Landroidx/core/provider/FontsContractCompat$$ExternalSyntheticBackport2;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method public static synthetic m(Ljava/lang/Object;)Ljava/util/List;
.locals 0
.line 0
filled-new-array {p0}, [Ljava/lang/Object;
move-result-object p0
invoke-static {p0}, Landroidx/core/graphics/TypefaceCompat$$ExternalSyntheticBackport2;->m([Ljava/lang/Object;)Ljava/util/List;
move-result-object p0
return-object p0
.end method

View File

@@ -0,0 +1,20 @@
.class public abstract synthetic Landroidx/core/provider/FontsContractCompat$$ExternalSyntheticBackport3;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method public static synthetic m(Ljava/lang/Object;)Ljava/util/List;
.locals 0
.line 0
filled-new-array {p0}, [Ljava/lang/Object;
move-result-object p0
invoke-static {p0}, Landroidx/core/graphics/TypefaceCompat$$ExternalSyntheticBackport2;->m([Ljava/lang/Object;)Ljava/util/List;
move-result-object p0
return-object p0
.end method

View File

@@ -0,0 +1,20 @@
.class public abstract synthetic Landroidx/core/provider/FontsContractCompat$$ExternalSyntheticBackport4;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method public static synthetic m(Ljava/lang/Object;)Ljava/util/List;
.locals 0
.line 0
filled-new-array {p0}, [Ljava/lang/Object;
move-result-object p0
invoke-static {p0}, Landroidx/core/graphics/TypefaceCompat$$ExternalSyntheticBackport2;->m([Ljava/lang/Object;)Ljava/util/List;
move-result-object p0
return-object p0
.end method

View File

@@ -0,0 +1,50 @@
.class public final Landroidx/core/provider/FontsContractCompat$Columns;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Landroid/provider/BaseColumns;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/core/provider/FontsContractCompat;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = "Columns"
.end annotation
# static fields
.field public static final FILE_ID:Ljava/lang/String; = "file_id"
.field public static final ITALIC:Ljava/lang/String; = "font_italic"
.field public static final RESULT_CODE:Ljava/lang/String; = "result_code"
.field public static final RESULT_CODE_FONT_NOT_FOUND:I = 0x1
.field public static final RESULT_CODE_FONT_UNAVAILABLE:I = 0x2
.field public static final RESULT_CODE_MALFORMED_QUERY:I = 0x3
.field public static final RESULT_CODE_OK:I = 0x0
.field public static final TTC_INDEX:Ljava/lang/String; = "font_ttc_index"
.field public static final VARIATION_SETTINGS:Ljava/lang/String; = "font_variation_settings"
.field public static final WEIGHT:Ljava/lang/String; = "font_weight"
# direct methods
.method public constructor <init>()V
.locals 0
.line 310
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method

View File

@@ -0,0 +1,205 @@
.class public Landroidx/core/provider/FontsContractCompat$FontFamilyResult;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/core/provider/FontsContractCompat;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "FontFamilyResult"
.end annotation
# static fields
.field public static final STATUS_OK:I = 0x0
.field public static final STATUS_UNEXPECTED_DATA_PROVIDED:I = 0x2
.field public static final STATUS_WRONG_CERTIFICATES:I = 0x1
# instance fields
.field private final mFonts:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"[",
"Landroidx/core/provider/FontsContractCompat$FontInfo;",
">;"
}
.end annotation
.end field
.field private final mStatusCode:I
# direct methods
.method public constructor <init>(ILjava/util/List;)V
.locals 0
.param p2 # Ljava/util/List;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation system Ldalvik/annotation/Signature;
value = {
"(I",
"Ljava/util/List<",
"[",
"Landroidx/core/provider/FontsContractCompat$FontInfo;",
">;)V"
}
.end annotation
.line 514
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput p1, p0, Landroidx/core/provider/FontsContractCompat$FontFamilyResult;->mStatusCode:I
iput-object p2, p0, Landroidx/core/provider/FontsContractCompat$FontFamilyResult;->mFonts:Ljava/util/List;
return-void
.end method
.method public constructor <init>(I[Landroidx/core/provider/FontsContractCompat$FontInfo;)V
.locals 0
.param p2 # [Landroidx/core/provider/FontsContractCompat$FontInfo;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.line 509
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput p1, p0, Landroidx/core/provider/FontsContractCompat$FontFamilyResult;->mStatusCode:I
.line 511
invoke-static {p2}, Ljava/util/Collections;->singletonList(Ljava/lang/Object;)Ljava/util/List;
move-result-object p1
iput-object p1, p0, Landroidx/core/provider/FontsContractCompat$FontFamilyResult;->mFonts:Ljava/util/List;
return-void
.end method
.method public static create(ILjava/util/List;)Landroidx/core/provider/FontsContractCompat$FontFamilyResult;
.locals 1
.param p1 # Ljava/util/List;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.annotation system Ldalvik/annotation/Signature;
value = {
"(I",
"Ljava/util/List<",
"[",
"Landroidx/core/provider/FontsContractCompat$FontInfo;",
">;)",
"Landroidx/core/provider/FontsContractCompat$FontFamilyResult;"
}
.end annotation
.line 555
new-instance v0, Landroidx/core/provider/FontsContractCompat$FontFamilyResult;
invoke-direct {v0, p0, p1}, Landroidx/core/provider/FontsContractCompat$FontFamilyResult;-><init>(ILjava/util/List;)V
return-object v0
.end method
.method public static create(I[Landroidx/core/provider/FontsContractCompat$FontInfo;)Landroidx/core/provider/FontsContractCompat$FontFamilyResult;
.locals 1
.param p1 # [Landroidx/core/provider/FontsContractCompat$FontInfo;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.line 549
new-instance v0, Landroidx/core/provider/FontsContractCompat$FontFamilyResult;
invoke-direct {v0, p0, p1}, Landroidx/core/provider/FontsContractCompat$FontFamilyResult;-><init>(I[Landroidx/core/provider/FontsContractCompat$FontInfo;)V
return-object v0
.end method
# virtual methods
.method public getFonts()[Landroidx/core/provider/FontsContractCompat$FontInfo;
.locals 2
iget-object v0, p0, Landroidx/core/provider/FontsContractCompat$FontFamilyResult;->mFonts:Ljava/util/List;
const/4 v1, 0x0
.line 530
invoke-interface {v0, v1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, [Landroidx/core/provider/FontsContractCompat$FontInfo;
return-object v0
.end method
.method public getFontsWithFallbacks()Ljava/util/List;
.locals 1
.annotation build Landroidx/annotation/NonNull;
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/List<",
"[",
"Landroidx/core/provider/FontsContractCompat$FontInfo;",
">;"
}
.end annotation
iget-object v0, p0, Landroidx/core/provider/FontsContractCompat$FontFamilyResult;->mFonts:Ljava/util/List;
return-object v0
.end method
.method public getStatusCode()I
.locals 1
iget v0, p0, Landroidx/core/provider/FontsContractCompat$FontFamilyResult;->mStatusCode:I
return v0
.end method
.method public hasFallback()Z
.locals 2
iget-object v0, p0, Landroidx/core/provider/FontsContractCompat$FontFamilyResult;->mFonts:Ljava/util/List;
.line 534
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v0
const/4 v1, 0x1
if-le v0, v1, :cond_0
goto :goto_0
:cond_0
const/4 v1, 0x0
:goto_0
return v1
.end method

View File

@@ -0,0 +1,166 @@
.class public Landroidx/core/provider/FontsContractCompat$FontInfo;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/core/provider/FontsContractCompat;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "FontInfo"
.end annotation
# instance fields
.field private final mItalic:Z
.field private final mResultCode:I
.field private final mTtcIndex:I
.field private final mUri:Landroid/net/Uri;
.field private final mWeight:I
# direct methods
.method public constructor <init>(Landroid/net/Uri;IIZI)V
.locals 0
.param p1 # Landroid/net/Uri;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # I
.annotation build Landroidx/annotation/IntRange;
from = 0x0L
.end annotation
.end param
.param p3 # I
.annotation build Landroidx/annotation/IntRange;
from = 0x1L
to = 0x3e8L
.end annotation
.end param
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.line 413
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 414
invoke-static {p1}, Landroidx/core/util/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Landroid/net/Uri;
iput-object p1, p0, Landroidx/core/provider/FontsContractCompat$FontInfo;->mUri:Landroid/net/Uri;
iput p2, p0, Landroidx/core/provider/FontsContractCompat$FontInfo;->mTtcIndex:I
iput p3, p0, Landroidx/core/provider/FontsContractCompat$FontInfo;->mWeight:I
iput-boolean p4, p0, Landroidx/core/provider/FontsContractCompat$FontInfo;->mItalic:Z
iput p5, p0, Landroidx/core/provider/FontsContractCompat$FontInfo;->mResultCode:I
return-void
.end method
.method public static create(Landroid/net/Uri;IIZI)Landroidx/core/provider/FontsContractCompat$FontInfo;
.locals 7
.param p0 # Landroid/net/Uri;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # I
.annotation build Landroidx/annotation/IntRange;
from = 0x0L
.end annotation
.end param
.param p2 # I
.annotation build Landroidx/annotation/IntRange;
from = 0x1L
to = 0x3e8L
.end annotation
.end param
.line 429
new-instance v6, Landroidx/core/provider/FontsContractCompat$FontInfo;
move-object v0, v6
move-object v1, p0
move v2, p1
move v3, p2
move v4, p3
move v5, p4
invoke-direct/range {v0 .. v5}, Landroidx/core/provider/FontsContractCompat$FontInfo;-><init>(Landroid/net/Uri;IIZI)V
return-object v6
.end method
# virtual methods
.method public getResultCode()I
.locals 1
iget v0, p0, Landroidx/core/provider/FontsContractCompat$FontInfo;->mResultCode:I
return v0
.end method
.method public getTtcIndex()I
.locals 1
.annotation build Landroidx/annotation/IntRange;
from = 0x0L
.end annotation
iget v0, p0, Landroidx/core/provider/FontsContractCompat$FontInfo;->mTtcIndex:I
return v0
.end method
.method public getUri()Landroid/net/Uri;
.locals 1
.annotation build Landroidx/annotation/NonNull;
.end annotation
iget-object v0, p0, Landroidx/core/provider/FontsContractCompat$FontInfo;->mUri:Landroid/net/Uri;
return-object v0
.end method
.method public getWeight()I
.locals 1
.annotation build Landroidx/annotation/IntRange;
from = 0x1L
to = 0x3e8L
.end annotation
iget v0, p0, Landroidx/core/provider/FontsContractCompat$FontInfo;->mWeight:I
return v0
.end method
.method public isItalic()Z
.locals 1
iget-boolean v0, p0, Landroidx/core/provider/FontsContractCompat$FontInfo;->mItalic:Z
return v0
.end method

View File

@@ -0,0 +1,27 @@
.class public interface abstract annotation Landroidx/core/provider/FontsContractCompat$FontRequestCallback$FontRequestFailReason;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/lang/annotation/Annotation;
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/core/provider/FontsContractCompat$FontRequestCallback;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x2609
name = "FontRequestFailReason"
.end annotation
.annotation runtime Ljava/lang/annotation/Retention;
value = .enum Ljava/lang/annotation/RetentionPolicy;->SOURCE:Ljava/lang/annotation/RetentionPolicy;
.end annotation

View File

@@ -0,0 +1,74 @@
.class public Landroidx/core/provider/FontsContractCompat$FontRequestCallback;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/core/provider/FontsContractCompat;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "FontRequestCallback"
.end annotation
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/core/provider/FontsContractCompat$FontRequestCallback$FontRequestFailReason;
}
.end annotation
# static fields
.field public static final FAIL_REASON_FONT_LOAD_ERROR:I = -0x3
.field public static final FAIL_REASON_FONT_NOT_FOUND:I = 0x1
.field public static final FAIL_REASON_FONT_UNAVAILABLE:I = 0x2
.field public static final FAIL_REASON_MALFORMED_QUERY:I = 0x3
.field public static final FAIL_REASON_PROVIDER_NOT_FOUND:I = -0x1
.field public static final FAIL_REASON_SECURITY_VIOLATION:I = -0x4
.field public static final FAIL_REASON_WRONG_CERTIFICATES:I = -0x2
.field public static final RESULT_OK:I
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.end field
.field static final RESULT_SUCCESS:I
# direct methods
.method public constructor <init>()V
.locals 0
.line 624
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public onTypefaceRequestFailed(I)V
.locals 0
return-void
.end method
.method public onTypefaceRetrieved(Landroid/graphics/Typeface;)V
.locals 0
return-void
.end method

View File

@@ -0,0 +1,585 @@
.class public Landroidx/core/provider/FontsContractCompat;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/core/provider/FontsContractCompat$FontInfo;,
Landroidx/core/provider/FontsContractCompat$FontFamilyResult;,
Landroidx/core/provider/FontsContractCompat$FontRequestCallback;,
Landroidx/core/provider/FontsContractCompat$Columns;
}
.end annotation
# static fields
.field public static final PARCEL_FONT_RESULTS:Ljava/lang/String; = "font_results"
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.end field
.field static final RESULT_CODE_PROVIDER_NOT_FOUND:I = -0x1
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.end field
.field static final RESULT_CODE_WRONG_CERTIFICATES:I = -0x2
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.end field
# direct methods
.method private constructor <init>()V
.locals 0
.line 56
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static buildTypeface(Landroid/content/Context;Landroid/os/CancellationSignal;[Landroidx/core/provider/FontsContractCompat$FontInfo;)Landroid/graphics/Typeface;
.locals 1
.param p0 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Landroid/os/CancellationSignal;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.param p2 # [Landroidx/core/provider/FontsContractCompat$FontInfo;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/Nullable;
.end annotation
const/4 v0, 0x0
.line 76
invoke-static {p0, p1, p2, v0}, Landroidx/core/graphics/TypefaceCompat;->createFromFontInfo(Landroid/content/Context;Landroid/os/CancellationSignal;[Landroidx/core/provider/FontsContractCompat$FontInfo;I)Landroid/graphics/Typeface;
move-result-object p0
return-object p0
.end method
.method public static fetchFonts(Landroid/content/Context;Landroid/os/CancellationSignal;Landroidx/core/provider/FontRequest;)Landroidx/core/provider/FontsContractCompat$FontFamilyResult;
.locals 0
.param p0 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Landroid/os/CancellationSignal;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.param p2 # Landroidx/core/provider/FontRequest;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/NonNull;
.end annotation
.annotation system Ldalvik/annotation/Throws;
value = {
Landroid/content/pm/PackageManager$NameNotFoundException;
}
.end annotation
.line 102
invoke-static {p2}, Landroidx/core/provider/FontsContractCompat$$ExternalSyntheticBackport2;->m(Ljava/lang/Object;)Ljava/util/List;
move-result-object p2
invoke-static {p0, p2, p1}, Landroidx/core/provider/FontProvider;->getFontFamilyResult(Landroid/content/Context;Ljava/util/List;Landroid/os/CancellationSignal;)Landroidx/core/provider/FontsContractCompat$FontFamilyResult;
move-result-object p0
return-object p0
.end method
.method public static getFontSync(Landroid/content/Context;Landroidx/core/provider/FontRequest;Landroidx/core/content/res/ResourcesCompat$FontCallback;Landroid/os/Handler;ZII)Landroid/graphics/Typeface;
.locals 7
.param p2 # Landroidx/core/content/res/ResourcesCompat$FontCallback;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.param p3 # Landroid/os/Handler;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.line 694
new-instance v6, Landroidx/core/graphics/TypefaceCompat$ResourcesCallbackAdapter;
invoke-direct {v6, p2}, Landroidx/core/graphics/TypefaceCompat$ResourcesCallbackAdapter;-><init>(Landroidx/core/content/res/ResourcesCompat$FontCallback;)V
.line 695
invoke-static {p3}, Landroidx/core/content/res/ResourcesCompat$FontCallback;->getHandler(Landroid/os/Handler;)Landroid/os/Handler;
move-result-object v5
.line 696
invoke-static {p1}, Landroidx/core/provider/FontsContractCompat$$ExternalSyntheticBackport3;->m(Ljava/lang/Object;)Ljava/util/List;
move-result-object v1
move-object v0, p0
move v2, p6
move v3, p4
move v4, p5
invoke-static/range {v0 .. v6}, Landroidx/core/provider/FontsContractCompat;->requestFont(Landroid/content/Context;Ljava/util/List;IZILandroid/os/Handler;Landroidx/core/provider/FontsContractCompat$FontRequestCallback;)Landroid/graphics/Typeface;
move-result-object p0
return-object p0
.end method
.method public static getProvider(Landroid/content/pm/PackageManager;Landroidx/core/provider/FontRequest;Landroid/content/res/Resources;)Landroid/content/pm/ProviderInfo;
.locals 0
.param p0 # Landroid/content/pm/PackageManager;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Landroidx/core/provider/FontRequest;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Landroid/content/res/Resources;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.annotation build Landroidx/annotation/Nullable;
.end annotation
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation build Landroidx/annotation/VisibleForTesting;
.end annotation
.annotation system Ldalvik/annotation/Throws;
value = {
Landroid/content/pm/PackageManager$NameNotFoundException;
}
.end annotation
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.line 748
invoke-static {p0, p1, p2}, Landroidx/core/provider/FontProvider;->getProvider(Landroid/content/pm/PackageManager;Landroidx/core/provider/FontRequest;Landroid/content/res/Resources;)Landroid/content/pm/ProviderInfo;
move-result-object p0
return-object p0
.end method
.method public static prepareFontData(Landroid/content/Context;[Landroidx/core/provider/FontsContractCompat$FontInfo;Landroid/os/CancellationSignal;)Ljava/util/Map;
.locals 0
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"[",
"Landroidx/core/provider/FontsContractCompat$FontInfo;",
"Landroid/os/CancellationSignal;",
")",
"Ljava/util/Map<",
"Landroid/net/Uri;",
"Ljava/nio/ByteBuffer;",
">;"
}
.end annotation
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.line 732
invoke-static {p0, p1, p2}, Landroidx/core/graphics/TypefaceCompatUtil;->readFontInfoIntoByteBuffer(Landroid/content/Context;[Landroidx/core/provider/FontsContractCompat$FontInfo;Landroid/os/CancellationSignal;)Ljava/util/Map;
move-result-object p0
return-object p0
.end method
.method public static requestFont(Landroid/content/Context;Landroidx/core/provider/FontRequest;IZILandroid/os/Handler;Landroidx/core/provider/FontsContractCompat$FontRequestCallback;)Landroid/graphics/Typeface;
.locals 7
.param p0 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Landroidx/core/provider/FontRequest;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p4 # I
.annotation build Landroidx/annotation/IntRange;
from = 0x0L
.end annotation
.end param
.param p5 # Landroid/os/Handler;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p6 # Landroidx/core/provider/FontsContractCompat$FontRequestCallback;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/Nullable;
.end annotation
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.line 293
invoke-static {p1}, Landroidx/core/provider/FontsContractCompat$$ExternalSyntheticBackport4;->m(Ljava/lang/Object;)Ljava/util/List;
move-result-object v1
move-object v0, p0
move v2, p2
move v3, p3
move v4, p4
move-object v5, p5
move-object v6, p6
invoke-static/range {v0 .. v6}, Landroidx/core/provider/FontsContractCompat;->requestFont(Landroid/content/Context;Ljava/util/List;IZILandroid/os/Handler;Landroidx/core/provider/FontsContractCompat$FontRequestCallback;)Landroid/graphics/Typeface;
move-result-object p0
return-object p0
.end method
.method public static requestFont(Landroid/content/Context;Ljava/util/List;IZILandroid/os/Handler;Landroidx/core/provider/FontsContractCompat$FontRequestCallback;)Landroid/graphics/Typeface;
.locals 1
.param p0 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Ljava/util/List;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p4 # I
.annotation build Landroidx/annotation/IntRange;
from = 0x0L
.end annotation
.end param
.param p5 # Landroid/os/Handler;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p6 # Landroidx/core/provider/FontsContractCompat$FontRequestCallback;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation build Landroidx/annotation/Nullable;
.end annotation
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Ljava/util/List<",
"Landroidx/core/provider/FontRequest;",
">;IZI",
"Landroid/os/Handler;",
"Landroidx/core/provider/FontsContractCompat$FontRequestCallback;",
")",
"Landroid/graphics/Typeface;"
}
.end annotation
.line 242
new-instance v0, Landroidx/core/provider/CallbackWrapper;
.line 243
invoke-static {p5}, Landroidx/core/provider/RequestExecutor;->createHandlerExecutor(Landroid/os/Handler;)Ljava/util/concurrent/Executor;
move-result-object p5
invoke-direct {v0, p6, p5}, Landroidx/core/provider/CallbackWrapper;-><init>(Landroidx/core/provider/FontsContractCompat$FontRequestCallback;Ljava/util/concurrent/Executor;)V
if-eqz p3, :cond_1
.line 246
invoke-interface {p1}, Ljava/util/List;->size()I
move-result p3
const/4 p5, 0x1
if-gt p3, p5, :cond_0
const/4 p3, 0x0
.line 251
invoke-interface {p1, p3}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object p1
check-cast p1, Landroidx/core/provider/FontRequest;
invoke-static {p0, p1, v0, p2, p4}, Landroidx/core/provider/FontRequestWorker;->requestFontSync(Landroid/content/Context;Landroidx/core/provider/FontRequest;Landroidx/core/provider/CallbackWrapper;II)Landroid/graphics/Typeface;
move-result-object p0
return-object p0
.line 247
:cond_0
new-instance p0, Ljava/lang/IllegalArgumentException;
const-string p1, "Fallbacks with blocking fetches are not supported for performance reasons"
invoke-direct {p0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p0
:cond_1
const/4 p3, 0x0
.line 254
invoke-static {p0, p1, p2, p3, v0}, Landroidx/core/provider/FontRequestWorker;->requestFontAsync(Landroid/content/Context;Ljava/util/List;ILjava/util/concurrent/Executor;Landroidx/core/provider/CallbackWrapper;)Landroid/graphics/Typeface;
move-result-object p0
return-object p0
.end method
.method public static requestFont(Landroid/content/Context;Landroidx/core/provider/FontRequest;ILjava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Landroidx/core/provider/FontsContractCompat$FontRequestCallback;)V
.locals 1
.param p0 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Landroidx/core/provider/FontRequest;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p3 # Ljava/util/concurrent/Executor;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.param p4 # Ljava/util/concurrent/Executor;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p5 # Landroidx/core/provider/FontsContractCompat$FontRequestCallback;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 164
new-instance v0, Landroidx/core/provider/CallbackWrapper;
invoke-direct {v0, p5, p4}, Landroidx/core/provider/CallbackWrapper;-><init>(Landroidx/core/provider/FontsContractCompat$FontRequestCallback;Ljava/util/concurrent/Executor;)V
.line 165
invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object p0
.line 166
invoke-static {p1}, Landroidx/core/provider/FontsContractCompat$$ExternalSyntheticBackport1;->m(Ljava/lang/Object;)Ljava/util/List;
move-result-object p1
invoke-static {p0, p1, p2, p3, v0}, Landroidx/core/provider/FontRequestWorker;->requestFontAsync(Landroid/content/Context;Ljava/util/List;ILjava/util/concurrent/Executor;Landroidx/core/provider/CallbackWrapper;)Landroid/graphics/Typeface;
return-void
.end method
.method public static requestFont(Landroid/content/Context;Landroidx/core/provider/FontRequest;Landroidx/core/provider/FontsContractCompat$FontRequestCallback;Landroid/os/Handler;)V
.locals 1
.param p0 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Landroidx/core/provider/FontRequest;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Landroidx/core/provider/FontsContractCompat$FontRequestCallback;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p3 # Landroid/os/Handler;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.line 132
new-instance v0, Landroidx/core/provider/CallbackWrapper;
invoke-direct {v0, p2}, Landroidx/core/provider/CallbackWrapper;-><init>(Landroidx/core/provider/FontsContractCompat$FontRequestCallback;)V
.line 133
invoke-static {p3}, Landroidx/core/provider/RequestExecutor;->createHandlerExecutor(Landroid/os/Handler;)Ljava/util/concurrent/Executor;
move-result-object p2
.line 134
invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object p0
.line 135
invoke-static {p1}, Landroidx/core/provider/FontsContractCompat$$ExternalSyntheticBackport0;->m(Ljava/lang/Object;)Ljava/util/List;
move-result-object p1
const/4 p3, 0x0
.line 134
invoke-static {p0, p1, p3, p2, v0}, Landroidx/core/provider/FontRequestWorker;->requestFontAsync(Landroid/content/Context;Ljava/util/List;ILjava/util/concurrent/Executor;Landroidx/core/provider/CallbackWrapper;)Landroid/graphics/Typeface;
return-void
.end method
.method public static requestFontWithFallbackChain(Landroid/content/Context;Ljava/util/List;ILjava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Landroidx/core/provider/FontsContractCompat$FontRequestCallback;)V
.locals 1
.param p0 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Ljava/util/List;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p3 # Ljava/util/concurrent/Executor;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.param p4 # Ljava/util/concurrent/Executor;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p5 # Landroidx/core/provider/FontsContractCompat$FontRequestCallback;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
"Ljava/util/List<",
"Landroidx/core/provider/FontRequest;",
">;I",
"Ljava/util/concurrent/Executor;",
"Ljava/util/concurrent/Executor;",
"Landroidx/core/provider/FontsContractCompat$FontRequestCallback;",
")V"
}
.end annotation
.line 201
new-instance v0, Landroidx/core/provider/CallbackWrapper;
invoke-direct {v0, p5, p4}, Landroidx/core/provider/CallbackWrapper;-><init>(Landroidx/core/provider/FontsContractCompat$FontRequestCallback;Ljava/util/concurrent/Executor;)V
.line 202
invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object p0
.line 203
invoke-static {p0, p1, p2, p3, v0}, Landroidx/core/provider/FontRequestWorker;->requestFontAsync(Landroid/content/Context;Ljava/util/List;ILjava/util/concurrent/Executor;Landroidx/core/provider/CallbackWrapper;)Landroid/graphics/Typeface;
return-void
.end method
.method public static resetCache()V
.locals 0
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.line 708
invoke-static {}, Landroidx/core/provider/FontRequestWorker;->resetTypefaceCache()V
return-void
.end method
.method public static resetTypefaceCache()V
.locals 0
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation build Landroidx/annotation/VisibleForTesting;
.end annotation
.line 300
invoke-static {}, Landroidx/core/provider/FontRequestWorker;->resetTypefaceCache()V
return-void
.end method

View File

@@ -0,0 +1,47 @@
.class Landroidx/core/provider/RequestExecutor$DefaultThreadFactory$ProcessPriorityThread;
.super Ljava/lang/Thread;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/core/provider/RequestExecutor$DefaultThreadFactory;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "ProcessPriorityThread"
.end annotation
# instance fields
.field private final mPriority:I
# direct methods
.method public constructor <init>(Ljava/lang/Runnable;Ljava/lang/String;I)V
.locals 0
.line 178
invoke-direct {p0, p1, p2}, Ljava/lang/Thread;-><init>(Ljava/lang/Runnable;Ljava/lang/String;)V
iput p3, p0, Landroidx/core/provider/RequestExecutor$DefaultThreadFactory$ProcessPriorityThread;->mPriority:I
return-void
.end method
# virtual methods
.method public run()V
.locals 1
iget v0, p0, Landroidx/core/provider/RequestExecutor$DefaultThreadFactory$ProcessPriorityThread;->mPriority:I
.line 184
invoke-static {v0}, Landroid/os/Process;->setThreadPriority(I)V
.line 185
invoke-super {p0}, Ljava/lang/Thread;->run()V
return-void
.end method

View File

@@ -0,0 +1,65 @@
.class Landroidx/core/provider/RequestExecutor$DefaultThreadFactory;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/util/concurrent/ThreadFactory;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/core/provider/RequestExecutor;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "DefaultThreadFactory"
.end annotation
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/core/provider/RequestExecutor$DefaultThreadFactory$ProcessPriorityThread;
}
.end annotation
# instance fields
.field private mPriority:I
.field private mThreadName:Ljava/lang/String;
# direct methods
.method public constructor <init>(Ljava/lang/String;I)V
.locals 0
.param p1 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 164
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/core/provider/RequestExecutor$DefaultThreadFactory;->mThreadName:Ljava/lang/String;
iput p2, p0, Landroidx/core/provider/RequestExecutor$DefaultThreadFactory;->mPriority:I
return-void
.end method
# virtual methods
.method public newThread(Ljava/lang/Runnable;)Ljava/lang/Thread;
.locals 3
.line 171
new-instance v0, Landroidx/core/provider/RequestExecutor$DefaultThreadFactory$ProcessPriorityThread;
iget-object v1, p0, Landroidx/core/provider/RequestExecutor$DefaultThreadFactory;->mThreadName:Ljava/lang/String;
iget v2, p0, Landroidx/core/provider/RequestExecutor$DefaultThreadFactory;->mPriority:I
invoke-direct {v0, p1, v1, v2}, Landroidx/core/provider/RequestExecutor$DefaultThreadFactory$ProcessPriorityThread;-><init>(Ljava/lang/Runnable;Ljava/lang/String;I)V
return-object v0
.end method

View File

@@ -0,0 +1,96 @@
.class Landroidx/core/provider/RequestExecutor$HandlerExecutor;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/util/concurrent/Executor;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/core/provider/RequestExecutor;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "HandlerExecutor"
.end annotation
# instance fields
.field private final mHandler:Landroid/os/Handler;
# direct methods
.method public constructor <init>(Landroid/os/Handler;)V
.locals 0
.param p1 # Landroid/os/Handler;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 110
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 111
invoke-static {p1}, Landroidx/core/util/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Landroid/os/Handler;
iput-object p1, p0, Landroidx/core/provider/RequestExecutor$HandlerExecutor;->mHandler:Landroid/os/Handler;
return-void
.end method
# virtual methods
.method public execute(Ljava/lang/Runnable;)V
.locals 2
.param p1 # Ljava/lang/Runnable;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
iget-object v0, p0, Landroidx/core/provider/RequestExecutor$HandlerExecutor;->mHandler:Landroid/os/Handler;
.line 116
invoke-static {p1}, Landroidx/core/util/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/lang/Runnable;
invoke-virtual {v0, p1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
move-result p1
if-eqz p1, :cond_0
return-void
.line 117
:cond_0
new-instance p1, Ljava/util/concurrent/RejectedExecutionException;
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
iget-object v1, p0, Landroidx/core/provider/RequestExecutor$HandlerExecutor;->mHandler:Landroid/os/Handler;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v1, " is shutting down"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/util/concurrent/RejectedExecutionException;-><init>(Ljava/lang/String;)V
throw p1
.end method

View File

@@ -0,0 +1,62 @@
.class Landroidx/core/provider/RequestExecutor$ReplyRunnable$1;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/lang/Runnable;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/core/provider/RequestExecutor$ReplyRunnable;->run()V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# instance fields
.field final synthetic this$0:Landroidx/core/provider/RequestExecutor$ReplyRunnable;
.field final synthetic val$consumer:Landroidx/core/util/Consumer;
.field final synthetic val$result:Ljava/lang/Object;
# direct methods
.method public constructor <init>(Landroidx/core/provider/RequestExecutor$ReplyRunnable;Landroidx/core/util/Consumer;Ljava/lang/Object;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
iput-object p1, p0, Landroidx/core/provider/RequestExecutor$ReplyRunnable$1;->this$0:Landroidx/core/provider/RequestExecutor$ReplyRunnable;
iput-object p2, p0, Landroidx/core/provider/RequestExecutor$ReplyRunnable$1;->val$consumer:Landroidx/core/util/Consumer;
iput-object p3, p0, Landroidx/core/provider/RequestExecutor$ReplyRunnable$1;->val$result:Ljava/lang/Object;
.line 151
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public run()V
.locals 2
iget-object v0, p0, Landroidx/core/provider/RequestExecutor$ReplyRunnable$1;->val$consumer:Landroidx/core/util/Consumer;
iget-object v1, p0, Landroidx/core/provider/RequestExecutor$ReplyRunnable$1;->val$result:Ljava/lang/Object;
.line 154
invoke-interface {v0, v1}, Landroidx/core/util/Consumer;->accept(Ljava/lang/Object;)V
return-void
.end method

View File

@@ -0,0 +1,132 @@
.class Landroidx/core/provider/RequestExecutor$ReplyRunnable;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/lang/Runnable;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/core/provider/RequestExecutor;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "ReplyRunnable"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">",
"Ljava/lang/Object;",
"Ljava/lang/Runnable;"
}
.end annotation
# instance fields
.field private mCallable:Ljava/util/concurrent/Callable;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/Callable<",
"TT;>;"
}
.end annotation
.end field
.field private mConsumer:Landroidx/core/util/Consumer;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroidx/core/util/Consumer<",
"TT;>;"
}
.end annotation
.end field
.field private mHandler:Landroid/os/Handler;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end field
# direct methods
.method public constructor <init>(Landroid/os/Handler;Ljava/util/concurrent/Callable;Landroidx/core/util/Consumer;)V
.locals 0
.param p1 # Landroid/os/Handler;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Ljava/util/concurrent/Callable;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p3 # Landroidx/core/util/Consumer;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/os/Handler;",
"Ljava/util/concurrent/Callable<",
"TT;>;",
"Landroidx/core/util/Consumer<",
"TT;>;)V"
}
.end annotation
.line 135
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p2, p0, Landroidx/core/provider/RequestExecutor$ReplyRunnable;->mCallable:Ljava/util/concurrent/Callable;
iput-object p3, p0, Landroidx/core/provider/RequestExecutor$ReplyRunnable;->mConsumer:Landroidx/core/util/Consumer;
iput-object p1, p0, Landroidx/core/provider/RequestExecutor$ReplyRunnable;->mHandler:Landroid/os/Handler;
return-void
.end method
# virtual methods
.method public run()V
.locals 4
:try_start_0
iget-object v0, p0, Landroidx/core/provider/RequestExecutor$ReplyRunnable;->mCallable:Ljava/util/concurrent/Callable;
.line 145
invoke-interface {v0}, Ljava/util/concurrent/Callable;->call()Ljava/lang/Object;
move-result-object v0
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
goto :goto_0
:catch_0
const/4 v0, 0x0
:goto_0
iget-object v1, p0, Landroidx/core/provider/RequestExecutor$ReplyRunnable;->mConsumer:Landroidx/core/util/Consumer;
iget-object v2, p0, Landroidx/core/provider/RequestExecutor$ReplyRunnable;->mHandler:Landroid/os/Handler;
.line 151
new-instance v3, Landroidx/core/provider/RequestExecutor$ReplyRunnable$1;
invoke-direct {v3, p0, v1, v0}, Landroidx/core/provider/RequestExecutor$ReplyRunnable$1;-><init>(Landroidx/core/provider/RequestExecutor$ReplyRunnable;Landroidx/core/util/Consumer;Ljava/lang/Object;)V
invoke-virtual {v2, v3}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
return-void
.end method

View File

@@ -0,0 +1,211 @@
.class Landroidx/core/provider/RequestExecutor;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/core/provider/RequestExecutor$ReplyRunnable;,
Landroidx/core/provider/RequestExecutor$DefaultThreadFactory;,
Landroidx/core/provider/RequestExecutor$HandlerExecutor;
}
.end annotation
# direct methods
.method private constructor <init>()V
.locals 0
.line 44
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static createDefaultExecutor(Ljava/lang/String;II)Ljava/util/concurrent/ThreadPoolExecutor;
.locals 8
.param p0 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # I
.annotation build Landroidx/annotation/IntRange;
from = 0x0L
.end annotation
.end param
.line 82
new-instance v7, Landroidx/core/provider/RequestExecutor$DefaultThreadFactory;
invoke-direct {v7, p0, p1}, Landroidx/core/provider/RequestExecutor$DefaultThreadFactory;-><init>(Ljava/lang/String;I)V
.line 85
new-instance p0, Ljava/util/concurrent/ThreadPoolExecutor;
const/4 v1, 0x0
const/4 v2, 0x1
int-to-long v3, p2
sget-object v5, Ljava/util/concurrent/TimeUnit;->MILLISECONDS:Ljava/util/concurrent/TimeUnit;
new-instance v6, Ljava/util/concurrent/LinkedBlockingDeque;
invoke-direct {v6}, Ljava/util/concurrent/LinkedBlockingDeque;-><init>()V
move-object v0, p0
invoke-direct/range {v0 .. v7}, Ljava/util/concurrent/ThreadPoolExecutor;-><init>(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;Ljava/util/concurrent/ThreadFactory;)V
const/4 p1, 0x1
.line 93
invoke-virtual {p0, p1}, Ljava/util/concurrent/ThreadPoolExecutor;->allowCoreThreadTimeOut(Z)V
return-object p0
.end method
.method public static createHandlerExecutor(Landroid/os/Handler;)Ljava/util/concurrent/Executor;
.locals 1
.param p0 # Landroid/os/Handler;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 98
new-instance v0, Landroidx/core/provider/RequestExecutor$HandlerExecutor;
invoke-direct {v0, p0}, Landroidx/core/provider/RequestExecutor$HandlerExecutor;-><init>(Landroid/os/Handler;)V
return-object v0
.end method
.method public static execute(Ljava/util/concurrent/Executor;Ljava/util/concurrent/Callable;Landroidx/core/util/Consumer;)V
.locals 2
.param p0 # Ljava/util/concurrent/Executor;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Ljava/util/concurrent/Callable;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Landroidx/core/util/Consumer;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Ljava/util/concurrent/Executor;",
"Ljava/util/concurrent/Callable<",
"TT;>;",
"Landroidx/core/util/Consumer<",
"TT;>;)V"
}
.end annotation
.line 56
invoke-static {}, Landroidx/core/provider/CalleeHandler;->create()Landroid/os/Handler;
move-result-object v0
.line 57
new-instance v1, Landroidx/core/provider/RequestExecutor$ReplyRunnable;
invoke-direct {v1, v0, p1, p2}, Landroidx/core/provider/RequestExecutor$ReplyRunnable;-><init>(Landroid/os/Handler;Ljava/util/concurrent/Callable;Landroidx/core/util/Consumer;)V
invoke-interface {p0, v1}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V
return-void
.end method
.method public static submit(Ljava/util/concurrent/ExecutorService;Ljava/util/concurrent/Callable;I)Ljava/lang/Object;
.locals 1
.param p0 # Ljava/util/concurrent/ExecutorService;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Ljava/util/concurrent/Callable;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # I
.annotation build Landroidx/annotation/IntRange;
from = 0x0L
.end annotation
.end param
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Ljava/util/concurrent/ExecutorService;",
"Ljava/util/concurrent/Callable<",
"TT;>;I)TT;"
}
.end annotation
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/InterruptedException;
}
.end annotation
.line 65
invoke-interface {p0, p1}, Ljava/util/concurrent/ExecutorService;->submit(Ljava/util/concurrent/Callable;)Ljava/util/concurrent/Future;
move-result-object p0
int-to-long p1, p2
.line 67
:try_start_0
sget-object v0, Ljava/util/concurrent/TimeUnit;->MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invoke-interface {p0, p1, p2, v0}, Ljava/util/concurrent/Future;->get(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
move-result-object p0
:try_end_0
.catch Ljava/util/concurrent/ExecutionException; {:try_start_0 .. :try_end_0} :catch_1
.catch Ljava/lang/InterruptedException; {:try_start_0 .. :try_end_0} :catch_0
.catch Ljava/util/concurrent/TimeoutException; {:try_start_0 .. :try_end_0} :catch_2
return-object p0
:catch_0
move-exception p0
goto :goto_0
:catch_1
move-exception p0
goto :goto_1
.line 73
:catch_2
new-instance p0, Ljava/lang/InterruptedException;
const-string p1, "timeout"
invoke-direct {p0, p1}, Ljava/lang/InterruptedException;-><init>(Ljava/lang/String;)V
throw p0
.line 71
:goto_0
throw p0
.line 69
:goto_1
new-instance p1, Ljava/lang/RuntimeException;
invoke-direct {p1, p0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/Throwable;)V
throw p1
.end method

View File

@@ -0,0 +1,71 @@
.class Landroidx/core/provider/SelfDestructiveThread$1;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Landroid/os/Handler$Callback;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/core/provider/SelfDestructiveThread;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# instance fields
.field final synthetic this$0:Landroidx/core/provider/SelfDestructiveThread;
# direct methods
.method public constructor <init>(Landroidx/core/provider/SelfDestructiveThread;)V
.locals 0
iput-object p1, p0, Landroidx/core/provider/SelfDestructiveThread$1;->this$0:Landroidx/core/provider/SelfDestructiveThread;
.line 61
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public handleMessage(Landroid/os/Message;)Z
.locals 2
.line 64
iget v0, p1, Landroid/os/Message;->what:I
const/4 v1, 0x1
if-eqz v0, :cond_1
if-eq v0, v1, :cond_0
return v1
:cond_0
iget-object v0, p0, Landroidx/core/provider/SelfDestructiveThread$1;->this$0:Landroidx/core/provider/SelfDestructiveThread;
.line 66
iget-object p1, p1, Landroid/os/Message;->obj:Ljava/lang/Object;
check-cast p1, Ljava/lang/Runnable;
invoke-virtual {v0, p1}, Landroidx/core/provider/SelfDestructiveThread;->onInvokeRunnable(Ljava/lang/Runnable;)V
return v1
:cond_1
iget-object p1, p0, Landroidx/core/provider/SelfDestructiveThread$1;->this$0:Landroidx/core/provider/SelfDestructiveThread;
.line 69
invoke-virtual {p1}, Landroidx/core/provider/SelfDestructiveThread;->onDestruction()V
return v1
.end method

View File

@@ -0,0 +1,60 @@
.class Landroidx/core/provider/SelfDestructiveThread$2$1;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/lang/Runnable;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/core/provider/SelfDestructiveThread$2;->run()V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# instance fields
.field final synthetic this$1:Landroidx/core/provider/SelfDestructiveThread$2;
.field final synthetic val$result:Ljava/lang/Object;
# direct methods
.method public constructor <init>(Landroidx/core/provider/SelfDestructiveThread$2;Ljava/lang/Object;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
iput-object p1, p0, Landroidx/core/provider/SelfDestructiveThread$2$1;->this$1:Landroidx/core/provider/SelfDestructiveThread$2;
iput-object p2, p0, Landroidx/core/provider/SelfDestructiveThread$2$1;->val$result:Ljava/lang/Object;
.line 151
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public run()V
.locals 2
iget-object v0, p0, Landroidx/core/provider/SelfDestructiveThread$2$1;->this$1:Landroidx/core/provider/SelfDestructiveThread$2;
.line 154
iget-object v0, v0, Landroidx/core/provider/SelfDestructiveThread$2;->val$reply:Landroidx/core/provider/SelfDestructiveThread$ReplyCallback;
iget-object v1, p0, Landroidx/core/provider/SelfDestructiveThread$2$1;->val$result:Ljava/lang/Object;
invoke-interface {v0, v1}, Landroidx/core/provider/SelfDestructiveThread$ReplyCallback;->onReply(Ljava/lang/Object;)V
return-void
.end method

View File

@@ -0,0 +1,84 @@
.class Landroidx/core/provider/SelfDestructiveThread$2;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/lang/Runnable;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/core/provider/SelfDestructiveThread;->postAndReply(Ljava/util/concurrent/Callable;Landroidx/core/provider/SelfDestructiveThread$ReplyCallback;)V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# instance fields
.field final synthetic this$0:Landroidx/core/provider/SelfDestructiveThread;
.field final synthetic val$callable:Ljava/util/concurrent/Callable;
.field final synthetic val$calleeHandler:Landroid/os/Handler;
.field final synthetic val$reply:Landroidx/core/provider/SelfDestructiveThread$ReplyCallback;
# direct methods
.method public constructor <init>(Landroidx/core/provider/SelfDestructiveThread;Ljava/util/concurrent/Callable;Landroid/os/Handler;Landroidx/core/provider/SelfDestructiveThread$ReplyCallback;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
iput-object p1, p0, Landroidx/core/provider/SelfDestructiveThread$2;->this$0:Landroidx/core/provider/SelfDestructiveThread;
iput-object p2, p0, Landroidx/core/provider/SelfDestructiveThread$2;->val$callable:Ljava/util/concurrent/Callable;
iput-object p3, p0, Landroidx/core/provider/SelfDestructiveThread$2;->val$calleeHandler:Landroid/os/Handler;
iput-object p4, p0, Landroidx/core/provider/SelfDestructiveThread$2;->val$reply:Landroidx/core/provider/SelfDestructiveThread$ReplyCallback;
.line 141
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public run()V
.locals 3
:try_start_0
iget-object v0, p0, Landroidx/core/provider/SelfDestructiveThread$2;->val$callable:Ljava/util/concurrent/Callable;
.line 146
invoke-interface {v0}, Ljava/util/concurrent/Callable;->call()Ljava/lang/Object;
move-result-object v0
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
goto :goto_0
:catch_0
const/4 v0, 0x0
:goto_0
iget-object v1, p0, Landroidx/core/provider/SelfDestructiveThread$2;->val$calleeHandler:Landroid/os/Handler;
.line 151
new-instance v2, Landroidx/core/provider/SelfDestructiveThread$2$1;
invoke-direct {v2, p0, v0}, Landroidx/core/provider/SelfDestructiveThread$2$1;-><init>(Landroidx/core/provider/SelfDestructiveThread$2;Ljava/lang/Object;)V
invoke-virtual {v1, v2}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
return-void
.end method

View File

@@ -0,0 +1,117 @@
.class Landroidx/core/provider/SelfDestructiveThread$3;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/lang/Runnable;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Landroidx/core/provider/SelfDestructiveThread;->postAndWait(Ljava/util/concurrent/Callable;I)Ljava/lang/Object;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# instance fields
.field final synthetic this$0:Landroidx/core/provider/SelfDestructiveThread;
.field final synthetic val$callable:Ljava/util/concurrent/Callable;
.field final synthetic val$cond:Ljava/util/concurrent/locks/Condition;
.field final synthetic val$holder:Ljava/util/concurrent/atomic/AtomicReference;
.field final synthetic val$lock:Ljava/util/concurrent/locks/ReentrantLock;
.field final synthetic val$running:Ljava/util/concurrent/atomic/AtomicBoolean;
# direct methods
.method public constructor <init>(Landroidx/core/provider/SelfDestructiveThread;Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/Callable;Ljava/util/concurrent/locks/ReentrantLock;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/util/concurrent/locks/Condition;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()V"
}
.end annotation
iput-object p1, p0, Landroidx/core/provider/SelfDestructiveThread$3;->this$0:Landroidx/core/provider/SelfDestructiveThread;
iput-object p2, p0, Landroidx/core/provider/SelfDestructiveThread$3;->val$holder:Ljava/util/concurrent/atomic/AtomicReference;
iput-object p3, p0, Landroidx/core/provider/SelfDestructiveThread$3;->val$callable:Ljava/util/concurrent/Callable;
iput-object p4, p0, Landroidx/core/provider/SelfDestructiveThread$3;->val$lock:Ljava/util/concurrent/locks/ReentrantLock;
iput-object p5, p0, Landroidx/core/provider/SelfDestructiveThread$3;->val$running:Ljava/util/concurrent/atomic/AtomicBoolean;
iput-object p6, p0, Landroidx/core/provider/SelfDestructiveThread$3;->val$cond:Ljava/util/concurrent/locks/Condition;
.line 175
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public run()V
.locals 2
:try_start_0
iget-object v0, p0, Landroidx/core/provider/SelfDestructiveThread$3;->val$holder:Ljava/util/concurrent/atomic/AtomicReference;
iget-object v1, p0, Landroidx/core/provider/SelfDestructiveThread$3;->val$callable:Ljava/util/concurrent/Callable;
.line 179
invoke-interface {v1}, Ljava/util/concurrent/Callable;->call()Ljava/lang/Object;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicReference;->set(Ljava/lang/Object;)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
:catch_0
iget-object v0, p0, Landroidx/core/provider/SelfDestructiveThread$3;->val$lock:Ljava/util/concurrent/locks/ReentrantLock;
.line 183
invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantLock;->lock()V
:try_start_1
iget-object v0, p0, Landroidx/core/provider/SelfDestructiveThread$3;->val$running:Ljava/util/concurrent/atomic/AtomicBoolean;
const/4 v1, 0x0
.line 185
invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;->set(Z)V
iget-object v0, p0, Landroidx/core/provider/SelfDestructiveThread$3;->val$cond:Ljava/util/concurrent/locks/Condition;
.line 186
invoke-interface {v0}, Ljava/util/concurrent/locks/Condition;->signal()V
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
iget-object v0, p0, Landroidx/core/provider/SelfDestructiveThread$3;->val$lock:Ljava/util/concurrent/locks/ReentrantLock;
.line 188
invoke-virtual {v0}, Ljava/util/concurrent/locks/ReentrantLock;->unlock()V
return-void
:catchall_0
move-exception v0
iget-object v1, p0, Landroidx/core/provider/SelfDestructiveThread$3;->val$lock:Ljava/util/concurrent/locks/ReentrantLock;
invoke-virtual {v1}, Ljava/util/concurrent/locks/ReentrantLock;->unlock()V
.line 189
throw v0
.end method

View File

@@ -0,0 +1,33 @@
.class public interface abstract Landroidx/core/provider/SelfDestructiveThread$ReplyCallback;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/core/provider/SelfDestructiveThread;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x609
name = "ReplyCallback"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">",
"Ljava/lang/Object;"
}
.end annotation
# virtual methods
.method public abstract onReply(Ljava/lang/Object;)V
.annotation system Ldalvik/annotation/Signature;
value = {
"(TT;)V"
}
.end annotation
.end method

View File

@@ -0,0 +1,543 @@
.class public Landroidx/core/provider/SelfDestructiveThread;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/core/provider/SelfDestructiveThread$ReplyCallback;
}
.end annotation
.annotation runtime Ljava/lang/Deprecated;
.end annotation
# static fields
.field private static final MSG_DESTRUCTION:I = 0x0
.field private static final MSG_INVOKE_RUNNABLE:I = 0x1
# instance fields
.field private mCallback:Landroid/os/Handler$Callback;
.field private final mDestructAfterMillisec:I
.field private mGeneration:I
.annotation build Landroidx/annotation/GuardedBy;
value = "mLock"
.end annotation
.end field
.field private mHandler:Landroid/os/Handler;
.annotation build Landroidx/annotation/GuardedBy;
value = "mLock"
.end annotation
.end field
.field private final mLock:Ljava/lang/Object;
.field private final mPriority:I
.field private mThread:Landroid/os/HandlerThread;
.annotation build Landroidx/annotation/GuardedBy;
value = "mLock"
.end annotation
.end field
.field private final mThreadName:Ljava/lang/String;
# direct methods
.method public constructor <init>(Ljava/lang/String;II)V
.locals 1
.line 82
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 47
new-instance v0, Ljava/lang/Object;
invoke-direct {v0}, Ljava/lang/Object;-><init>()V
iput-object v0, p0, Landroidx/core/provider/SelfDestructiveThread;->mLock:Ljava/lang/Object;
.line 61
new-instance v0, Landroidx/core/provider/SelfDestructiveThread$1;
invoke-direct {v0, p0}, Landroidx/core/provider/SelfDestructiveThread$1;-><init>(Landroidx/core/provider/SelfDestructiveThread;)V
iput-object v0, p0, Landroidx/core/provider/SelfDestructiveThread;->mCallback:Landroid/os/Handler$Callback;
iput-object p1, p0, Landroidx/core/provider/SelfDestructiveThread;->mThreadName:Ljava/lang/String;
iput p2, p0, Landroidx/core/provider/SelfDestructiveThread;->mPriority:I
iput p3, p0, Landroidx/core/provider/SelfDestructiveThread;->mDestructAfterMillisec:I
const/4 p1, 0x0
iput p1, p0, Landroidx/core/provider/SelfDestructiveThread;->mGeneration:I
return-void
.end method
.method private post(Ljava/lang/Runnable;)V
.locals 5
iget-object v0, p0, Landroidx/core/provider/SelfDestructiveThread;->mLock:Ljava/lang/Object;
.line 110
monitor-enter v0
:try_start_0
iget-object v1, p0, Landroidx/core/provider/SelfDestructiveThread;->mThread:Landroid/os/HandlerThread;
const/4 v2, 0x1
if-nez v1, :cond_0
.line 112
new-instance v1, Landroid/os/HandlerThread;
iget-object v3, p0, Landroidx/core/provider/SelfDestructiveThread;->mThreadName:Ljava/lang/String;
iget v4, p0, Landroidx/core/provider/SelfDestructiveThread;->mPriority:I
invoke-direct {v1, v3, v4}, Landroid/os/HandlerThread;-><init>(Ljava/lang/String;I)V
iput-object v1, p0, Landroidx/core/provider/SelfDestructiveThread;->mThread:Landroid/os/HandlerThread;
.line 113
invoke-virtual {v1}, Ljava/lang/Thread;->start()V
.line 114
new-instance v1, Landroid/os/Handler;
iget-object v3, p0, Landroidx/core/provider/SelfDestructiveThread;->mThread:Landroid/os/HandlerThread;
invoke-virtual {v3}, Landroid/os/HandlerThread;->getLooper()Landroid/os/Looper;
move-result-object v3
iget-object v4, p0, Landroidx/core/provider/SelfDestructiveThread;->mCallback:Landroid/os/Handler$Callback;
invoke-direct {v1, v3, v4}, Landroid/os/Handler;-><init>(Landroid/os/Looper;Landroid/os/Handler$Callback;)V
iput-object v1, p0, Landroidx/core/provider/SelfDestructiveThread;->mHandler:Landroid/os/Handler;
iget v1, p0, Landroidx/core/provider/SelfDestructiveThread;->mGeneration:I
add-int/2addr v1, v2
iput v1, p0, Landroidx/core/provider/SelfDestructiveThread;->mGeneration:I
goto :goto_0
:catchall_0
move-exception p1
goto :goto_1
:cond_0
:goto_0
iget-object v1, p0, Landroidx/core/provider/SelfDestructiveThread;->mHandler:Landroid/os/Handler;
const/4 v3, 0x0
.line 117
invoke-virtual {v1, v3}, Landroid/os/Handler;->removeMessages(I)V
iget-object v1, p0, Landroidx/core/provider/SelfDestructiveThread;->mHandler:Landroid/os/Handler;
.line 118
invoke-virtual {v1, v2, p1}, Landroid/os/Handler;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
move-result-object p1
invoke-virtual {v1, p1}, Landroid/os/Handler;->sendMessage(Landroid/os/Message;)Z
.line 119
monitor-exit v0
return-void
:goto_1
monitor-exit v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw p1
.end method
# virtual methods
.method public getGeneration()I
.locals 2
.annotation build Landroidx/annotation/VisibleForTesting;
.end annotation
iget-object v0, p0, Landroidx/core/provider/SelfDestructiveThread;->mLock:Ljava/lang/Object;
.line 104
monitor-enter v0
:try_start_0
iget v1, p0, Landroidx/core/provider/SelfDestructiveThread;->mGeneration:I
.line 105
monitor-exit v0
return v1
:catchall_0
move-exception v1
.line 106
monitor-exit v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw v1
.end method
.method public isRunning()Z
.locals 2
.annotation build Landroidx/annotation/VisibleForTesting;
.end annotation
iget-object v0, p0, Landroidx/core/provider/SelfDestructiveThread;->mLock:Ljava/lang/Object;
.line 94
monitor-enter v0
:try_start_0
iget-object v1, p0, Landroidx/core/provider/SelfDestructiveThread;->mThread:Landroid/os/HandlerThread;
if-eqz v1, :cond_0
const/4 v1, 0x1
goto :goto_0
:cond_0
const/4 v1, 0x0
.line 95
:goto_0
monitor-exit v0
return v1
:catchall_0
move-exception v1
.line 96
monitor-exit v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw v1
.end method
.method public onDestruction()V
.locals 3
iget-object v0, p0, Landroidx/core/provider/SelfDestructiveThread;->mLock:Ljava/lang/Object;
.line 227
monitor-enter v0
:try_start_0
iget-object v1, p0, Landroidx/core/provider/SelfDestructiveThread;->mHandler:Landroid/os/Handler;
const/4 v2, 0x1
.line 228
invoke-virtual {v1, v2}, Landroid/os/Handler;->hasMessages(I)Z
move-result v1
if-eqz v1, :cond_0
.line 231
monitor-exit v0
return-void
:catchall_0
move-exception v1
goto :goto_0
:cond_0
iget-object v1, p0, Landroidx/core/provider/SelfDestructiveThread;->mThread:Landroid/os/HandlerThread;
.line 233
invoke-virtual {v1}, Landroid/os/HandlerThread;->quit()Z
const/4 v1, 0x0
iput-object v1, p0, Landroidx/core/provider/SelfDestructiveThread;->mThread:Landroid/os/HandlerThread;
iput-object v1, p0, Landroidx/core/provider/SelfDestructiveThread;->mHandler:Landroid/os/Handler;
.line 236
monitor-exit v0
return-void
:goto_0
monitor-exit v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw v1
.end method
.method public onInvokeRunnable(Ljava/lang/Runnable;)V
.locals 4
.line 218
invoke-interface {p1}, Ljava/lang/Runnable;->run()V
iget-object p1, p0, Landroidx/core/provider/SelfDestructiveThread;->mLock:Ljava/lang/Object;
.line 219
monitor-enter p1
:try_start_0
iget-object v0, p0, Landroidx/core/provider/SelfDestructiveThread;->mHandler:Landroid/os/Handler;
const/4 v1, 0x0
.line 220
invoke-virtual {v0, v1}, Landroid/os/Handler;->removeMessages(I)V
iget-object v0, p0, Landroidx/core/provider/SelfDestructiveThread;->mHandler:Landroid/os/Handler;
.line 221
invoke-virtual {v0, v1}, Landroid/os/Handler;->obtainMessage(I)Landroid/os/Message;
move-result-object v1
iget v2, p0, Landroidx/core/provider/SelfDestructiveThread;->mDestructAfterMillisec:I
int-to-long v2, v2
invoke-virtual {v0, v1, v2, v3}, Landroid/os/Handler;->sendMessageDelayed(Landroid/os/Message;J)Z
.line 223
monitor-exit p1
return-void
:catchall_0
move-exception v0
monitor-exit p1
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw v0
.end method
.method public postAndReply(Ljava/util/concurrent/Callable;Landroidx/core/provider/SelfDestructiveThread$ReplyCallback;)V
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Ljava/util/concurrent/Callable<",
"TT;>;",
"Landroidx/core/provider/SelfDestructiveThread$ReplyCallback<",
"TT;>;)V"
}
.end annotation
.line 140
invoke-static {}, Landroidx/core/provider/CalleeHandler;->create()Landroid/os/Handler;
move-result-object v0
.line 141
new-instance v1, Landroidx/core/provider/SelfDestructiveThread$2;
invoke-direct {v1, p0, p1, v0, p2}, Landroidx/core/provider/SelfDestructiveThread$2;-><init>(Landroidx/core/provider/SelfDestructiveThread;Ljava/util/concurrent/Callable;Landroid/os/Handler;Landroidx/core/provider/SelfDestructiveThread$ReplyCallback;)V
invoke-direct {p0, v1}, Landroidx/core/provider/SelfDestructiveThread;->post(Ljava/lang/Runnable;)V
return-void
.end method
.method public postAndWait(Ljava/util/concurrent/Callable;I)Ljava/lang/Object;
.locals 12
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Ljava/util/concurrent/Callable<",
"TT;>;I)TT;"
}
.end annotation
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/InterruptedException;
}
.end annotation
.line 170
new-instance v7, Ljava/util/concurrent/locks/ReentrantLock;
invoke-direct {v7}, Ljava/util/concurrent/locks/ReentrantLock;-><init>()V
.line 171
invoke-virtual {v7}, Ljava/util/concurrent/locks/ReentrantLock;->newCondition()Ljava/util/concurrent/locks/Condition;
move-result-object v8
.line 173
new-instance v9, Ljava/util/concurrent/atomic/AtomicReference;
invoke-direct {v9}, Ljava/util/concurrent/atomic/AtomicReference;-><init>()V
.line 174
new-instance v10, Ljava/util/concurrent/atomic/AtomicBoolean;
const/4 v0, 0x1
invoke-direct {v10, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;-><init>(Z)V
.line 175
new-instance v11, Landroidx/core/provider/SelfDestructiveThread$3;
move-object v0, v11
move-object v1, p0
move-object v2, v9
move-object v3, p1
move-object v4, v7
move-object v5, v10
move-object v6, v8
invoke-direct/range {v0 .. v6}, Landroidx/core/provider/SelfDestructiveThread$3;-><init>(Landroidx/core/provider/SelfDestructiveThread;Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/Callable;Ljava/util/concurrent/locks/ReentrantLock;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/util/concurrent/locks/Condition;)V
invoke-direct {p0, v11}, Landroidx/core/provider/SelfDestructiveThread;->post(Ljava/lang/Runnable;)V
.line 193
invoke-virtual {v7}, Ljava/util/concurrent/locks/ReentrantLock;->lock()V
.line 195
:try_start_0
invoke-virtual {v10}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z
move-result p1
if-nez p1, :cond_0
.line 196
invoke-virtual {v9}, Ljava/util/concurrent/atomic/AtomicReference;->get()Ljava/lang/Object;
move-result-object p1
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 213
invoke-virtual {v7}, Ljava/util/concurrent/locks/ReentrantLock;->unlock()V
return-object p1
:catchall_0
move-exception p1
goto :goto_1
.line 198
:cond_0
:try_start_1
sget-object p1, Ljava/util/concurrent/TimeUnit;->MILLISECONDS:Ljava/util/concurrent/TimeUnit;
int-to-long v0, p2
invoke-virtual {p1, v0, v1}, Ljava/util/concurrent/TimeUnit;->toNanos(J)J
move-result-wide p1
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
.line 201
:goto_0
:try_start_2
invoke-interface {v8, p1, p2}, Ljava/util/concurrent/locks/Condition;->awaitNanos(J)J
move-result-wide p1
:try_end_2
.catch Ljava/lang/InterruptedException; {:try_start_2 .. :try_end_2} :catch_0
.catchall {:try_start_2 .. :try_end_2} :catchall_0
.line 205
:catch_0
:try_start_3
invoke-virtual {v10}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z
move-result v0
if-nez v0, :cond_1
.line 206
invoke-virtual {v9}, Ljava/util/concurrent/atomic/AtomicReference;->get()Ljava/lang/Object;
move-result-object p1
:try_end_3
.catchall {:try_start_3 .. :try_end_3} :catchall_0
.line 213
invoke-virtual {v7}, Ljava/util/concurrent/locks/ReentrantLock;->unlock()V
return-object p1
:cond_1
const-wide/16 v0, 0x0
cmp-long v0, p1, v0
if-lez v0, :cond_2
goto :goto_0
.line 209
:cond_2
:try_start_4
new-instance p1, Ljava/lang/InterruptedException;
const-string p2, "timeout"
invoke-direct {p1, p2}, Ljava/lang/InterruptedException;-><init>(Ljava/lang/String;)V
throw p1
:try_end_4
.catchall {:try_start_4 .. :try_end_4} :catchall_0
.line 213
:goto_1
invoke-virtual {v7}, Ljava/util/concurrent/locks/ReentrantLock;->unlock()V
.line 214
throw p1
.end method